XCloner – Backup and Restore - Version 4.3.5

Version Description

  • security fixes
Download this release

Release Info

Developer watchful
Plugin Icon 128x128 XCloner – Backup and Restore
Version 4.3.5
Comparing to
See all releases

Code changes from version 4.2.163 to 4.3.5

README.md DELETED
@@ -1,65 +0,0 @@
1
- # XCloner Wordpress Plugin - Backup and Restore
2
-
3
- [![Author](http://img.shields.io/badge/author-@thinkovi-blue.svg?style=flat-square)](https://twitter.com/WatchfulDashbrd)
4
- [![Software License](https://img.shields.io/badge/license-GPL-brightgreen.svg?style=flat-square)](LICENSE.txt)
5
- [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/ovidiul/XCloner-Wordpress/badges/quality-score.png?b=dev)](https://scrutinizer-ci.com/g/ovidiul/XCloner-Wordpress/?branch=master)
6
- [![Build Status](https://scrutinizer-ci.com/g/ovidiul/XCloner-Wordpress/badges/build.png?b=dev)](https://scrutinizer-ci.com/g/ovidiul/XCloner-Wordpress/build-status/master)
7
-
8
- Backup your Wordpress site, restore to any web location, send your backups to Dropbox, Amazon S3, Azure, FTP, SFTP and many others with XCloner backup plugin.
9
-
10
-
11
- XCloner is a Backup and Restore plugin that is perfectly integrated with Wordpress.
12
-
13
- XCloner design was specifically created to Generate custom backups of any LAMP website through custom admin inputs, and to be able to Restore the clone on any other location with the help of the automatic Restore script we provide!
14
-
15
- XCloner Backup tool uses Open Source standards like TAR, Mysql and CSV formats so you can rest assured your backups can be restored in a variety of ways, giving you more flexibility and full control.
16
-
17
- ## Features
18
-
19
- * Backup and Restore your Wordpress site easily
20
- * Create compressed and uncompressed backups using TAR open source format
21
- * Create encrypted backups archives with AES-128-CBC algorithm
22
- * Create automated backups from your Scheduled Backups Section
23
- * Received email notifications of created backups
24
- * Generate automatic backups based on cronjobs, it can run daily, weekly, monthly or even hourly
25
- * Restore your backups on any other location, XCloner will attempt to extract the backup archive files for you, as well as import the mysql dump and update the Wordpress config details
26
- * Upload your backups to Remote Storage locations supporting FTP, SFTP, Dropbox, AWS, Azure Blob and many more to come
27
- * Watch every step of XCloner through it's built in debugger
28
- * Althrough we have optimized XCloner to run properly on most hosts, we give Developers options to customize it's running speed and avoid backup timeouts, all from the XCloner Config-> System Options
29
- * Ability to split backups into multiple smaller parts if a certain size limit is reached
30
-
31
- ## Installation
32
-
33
- 1. Upload the plugin directory to wp-content/plugins directory
34
- 2. Activate the plugin
35
- 3. Access the plugin Dashboard from the Admin Sidebar -> Site Backup Menu
36
-
37
- ## UPGRADE
38
-
39
- You can do it easily from the Wordpress backend.
40
-
41
- ## Frequently Asked Questions
42
-
43
- <b>Where does XCloner keep it's database backups?</b>
44
-
45
- XCloner stores them in separate mysql dump files, inside a folder called xcloner-XXXXX inside the backup archive root path, where XXXXX is a hash number that is identical with the last 5 characters of the backup name,
46
- so if the backup name is backup_localhost-2017-02-16_15-36-sql-1c6c6.tgz , the mysql backup file will be stored in xcloner-1c6c6/ folder.
47
-
48
- <b>How do I restore my backup?</b>
49
-
50
- XCloner provide an easy to use restore script available in the Site Backup -> Restore Backups menu, the process is being described there as well.
51
-
52
- If the XCloner Restore option fails, you can manually restore your backup as follows:
53
-
54
- 1. extract the backup archive files to your new location
55
- 2. locate the xcloner-XXXXX folder inside your backup root folder, and look for the mysql backup in database-sql and import it through phpmyadmin
56
- 3. update your wp-config.php file to reflect the new mysql details
57
-
58
- <b>How do I know which files were include in the backup?</b>
59
-
60
- The XCloner Manager Backups Panel provides an easy utility to view each backup content files list. It also stores a copy of the archived backup files inside the xcloner-XXXXX/backup_files.csv file in an easy to read CSV format.
61
-
62
- <b>Do you have a log for the created backup?</b>
63
-
64
- Yes, if XCloner Logger option is enabled, it will store a log file inside the xcloner-XXXXX folder inside the backup archive, file is named xcloner-xxxxx.log
65
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
README.txt CHANGED
@@ -2,18 +2,19 @@
2
  Contributors: watchful,ovidiul
3
  Donate link: http://www.xcloner.com
4
  Tags: backup, database backup, cloud backup, WordPress backup, WordPress migration
5
- Requires at least: 3.0.1
6
- Requires PHP: 7.1
7
- Tested up to: 5.5
8
- Stable tag: 4.2.163
9
 
10
- XCloner is a backup plugin that allows you to safely back up and restore your WordPress sites. You can send site backups to SFTP, Dropbox, Amazon, Google Drive, Backblaze and other locations.
 
11
 
12
  == Description ==
13
 
14
  [XCloner](https://www.xcloner.com) is a backup plugin that allows you to safely back up and restore your WordPress sites. You can send your site backups to SFTP, Dropbox, Amazon, Google Drive, Backblaze and other locations. You can create backups manually or automatically with XCloner’s built-in scheduler.
15
 
16
- XCloner enables you to automatically generate backups with the built-in cron script. These cron jobs can run daily, weekly, monthly or even hourly.
17
 
18
  XCloner allows you to generate custom backups of any WordPress site, and then restore the backup on any other location with the help of the automatic restore script we provide!
19
 
@@ -50,7 +51,7 @@ XCloner has a variety of restoration options including: All Files, Only Plugins
50
 
51
  1. In the WordPress backend, select Plugins > Add New.
52
  2. In the search bar enter `xcloner`.
53
- 3. When the XCLoner listing is shown, click the 'Install` button.
54
  4. Following installation, click the `Activate` button.
55
 
56
  UPGRADE:
@@ -85,19 +86,19 @@ Yes, if XCloner Logger option is enabled, it will store a log file inside the xc
85
  = What are Differentials Backups? =
86
 
87
  Differential Backups contain files modified after a certian period of time. So each time backup runs, modified files after that period of time are added to a new Backup archive.
88
- Compared to Incremental Backups, which contain only modified files from the previous run, they use more space but are more reliable for files restore.
89
  They will use considerably less space than a full backup however.
90
 
91
  = Why Differential Backups and will you support Incremental Backups? =
92
 
93
- The main difference comes from how reliable a backup set it. For instance, if something happens to one backup archive from the Incremental Backup set, then it is possible you will lose
94
- the files changes in that period of time, however if the same case happens to a Differential Backup, then the files can easily be recovered from any of the other Differential Backups. The
95
- storage difference between Incremental Backups and Differential Backups is not significant and considering the reliability of the Differential Set so we have decided, for now, to not implement
96
  further Incremental Backups.
97
 
98
  = What would a good Backup Procedure be with Differential Backups? =
99
 
100
- As a general rule, I would recommend setting a weekly full site backup schedule and then a daily schedule for a differential backup. You can also include a daily backup of the database in the same Differential Backup.
101
  Of course, schedules can be adjusted accordingly to how often you update your site, the size of it and the storage space available.
102
 
103
  == Screenshots ==
@@ -116,11 +117,14 @@ Of course, schedules can be adjusted accordingly to how often you update your si
116
 
117
  == Changelog ==
118
 
 
 
 
119
  = 4.2.16 =
120
  * Backblaze remote storage UI text changes
121
  * Improved Google Drive integration
122
  * http(s) url email backup fix
123
- * design changes
124
  * security fixes
125
 
126
  = 4.2.15 =
@@ -133,29 +137,29 @@ Of course, schedules can be adjusted accordingly to how often you update your si
133
  * WP-CLI --quiet flag addon, --encrypt/--decrypt addon
134
  * CSRF nonces implementation API
135
 
136
- = 4.2.14 =
137
 
138
  * CSRF restore vulnerability fix
139
 
140
  = 4.2.13 =
141
 
142
  * conflict fix bootstrap modal display
143
- * WP 5.5 compatibility check and update
144
 
145
  = 4.2.12 =
146
 
147
  * Google Drive authorization fix
148
 
149
- = 4.2.11 =
150
 
151
  * OneDrive file upload size limit fix
152
 
153
  = 4.2.10 =
154
 
155
  * Add `Local Storage` to the `Remote Storage` area
156
- * Cleanup uploaded archive after restore
157
  * Add WP-CLI support
158
- * Add Microsoft OneDrive support to remote storage
159
  * BUG: Load webdav vendor lib only if webdav is activated
160
  * Add support for Backblaze application keys
161
  * BUG: Google Drive upload issue
@@ -180,23 +184,23 @@ Of course, schedules can be adjusted accordingly to how often you update your si
180
 
181
  ** Implemented enhancements: **
182
 
183
- * Improve error when connecting to remote site using restore script from another site
184
- * Improve error message when accessing restore script directly
185
- * Encrypt database password during restore
186
- * Update default regex exclusions
187
- * Replace youtube links
188
- * Add additional cleanup & quota options for backup storage
189
- * Add standalone CLI for making backups
190
- * Move `send to remote destination` option to the `Backup Options` tab
191
 
192
  ** Fixed bugs: **
193
 
194
- * Select All Backups delete does not work
195
- * JS Error during restoration
196
- * Ajax error when viewing empty storage area
197
  * Javascript error when running a backup, and clicking "Send Backup to remote storage"
198
- * SFTP bug
199
- * Live DB restore replaces WP Options table
200
 
201
  = 4.1.5 =
202
  * SFTP upoad fix
@@ -210,15 +214,15 @@ Of course, schedules can be adjusted accordingly to how often you update your si
210
  = 4.1.3 =
211
  * database include tables fix
212
 
213
- = 4.1.2 =
214
  * improved default backup storage path security
215
  * improved remote storage security
216
 
217
- = 4.1.2 =
218
  * vendor lib updates
219
  * flysystem azure storage Upgrade
220
 
221
- = 4.1.1 =
222
  * log tmp directories fix, tracking only ERROR reports from php
223
  * security improvement backup log name
224
  * database restore resume fix
@@ -240,7 +244,7 @@ Of course, schedules can be adjusted accordingly to how often you update your si
240
  * microtime float div fix
241
  * manage backups data order fix
242
 
243
- = 4.0.8 =
244
  * updated vendor library dependencies, AWS, phpseclib
245
  * TAR compression fix
246
  * 7.2 compatibility checks and fixes
@@ -293,10 +297,10 @@ Of course, schedules can be adjusted accordingly to how often you update your si
293
  * Code rewritten from ground up to make use of latest code standards
294
  * Added support for Dropbox, Amazon S3, Azure Blob and SFTP storage
295
  * Added a new restore script
296
- * Added an improved backup and system logger
297
  * New Setting Panel
298
  * New Manage Backups Panel with the options to Delete, Transfer to Remote Storage, Download and List Backup archive contents
299
- * Added mail notifications for scheduled backups
300
  * Added a new Cron Scheduler to make use of Wordpress System Cron option
301
  * Improved user input sanitization
302
  * Improved recursive file scanning and archiving
@@ -310,13 +314,13 @@ Of course, schedules can be adjusted accordingly to how often you update your si
310
  = 3.1.4 =
311
  * DropPHP DropBox library update, upload fixes for files larger than 150MB
312
 
313
- = 3.1.3 =
314
  * XSS fix
315
 
316
  = 3.1.2 =
317
  * vulnerability fix
318
 
319
- = 3.1.1 =
320
  * added CSRF protection
321
 
322
  = 3.1.0 =
@@ -372,7 +376,7 @@ Please check changelog!
372
 
373
  1. In the WordPress backend, select Plugins > Add New.
374
  2. In the search bar enter `xcloner`.
375
- 3. When the XCLoner listing is shown, click the 'Install` button.
376
  4. Following installation, click the `Activate` button.
377
 
378
  UPGRADE:
@@ -407,19 +411,19 @@ Yes, if XCloner Logger option is enabled, it will store a log file inside the xc
407
  = What are Differentials Backups? =
408
 
409
  Differential Backups contain files modified after a certian period of time. So each time backup runs, modified files after that period of time are added to a new Backup archive.
410
- Compared to Incremental Backups, which contain only modified files from the previous run, they use more space but are more reliable for files restore.
411
  They will use considerably less space than a full backup however.
412
 
413
  = Why Differential Backups and will you support Incremental Backups? =
414
 
415
- The main difference comes from how reliable a backup set it. For instance, if something happens to one backup archive from the Incremental Backup set, then it is possible you will lose
416
- the files changes in that period of time, however if the same case happens to a Differential Backup, then the files can easily be recovered from any of the other Differential Backups. The
417
- storage difference between Incremental Backups and Differential Backups is not significant and considering the reliability of the Differential Set so we have decided, for now, to not implement
418
  further Incremental Backups.
419
 
420
  = What would a good Backup Procedure be with Differential Backups? =
421
 
422
- As a general rule, I would recommend setting a weekly full site backup schedule and then a daily schedule for a differential backup. You can also include a daily backup of the database in the same Differential Backup.
423
  Of course, schedules can be adjusted accordingly to how often you update your site, the size of it and the storage space available.
424
 
425
  == Screenshots ==
@@ -435,4 +439,3 @@ Of course, schedules can be adjusted accordingly to how often you update your si
435
  9. Restore Backup Panel
436
  10. Generate Backup Process
437
  11. Generate Backup Screen
438
-
2
  Contributors: watchful,ovidiul
3
  Donate link: http://www.xcloner.com
4
  Tags: backup, database backup, cloud backup, WordPress backup, WordPress migration
5
+ Requires at least: 5.1
6
+ Requires PHP: 7.3
7
+ Tested up to: 6.0
8
+ Stable tag: 4.3.5
9
 
10
+
11
+ XCloner is a backup plugin that allows you to safely back up and restore your WordPress sites. You can send site backups to SFTP, Dropbox, Amazon, Google Drive, Backblaze and other locations.
12
 
13
  == Description ==
14
 
15
  [XCloner](https://www.xcloner.com) is a backup plugin that allows you to safely back up and restore your WordPress sites. You can send your site backups to SFTP, Dropbox, Amazon, Google Drive, Backblaze and other locations. You can create backups manually or automatically with XCloner’s built-in scheduler.
16
 
17
+ XCloner enables you to automatically generate backups with the built-in cron script. These cron jobs can run daily, weekly, monthly or even hourly.
18
 
19
  XCloner allows you to generate custom backups of any WordPress site, and then restore the backup on any other location with the help of the automatic restore script we provide!
20
 
51
 
52
  1. In the WordPress backend, select Plugins > Add New.
53
  2. In the search bar enter `xcloner`.
54
+ 3. When the XCLoner listing is shown, click the 'Install` button.
55
  4. Following installation, click the `Activate` button.
56
 
57
  UPGRADE:
86
  = What are Differentials Backups? =
87
 
88
  Differential Backups contain files modified after a certian period of time. So each time backup runs, modified files after that period of time are added to a new Backup archive.
89
+ Compared to Incremental Backups, which contain only modified files from the previous run, they use more space but are more reliable for files restore.
90
  They will use considerably less space than a full backup however.
91
 
92
  = Why Differential Backups and will you support Incremental Backups? =
93
 
94
+ The main difference comes from how reliable a backup set it. For instance, if something happens to one backup archive from the Incremental Backup set, then it is possible you will lose
95
+ the files changes in that period of time, however if the same case happens to a Differential Backup, then the files can easily be recovered from any of the other Differential Backups. The
96
+ storage difference between Incremental Backups and Differential Backups is not significant and considering the reliability of the Differential Set so we have decided, for now, to not implement
97
  further Incremental Backups.
98
 
99
  = What would a good Backup Procedure be with Differential Backups? =
100
 
101
+ As a general rule, I would recommend setting a weekly full site backup schedule and then a daily schedule for a differential backup. You can also include a daily backup of the database in the same Differential Backup.
102
  Of course, schedules can be adjusted accordingly to how often you update your site, the size of it and the storage space available.
103
 
104
  == Screenshots ==
117
 
118
  == Changelog ==
119
 
120
+ = 4.3.5 =
121
+ * security fixes
122
+
123
  = 4.2.16 =
124
  * Backblaze remote storage UI text changes
125
  * Improved Google Drive integration
126
  * http(s) url email backup fix
127
+ * design changes
128
  * security fixes
129
 
130
  = 4.2.15 =
137
  * WP-CLI --quiet flag addon, --encrypt/--decrypt addon
138
  * CSRF nonces implementation API
139
 
140
+ = 4.2.14 =
141
 
142
  * CSRF restore vulnerability fix
143
 
144
  = 4.2.13 =
145
 
146
  * conflict fix bootstrap modal display
147
+ * WP 5.5 compatibility check and update
148
 
149
  = 4.2.12 =
150
 
151
  * Google Drive authorization fix
152
 
153
+ = 4.2.11 =
154
 
155
  * OneDrive file upload size limit fix
156
 
157
  = 4.2.10 =
158
 
159
  * Add `Local Storage` to the `Remote Storage` area
160
+ * Cleanup uploaded archive after restore
161
  * Add WP-CLI support
162
+ * Add Microsoft OneDrive support to remote storage
163
  * BUG: Load webdav vendor lib only if webdav is activated
164
  * Add support for Backblaze application keys
165
  * BUG: Google Drive upload issue
184
 
185
  ** Implemented enhancements: **
186
 
187
+ * Improve error when connecting to remote site using restore script from another site
188
+ * Improve error message when accessing restore script directly
189
+ * Encrypt database password during restore
190
+ * Update default regex exclusions
191
+ * Replace youtube links
192
+ * Add additional cleanup & quota options for backup storage
193
+ * Add standalone CLI for making backups
194
+ * Move `send to remote destination` option to the `Backup Options` tab
195
 
196
  ** Fixed bugs: **
197
 
198
+ * Select All Backups delete does not work
199
+ * JS Error during restoration
200
+ * Ajax error when viewing empty storage area
201
  * Javascript error when running a backup, and clicking "Send Backup to remote storage"
202
+ * SFTP bug
203
+ * Live DB restore replaces WP Options table
204
 
205
  = 4.1.5 =
206
  * SFTP upoad fix
214
  = 4.1.3 =
215
  * database include tables fix
216
 
217
+ = 4.1.2 =
218
  * improved default backup storage path security
219
  * improved remote storage security
220
 
221
+ = 4.1.2 =
222
  * vendor lib updates
223
  * flysystem azure storage Upgrade
224
 
225
+ = 4.1.1 =
226
  * log tmp directories fix, tracking only ERROR reports from php
227
  * security improvement backup log name
228
  * database restore resume fix
244
  * microtime float div fix
245
  * manage backups data order fix
246
 
247
+ = 4.0.8 =
248
  * updated vendor library dependencies, AWS, phpseclib
249
  * TAR compression fix
250
  * 7.2 compatibility checks and fixes
297
  * Code rewritten from ground up to make use of latest code standards
298
  * Added support for Dropbox, Amazon S3, Azure Blob and SFTP storage
299
  * Added a new restore script
300
+ * Added an improved backup and system logger
301
  * New Setting Panel
302
  * New Manage Backups Panel with the options to Delete, Transfer to Remote Storage, Download and List Backup archive contents
303
+ * Added mail notifications for scheduled backups
304
  * Added a new Cron Scheduler to make use of Wordpress System Cron option
305
  * Improved user input sanitization
306
  * Improved recursive file scanning and archiving
314
  = 3.1.4 =
315
  * DropPHP DropBox library update, upload fixes for files larger than 150MB
316
 
317
+ = 3.1.3 =
318
  * XSS fix
319
 
320
  = 3.1.2 =
321
  * vulnerability fix
322
 
323
+ = 3.1.1 =
324
  * added CSRF protection
325
 
326
  = 3.1.0 =
376
 
377
  1. In the WordPress backend, select Plugins > Add New.
378
  2. In the search bar enter `xcloner`.
379
+ 3. When the XCLoner listing is shown, click the 'Install` button.
380
  4. Following installation, click the `Activate` button.
381
 
382
  UPGRADE:
411
  = What are Differentials Backups? =
412
 
413
  Differential Backups contain files modified after a certian period of time. So each time backup runs, modified files after that period of time are added to a new Backup archive.
414
+ Compared to Incremental Backups, which contain only modified files from the previous run, they use more space but are more reliable for files restore.
415
  They will use considerably less space than a full backup however.
416
 
417
  = Why Differential Backups and will you support Incremental Backups? =
418
 
419
+ The main difference comes from how reliable a backup set it. For instance, if something happens to one backup archive from the Incremental Backup set, then it is possible you will lose
420
+ the files changes in that period of time, however if the same case happens to a Differential Backup, then the files can easily be recovered from any of the other Differential Backups. The
421
+ storage difference between Incremental Backups and Differential Backups is not significant and considering the reliability of the Differential Set so we have decided, for now, to not implement
422
  further Incremental Backups.
423
 
424
  = What would a good Backup Procedure be with Differential Backups? =
425
 
426
+ As a general rule, I would recommend setting a weekly full site backup schedule and then a daily schedule for a differential backup. You can also include a daily backup of the database in the same Differential Backup.
427
  Of course, schedules can be adjusted accordingly to how often you update your site, the size of it and the storage space available.
428
 
429
  == Screenshots ==
439
  9. Restore Backup Panel
440
  10. Generate Backup Process
441
  11. Generate Backup Screen
 
admin/class-xcloner-admin.php CHANGED
@@ -20,281 +20,280 @@
20
  * @subpackage Xcloner/admin
21
  * @author Liuta Ovidiu <info@thinkovi.com>
22
  */
23
- class Xcloner_Admin {
24
-
25
- /**
26
- * The ID of this plugin.
27
- *
28
- * @since 1.0.0
29
- * @access private
30
- * @var string $plugin_name The ID of this plugin.
31
- */
32
- private $plugin_name;
33
-
34
- /**
35
- * The version of this plugin.
36
- *
37
- * @since 1.0.0
38
- * @access private
39
- * @var string $version The current version of this plugin.
40
- */
41
- private $version;
42
-
43
- /**
44
- * @var Xcloner
45
- */
46
- private $xcloner_container;
47
-
48
- /**
49
- * Initialize the class and set its properties.
50
- *
51
- * Xcloner_Admin constructor.
52
- * @param Xcloner $xcloner_container
53
- */
54
- public function __construct(watchfulli\XClonerCore\Xcloner $xcloner_container) {
55
-
56
- $this->plugin_name = $xcloner_container->get_plugin_name();
57
- $this->version = $xcloner_container->get_version();
58
- $this->xcloner_container = $xcloner_container;
59
- }
60
-
61
- /**
62
- * @return Xcloner
63
- */
64
- public function get_xcloner_container() {
65
- return $this->xcloner_container;
66
- }
67
-
68
- /**
69
- * Register the stylesheets for the admin area.
70
- *
71
- * @since 1.0.0
72
- */
73
- public function enqueue_styles($hook) {
74
-
75
- if (!stristr($hook, "page_".$this->plugin_name) || (isset($_GET['option']) and $_GET['option'] == "com_cloner")) {
76
- return;
77
- }
78
-
79
- /**
80
- * This function is provided for demonstration purposes only.
81
- *
82
- * An instance of this class should be passed to the run() function
83
- * defined in Xcloner_Loader as all of the hooks are defined
84
- * in that particular class.
85
- *
86
- * The Xcloner_Loader will then create the relationship
87
- * between the defined hooks and the functions defined in this
88
- * class.
89
- */
90
-
91
- wp_enqueue_style($this->plugin_name."_materialize", plugin_dir_url(__FILE__).'css/materialize.min.css', array(), $this->version, 'all');
92
- //wp_enqueue_style($this->plugin_name."_materialize.clockpicker", plugin_dir_url(__FILE__).'css/materialize.clockpicker.css', array(), $this->version, 'all');
93
- wp_enqueue_style($this->plugin_name."_materialize.icons", '//fonts.googleapis.com/icon?family=Material+Icons', array(), $this->version, 'all');
94
- wp_enqueue_style($this->plugin_name."_jquery.datatables", plugin_dir_url(__FILE__).'css/jquery.dataTables.min.css', array(), $this->version, 'all');
95
- wp_enqueue_style($this->plugin_name."_jquery.datatables.responsive", plugin_dir_url(__FILE__).'css/responsive.dataTables.css', array(), $this->version, 'all');
96
- wp_enqueue_style($this->plugin_name."_jstree", dirname(plugin_dir_url(__FILE__)).'/vendor/vakata/jstree/dist/themes/default/style.min.css', array(), '3.3', 'all');
97
- wp_enqueue_style($this->plugin_name, plugin_dir_url(__FILE__).'css/xcloner-admin.css', array(), $this->version, 'all');
98
-
99
- }
100
-
101
- /**
102
- * Register the JavaScript for the admin area.
103
- *
104
- * @since 1.0.0
105
- */
106
- public function enqueue_scripts($hook) {
107
-
108
- if (!stristr($hook, "page_".$this->plugin_name)) {
109
- return;
110
- }
111
-
112
- /**
113
- * This function is provided for demonstration purposes only.
114
- *
115
- * An instance of this class should be passed to the run() function
116
- * defined in Xcloner_Loader as all of the hooks are defined
117
- * in that particular class.
118
- *
119
- * The Xcloner_Loader will then create the relationship
120
- * between the defined hooks and the functions defined in this
121
- * class.
122
- */
123
-
124
- add_thickbox();
125
- wp_enqueue_script('plugin-install');
126
- wp_enqueue_script('updates');
127
- //wp_enqueue_script($this->plugin_name."_materialize", plugin_dir_url(__FILE__).'js/materialize.min.js', array('jquery'), $this->version, false);
128
- //wp_enqueue_script($this->plugin_name."_materialize.clockpicker", plugin_dir_url(__FILE__).'js/materialize.clockpicker.js', array('jquery'), $this->version, false);
129
- wp_enqueue_script($this->plugin_name."_jquery.datatables", plugin_dir_url(__FILE__).'js/jquery.dataTables.min.js', array('jquery'), $this->version, false);
130
- wp_enqueue_script($this->plugin_name."_jquery.datatables.respnsive", plugin_dir_url(__FILE__).'js/dataTables.responsive.js', array('jquery'), $this->version, false);
131
- wp_enqueue_script($this->plugin_name."_vakata", dirname(plugin_dir_url(__FILE__)).'/vendor/vakata/jstree/dist/jstree.min.js', array('jquery'), '3.3', false);
132
-
133
- wp_enqueue_script($this->plugin_name, dirname(plugin_dir_url(__FILE__)).'/dist/admin/js/index.min.js', array('jquery'), $this->version, false);
134
-
135
- /*wp_enqueue_script($this->plugin_name."_backup-class", dirname(plugin_dir_url(__FILE__)).'/dist/admin/js/xcloner_backup_class.min.js', array('jquery'), $this->version, false);
136
- wp_enqueue_script($this->plugin_name."_scheduler-class", dirname(plugin_dir_url(__FILE__)).'/dist/admin/js/xcloner_scheduler_class.min.js', array('jquery'), $this->version, false);
137
- wp_enqueue_script($this->plugin_name."_restore-class", dirname(plugin_dir_url(__FILE__)).'/dist/admin/js/xcloner_restore_class.min.js', array('jquery'), $this->version, false);
138
- wp_enqueue_script($this->plugin_name."_manage-backups-class", dirname(plugin_dir_url(__FILE__)).'/dist/admin/js/xcloner_manage_backups_class.min.js', array('jquery'), $this->version, false);
139
- wp_enqueue_script($this->plugin_name."_remote-storage-class", dirname(plugin_dir_url(__FILE__)).'/dist/admin/js/xcloner_remote_storage_class.min.js', array('jquery'), $this->version, false);
140
- */
141
-
142
- }
143
-
144
- public function xcloner_init_page() {
145
- require_once("partials/xcloner_init_page.php");
146
-
147
- }
148
-
149
- /**
150
- * Returns the XCloner Storage Page
151
- */
152
- public function xcloner_remote_storage_page() {
153
- $xcloner_sanitization = $this->get_xcloner_container()->get_xcloner_sanitization();
154
- $remote_storage = $this->get_xcloner_container()->get_xcloner_remote_storage();
155
-
156
- if (isset($_POST['action'])) {
157
- $_POST['action'] = $xcloner_sanitization->sanitize_input_as_string($_POST['action']);
158
- $remote_storage->save($_POST['action']);
159
- }
160
-
161
- if (isset($_POST['authentification_code']) && $_POST['authentification_code'] != "") {
162
- $_POST['authentification_code'] = $xcloner_sanitization->sanitize_input_as_string($_POST['authentification_code']);
163
-
164
- $remote_storage->set_access_token($_POST['authentification_code']);
165
- }
166
-
167
- if (isset($_POST['connection_check']) && $_POST['connection_check']) {
168
- $remote_storage->check($_POST['action']);
169
- }
170
-
171
- require_once("partials/xcloner_remote_storage_page.php");
172
-
173
- }
174
-
175
- public function xcloner_scheduled_backups_page() {
176
- $requirements = $this->xcloner_container->get_xcloner_requirements();
177
-
178
- if (!$requirements->check_backup_ready_status()) {
179
- require_once("partials/xcloner_init_page.php");
180
-
181
- return false;
182
- }
183
-
184
- require_once("partials/xcloner_scheduled_backups_page.php");
185
-
186
- }
187
-
188
- public function xcloner_manage_backups_page() {
189
- require_once("partials/xcloner_manage_backups_page.php");
 
 
 
 
190
 
191
- }
192
-
193
- public function xcloner_debugger_page() {
194
- require_once("partials/xcloner_console_page.php");
195
 
196
- }
 
 
197
 
198
- public function xcloner_restore_page() {
199
- require_once("partials/xcloner_restore_page.php");
200
 
201
- }
 
 
202
 
203
- public function xcloner_generate_backups_page() {
204
- $requirements = $this->xcloner_container->get_xcloner_requirements();
205
 
206
- if (!$requirements->check_backup_ready_status()) {
207
- require_once("partials/xcloner_init_page.php");
208
 
209
- return false;
210
- }
211
 
212
- require_once("partials/xcloner_generate_backups_page.php");
 
213
 
214
- return;
215
- }
 
 
 
 
216
 
217
- public function xcloner_settings_page() {
218
- // check user capabilities
219
- if (!current_user_can('manage_options')) {
220
- return;
221
- }
222
 
223
- // add error/update messages
 
 
 
 
 
224
 
225
- // check if the user have submitted the settings
226
- // wordpress will add the "settings-updated" $_GET parameter to the url
227
- if (isset($_GET['settings-updated'])) {
228
- // add settings saved message with the class of "updated"
229
- add_settings_error('wporg_messages', 'wporg_message', __('Settings Saved', 'wporg'), 'updated');
230
- }
231
 
232
- // show error/update messages
233
- settings_errors('wporg_messages');
234
- ?>
235
 
236
- <?php
237
- $xcloner_sanitization = $this->get_xcloner_container()->get_xcloner_sanitization();
 
238
 
239
- if (isset($_GET['tab'])) {
240
- $active_tab = $xcloner_sanitization->sanitize_input_as_string($_GET['tab']);
241
- } // end if
242
- else {
243
- $active_tab = "general_options";
244
- }
245
 
246
- ?>
 
 
 
247
 
248
- <div class="row">
249
- <div class="col s12 l9">
250
- <?php include_once(__DIR__ . "/partials/xcloner_header.php")?>
251
- </div>
252
-
253
- <ul class="nav-tab-wrapper col s12 ">
254
- <li><a href="?page=xcloner_settings_page&tab=general_options"
255
- class="nav-tab col s12 m3 l3 <?php echo $active_tab == 'general_options' ? 'nav-tab-active' : ''; ?>"><?php echo __('General Options', 'xcloner-backup-and-restore') ?></a>
256
- </li>
257
- <li><a href="?page=xcloner_settings_page&tab=mysql_options"
258
- class="nav-tab col s12 m3 l3 <?php echo $active_tab == 'mysql_options' ? 'nav-tab-active' : ''; ?>"><?php echo __('Mysql Options', 'xcloner-backup-and-restore') ?></a>
259
- </li>
260
- <li><a href="?page=xcloner_settings_page&tab=system_options"
261
- class="nav-tab col s12 m3 l3 <?php echo $active_tab == 'system_options' ? 'nav-tab-active' : ''; ?>"><?php echo __('System Options', 'xcloner-backup-and-restore') ?></a>
262
- </li>
263
- </ul>
264
 
265
- <div class="wrap col s12">
266
 
267
- <form action="options.php" method="post">
268
- <?php
269
 
270
- if ($active_tab == 'general_options') {
271
 
272
- settings_fields('xcloner_general_settings_group');
273
- do_settings_sections('xcloner_settings_page');
274
 
275
- } elseif ($active_tab == 'mysql_options') {
276
 
277
- settings_fields('xcloner_mysql_settings_group');
278
- do_settings_sections('xcloner_mysql_settings_page');
279
- } elseif ($active_tab == 'system_options') {
280
 
281
- settings_fields('xcloner_system_settings_group');
282
- do_settings_sections('xcloner_system_settings_page');
283
- } elseif ($active_tab == 'cleanup_options') {
284
 
285
- settings_fields('xcloner_cleanup_settings_group');
286
- do_settings_sections('xcloner_cleanup_settings_page');
287
- }
288
 
289
- // output save settings button
290
- submit_button('Save Settings');
291
- ?>
292
- </form>
293
 
294
- </div>
295
- </div>
296
- <?php
297
 
298
- }
299
 
300
  }
20
  * @subpackage Xcloner/admin
21
  * @author Liuta Ovidiu <info@thinkovi.com>
22
  */
23
+ class Xcloner_Admin
24
+ {
25
+
26
+ /**
27
+ * The ID of this plugin.
28
+ *
29
+ * @since 1.0.0
30
+ * @access private
31
+ * @var string $plugin_name The ID of this plugin.
32
+ */
33
+ private $plugin_name;
34
+
35
+ /**
36
+ * The version of this plugin.
37
+ *
38
+ * @since 1.0.0
39
+ * @access private
40
+ * @var string $version The current version of this plugin.
41
+ */
42
+ private $version;
43
+
44
+ /**
45
+ * @var Xcloner
46
+ */
47
+ private $xcloner_container;
48
+
49
+ /**
50
+ * Initialize the class and set its properties.
51
+ *
52
+ * Xcloner_Admin constructor.
53
+ * @param Xcloner $xcloner_container
54
+ */
55
+ public function __construct(Watchfulli\XClonerCore\Xcloner $xcloner_container)
56
+ {
57
+
58
+ $this->plugin_name = $xcloner_container->get_plugin_name();
59
+ $this->version = $xcloner_container->get_version();
60
+ $this->xcloner_container = $xcloner_container;
61
+ }
62
+
63
+ /**
64
+ * @return Xcloner
65
+ */
66
+ public function get_xcloner_container()
67
+ {
68
+ return $this->xcloner_container;
69
+ }
70
+
71
+ /**
72
+ * Register the stylesheets for the admin area.
73
+ *
74
+ * @since 1.0.0
75
+ */
76
+ public function enqueue_styles($hook)
77
+ {
78
+
79
+ if (!stristr($hook, "page_" . $this->plugin_name) || (isset($_GET['option']) and $_GET['option'] == "com_cloner")) {
80
+ return;
81
+ }
82
+
83
+ /**
84
+ * This function is provided for demonstration purposes only.
85
+ *
86
+ * An instance of this class should be passed to the run() function
87
+ * defined in Xcloner_Loader as all of the hooks are defined
88
+ * in that particular class.
89
+ *
90
+ * The Xcloner_Loader will then create the relationship
91
+ * between the defined hooks and the functions defined in this
92
+ * class.
93
+ */
94
+
95
+ wp_enqueue_style($this->plugin_name . "_materialize", plugin_dir_url(__FILE__) . 'css/materialize.min.css', array(), $this->version, 'all');
96
+ wp_enqueue_style($this->plugin_name . "_materialize.icons", '//fonts.googleapis.com/icon?family=Material+Icons', array(), $this->version, 'all');
97
+ wp_enqueue_style($this->plugin_name . "_jquery.datatables", plugin_dir_url(__FILE__) . 'css/jquery.dataTables.min.css', array(), $this->version, 'all');
98
+ wp_enqueue_style($this->plugin_name . "_jquery.datatables.responsive", plugin_dir_url(__FILE__) . 'css/responsive.dataTables.css', array(), $this->version, 'all');
99
+ wp_enqueue_style($this->plugin_name . "_jstree", dirname(plugin_dir_url(__FILE__)) . '/vendor/vakata/jstree/dist/themes/default/style.min.css', array(), '3.3', 'all');
100
+ wp_enqueue_style($this->plugin_name, plugin_dir_url(__FILE__) . 'css/xcloner-admin.css', array(), $this->version, 'all');
101
+ }
102
+
103
+ /**
104
+ * Register the JavaScript for the admin area.
105
+ *
106
+ * @since 1.0.0
107
+ */
108
+ public function enqueue_scripts($hook)
109
+ {
110
+
111
+ if (!stristr($hook, "page_" . $this->plugin_name)) {
112
+ return;
113
+ }
114
+
115
+ /**
116
+ * This function is provided for demonstration purposes only.
117
+ *
118
+ * An instance of this class should be passed to the run() function
119
+ * defined in Xcloner_Loader as all of the hooks are defined
120
+ * in that particular class.
121
+ *
122
+ * The Xcloner_Loader will then create the relationship
123
+ * between the defined hooks and the functions defined in this
124
+ * class.
125
+ */
126
+
127
+ add_thickbox();
128
+ wp_enqueue_script('plugin-install');
129
+ wp_enqueue_script('updates');
130
+ wp_enqueue_script($this->plugin_name . "_jquery.datatables", plugin_dir_url(__FILE__) . 'js/jquery.dataTables.min.js', array('jquery'), $this->version, false);
131
+ wp_enqueue_script($this->plugin_name . "_jquery.datatables.respnsive", plugin_dir_url(__FILE__) . 'js/dataTables.responsive.js', array('jquery'), $this->version, false);
132
+ wp_enqueue_script($this->plugin_name . "_vakata", dirname(plugin_dir_url(__FILE__)) . '/vendor/vakata/jstree/dist/jstree.min.js', array('jquery'), '3.3', false);
133
+
134
+ wp_enqueue_script($this->plugin_name, dirname(plugin_dir_url(__FILE__)) . '/dist/admin/js/index.min.js', array('jquery'), $this->version, false);
135
+ }
136
+
137
+ public function xcloner_init_page()
138
+ {
139
+ require_once("partials/xcloner_init_page.php");
140
+
141
+ }
142
+
143
+ /**
144
+ * Returns the XCloner Storage Page
145
+ */
146
+ public function xcloner_remote_storage_page()
147
+ {
148
+ $xcloner_sanitization = $this->get_xcloner_container()->get_xcloner_sanitization();
149
+ $remote_storage = $this->get_xcloner_container()->get_xcloner_remote_storage();
150
+
151
+ if (isset($_POST['action'])) {
152
+ $_POST['action'] = $xcloner_sanitization->sanitize_input_as_string($_POST['action']);
153
+ $remote_storage->save($_POST['action']);
154
+ }
155
+
156
+ if (isset($_POST['authentification_code']) && $_POST['authentification_code'] != "") {
157
+ $_POST['authentification_code'] = $xcloner_sanitization->sanitize_input_as_string($_POST['authentification_code']);
158
+
159
+ $remote_storage->set_access_token($_POST['authentification_code']);
160
+ }
161
+
162
+ if (isset($_POST['connection_check']) && $_POST['connection_check']) {
163
+ $remote_storage->check($_POST['action']);
164
+ }
165
+
166
+ require_once("partials/xcloner_remote_storage_page.php");
167
+
168
+ }
169
+
170
+ public function xcloner_scheduled_backups_page()
171
+ {
172
+ $requirements = $this->xcloner_container->get_xcloner_requirements();
173
+
174
+ if (!$requirements->check_backup_ready_status()) {
175
+ require_once("partials/xcloner_init_page.php");
176
+
177
+ return false;
178
+ }
179
+
180
+ require_once("partials/xcloner_scheduled_backups_page.php");
181
+
182
+ return true;
183
+ }
184
+
185
+ public function xcloner_manage_backups_page()
186
+ {
187
+ require_once("partials/xcloner_manage_backups_page.php");
188
+
189
+ }
190
+
191
+ public function xcloner_debugger_page()
192
+ {
193
+ require_once("partials/xcloner_console_page.php");
194
 
195
+ }
 
 
 
196
 
197
+ public function xcloner_restore_page()
198
+ {
199
+ require_once("partials/xcloner_restore_page.php");
200
 
201
+ }
 
202
 
203
+ public function xcloner_generate_backups_page()
204
+ {
205
+ $requirements = $this->xcloner_container->get_xcloner_requirements();
206
 
207
+ if (!$requirements->check_backup_ready_status()) {
208
+ require_once("partials/xcloner_init_page.php");
209
 
210
+ return false;
211
+ }
212
 
213
+ require_once("partials/xcloner_generate_backups_page.php");
 
214
 
215
+ return true;
216
+ }
217
 
218
+ public function xcloner_settings_page()
219
+ {
220
+ // check user capabilities
221
+ if (!current_user_can('manage_options')) {
222
+ return;
223
+ }
224
 
225
+ // add error/update messages
 
 
 
 
226
 
227
+ // check if the user have submitted the settings
228
+ // wordpress will add the "settings-updated" $_GET parameter to the url
229
+ if (isset($_GET['settings-updated'])) {
230
+ // add settings saved message with the class of "updated"
231
+ add_settings_error('wporg_messages', 'wporg_message', __('Settings Saved', 'wporg'), 'updated');
232
+ }
233
 
234
+ // show error/update messages
235
+ settings_errors('wporg_messages');
236
+ ?>
 
 
 
237
 
238
+ <?php
239
+ $xcloner_sanitization = $this->get_xcloner_container()->get_xcloner_sanitization();
240
+ $active_tab = "general_options";
241
 
242
+ if (isset($_GET['tab'])) {
243
+ $active_tab = $xcloner_sanitization->sanitize_input_as_string($_GET['tab']);
244
+ }
245
 
246
+ ?>
 
 
 
 
 
247
 
248
+ <div class="row">
249
+ <div class="col s12 l9">
250
+ <?php include_once(__DIR__ . "/partials/xcloner_header.php") ?>
251
+ </div>
252
 
253
+ <ul class="nav-tab-wrapper col s12 ">
254
+ <li><a href="?page=xcloner_settings_page&tab=general_options"
255
+ class="nav-tab col s12 m3 l3 <?php echo $active_tab == 'general_options' ? 'nav-tab-active' : ''; ?>"><?php echo __('General Options', 'xcloner-backup-and-restore') ?></a>
256
+ </li>
257
+ <li><a href="?page=xcloner_settings_page&tab=mysql_options"
258
+ class="nav-tab col s12 m3 l3 <?php echo $active_tab == 'mysql_options' ? 'nav-tab-active' : ''; ?>"><?php echo __('Mysql Options', 'xcloner-backup-and-restore') ?></a>
259
+ </li>
260
+ <li><a href="?page=xcloner_settings_page&tab=system_options"
261
+ class="nav-tab col s12 m3 l3 <?php echo $active_tab == 'system_options' ? 'nav-tab-active' : ''; ?>"><?php echo __('System Options', 'xcloner-backup-and-restore') ?></a>
262
+ </li>
263
+ </ul>
 
 
 
 
 
264
 
265
+ <div class="wrap col s12">
266
 
267
+ <form action="options.php" method="post">
268
+ <?php
269
 
270
+ if ($active_tab == 'general_options') {
271
 
272
+ settings_fields('xcloner_general_settings_group');
273
+ do_settings_sections('xcloner_settings_page');
274
 
275
+ } elseif ($active_tab == 'mysql_options') {
276
 
277
+ settings_fields('xcloner_mysql_settings_group');
278
+ do_settings_sections('xcloner_mysql_settings_page');
279
+ } elseif ($active_tab == 'system_options') {
280
 
281
+ settings_fields('xcloner_system_settings_group');
282
+ do_settings_sections('xcloner_system_settings_page');
283
+ } elseif ($active_tab == 'cleanup_options') {
284
 
285
+ settings_fields('xcloner_cleanup_settings_group');
286
+ do_settings_sections('xcloner_cleanup_settings_page');
287
+ }
288
 
289
+ submit_button('Save Settings');
290
+ ?>
291
+ </form>
 
292
 
293
+ </div>
294
+ </div>
295
+ <?php
296
 
297
+ }
298
 
299
  }
admin/partials/xcloner_generate_backups_page.php CHANGED
@@ -1,33 +1,33 @@
1
  <?php
2
- $xcloner_settings = $this->get_xcloner_container()->get_xcloner_settings();
3
  $xcloner_remote_storage = $this->get_xcloner_container()->get_xcloner_remote_storage();
4
- $available_storages = $xcloner_remote_storage->get_available_storages();
5
- $xcloner_scheduler = $this->get_xcloner_container()->get_xcloner_scheduler();
6
- $tab = 1;
7
  ?>
8
 
9
  <div class="row">
10
  <div class="col s12 l10">
11
- <?php include_once(__DIR__ . "/xcloner_header.php")?>
12
  </div>
13
  <div class="col s12">
14
  <ul class="nav-tab-wrapper content">
15
  <li><a href="#backup_options"
16
- class="nav-tab col s12 m3 l2 nav-tab-active"><?php echo $tab.". ".__('Backup Options', 'xcloner-backup-and-restore') ?></a>
17
  </li>
18
  <?php if ($xcloner_settings->get_enable_mysql_backup()): ?>
19
- <li><a href="#database_options"
20
- class="nav-tab col s12 m3 l2 "><?php echo ++$tab.". ".__('Database Options', 'xcloner-backup-and-restore') ?></a>
21
- </li>
22
  <?php endif ?>
23
  <li><a href="#files_options"
24
- class="nav-tab col s12 m3 l2 "><?php echo ++$tab.". ".__('Files Options', 'xcloner-backup-and-restore') ?></a>
25
  </li>
26
  <li><a href="#generate_backup"
27
- class="nav-tab col s12 m3 l2 "><?php echo ++$tab.". ".__('Generate Backup', 'xcloner-backup-and-restore') ?></a>
28
  </li>
29
  <li><a href="#schedule_backup"
30
- class="nav-tab col s12 m3 l2 "><?php echo ++$tab.". ".__('Schedule Backup', 'xcloner-backup-and-restore') ?></a>
31
  </li>
32
  </ul>
33
 
@@ -39,7 +39,7 @@ $tab = 1;
39
  <div class="row">
40
  <div class="input-field col s12 m10 l10 right-align">
41
  <a class="waves-effect waves-light btn" onclick="next_tab('#database_options');"><i
42
- class="material-icons right">skip_next</i>Next</a>
43
  </div>
44
  </div>
45
 
@@ -47,14 +47,14 @@ $tab = 1;
47
  <div class="input-field inline col s12 m10 l6">
48
  <i class="material-icons prefix">input</i>
49
  <input name="backup_name" id="backup_name" type="text"
50
- value=<?php echo $xcloner_settings->get_default_backup_name() ?>>
51
  <label
52
- for="backup_name"><?php echo __('Backup Name', 'xcloner-backup-and-restore') ?></label>
53
  </div>
54
  <div class="hide-on-small-only m2">
55
  <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
56
- data-tooltip="<?php echo __('The default backup name, supported tags [time], [hostname], [domain]', 'xcloner-backup-and-restore') ?>"
57
- data-tooltip-id=""><i class="material-icons">help_outline</i></a>
58
  </div>
59
  </div>
60
 
@@ -62,14 +62,14 @@ $tab = 1;
62
  <div class="input-field inline col s12 m10 l6">
63
  <i class="material-icons prefix">email</i>
64
  <input name="email_notification" id="email_notification" type="text"
65
- value="<?php echo get_option('admin_email'); ?>">
66
  <label
67
- for="email_notification"><?php echo __('Send Email Notification To', 'xcloner-backup-and-restore') ?></label>
68
  </div>
69
  <div class="hide-on-small-only m2">
70
  <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
71
- data-tooltip="<?php echo __('If left blank, no notification will be sent', 'xcloner-backup-and-restore') ?>"
72
- data-tooltip-id=""><i class="material-icons">help_outline</i></a>
73
  </div>
74
  </div>
75
 
@@ -78,13 +78,13 @@ $tab = 1;
78
  <i class="material-icons prefix">access_time</i>
79
  <input type="text" id="diff_start_date" class="datepicker_max_today" name="diff_start_date">
80
  <label
81
- for="diff_start_date"><?php echo __('Backup Only Files Modified/Created After', 'xcloner-backup-and-restore') ?></label>
82
  </div>
83
  <div class="hide-on-small-only m2">
84
  <a class="btn-floating tooltipped btn-small" data-html="true" data-position="center"
85
- data-delay="50"
86
- data-tooltip="<?php echo __("This option allows you to create a differential backup that will include only <br> changed files since the set date, leave blank to include all files", "xcloner-backup-and-restore") ?>"><i
87
- class="material-icons">help_outline</i></a>
88
  </div>
89
  </div>
90
 
@@ -92,7 +92,7 @@ $tab = 1;
92
  <div class="input-field col s6 m5 l4">
93
  <i class="material-icons prefix">enhanced_encryption</i>
94
  <label
95
- for="backup_comments"><?php echo __('Encrypt Backup', 'xcloner-backup-and-restore') ?></label>
96
 
97
  </div>
98
  <div class="input-field col s6 m5 l2">
@@ -108,8 +108,8 @@ $tab = 1;
108
 
109
  <div class="hide-on-small-only s12 m2">
110
  <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
111
- data-tooltip="<?php echo __('Enable this option if you want to encrypt the final backup', 'xcloner-backup-and-restore') ?>"
112
- data-tooltip-id=""><i class="material-icons">help_outline</i></a>
113
  </div>
114
  </div>
115
 
@@ -117,107 +117,108 @@ $tab = 1;
117
  <div class="input-field col s12 m10 l6">
118
  <i class="material-icons prefix">input</i>
119
  <textarea name="backup_comments" id="backup_comments"
120
- class="materialize-textarea"></textarea>
121
  <label
122
- for="backup_comments"><?php echo __('Backup Comments', 'xcloner-backup-and-restore') ?></label>
123
  </div>
124
  <div class="hide-on-small-only m2">
125
  <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
126
- data-tooltip="<?php echo __('Some default backup comments that will be stored inside the backup archive', 'xcloner-backup-and-restore') ?>"
127
- data-tooltip-id=""><i class="material-icons">help_outline</i></a>
128
  </div>
129
  </div>
130
 
131
  <?php if (sizeof($available_storages)): ?>
132
 
133
- <div class="row">
134
- <div class="input-field col s12 m10 l6">
135
- <i class="material-icons prefix">swap_horiz</i>
136
- <select name="schedule_storage" id="schedule_storage" class="schedule_storage validate">
137
- <option value="" selected><?php echo __('none', 'xcloner-backup-and-restore') ?>
138
- </option>
139
- <?php foreach ($available_storages as $storage => $text): ?>
140
- <option value="<?php echo $storage ?>"><?php echo $text ?></option>
141
- <?php endforeach ?>
142
- </select>
143
- <label><?php echo __('Send To Remote Storage', 'xcloner-backup-and-restore') ?></label>
144
- </div>
145
- <div class="hide-on-small-only m2">
146
- <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
147
- data-tooltip="<?php echo __('Transfer backup to the remote storage destintion once finished.', 'xcloner-backup-and-restore') ?>"
148
- data-tooltip-id=""><i class="material-icons">help_outline</i></a>
 
149
  </div>
150
- </div>
151
 
152
- <div class="row" id="delete_remote_storage" style="display:none">
153
- <div class="input-field col s6 m5 l4">
154
- <i class="material-icons prefix">delete</i>
155
- <label
156
- for="backup_comments"><?php echo __('Delete local copy after transfer', 'xcloner-backup-and-restore') ?></label>
157
 
158
- </div>
159
- <div class="input-field col s6 m5 l2">
160
- <div class="switch">
161
- <label>
162
- Off
163
- <input type="checkbox" name="backup_delete_after_remote_transfer"
164
- id="backup_delete_after_remote_transfer" value="1">
165
- <span class="lever"></span>
166
- On
167
- </label>
168
  </div>
169
- </div>
 
 
 
 
 
 
 
 
 
 
170
 
171
- <div class="hide-on-small-only s12 m2">
172
- <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
173
- data-tooltip="<?php echo __('Delete local backup file after transfer', 'xcloner-backup-and-restore') ?>"
174
- data-tooltip-id=""><i class="material-icons">help_outline</i></a>
 
175
  </div>
176
- </div>
177
  <?php endif ?>
178
 
179
 
180
  </div>
181
 
182
  <?php if ($xcloner_settings->get_enable_mysql_backup()): ?>
183
- <div id="database_options" class="tab-content">
184
- <div class="row">
185
- <div class="input-field col s12 m10 l10 right-align">
186
- <a class="waves-effect waves-light btn" onclick="next_tab('#files_options');"><i
187
- class="material-icons right">skip_next</i>Next</a>
 
188
  </div>
189
- </div>
190
 
191
- <h2><?php echo __('Select database data to include in the backup', 'xcloner-backup-and-restore') ?>:
192
- <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
193
- data-tooltip="<?php echo __('Enable the \'Backup only WP tables\' setting if you don\'t want to show all other databases and tables not related to this Wordpress install', 'xcloner-backup-and-restore'); ?>"
194
- data-tooltip-id=""><i class="material-icons">help_outline</i></a>
195
- </h2>
196
-
197
- <!-- database/tables tree -->
198
- <div class="row">
199
- <div class="col s12 l6">
200
- <div id="jstree_database_container"></div>
 
 
201
  </div>
202
- </div>
203
 
204
- </div>
205
  <?php endif ?>
206
 
207
  <div id="files_options" class="tab-content">
208
  <div class="row">
209
  <div class="input-field col s12 m10 l10 right-align">
210
  <a class="waves-effect waves-light btn" onclick="next_tab('#generate_backup');"><i
211
- class="material-icons right">skip_next</i>Next</a>
212
  </div>
213
  </div>
214
 
215
  <h2><?php echo __('Select from below the files/folders you want to exclude from your Backup Archive', 'xcloner-backup-and-restore') ?>
216
  :
217
  <a class="btn-floating tooltipped btn-small" data-position="bottom" data-delay="50"
218
- data-html="true"
219
- data-tooltip="<?php echo __('You can navigate below through all your site structure(Backup Start Location) to exclude any file/folder you need by clicking the checkbox near it. <br />If the checkobx is disabled, then it matches a Regex Exclude File option and it can\'t be unchecked', 'xcloner-backup-and-restore'); ?>"
220
- data-tooltip-id=""><i class="material-icons">help_outline</i></a>
221
  </h2>
222
 
223
  <!-- Files System Container -->
@@ -232,21 +233,21 @@ $tab = 1;
232
  <div class="row ">
233
  <div class="col s12 l10 action-buttons right-align">
234
  <a class="waves-effect waves-light btn-large teal darken-1 start"
235
- onclick="xcloner_backup.start_backup()">Start Backup<i
236
- class="material-icons left">forward</i></a>
237
  <a class="waves-effect waves-light btn-large teal darken-1 restart"
238
- onclick="xcloner_backup.restart_backup()">Restart Backup<i
239
- class="material-icons left">cached</i></a>
240
  <a class="waves-effect waves-light btn-large red darken-1 cancel"
241
- onclick="xcloner_backup.cancel_backup()">Cancel Backup<i
242
- class="material-icons left">cancel</i></a>
243
  </div>
244
  <div class="col l10 s12">
245
  <ul class="backup-status collapsible collapsible-accordion" data-collapsible="accordion">
246
  <li class="file-system">
247
  <div class="collapsible-header">
248
  <i
249
- class="material-icons">folder</i><?php echo __('Scanning The File System...', 'xcloner-backup-and-restore') ?>
250
 
251
  <p class="right">
252
  <?php echo sprintf(__('Found %s files (%s)', 'xcloner-backup-and-restore'), '<span class="file-counter">0</span>', '<span class="file-size-total">0</span>MB') ?>
@@ -263,39 +264,39 @@ $tab = 1;
263
  <div class="collapsible-body status-body"></div>
264
  </li>
265
  <?php if ($xcloner_settings->get_enable_mysql_backup()): ?>
266
- <li class="database-backup">
267
- <div class="collapsible-header">
268
- <i
269
- class="material-icons">storage</i><?php echo __('Generating the Mysql Backup...', 'xcloner-backup-and-restore') ?>
270
 
271
- <p class="right">
272
- <?php echo sprintf(__('Found %s tables in %s databases (%s)', 'xcloner-backup-and-restore'), '<span class="table-counter">0</span>', '<span class="database-counter">0</span>', '<span data-processed="0" class="total-records">0</span> records', 'xcloner-backup-and-restore') ?>
273
- </p>
274
 
275
- <div>
276
- <p class="right"><span class="last-logged-table"></span></p>
277
- </div>
278
 
279
- <div class="progress">
280
- <div class="determinate" style="width:0%"></div>
281
- </div>
282
- </div>
283
- <div class="collapsible-body status-body">
284
- <div class="row">
285
- <div class="col l7 s12">
286
- <ul class="logged-tables"></ul>
287
  </div>
288
- <div class="col l5 s12">
289
- <ul class="logged-databases right"></ul>
 
 
 
 
 
 
 
290
  </div>
291
  </div>
292
- </div>
293
- </li>
294
  <?php endif ?>
295
  <li class="files-backup">
296
  <div class="collapsible-header">
297
  <i
298
- class="material-icons">archive</i><?php echo __('Adding Files to Archive...', 'xcloner-backup-and-restore') ?>
299
 
300
  <p class="right">
301
  <?php echo sprintf(__('Adding %s files (%s)', 'xcloner-backup-and-restore'), '<span class="file-counter">0</span>', '<span data-processed="0" class="file-size-total">0</span>MB') ?>
@@ -324,7 +325,7 @@ $tab = 1;
324
  <li class="backup-encryption">
325
  <div class="collapsible-header">
326
  <i
327
- class="material-icons">enhanced_encryption</i><?php echo __('Encrypting Backup Data...', 'xcloner-backup-and-restore') ?>
328
 
329
  <p class="right"><span class="status"></span></p>
330
 
@@ -340,8 +341,8 @@ $tab = 1;
340
  </li>
341
  <li class="remote-storage-transfer">
342
  <div class="collapsible-header">
343
- <i
344
- class="material-icons">swap_horiz</i><?php echo __('Transferrring backup to remote storage...', 'xcloner-backup-and-restore') ?>
345
 
346
  <p class="right"><span class="status"></span></p>
347
 
@@ -357,21 +358,21 @@ $tab = 1;
357
  </li>
358
  <li class="backup-done">
359
  <div class="collapsible-header">
360
- <i
361
- class="material-icons">done</i><?php echo __('Backup Done', 'xcloner-backup-and-restore') ?>
362
 
363
  <p class="right">
364
  <?php if (sizeof($available_storages)): ?>
365
- <a href="#" class="cloud-upload"
366
- title="<?php echo __("Send Backup To Remote Storage", 'xcloner-backup-and-restore') ?>"><i
367
- class="material-icons">swap_horiz</i></a>
368
  <?php endif ?>
369
  <a href="#" class="download"
370
- title="<?php echo __("Download Backup", 'xcloner-backup-and-restore') ?>"><i
371
- class="material-icons">file_download</i></a>
372
  <a href="#" class="list-backup-content"
373
- title="<?php echo __("List Backup Content", 'xcloner-backup-and-restore') ?>"><i
374
- class="material-icons">folder_open</i></a>
375
  </p>
376
  <div class="clear"></div>
377
  <div class="progress">
@@ -386,11 +387,11 @@ $tab = 1;
386
  <h6><?php echo sprintf(__("We would love to hear about your experience in the %s.", 'xcloner-backup-and-restore'), '<a href="https://wordpress.org/support/plugin/xcloner-backup-and-restore/reviews/" target="_blank">Wordpress XCloner Reviews Section</a>') ?>
387
  </h6>
388
  <a class="twitter-follow-button" href="https://twitter.com/WatchfulDashbrd"
389
- data-show-count="false">Follow @WatchfulDashbrd</a>
390
  <script src="//platform.twitter.com/widgets.js" async="" charset="utf-8">
391
  </script>
392
 
393
- <br />
394
  <!-- XCLONER SPONSORS AREA-->
395
  <!-- END XCLONER SPONSORS AREA-->
396
  </div>
@@ -406,10 +407,10 @@ $tab = 1;
406
 
407
  <div class="row">
408
  <div id="schedule_backup_success"
409
- class="col s12 l6 updated settings-error notice is-dismissible">
410
  <p><strong><?php echo __('Schedule Saved', 'xcloner-backup-and-restore') ?></strong></p>
411
  <button type="button" class="notice-dismiss"><span
412
- class="screen-reader-text"><?php echo __('(Dismiss this notice.', 'xcloner-backup-and-restore') ?></span>
413
  </button>
414
  </div>
415
  </div>
@@ -418,7 +419,7 @@ $tab = 1;
418
  <div class="input-field inline col s12 l7">
419
  <input type="text" id="schedule_name" class="" name="schedule_name" required>
420
  <label
421
- for="schedule_name"><?php echo __('Profile Name', 'xcloner-backup-and-restore') ?></label>
422
  </div>
423
  </div>
424
 
@@ -426,12 +427,12 @@ $tab = 1;
426
  <div class="input-field inline col s12 m8 l4">
427
  <input type="text" id="datepicker" class="datepicker" name="schedule_start_date">
428
  <label
429
- for="datepicker"><?php echo __('Schedule Backup To Start On:', 'xcloner-backup-and-restore') ?></label>
430
  </div>
431
  <div class="input-field inline col s12 m4 l3">
432
  <input id="timepicker_ampm_dark" class="timepicker" type="text" name="schedule_start_time">
433
  <label
434
- for="timepicker_ampm_dark"><?php echo __('At:', 'xcloner-backup-and-restore') ?></label>
435
  </div>
436
  </div>
437
 
@@ -445,8 +446,8 @@ $tab = 1;
445
 
446
  foreach ($schedules as $key => $schedule) {
447
  ?>
448
- <option value="<?php echo $key ?>"><?php echo $schedule['display'] ?></option>
449
- <?php
450
  }
451
  ?>
452
  </select>
@@ -457,7 +458,7 @@ $tab = 1;
457
  <div class="row">
458
  <div class="col s12 l7">
459
  <button class="right btn waves-effect waves-light submit_schedule" type="submit"
460
- name="action"><?php echo __("Save Schedule", 'xcloner-backup-and-restore') ?>
461
  <i class="material-icons right">send</i>
462
  </button>
463
  </div>
@@ -471,7 +472,7 @@ $tab = 1;
471
  <!-- Error Modal Structure -->
472
  <div id="error_modal" class="modal">
473
  <a title="Online Help" href="https://wordpress.org/support/plugin/xcloner-backup-and-restore" target="_blank"><i
474
- class="material-icons medium right">help</i></a>
475
  <div class="modal-content">
476
  <h4 class="title_line"><span class="title"></span></h4>
477
  <!--<h5 class="title_line"><?php echo __('Message') ?>: <span class="msg.old"></span></h5>-->
@@ -479,8 +480,9 @@ $tab = 1;
479
  <textarea class="body" rows="5"></textarea>
480
  </div>
481
  <div class="modal-footer">
482
- <a
483
- class=" modal-action modal-close waves-effect waves-green btn-flat red darken-2"><?php echo __('Close', 'xcloner-backup-and-restore') ?></a>
 
484
  </div>
485
  </div>
486
 
@@ -505,213 +507,213 @@ $tab = 1;
505
  <h4><?php echo __("Remote Storage Transfer", 'xcloner-backup-and-restore') ?></h4>
506
  <p>
507
  <?php if (sizeof($available_storages)): ?>
508
- <div class="row">
509
- <div class="col s12 label">
510
- <label><?php echo __(sprintf('Send %s to remote storage', "<span class='backup_name'></span>"), 'xcloner-backup-and-restore') ?></label>
511
- </div>
512
- <div class="input-field col s8 m10">
513
- <select name="transfer_storage" id="transfer_storage" class="validate" required>
514
- <option value="" selected><?php echo __('please select...', 'xcloner-backup-and-restore') ?>
515
- </option>
516
- <?php foreach ($available_storages as $storage => $text): ?>
517
  <option value="<?php echo $storage ?>"><?php echo $text ?></option>
518
- <?php endforeach ?>
519
- </select>
520
 
521
- </div>
522
- <div class="s4 m2 right">
523
- <button type="submit"
524
- class="upload-submit btn-floating btn-large waves-effect waves-light teal"><i
525
- class="material-icons">file_upload</i></submit>
526
- </div>
527
  </div>
528
- <div class="row status">
529
- <?php echo __("Uploading backup to the selected remote storage...", 'xcloner-backup-and-restore') ?>
530
- <span class="status-text"></span>
531
- <div class="progress">
532
- <div class="indeterminate"></div>
533
- </div>
534
  </div>
535
- <?php endif ?>
 
 
 
 
 
 
 
 
536
  </p>
537
  </div>
538
  </form>
539
  </div>
540
 
541
  <script>
542
- jQuery(function () {
543
-
544
- jQuery('.col select').formSelect();
545
- jQuery("select[required]").css({
546
- display: "block",
547
- height: 0,
548
- padding: 0,
549
- width: 0,
550
- position: 'absolute'
551
- });
552
- jQuery(".backup-done .cloud-upload").on("click", function (e) {
553
- //var xcloner_manage_backups = new Xcloner_Manage_Backups();
554
- var hash = jQuery(this).attr('href');
555
- var id = hash.substr(1)
556
-
557
- e.preventDefault();
558
- xcloner_manage_backups.cloud_upload(id)
559
- })
560
-
561
- jQuery('#schedule_storage').on('change', function () {
562
- jQuery('#delete_remote_storage').hide();
563
- if (jQuery(this).val()) {
564
- jQuery('#delete_remote_storage').show();
565
- }
566
- })
567
-
568
- jQuery("#generate_backup_form").on("submit", function () {
569
-
570
- xcloner_backup.params = xcloner_backup.get_form_params();
571
- var data = JSON.stringify(xcloner_backup.params);
572
-
573
- xcloner_backup.set_cancel(false);
574
-
575
- xcloner_backup.do_ajax(data, "save_schedule")
576
- return false;
577
- })
578
-
579
- jQuery(".backup-done .download").on("click", function (e) {
580
- //var xcloner_manage_backups = new Xcloner_Manage_Backups();
581
- var hash = jQuery(this).attr('href');
582
- var id = hash.substr(1)
583
-
584
- e.preventDefault();
585
- xcloner_manage_backups.download_backup_by_name(id)
586
- })
587
-
588
- jQuery(".backup-done .list-backup-content").on("click", function (e) {
589
- //var xcloner_manage_backups = new Xcloner_Manage_Backups();
590
- var hash = jQuery(this).attr('href');
591
- var id = hash.substr(1)
592
-
593
- e.preventDefault();
594
- xcloner_manage_backups.list_backup_content(id)
595
- })
596
-
597
- jQuery('.timepicker').timepicker({
598
- default: 'now',
599
- min: [7, 30],
600
- twelvehour: false, // change to 12 hour AM/PM clock from 24 hour
601
- donetext: 'OK',
602
- autoClose: true,
603
- vibrate: true // vibrate the device when dragging clock hand
604
- });
605
-
606
- var date_picker = jQuery('.datepicker').datepicker({
607
- format: 'd mmmm yyyy',
608
- selectMonths: true, // Creates a dropdown to control month
609
- selectYears: 15, // Creates a dropdown of 15 years to control year
610
- min: +0.1,
611
- autoClose: true,
612
- onSet: function () {
613
- //this.close();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
614
  }
615
- });
616
-
617
- var date_picker_allowed = jQuery('.datepicker_max_today').datepicker({
618
- format: 'd mmmm yyyy',
619
- selectMonths: true, // Creates a dropdown to control month
620
- selectYears: 15, // Creates a dropdown of 15 years to control year
621
- max: +0.1,
622
- onSet: function () {
623
- //this.close();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
624
  }
625
- });
626
-
627
- <?php if ($xcloner_settings->get_enable_mysql_backup()): ?>
628
- jQuery('#jstree_database_container').jstree({
629
- 'core': {
630
- 'check_callback': true,
631
- 'data': {
632
- 'method': 'POST',
633
- 'dataType': 'json',
634
- 'url': XCLONER_AJAXURL,
635
- 'data': function (node) {
636
- var data = {
637
- 'action': 'get_database_tables_action',
638
- 'id': node.id
639
- }
640
- return data;
641
- }
642
- },
643
-
644
- 'error': function (err) {
645
- //alert("We have encountered a communication error with the server, please review the javascript console.");
646
- var json = jQuery.parseJSON(err.data)
647
- show_ajax_error("Error Loading Database Structure ", err.reason, json.xhr);
648
- },
649
-
650
- 'strings': {
651
- 'Loading ...': 'Loading the database structure...'
652
- },
653
- 'themes': {
654
- "variant": "default"
655
- },
656
- },
657
- 'checkbox': {
658
- three_state: true
659
- },
660
- 'plugins': [
661
- "checkbox",
662
- "massload",
663
- "search",
664
- //"sort",
665
- //"state",
666
- "types",
667
- "unique",
668
- "wholerow"
669
- ]
670
- });
671
- <?php endif ?>
672
-
673
- jQuery('#jstree_files_container').jstree({
674
- 'core': {
675
- 'check_callback': true,
676
- 'data': {
677
- 'method': 'POST',
678
- 'dataType': 'json',
679
- 'url': XCLONER_AJAXURL,
680
- 'data': function (node) {
681
- var data = {
682
- 'action': 'get_file_system_action',
683
- 'id': node.id
684
- }
685
- return data;
686
- }
687
- },
688
-
689
- 'error': function (err) {
690
- //alert("We have encountered a communication error with the server, please review the javascript console.");
691
- var json = jQuery.parseJSON(err.data)
692
- show_ajax_error("Error Loading Files Structure ", err.reason, json.xhr);
693
- },
694
-
695
- 'strings': {
696
- 'Loading ...': 'Loading the database structure...'
697
- },
698
- 'themes': {
699
- "variant": "default"
700
- },
701
- },
702
- 'checkbox': {
703
- three_state: true
704
- },
705
- 'plugins': [
706
- "checkbox",
707
- "massload",
708
- "search",
709
- //"sort",
710
- //"state",
711
- "types",
712
- "unique",
713
- "wholerow"
714
- ]
715
- });
716
  });
717
- </script>
 
1
  <?php
2
+ $xcloner_settings = $this->get_xcloner_container()->get_xcloner_settings();
3
  $xcloner_remote_storage = $this->get_xcloner_container()->get_xcloner_remote_storage();
4
+ $available_storages = $xcloner_remote_storage->get_available_storages();
5
+ $xcloner_scheduler = $this->get_xcloner_container()->get_xcloner_scheduler();
6
+ $tab = 1;
7
  ?>
8
 
9
  <div class="row">
10
  <div class="col s12 l10">
11
+ <?php include_once(__DIR__ . "/xcloner_header.php") ?>
12
  </div>
13
  <div class="col s12">
14
  <ul class="nav-tab-wrapper content">
15
  <li><a href="#backup_options"
16
+ class="nav-tab col s12 m3 l2 nav-tab-active"><?php echo $tab . ". " . __('Backup Options', 'xcloner-backup-and-restore') ?></a>
17
  </li>
18
  <?php if ($xcloner_settings->get_enable_mysql_backup()): ?>
19
+ <li><a href="#database_options"
20
+ class="nav-tab col s12 m3 l2 "><?php echo ++$tab . ". " . __('Database Options', 'xcloner-backup-and-restore') ?></a>
21
+ </li>
22
  <?php endif ?>
23
  <li><a href="#files_options"
24
+ class="nav-tab col s12 m3 l2 "><?php echo ++$tab . ". " . __('Files Options', 'xcloner-backup-and-restore') ?></a>
25
  </li>
26
  <li><a href="#generate_backup"
27
+ class="nav-tab col s12 m3 l2 "><?php echo ++$tab . ". " . __('Generate Backup', 'xcloner-backup-and-restore') ?></a>
28
  </li>
29
  <li><a href="#schedule_backup"
30
+ class="nav-tab col s12 m3 l2 "><?php echo ++$tab . ". " . __('Schedule Backup', 'xcloner-backup-and-restore') ?></a>
31
  </li>
32
  </ul>
33
 
39
  <div class="row">
40
  <div class="input-field col s12 m10 l10 right-align">
41
  <a class="waves-effect waves-light btn" onclick="next_tab('#database_options');"><i
42
+ class="material-icons right">skip_next</i>Next</a>
43
  </div>
44
  </div>
45
 
47
  <div class="input-field inline col s12 m10 l6">
48
  <i class="material-icons prefix">input</i>
49
  <input name="backup_name" id="backup_name" type="text"
50
+ value=<?php echo $xcloner_settings->get_default_backup_name() ?>>
51
  <label
52
+ for="backup_name"><?php echo __('Backup Name', 'xcloner-backup-and-restore') ?></label>
53
  </div>
54
  <div class="hide-on-small-only m2">
55
  <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
56
+ data-tooltip="<?php echo __('The default backup name, supported tags [time], [hostname], [domain]', 'xcloner-backup-and-restore') ?>"
57
+ data-tooltip-id=""><i class="material-icons">help_outline</i></a>
58
  </div>
59
  </div>
60
 
62
  <div class="input-field inline col s12 m10 l6">
63
  <i class="material-icons prefix">email</i>
64
  <input name="email_notification" id="email_notification" type="text"
65
+ value="<?php echo get_option('admin_email'); ?>">
66
  <label
67
+ for="email_notification"><?php echo __('Send Email Notification To', 'xcloner-backup-and-restore') ?></label>
68
  </div>
69
  <div class="hide-on-small-only m2">
70
  <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
71
+ data-tooltip="<?php echo __('If left blank, no notification will be sent', 'xcloner-backup-and-restore') ?>"
72
+ data-tooltip-id=""><i class="material-icons">help_outline</i></a>
73
  </div>
74
  </div>
75
 
78
  <i class="material-icons prefix">access_time</i>
79
  <input type="text" id="diff_start_date" class="datepicker_max_today" name="diff_start_date">
80
  <label
81
+ for="diff_start_date"><?php echo __('Backup Only Files Modified/Created After', 'xcloner-backup-and-restore') ?></label>
82
  </div>
83
  <div class="hide-on-small-only m2">
84
  <a class="btn-floating tooltipped btn-small" data-html="true" data-position="center"
85
+ data-delay="50"
86
+ data-tooltip="<?php echo __("This option allows you to create a differential backup that will include only <br> changed files since the set date, leave blank to include all files", "xcloner-backup-and-restore") ?>"><i
87
+ class="material-icons">help_outline</i></a>
88
  </div>
89
  </div>
90
 
92
  <div class="input-field col s6 m5 l4">
93
  <i class="material-icons prefix">enhanced_encryption</i>
94
  <label
95
+ for="backup_comments"><?php echo __('Encrypt Backup', 'xcloner-backup-and-restore') ?></label>
96
 
97
  </div>
98
  <div class="input-field col s6 m5 l2">
108
 
109
  <div class="hide-on-small-only s12 m2">
110
  <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
111
+ data-tooltip="<?php echo __('Enable this option if you want to encrypt the final backup', 'xcloner-backup-and-restore') ?>"
112
+ data-tooltip-id=""><i class="material-icons">help_outline</i></a>
113
  </div>
114
  </div>
115
 
117
  <div class="input-field col s12 m10 l6">
118
  <i class="material-icons prefix">input</i>
119
  <textarea name="backup_comments" id="backup_comments"
120
+ class="materialize-textarea"></textarea>
121
  <label
122
+ for="backup_comments"><?php echo __('Backup Comments', 'xcloner-backup-and-restore') ?></label>
123
  </div>
124
  <div class="hide-on-small-only m2">
125
  <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
126
+ data-tooltip="<?php echo __('Some default backup comments that will be stored inside the backup archive', 'xcloner-backup-and-restore') ?>"
127
+ data-tooltip-id=""><i class="material-icons">help_outline</i></a>
128
  </div>
129
  </div>
130
 
131
  <?php if (sizeof($available_storages)): ?>
132
 
133
+ <div class="row">
134
+ <div class="input-field col s12 m10 l6">
135
+ <i class="material-icons prefix">swap_horiz</i>
136
+ <select name="schedule_storage" id="schedule_storage" class="schedule_storage validate">
137
+ <option value="" selected><?php echo __('none', 'xcloner-backup-and-restore') ?>
138
+ </option>
139
+ <?php foreach ($available_storages as $storage => $text): ?>
140
+ <option value="<?php echo $storage ?>"><?php echo $text ?></option>
141
+ <?php endforeach ?>
142
+ </select>
143
+ <label><?php echo __('Send To Remote Storage', 'xcloner-backup-and-restore') ?></label>
144
+ </div>
145
+ <div class="hide-on-small-only m2">
146
+ <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
147
+ data-tooltip="<?php echo __('Transfer backup to the remote storage destintion once finished.', 'xcloner-backup-and-restore') ?>"
148
+ data-tooltip-id=""><i class="material-icons">help_outline</i></a>
149
+ </div>
150
  </div>
 
151
 
152
+ <div class="row" id="delete_remote_storage" style="display:none">
153
+ <div class="input-field col s6 m5 l4">
154
+ <i class="material-icons prefix">delete</i>
155
+ <label
156
+ for="backup_comments"><?php echo __('Delete local copy after transfer', 'xcloner-backup-and-restore') ?></label>
157
 
 
 
 
 
 
 
 
 
 
 
158
  </div>
159
+ <div class="input-field col s6 m5 l2">
160
+ <div class="switch">
161
+ <label>
162
+ Off
163
+ <input type="checkbox" name="backup_delete_after_remote_transfer"
164
+ id="backup_delete_after_remote_transfer" value="1">
165
+ <span class="lever"></span>
166
+ On
167
+ </label>
168
+ </div>
169
+ </div>
170
 
171
+ <div class="hide-on-small-only s12 m2">
172
+ <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
173
+ data-tooltip="<?php echo __('Delete local backup file after transfer', 'xcloner-backup-and-restore') ?>"
174
+ data-tooltip-id=""><i class="material-icons">help_outline</i></a>
175
+ </div>
176
  </div>
 
177
  <?php endif ?>
178
 
179
 
180
  </div>
181
 
182
  <?php if ($xcloner_settings->get_enable_mysql_backup()): ?>
183
+ <div id="database_options" class="tab-content">
184
+ <div class="row">
185
+ <div class="input-field col s12 m10 l10 right-align">
186
+ <a class="waves-effect waves-light btn" onclick="next_tab('#files_options');"><i
187
+ class="material-icons right">skip_next</i>Next</a>
188
+ </div>
189
  </div>
 
190
 
191
+ <h2><?php echo __('Select database data to include in the backup', 'xcloner-backup-and-restore') ?>
192
+ :
193
+ <a class="btn-floating tooltipped btn-small" data-position="right" data-delay="50"
194
+ data-tooltip="<?php echo __('Enable the \'Backup only WP tables\' setting if you don\'t want to show all other databases and tables not related to this Wordpress install', 'xcloner-backup-and-restore'); ?>"
195
+ data-tooltip-id=""><i class="material-icons">help_outline</i></a>
196
+ </h2>
197
+
198
+ <!-- database/tables tree -->
199
+ <div class="row">
200
+ <div class="col s12 l6">
201
+ <div id="jstree_database_container"></div>
202
+ </div>
203
  </div>
 
204
 
205
+ </div>
206
  <?php endif ?>
207
 
208
  <div id="files_options" class="tab-content">
209
  <div class="row">
210
  <div class="input-field col s12 m10 l10 right-align">
211
  <a class="waves-effect waves-light btn" onclick="next_tab('#generate_backup');"><i
212
+ class="material-icons right">skip_next</i>Next</a>
213
  </div>
214
  </div>
215
 
216
  <h2><?php echo __('Select from below the files/folders you want to exclude from your Backup Archive', 'xcloner-backup-and-restore') ?>
217
  :
218
  <a class="btn-floating tooltipped btn-small" data-position="bottom" data-delay="50"
219
+ data-html="true"
220
+ data-tooltip="<?php echo __('You can navigate below through all your site structure(Backup Start Location) to exclude any file/folder you need by clicking the checkbox near it. <br />If the checkobx is disabled, then it matches a Regex Exclude File option and it can\'t be unchecked', 'xcloner-backup-and-restore'); ?>"
221
+ data-tooltip-id=""><i class="material-icons">help_outline</i></a>
222
  </h2>
223
 
224
  <!-- Files System Container -->
233
  <div class="row ">
234
  <div class="col s12 l10 action-buttons right-align">
235
  <a class="waves-effect waves-light btn-large teal darken-1 start"
236
+ onclick="xcloner_backup.start_backup()">Start Backup<i
237
+ class="material-icons left">forward</i></a>
238
  <a class="waves-effect waves-light btn-large teal darken-1 restart"
239
+ onclick="xcloner_backup.restart_backup()">Restart Backup<i
240
+ class="material-icons left">cached</i></a>
241
  <a class="waves-effect waves-light btn-large red darken-1 cancel"
242
+ onclick="xcloner_backup.cancel_backup()">Cancel Backup<i
243
+ class="material-icons left">cancel</i></a>
244
  </div>
245
  <div class="col l10 s12">
246
  <ul class="backup-status collapsible collapsible-accordion" data-collapsible="accordion">
247
  <li class="file-system">
248
  <div class="collapsible-header">
249
  <i
250
+ class="material-icons">folder</i><?php echo __('Scanning The File System...', 'xcloner-backup-and-restore') ?>
251
 
252
  <p class="right">
253
  <?php echo sprintf(__('Found %s files (%s)', 'xcloner-backup-and-restore'), '<span class="file-counter">0</span>', '<span class="file-size-total">0</span>MB') ?>
264
  <div class="collapsible-body status-body"></div>
265
  </li>
266
  <?php if ($xcloner_settings->get_enable_mysql_backup()): ?>
267
+ <li class="database-backup">
268
+ <div class="collapsible-header">
269
+ <i
270
+ class="material-icons">storage</i><?php echo __('Generating the Mysql Backup...', 'xcloner-backup-and-restore') ?>
271
 
272
+ <p class="right">
273
+ <?php echo sprintf(__('Found %s tables in %s databases (%s)', 'xcloner-backup-and-restore'), '<span class="table-counter">0</span>', '<span class="database-counter">0</span>', '<span data-processed="0" class="total-records">0</span> records', 'xcloner-backup-and-restore') ?>
274
+ </p>
275
 
276
+ <div>
277
+ <p class="right"><span class="last-logged-table"></span></p>
278
+ </div>
279
 
280
+ <div class="progress">
281
+ <div class="determinate" style="width:0%"></div>
 
 
 
 
 
 
282
  </div>
283
+ </div>
284
+ <div class="collapsible-body status-body">
285
+ <div class="row">
286
+ <div class="col l7 s12">
287
+ <ul class="logged-tables"></ul>
288
+ </div>
289
+ <div class="col l5 s12">
290
+ <ul class="logged-databases right"></ul>
291
+ </div>
292
  </div>
293
  </div>
294
+ </li>
 
295
  <?php endif ?>
296
  <li class="files-backup">
297
  <div class="collapsible-header">
298
  <i
299
+ class="material-icons">archive</i><?php echo __('Adding Files to Archive...', 'xcloner-backup-and-restore') ?>
300
 
301
  <p class="right">
302
  <?php echo sprintf(__('Adding %s files (%s)', 'xcloner-backup-and-restore'), '<span class="file-counter">0</span>', '<span data-processed="0" class="file-size-total">0</span>MB') ?>
325
  <li class="backup-encryption">
326
  <div class="collapsible-header">
327
  <i
328
+ class="material-icons">enhanced_encryption</i><?php echo __('Encrypting Backup Data...', 'xcloner-backup-and-restore') ?>
329
 
330
  <p class="right"><span class="status"></span></p>
331
 
341
  </li>
342
  <li class="remote-storage-transfer">
343
  <div class="collapsible-header">
344
+ <i class="material-icons">swap_horiz</i>
345
+ <?php echo __('Transferrring backup to remote storage...', 'xcloner-backup-and-restore') ?>
346
 
347
  <p class="right"><span class="status"></span></p>
348
 
358
  </li>
359
  <li class="backup-done">
360
  <div class="collapsible-header">
361
+ <i class="material-icons">done</i>
362
+ <?php echo __('Backup Done', 'xcloner-backup-and-restore') ?>
363
 
364
  <p class="right">
365
  <?php if (sizeof($available_storages)): ?>
366
+ <a href="#" class="cloud-upload"
367
+ title="<?php echo __("Send Backup To Remote Storage", 'xcloner-backup-and-restore') ?>"><i
368
+ class="material-icons">swap_horiz</i></a>
369
  <?php endif ?>
370
  <a href="#" class="download"
371
+ title="<?php echo __("Download Backup", 'xcloner-backup-and-restore') ?>"><i
372
+ class="material-icons">file_download</i></a>
373
  <a href="#" class="list-backup-content"
374
+ title="<?php echo __("List Backup Content", 'xcloner-backup-and-restore') ?>"><i
375
+ class="material-icons">folder_open</i></a>
376
  </p>
377
  <div class="clear"></div>
378
  <div class="progress">
387
  <h6><?php echo sprintf(__("We would love to hear about your experience in the %s.", 'xcloner-backup-and-restore'), '<a href="https://wordpress.org/support/plugin/xcloner-backup-and-restore/reviews/" target="_blank">Wordpress XCloner Reviews Section</a>') ?>
388
  </h6>
389
  <a class="twitter-follow-button" href="https://twitter.com/WatchfulDashbrd"
390
+ data-show-count="false">Follow @WatchfulDashbrd</a>
391
  <script src="//platform.twitter.com/widgets.js" async="" charset="utf-8">
392
  </script>
393
 
394
+ <br/>
395
  <!-- XCLONER SPONSORS AREA-->
396
  <!-- END XCLONER SPONSORS AREA-->
397
  </div>
407
 
408
  <div class="row">
409
  <div id="schedule_backup_success"
410
+ class="col s12 l6 updated settings-error notice is-dismissible">
411
  <p><strong><?php echo __('Schedule Saved', 'xcloner-backup-and-restore') ?></strong></p>
412
  <button type="button" class="notice-dismiss"><span
413
+ class="screen-reader-text"><?php echo __('(Dismiss this notice.', 'xcloner-backup-and-restore') ?></span>
414
  </button>
415
  </div>
416
  </div>
419
  <div class="input-field inline col s12 l7">
420
  <input type="text" id="schedule_name" class="" name="schedule_name" required>
421
  <label
422
+ for="schedule_name"><?php echo __('Profile Name', 'xcloner-backup-and-restore') ?></label>
423
  </div>
424
  </div>
425
 
427
  <div class="input-field inline col s12 m8 l4">
428
  <input type="text" id="datepicker" class="datepicker" name="schedule_start_date">
429
  <label
430
+ for="datepicker"><?php echo __('Schedule Backup To Start On:', 'xcloner-backup-and-restore') ?></label>
431
  </div>
432
  <div class="input-field inline col s12 m4 l3">
433
  <input id="timepicker_ampm_dark" class="timepicker" type="text" name="schedule_start_time">
434
  <label
435
+ for="timepicker_ampm_dark"><?php echo __('At:', 'xcloner-backup-and-restore') ?></label>
436
  </div>
437
  </div>
438
 
446
 
447
  foreach ($schedules as $key => $schedule) {
448
  ?>
449
+ <option value="<?php echo $key ?>"><?php echo $schedule['display'] ?></option>
450
+ <?php
451
  }
452
  ?>
453
  </select>
458
  <div class="row">
459
  <div class="col s12 l7">
460
  <button class="right btn waves-effect waves-light submit_schedule" type="submit"
461
+ name="action"><?php echo __("Save Schedule", 'xcloner-backup-and-restore') ?>
462
  <i class="material-icons right">send</i>
463
  </button>
464
  </div>
472
  <!-- Error Modal Structure -->
473
  <div id="error_modal" class="modal">
474
  <a title="Online Help" href="https://wordpress.org/support/plugin/xcloner-backup-and-restore" target="_blank"><i
475
+ class="material-icons medium right">help</i></a>
476
  <div class="modal-content">
477
  <h4 class="title_line"><span class="title"></span></h4>
478
  <!--<h5 class="title_line"><?php echo __('Message') ?>: <span class="msg.old"></span></h5>-->
480
  <textarea class="body" rows="5"></textarea>
481
  </div>
482
  <div class="modal-footer">
483
+ <a class=" modal-action modal-close waves-effect waves-green btn-flat red darken-2">
484
+ <?php echo __('Close', 'xcloner-backup-and-restore') ?>
485
+ </a>
486
  </div>
487
  </div>
488
 
507
  <h4><?php echo __("Remote Storage Transfer", 'xcloner-backup-and-restore') ?></h4>
508
  <p>
509
  <?php if (sizeof($available_storages)): ?>
510
+ <div class="row">
511
+ <div class="col s12 label">
512
+ <label><?php echo __(sprintf('Send %s to remote storage', "<span class='backup_name'></span>"), 'xcloner-backup-and-restore') ?></label>
513
+ </div>
514
+ <div class="input-field col s8 m10">
515
+ <select name="transfer_storage" id="transfer_storage" class="validate" required>
516
+ <option value="" selected><?php echo __('please select...', 'xcloner-backup-and-restore') ?>
517
+ </option>
518
+ <?php foreach ($available_storages as $storage => $text): ?>
519
  <option value="<?php echo $storage ?>"><?php echo $text ?></option>
520
+ <?php endforeach ?>
521
+ </select>
522
 
 
 
 
 
 
 
523
  </div>
524
+ <div class="s4 m2 right">
525
+ <button type="submit" class="upload-submit btn-floating btn-large waves-effect waves-light teal">
526
+ <i class="material-icons">file_upload</i>
527
+ </button>
 
 
528
  </div>
529
+ </div>
530
+ <div class="row status">
531
+ <?php echo __("Uploading backup to the selected remote storage...", 'xcloner-backup-and-restore') ?>
532
+ <span class="status-text"></span>
533
+ <div class="progress">
534
+ <div class="indeterminate"></div>
535
+ </div>
536
+ </div>
537
+ <?php endif ?>
538
  </p>
539
  </div>
540
  </form>
541
  </div>
542
 
543
  <script>
544
+ jQuery(function () {
545
+
546
+ jQuery('.col select').formSelect();
547
+ jQuery("select[required]").css({
548
+ display: "block",
549
+ height: 0,
550
+ padding: 0,
551
+ width: 0,
552
+ position: 'absolute'
553
+ });
554
+ jQuery(".backup-done .cloud-upload").on("click", function (e) {
555
+ //var xcloner_manage_backups = new Xcloner_Manage_Backups();
556
+ var hash = jQuery(this).attr('href');
557
+ var id = hash.substr(1)
558
+
559
+ e.preventDefault();
560
+ xcloner_manage_backups.cloud_upload(id)
561
+ })
562
+
563
+ jQuery('#schedule_storage').on('change', function () {
564
+ jQuery('#delete_remote_storage').hide();
565
+ if (jQuery(this).val()) {
566
+ jQuery('#delete_remote_storage').show();
567
+ }
568
+ })
569
+
570
+ jQuery("#generate_backup_form").on("submit", function () {
571
+
572
+ xcloner_backup.params = xcloner_backup.get_form_params();
573
+ var data = JSON.stringify(xcloner_backup.params);
574
+
575
+ xcloner_backup.set_cancel(false);
576
+
577
+ xcloner_backup.do_ajax(data, "save_schedule")
578
+ return false;
579
+ })
580
+
581
+ jQuery(".backup-done .download").on("click", function (e) {
582
+ //var xcloner_manage_backups = new Xcloner_Manage_Backups();
583
+ var hash = jQuery(this).attr('href');
584
+ var id = hash.substr(1)
585
+
586
+ e.preventDefault();
587
+ xcloner_manage_backups.download_backup_by_name(id)
588
+ })
589
+
590
+ jQuery(".backup-done .list-backup-content").on("click", function (e) {
591
+ //var xcloner_manage_backups = new Xcloner_Manage_Backups();
592
+ var hash = jQuery(this).attr('href');
593
+ var id = hash.substr(1)
594
+
595
+ e.preventDefault();
596
+ xcloner_manage_backups.list_backup_content(id)
597
+ })
598
+
599
+ jQuery('.timepicker').timepicker({
600
+ default: 'now',
601
+ min: [7, 30],
602
+ twelvehour: false, // change to 12 hour AM/PM clock from 24 hour
603
+ donetext: 'OK',
604
+ autoClose: true,
605
+ vibrate: true // vibrate the device when dragging clock hand
606
+ });
607
+
608
+ var date_picker = jQuery('.datepicker').datepicker({
609
+ format: 'd mmmm yyyy',
610
+ selectMonths: true, // Creates a dropdown to control month
611
+ selectYears: 15, // Creates a dropdown of 15 years to control year
612
+ min: +0.1,
613
+ autoClose: true,
614
+ onSet: function () {
615
+ //this.close();
616
+ }
617
+ });
618
+
619
+ var date_picker_allowed = jQuery('.datepicker_max_today').datepicker({
620
+ format: 'd mmmm yyyy',
621
+ selectMonths: true, // Creates a dropdown to control month
622
+ selectYears: 15, // Creates a dropdown of 15 years to control year
623
+ max: +0.1,
624
+ onSet: function () {
625
+ //this.close();
626
+ }
627
+ });
628
+
629
+ <?php if ($xcloner_settings->get_enable_mysql_backup()): ?>
630
+ jQuery('#jstree_database_container').jstree({
631
+ 'core': {
632
+ 'check_callback': true,
633
+ 'data': {
634
+ 'method': 'POST',
635
+ 'dataType': 'json',
636
+ 'url': XCLONER_AJAXURL,
637
+ 'data': function (node) {
638
+ var data = {
639
+ 'action': 'get_database_tables_action',
640
+ 'id': node.id
641
  }
642
+ return data;
643
+ }
644
+ },
645
+
646
+ 'error': function (err) {
647
+ //alert("We have encountered a communication error with the server, please review the javascript console.");
648
+ var json = jQuery.parseJSON(err.data)
649
+ show_ajax_error("Error Loading Database Structure ", err.reason, json.xhr);
650
+ },
651
+
652
+ 'strings': {
653
+ 'Loading ...': 'Loading the database structure...'
654
+ },
655
+ 'themes': {
656
+ "variant": "default"
657
+ },
658
+ },
659
+ 'checkbox': {
660
+ three_state: true
661
+ },
662
+ 'plugins': [
663
+ "checkbox",
664
+ "massload",
665
+ "search",
666
+ //"sort",
667
+ //"state",
668
+ "types",
669
+ "unique",
670
+ "wholerow"
671
+ ]
672
+ });
673
+ <?php endif ?>
674
+
675
+ jQuery('#jstree_files_container').jstree({
676
+ 'core': {
677
+ 'check_callback': true,
678
+ 'data': {
679
+ 'method': 'POST',
680
+ 'dataType': 'json',
681
+ 'url': XCLONER_AJAXURL,
682
+ 'data': function (node) {
683
+ var data = {
684
+ 'action': 'get_file_system_action',
685
+ 'id': node.id
686
  }
687
+ return data;
688
+ }
689
+ },
690
+
691
+ 'error': function (err) {
692
+ //alert("We have encountered a communication error with the server, please review the javascript console.");
693
+ var json = jQuery.parseJSON(err.data)
694
+ show_ajax_error("Error Loading Files Structure ", err.reason, json.xhr);
695
+ },
696
+
697
+ 'strings': {
698
+ 'Loading ...': 'Loading the database structure...'
699
+ },
700
+ 'themes': {
701
+ "variant": "default"
702
+ },
703
+ },
704
+ 'checkbox': {
705
+ three_state: true
706
+ },
707
+ 'plugins': [
708
+ "checkbox",
709
+ "massload",
710
+ "search",
711
+ //"sort",
712
+ //"state",
713
+ "types",
714
+ "unique",
715
+ "wholerow"
716
+ ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
717
  });
718
+ });
719
+ </script>
admin/partials/xcloner_init_page.php CHANGED
@@ -12,68 +12,69 @@
12
  * @subpackage Xcloner/admin/partials
13
  */
14
 
15
- $requirements = $this->get_xcloner_container()->get_xcloner_requirements();
16
- $xcloner_settings = $this->get_xcloner_container()->get_xcloner_settings();
17
  $xcloner_file_system = $this->get_xcloner_container()->get_xcloner_filesystem();
18
- $logger = $this->get_xcloner_container()->get_xcloner_logger();
19
- $xcloner_scheduler = $this->get_xcloner_container()->get_xcloner_scheduler();
20
 
21
  $logger_content = $logger->getLastDebugLines();
22
 
23
  $date_format = get_option('date_format');
24
  $time_format = get_option('time_format');
25
 
26
- //$xcloner_file_system->cleanup_tmp_directories();
27
 
28
  if ($requirements->check_backup_ready_status()) {
29
- $latest_backup = $xcloner_file_system->get_latest_backup();
30
- $xcloner_file_system->backup_storage_cleanup();
31
  }
32
  ?>
33
 
34
  <div class="row">
35
  <div class="col s12">
36
- <?php include_once( __DIR__ . "/xcloner_header.php")?>
37
  </div>
38
  <div class="col s12">
39
  <?php if (isset($latest_backup['timestamp']) and $latest_backup['timestamp'] < strtotime("-1 day")): ?>
40
- <div id="setting-error-" class="error settings-error notice is-dismissible">
41
- <p><strong>
42
- <?php echo __('Your latest backup is older than 24 hours, please create a new backup to keep your site protected.', 'xcloner-backup-and-restore') ?>
43
- </strong>
44
- </p>
45
- <button type="button" class="notice-dismiss"><span class="screen-reader-text">Dismiss this notice.</span>
46
- </button>
47
- </div>
 
48
  <?php endif ?>
49
 
50
  <?php if (!isset($latest_backup['timestamp'])): ?>
51
- <div id="setting-error-" class="error settings-error notice is-dismissible">
52
- <p><strong>
53
- <?php echo __('You have no backup that I could find, please generate a new backup to keep your site protected.', 'xcloner-backup-and-restore') ?>
54
- </strong>
55
- </p>
56
- <button type="button" class="notice-dismiss"><span class="screen-reader-text">Dismiss this notice.</span>
57
- </button>
58
- </div>
 
59
  <?php endif ?>
60
 
61
  <?php if (!$requirements->check_backup_ready_status()): ?>
62
- <div id="setting-error-" class="error settings-error notice is-dismissible">
63
- <p><strong>
64
- <?php echo __('Backup system not ready, please check and fix the issues marked in red', 'xcloner-backup-and-restore') ?>
65
- </strong>
66
- </p>
67
- <button type="button" class="notice-dismiss"><span class="screen-reader-text">Dismiss this notice.</span>
68
- </button>
69
- </div>
 
70
 
71
  <?php endif ?>
72
  </div>
73
  </div>
74
 
75
 
76
-
77
  <!-- This file should primarily consist of HTML with a little bit of PHP. -->
78
  <div class="row dashboard">
79
  <div class="col s12 m12 l7">
@@ -90,31 +91,31 @@ if ($requirements->check_backup_ready_status()) {
90
  <h5><?php echo __("Latest Backup", 'xcloner-backup-and-restore') ?></h5>
91
  <blockquote>
92
  <?php if (isset($latest_backup)): ?>
93
- <div class="item">
94
- <div class="title"><?php echo __("Backup Name", 'xcloner-backup-and-restore') ?>
95
- :
 
 
96
  </div>
97
- <?php echo $latest_backup['basename'] ?>
98
- </div>
99
- <div class="item">
100
- <div class="title">
101
- <?php echo __("Backup Size", 'xcloner-backup-and-restore') ?>:
102
  </div>
103
- <?php echo size_format($latest_backup['size']) ?>
104
- </div>
105
- <div class="item">
106
- <div class="title"><?php echo __("Backup Date", 'xcloner-backup-and-restore') ?>
107
- :
 
 
108
  </div>
109
- <?php
110
- echo date($date_format." ".$time_format, $latest_backup['timestamp'] + (get_option('gmt_offset') * HOUR_IN_SECONDS))
111
- ?>
112
- </div>
113
  <?php else: ?>
114
- <div class="item">
115
- <div class="title">
116
- <?php echo __("No Backup Yet", 'xcloner-backup-and-restore') ?></div>
117
- </div>
118
  <?php endif ?>
119
  </blockquote>
120
  <div>
@@ -132,22 +133,22 @@ if ($requirements->check_backup_ready_status()) {
132
  <blockquote>
133
  <div class="item">
134
  <?php
135
- $list = ($xcloner_scheduler->get_next_run_schedule());
136
 
137
- if (is_array($list)) {
138
- $xcloner_file_system->sort_by($list, "next_run_time", "asc");
139
- }
140
 
141
- if (isset($list[0])) {
142
- $latest_schedule = $list[0];
143
- }
144
- ?>
145
  <?php if (isset($latest_schedule->name)): ?>
146
- <div class="title">
147
- <?php echo __("Schedule Name", 'xcloner-backup-and-restore') ?>
148
- :
149
- </div>
150
- <?php echo $latest_schedule->name; ?>
151
  <?php endif; ?>
152
  </div>
153
  <div class="item">
@@ -156,11 +157,11 @@ if ($requirements->check_backup_ready_status()) {
156
  :
157
  </div>
158
  <?php if (isset($latest_schedule->next_run_time)) {
159
- echo date($date_format." ".$time_format, $latest_schedule->next_run_time);
160
- } else {
161
- echo __("Unscheduled", 'xcloner-backup-and-restore');
162
- }
163
- ?>
164
  </div>
165
  </blockquote>
166
  </div>
@@ -168,32 +169,32 @@ if ($requirements->check_backup_ready_status()) {
168
  </li>
169
 
170
  <?php if ($xcloner_settings->get_xcloner_option('xcloner_enable_log')) : ?>
171
- <li class="active">
172
- <div class="collapsible-header active">
173
- <i
174
- class="material-icons">bug_report</i><?php echo __('XCloner Debugger', 'xcloner-backup-and-restore') ?>
175
- <div class="right">
176
- <a href="#<?php echo $logger_basename = basename($logger->get_main_logger_url()) ?>"
177
- class="download-logger" title="<?php echo $logger_basename ?>">
178
- <span class="shorten_string"><?php echo $logger_basename ?>&nbsp;&nbsp;&nbsp;</span>
179
- </a>
 
180
  </div>
181
- </div>
182
- <div class="collapsible-body">
183
- <div class="console" id="xcloner-console"><?php if ($logger_content) {
184
- echo strip_tags(implode("<br />\n", array_reverse($logger_content)), "<br><a>");
185
- } ?></div>
186
- </div>
187
- </li>
188
- <script>
189
- jQuery(document).ready(function () {
190
  var objDiv = document.getElementById("xcloner-console");
191
  objDiv.scrollTop = objDiv.scrollHeight;
192
  /*setInterval(function(){
193
  getXclonerLog();
194
  }, 2000);*/
195
- })
196
- </script>
197
  <?php endif; ?>
198
 
199
  </ul>
@@ -209,38 +210,32 @@ if ($requirements->check_backup_ready_status()) {
209
  <span class="card-title"><?php echo __("System Check", 'xcloner-backup-and-restore') ?></span>
210
  <ul>
211
  <li
212
- class="card-panel <?php echo($requirements->check_xcloner_start_path(1) ? "teal" : "red") ?> lighten-2">
213
  <?php echo __('Backup Start Location', 'xcloner-backup-and-restore') ?>: <span
214
- class="shorten_string "><?php echo $requirements->check_xcloner_start_path(); ?></span>
215
  </li>
216
  <li
217
- class="card-panel <?php echo($requirements->check_xcloner_store_path(1) ? "teal" : "red") ?> lighten-2">
218
  <?php echo __('Backup Storage Location', 'xcloner-backup-and-restore') ?>: <span
219
- class="shorten_string"><?php echo $requirements->check_xcloner_store_path(); ?></span>
220
  </li>
221
  <li
222
- class="card-panel <?php echo($requirements->check_xcloner_tmp_path(1) ? "teal" : "red") ?> lighten-2">
223
  <?php echo __('Temporary Location', 'xcloner-backup-and-restore') ?>: <span
224
- class="shorten_string"><?php echo $requirements->check_xcloner_tmp_path(); ?></span>
225
  </li>
226
 
227
  <li
228
- class="card-panel <?php echo($requirements->check_min_php_version(1) ? "teal" : "red") ?> lighten-2">
229
  <?php echo __('PHP Version Check', 'xcloner-backup-and-restore') ?>
230
  : <?php echo $requirements->check_min_php_version(); ?>
231
- ( >= <?php echo $requirements->get_constant('min_php_version') ?>)
232
- </li>
233
- <li
234
- class="card-panel <?php echo($requirements->check_safe_mode(1) ? "teal" : "orange") ?> lighten-2">
235
- <?php echo __('PHP Safe Mode', 'xcloner-backup-and-restore') ?>
236
- : <?php echo $requirements->check_safe_mode(); ?>
237
- ( <?php echo $requirements->get_constant('safe_mode') ?>)
238
  </li>
239
  <li
240
- class="card-panel <?php echo($requirements->check_backup_ready_status() ? "teal" : "red") ?> lighten-2">
241
  <?php echo($requirements->check_backup_ready_status() ? __('BACKUP READY', 'xcloner-backup-and-restore') : __('Backup not ready, please check above requirements', 'xcloner-backup-and-restore')) ?>
242
  <i
243
- class="material-icons right tiny"><?php echo($requirements->check_backup_ready_status() ? 'thumb_up' : 'thumb_down') ?></i>
244
  </li>
245
  </ul>
246
  <ul class="additional_system_info">
@@ -257,11 +252,11 @@ if ($requirements->check_backup_ready_status()) {
257
  : <?php echo $requirements->get_open_basedir(); ?>
258
  </li>
259
  <?php
260
- $data = array();
261
- if ($requirements->check_backup_ready_status()) {
262
- $data = $xcloner_file_system->estimate_read_write_time();
263
- }
264
- ?>
265
  <li class="card-panel grey darken-1">
266
  <?php echo __('Reading Time 1MB Block', 'xcloner-backup-and-restore') ?>
267
  : <?php echo(isset($data['reading_time']) ? $data['reading_time'] : __("unknown")); ?>
@@ -272,16 +267,16 @@ if ($requirements->check_backup_ready_status()) {
272
  </li>
273
  <li class="card-panel grey darken-1">
274
  <?php echo __('Free Disk Space', 'xcloner-backup-and-restore') ?>
275
- : <?php echo $requirements->get_free_disk_space(); ; ?>
276
  </li>
277
  </ul>
278
  </div>
279
  <div class="card-action">
280
  <a class="waves-effect waves-light btn system_info_toggle blue darken-1"><i
281
- class="material-icons left">list</i><?php echo __('Toggle Additional System Info', 'xcloner-backup-and-restore') ?>
282
  </a>
283
  </div>
284
  </div>
285
 
286
  </div>
287
- </div>
12
  * @subpackage Xcloner/admin/partials
13
  */
14
 
15
+ $requirements = $this->get_xcloner_container()->get_xcloner_requirements();
16
+ $xcloner_settings = $this->get_xcloner_container()->get_xcloner_settings();
17
  $xcloner_file_system = $this->get_xcloner_container()->get_xcloner_filesystem();
18
+ $logger = $this->get_xcloner_container()->get_xcloner_logger();
19
+ $xcloner_scheduler = $this->get_xcloner_container()->get_xcloner_scheduler();
20
 
21
  $logger_content = $logger->getLastDebugLines();
22
 
23
  $date_format = get_option('date_format');
24
  $time_format = get_option('time_format');
25
 
 
26
 
27
  if ($requirements->check_backup_ready_status()) {
28
+ $latest_backup = $xcloner_file_system->get_latest_backup();
29
+ $xcloner_file_system->backup_storage_cleanup();
30
  }
31
  ?>
32
 
33
  <div class="row">
34
  <div class="col s12">
35
+ <?php include_once(__DIR__ . "/xcloner_header.php") ?>
36
  </div>
37
  <div class="col s12">
38
  <?php if (isset($latest_backup['timestamp']) and $latest_backup['timestamp'] < strtotime("-1 day")): ?>
39
+ <div id="setting-error-" class="error settings-error notice is-dismissible">
40
+ <p><strong>
41
+ <?php echo __('Your latest backup is older than 24 hours, please create a new backup to keep your site protected.', 'xcloner-backup-and-restore') ?>
42
+ </strong>
43
+ </p>
44
+ <button type="button" class="notice-dismiss"><span
45
+ class="screen-reader-text">Dismiss this notice.</span>
46
+ </button>
47
+ </div>
48
  <?php endif ?>
49
 
50
  <?php if (!isset($latest_backup['timestamp'])): ?>
51
+ <div id="setting-error-" class="error settings-error notice is-dismissible">
52
+ <p><strong>
53
+ <?php echo __('You have no backup that I could find, please generate a new backup to keep your site protected.', 'xcloner-backup-and-restore') ?>
54
+ </strong>
55
+ </p>
56
+ <button type="button" class="notice-dismiss"><span
57
+ class="screen-reader-text">Dismiss this notice.</span>
58
+ </button>
59
+ </div>
60
  <?php endif ?>
61
 
62
  <?php if (!$requirements->check_backup_ready_status()): ?>
63
+ <div id="setting-error-" class="error settings-error notice is-dismissible">
64
+ <p><strong>
65
+ <?php echo __('Backup system not ready, please check and fix the issues marked in red', 'xcloner-backup-and-restore') ?>
66
+ </strong>
67
+ </p>
68
+ <button type="button" class="notice-dismiss"><span
69
+ class="screen-reader-text">Dismiss this notice.</span>
70
+ </button>
71
+ </div>
72
 
73
  <?php endif ?>
74
  </div>
75
  </div>
76
 
77
 
 
78
  <!-- This file should primarily consist of HTML with a little bit of PHP. -->
79
  <div class="row dashboard">
80
  <div class="col s12 m12 l7">
91
  <h5><?php echo __("Latest Backup", 'xcloner-backup-and-restore') ?></h5>
92
  <blockquote>
93
  <?php if (isset($latest_backup)): ?>
94
+ <div class="item">
95
+ <div class="title"><?php echo __("Backup Name", 'xcloner-backup-and-restore') ?>
96
+ :
97
+ </div>
98
+ <?php echo $latest_backup['basename'] ?>
99
  </div>
100
+ <div class="item">
101
+ <div class="title">
102
+ <?php echo __("Backup Size", 'xcloner-backup-and-restore') ?>:
103
+ </div>
104
+ <?php echo size_format($latest_backup['size']) ?>
105
  </div>
106
+ <div class="item">
107
+ <div class="title"><?php echo __("Backup Date", 'xcloner-backup-and-restore') ?>
108
+ :
109
+ </div>
110
+ <?php
111
+ echo date($date_format . " " . $time_format, $latest_backup['timestamp'] + (get_option('gmt_offset') * HOUR_IN_SECONDS))
112
+ ?>
113
  </div>
 
 
 
 
114
  <?php else: ?>
115
+ <div class="item">
116
+ <div class="title">
117
+ <?php echo __("No Backup Yet", 'xcloner-backup-and-restore') ?></div>
118
+ </div>
119
  <?php endif ?>
120
  </blockquote>
121
  <div>
133
  <blockquote>
134
  <div class="item">
135
  <?php
136
+ $list = ($xcloner_scheduler->get_next_run_schedule());
137
 
138
+ if (is_array($list)) {
139
+ $xcloner_file_system->sort_by($list, "next_run_time", "asc");
140
+ }
141
 
142
+ if (isset($list[0])) {
143
+ $latest_schedule = $list[0];
144
+ }
145
+ ?>
146
  <?php if (isset($latest_schedule->name)): ?>
147
+ <div class="title">
148
+ <?php echo __("Schedule Name", 'xcloner-backup-and-restore') ?>
149
+ :
150
+ </div>
151
+ <?php echo $latest_schedule->name; ?>
152
  <?php endif; ?>
153
  </div>
154
  <div class="item">
157
  :
158
  </div>
159
  <?php if (isset($latest_schedule->next_run_time)) {
160
+ echo date($date_format . " " . $time_format, $latest_schedule->next_run_time);
161
+ } else {
162
+ echo __("Unscheduled", 'xcloner-backup-and-restore');
163
+ }
164
+ ?>
165
  </div>
166
  </blockquote>
167
  </div>
169
  </li>
170
 
171
  <?php if ($xcloner_settings->get_xcloner_option('xcloner_enable_log')) : ?>
172
+ <li class="active">
173
+ <div class="collapsible-header active">
174
+ <i
175
+ class="material-icons">bug_report</i><?php echo __('XCloner Debugger', 'xcloner-backup-and-restore') ?>
176
+ <div class="right">
177
+ <a href="#<?php echo $logger_basename = basename($logger->get_main_logger_url()) ?>"
178
+ class="download-logger" title="<?php echo $logger_basename ?>">
179
+ <span class="shorten_string"><?php echo $logger_basename ?>&nbsp;&nbsp;&nbsp;</span>
180
+ </a>
181
+ </div>
182
  </div>
183
+ <div class="collapsible-body">
184
+ <div class="console" id="xcloner-console"><?php if ($logger_content) {
185
+ echo strip_tags(implode("<br />\n", array_reverse($logger_content)), "<br><a>");
186
+ } ?></div>
187
+ </div>
188
+ </li>
189
+ <script>
190
+ jQuery(document).ready(function () {
 
191
  var objDiv = document.getElementById("xcloner-console");
192
  objDiv.scrollTop = objDiv.scrollHeight;
193
  /*setInterval(function(){
194
  getXclonerLog();
195
  }, 2000);*/
196
+ })
197
+ </script>
198
  <?php endif; ?>
199
 
200
  </ul>
210
  <span class="card-title"><?php echo __("System Check", 'xcloner-backup-and-restore') ?></span>
211
  <ul>
212
  <li
213
+ class="card-panel <?php echo($requirements->check_xcloner_start_path(1) ? "teal" : "red") ?> lighten-2">
214
  <?php echo __('Backup Start Location', 'xcloner-backup-and-restore') ?>: <span
215
+ class="shorten_string "><?php echo $requirements->check_xcloner_start_path(); ?></span>
216
  </li>
217
  <li
218
+ class="card-panel <?php echo($requirements->check_xcloner_store_path(1) ? "teal" : "red") ?> lighten-2">
219
  <?php echo __('Backup Storage Location', 'xcloner-backup-and-restore') ?>: <span
220
+ class="shorten_string"><?php echo $requirements->check_xcloner_store_path(); ?></span>
221
  </li>
222
  <li
223
+ class="card-panel <?php echo($requirements->check_xcloner_tmp_path(1) ? "teal" : "red") ?> lighten-2">
224
  <?php echo __('Temporary Location', 'xcloner-backup-and-restore') ?>: <span
225
+ class="shorten_string"><?php echo $requirements->check_xcloner_tmp_path(); ?></span>
226
  </li>
227
 
228
  <li
229
+ class="card-panel <?php echo($requirements->check_min_php_version(1) ? "teal" : "red") ?> lighten-2">
230
  <?php echo __('PHP Version Check', 'xcloner-backup-and-restore') ?>
231
  : <?php echo $requirements->check_min_php_version(); ?>
232
+ ( >= <?php echo $requirements::MIN_PHP_VERSION ?>)
 
 
 
 
 
 
233
  </li>
234
  <li
235
+ class="card-panel <?php echo($requirements->check_backup_ready_status() ? "teal" : "red") ?> lighten-2">
236
  <?php echo($requirements->check_backup_ready_status() ? __('BACKUP READY', 'xcloner-backup-and-restore') : __('Backup not ready, please check above requirements', 'xcloner-backup-and-restore')) ?>
237
  <i
238
+ class="material-icons right tiny"><?php echo($requirements->check_backup_ready_status() ? 'thumb_up' : 'thumb_down') ?></i>
239
  </li>
240
  </ul>
241
  <ul class="additional_system_info">
252
  : <?php echo $requirements->get_open_basedir(); ?>
253
  </li>
254
  <?php
255
+ $data = array();
256
+ if ($requirements->check_backup_ready_status()) {
257
+ $data = $xcloner_file_system->estimate_read_write_time();
258
+ }
259
+ ?>
260
  <li class="card-panel grey darken-1">
261
  <?php echo __('Reading Time 1MB Block', 'xcloner-backup-and-restore') ?>
262
  : <?php echo(isset($data['reading_time']) ? $data['reading_time'] : __("unknown")); ?>
267
  </li>
268
  <li class="card-panel grey darken-1">
269
  <?php echo __('Free Disk Space', 'xcloner-backup-and-restore') ?>
270
+ : <?php echo $requirements->get_free_disk_space();; ?>
271
  </li>
272
  </ul>
273
  </div>
274
  <div class="card-action">
275
  <a class="waves-effect waves-light btn system_info_toggle blue darken-1"><i
276
+ class="material-icons left">list</i><?php echo __('Toggle Additional System Info', 'xcloner-backup-and-restore') ?>
277
  </a>
278
  </div>
279
  </div>
280
 
281
  </div>
282
+ </div>
admin/partials/xcloner_manage_backups_page.php CHANGED
@@ -188,7 +188,8 @@ $available_storages = $xcloner_remote_storage->get_available_storages();
188
  <div class="s4 m2 right">
189
  <button type="submit"
190
  class="upload-submit btn-floating btn-large waves-effect waves-light teal"><i
191
- class="material-icons">file_upload</i></submit>
 
192
  </div>
193
  </div>
194
  <div class="row status">
@@ -373,4 +374,4 @@ $available_storages = $xcloner_remote_storage->get_available_storages();
373
 
374
  var show_delete_alert = 1;
375
  });
376
- </script>
188
  <div class="s4 m2 right">
189
  <button type="submit"
190
  class="upload-submit btn-floating btn-large waves-effect waves-light teal"><i
191
+ class="material-icons">file_upload</i>
192
+ </button>
193
  </div>
194
  </div>
195
  <div class="row status">
374
 
375
  var show_delete_alert = 1;
376
  });
377
+ </script>
api/api_test.html DELETED
@@ -1,129 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Incremental Backup Generator XCloner API</title>
4
-
5
- <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
6
- <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
7
- <script>
8
- var url = document.URL,
9
- shortUrl = url.substring(0, url.lastIndexOf("/"));
10
-
11
- var api_base_url = shortUrl + "/expose_api.php";
12
-
13
- var scan_filesystem_url = api_base_url + "?action=scan_filesystem";
14
- var backup_database_url = api_base_url + "?action=backup_database";
15
- var backup_files_url = api_base_url + "?action=backup_files";
16
-
17
- var global_backup_hash;
18
- var backup_profile;
19
-
20
- async function make_call(call, init, params) {
21
- var data = new FormData();
22
- data.append("init", init);
23
- data.append("hash", global_backup_hash || "");
24
- data.append("extra", JSON.stringify(params) || "");
25
- data.append("standalone_api_key", jQuery('#standalone_api_key').val() || "");
26
- data.append("backup_profile", JSON.stringify(backup_profile) || "");
27
- return axios
28
- .post(window[`${call}_url`], data, {
29
- headers: {
30
- "Content-Type": "application/json",
31
- },
32
- })
33
- .then(function (response) {
34
- // handle success
35
- let data = response.data;
36
- jQuery("#output").append(
37
- `<b>${call}</b>: ${JSON.stringify(data)} <br />`
38
- );
39
- if (!Boolean(data.finished)) {
40
- global_backup_hash = data.hash.substr(1, data.hash.length);
41
- return make_call(call, 0, data.extra);
42
- }
43
- });
44
- }
45
-
46
- function start_backup() {
47
- jQuery("#output").html("");
48
- make_call("scan_filesystem", 1)
49
- .then(function () {
50
- return make_call("backup_database", 1);
51
- })
52
- .then(function () {
53
- return make_call("backup_files", 1);
54
- })
55
- .then(function () {
56
- jQuery("#loading").hide();
57
- jQuery("#output").append(`<b>Backup Finished.</b>`);
58
- }).catch(function(){
59
- jQuery("#loading").hide();
60
- });
61
- }
62
-
63
- jQuery(document).ready(function () {
64
- jQuery("#button").on("click", function () {
65
- try {
66
- if (jQuery("#backup_profile").val()) {
67
- backup_profile = JSON.parse(jQuery("#backup_profile").val());
68
- }
69
- } catch {
70
- alert("Backup profile JSON data is invalid!");
71
- return;
72
- }
73
- if ((api_url = jQuery("#api_url"))) {
74
- api_base_url = api_url;
75
- }
76
-
77
- jQuery("#loading").show();
78
- start_backup();
79
- });
80
- });
81
- </script>
82
- </head>
83
- <body>
84
- <input
85
- type="text"
86
- style="width: 350px;"
87
- placeholder="XCloner Standalone API url"
88
- id="api_url"
89
- />
90
- <button id="button">Start Backup</button> <br />
91
- <input
92
- type="text"
93
- style="width: 350px;"
94
- placeholder="API KEY = config xcloner_standalone_api_key"
95
- id="standalone_api_key"> <br />
96
- <textarea
97
- id="backup_profile"
98
- style="width: 350px; height: 150px;"
99
- placeholder="Backup Profile JSON Config"
100
- >
101
- {
102
- "extra": [],
103
- "backup_params": {
104
- "backup_name": "backup_[domain]_8888-[time]-sql",
105
- "email_notification": "your@email.com",
106
- "diff_start_date": "",
107
- "profile_name": "test2",
108
- "backup_encrypt": false,
109
- "target_storage": ""
110
- },
111
- "database": {
112
- "#": [
113
- "wordpress" ]
114
- },
115
- "excluded_files": [
116
- "wp-content",
117
- "wp-includes"
118
- ]
119
- }</textarea
120
- >
121
-
122
- <div id="output"></div>
123
- <img
124
- src="https://i.gifer.com/4V0b.gif"
125
- id="loading"
126
- style="display: none;"
127
- />
128
- </body>
129
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
api/expose_api.php DELETED
@@ -1,50 +0,0 @@
1
- <?php
2
- define('WP_DEBUG', false);
3
- define('WP_DEBUG_DISPLAY', false);
4
-
5
- require_once(dirname(__DIR__) . '/includes/class-xcloner-standalone.php');
6
-
7
- if (!is_admin()) {
8
- die('Access denied');
9
- }
10
-
11
- //loading the default xcloner settings in format [{'option_name':'value', {'option_value': 'value'}}]
12
- $json_config = json_decode(file_get_contents(__DIR__ . '/standalone_config.json'));
13
-
14
- if (!$json_config) {
15
- die('Could not parse default JSON config, i will shutdown for now...');
16
- }
17
-
18
- if (!is_localhost())
19
- {
20
- if (!isset($_REQUEST['standalone_api_key']) || !$_REQUEST['standalone_api_key'] || $config['xcloner_standalone_api_key'] != $_REQUEST['standalone_api_key']) {
21
- die('Access denied, please check your standalone_api_key value');
22
- }
23
- }
24
-
25
- $config = [];
26
-
27
- foreach ($json_config as $item) {
28
- $config[$item->option_name] = $item->option_value;
29
- }
30
-
31
- //we check to see if we have a backup_profile sent over post
32
- if (isset($_POST['backup_profile']) && trim($_POST['backup_profile'])) {
33
- $arr = json_decode(stripslashes($_POST['backup_profile']), true);
34
- $config['profile'] = array_combine(array_keys($arr), $arr);
35
- $config['profile']['processed'] = true;
36
- $_POST['data'] = json_encode($config['profile']);
37
- }
38
-
39
- if (isset($_POST['extra'])) {
40
- $_POST['data'] = json_decode(stripslashes($_POST['data']));
41
- $_POST['data']->extra = json_decode(($_POST['extra']));
42
- $_POST['data'] = json_encode($_POST['data']);
43
- }
44
-
45
- //pass json config to Xcloner_Standalone lib
46
- $xcloner_backup = new Xcloner_Standalone($json_config);
47
- ob_end_clean();
48
-
49
- $xcloner_backup->define_ajax_hooks();
50
- $xcloner_backup->run();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
api/standalone_config.json DELETED
@@ -1,55 +0,0 @@
1
- [
2
- {"option_name":"xcloner_cleanup_retention_limit_archives","option_value":"100"},
3
- {"option_name":"xcloner_cleanup_retention_limit_days","option_value":"60"},
4
- {"option_name":"xcloner_cleanup_settings_page","option_value":""},
5
- {"option_name":"xcloner_cron_settings_page","option_value":""},
6
- {"option_name":"xcloner_database_records_per_request","option_value":"1000"},
7
- {"option_name":"xcloner_db_version","option_value":"1.1.7"},
8
- {"option_name":"xcloner_directories_to_scan_per_request","option_value":"1000"},
9
- {"option_name":"xcloner_disable_email_notification","option_value":"1"},
10
- {"option_name":"xcloner_enable_log","option_value":"1"},
11
- {"option_name":"xcloner_enable_mysql_backup","option_value":"1"},
12
- {"option_name":"xcloner_enable_pre_update_backup","option_value":""},
13
- {"option_name":"xcloner_encryption_key","option_value":"FMo5vh6NCTo8zcmTsrzV88nnHj6BdoHGOAK"},
14
- {"option_name":"xcloner_standalone_api_key","option_value":""},
15
- {"option_name":"xcloner_exclude_files_larger_than_mb","option_value":"0"},
16
- {"option_name":"xcloner_files_to_process_per_request","option_value":"328"},
17
- {"option_name":"xcloner_force_tmp_path_site_root","option_value":"1"},
18
- {"option_name":"xcloner_mysql_database","option_value":"wordpress"},
19
- {"option_name":"xcloner_mysql_hostname","option_value":"localhost"},
20
- {"option_name":"xcloner_mysql_password","option_value":"root"},
21
- {"option_name":"xcloner_mysql_prefix","option_value":"wp_"},
22
- {"option_name":"xcloner_mysql_settings_page","option_value":""},
23
- {"option_name":"xcloner_mysql_username","option_value":"root"},
24
- {"option_name":"xcloner_size_limit_per_request","option_value":"50"},
25
- {"option_name":"xcloner_split_backup_limit","option_value":"2048"},
26
- {"option_name":"xcloner_start_path","option_value":"\/Applications\/MAMP\/htdocs\/wordpress/"},
27
- {"option_name":"xcloner_store_path","option_value":"\/Applications\/MAMP\/htdocs\/wordpress\/wp-content\/backups\/"},
28
- {"option_name":"xcloner_system_settings_page","option_value":"100"},
29
- {"option_name":"xcloner_text","option_value":"0"},
30
- {"option_name":"profile", "option_value":{
31
- "extra": [],
32
- "backup_params": {
33
- "backup_name": "backup_[domain]_8888-[time]-sql",
34
- "email_notification": "info@thinkovi.com",
35
- "diff_start_date": "",
36
- "schedule_name": "test2",
37
- "backup_encrypt": false,
38
- "start_at": false,
39
- "schedule_frequency": "daily",
40
- "schedule_storage": ""
41
- },
42
- "database": {
43
- "#": [
44
- "wordpress",
45
- "joomla"
46
- ]
47
- },
48
- "excluded_files": [
49
- "wp-content",
50
- "wp-includes"
51
- ]
52
- }}
53
- ]
54
-
55
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
composer.json CHANGED
@@ -1,19 +1,46 @@
1
  {
 
 
 
2
  "require": {
3
- "watchfulli/xcloner-core": "dev-master",
4
- "splitbrain/php-archive": "^1.0",
5
- "vakata/jstree": "^3.3",
6
  "league/flysystem": "^1.0",
7
- "monolog/monolog": "^1.22",
8
- "league/flysystem-sftp": "^1.0",
9
  "league/flysystem-aws-s3-v3": "^1.0",
10
- "mhetreramesh/flysystem-backblaze": "^1.0",
 
11
  "league/flysystem-webdav": "^1.0",
 
 
 
 
12
  "srmklive/flysystem-dropbox-v2": "^1.0",
13
- "league/flysystem-azure-blob-storage": "^0.1.6",
14
- "nicolasbeauvais/flysystem-onedrive": "^1.0"
15
  },
16
  "prefer-stable": true,
17
  "require-dev": {
18
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  }
1
  {
2
+ "name": "watchfulli/xcloner-wordpress",
3
+ "license": "GPL-2.0-or-later",
4
+ "description" : "WordPress backup plugin for XCloner",
5
  "require": {
 
 
 
6
  "league/flysystem": "^1.0",
 
 
7
  "league/flysystem-aws-s3-v3": "^1.0",
8
+ "league/flysystem-azure-blob-storage": "^0.1.6",
9
+ "league/flysystem-sftp": "^1.0",
10
  "league/flysystem-webdav": "^1.0",
11
+ "mhetreramesh/flysystem-backblaze": "^1.0",
12
+ "monolog/monolog": "^1.22",
13
+ "nicolasbeauvais/flysystem-onedrive": "^1.0",
14
+ "splitbrain/php-archive": "^1.0",
15
  "srmklive/flysystem-dropbox-v2": "^1.0",
16
+ "vakata/jstree": "^3.3",
17
+ "watchfulli/xcloner-core": "^v2.1.x-dev"
18
  },
19
  "prefer-stable": true,
20
  "require-dev": {
21
+ "phpunit/phpunit": "^7.0",
22
+ "yoast/phpunit-polyfills": "^1.0",
23
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7",
24
+ "phpcompatibility/phpcompatibility-wp": "*",
25
+ "phpstan/extension-installer": "^1.1",
26
+ "phpstan/phpstan": "^1.0",
27
+ "squizlabs/php_codesniffer": "3.*",
28
+ "szepeviktor/phpstan-wordpress": "^1.0",
29
+ "symfony/process": "^5.4"
30
+ },
31
+ "scripts": {
32
+ "test": "vendor/bin/phpunit --config=phpunit-integration.xml"
33
+ },
34
+ "config": {
35
+ "preferred-install": "dist",
36
+ "sort-packages": true,
37
+ "optimize-autoloader": true
38
+ },
39
+ "extra": {
40
+ "custom-commands": {
41
+ "commands": [
42
+ "ImaginaryMachines\\IsStableTagLatestTag"
43
+ ]
44
+ }
45
+ }
46
  }
composer.lock CHANGED
@@ -4,30 +4,81 @@
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": "250d059bdc729c62a9a6bb69e8139255",
8
  "packages": [
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
  {
10
  "name": "aws/aws-sdk-php",
11
- "version": "3.150.2",
12
  "source": {
13
  "type": "git",
14
  "url": "https://github.com/aws/aws-sdk-php.git",
15
- "reference": "1aef7e270f15347df82279f05d85f551f85c8b87"
16
  },
17
  "dist": {
18
  "type": "zip",
19
- "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/1aef7e270f15347df82279f05d85f551f85c8b87",
20
- "reference": "1aef7e270f15347df82279f05d85f551f85c8b87",
21
  "shasum": ""
22
  },
23
  "require": {
 
24
  "ext-json": "*",
25
  "ext-pcre": "*",
26
  "ext-simplexml": "*",
27
- "guzzlehttp/guzzle": "^5.3.3|^6.2.1|^7.0",
28
- "guzzlehttp/promises": "^1.0",
29
- "guzzlehttp/psr7": "^1.4.1",
30
- "mtdowling/jmespath.php": "^2.5",
31
  "php": ">=5.5"
32
  },
33
  "require-dev": {
@@ -41,7 +92,7 @@
41
  "ext-sockets": "*",
42
  "nette/neon": "^2.3",
43
  "paragonie/random_compat": ">= 2",
44
- "phpunit/phpunit": "^4.8.35|^5.4.3",
45
  "psr/cache": "^1.0",
46
  "psr/simple-cache": "^1.0",
47
  "sebastian/comparator": "^1.2.3"
@@ -60,12 +111,12 @@
60
  }
61
  },
62
  "autoload": {
63
- "psr-4": {
64
- "Aws\\": "src/"
65
- },
66
  "files": [
67
  "src/functions.php"
68
- ]
 
 
 
69
  },
70
  "notification-url": "https://packagist.org/downloads/",
71
  "license": [
@@ -89,20 +140,25 @@
89
  "s3",
90
  "sdk"
91
  ],
92
- "time": "2020-08-20T18:12:35+00:00"
 
 
 
 
 
93
  },
94
  {
95
  "name": "components/jquery",
96
- "version": "3.5.1",
97
  "source": {
98
  "type": "git",
99
  "url": "https://github.com/components/jquery.git",
100
- "reference": "b33e8f0f9a1cb2ae390cf05d766a900b53d2125b"
101
  },
102
  "dist": {
103
  "type": "zip",
104
- "url": "https://api.github.com/repos/components/jquery/zipball/b33e8f0f9a1cb2ae390cf05d766a900b53d2125b",
105
- "reference": "b33e8f0f9a1cb2ae390cf05d766a900b53d2125b",
106
  "shasum": ""
107
  },
108
  "type": "component",
@@ -131,29 +187,37 @@
131
  ],
132
  "description": "jQuery JavaScript Library",
133
  "homepage": "http://jquery.com",
134
- "time": "2020-05-05T13:21:02+00:00"
 
 
 
 
 
 
 
135
  },
136
  {
137
  "name": "gliterd/backblaze-b2",
138
- "version": "1.3.0",
139
  "source": {
140
  "type": "git",
141
  "url": "https://github.com/gliterd/backblaze-b2.git",
142
- "reference": "9dc2006168a50fba84a0f7eab8b9225030f4bf25"
143
  },
144
  "dist": {
145
  "type": "zip",
146
- "url": "https://api.github.com/repos/gliterd/backblaze-b2/zipball/9dc2006168a50fba84a0f7eab8b9225030f4bf25",
147
- "reference": "9dc2006168a50fba84a0f7eab8b9225030f4bf25",
148
  "shasum": ""
149
  },
150
  "require": {
151
- "guzzlehttp/guzzle": "^6.1",
152
- "nesbot/carbon": "~1.20",
153
- "php": "^7.1.8"
 
154
  },
155
  "require-dev": {
156
- "phpunit/phpunit": "4.8.*",
157
  "scrutinizer/ocular": "~1.1",
158
  "squizlabs/php_codesniffer": "~2.3"
159
  },
@@ -186,20 +250,24 @@
186
  "filesystem",
187
  "storage"
188
  ],
189
- "time": "2019-07-24T17:42:22+00:00"
 
 
 
 
190
  },
191
  {
192
  "name": "guzzlehttp/guzzle",
193
- "version": "6.5.5",
194
  "source": {
195
  "type": "git",
196
  "url": "https://github.com/guzzle/guzzle.git",
197
- "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e"
198
  },
199
  "dist": {
200
  "type": "zip",
201
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/9d4290de1cfd701f38099ef7e183b64b4b7b0c5e",
202
- "reference": "9d4290de1cfd701f38099ef7e183b64b4b7b0c5e",
203
  "shasum": ""
204
  },
205
  "require": {
@@ -224,22 +292,52 @@
224
  }
225
  },
226
  "autoload": {
227
- "psr-4": {
228
- "GuzzleHttp\\": "src/"
229
- },
230
  "files": [
231
  "src/functions_include.php"
232
- ]
 
 
 
233
  },
234
  "notification-url": "https://packagist.org/downloads/",
235
  "license": [
236
  "MIT"
237
  ],
238
  "authors": [
 
 
 
 
 
239
  {
240
  "name": "Michael Dowling",
241
  "email": "mtdowling@gmail.com",
242
  "homepage": "https://github.com/mtdowling"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
243
  }
244
  ],
245
  "description": "Guzzle is a PHP HTTP client library",
@@ -253,71 +351,122 @@
253
  "rest",
254
  "web service"
255
  ],
256
- "time": "2020-06-16T21:01:06+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
257
  },
258
  {
259
  "name": "guzzlehttp/promises",
260
- "version": "v1.3.1",
261
  "source": {
262
  "type": "git",
263
  "url": "https://github.com/guzzle/promises.git",
264
- "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646"
265
  },
266
  "dist": {
267
  "type": "zip",
268
- "url": "https://api.github.com/repos/guzzle/promises/zipball/a59da6cf61d80060647ff4d3eb2c03a2bc694646",
269
- "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646",
270
  "shasum": ""
271
  },
272
  "require": {
273
- "php": ">=5.5.0"
274
  },
275
  "require-dev": {
276
- "phpunit/phpunit": "^4.0"
277
  },
278
  "type": "library",
279
  "extra": {
280
  "branch-alias": {
281
- "dev-master": "1.4-dev"
282
  }
283
  },
284
  "autoload": {
285
- "psr-4": {
286
- "GuzzleHttp\\Promise\\": "src/"
287
- },
288
  "files": [
289
  "src/functions_include.php"
290
- ]
 
 
 
291
  },
292
  "notification-url": "https://packagist.org/downloads/",
293
  "license": [
294
  "MIT"
295
  ],
296
  "authors": [
 
 
 
 
 
297
  {
298
  "name": "Michael Dowling",
299
  "email": "mtdowling@gmail.com",
300
  "homepage": "https://github.com/mtdowling"
 
 
 
 
 
 
 
 
 
 
301
  }
302
  ],
303
  "description": "Guzzle promises library",
304
  "keywords": [
305
  "promise"
306
  ],
307
- "time": "2016-12-20T10:07:11+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
308
  },
309
  {
310
  "name": "guzzlehttp/psr7",
311
- "version": "1.6.1",
312
  "source": {
313
  "type": "git",
314
  "url": "https://github.com/guzzle/psr7.git",
315
- "reference": "239400de7a173fe9901b9ac7c06497751f00727a"
316
  },
317
  "dist": {
318
  "type": "zip",
319
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/239400de7a173fe9901b9ac7c06497751f00727a",
320
- "reference": "239400de7a173fe9901b9ac7c06497751f00727a",
321
  "shasum": ""
322
  },
323
  "require": {
@@ -330,37 +479,58 @@
330
  },
331
  "require-dev": {
332
  "ext-zlib": "*",
333
- "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8"
334
  },
335
  "suggest": {
336
- "zendframework/zend-httphandlerrunner": "Emit PSR-7 responses"
337
  },
338
  "type": "library",
339
  "extra": {
340
  "branch-alias": {
341
- "dev-master": "1.6-dev"
342
  }
343
  },
344
  "autoload": {
345
- "psr-4": {
346
- "GuzzleHttp\\Psr7\\": "src/"
347
- },
348
  "files": [
349
  "src/functions_include.php"
350
- ]
 
 
 
351
  },
352
  "notification-url": "https://packagist.org/downloads/",
353
  "license": [
354
  "MIT"
355
  ],
356
  "authors": [
 
 
 
 
 
357
  {
358
  "name": "Michael Dowling",
359
  "email": "mtdowling@gmail.com",
360
  "homepage": "https://github.com/mtdowling"
361
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
362
  {
363
  "name": "Tobias Schultze",
 
364
  "homepage": "https://github.com/Tobion"
365
  }
366
  ],
@@ -375,80 +545,53 @@
375
  "uri",
376
  "url"
377
  ],
378
- "time": "2019-07-01T23:21:34+00:00"
379
- },
380
- {
381
- "name": "kylekatarnls/update-helper",
382
- "version": "1.2.1",
383
- "source": {
384
- "type": "git",
385
- "url": "https://github.com/kylekatarnls/update-helper.git",
386
- "reference": "429be50660ed8a196e0798e5939760f168ec8ce9"
387
  },
388
- "dist": {
389
- "type": "zip",
390
- "url": "https://api.github.com/repos/kylekatarnls/update-helper/zipball/429be50660ed8a196e0798e5939760f168ec8ce9",
391
- "reference": "429be50660ed8a196e0798e5939760f168ec8ce9",
392
- "shasum": ""
393
- },
394
- "require": {
395
- "composer-plugin-api": "^1.1.0 || ^2.0.0",
396
- "php": ">=5.3.0"
397
- },
398
- "require-dev": {
399
- "codeclimate/php-test-reporter": "dev-master",
400
- "composer/composer": "2.0.x-dev || ^2.0.0-dev",
401
- "phpunit/phpunit": ">=4.8.35 <6.0"
402
- },
403
- "type": "composer-plugin",
404
- "extra": {
405
- "class": "UpdateHelper\\ComposerPlugin"
406
- },
407
- "autoload": {
408
- "psr-0": {
409
- "UpdateHelper\\": "src/"
410
- }
411
- },
412
- "notification-url": "https://packagist.org/downloads/",
413
- "license": [
414
- "MIT"
415
- ],
416
- "authors": [
417
  {
418
- "name": "Kyle",
419
- "email": "kylekatarnls@gmail.com"
420
  }
421
  ],
422
- "description": "Update helper",
423
- "time": "2020-04-07T20:44:10+00:00"
424
  },
425
  {
426
  "name": "league/flysystem",
427
- "version": "1.0.69",
428
  "source": {
429
  "type": "git",
430
  "url": "https://github.com/thephpleague/flysystem.git",
431
- "reference": "7106f78428a344bc4f643c233a94e48795f10967"
432
  },
433
  "dist": {
434
  "type": "zip",
435
- "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/7106f78428a344bc4f643c233a94e48795f10967",
436
- "reference": "7106f78428a344bc4f643c233a94e48795f10967",
437
  "shasum": ""
438
  },
439
  "require": {
440
  "ext-fileinfo": "*",
441
- "php": ">=5.5.9"
 
442
  },
443
  "conflict": {
444
  "league/flysystem-sftp": "<1.0.6"
445
  },
446
  "require-dev": {
447
- "phpspec/phpspec": "^3.4",
448
- "phpunit/phpunit": "^5.7.26"
449
  },
450
  "suggest": {
451
- "ext-fileinfo": "Required for MimeType",
452
  "ext-ftp": "Allows you to use FTP server storage",
453
  "ext-openssl": "Allows you to use FTPS server storage",
454
  "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2",
@@ -504,24 +647,34 @@
504
  "sftp",
505
  "storage"
506
  ],
507
- "time": "2020-05-18T15:13:39+00:00"
 
 
 
 
 
 
 
 
 
 
508
  },
509
  {
510
  "name": "league/flysystem-aws-s3-v3",
511
- "version": "1.0.25",
512
  "source": {
513
  "type": "git",
514
  "url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git",
515
- "reference": "d409b97a50bf85fbde30cbc9fc10237475e696ea"
516
  },
517
  "dist": {
518
  "type": "zip",
519
- "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/d409b97a50bf85fbde30cbc9fc10237475e696ea",
520
- "reference": "d409b97a50bf85fbde30cbc9fc10237475e696ea",
521
  "shasum": ""
522
  },
523
  "require": {
524
- "aws/aws-sdk-php": "^3.0.0",
525
  "league/flysystem": "^1.0.40",
526
  "php": ">=5.5.0"
527
  },
@@ -551,7 +704,11 @@
551
  }
552
  ],
553
  "description": "Flysystem adapter for the AWS S3 SDK v3.x",
554
- "time": "2020-06-02T18:41:58+00:00"
 
 
 
 
555
  },
556
  {
557
  "name": "league/flysystem-azure-blob-storage",
@@ -592,20 +749,24 @@
592
  "email": "info@frenky.net"
593
  }
594
  ],
 
 
 
 
595
  "time": "2019-06-07T20:42:16+00:00"
596
  },
597
  {
598
  "name": "league/flysystem-sftp",
599
- "version": "1.0.22",
600
  "source": {
601
  "type": "git",
602
  "url": "https://github.com/thephpleague/flysystem-sftp.git",
603
- "reference": "cab59dd2277e02fe46f5f23195672a02ed49774d"
604
  },
605
  "dist": {
606
  "type": "zip",
607
- "url": "https://api.github.com/repos/thephpleague/flysystem-sftp/zipball/cab59dd2277e02fe46f5f23195672a02ed49774d",
608
- "reference": "cab59dd2277e02fe46f5f23195672a02ed49774d",
609
  "shasum": ""
610
  },
611
  "require": {
@@ -634,20 +795,38 @@
634
  }
635
  ],
636
  "description": "Flysystem adapter for SFTP",
637
- "time": "2019-10-16T20:05:49+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
638
  },
639
  {
640
  "name": "league/flysystem-webdav",
641
- "version": "1.0.9",
642
  "source": {
643
  "type": "git",
644
  "url": "https://github.com/thephpleague/flysystem-webdav.git",
645
- "reference": "b5c3c756e60cbd495173ce09c0a68a858803f4ce"
646
  },
647
  "dist": {
648
  "type": "zip",
649
- "url": "https://api.github.com/repos/thephpleague/flysystem-webdav/zipball/b5c3c756e60cbd495173ce09c0a68a858803f4ce",
650
- "reference": "b5c3c756e60cbd495173ce09c0a68a858803f4ce",
651
  "shasum": ""
652
  },
653
  "require": {
@@ -657,7 +836,7 @@
657
  },
658
  "require-dev": {
659
  "mockery/mockery": "~1.2",
660
- "phpunit/phpunit": "~4.8"
661
  },
662
  "type": "library",
663
  "extra": {
@@ -681,27 +860,87 @@
681
  }
682
  ],
683
  "description": "Flysystem adapter for WebDAV",
684
- "time": "2019-12-13T22:44:03+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
685
  },
686
  {
687
  "name": "mhetreramesh/flysystem-backblaze",
688
- "version": "1.5.2",
689
  "source": {
690
  "type": "git",
691
  "url": "https://github.com/gliterd/flysystem-backblaze.git",
692
- "reference": "42549be7b3e6f372c824896ccd1d901052cb6d8c"
693
  },
694
  "dist": {
695
  "type": "zip",
696
- "url": "https://api.github.com/repos/gliterd/flysystem-backblaze/zipball/42549be7b3e6f372c824896ccd1d901052cb6d8c",
697
- "reference": "42549be7b3e6f372c824896ccd1d901052cb6d8c",
698
  "shasum": ""
699
  },
700
  "require": {
701
- "gliterd/backblaze-b2": "*",
702
  "league/flysystem": "~1.0",
703
  "mikey179/vfsstream": "*",
704
- "php": "^7.1.8",
705
  "psr/http-message-implementation": "*"
706
  },
707
  "require-dev": {
@@ -736,24 +975,28 @@
736
  "client",
737
  "filesystem"
738
  ],
739
- "time": "2019-01-11T22:47:47+00:00"
 
 
 
 
740
  },
741
  {
742
  "name": "microsoft/azure-storage-blob",
743
- "version": "1.5.0",
744
  "source": {
745
  "type": "git",
746
  "url": "https://github.com/Azure/azure-storage-blob-php.git",
747
- "reference": "6a333cd28a3742c3e99e79042dc6510f9f917919"
748
  },
749
  "dist": {
750
  "type": "zip",
751
- "url": "https://api.github.com/repos/Azure/azure-storage-blob-php/zipball/6a333cd28a3742c3e99e79042dc6510f9f917919",
752
- "reference": "6a333cd28a3742c3e99e79042dc6510f9f917919",
753
  "shasum": ""
754
  },
755
  "require": {
756
- "microsoft/azure-storage-common": "~1.4",
757
  "php": ">=5.6.0"
758
  },
759
  "type": "library",
@@ -780,24 +1023,28 @@
780
  "sdk",
781
  "storage"
782
  ],
783
- "time": "2020-01-02T07:18:59+00:00"
 
 
 
 
784
  },
785
  {
786
  "name": "microsoft/azure-storage-common",
787
- "version": "1.4.1",
788
  "source": {
789
  "type": "git",
790
  "url": "https://github.com/Azure/azure-storage-common-php.git",
791
- "reference": "be4df800761d0d0fa91a9460c7f42517197d57a0"
792
  },
793
  "dist": {
794
  "type": "zip",
795
- "url": "https://api.github.com/repos/Azure/azure-storage-common-php/zipball/be4df800761d0d0fa91a9460c7f42517197d57a0",
796
- "reference": "be4df800761d0d0fa91a9460c7f42517197d57a0",
797
  "shasum": ""
798
  },
799
  "require": {
800
- "guzzlehttp/guzzle": "~6.0",
801
  "php": ">=5.6.0"
802
  },
803
  "type": "library",
@@ -824,36 +1071,42 @@
824
  "sdk",
825
  "storage"
826
  ],
827
- "time": "2020-01-02T07:15:54+00:00"
 
 
 
 
828
  },
829
  {
830
  "name": "microsoft/microsoft-graph",
831
- "version": "1.13.0",
832
  "source": {
833
  "type": "git",
834
  "url": "https://github.com/microsoftgraph/msgraph-sdk-php.git",
835
- "reference": "584b71bf888659596003d9c8acab06161def8ae5"
836
  },
837
  "dist": {
838
  "type": "zip",
839
- "url": "https://api.github.com/repos/microsoftgraph/msgraph-sdk-php/zipball/584b71bf888659596003d9c8acab06161def8ae5",
840
- "reference": "584b71bf888659596003d9c8acab06161def8ae5",
841
  "shasum": ""
842
  },
843
  "require": {
844
- "guzzlehttp/guzzle": "^6.2",
845
- "php": "^7.1"
 
 
846
  },
847
  "require-dev": {
848
  "mikey179/vfsstream": "^1.2",
849
- "phpdocumentor/phpdocumentor": "^2.9",
850
- "phpunit/phpunit": "^7.5"
851
  },
852
  "type": "library",
853
  "autoload": {
854
  "psr-4": {
855
  "Microsoft\\Graph\\": "src/",
856
- "Microsoft\\Graph\\Test\\": "tests/Functional/"
857
  }
858
  },
859
  "notification-url": "https://packagist.org/downloads/",
@@ -862,27 +1115,31 @@
862
  ],
863
  "authors": [
864
  {
865
- "name": "Michael Mainer",
866
- "email": "mmainer@microsoft.com",
867
  "role": "Developer"
868
  }
869
  ],
870
  "description": "The Microsoft Graph SDK for PHP",
871
  "homepage": "https://developer.microsoft.com/en-us/graph",
872
- "time": "2020-02-04T23:16:38+00:00"
 
 
 
 
873
  },
874
  {
875
  "name": "mikey179/vfsstream",
876
- "version": "v1.6.8",
877
  "source": {
878
  "type": "git",
879
  "url": "https://github.com/bovigo/vfsStream.git",
880
- "reference": "231c73783ebb7dd9ec77916c10037eff5a2b6efe"
881
  },
882
  "dist": {
883
  "type": "zip",
884
- "url": "https://api.github.com/repos/bovigo/vfsStream/zipball/231c73783ebb7dd9ec77916c10037eff5a2b6efe",
885
- "reference": "231c73783ebb7dd9ec77916c10037eff5a2b6efe",
886
  "shasum": ""
887
  },
888
  "require": {
@@ -915,20 +1172,25 @@
915
  ],
916
  "description": "Virtual file system to mock the real file system in unit tests.",
917
  "homepage": "http://vfs.bovigo.org/",
918
- "time": "2019-10-30T15:31:00+00:00"
 
 
 
 
 
919
  },
920
  {
921
  "name": "monolog/monolog",
922
- "version": "1.25.4",
923
  "source": {
924
  "type": "git",
925
  "url": "https://github.com/Seldaek/monolog.git",
926
- "reference": "3022efff205e2448b560c833c6fbbf91c3139168"
927
  },
928
  "dist": {
929
  "type": "zip",
930
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/3022efff205e2448b560c833c6fbbf91c3139168",
931
- "reference": "3022efff205e2448b560c833c6fbbf91c3139168",
932
  "shasum": ""
933
  },
934
  "require": {
@@ -944,7 +1206,7 @@
944
  "graylog2/gelf-php": "~1.0",
945
  "php-amqplib/php-amqplib": "~2.4",
946
  "php-console/php-console": "^3.1.3",
947
- "php-parallel-lint/php-parallel-lint": "^1.0",
948
  "phpunit/phpunit": "~4.5",
949
  "ruflin/elastica": ">=0.90 <3.0",
950
  "sentry/sentry": "^0.13",
@@ -964,11 +1226,6 @@
964
  "sentry/sentry": "Allow sending log messages to a Sentry server"
965
  },
966
  "type": "library",
967
- "extra": {
968
- "branch-alias": {
969
- "dev-master": "2.0.x-dev"
970
- }
971
- },
972
  "autoload": {
973
  "psr-4": {
974
  "Monolog\\": "src/Monolog"
@@ -992,29 +1249,43 @@
992
  "logging",
993
  "psr-3"
994
  ],
995
- "time": "2020-05-22T07:31:27+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
996
  },
997
  {
998
  "name": "mtdowling/jmespath.php",
999
- "version": "2.5.0",
1000
  "source": {
1001
  "type": "git",
1002
  "url": "https://github.com/jmespath/jmespath.php.git",
1003
- "reference": "52168cb9472de06979613d365c7f1ab8798be895"
1004
  },
1005
  "dist": {
1006
  "type": "zip",
1007
- "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/52168cb9472de06979613d365c7f1ab8798be895",
1008
- "reference": "52168cb9472de06979613d365c7f1ab8798be895",
1009
  "shasum": ""
1010
  },
1011
  "require": {
1012
- "php": ">=5.4.0",
1013
- "symfony/polyfill-mbstring": "^1.4"
1014
  },
1015
  "require-dev": {
1016
- "composer/xdebug-handler": "^1.2",
1017
- "phpunit/phpunit": "^4.8.36|^7.5.15"
1018
  },
1019
  "bin": [
1020
  "bin/jp.php"
@@ -1022,16 +1293,16 @@
1022
  "type": "library",
1023
  "extra": {
1024
  "branch-alias": {
1025
- "dev-master": "2.5-dev"
1026
  }
1027
  },
1028
  "autoload": {
1029
- "psr-4": {
1030
- "JmesPath\\": "src/"
1031
- },
1032
  "files": [
1033
  "src/JmesPath.php"
1034
- ]
 
 
 
1035
  },
1036
  "notification-url": "https://packagist.org/downloads/",
1037
  "license": [
@@ -1049,47 +1320,68 @@
1049
  "json",
1050
  "jsonpath"
1051
  ],
1052
- "time": "2019-12-30T18:03:34+00:00"
 
 
 
 
1053
  },
1054
  {
1055
  "name": "nesbot/carbon",
1056
- "version": "1.39.1",
1057
  "source": {
1058
  "type": "git",
1059
  "url": "https://github.com/briannesbitt/Carbon.git",
1060
- "reference": "4be0c005164249208ce1b5ca633cd57bdd42ff33"
1061
  },
1062
  "dist": {
1063
  "type": "zip",
1064
- "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4be0c005164249208ce1b5ca633cd57bdd42ff33",
1065
- "reference": "4be0c005164249208ce1b5ca633cd57bdd42ff33",
1066
  "shasum": ""
1067
  },
1068
  "require": {
1069
- "kylekatarnls/update-helper": "^1.1",
1070
- "php": ">=5.3.9",
1071
- "symfony/translation": "~2.6 || ~3.0 || ~4.0"
 
 
1072
  },
1073
  "require-dev": {
1074
- "composer/composer": "^1.2",
1075
- "friendsofphp/php-cs-fixer": "~2",
1076
- "phpunit/phpunit": "^4.8.35 || ^5.7"
 
 
 
 
 
 
 
1077
  },
1078
  "bin": [
1079
- "bin/upgrade-carbon"
1080
  ],
1081
  "type": "library",
1082
  "extra": {
1083
- "update-helper": "Carbon\\Upgrade",
 
 
 
1084
  "laravel": {
1085
  "providers": [
1086
  "Carbon\\Laravel\\ServiceProvider"
1087
  ]
 
 
 
 
 
1088
  }
1089
  },
1090
  "autoload": {
1091
  "psr-4": {
1092
- "": "src/"
1093
  }
1094
  },
1095
  "notification-url": "https://packagist.org/downloads/",
@@ -1100,17 +1392,36 @@
1100
  {
1101
  "name": "Brian Nesbitt",
1102
  "email": "brian@nesbot.com",
1103
- "homepage": "http://nesbot.com"
 
 
 
 
1104
  }
1105
  ],
1106
- "description": "A simple API extension for DateTime.",
1107
- "homepage": "http://carbon.nesbot.com",
1108
  "keywords": [
1109
  "date",
1110
  "datetime",
1111
  "time"
1112
  ],
1113
- "time": "2019-10-14T05:51:36+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1114
  },
1115
  {
1116
  "name": "nicolasbeauvais/flysystem-onedrive",
@@ -1160,21 +1471,25 @@
1160
  "api",
1161
  "flysystem-onedrive"
1162
  ],
 
 
 
 
1163
  "abandoned": true,
1164
  "time": "2017-08-12T15:18:08+00:00"
1165
  },
1166
  {
1167
  "name": "phpseclib/phpseclib",
1168
- "version": "2.0.27",
1169
  "source": {
1170
  "type": "git",
1171
  "url": "https://github.com/phpseclib/phpseclib.git",
1172
- "reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc"
1173
  },
1174
  "dist": {
1175
  "type": "zip",
1176
- "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc",
1177
- "reference": "34620af4df7d1988d8f0d7e91f6c8a3bf931d8dc",
1178
  "shasum": ""
1179
  },
1180
  "require": {
@@ -1182,8 +1497,7 @@
1182
  },
1183
  "require-dev": {
1184
  "phing/phing": "~2.7",
1185
- "phpunit/phpunit": "^4.8.35|^5.7|^6.0",
1186
- "sami/sami": "~2.0",
1187
  "squizlabs/php_codesniffer": "~2.0"
1188
  },
1189
  "suggest": {
@@ -1253,13 +1567,31 @@
1253
  "x.509",
1254
  "x509"
1255
  ],
1256
- "time": "2020-04-04T23:17:33+00:00"
1257
- },
1258
- {
1259
- "name": "psr/http-message",
1260
- "version": "1.0.1",
1261
- "source": {
1262
- "type": "git",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1263
  "url": "https://github.com/php-fig/http-message.git",
1264
  "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
1265
  },
@@ -1303,20 +1635,23 @@
1303
  "request",
1304
  "response"
1305
  ],
 
 
 
1306
  "time": "2016-08-06T14:39:51+00:00"
1307
  },
1308
  {
1309
  "name": "psr/log",
1310
- "version": "1.1.3",
1311
  "source": {
1312
  "type": "git",
1313
  "url": "https://github.com/php-fig/log.git",
1314
- "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc"
1315
  },
1316
  "dist": {
1317
  "type": "zip",
1318
- "url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc",
1319
- "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc",
1320
  "shasum": ""
1321
  },
1322
  "require": {
@@ -1340,7 +1675,7 @@
1340
  "authors": [
1341
  {
1342
  "name": "PHP-FIG",
1343
- "homepage": "http://www.php-fig.org/"
1344
  }
1345
  ],
1346
  "description": "Common interface for logging libraries",
@@ -1350,7 +1685,10 @@
1350
  "psr",
1351
  "psr-3"
1352
  ],
1353
- "time": "2020-03-23T09:12:05+00:00"
 
 
 
1354
  },
1355
  {
1356
  "name": "ralouphie/getallheaders",
@@ -1390,20 +1728,24 @@
1390
  }
1391
  ],
1392
  "description": "A polyfill for getallheaders.",
 
 
 
 
1393
  "time": "2019-03-08T08:55:37+00:00"
1394
  },
1395
  {
1396
  "name": "sabre/dav",
1397
- "version": "4.1.1",
1398
  "source": {
1399
  "type": "git",
1400
  "url": "https://github.com/sabre-io/dav.git",
1401
- "reference": "5736f943c90d8d73d04cd8944d8c913811dc7360"
1402
  },
1403
  "dist": {
1404
  "type": "zip",
1405
- "url": "https://api.github.com/repos/sabre-io/dav/zipball/5736f943c90d8d73d04cd8944d8c913811dc7360",
1406
- "reference": "5736f943c90d8d73d04cd8944d8c913811dc7360",
1407
  "shasum": ""
1408
  },
1409
  "require": {
@@ -1417,20 +1759,18 @@
1417
  "ext-simplexml": "*",
1418
  "ext-spl": "*",
1419
  "lib-libxml": ">=2.7.0",
1420
- "php": "^7.1.0",
1421
  "psr/log": "^1.0",
1422
  "sabre/event": "^5.0",
1423
- "sabre/http": "^5.0.5",
1424
  "sabre/uri": "^2.0",
1425
- "sabre/vobject": "^4.2.1",
1426
  "sabre/xml": "^2.0.1"
1427
  },
1428
  "require-dev": {
1429
  "evert/phpdoc-md": "~0.1.0",
1430
- "friendsofphp/php-cs-fixer": "^2.16.3",
1431
  "monolog/monolog": "^1.18",
1432
- "phpstan/phpstan": "^0.12",
1433
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
1434
  },
1435
  "suggest": {
1436
  "ext-curl": "*",
@@ -1445,8 +1785,8 @@
1445
  "autoload": {
1446
  "psr-4": {
1447
  "Sabre\\DAV\\": "lib/DAV/",
1448
- "Sabre\\DAVACL\\": "lib/DAVACL/",
1449
  "Sabre\\CalDAV\\": "lib/CalDAV/",
 
1450
  "Sabre\\CardDAV\\": "lib/CardDAV/"
1451
  }
1452
  },
@@ -1471,40 +1811,45 @@
1471
  "framework",
1472
  "iCalendar"
1473
  ],
1474
- "time": "2020-07-13T13:38:16+00:00"
 
 
 
 
 
1475
  },
1476
  {
1477
  "name": "sabre/event",
1478
- "version": "5.1.1",
1479
  "source": {
1480
  "type": "git",
1481
  "url": "https://github.com/sabre-io/event.git",
1482
- "reference": "a37c73e535ddab02bd892f4bdab4867f9778cbea"
1483
  },
1484
  "dist": {
1485
  "type": "zip",
1486
- "url": "https://api.github.com/repos/sabre-io/event/zipball/a37c73e535ddab02bd892f4bdab4867f9778cbea",
1487
- "reference": "a37c73e535ddab02bd892f4bdab4867f9778cbea",
1488
  "shasum": ""
1489
  },
1490
  "require": {
1491
- "php": "^7.1|^8.0"
1492
  },
1493
  "require-dev": {
1494
- "friendsofphp/php-cs-fixer": "~2.16.1",
1495
  "phpstan/phpstan": "^0.12",
1496
  "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
1497
  },
1498
  "type": "library",
1499
  "autoload": {
1500
- "psr-4": {
1501
- "Sabre\\Event\\": "lib/"
1502
- },
1503
  "files": [
1504
  "lib/coroutine.php",
1505
  "lib/Loop/functions.php",
1506
  "lib/Promise/functions.php"
1507
- ]
 
 
 
1508
  },
1509
  "notification-url": "https://packagist.org/downloads/",
1510
  "license": [
@@ -1532,33 +1877,37 @@
1532
  "reactor",
1533
  "signal"
1534
  ],
1535
- "time": "2020-09-19T20:29:54+00:00"
 
 
 
 
 
1536
  },
1537
  {
1538
  "name": "sabre/http",
1539
- "version": "5.1.0",
1540
  "source": {
1541
  "type": "git",
1542
  "url": "https://github.com/sabre-io/http.git",
1543
- "reference": "23446999f1f6e62892bbd89745070aa902dd3539"
1544
  },
1545
  "dist": {
1546
  "type": "zip",
1547
- "url": "https://api.github.com/repos/sabre-io/http/zipball/23446999f1f6e62892bbd89745070aa902dd3539",
1548
- "reference": "23446999f1f6e62892bbd89745070aa902dd3539",
1549
  "shasum": ""
1550
  },
1551
  "require": {
1552
  "ext-ctype": "*",
1553
- "ext-curl": "*",
1554
  "ext-mbstring": "*",
1555
- "php": "^7.1",
1556
  "sabre/event": ">=4.0 <6.0",
1557
  "sabre/uri": "^2.0"
1558
  },
1559
  "require-dev": {
1560
- "friendsofphp/php-cs-fixer": "~2.16.1",
1561
- "phpunit/phpunit": "^7.0 || ^8.0"
1562
  },
1563
  "suggest": {
1564
  "ext-curl": " to make http requests with the Client class"
@@ -1589,28 +1938,34 @@
1589
  "keywords": [
1590
  "http"
1591
  ],
1592
- "time": "2020-01-31T20:07:09+00:00"
 
 
 
 
 
1593
  },
1594
  {
1595
  "name": "sabre/uri",
1596
- "version": "2.2.0",
1597
  "source": {
1598
  "type": "git",
1599
  "url": "https://github.com/sabre-io/uri.git",
1600
- "reference": "059d11012603be2e32ddb7543602965563ddbb09"
1601
  },
1602
  "dist": {
1603
  "type": "zip",
1604
- "url": "https://api.github.com/repos/sabre-io/uri/zipball/059d11012603be2e32ddb7543602965563ddbb09",
1605
- "reference": "059d11012603be2e32ddb7543602965563ddbb09",
1606
  "shasum": ""
1607
  },
1608
  "require": {
1609
- "php": "^7.1"
1610
  },
1611
  "require-dev": {
1612
- "friendsofphp/php-cs-fixer": "~2.16.1",
1613
- "phpunit/phpunit": "^7 || ^8"
 
1614
  },
1615
  "type": "library",
1616
  "autoload": {
@@ -1640,30 +1995,36 @@
1640
  "uri",
1641
  "url"
1642
  ],
1643
- "time": "2020-01-31T18:53:43+00:00"
 
 
 
 
 
1644
  },
1645
  {
1646
  "name": "sabre/vobject",
1647
- "version": "4.3.1",
1648
  "source": {
1649
  "type": "git",
1650
  "url": "https://github.com/sabre-io/vobject.git",
1651
- "reference": "a7feca8311462e5da16952454e420b92c20d3586"
1652
  },
1653
  "dist": {
1654
  "type": "zip",
1655
- "url": "https://api.github.com/repos/sabre-io/vobject/zipball/a7feca8311462e5da16952454e420b92c20d3586",
1656
- "reference": "a7feca8311462e5da16952454e420b92c20d3586",
1657
  "shasum": ""
1658
  },
1659
  "require": {
1660
  "ext-mbstring": "*",
1661
- "php": "^7.1",
1662
  "sabre/xml": "^2.1"
1663
  },
1664
  "require-dev": {
1665
- "friendsofphp/php-cs-fixer": "~2.16.1",
1666
  "phpstan/phpstan": "^0.12",
 
1667
  "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
1668
  },
1669
  "suggest": {
@@ -1738,20 +2099,25 @@
1738
  "xCal",
1739
  "xCard"
1740
  ],
1741
- "time": "2020-07-13T11:23:30+00:00"
 
 
 
 
 
1742
  },
1743
  {
1744
  "name": "sabre/xml",
1745
- "version": "2.2.1",
1746
  "source": {
1747
  "type": "git",
1748
  "url": "https://github.com/sabre-io/xml.git",
1749
- "reference": "41c6ba148966b10cafd31d1a4e5feb1e2138d95c"
1750
  },
1751
  "dist": {
1752
  "type": "zip",
1753
- "url": "https://api.github.com/repos/sabre-io/xml/zipball/41c6ba148966b10cafd31d1a4e5feb1e2138d95c",
1754
- "reference": "41c6ba148966b10cafd31d1a4e5feb1e2138d95c",
1755
  "shasum": ""
1756
  },
1757
  "require": {
@@ -1759,23 +2125,23 @@
1759
  "ext-xmlreader": "*",
1760
  "ext-xmlwriter": "*",
1761
  "lib-libxml": ">=2.6.20",
1762
- "php": "^7.1",
1763
  "sabre/uri": ">=1.0,<3.0.0"
1764
  },
1765
  "require-dev": {
1766
- "friendsofphp/php-cs-fixer": "~2.16.1",
1767
  "phpstan/phpstan": "^0.12",
1768
  "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
1769
  },
1770
  "type": "library",
1771
  "autoload": {
1772
- "psr-4": {
1773
- "Sabre\\Xml\\": "lib/"
1774
- },
1775
  "files": [
1776
  "lib/Deserializer/functions.php",
1777
  "lib/Serializer/functions.php"
1778
- ]
 
 
 
1779
  },
1780
  "notification-url": "https://packagist.org/downloads/",
1781
  "license": [
@@ -1802,34 +2168,41 @@
1802
  "dom",
1803
  "xml"
1804
  ],
1805
- "time": "2020-05-11T09:44:55+00:00"
 
 
 
 
 
1806
  },
1807
  {
1808
  "name": "splitbrain/php-archive",
1809
- "version": "1.1.1",
1810
  "source": {
1811
  "type": "git",
1812
  "url": "https://github.com/splitbrain/php-archive.git",
1813
- "reference": "10d89013572ba1f4d4ad7fcb74860242f4c3860b"
1814
  },
1815
  "dist": {
1816
  "type": "zip",
1817
- "url": "https://api.github.com/repos/splitbrain/php-archive/zipball/10d89013572ba1f4d4ad7fcb74860242f4c3860b",
1818
- "reference": "10d89013572ba1f4d4ad7fcb74860242f4c3860b",
1819
  "shasum": ""
1820
  },
1821
  "require": {
1822
- "php": ">=5.4"
1823
  },
1824
  "require-dev": {
1825
  "ext-bz2": "*",
1826
  "ext-zip": "*",
1827
  "mikey179/vfsstream": "^1.6",
1828
- "phpunit/phpunit": "^4.8"
1829
  },
1830
  "suggest": {
 
1831
  "ext-iconv": "Used for proper filename encode handling",
1832
- "ext-mbstring": "Can be used alternatively for handling filename encoding"
 
1833
  },
1834
  "type": "library",
1835
  "autoload": {
@@ -1856,7 +2229,11 @@
1856
  "unzip",
1857
  "zip"
1858
  ],
1859
- "time": "2018-09-09T12:13:53+00:00"
 
 
 
 
1860
  },
1861
  {
1862
  "name": "srmklive/flysystem-dropbox-v2",
@@ -1905,25 +2282,96 @@
1905
  "srmklive",
1906
  "v2"
1907
  ],
 
 
 
 
1908
  "time": "2018-05-19T19:08:49+00:00"
1909
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1910
  {
1911
  "name": "symfony/polyfill-intl-idn",
1912
- "version": "v1.17.0",
1913
  "source": {
1914
  "type": "git",
1915
  "url": "https://github.com/symfony/polyfill-intl-idn.git",
1916
- "reference": "3bff59ea7047e925be6b7f2059d60af31bb46d6a"
1917
  },
1918
  "dist": {
1919
  "type": "zip",
1920
- "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/3bff59ea7047e925be6b7f2059d60af31bb46d6a",
1921
- "reference": "3bff59ea7047e925be6b7f2059d60af31bb46d6a",
1922
  "shasum": ""
1923
  },
1924
  "require": {
1925
- "php": ">=5.3.3",
1926
- "symfony/polyfill-mbstring": "^1.3",
1927
  "symfony/polyfill-php72": "^1.10"
1928
  },
1929
  "suggest": {
@@ -1932,16 +2380,20 @@
1932
  "type": "library",
1933
  "extra": {
1934
  "branch-alias": {
1935
- "dev-master": "1.17-dev"
 
 
 
 
1936
  }
1937
  },
1938
  "autoload": {
1939
- "psr-4": {
1940
- "Symfony\\Polyfill\\Intl\\Idn\\": ""
1941
- },
1942
  "files": [
1943
  "bootstrap.php"
1944
- ]
 
 
 
1945
  },
1946
  "notification-url": "https://packagist.org/downloads/",
1947
  "license": [
@@ -1952,6 +2404,10 @@
1952
  "name": "Laurent Bassin",
1953
  "email": "laurent@bassin.info"
1954
  },
 
 
 
 
1955
  {
1956
  "name": "Symfony Community",
1957
  "homepage": "https://symfony.com/contributors"
@@ -1967,40 +2423,64 @@
1967
  "portable",
1968
  "shim"
1969
  ],
1970
- "time": "2020-05-12T16:47:27+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1971
  },
1972
  {
1973
- "name": "symfony/polyfill-mbstring",
1974
- "version": "v1.17.0",
1975
  "source": {
1976
  "type": "git",
1977
- "url": "https://github.com/symfony/polyfill-mbstring.git",
1978
- "reference": "fa79b11539418b02fc5e1897267673ba2c19419c"
1979
  },
1980
  "dist": {
1981
  "type": "zip",
1982
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fa79b11539418b02fc5e1897267673ba2c19419c",
1983
- "reference": "fa79b11539418b02fc5e1897267673ba2c19419c",
1984
  "shasum": ""
1985
  },
1986
  "require": {
1987
- "php": ">=5.3.3"
1988
  },
1989
  "suggest": {
1990
- "ext-mbstring": "For best performance"
1991
  },
1992
  "type": "library",
1993
  "extra": {
1994
  "branch-alias": {
1995
- "dev-master": "1.17-dev"
 
 
 
 
1996
  }
1997
  },
1998
  "autoload": {
1999
- "psr-4": {
2000
- "Symfony\\Polyfill\\Mbstring\\": ""
2001
- },
2002
  "files": [
2003
  "bootstrap.php"
 
 
 
 
 
 
2004
  ]
2005
  },
2006
  "notification-url": "https://packagist.org/downloads/",
@@ -2017,47 +2497,75 @@
2017
  "homepage": "https://symfony.com/contributors"
2018
  }
2019
  ],
2020
- "description": "Symfony polyfill for the Mbstring extension",
2021
  "homepage": "https://symfony.com",
2022
  "keywords": [
2023
  "compatibility",
2024
- "mbstring",
 
2025
  "polyfill",
2026
  "portable",
2027
  "shim"
2028
  ],
2029
- "time": "2020-05-12T16:47:27+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2030
  },
2031
  {
2032
- "name": "symfony/polyfill-php72",
2033
- "version": "v1.17.0",
2034
  "source": {
2035
  "type": "git",
2036
- "url": "https://github.com/symfony/polyfill-php72.git",
2037
- "reference": "f048e612a3905f34931127360bdd2def19a5e582"
2038
  },
2039
  "dist": {
2040
  "type": "zip",
2041
- "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/f048e612a3905f34931127360bdd2def19a5e582",
2042
- "reference": "f048e612a3905f34931127360bdd2def19a5e582",
2043
  "shasum": ""
2044
  },
2045
  "require": {
2046
- "php": ">=5.3.3"
 
 
 
 
 
 
2047
  },
2048
  "type": "library",
2049
  "extra": {
2050
  "branch-alias": {
2051
- "dev-master": "1.17-dev"
 
 
 
 
2052
  }
2053
  },
2054
  "autoload": {
2055
- "psr-4": {
2056
- "Symfony\\Polyfill\\Php72\\": ""
2057
- },
2058
  "files": [
2059
  "bootstrap.php"
2060
- ]
 
 
 
2061
  },
2062
  "notification-url": "https://packagist.org/downloads/",
2063
  "license": [
@@ -2073,73 +2581,68 @@
2073
  "homepage": "https://symfony.com/contributors"
2074
  }
2075
  ],
2076
- "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions",
2077
  "homepage": "https://symfony.com",
2078
  "keywords": [
2079
  "compatibility",
 
2080
  "polyfill",
2081
  "portable",
2082
  "shim"
2083
  ],
2084
- "time": "2020-05-12T16:47:27+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2085
  },
2086
  {
2087
- "name": "symfony/translation",
2088
- "version": "v4.4.9",
2089
  "source": {
2090
  "type": "git",
2091
- "url": "https://github.com/symfony/translation.git",
2092
- "reference": "79d3ef9096a6a6047dbc69218b68c7b7f63193af"
2093
  },
2094
  "dist": {
2095
  "type": "zip",
2096
- "url": "https://api.github.com/repos/symfony/translation/zipball/79d3ef9096a6a6047dbc69218b68c7b7f63193af",
2097
- "reference": "79d3ef9096a6a6047dbc69218b68c7b7f63193af",
2098
  "shasum": ""
2099
  },
2100
  "require": {
2101
- "php": ">=7.1.3",
2102
- "symfony/polyfill-mbstring": "~1.0",
2103
- "symfony/translation-contracts": "^1.1.6|^2"
2104
- },
2105
- "conflict": {
2106
- "symfony/config": "<3.4",
2107
- "symfony/dependency-injection": "<3.4",
2108
- "symfony/http-kernel": "<4.4",
2109
- "symfony/yaml": "<3.4"
2110
- },
2111
- "provide": {
2112
- "symfony/translation-implementation": "1.0"
2113
- },
2114
- "require-dev": {
2115
- "psr/log": "~1.0",
2116
- "symfony/config": "^3.4|^4.0|^5.0",
2117
- "symfony/console": "^3.4|^4.0|^5.0",
2118
- "symfony/dependency-injection": "^3.4|^4.0|^5.0",
2119
- "symfony/finder": "~2.8|~3.0|~4.0|^5.0",
2120
- "symfony/http-kernel": "^4.4",
2121
- "symfony/intl": "^3.4|^4.0|^5.0",
2122
- "symfony/service-contracts": "^1.1.2|^2",
2123
- "symfony/yaml": "^3.4|^4.0|^5.0"
2124
- },
2125
- "suggest": {
2126
- "psr/log-implementation": "To use logging capability in translator",
2127
- "symfony/config": "",
2128
- "symfony/yaml": ""
2129
  },
2130
  "type": "library",
2131
  "extra": {
2132
  "branch-alias": {
2133
- "dev-master": "4.4-dev"
 
 
 
 
2134
  }
2135
  },
2136
  "autoload": {
 
 
 
2137
  "psr-4": {
2138
- "Symfony\\Component\\Translation\\": ""
2139
- },
2140
- "exclude-from-classmap": [
2141
- "/Tests/"
2142
- ]
2143
  },
2144
  "notification-url": "https://packagist.org/downloads/",
2145
  "license": [
@@ -2147,54 +2650,88 @@
2147
  ],
2148
  "authors": [
2149
  {
2150
- "name": "Fabien Potencier",
2151
- "email": "fabien@symfony.com"
2152
  },
2153
  {
2154
  "name": "Symfony Community",
2155
  "homepage": "https://symfony.com/contributors"
2156
  }
2157
  ],
2158
- "description": "Symfony Translation Component",
2159
  "homepage": "https://symfony.com",
2160
- "time": "2020-05-30T20:06:45+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2161
  },
2162
  {
2163
- "name": "symfony/translation-contracts",
2164
- "version": "v2.1.2",
2165
  "source": {
2166
  "type": "git",
2167
- "url": "https://github.com/symfony/translation-contracts.git",
2168
- "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e"
2169
  },
2170
  "dist": {
2171
  "type": "zip",
2172
- "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e5ca07c8f817f865f618aa072c2fe8e0e637340e",
2173
- "reference": "e5ca07c8f817f865f618aa072c2fe8e0e637340e",
2174
  "shasum": ""
2175
  },
2176
  "require": {
2177
- "php": ">=7.2.5"
2178
- },
2179
- "suggest": {
2180
- "symfony/translation-implementation": ""
2181
  },
2182
  "type": "library",
2183
  "extra": {
2184
  "branch-alias": {
2185
- "dev-master": "2.1-dev"
 
 
 
 
2186
  }
2187
  },
2188
  "autoload": {
 
 
 
2189
  "psr-4": {
2190
- "Symfony\\Contracts\\Translation\\": ""
2191
- }
 
 
 
2192
  },
2193
  "notification-url": "https://packagist.org/downloads/",
2194
  "license": [
2195
  "MIT"
2196
  ],
2197
  "authors": [
 
 
 
 
2198
  {
2199
  "name": "Nicolas Grekas",
2200
  "email": "p@tchwork.com"
@@ -2204,34 +2741,224 @@
2204
  "homepage": "https://symfony.com/contributors"
2205
  }
2206
  ],
2207
- "description": "Generic abstractions related to translation",
2208
  "homepage": "https://symfony.com",
2209
  "keywords": [
2210
- "abstractions",
2211
- "contracts",
2212
- "decoupling",
2213
- "interfaces",
2214
- "interoperability",
2215
- "standards"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2216
  ],
2217
- "time": "2020-05-20T17:43:50+00:00"
2218
  },
2219
  {
2220
- "name": "vakata/jstree",
2221
- "version": "3.3.9",
2222
  "source": {
2223
  "type": "git",
2224
- "url": "https://github.com/vakata/jstree.git",
2225
- "reference": "a7f224265891eee74d85b469006ab461bd430f48"
2226
  },
2227
  "dist": {
2228
  "type": "zip",
2229
- "url": "https://api.github.com/repos/vakata/jstree/zipball/a7f224265891eee74d85b469006ab461bd430f48",
2230
- "reference": "a7f224265891eee74d85b469006ab461bd430f48",
2231
  "shasum": ""
2232
  },
2233
  "require": {
2234
- "components/jquery": ">=1.9.1"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2235
  },
2236
  "suggest": {
2237
  "robloach/component-installer": "Allows installation of Components via Composer"
@@ -2271,23 +2998,39 @@
2271
  ],
2272
  "description": "jsTree is jquery plugin, that provides interactive trees.",
2273
  "homepage": "http://jstree.com",
2274
- "time": "2020-02-10T22:25:09+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2275
  },
2276
  {
2277
  "name": "watchfulli/xcloner-core",
2278
- "version": "dev-master",
2279
  "source": {
2280
  "type": "git",
2281
  "url": "https://github.com/watchfulli/xcloner-core.git",
2282
- "reference": "86ab75c8a1b3bb87d55e91f4ba6866b15a6dd9d5"
2283
  },
2284
  "dist": {
2285
  "type": "zip",
2286
- "url": "https://api.github.com/repos/watchfulli/xcloner-core/zipball/86ab75c8a1b3bb87d55e91f4ba6866b15a6dd9d5",
2287
- "reference": "86ab75c8a1b3bb87d55e91f4ba6866b15a6dd9d5",
2288
  "shasum": ""
2289
  },
2290
  "require": {
 
2291
  "league/flysystem": "^1.0",
2292
  "league/flysystem-aws-s3-v3": "^1.0",
2293
  "league/flysystem-azure-blob-storage": "^0.1.6",
@@ -2295,12 +3038,14 @@
2295
  "league/flysystem-webdav": "^1.0",
2296
  "mhetreramesh/flysystem-backblaze": "^1.0",
2297
  "monolog/monolog": "^1.22",
 
2298
  "splitbrain/php-archive": "^1.0",
2299
- "srmklive/flysystem-dropbox-v2": "^1.0"
2300
  },
2301
  "type": "package",
2302
  "autoload": {
2303
  "psr-4": {
 
2304
  "watchfulli\\XClonerCore\\": "src/"
2305
  }
2306
  },
@@ -2310,15 +3055,2358 @@
2310
  ],
2311
  "authors": [
2312
  {
2313
- "name": "Ovidiu Liuta",
2314
- "email": "info@thinkovi.com"
2315
  }
2316
  ],
2317
  "description": "XCloner Core Library for Backup and Restore",
2318
- "time": "2020-06-12T11:32:11+00:00"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2319
  }
2320
  ],
2321
- "packages-dev": [],
2322
  "aliases": [],
2323
  "minimum-stability": "stable",
2324
  "stability-flags": {
@@ -2327,5 +5415,6 @@
2327
  "prefer-stable": true,
2328
  "prefer-lowest": false,
2329
  "platform": [],
2330
- "platform-dev": []
 
2331
  }
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": "1a86eb578d53885fd35c883747c297cd",
8
  "packages": [
9
+ {
10
+ "name": "aws/aws-crt-php",
11
+ "version": "v1.0.2",
12
+ "source": {
13
+ "type": "git",
14
+ "url": "https://github.com/awslabs/aws-crt-php.git",
15
+ "reference": "3942776a8c99209908ee0b287746263725685732"
16
+ },
17
+ "dist": {
18
+ "type": "zip",
19
+ "url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/3942776a8c99209908ee0b287746263725685732",
20
+ "reference": "3942776a8c99209908ee0b287746263725685732",
21
+ "shasum": ""
22
+ },
23
+ "require": {
24
+ "php": ">=5.5"
25
+ },
26
+ "require-dev": {
27
+ "phpunit/phpunit": "^4.8.35|^5.4.3"
28
+ },
29
+ "type": "library",
30
+ "autoload": {
31
+ "classmap": [
32
+ "src/"
33
+ ]
34
+ },
35
+ "notification-url": "https://packagist.org/downloads/",
36
+ "license": [
37
+ "Apache-2.0"
38
+ ],
39
+ "authors": [
40
+ {
41
+ "name": "AWS SDK Common Runtime Team",
42
+ "email": "aws-sdk-common-runtime@amazon.com"
43
+ }
44
+ ],
45
+ "description": "AWS Common Runtime for PHP",
46
+ "homepage": "http://aws.amazon.com/sdkforphp",
47
+ "keywords": [
48
+ "amazon",
49
+ "aws",
50
+ "crt",
51
+ "sdk"
52
+ ],
53
+ "support": {
54
+ "issues": "https://github.com/awslabs/aws-crt-php/issues",
55
+ "source": "https://github.com/awslabs/aws-crt-php/tree/v1.0.2"
56
+ },
57
+ "time": "2021-09-03T22:57:30+00:00"
58
+ },
59
  {
60
  "name": "aws/aws-sdk-php",
61
+ "version": "3.224.4",
62
  "source": {
63
  "type": "git",
64
  "url": "https://github.com/aws/aws-sdk-php.git",
65
+ "reference": "8c8a713b8c1e1a20f66a801f9d2cd7fd80d8d3f8"
66
  },
67
  "dist": {
68
  "type": "zip",
69
+ "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/8c8a713b8c1e1a20f66a801f9d2cd7fd80d8d3f8",
70
+ "reference": "8c8a713b8c1e1a20f66a801f9d2cd7fd80d8d3f8",
71
  "shasum": ""
72
  },
73
  "require": {
74
+ "aws/aws-crt-php": "^1.0.2",
75
  "ext-json": "*",
76
  "ext-pcre": "*",
77
  "ext-simplexml": "*",
78
+ "guzzlehttp/guzzle": "^5.3.3 || ^6.2.1 || ^7.0",
79
+ "guzzlehttp/promises": "^1.4.0",
80
+ "guzzlehttp/psr7": "^1.7.0 || ^2.1.1",
81
+ "mtdowling/jmespath.php": "^2.6",
82
  "php": ">=5.5"
83
  },
84
  "require-dev": {
92
  "ext-sockets": "*",
93
  "nette/neon": "^2.3",
94
  "paragonie/random_compat": ">= 2",
95
+ "phpunit/phpunit": "^4.8.35 || ^5.6.3",
96
  "psr/cache": "^1.0",
97
  "psr/simple-cache": "^1.0",
98
  "sebastian/comparator": "^1.2.3"
111
  }
112
  },
113
  "autoload": {
 
 
 
114
  "files": [
115
  "src/functions.php"
116
+ ],
117
+ "psr-4": {
118
+ "Aws\\": "src/"
119
+ }
120
  },
121
  "notification-url": "https://packagist.org/downloads/",
122
  "license": [
140
  "s3",
141
  "sdk"
142
  ],
143
+ "support": {
144
+ "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
145
+ "issues": "https://github.com/aws/aws-sdk-php/issues",
146
+ "source": "https://github.com/aws/aws-sdk-php/tree/3.224.4"
147
+ },
148
+ "time": "2022-06-06T18:32:10+00:00"
149
  },
150
  {
151
  "name": "components/jquery",
152
+ "version": "3.6.0",
153
  "source": {
154
  "type": "git",
155
  "url": "https://github.com/components/jquery.git",
156
+ "reference": "6cf38ee1fd04b6adf8e7dda161283aa35be818c3"
157
  },
158
  "dist": {
159
  "type": "zip",
160
+ "url": "https://api.github.com/repos/components/jquery/zipball/6cf38ee1fd04b6adf8e7dda161283aa35be818c3",
161
+ "reference": "6cf38ee1fd04b6adf8e7dda161283aa35be818c3",
162
  "shasum": ""
163
  },
164
  "type": "component",
187
  ],
188
  "description": "jQuery JavaScript Library",
189
  "homepage": "http://jquery.com",
190
+ "support": {
191
+ "forum": "http://forum.jquery.com",
192
+ "irc": "irc://irc.freenode.org/jquery",
193
+ "issues": "https://github.com/jquery/jquery/issues",
194
+ "source": "https://github.com/jquery/jquery",
195
+ "wiki": "http://docs.jquery.com/"
196
+ },
197
+ "time": "2021-03-20T19:13:42+00:00"
198
  },
199
  {
200
  "name": "gliterd/backblaze-b2",
201
+ "version": "1.5.2",
202
  "source": {
203
  "type": "git",
204
  "url": "https://github.com/gliterd/backblaze-b2.git",
205
+ "reference": "be02bed19a4ce8d8eace32c58ad04742292ceae8"
206
  },
207
  "dist": {
208
  "type": "zip",
209
+ "url": "https://api.github.com/repos/gliterd/backblaze-b2/zipball/be02bed19a4ce8d8eace32c58ad04742292ceae8",
210
+ "reference": "be02bed19a4ce8d8eace32c58ad04742292ceae8",
211
  "shasum": ""
212
  },
213
  "require": {
214
+ "ext-json": "*",
215
+ "guzzlehttp/guzzle": "^6.1|^7.0",
216
+ "nesbot/carbon": "2.*",
217
+ "php": "^7.2 || ^8.0"
218
  },
219
  "require-dev": {
220
+ "phpunit/phpunit": "^8.5",
221
  "scrutinizer/ocular": "~1.1",
222
  "squizlabs/php_codesniffer": "~2.3"
223
  },
250
  "filesystem",
251
  "storage"
252
  ],
253
+ "support": {
254
+ "issues": "https://github.com/gliterd/backblaze-b2/issues",
255
+ "source": "https://github.com/gliterd/backblaze-b2/tree/1.5.2"
256
+ },
257
+ "time": "2022-02-25T01:01:07+00:00"
258
  },
259
  {
260
  "name": "guzzlehttp/guzzle",
261
+ "version": "6.5.6",
262
  "source": {
263
  "type": "git",
264
  "url": "https://github.com/guzzle/guzzle.git",
265
+ "reference": "f092dd734083473658de3ee4bef093ed77d2689c"
266
  },
267
  "dist": {
268
  "type": "zip",
269
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/f092dd734083473658de3ee4bef093ed77d2689c",
270
+ "reference": "f092dd734083473658de3ee4bef093ed77d2689c",
271
  "shasum": ""
272
  },
273
  "require": {
292
  }
293
  },
294
  "autoload": {
 
 
 
295
  "files": [
296
  "src/functions_include.php"
297
+ ],
298
+ "psr-4": {
299
+ "GuzzleHttp\\": "src/"
300
+ }
301
  },
302
  "notification-url": "https://packagist.org/downloads/",
303
  "license": [
304
  "MIT"
305
  ],
306
  "authors": [
307
+ {
308
+ "name": "Graham Campbell",
309
+ "email": "hello@gjcampbell.co.uk",
310
+ "homepage": "https://github.com/GrahamCampbell"
311
+ },
312
  {
313
  "name": "Michael Dowling",
314
  "email": "mtdowling@gmail.com",
315
  "homepage": "https://github.com/mtdowling"
316
+ },
317
+ {
318
+ "name": "Jeremy Lindblom",
319
+ "email": "jeremeamia@gmail.com",
320
+ "homepage": "https://github.com/jeremeamia"
321
+ },
322
+ {
323
+ "name": "George Mponos",
324
+ "email": "gmponos@gmail.com",
325
+ "homepage": "https://github.com/gmponos"
326
+ },
327
+ {
328
+ "name": "Tobias Nyholm",
329
+ "email": "tobias.nyholm@gmail.com",
330
+ "homepage": "https://github.com/Nyholm"
331
+ },
332
+ {
333
+ "name": "Márk Sági-Kazár",
334
+ "email": "mark.sagikazar@gmail.com",
335
+ "homepage": "https://github.com/sagikazarmark"
336
+ },
337
+ {
338
+ "name": "Tobias Schultze",
339
+ "email": "webmaster@tubo-world.de",
340
+ "homepage": "https://github.com/Tobion"
341
  }
342
  ],
343
  "description": "Guzzle is a PHP HTTP client library",
351
  "rest",
352
  "web service"
353
  ],
354
+ "support": {
355
+ "issues": "https://github.com/guzzle/guzzle/issues",
356
+ "source": "https://github.com/guzzle/guzzle/tree/6.5.6"
357
+ },
358
+ "funding": [
359
+ {
360
+ "url": "https://github.com/GrahamCampbell",
361
+ "type": "github"
362
+ },
363
+ {
364
+ "url": "https://github.com/Nyholm",
365
+ "type": "github"
366
+ },
367
+ {
368
+ "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle",
369
+ "type": "tidelift"
370
+ }
371
+ ],
372
+ "time": "2022-05-25T13:19:12+00:00"
373
  },
374
  {
375
  "name": "guzzlehttp/promises",
376
+ "version": "1.5.1",
377
  "source": {
378
  "type": "git",
379
  "url": "https://github.com/guzzle/promises.git",
380
+ "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da"
381
  },
382
  "dist": {
383
  "type": "zip",
384
+ "url": "https://api.github.com/repos/guzzle/promises/zipball/fe752aedc9fd8fcca3fe7ad05d419d32998a06da",
385
+ "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da",
386
  "shasum": ""
387
  },
388
  "require": {
389
+ "php": ">=5.5"
390
  },
391
  "require-dev": {
392
+ "symfony/phpunit-bridge": "^4.4 || ^5.1"
393
  },
394
  "type": "library",
395
  "extra": {
396
  "branch-alias": {
397
+ "dev-master": "1.5-dev"
398
  }
399
  },
400
  "autoload": {
 
 
 
401
  "files": [
402
  "src/functions_include.php"
403
+ ],
404
+ "psr-4": {
405
+ "GuzzleHttp\\Promise\\": "src/"
406
+ }
407
  },
408
  "notification-url": "https://packagist.org/downloads/",
409
  "license": [
410
  "MIT"
411
  ],
412
  "authors": [
413
+ {
414
+ "name": "Graham Campbell",
415
+ "email": "hello@gjcampbell.co.uk",
416
+ "homepage": "https://github.com/GrahamCampbell"
417
+ },
418
  {
419
  "name": "Michael Dowling",
420
  "email": "mtdowling@gmail.com",
421
  "homepage": "https://github.com/mtdowling"
422
+ },
423
+ {
424
+ "name": "Tobias Nyholm",
425
+ "email": "tobias.nyholm@gmail.com",
426
+ "homepage": "https://github.com/Nyholm"
427
+ },
428
+ {
429
+ "name": "Tobias Schultze",
430
+ "email": "webmaster@tubo-world.de",
431
+ "homepage": "https://github.com/Tobion"
432
  }
433
  ],
434
  "description": "Guzzle promises library",
435
  "keywords": [
436
  "promise"
437
  ],
438
+ "support": {
439
+ "issues": "https://github.com/guzzle/promises/issues",
440
+ "source": "https://github.com/guzzle/promises/tree/1.5.1"
441
+ },
442
+ "funding": [
443
+ {
444
+ "url": "https://github.com/GrahamCampbell",
445
+ "type": "github"
446
+ },
447
+ {
448
+ "url": "https://github.com/Nyholm",
449
+ "type": "github"
450
+ },
451
+ {
452
+ "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises",
453
+ "type": "tidelift"
454
+ }
455
+ ],
456
+ "time": "2021-10-22T20:56:57+00:00"
457
  },
458
  {
459
  "name": "guzzlehttp/psr7",
460
+ "version": "1.8.5",
461
  "source": {
462
  "type": "git",
463
  "url": "https://github.com/guzzle/psr7.git",
464
+ "reference": "337e3ad8e5716c15f9657bd214d16cc5e69df268"
465
  },
466
  "dist": {
467
  "type": "zip",
468
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/337e3ad8e5716c15f9657bd214d16cc5e69df268",
469
+ "reference": "337e3ad8e5716c15f9657bd214d16cc5e69df268",
470
  "shasum": ""
471
  },
472
  "require": {
479
  },
480
  "require-dev": {
481
  "ext-zlib": "*",
482
+ "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.10"
483
  },
484
  "suggest": {
485
+ "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
486
  },
487
  "type": "library",
488
  "extra": {
489
  "branch-alias": {
490
+ "dev-master": "1.7-dev"
491
  }
492
  },
493
  "autoload": {
 
 
 
494
  "files": [
495
  "src/functions_include.php"
496
+ ],
497
+ "psr-4": {
498
+ "GuzzleHttp\\Psr7\\": "src/"
499
+ }
500
  },
501
  "notification-url": "https://packagist.org/downloads/",
502
  "license": [
503
  "MIT"
504
  ],
505
  "authors": [
506
+ {
507
+ "name": "Graham Campbell",
508
+ "email": "hello@gjcampbell.co.uk",
509
+ "homepage": "https://github.com/GrahamCampbell"
510
+ },
511
  {
512
  "name": "Michael Dowling",
513
  "email": "mtdowling@gmail.com",
514
  "homepage": "https://github.com/mtdowling"
515
  },
516
+ {
517
+ "name": "George Mponos",
518
+ "email": "gmponos@gmail.com",
519
+ "homepage": "https://github.com/gmponos"
520
+ },
521
+ {
522
+ "name": "Tobias Nyholm",
523
+ "email": "tobias.nyholm@gmail.com",
524
+ "homepage": "https://github.com/Nyholm"
525
+ },
526
+ {
527
+ "name": "Márk Sági-Kazár",
528
+ "email": "mark.sagikazar@gmail.com",
529
+ "homepage": "https://github.com/sagikazarmark"
530
+ },
531
  {
532
  "name": "Tobias Schultze",
533
+ "email": "webmaster@tubo-world.de",
534
  "homepage": "https://github.com/Tobion"
535
  }
536
  ],
545
  "uri",
546
  "url"
547
  ],
548
+ "support": {
549
+ "issues": "https://github.com/guzzle/psr7/issues",
550
+ "source": "https://github.com/guzzle/psr7/tree/1.8.5"
 
 
 
 
 
 
551
  },
552
+ "funding": [
553
+ {
554
+ "url": "https://github.com/GrahamCampbell",
555
+ "type": "github"
556
+ },
557
+ {
558
+ "url": "https://github.com/Nyholm",
559
+ "type": "github"
560
+ },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
561
  {
562
+ "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7",
563
+ "type": "tidelift"
564
  }
565
  ],
566
+ "time": "2022-03-20T21:51:18+00:00"
 
567
  },
568
  {
569
  "name": "league/flysystem",
570
+ "version": "1.1.9",
571
  "source": {
572
  "type": "git",
573
  "url": "https://github.com/thephpleague/flysystem.git",
574
+ "reference": "094defdb4a7001845300334e7c1ee2335925ef99"
575
  },
576
  "dist": {
577
  "type": "zip",
578
+ "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/094defdb4a7001845300334e7c1ee2335925ef99",
579
+ "reference": "094defdb4a7001845300334e7c1ee2335925ef99",
580
  "shasum": ""
581
  },
582
  "require": {
583
  "ext-fileinfo": "*",
584
+ "league/mime-type-detection": "^1.3",
585
+ "php": "^7.2.5 || ^8.0"
586
  },
587
  "conflict": {
588
  "league/flysystem-sftp": "<1.0.6"
589
  },
590
  "require-dev": {
591
+ "phpspec/prophecy": "^1.11.1",
592
+ "phpunit/phpunit": "^8.5.8"
593
  },
594
  "suggest": {
 
595
  "ext-ftp": "Allows you to use FTP server storage",
596
  "ext-openssl": "Allows you to use FTPS server storage",
597
  "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2",
647
  "sftp",
648
  "storage"
649
  ],
650
+ "support": {
651
+ "issues": "https://github.com/thephpleague/flysystem/issues",
652
+ "source": "https://github.com/thephpleague/flysystem/tree/1.1.9"
653
+ },
654
+ "funding": [
655
+ {
656
+ "url": "https://offset.earth/frankdejonge",
657
+ "type": "other"
658
+ }
659
+ ],
660
+ "time": "2021-12-09T09:40:50+00:00"
661
  },
662
  {
663
  "name": "league/flysystem-aws-s3-v3",
664
+ "version": "1.0.29",
665
  "source": {
666
  "type": "git",
667
  "url": "https://github.com/thephpleague/flysystem-aws-s3-v3.git",
668
+ "reference": "4e25cc0582a36a786c31115e419c6e40498f6972"
669
  },
670
  "dist": {
671
  "type": "zip",
672
+ "url": "https://api.github.com/repos/thephpleague/flysystem-aws-s3-v3/zipball/4e25cc0582a36a786c31115e419c6e40498f6972",
673
+ "reference": "4e25cc0582a36a786c31115e419c6e40498f6972",
674
  "shasum": ""
675
  },
676
  "require": {
677
+ "aws/aws-sdk-php": "^3.20.0",
678
  "league/flysystem": "^1.0.40",
679
  "php": ">=5.5.0"
680
  },
704
  }
705
  ],
706
  "description": "Flysystem adapter for the AWS S3 SDK v3.x",
707
+ "support": {
708
+ "issues": "https://github.com/thephpleague/flysystem-aws-s3-v3/issues",
709
+ "source": "https://github.com/thephpleague/flysystem-aws-s3-v3/tree/1.0.29"
710
+ },
711
+ "time": "2020-10-08T18:58:37+00:00"
712
  },
713
  {
714
  "name": "league/flysystem-azure-blob-storage",
749
  "email": "info@frenky.net"
750
  }
751
  ],
752
+ "support": {
753
+ "issues": "https://github.com/thephpleague/flysystem-azure-blob-storage/issues",
754
+ "source": "https://github.com/thephpleague/flysystem-azure-blob-storage/tree/0.1.6"
755
+ },
756
  "time": "2019-06-07T20:42:16+00:00"
757
  },
758
  {
759
  "name": "league/flysystem-sftp",
760
+ "version": "1.1.0",
761
  "source": {
762
  "type": "git",
763
  "url": "https://github.com/thephpleague/flysystem-sftp.git",
764
+ "reference": "36fb893d10bb799fa6aa7199e37e84314c9fd97d"
765
  },
766
  "dist": {
767
  "type": "zip",
768
+ "url": "https://api.github.com/repos/thephpleague/flysystem-sftp/zipball/36fb893d10bb799fa6aa7199e37e84314c9fd97d",
769
+ "reference": "36fb893d10bb799fa6aa7199e37e84314c9fd97d",
770
  "shasum": ""
771
  },
772
  "require": {
795
  }
796
  ],
797
  "description": "Flysystem adapter for SFTP",
798
+ "support": {
799
+ "issues": "https://github.com/thephpleague/flysystem-sftp/issues",
800
+ "source": "https://github.com/thephpleague/flysystem-sftp/tree/1.1.0"
801
+ },
802
+ "funding": [
803
+ {
804
+ "url": "https://offset.earth/frankdejonge",
805
+ "type": "custom"
806
+ },
807
+ {
808
+ "url": "https://github.com/frankdejonge",
809
+ "type": "github"
810
+ },
811
+ {
812
+ "url": "https://tidelift.com/funding/github/packagist/league/flysystem",
813
+ "type": "tidelift"
814
+ }
815
+ ],
816
+ "time": "2022-01-04T22:02:01+00:00"
817
  },
818
  {
819
  "name": "league/flysystem-webdav",
820
+ "version": "1.0.10",
821
  "source": {
822
  "type": "git",
823
  "url": "https://github.com/thephpleague/flysystem-webdav.git",
824
+ "reference": "7da805408d366dd92ba15a03a12a59104bfd91d7"
825
  },
826
  "dist": {
827
  "type": "zip",
828
+ "url": "https://api.github.com/repos/thephpleague/flysystem-webdav/zipball/7da805408d366dd92ba15a03a12a59104bfd91d7",
829
+ "reference": "7da805408d366dd92ba15a03a12a59104bfd91d7",
830
  "shasum": ""
831
  },
832
  "require": {
836
  },
837
  "require-dev": {
838
  "mockery/mockery": "~1.2",
839
+ "phpunit/phpunit": "~4.8|~5.0|~6.0|~7.0|~8.0|~9.0"
840
  },
841
  "type": "library",
842
  "extra": {
860
  }
861
  ],
862
  "description": "Flysystem adapter for WebDAV",
863
+ "support": {
864
+ "issues": "https://github.com/thephpleague/flysystem-webdav/issues",
865
+ "source": "https://github.com/thephpleague/flysystem-webdav/tree/1.0.10"
866
+ },
867
+ "time": "2021-12-31T10:30:15+00:00"
868
+ },
869
+ {
870
+ "name": "league/mime-type-detection",
871
+ "version": "1.11.0",
872
+ "source": {
873
+ "type": "git",
874
+ "url": "https://github.com/thephpleague/mime-type-detection.git",
875
+ "reference": "ff6248ea87a9f116e78edd6002e39e5128a0d4dd"
876
+ },
877
+ "dist": {
878
+ "type": "zip",
879
+ "url": "https://api.github.com/repos/thephpleague/mime-type-detection/zipball/ff6248ea87a9f116e78edd6002e39e5128a0d4dd",
880
+ "reference": "ff6248ea87a9f116e78edd6002e39e5128a0d4dd",
881
+ "shasum": ""
882
+ },
883
+ "require": {
884
+ "ext-fileinfo": "*",
885
+ "php": "^7.2 || ^8.0"
886
+ },
887
+ "require-dev": {
888
+ "friendsofphp/php-cs-fixer": "^3.2",
889
+ "phpstan/phpstan": "^0.12.68",
890
+ "phpunit/phpunit": "^8.5.8 || ^9.3"
891
+ },
892
+ "type": "library",
893
+ "autoload": {
894
+ "psr-4": {
895
+ "League\\MimeTypeDetection\\": "src"
896
+ }
897
+ },
898
+ "notification-url": "https://packagist.org/downloads/",
899
+ "license": [
900
+ "MIT"
901
+ ],
902
+ "authors": [
903
+ {
904
+ "name": "Frank de Jonge",
905
+ "email": "info@frankdejonge.nl"
906
+ }
907
+ ],
908
+ "description": "Mime-type detection for Flysystem",
909
+ "support": {
910
+ "issues": "https://github.com/thephpleague/mime-type-detection/issues",
911
+ "source": "https://github.com/thephpleague/mime-type-detection/tree/1.11.0"
912
+ },
913
+ "funding": [
914
+ {
915
+ "url": "https://github.com/frankdejonge",
916
+ "type": "github"
917
+ },
918
+ {
919
+ "url": "https://tidelift.com/funding/github/packagist/league/flysystem",
920
+ "type": "tidelift"
921
+ }
922
+ ],
923
+ "time": "2022-04-17T13:12:02+00:00"
924
  },
925
  {
926
  "name": "mhetreramesh/flysystem-backblaze",
927
+ "version": "1.6.1",
928
  "source": {
929
  "type": "git",
930
  "url": "https://github.com/gliterd/flysystem-backblaze.git",
931
+ "reference": "9bbe64c161519c20e508d2c924d507d892999e5d"
932
  },
933
  "dist": {
934
  "type": "zip",
935
+ "url": "https://api.github.com/repos/gliterd/flysystem-backblaze/zipball/9bbe64c161519c20e508d2c924d507d892999e5d",
936
+ "reference": "9bbe64c161519c20e508d2c924d507d892999e5d",
937
  "shasum": ""
938
  },
939
  "require": {
940
+ "gliterd/backblaze-b2": ">=1.5.0",
941
  "league/flysystem": "~1.0",
942
  "mikey179/vfsstream": "*",
943
+ "php": "^7.2",
944
  "psr/http-message-implementation": "*"
945
  },
946
  "require-dev": {
975
  "client",
976
  "filesystem"
977
  ],
978
+ "support": {
979
+ "issues": "https://github.com/gliterd/flysystem-backblaze/issues",
980
+ "source": "https://github.com/gliterd/flysystem-backblaze/tree/1.6.1"
981
+ },
982
+ "time": "2021-03-03T12:33:02+00:00"
983
  },
984
  {
985
  "name": "microsoft/azure-storage-blob",
986
+ "version": "1.5.3",
987
  "source": {
988
  "type": "git",
989
  "url": "https://github.com/Azure/azure-storage-blob-php.git",
990
+ "reference": "9aec3e152dab8cd9ec64fd89ed71129a0402c4be"
991
  },
992
  "dist": {
993
  "type": "zip",
994
+ "url": "https://api.github.com/repos/Azure/azure-storage-blob-php/zipball/9aec3e152dab8cd9ec64fd89ed71129a0402c4be",
995
+ "reference": "9aec3e152dab8cd9ec64fd89ed71129a0402c4be",
996
  "shasum": ""
997
  },
998
  "require": {
999
+ "microsoft/azure-storage-common": "~1.5",
1000
  "php": ">=5.6.0"
1001
  },
1002
  "type": "library",
1023
  "sdk",
1024
  "storage"
1025
  ],
1026
+ "support": {
1027
+ "issues": "https://github.com/Azure/azure-storage-blob-php/issues",
1028
+ "source": "https://github.com/Azure/azure-storage-blob-php/tree/v1.5.3"
1029
+ },
1030
+ "time": "2021-10-09T03:13:46+00:00"
1031
  },
1032
  {
1033
  "name": "microsoft/azure-storage-common",
1034
+ "version": "1.5.2",
1035
  "source": {
1036
  "type": "git",
1037
  "url": "https://github.com/Azure/azure-storage-common-php.git",
1038
+ "reference": "8ca7b1bf4c9ca7c663e75a02a0035b05b37196a0"
1039
  },
1040
  "dist": {
1041
  "type": "zip",
1042
+ "url": "https://api.github.com/repos/Azure/azure-storage-common-php/zipball/8ca7b1bf4c9ca7c663e75a02a0035b05b37196a0",
1043
+ "reference": "8ca7b1bf4c9ca7c663e75a02a0035b05b37196a0",
1044
  "shasum": ""
1045
  },
1046
  "require": {
1047
+ "guzzlehttp/guzzle": "~6.0|^7.0",
1048
  "php": ">=5.6.0"
1049
  },
1050
  "type": "library",
1071
  "sdk",
1072
  "storage"
1073
  ],
1074
+ "support": {
1075
+ "issues": "https://github.com/Azure/azure-storage-common-php/issues",
1076
+ "source": "https://github.com/Azure/azure-storage-common-php/tree/v1.5.2"
1077
+ },
1078
+ "time": "2021-10-09T03:03:47+00:00"
1079
  },
1080
  {
1081
  "name": "microsoft/microsoft-graph",
1082
+ "version": "1.67.0",
1083
  "source": {
1084
  "type": "git",
1085
  "url": "https://github.com/microsoftgraph/msgraph-sdk-php.git",
1086
+ "reference": "c35e0328cfe14eae2a96150557dfb08b2de91c21"
1087
  },
1088
  "dist": {
1089
  "type": "zip",
1090
+ "url": "https://api.github.com/repos/microsoftgraph/msgraph-sdk-php/zipball/c35e0328cfe14eae2a96150557dfb08b2de91c21",
1091
+ "reference": "c35e0328cfe14eae2a96150557dfb08b2de91c21",
1092
  "shasum": ""
1093
  },
1094
  "require": {
1095
+ "ext-json": "*",
1096
+ "guzzlehttp/guzzle": "^6.0 || ^7.0",
1097
+ "php": "^8.0 || ^7.3",
1098
+ "psr/http-message": "^1.0"
1099
  },
1100
  "require-dev": {
1101
  "mikey179/vfsstream": "^1.2",
1102
+ "phpstan/phpstan": "^0.12.90 || ^1.0.0",
1103
+ "phpunit/phpunit": "^8.0 || ^9.0"
1104
  },
1105
  "type": "library",
1106
  "autoload": {
1107
  "psr-4": {
1108
  "Microsoft\\Graph\\": "src/",
1109
+ "Beta\\Microsoft\\Graph\\": "src/Beta/Microsoft/Graph/"
1110
  }
1111
  },
1112
  "notification-url": "https://packagist.org/downloads/",
1115
  ],
1116
  "authors": [
1117
  {
1118
+ "name": "Microsoft Graph Client Tooling",
1119
+ "email": "graphtooling@service.microsoft.com",
1120
  "role": "Developer"
1121
  }
1122
  ],
1123
  "description": "The Microsoft Graph SDK for PHP",
1124
  "homepage": "https://developer.microsoft.com/en-us/graph",
1125
+ "support": {
1126
+ "issues": "https://github.com/microsoftgraph/msgraph-sdk-php/issues",
1127
+ "source": "https://github.com/microsoftgraph/msgraph-sdk-php/tree/1.67.0"
1128
+ },
1129
+ "time": "2022-06-02T07:04:22+00:00"
1130
  },
1131
  {
1132
  "name": "mikey179/vfsstream",
1133
+ "version": "v1.6.10",
1134
  "source": {
1135
  "type": "git",
1136
  "url": "https://github.com/bovigo/vfsStream.git",
1137
+ "reference": "250c0825537d501e327df879fb3d4cd751933b85"
1138
  },
1139
  "dist": {
1140
  "type": "zip",
1141
+ "url": "https://api.github.com/repos/bovigo/vfsStream/zipball/250c0825537d501e327df879fb3d4cd751933b85",
1142
+ "reference": "250c0825537d501e327df879fb3d4cd751933b85",
1143
  "shasum": ""
1144
  },
1145
  "require": {
1172
  ],
1173
  "description": "Virtual file system to mock the real file system in unit tests.",
1174
  "homepage": "http://vfs.bovigo.org/",
1175
+ "support": {
1176
+ "issues": "https://github.com/bovigo/vfsStream/issues",
1177
+ "source": "https://github.com/bovigo/vfsStream/tree/master",
1178
+ "wiki": "https://github.com/bovigo/vfsStream/wiki"
1179
+ },
1180
+ "time": "2021-09-25T08:05:01+00:00"
1181
  },
1182
  {
1183
  "name": "monolog/monolog",
1184
+ "version": "1.27.0",
1185
  "source": {
1186
  "type": "git",
1187
  "url": "https://github.com/Seldaek/monolog.git",
1188
+ "reference": "52ebd235c1f7e0d5e1b16464b695a28335f8e44a"
1189
  },
1190
  "dist": {
1191
  "type": "zip",
1192
+ "url": "https://api.github.com/repos/Seldaek/monolog/zipball/52ebd235c1f7e0d5e1b16464b695a28335f8e44a",
1193
+ "reference": "52ebd235c1f7e0d5e1b16464b695a28335f8e44a",
1194
  "shasum": ""
1195
  },
1196
  "require": {
1206
  "graylog2/gelf-php": "~1.0",
1207
  "php-amqplib/php-amqplib": "~2.4",
1208
  "php-console/php-console": "^3.1.3",
1209
+ "phpstan/phpstan": "^0.12.59",
1210
  "phpunit/phpunit": "~4.5",
1211
  "ruflin/elastica": ">=0.90 <3.0",
1212
  "sentry/sentry": "^0.13",
1226
  "sentry/sentry": "Allow sending log messages to a Sentry server"
1227
  },
1228
  "type": "library",
 
 
 
 
 
1229
  "autoload": {
1230
  "psr-4": {
1231
  "Monolog\\": "src/Monolog"
1249
  "logging",
1250
  "psr-3"
1251
  ],
1252
+ "support": {
1253
+ "issues": "https://github.com/Seldaek/monolog/issues",
1254
+ "source": "https://github.com/Seldaek/monolog/tree/1.27.0"
1255
+ },
1256
+ "funding": [
1257
+ {
1258
+ "url": "https://github.com/Seldaek",
1259
+ "type": "github"
1260
+ },
1261
+ {
1262
+ "url": "https://tidelift.com/funding/github/packagist/monolog/monolog",
1263
+ "type": "tidelift"
1264
+ }
1265
+ ],
1266
+ "time": "2022-03-13T20:29:46+00:00"
1267
  },
1268
  {
1269
  "name": "mtdowling/jmespath.php",
1270
+ "version": "2.6.1",
1271
  "source": {
1272
  "type": "git",
1273
  "url": "https://github.com/jmespath/jmespath.php.git",
1274
+ "reference": "9b87907a81b87bc76d19a7fb2d61e61486ee9edb"
1275
  },
1276
  "dist": {
1277
  "type": "zip",
1278
+ "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/9b87907a81b87bc76d19a7fb2d61e61486ee9edb",
1279
+ "reference": "9b87907a81b87bc76d19a7fb2d61e61486ee9edb",
1280
  "shasum": ""
1281
  },
1282
  "require": {
1283
+ "php": "^5.4 || ^7.0 || ^8.0",
1284
+ "symfony/polyfill-mbstring": "^1.17"
1285
  },
1286
  "require-dev": {
1287
+ "composer/xdebug-handler": "^1.4 || ^2.0",
1288
+ "phpunit/phpunit": "^4.8.36 || ^7.5.15"
1289
  },
1290
  "bin": [
1291
  "bin/jp.php"
1293
  "type": "library",
1294
  "extra": {
1295
  "branch-alias": {
1296
+ "dev-master": "2.6-dev"
1297
  }
1298
  },
1299
  "autoload": {
 
 
 
1300
  "files": [
1301
  "src/JmesPath.php"
1302
+ ],
1303
+ "psr-4": {
1304
+ "JmesPath\\": "src/"
1305
+ }
1306
  },
1307
  "notification-url": "https://packagist.org/downloads/",
1308
  "license": [
1320
  "json",
1321
  "jsonpath"
1322
  ],
1323
+ "support": {
1324
+ "issues": "https://github.com/jmespath/jmespath.php/issues",
1325
+ "source": "https://github.com/jmespath/jmespath.php/tree/2.6.1"
1326
+ },
1327
+ "time": "2021-06-14T00:11:39+00:00"
1328
  },
1329
  {
1330
  "name": "nesbot/carbon",
1331
+ "version": "2.58.0",
1332
  "source": {
1333
  "type": "git",
1334
  "url": "https://github.com/briannesbitt/Carbon.git",
1335
+ "reference": "97a34af22bde8d0ac20ab34b29d7bfe360902055"
1336
  },
1337
  "dist": {
1338
  "type": "zip",
1339
+ "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/97a34af22bde8d0ac20ab34b29d7bfe360902055",
1340
+ "reference": "97a34af22bde8d0ac20ab34b29d7bfe360902055",
1341
  "shasum": ""
1342
  },
1343
  "require": {
1344
+ "ext-json": "*",
1345
+ "php": "^7.1.8 || ^8.0",
1346
+ "symfony/polyfill-mbstring": "^1.0",
1347
+ "symfony/polyfill-php80": "^1.16",
1348
+ "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0"
1349
  },
1350
  "require-dev": {
1351
+ "doctrine/dbal": "^2.0 || ^3.0",
1352
+ "doctrine/orm": "^2.7",
1353
+ "friendsofphp/php-cs-fixer": "^3.0",
1354
+ "kylekatarnls/multi-tester": "^2.0",
1355
+ "phpmd/phpmd": "^2.9",
1356
+ "phpstan/extension-installer": "^1.0",
1357
+ "phpstan/phpstan": "^0.12.54 || ^1.0",
1358
+ "phpunit/php-file-iterator": "^2.0.5",
1359
+ "phpunit/phpunit": "^7.5.20 || ^8.5.23",
1360
+ "squizlabs/php_codesniffer": "^3.4"
1361
  },
1362
  "bin": [
1363
+ "bin/carbon"
1364
  ],
1365
  "type": "library",
1366
  "extra": {
1367
+ "branch-alias": {
1368
+ "dev-3.x": "3.x-dev",
1369
+ "dev-master": "2.x-dev"
1370
+ },
1371
  "laravel": {
1372
  "providers": [
1373
  "Carbon\\Laravel\\ServiceProvider"
1374
  ]
1375
+ },
1376
+ "phpstan": {
1377
+ "includes": [
1378
+ "extension.neon"
1379
+ ]
1380
  }
1381
  },
1382
  "autoload": {
1383
  "psr-4": {
1384
+ "Carbon\\": "src/Carbon/"
1385
  }
1386
  },
1387
  "notification-url": "https://packagist.org/downloads/",
1392
  {
1393
  "name": "Brian Nesbitt",
1394
  "email": "brian@nesbot.com",
1395
+ "homepage": "https://markido.com"
1396
+ },
1397
+ {
1398
+ "name": "kylekatarnls",
1399
+ "homepage": "https://github.com/kylekatarnls"
1400
  }
1401
  ],
1402
+ "description": "An API extension for DateTime that supports 281 different languages.",
1403
+ "homepage": "https://carbon.nesbot.com",
1404
  "keywords": [
1405
  "date",
1406
  "datetime",
1407
  "time"
1408
  ],
1409
+ "support": {
1410
+ "docs": "https://carbon.nesbot.com/docs",
1411
+ "issues": "https://github.com/briannesbitt/Carbon/issues",
1412
+ "source": "https://github.com/briannesbitt/Carbon"
1413
+ },
1414
+ "funding": [
1415
+ {
1416
+ "url": "https://opencollective.com/Carbon",
1417
+ "type": "open_collective"
1418
+ },
1419
+ {
1420
+ "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon",
1421
+ "type": "tidelift"
1422
+ }
1423
+ ],
1424
+ "time": "2022-04-25T19:31:17+00:00"
1425
  },
1426
  {
1427
  "name": "nicolasbeauvais/flysystem-onedrive",
1471
  "api",
1472
  "flysystem-onedrive"
1473
  ],
1474
+ "support": {
1475
+ "issues": "https://github.com/nicolasbeauvais/flysystem-onedrive/issues",
1476
+ "source": "https://github.com/nicolasbeauvais/flysystem-onedrive/tree/master"
1477
+ },
1478
  "abandoned": true,
1479
  "time": "2017-08-12T15:18:08+00:00"
1480
  },
1481
  {
1482
  "name": "phpseclib/phpseclib",
1483
+ "version": "2.0.37",
1484
  "source": {
1485
  "type": "git",
1486
  "url": "https://github.com/phpseclib/phpseclib.git",
1487
+ "reference": "c812fbb4d6b4d7f30235ab7298a12f09ba13b37c"
1488
  },
1489
  "dist": {
1490
  "type": "zip",
1491
+ "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/c812fbb4d6b4d7f30235ab7298a12f09ba13b37c",
1492
+ "reference": "c812fbb4d6b4d7f30235ab7298a12f09ba13b37c",
1493
  "shasum": ""
1494
  },
1495
  "require": {
1497
  },
1498
  "require-dev": {
1499
  "phing/phing": "~2.7",
1500
+ "phpunit/phpunit": "^4.8.35|^5.7|^6.0|^9.4",
 
1501
  "squizlabs/php_codesniffer": "~2.0"
1502
  },
1503
  "suggest": {
1567
  "x.509",
1568
  "x509"
1569
  ],
1570
+ "support": {
1571
+ "issues": "https://github.com/phpseclib/phpseclib/issues",
1572
+ "source": "https://github.com/phpseclib/phpseclib/tree/2.0.37"
1573
+ },
1574
+ "funding": [
1575
+ {
1576
+ "url": "https://github.com/terrafrost",
1577
+ "type": "github"
1578
+ },
1579
+ {
1580
+ "url": "https://www.patreon.com/phpseclib",
1581
+ "type": "patreon"
1582
+ },
1583
+ {
1584
+ "url": "https://tidelift.com/funding/github/packagist/phpseclib/phpseclib",
1585
+ "type": "tidelift"
1586
+ }
1587
+ ],
1588
+ "time": "2022-04-04T04:57:45+00:00"
1589
+ },
1590
+ {
1591
+ "name": "psr/http-message",
1592
+ "version": "1.0.1",
1593
+ "source": {
1594
+ "type": "git",
1595
  "url": "https://github.com/php-fig/http-message.git",
1596
  "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
1597
  },
1635
  "request",
1636
  "response"
1637
  ],
1638
+ "support": {
1639
+ "source": "https://github.com/php-fig/http-message/tree/master"
1640
+ },
1641
  "time": "2016-08-06T14:39:51+00:00"
1642
  },
1643
  {
1644
  "name": "psr/log",
1645
+ "version": "1.1.4",
1646
  "source": {
1647
  "type": "git",
1648
  "url": "https://github.com/php-fig/log.git",
1649
+ "reference": "d49695b909c3b7628b6289db5479a1c204601f11"
1650
  },
1651
  "dist": {
1652
  "type": "zip",
1653
+ "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11",
1654
+ "reference": "d49695b909c3b7628b6289db5479a1c204601f11",
1655
  "shasum": ""
1656
  },
1657
  "require": {
1675
  "authors": [
1676
  {
1677
  "name": "PHP-FIG",
1678
+ "homepage": "https://www.php-fig.org/"
1679
  }
1680
  ],
1681
  "description": "Common interface for logging libraries",
1685
  "psr",
1686
  "psr-3"
1687
  ],
1688
+ "support": {
1689
+ "source": "https://github.com/php-fig/log/tree/1.1.4"
1690
+ },
1691
+ "time": "2021-05-03T11:20:27+00:00"
1692
  },
1693
  {
1694
  "name": "ralouphie/getallheaders",
1728
  }
1729
  ],
1730
  "description": "A polyfill for getallheaders.",
1731
+ "support": {
1732
+ "issues": "https://github.com/ralouphie/getallheaders/issues",
1733
+ "source": "https://github.com/ralouphie/getallheaders/tree/develop"
1734
+ },
1735
  "time": "2019-03-08T08:55:37+00:00"
1736
  },
1737
  {
1738
  "name": "sabre/dav",
1739
+ "version": "4.0.3",
1740
  "source": {
1741
  "type": "git",
1742
  "url": "https://github.com/sabre-io/dav.git",
1743
+ "reference": "b793fb4ce27cf0f981b540ad771281c430ffe818"
1744
  },
1745
  "dist": {
1746
  "type": "zip",
1747
+ "url": "https://api.github.com/repos/sabre-io/dav/zipball/b793fb4ce27cf0f981b540ad771281c430ffe818",
1748
+ "reference": "b793fb4ce27cf0f981b540ad771281c430ffe818",
1749
  "shasum": ""
1750
  },
1751
  "require": {
1759
  "ext-simplexml": "*",
1760
  "ext-spl": "*",
1761
  "lib-libxml": ">=2.7.0",
1762
+ "php": ">=7.0.0",
1763
  "psr/log": "^1.0",
1764
  "sabre/event": "^5.0",
1765
+ "sabre/http": "^5.0",
1766
  "sabre/uri": "^2.0",
1767
+ "sabre/vobject": "^4.2.0-alpha1",
1768
  "sabre/xml": "^2.0.1"
1769
  },
1770
  "require-dev": {
1771
  "evert/phpdoc-md": "~0.1.0",
 
1772
  "monolog/monolog": "^1.18",
1773
+ "phpunit/phpunit": "^6"
 
1774
  },
1775
  "suggest": {
1776
  "ext-curl": "*",
1785
  "autoload": {
1786
  "psr-4": {
1787
  "Sabre\\DAV\\": "lib/DAV/",
 
1788
  "Sabre\\CalDAV\\": "lib/CalDAV/",
1789
+ "Sabre\\DAVACL\\": "lib/DAVACL/",
1790
  "Sabre\\CardDAV\\": "lib/CardDAV/"
1791
  }
1792
  },
1811
  "framework",
1812
  "iCalendar"
1813
  ],
1814
+ "support": {
1815
+ "forum": "https://groups.google.com/group/sabredav-discuss",
1816
+ "issues": "https://github.com/sabre-io/dav/issues",
1817
+ "source": "https://github.com/fruux/sabre-dav"
1818
+ },
1819
+ "time": "2020-01-10T07:52:45+00:00"
1820
  },
1821
  {
1822
  "name": "sabre/event",
1823
+ "version": "5.1.4",
1824
  "source": {
1825
  "type": "git",
1826
  "url": "https://github.com/sabre-io/event.git",
1827
+ "reference": "d7da22897125d34d7eddf7977758191c06a74497"
1828
  },
1829
  "dist": {
1830
  "type": "zip",
1831
+ "url": "https://api.github.com/repos/sabre-io/event/zipball/d7da22897125d34d7eddf7977758191c06a74497",
1832
+ "reference": "d7da22897125d34d7eddf7977758191c06a74497",
1833
  "shasum": ""
1834
  },
1835
  "require": {
1836
+ "php": "^7.1 || ^8.0"
1837
  },
1838
  "require-dev": {
1839
+ "friendsofphp/php-cs-fixer": "~2.17.1",
1840
  "phpstan/phpstan": "^0.12",
1841
  "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
1842
  },
1843
  "type": "library",
1844
  "autoload": {
 
 
 
1845
  "files": [
1846
  "lib/coroutine.php",
1847
  "lib/Loop/functions.php",
1848
  "lib/Promise/functions.php"
1849
+ ],
1850
+ "psr-4": {
1851
+ "Sabre\\Event\\": "lib/"
1852
+ }
1853
  },
1854
  "notification-url": "https://packagist.org/downloads/",
1855
  "license": [
1877
  "reactor",
1878
  "signal"
1879
  ],
1880
+ "support": {
1881
+ "forum": "https://groups.google.com/group/sabredav-discuss",
1882
+ "issues": "https://github.com/sabre-io/event/issues",
1883
+ "source": "https://github.com/fruux/sabre-event"
1884
+ },
1885
+ "time": "2021-11-04T06:51:17+00:00"
1886
  },
1887
  {
1888
  "name": "sabre/http",
1889
+ "version": "5.0.0",
1890
  "source": {
1891
  "type": "git",
1892
  "url": "https://github.com/sabre-io/http.git",
1893
+ "reference": "f91c7d4437dcbc6f89c8b64e855e1544f4b60250"
1894
  },
1895
  "dist": {
1896
  "type": "zip",
1897
+ "url": "https://api.github.com/repos/sabre-io/http/zipball/f91c7d4437dcbc6f89c8b64e855e1544f4b60250",
1898
+ "reference": "f91c7d4437dcbc6f89c8b64e855e1544f4b60250",
1899
  "shasum": ""
1900
  },
1901
  "require": {
1902
  "ext-ctype": "*",
 
1903
  "ext-mbstring": "*",
1904
+ "php": ">=7.0",
1905
  "sabre/event": ">=4.0 <6.0",
1906
  "sabre/uri": "^2.0"
1907
  },
1908
  "require-dev": {
1909
+ "phpunit/phpunit": ">=6.0.0",
1910
+ "sabre/cs": "~1.0.0"
1911
  },
1912
  "suggest": {
1913
  "ext-curl": " to make http requests with the Client class"
1938
  "keywords": [
1939
  "http"
1940
  ],
1941
+ "support": {
1942
+ "forum": "https://groups.google.com/group/sabredav-discuss",
1943
+ "issues": "https://github.com/sabre-io/http/issues",
1944
+ "source": "https://github.com/fruux/sabre-http"
1945
+ },
1946
+ "time": "2018-06-04T21:27:19+00:00"
1947
  },
1948
  {
1949
  "name": "sabre/uri",
1950
+ "version": "2.2.2",
1951
  "source": {
1952
  "type": "git",
1953
  "url": "https://github.com/sabre-io/uri.git",
1954
+ "reference": "7cb0f489578afad5006e85cd60f18ff33f2d440d"
1955
  },
1956
  "dist": {
1957
  "type": "zip",
1958
+ "url": "https://api.github.com/repos/sabre-io/uri/zipball/7cb0f489578afad5006e85cd60f18ff33f2d440d",
1959
+ "reference": "7cb0f489578afad5006e85cd60f18ff33f2d440d",
1960
  "shasum": ""
1961
  },
1962
  "require": {
1963
+ "php": "^7.1 || ^8.0"
1964
  },
1965
  "require-dev": {
1966
+ "friendsofphp/php-cs-fixer": "~2.17.1",
1967
+ "phpstan/phpstan": "^0.12",
1968
+ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
1969
  },
1970
  "type": "library",
1971
  "autoload": {
1995
  "uri",
1996
  "url"
1997
  ],
1998
+ "support": {
1999
+ "forum": "https://groups.google.com/group/sabredav-discuss",
2000
+ "issues": "https://github.com/sabre-io/uri/issues",
2001
+ "source": "https://github.com/fruux/sabre-uri"
2002
+ },
2003
+ "time": "2021-11-04T09:29:58+00:00"
2004
  },
2005
  {
2006
  "name": "sabre/vobject",
2007
+ "version": "4.4.1",
2008
  "source": {
2009
  "type": "git",
2010
  "url": "https://github.com/sabre-io/vobject.git",
2011
+ "reference": "06feff370141fd3118609f808e86d9315864bf14"
2012
  },
2013
  "dist": {
2014
  "type": "zip",
2015
+ "url": "https://api.github.com/repos/sabre-io/vobject/zipball/06feff370141fd3118609f808e86d9315864bf14",
2016
+ "reference": "06feff370141fd3118609f808e86d9315864bf14",
2017
  "shasum": ""
2018
  },
2019
  "require": {
2020
  "ext-mbstring": "*",
2021
+ "php": "^7.1 || ^8.0",
2022
  "sabre/xml": "^2.1"
2023
  },
2024
  "require-dev": {
2025
+ "friendsofphp/php-cs-fixer": "~2.17.1",
2026
  "phpstan/phpstan": "^0.12",
2027
+ "phpunit/php-invoker": "^2.0 || ^3.1",
2028
  "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
2029
  },
2030
  "suggest": {
2099
  "xCal",
2100
  "xCard"
2101
  ],
2102
+ "support": {
2103
+ "forum": "https://groups.google.com/group/sabredav-discuss",
2104
+ "issues": "https://github.com/sabre-io/vobject/issues",
2105
+ "source": "https://github.com/fruux/sabre-vobject"
2106
+ },
2107
+ "time": "2021-12-07T09:45:33+00:00"
2108
  },
2109
  {
2110
  "name": "sabre/xml",
2111
+ "version": "2.2.5",
2112
  "source": {
2113
  "type": "git",
2114
  "url": "https://github.com/sabre-io/xml.git",
2115
+ "reference": "a6af111850e7536d200d9637c34885cd3c77a86c"
2116
  },
2117
  "dist": {
2118
  "type": "zip",
2119
+ "url": "https://api.github.com/repos/sabre-io/xml/zipball/a6af111850e7536d200d9637c34885cd3c77a86c",
2120
+ "reference": "a6af111850e7536d200d9637c34885cd3c77a86c",
2121
  "shasum": ""
2122
  },
2123
  "require": {
2125
  "ext-xmlreader": "*",
2126
  "ext-xmlwriter": "*",
2127
  "lib-libxml": ">=2.6.20",
2128
+ "php": "^7.1 || ^8.0",
2129
  "sabre/uri": ">=1.0,<3.0.0"
2130
  },
2131
  "require-dev": {
2132
+ "friendsofphp/php-cs-fixer": "~2.17.1",
2133
  "phpstan/phpstan": "^0.12",
2134
  "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0"
2135
  },
2136
  "type": "library",
2137
  "autoload": {
 
 
 
2138
  "files": [
2139
  "lib/Deserializer/functions.php",
2140
  "lib/Serializer/functions.php"
2141
+ ],
2142
+ "psr-4": {
2143
+ "Sabre\\Xml\\": "lib/"
2144
+ }
2145
  },
2146
  "notification-url": "https://packagist.org/downloads/",
2147
  "license": [
2168
  "dom",
2169
  "xml"
2170
  ],
2171
+ "support": {
2172
+ "forum": "https://groups.google.com/group/sabredav-discuss",
2173
+ "issues": "https://github.com/sabre-io/xml/issues",
2174
+ "source": "https://github.com/fruux/sabre-xml"
2175
+ },
2176
+ "time": "2021-11-04T06:37:27+00:00"
2177
  },
2178
  {
2179
  "name": "splitbrain/php-archive",
2180
+ "version": "1.3.1",
2181
  "source": {
2182
  "type": "git",
2183
  "url": "https://github.com/splitbrain/php-archive.git",
2184
+ "reference": "d274e5190ba309777926348900cf9578d9e533c9"
2185
  },
2186
  "dist": {
2187
  "type": "zip",
2188
+ "url": "https://api.github.com/repos/splitbrain/php-archive/zipball/d274e5190ba309777926348900cf9578d9e533c9",
2189
+ "reference": "d274e5190ba309777926348900cf9578d9e533c9",
2190
  "shasum": ""
2191
  },
2192
  "require": {
2193
+ "php": ">=7.0"
2194
  },
2195
  "require-dev": {
2196
  "ext-bz2": "*",
2197
  "ext-zip": "*",
2198
  "mikey179/vfsstream": "^1.6",
2199
+ "phpunit/phpunit": "^8"
2200
  },
2201
  "suggest": {
2202
+ "ext-bz2": "For bz2 compression",
2203
  "ext-iconv": "Used for proper filename encode handling",
2204
+ "ext-mbstring": "Can be used alternatively for handling filename encoding",
2205
+ "ext-zlib": "For zlib compression"
2206
  },
2207
  "type": "library",
2208
  "autoload": {
2229
  "unzip",
2230
  "zip"
2231
  ],
2232
+ "support": {
2233
+ "issues": "https://github.com/splitbrain/php-archive/issues",
2234
+ "source": "https://github.com/splitbrain/php-archive/tree/1.3.1"
2235
+ },
2236
+ "time": "2022-03-23T09:21:55+00:00"
2237
  },
2238
  {
2239
  "name": "srmklive/flysystem-dropbox-v2",
2282
  "srmklive",
2283
  "v2"
2284
  ],
2285
+ "support": {
2286
+ "issues": "https://github.com/srmklive/flysystem-dropbox-v2/issues",
2287
+ "source": "https://github.com/srmklive/flysystem-dropbox-v2/tree/master"
2288
+ },
2289
  "time": "2018-05-19T19:08:49+00:00"
2290
  },
2291
+ {
2292
+ "name": "symfony/deprecation-contracts",
2293
+ "version": "v2.5.1",
2294
+ "source": {
2295
+ "type": "git",
2296
+ "url": "https://github.com/symfony/deprecation-contracts.git",
2297
+ "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66"
2298
+ },
2299
+ "dist": {
2300
+ "type": "zip",
2301
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
2302
+ "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
2303
+ "shasum": ""
2304
+ },
2305
+ "require": {
2306
+ "php": ">=7.1"
2307
+ },
2308
+ "type": "library",
2309
+ "extra": {
2310
+ "branch-alias": {
2311
+ "dev-main": "2.5-dev"
2312
+ },
2313
+ "thanks": {
2314
+ "name": "symfony/contracts",
2315
+ "url": "https://github.com/symfony/contracts"
2316
+ }
2317
+ },
2318
+ "autoload": {
2319
+ "files": [
2320
+ "function.php"
2321
+ ]
2322
+ },
2323
+ "notification-url": "https://packagist.org/downloads/",
2324
+ "license": [
2325
+ "MIT"
2326
+ ],
2327
+ "authors": [
2328
+ {
2329
+ "name": "Nicolas Grekas",
2330
+ "email": "p@tchwork.com"
2331
+ },
2332
+ {
2333
+ "name": "Symfony Community",
2334
+ "homepage": "https://symfony.com/contributors"
2335
+ }
2336
+ ],
2337
+ "description": "A generic function and convention to trigger deprecation notices",
2338
+ "homepage": "https://symfony.com",
2339
+ "support": {
2340
+ "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.1"
2341
+ },
2342
+ "funding": [
2343
+ {
2344
+ "url": "https://symfony.com/sponsor",
2345
+ "type": "custom"
2346
+ },
2347
+ {
2348
+ "url": "https://github.com/fabpot",
2349
+ "type": "github"
2350
+ },
2351
+ {
2352
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2353
+ "type": "tidelift"
2354
+ }
2355
+ ],
2356
+ "time": "2022-01-02T09:53:40+00:00"
2357
+ },
2358
  {
2359
  "name": "symfony/polyfill-intl-idn",
2360
+ "version": "v1.26.0",
2361
  "source": {
2362
  "type": "git",
2363
  "url": "https://github.com/symfony/polyfill-intl-idn.git",
2364
+ "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8"
2365
  },
2366
  "dist": {
2367
  "type": "zip",
2368
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/59a8d271f00dd0e4c2e518104cc7963f655a1aa8",
2369
+ "reference": "59a8d271f00dd0e4c2e518104cc7963f655a1aa8",
2370
  "shasum": ""
2371
  },
2372
  "require": {
2373
+ "php": ">=7.1",
2374
+ "symfony/polyfill-intl-normalizer": "^1.10",
2375
  "symfony/polyfill-php72": "^1.10"
2376
  },
2377
  "suggest": {
2380
  "type": "library",
2381
  "extra": {
2382
  "branch-alias": {
2383
+ "dev-main": "1.26-dev"
2384
+ },
2385
+ "thanks": {
2386
+ "name": "symfony/polyfill",
2387
+ "url": "https://github.com/symfony/polyfill"
2388
  }
2389
  },
2390
  "autoload": {
 
 
 
2391
  "files": [
2392
  "bootstrap.php"
2393
+ ],
2394
+ "psr-4": {
2395
+ "Symfony\\Polyfill\\Intl\\Idn\\": ""
2396
+ }
2397
  },
2398
  "notification-url": "https://packagist.org/downloads/",
2399
  "license": [
2404
  "name": "Laurent Bassin",
2405
  "email": "laurent@bassin.info"
2406
  },
2407
+ {
2408
+ "name": "Trevor Rowbotham",
2409
+ "email": "trevor.rowbotham@pm.me"
2410
+ },
2411
  {
2412
  "name": "Symfony Community",
2413
  "homepage": "https://symfony.com/contributors"
2423
  "portable",
2424
  "shim"
2425
  ],
2426
+ "support": {
2427
+ "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.26.0"
2428
+ },
2429
+ "funding": [
2430
+ {
2431
+ "url": "https://symfony.com/sponsor",
2432
+ "type": "custom"
2433
+ },
2434
+ {
2435
+ "url": "https://github.com/fabpot",
2436
+ "type": "github"
2437
+ },
2438
+ {
2439
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2440
+ "type": "tidelift"
2441
+ }
2442
+ ],
2443
+ "time": "2022-05-24T11:49:31+00:00"
2444
  },
2445
  {
2446
+ "name": "symfony/polyfill-intl-normalizer",
2447
+ "version": "v1.26.0",
2448
  "source": {
2449
  "type": "git",
2450
+ "url": "https://github.com/symfony/polyfill-intl-normalizer.git",
2451
+ "reference": "219aa369ceff116e673852dce47c3a41794c14bd"
2452
  },
2453
  "dist": {
2454
  "type": "zip",
2455
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/219aa369ceff116e673852dce47c3a41794c14bd",
2456
+ "reference": "219aa369ceff116e673852dce47c3a41794c14bd",
2457
  "shasum": ""
2458
  },
2459
  "require": {
2460
+ "php": ">=7.1"
2461
  },
2462
  "suggest": {
2463
+ "ext-intl": "For best performance"
2464
  },
2465
  "type": "library",
2466
  "extra": {
2467
  "branch-alias": {
2468
+ "dev-main": "1.26-dev"
2469
+ },
2470
+ "thanks": {
2471
+ "name": "symfony/polyfill",
2472
+ "url": "https://github.com/symfony/polyfill"
2473
  }
2474
  },
2475
  "autoload": {
 
 
 
2476
  "files": [
2477
  "bootstrap.php"
2478
+ ],
2479
+ "psr-4": {
2480
+ "Symfony\\Polyfill\\Intl\\Normalizer\\": ""
2481
+ },
2482
+ "classmap": [
2483
+ "Resources/stubs"
2484
  ]
2485
  },
2486
  "notification-url": "https://packagist.org/downloads/",
2497
  "homepage": "https://symfony.com/contributors"
2498
  }
2499
  ],
2500
+ "description": "Symfony polyfill for intl's Normalizer class and related functions",
2501
  "homepage": "https://symfony.com",
2502
  "keywords": [
2503
  "compatibility",
2504
+ "intl",
2505
+ "normalizer",
2506
  "polyfill",
2507
  "portable",
2508
  "shim"
2509
  ],
2510
+ "support": {
2511
+ "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.26.0"
2512
+ },
2513
+ "funding": [
2514
+ {
2515
+ "url": "https://symfony.com/sponsor",
2516
+ "type": "custom"
2517
+ },
2518
+ {
2519
+ "url": "https://github.com/fabpot",
2520
+ "type": "github"
2521
+ },
2522
+ {
2523
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2524
+ "type": "tidelift"
2525
+ }
2526
+ ],
2527
+ "time": "2022-05-24T11:49:31+00:00"
2528
  },
2529
  {
2530
+ "name": "symfony/polyfill-mbstring",
2531
+ "version": "v1.26.0",
2532
  "source": {
2533
  "type": "git",
2534
+ "url": "https://github.com/symfony/polyfill-mbstring.git",
2535
+ "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e"
2536
  },
2537
  "dist": {
2538
  "type": "zip",
2539
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e",
2540
+ "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e",
2541
  "shasum": ""
2542
  },
2543
  "require": {
2544
+ "php": ">=7.1"
2545
+ },
2546
+ "provide": {
2547
+ "ext-mbstring": "*"
2548
+ },
2549
+ "suggest": {
2550
+ "ext-mbstring": "For best performance"
2551
  },
2552
  "type": "library",
2553
  "extra": {
2554
  "branch-alias": {
2555
+ "dev-main": "1.26-dev"
2556
+ },
2557
+ "thanks": {
2558
+ "name": "symfony/polyfill",
2559
+ "url": "https://github.com/symfony/polyfill"
2560
  }
2561
  },
2562
  "autoload": {
 
 
 
2563
  "files": [
2564
  "bootstrap.php"
2565
+ ],
2566
+ "psr-4": {
2567
+ "Symfony\\Polyfill\\Mbstring\\": ""
2568
+ }
2569
  },
2570
  "notification-url": "https://packagist.org/downloads/",
2571
  "license": [
2581
  "homepage": "https://symfony.com/contributors"
2582
  }
2583
  ],
2584
+ "description": "Symfony polyfill for the Mbstring extension",
2585
  "homepage": "https://symfony.com",
2586
  "keywords": [
2587
  "compatibility",
2588
+ "mbstring",
2589
  "polyfill",
2590
  "portable",
2591
  "shim"
2592
  ],
2593
+ "support": {
2594
+ "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.26.0"
2595
+ },
2596
+ "funding": [
2597
+ {
2598
+ "url": "https://symfony.com/sponsor",
2599
+ "type": "custom"
2600
+ },
2601
+ {
2602
+ "url": "https://github.com/fabpot",
2603
+ "type": "github"
2604
+ },
2605
+ {
2606
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2607
+ "type": "tidelift"
2608
+ }
2609
+ ],
2610
+ "time": "2022-05-24T11:49:31+00:00"
2611
  },
2612
  {
2613
+ "name": "symfony/polyfill-php72",
2614
+ "version": "v1.26.0",
2615
  "source": {
2616
  "type": "git",
2617
+ "url": "https://github.com/symfony/polyfill-php72.git",
2618
+ "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2"
2619
  },
2620
  "dist": {
2621
  "type": "zip",
2622
+ "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/bf44a9fd41feaac72b074de600314a93e2ae78e2",
2623
+ "reference": "bf44a9fd41feaac72b074de600314a93e2ae78e2",
2624
  "shasum": ""
2625
  },
2626
  "require": {
2627
+ "php": ">=7.1"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2628
  },
2629
  "type": "library",
2630
  "extra": {
2631
  "branch-alias": {
2632
+ "dev-main": "1.26-dev"
2633
+ },
2634
+ "thanks": {
2635
+ "name": "symfony/polyfill",
2636
+ "url": "https://github.com/symfony/polyfill"
2637
  }
2638
  },
2639
  "autoload": {
2640
+ "files": [
2641
+ "bootstrap.php"
2642
+ ],
2643
  "psr-4": {
2644
+ "Symfony\\Polyfill\\Php72\\": ""
2645
+ }
 
 
 
2646
  },
2647
  "notification-url": "https://packagist.org/downloads/",
2648
  "license": [
2650
  ],
2651
  "authors": [
2652
  {
2653
+ "name": "Nicolas Grekas",
2654
+ "email": "p@tchwork.com"
2655
  },
2656
  {
2657
  "name": "Symfony Community",
2658
  "homepage": "https://symfony.com/contributors"
2659
  }
2660
  ],
2661
+ "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions",
2662
  "homepage": "https://symfony.com",
2663
+ "keywords": [
2664
+ "compatibility",
2665
+ "polyfill",
2666
+ "portable",
2667
+ "shim"
2668
+ ],
2669
+ "support": {
2670
+ "source": "https://github.com/symfony/polyfill-php72/tree/v1.26.0"
2671
+ },
2672
+ "funding": [
2673
+ {
2674
+ "url": "https://symfony.com/sponsor",
2675
+ "type": "custom"
2676
+ },
2677
+ {
2678
+ "url": "https://github.com/fabpot",
2679
+ "type": "github"
2680
+ },
2681
+ {
2682
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2683
+ "type": "tidelift"
2684
+ }
2685
+ ],
2686
+ "time": "2022-05-24T11:49:31+00:00"
2687
  },
2688
  {
2689
+ "name": "symfony/polyfill-php80",
2690
+ "version": "v1.26.0",
2691
  "source": {
2692
  "type": "git",
2693
+ "url": "https://github.com/symfony/polyfill-php80.git",
2694
+ "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace"
2695
  },
2696
  "dist": {
2697
  "type": "zip",
2698
+ "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/cfa0ae98841b9e461207c13ab093d76b0fa7bace",
2699
+ "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace",
2700
  "shasum": ""
2701
  },
2702
  "require": {
2703
+ "php": ">=7.1"
 
 
 
2704
  },
2705
  "type": "library",
2706
  "extra": {
2707
  "branch-alias": {
2708
+ "dev-main": "1.26-dev"
2709
+ },
2710
+ "thanks": {
2711
+ "name": "symfony/polyfill",
2712
+ "url": "https://github.com/symfony/polyfill"
2713
  }
2714
  },
2715
  "autoload": {
2716
+ "files": [
2717
+ "bootstrap.php"
2718
+ ],
2719
  "psr-4": {
2720
+ "Symfony\\Polyfill\\Php80\\": ""
2721
+ },
2722
+ "classmap": [
2723
+ "Resources/stubs"
2724
+ ]
2725
  },
2726
  "notification-url": "https://packagist.org/downloads/",
2727
  "license": [
2728
  "MIT"
2729
  ],
2730
  "authors": [
2731
+ {
2732
+ "name": "Ion Bazan",
2733
+ "email": "ion.bazan@gmail.com"
2734
+ },
2735
  {
2736
  "name": "Nicolas Grekas",
2737
  "email": "p@tchwork.com"
2741
  "homepage": "https://symfony.com/contributors"
2742
  }
2743
  ],
2744
+ "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
2745
  "homepage": "https://symfony.com",
2746
  "keywords": [
2747
+ "compatibility",
2748
+ "polyfill",
2749
+ "portable",
2750
+ "shim"
2751
+ ],
2752
+ "support": {
2753
+ "source": "https://github.com/symfony/polyfill-php80/tree/v1.26.0"
2754
+ },
2755
+ "funding": [
2756
+ {
2757
+ "url": "https://symfony.com/sponsor",
2758
+ "type": "custom"
2759
+ },
2760
+ {
2761
+ "url": "https://github.com/fabpot",
2762
+ "type": "github"
2763
+ },
2764
+ {
2765
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2766
+ "type": "tidelift"
2767
+ }
2768
  ],
2769
+ "time": "2022-05-10T07:21:04+00:00"
2770
  },
2771
  {
2772
+ "name": "symfony/translation",
2773
+ "version": "v5.4.9",
2774
  "source": {
2775
  "type": "git",
2776
+ "url": "https://github.com/symfony/translation.git",
2777
+ "reference": "1639abc1177d26bcd4320e535e664cef067ab0ca"
2778
  },
2779
  "dist": {
2780
  "type": "zip",
2781
+ "url": "https://api.github.com/repos/symfony/translation/zipball/1639abc1177d26bcd4320e535e664cef067ab0ca",
2782
+ "reference": "1639abc1177d26bcd4320e535e664cef067ab0ca",
2783
  "shasum": ""
2784
  },
2785
  "require": {
2786
+ "php": ">=7.2.5",
2787
+ "symfony/deprecation-contracts": "^2.1|^3",
2788
+ "symfony/polyfill-mbstring": "~1.0",
2789
+ "symfony/polyfill-php80": "^1.16",
2790
+ "symfony/translation-contracts": "^2.3"
2791
+ },
2792
+ "conflict": {
2793
+ "symfony/config": "<4.4",
2794
+ "symfony/console": "<5.3",
2795
+ "symfony/dependency-injection": "<5.0",
2796
+ "symfony/http-kernel": "<5.0",
2797
+ "symfony/twig-bundle": "<5.0",
2798
+ "symfony/yaml": "<4.4"
2799
+ },
2800
+ "provide": {
2801
+ "symfony/translation-implementation": "2.3"
2802
+ },
2803
+ "require-dev": {
2804
+ "psr/log": "^1|^2|^3",
2805
+ "symfony/config": "^4.4|^5.0|^6.0",
2806
+ "symfony/console": "^5.4|^6.0",
2807
+ "symfony/dependency-injection": "^5.0|^6.0",
2808
+ "symfony/finder": "^4.4|^5.0|^6.0",
2809
+ "symfony/http-client-contracts": "^1.1|^2.0|^3.0",
2810
+ "symfony/http-kernel": "^5.0|^6.0",
2811
+ "symfony/intl": "^4.4|^5.0|^6.0",
2812
+ "symfony/polyfill-intl-icu": "^1.21",
2813
+ "symfony/service-contracts": "^1.1.2|^2|^3",
2814
+ "symfony/yaml": "^4.4|^5.0|^6.0"
2815
+ },
2816
+ "suggest": {
2817
+ "psr/log-implementation": "To use logging capability in translator",
2818
+ "symfony/config": "",
2819
+ "symfony/yaml": ""
2820
+ },
2821
+ "type": "library",
2822
+ "autoload": {
2823
+ "files": [
2824
+ "Resources/functions.php"
2825
+ ],
2826
+ "psr-4": {
2827
+ "Symfony\\Component\\Translation\\": ""
2828
+ },
2829
+ "exclude-from-classmap": [
2830
+ "/Tests/"
2831
+ ]
2832
+ },
2833
+ "notification-url": "https://packagist.org/downloads/",
2834
+ "license": [
2835
+ "MIT"
2836
+ ],
2837
+ "authors": [
2838
+ {
2839
+ "name": "Fabien Potencier",
2840
+ "email": "fabien@symfony.com"
2841
+ },
2842
+ {
2843
+ "name": "Symfony Community",
2844
+ "homepage": "https://symfony.com/contributors"
2845
+ }
2846
+ ],
2847
+ "description": "Provides tools to internationalize your application",
2848
+ "homepage": "https://symfony.com",
2849
+ "support": {
2850
+ "source": "https://github.com/symfony/translation/tree/v5.4.9"
2851
+ },
2852
+ "funding": [
2853
+ {
2854
+ "url": "https://symfony.com/sponsor",
2855
+ "type": "custom"
2856
+ },
2857
+ {
2858
+ "url": "https://github.com/fabpot",
2859
+ "type": "github"
2860
+ },
2861
+ {
2862
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2863
+ "type": "tidelift"
2864
+ }
2865
+ ],
2866
+ "time": "2022-05-06T12:33:37+00:00"
2867
+ },
2868
+ {
2869
+ "name": "symfony/translation-contracts",
2870
+ "version": "v2.5.1",
2871
+ "source": {
2872
+ "type": "git",
2873
+ "url": "https://github.com/symfony/translation-contracts.git",
2874
+ "reference": "1211df0afa701e45a04253110e959d4af4ef0f07"
2875
+ },
2876
+ "dist": {
2877
+ "type": "zip",
2878
+ "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/1211df0afa701e45a04253110e959d4af4ef0f07",
2879
+ "reference": "1211df0afa701e45a04253110e959d4af4ef0f07",
2880
+ "shasum": ""
2881
+ },
2882
+ "require": {
2883
+ "php": ">=7.2.5"
2884
+ },
2885
+ "suggest": {
2886
+ "symfony/translation-implementation": ""
2887
+ },
2888
+ "type": "library",
2889
+ "extra": {
2890
+ "branch-alias": {
2891
+ "dev-main": "2.5-dev"
2892
+ },
2893
+ "thanks": {
2894
+ "name": "symfony/contracts",
2895
+ "url": "https://github.com/symfony/contracts"
2896
+ }
2897
+ },
2898
+ "autoload": {
2899
+ "psr-4": {
2900
+ "Symfony\\Contracts\\Translation\\": ""
2901
+ }
2902
+ },
2903
+ "notification-url": "https://packagist.org/downloads/",
2904
+ "license": [
2905
+ "MIT"
2906
+ ],
2907
+ "authors": [
2908
+ {
2909
+ "name": "Nicolas Grekas",
2910
+ "email": "p@tchwork.com"
2911
+ },
2912
+ {
2913
+ "name": "Symfony Community",
2914
+ "homepage": "https://symfony.com/contributors"
2915
+ }
2916
+ ],
2917
+ "description": "Generic abstractions related to translation",
2918
+ "homepage": "https://symfony.com",
2919
+ "keywords": [
2920
+ "abstractions",
2921
+ "contracts",
2922
+ "decoupling",
2923
+ "interfaces",
2924
+ "interoperability",
2925
+ "standards"
2926
+ ],
2927
+ "support": {
2928
+ "source": "https://github.com/symfony/translation-contracts/tree/v2.5.1"
2929
+ },
2930
+ "funding": [
2931
+ {
2932
+ "url": "https://symfony.com/sponsor",
2933
+ "type": "custom"
2934
+ },
2935
+ {
2936
+ "url": "https://github.com/fabpot",
2937
+ "type": "github"
2938
+ },
2939
+ {
2940
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
2941
+ "type": "tidelift"
2942
+ }
2943
+ ],
2944
+ "time": "2022-01-02T09:53:40+00:00"
2945
+ },
2946
+ {
2947
+ "name": "vakata/jstree",
2948
+ "version": "3.3.12",
2949
+ "source": {
2950
+ "type": "git",
2951
+ "url": "https://github.com/vakata/jstree.git",
2952
+ "reference": "7a03954015eaea2467956dc05e6be78f4d1a1ff0"
2953
+ },
2954
+ "dist": {
2955
+ "type": "zip",
2956
+ "url": "https://api.github.com/repos/vakata/jstree/zipball/7a03954015eaea2467956dc05e6be78f4d1a1ff0",
2957
+ "reference": "7a03954015eaea2467956dc05e6be78f4d1a1ff0",
2958
+ "shasum": ""
2959
+ },
2960
+ "require": {
2961
+ "components/jquery": ">=1.9.1"
2962
  },
2963
  "suggest": {
2964
  "robloach/component-installer": "Allows installation of Components via Composer"
2998
  ],
2999
  "description": "jsTree is jquery plugin, that provides interactive trees.",
3000
  "homepage": "http://jstree.com",
3001
+ "support": {
3002
+ "forum": "https://groups.google.com/forum/#!forum/jstree",
3003
+ "issues": "https://github.com/vakata/jstree/issues",
3004
+ "source": "https://github.com/vakata/jstree"
3005
+ },
3006
+ "funding": [
3007
+ {
3008
+ "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=paypal@vakata.com&currency_code=USD&amount=&return=http://jstree.com/donation&item_name=Buy+me+a+coffee+for+jsTree",
3009
+ "type": "custom"
3010
+ },
3011
+ {
3012
+ "url": "https://github.com/vakata",
3013
+ "type": "github"
3014
+ }
3015
+ ],
3016
+ "time": "2021-09-03T12:55:53+00:00"
3017
  },
3018
  {
3019
  "name": "watchfulli/xcloner-core",
3020
+ "version": "v2.1.x-dev",
3021
  "source": {
3022
  "type": "git",
3023
  "url": "https://github.com/watchfulli/xcloner-core.git",
3024
+ "reference": "d0e0c4c89b5247f85de969de09bd14e2756903e0"
3025
  },
3026
  "dist": {
3027
  "type": "zip",
3028
+ "url": "https://api.github.com/repos/watchfulli/xcloner-core/zipball/d0e0c4c89b5247f85de969de09bd14e2756903e0",
3029
+ "reference": "d0e0c4c89b5247f85de969de09bd14e2756903e0",
3030
  "shasum": ""
3031
  },
3032
  "require": {
3033
+ "ext-json": "*",
3034
  "league/flysystem": "^1.0",
3035
  "league/flysystem-aws-s3-v3": "^1.0",
3036
  "league/flysystem-azure-blob-storage": "^0.1.6",
3038
  "league/flysystem-webdav": "^1.0",
3039
  "mhetreramesh/flysystem-backblaze": "^1.0",
3040
  "monolog/monolog": "^1.22",
3041
+ "php": ">=7.2.5",
3042
  "splitbrain/php-archive": "^1.0",
3043
+ "srmklive/flysystem-dropbox-v2": "1.0.7"
3044
  },
3045
  "type": "package",
3046
  "autoload": {
3047
  "psr-4": {
3048
+ "Watchfulli\\XClonerCore\\": "src/",
3049
  "watchfulli\\XClonerCore\\": "src/"
3050
  }
3051
  },
3055
  ],
3056
  "authors": [
3057
  {
3058
+ "name": "Watchful.net",
3059
+ "email": "hello@watchful.net"
3060
  }
3061
  ],
3062
  "description": "XCloner Core Library for Backup and Restore",
3063
+ "support": {
3064
+ "issues": "https://github.com/watchfulli/xcloner-core/issues",
3065
+ "source": "https://github.com/watchfulli/xcloner-core/tree/v2.1"
3066
+ },
3067
+ "time": "2022-06-07T14:11:28+00:00"
3068
+ }
3069
+ ],
3070
+ "packages-dev": [
3071
+ {
3072
+ "name": "dealerdirect/phpcodesniffer-composer-installer",
3073
+ "version": "v0.7.2",
3074
+ "source": {
3075
+ "type": "git",
3076
+ "url": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer.git",
3077
+ "reference": "1c968e542d8843d7cd71de3c5c9c3ff3ad71a1db"
3078
+ },
3079
+ "dist": {
3080
+ "type": "zip",
3081
+ "url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/1c968e542d8843d7cd71de3c5c9c3ff3ad71a1db",
3082
+ "reference": "1c968e542d8843d7cd71de3c5c9c3ff3ad71a1db",
3083
+ "shasum": ""
3084
+ },
3085
+ "require": {
3086
+ "composer-plugin-api": "^1.0 || ^2.0",
3087
+ "php": ">=5.3",
3088
+ "squizlabs/php_codesniffer": "^2.0 || ^3.1.0 || ^4.0"
3089
+ },
3090
+ "require-dev": {
3091
+ "composer/composer": "*",
3092
+ "php-parallel-lint/php-parallel-lint": "^1.3.1",
3093
+ "phpcompatibility/php-compatibility": "^9.0"
3094
+ },
3095
+ "type": "composer-plugin",
3096
+ "extra": {
3097
+ "class": "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin"
3098
+ },
3099
+ "autoload": {
3100
+ "psr-4": {
3101
+ "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\": "src/"
3102
+ }
3103
+ },
3104
+ "notification-url": "https://packagist.org/downloads/",
3105
+ "license": [
3106
+ "MIT"
3107
+ ],
3108
+ "authors": [
3109
+ {
3110
+ "name": "Franck Nijhof",
3111
+ "email": "franck.nijhof@dealerdirect.com",
3112
+ "homepage": "http://www.frenck.nl",
3113
+ "role": "Developer / IT Manager"
3114
+ },
3115
+ {
3116
+ "name": "Contributors",
3117
+ "homepage": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer/graphs/contributors"
3118
+ }
3119
+ ],
3120
+ "description": "PHP_CodeSniffer Standards Composer Installer Plugin",
3121
+ "homepage": "http://www.dealerdirect.com",
3122
+ "keywords": [
3123
+ "PHPCodeSniffer",
3124
+ "PHP_CodeSniffer",
3125
+ "code quality",
3126
+ "codesniffer",
3127
+ "composer",
3128
+ "installer",
3129
+ "phpcbf",
3130
+ "phpcs",
3131
+ "plugin",
3132
+ "qa",
3133
+ "quality",
3134
+ "standard",
3135
+ "standards",
3136
+ "style guide",
3137
+ "stylecheck",
3138
+ "tests"
3139
+ ],
3140
+ "support": {
3141
+ "issues": "https://github.com/dealerdirect/phpcodesniffer-composer-installer/issues",
3142
+ "source": "https://github.com/dealerdirect/phpcodesniffer-composer-installer"
3143
+ },
3144
+ "time": "2022-02-04T12:51:07+00:00"
3145
+ },
3146
+ {
3147
+ "name": "doctrine/instantiator",
3148
+ "version": "1.4.1",
3149
+ "source": {
3150
+ "type": "git",
3151
+ "url": "https://github.com/doctrine/instantiator.git",
3152
+ "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc"
3153
+ },
3154
+ "dist": {
3155
+ "type": "zip",
3156
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc",
3157
+ "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc",
3158
+ "shasum": ""
3159
+ },
3160
+ "require": {
3161
+ "php": "^7.1 || ^8.0"
3162
+ },
3163
+ "require-dev": {
3164
+ "doctrine/coding-standard": "^9",
3165
+ "ext-pdo": "*",
3166
+ "ext-phar": "*",
3167
+ "phpbench/phpbench": "^0.16 || ^1",
3168
+ "phpstan/phpstan": "^1.4",
3169
+ "phpstan/phpstan-phpunit": "^1",
3170
+ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
3171
+ "vimeo/psalm": "^4.22"
3172
+ },
3173
+ "type": "library",
3174
+ "autoload": {
3175
+ "psr-4": {
3176
+ "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
3177
+ }
3178
+ },
3179
+ "notification-url": "https://packagist.org/downloads/",
3180
+ "license": [
3181
+ "MIT"
3182
+ ],
3183
+ "authors": [
3184
+ {
3185
+ "name": "Marco Pivetta",
3186
+ "email": "ocramius@gmail.com",
3187
+ "homepage": "https://ocramius.github.io/"
3188
+ }
3189
+ ],
3190
+ "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
3191
+ "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
3192
+ "keywords": [
3193
+ "constructor",
3194
+ "instantiate"
3195
+ ],
3196
+ "support": {
3197
+ "issues": "https://github.com/doctrine/instantiator/issues",
3198
+ "source": "https://github.com/doctrine/instantiator/tree/1.4.1"
3199
+ },
3200
+ "funding": [
3201
+ {
3202
+ "url": "https://www.doctrine-project.org/sponsorship.html",
3203
+ "type": "custom"
3204
+ },
3205
+ {
3206
+ "url": "https://www.patreon.com/phpdoctrine",
3207
+ "type": "patreon"
3208
+ },
3209
+ {
3210
+ "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator",
3211
+ "type": "tidelift"
3212
+ }
3213
+ ],
3214
+ "time": "2022-03-03T08:28:38+00:00"
3215
+ },
3216
+ {
3217
+ "name": "myclabs/deep-copy",
3218
+ "version": "1.11.0",
3219
+ "source": {
3220
+ "type": "git",
3221
+ "url": "https://github.com/myclabs/DeepCopy.git",
3222
+ "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614"
3223
+ },
3224
+ "dist": {
3225
+ "type": "zip",
3226
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614",
3227
+ "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614",
3228
+ "shasum": ""
3229
+ },
3230
+ "require": {
3231
+ "php": "^7.1 || ^8.0"
3232
+ },
3233
+ "conflict": {
3234
+ "doctrine/collections": "<1.6.8",
3235
+ "doctrine/common": "<2.13.3 || >=3,<3.2.2"
3236
+ },
3237
+ "require-dev": {
3238
+ "doctrine/collections": "^1.6.8",
3239
+ "doctrine/common": "^2.13.3 || ^3.2.2",
3240
+ "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13"
3241
+ },
3242
+ "type": "library",
3243
+ "autoload": {
3244
+ "files": [
3245
+ "src/DeepCopy/deep_copy.php"
3246
+ ],
3247
+ "psr-4": {
3248
+ "DeepCopy\\": "src/DeepCopy/"
3249
+ }
3250
+ },
3251
+ "notification-url": "https://packagist.org/downloads/",
3252
+ "license": [
3253
+ "MIT"
3254
+ ],
3255
+ "description": "Create deep copies (clones) of your objects",
3256
+ "keywords": [
3257
+ "clone",
3258
+ "copy",
3259
+ "duplicate",
3260
+ "object",
3261
+ "object graph"
3262
+ ],
3263
+ "support": {
3264
+ "issues": "https://github.com/myclabs/DeepCopy/issues",
3265
+ "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0"
3266
+ },
3267
+ "funding": [
3268
+ {
3269
+ "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy",
3270
+ "type": "tidelift"
3271
+ }
3272
+ ],
3273
+ "time": "2022-03-03T13:19:32+00:00"
3274
+ },
3275
+ {
3276
+ "name": "phar-io/manifest",
3277
+ "version": "1.0.3",
3278
+ "source": {
3279
+ "type": "git",
3280
+ "url": "https://github.com/phar-io/manifest.git",
3281
+ "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
3282
+ },
3283
+ "dist": {
3284
+ "type": "zip",
3285
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
3286
+ "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
3287
+ "shasum": ""
3288
+ },
3289
+ "require": {
3290
+ "ext-dom": "*",
3291
+ "ext-phar": "*",
3292
+ "phar-io/version": "^2.0",
3293
+ "php": "^5.6 || ^7.0"
3294
+ },
3295
+ "type": "library",
3296
+ "extra": {
3297
+ "branch-alias": {
3298
+ "dev-master": "1.0.x-dev"
3299
+ }
3300
+ },
3301
+ "autoload": {
3302
+ "classmap": [
3303
+ "src/"
3304
+ ]
3305
+ },
3306
+ "notification-url": "https://packagist.org/downloads/",
3307
+ "license": [
3308
+ "BSD-3-Clause"
3309
+ ],
3310
+ "authors": [
3311
+ {
3312
+ "name": "Arne Blankerts",
3313
+ "email": "arne@blankerts.de",
3314
+ "role": "Developer"
3315
+ },
3316
+ {
3317
+ "name": "Sebastian Heuer",
3318
+ "email": "sebastian@phpeople.de",
3319
+ "role": "Developer"
3320
+ },
3321
+ {
3322
+ "name": "Sebastian Bergmann",
3323
+ "email": "sebastian@phpunit.de",
3324
+ "role": "Developer"
3325
+ }
3326
+ ],
3327
+ "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
3328
+ "support": {
3329
+ "issues": "https://github.com/phar-io/manifest/issues",
3330
+ "source": "https://github.com/phar-io/manifest/tree/master"
3331
+ },
3332
+ "time": "2018-07-08T19:23:20+00:00"
3333
+ },
3334
+ {
3335
+ "name": "phar-io/version",
3336
+ "version": "2.0.1",
3337
+ "source": {
3338
+ "type": "git",
3339
+ "url": "https://github.com/phar-io/version.git",
3340
+ "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
3341
+ },
3342
+ "dist": {
3343
+ "type": "zip",
3344
+ "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
3345
+ "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
3346
+ "shasum": ""
3347
+ },
3348
+ "require": {
3349
+ "php": "^5.6 || ^7.0"
3350
+ },
3351
+ "type": "library",
3352
+ "autoload": {
3353
+ "classmap": [
3354
+ "src/"
3355
+ ]
3356
+ },
3357
+ "notification-url": "https://packagist.org/downloads/",
3358
+ "license": [
3359
+ "BSD-3-Clause"
3360
+ ],
3361
+ "authors": [
3362
+ {
3363
+ "name": "Arne Blankerts",
3364
+ "email": "arne@blankerts.de",
3365
+ "role": "Developer"
3366
+ },
3367
+ {
3368
+ "name": "Sebastian Heuer",
3369
+ "email": "sebastian@phpeople.de",
3370
+ "role": "Developer"
3371
+ },
3372
+ {
3373
+ "name": "Sebastian Bergmann",
3374
+ "email": "sebastian@phpunit.de",
3375
+ "role": "Developer"
3376
+ }
3377
+ ],
3378
+ "description": "Library for handling version information and constraints",
3379
+ "support": {
3380
+ "issues": "https://github.com/phar-io/version/issues",
3381
+ "source": "https://github.com/phar-io/version/tree/master"
3382
+ },
3383
+ "time": "2018-07-08T19:19:57+00:00"
3384
+ },
3385
+ {
3386
+ "name": "php-stubs/wordpress-stubs",
3387
+ "version": "v5.9.3",
3388
+ "source": {
3389
+ "type": "git",
3390
+ "url": "https://github.com/php-stubs/wordpress-stubs.git",
3391
+ "reference": "18d56875e5078a50b8ea4bc4b20b735ca61edeee"
3392
+ },
3393
+ "dist": {
3394
+ "type": "zip",
3395
+ "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/18d56875e5078a50b8ea4bc4b20b735ca61edeee",
3396
+ "reference": "18d56875e5078a50b8ea4bc4b20b735ca61edeee",
3397
+ "shasum": ""
3398
+ },
3399
+ "replace": {
3400
+ "giacocorsiglia/wordpress-stubs": "*"
3401
+ },
3402
+ "require-dev": {
3403
+ "nikic/php-parser": "< 4.12.0",
3404
+ "php": "~7.3 || ~8.0",
3405
+ "php-stubs/generator": "^0.8.1",
3406
+ "phpdocumentor/reflection-docblock": "^5.3",
3407
+ "phpstan/phpstan": "^1.2"
3408
+ },
3409
+ "suggest": {
3410
+ "paragonie/sodium_compat": "Pure PHP implementation of libsodium",
3411
+ "symfony/polyfill-php73": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions",
3412
+ "szepeviktor/phpstan-wordpress": "WordPress extensions for PHPStan"
3413
+ },
3414
+ "type": "library",
3415
+ "notification-url": "https://packagist.org/downloads/",
3416
+ "license": [
3417
+ "MIT"
3418
+ ],
3419
+ "description": "WordPress function and class declaration stubs for static analysis.",
3420
+ "homepage": "https://github.com/php-stubs/wordpress-stubs",
3421
+ "keywords": [
3422
+ "PHPStan",
3423
+ "static analysis",
3424
+ "wordpress"
3425
+ ],
3426
+ "support": {
3427
+ "issues": "https://github.com/php-stubs/wordpress-stubs/issues",
3428
+ "source": "https://github.com/php-stubs/wordpress-stubs/tree/v5.9.3"
3429
+ },
3430
+ "time": "2022-04-06T15:33:59+00:00"
3431
+ },
3432
+ {
3433
+ "name": "phpcompatibility/php-compatibility",
3434
+ "version": "9.3.5",
3435
+ "source": {
3436
+ "type": "git",
3437
+ "url": "https://github.com/PHPCompatibility/PHPCompatibility.git",
3438
+ "reference": "9fb324479acf6f39452e0655d2429cc0d3914243"
3439
+ },
3440
+ "dist": {
3441
+ "type": "zip",
3442
+ "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/9fb324479acf6f39452e0655d2429cc0d3914243",
3443
+ "reference": "9fb324479acf6f39452e0655d2429cc0d3914243",
3444
+ "shasum": ""
3445
+ },
3446
+ "require": {
3447
+ "php": ">=5.3",
3448
+ "squizlabs/php_codesniffer": "^2.3 || ^3.0.2"
3449
+ },
3450
+ "conflict": {
3451
+ "squizlabs/php_codesniffer": "2.6.2"
3452
+ },
3453
+ "require-dev": {
3454
+ "phpunit/phpunit": "~4.5 || ^5.0 || ^6.0 || ^7.0"
3455
+ },
3456
+ "suggest": {
3457
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically.",
3458
+ "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
3459
+ },
3460
+ "type": "phpcodesniffer-standard",
3461
+ "notification-url": "https://packagist.org/downloads/",
3462
+ "license": [
3463
+ "LGPL-3.0-or-later"
3464
+ ],
3465
+ "authors": [
3466
+ {
3467
+ "name": "Wim Godden",
3468
+ "homepage": "https://github.com/wimg",
3469
+ "role": "lead"
3470
+ },
3471
+ {
3472
+ "name": "Juliette Reinders Folmer",
3473
+ "homepage": "https://github.com/jrfnl",
3474
+ "role": "lead"
3475
+ },
3476
+ {
3477
+ "name": "Contributors",
3478
+ "homepage": "https://github.com/PHPCompatibility/PHPCompatibility/graphs/contributors"
3479
+ }
3480
+ ],
3481
+ "description": "A set of sniffs for PHP_CodeSniffer that checks for PHP cross-version compatibility.",
3482
+ "homepage": "http://techblog.wimgodden.be/tag/codesniffer/",
3483
+ "keywords": [
3484
+ "compatibility",
3485
+ "phpcs",
3486
+ "standards"
3487
+ ],
3488
+ "support": {
3489
+ "issues": "https://github.com/PHPCompatibility/PHPCompatibility/issues",
3490
+ "source": "https://github.com/PHPCompatibility/PHPCompatibility"
3491
+ },
3492
+ "time": "2019-12-27T09:44:58+00:00"
3493
+ },
3494
+ {
3495
+ "name": "phpcompatibility/phpcompatibility-paragonie",
3496
+ "version": "1.3.1",
3497
+ "source": {
3498
+ "type": "git",
3499
+ "url": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie.git",
3500
+ "reference": "ddabec839cc003651f2ce695c938686d1086cf43"
3501
+ },
3502
+ "dist": {
3503
+ "type": "zip",
3504
+ "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/ddabec839cc003651f2ce695c938686d1086cf43",
3505
+ "reference": "ddabec839cc003651f2ce695c938686d1086cf43",
3506
+ "shasum": ""
3507
+ },
3508
+ "require": {
3509
+ "phpcompatibility/php-compatibility": "^9.0"
3510
+ },
3511
+ "require-dev": {
3512
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7",
3513
+ "paragonie/random_compat": "dev-master",
3514
+ "paragonie/sodium_compat": "dev-master"
3515
+ },
3516
+ "suggest": {
3517
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.",
3518
+ "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
3519
+ },
3520
+ "type": "phpcodesniffer-standard",
3521
+ "notification-url": "https://packagist.org/downloads/",
3522
+ "license": [
3523
+ "LGPL-3.0-or-later"
3524
+ ],
3525
+ "authors": [
3526
+ {
3527
+ "name": "Wim Godden",
3528
+ "role": "lead"
3529
+ },
3530
+ {
3531
+ "name": "Juliette Reinders Folmer",
3532
+ "role": "lead"
3533
+ }
3534
+ ],
3535
+ "description": "A set of rulesets for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by the Paragonie polyfill libraries.",
3536
+ "homepage": "http://phpcompatibility.com/",
3537
+ "keywords": [
3538
+ "compatibility",
3539
+ "paragonie",
3540
+ "phpcs",
3541
+ "polyfill",
3542
+ "standards"
3543
+ ],
3544
+ "support": {
3545
+ "issues": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie/issues",
3546
+ "source": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie"
3547
+ },
3548
+ "time": "2021-02-15T10:24:51+00:00"
3549
+ },
3550
+ {
3551
+ "name": "phpcompatibility/phpcompatibility-wp",
3552
+ "version": "2.1.3",
3553
+ "source": {
3554
+ "type": "git",
3555
+ "url": "https://github.com/PHPCompatibility/PHPCompatibilityWP.git",
3556
+ "reference": "d55de55f88697b9cdb94bccf04f14eb3b11cf308"
3557
+ },
3558
+ "dist": {
3559
+ "type": "zip",
3560
+ "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/d55de55f88697b9cdb94bccf04f14eb3b11cf308",
3561
+ "reference": "d55de55f88697b9cdb94bccf04f14eb3b11cf308",
3562
+ "shasum": ""
3563
+ },
3564
+ "require": {
3565
+ "phpcompatibility/php-compatibility": "^9.0",
3566
+ "phpcompatibility/phpcompatibility-paragonie": "^1.0"
3567
+ },
3568
+ "require-dev": {
3569
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7"
3570
+ },
3571
+ "suggest": {
3572
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.",
3573
+ "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues."
3574
+ },
3575
+ "type": "phpcodesniffer-standard",
3576
+ "notification-url": "https://packagist.org/downloads/",
3577
+ "license": [
3578
+ "LGPL-3.0-or-later"
3579
+ ],
3580
+ "authors": [
3581
+ {
3582
+ "name": "Wim Godden",
3583
+ "role": "lead"
3584
+ },
3585
+ {
3586
+ "name": "Juliette Reinders Folmer",
3587
+ "role": "lead"
3588
+ }
3589
+ ],
3590
+ "description": "A ruleset for PHP_CodeSniffer to check for PHP cross-version compatibility issues in projects, while accounting for polyfills provided by WordPress.",
3591
+ "homepage": "http://phpcompatibility.com/",
3592
+ "keywords": [
3593
+ "compatibility",
3594
+ "phpcs",
3595
+ "standards",
3596
+ "wordpress"
3597
+ ],
3598
+ "support": {
3599
+ "issues": "https://github.com/PHPCompatibility/PHPCompatibilityWP/issues",
3600
+ "source": "https://github.com/PHPCompatibility/PHPCompatibilityWP"
3601
+ },
3602
+ "time": "2021-12-30T16:37:40+00:00"
3603
+ },
3604
+ {
3605
+ "name": "phpdocumentor/reflection-common",
3606
+ "version": "2.2.0",
3607
+ "source": {
3608
+ "type": "git",
3609
+ "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
3610
+ "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b"
3611
+ },
3612
+ "dist": {
3613
+ "type": "zip",
3614
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b",
3615
+ "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b",
3616
+ "shasum": ""
3617
+ },
3618
+ "require": {
3619
+ "php": "^7.2 || ^8.0"
3620
+ },
3621
+ "type": "library",
3622
+ "extra": {
3623
+ "branch-alias": {
3624
+ "dev-2.x": "2.x-dev"
3625
+ }
3626
+ },
3627
+ "autoload": {
3628
+ "psr-4": {
3629
+ "phpDocumentor\\Reflection\\": "src/"
3630
+ }
3631
+ },
3632
+ "notification-url": "https://packagist.org/downloads/",
3633
+ "license": [
3634
+ "MIT"
3635
+ ],
3636
+ "authors": [
3637
+ {
3638
+ "name": "Jaap van Otterdijk",
3639
+ "email": "opensource@ijaap.nl"
3640
+ }
3641
+ ],
3642
+ "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
3643
+ "homepage": "http://www.phpdoc.org",
3644
+ "keywords": [
3645
+ "FQSEN",
3646
+ "phpDocumentor",
3647
+ "phpdoc",
3648
+ "reflection",
3649
+ "static analysis"
3650
+ ],
3651
+ "support": {
3652
+ "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues",
3653
+ "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x"
3654
+ },
3655
+ "time": "2020-06-27T09:03:43+00:00"
3656
+ },
3657
+ {
3658
+ "name": "phpdocumentor/reflection-docblock",
3659
+ "version": "5.3.0",
3660
+ "source": {
3661
+ "type": "git",
3662
+ "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
3663
+ "reference": "622548b623e81ca6d78b721c5e029f4ce664f170"
3664
+ },
3665
+ "dist": {
3666
+ "type": "zip",
3667
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170",
3668
+ "reference": "622548b623e81ca6d78b721c5e029f4ce664f170",
3669
+ "shasum": ""
3670
+ },
3671
+ "require": {
3672
+ "ext-filter": "*",
3673
+ "php": "^7.2 || ^8.0",
3674
+ "phpdocumentor/reflection-common": "^2.2",
3675
+ "phpdocumentor/type-resolver": "^1.3",
3676
+ "webmozart/assert": "^1.9.1"
3677
+ },
3678
+ "require-dev": {
3679
+ "mockery/mockery": "~1.3.2",
3680
+ "psalm/phar": "^4.8"
3681
+ },
3682
+ "type": "library",
3683
+ "extra": {
3684
+ "branch-alias": {
3685
+ "dev-master": "5.x-dev"
3686
+ }
3687
+ },
3688
+ "autoload": {
3689
+ "psr-4": {
3690
+ "phpDocumentor\\Reflection\\": "src"
3691
+ }
3692
+ },
3693
+ "notification-url": "https://packagist.org/downloads/",
3694
+ "license": [
3695
+ "MIT"
3696
+ ],
3697
+ "authors": [
3698
+ {
3699
+ "name": "Mike van Riel",
3700
+ "email": "me@mikevanriel.com"
3701
+ },
3702
+ {
3703
+ "name": "Jaap van Otterdijk",
3704
+ "email": "account@ijaap.nl"
3705
+ }
3706
+ ],
3707
+ "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
3708
+ "support": {
3709
+ "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues",
3710
+ "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0"
3711
+ },
3712
+ "time": "2021-10-19T17:43:47+00:00"
3713
+ },
3714
+ {
3715
+ "name": "phpdocumentor/type-resolver",
3716
+ "version": "1.6.1",
3717
+ "source": {
3718
+ "type": "git",
3719
+ "url": "https://github.com/phpDocumentor/TypeResolver.git",
3720
+ "reference": "77a32518733312af16a44300404e945338981de3"
3721
+ },
3722
+ "dist": {
3723
+ "type": "zip",
3724
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/77a32518733312af16a44300404e945338981de3",
3725
+ "reference": "77a32518733312af16a44300404e945338981de3",
3726
+ "shasum": ""
3727
+ },
3728
+ "require": {
3729
+ "php": "^7.2 || ^8.0",
3730
+ "phpdocumentor/reflection-common": "^2.0"
3731
+ },
3732
+ "require-dev": {
3733
+ "ext-tokenizer": "*",
3734
+ "psalm/phar": "^4.8"
3735
+ },
3736
+ "type": "library",
3737
+ "extra": {
3738
+ "branch-alias": {
3739
+ "dev-1.x": "1.x-dev"
3740
+ }
3741
+ },
3742
+ "autoload": {
3743
+ "psr-4": {
3744
+ "phpDocumentor\\Reflection\\": "src"
3745
+ }
3746
+ },
3747
+ "notification-url": "https://packagist.org/downloads/",
3748
+ "license": [
3749
+ "MIT"
3750
+ ],
3751
+ "authors": [
3752
+ {
3753
+ "name": "Mike van Riel",
3754
+ "email": "me@mikevanriel.com"
3755
+ }
3756
+ ],
3757
+ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
3758
+ "support": {
3759
+ "issues": "https://github.com/phpDocumentor/TypeResolver/issues",
3760
+ "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.1"
3761
+ },
3762
+ "time": "2022-03-15T21:29:03+00:00"
3763
+ },
3764
+ {
3765
+ "name": "phpspec/prophecy",
3766
+ "version": "v1.15.0",
3767
+ "source": {
3768
+ "type": "git",
3769
+ "url": "https://github.com/phpspec/prophecy.git",
3770
+ "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13"
3771
+ },
3772
+ "dist": {
3773
+ "type": "zip",
3774
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13",
3775
+ "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13",
3776
+ "shasum": ""
3777
+ },
3778
+ "require": {
3779
+ "doctrine/instantiator": "^1.2",
3780
+ "php": "^7.2 || ~8.0, <8.2",
3781
+ "phpdocumentor/reflection-docblock": "^5.2",
3782
+ "sebastian/comparator": "^3.0 || ^4.0",
3783
+ "sebastian/recursion-context": "^3.0 || ^4.0"
3784
+ },
3785
+ "require-dev": {
3786
+ "phpspec/phpspec": "^6.0 || ^7.0",
3787
+ "phpunit/phpunit": "^8.0 || ^9.0"
3788
+ },
3789
+ "type": "library",
3790
+ "extra": {
3791
+ "branch-alias": {
3792
+ "dev-master": "1.x-dev"
3793
+ }
3794
+ },
3795
+ "autoload": {
3796
+ "psr-4": {
3797
+ "Prophecy\\": "src/Prophecy"
3798
+ }
3799
+ },
3800
+ "notification-url": "https://packagist.org/downloads/",
3801
+ "license": [
3802
+ "MIT"
3803
+ ],
3804
+ "authors": [
3805
+ {
3806
+ "name": "Konstantin Kudryashov",
3807
+ "email": "ever.zet@gmail.com",
3808
+ "homepage": "http://everzet.com"
3809
+ },
3810
+ {
3811
+ "name": "Marcello Duarte",
3812
+ "email": "marcello.duarte@gmail.com"
3813
+ }
3814
+ ],
3815
+ "description": "Highly opinionated mocking framework for PHP 5.3+",
3816
+ "homepage": "https://github.com/phpspec/prophecy",
3817
+ "keywords": [
3818
+ "Double",
3819
+ "Dummy",
3820
+ "fake",
3821
+ "mock",
3822
+ "spy",
3823
+ "stub"
3824
+ ],
3825
+ "support": {
3826
+ "issues": "https://github.com/phpspec/prophecy/issues",
3827
+ "source": "https://github.com/phpspec/prophecy/tree/v1.15.0"
3828
+ },
3829
+ "time": "2021-12-08T12:19:24+00:00"
3830
+ },
3831
+ {
3832
+ "name": "phpstan/extension-installer",
3833
+ "version": "1.1.0",
3834
+ "source": {
3835
+ "type": "git",
3836
+ "url": "https://github.com/phpstan/extension-installer.git",
3837
+ "reference": "66c7adc9dfa38b6b5838a9fb728b68a7d8348051"
3838
+ },
3839
+ "dist": {
3840
+ "type": "zip",
3841
+ "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/66c7adc9dfa38b6b5838a9fb728b68a7d8348051",
3842
+ "reference": "66c7adc9dfa38b6b5838a9fb728b68a7d8348051",
3843
+ "shasum": ""
3844
+ },
3845
+ "require": {
3846
+ "composer-plugin-api": "^1.1 || ^2.0",
3847
+ "php": "^7.1 || ^8.0",
3848
+ "phpstan/phpstan": ">=0.11.6"
3849
+ },
3850
+ "require-dev": {
3851
+ "composer/composer": "^1.8",
3852
+ "phing/phing": "^2.16.3",
3853
+ "php-parallel-lint/php-parallel-lint": "^1.2.0",
3854
+ "phpstan/phpstan-strict-rules": "^0.11 || ^0.12"
3855
+ },
3856
+ "type": "composer-plugin",
3857
+ "extra": {
3858
+ "class": "PHPStan\\ExtensionInstaller\\Plugin"
3859
+ },
3860
+ "autoload": {
3861
+ "psr-4": {
3862
+ "PHPStan\\ExtensionInstaller\\": "src/"
3863
+ }
3864
+ },
3865
+ "notification-url": "https://packagist.org/downloads/",
3866
+ "license": [
3867
+ "MIT"
3868
+ ],
3869
+ "description": "Composer plugin for automatic installation of PHPStan extensions",
3870
+ "support": {
3871
+ "issues": "https://github.com/phpstan/extension-installer/issues",
3872
+ "source": "https://github.com/phpstan/extension-installer/tree/1.1.0"
3873
+ },
3874
+ "time": "2020-12-13T13:06:13+00:00"
3875
+ },
3876
+ {
3877
+ "name": "phpstan/phpstan",
3878
+ "version": "1.7.11",
3879
+ "source": {
3880
+ "type": "git",
3881
+ "url": "https://github.com/phpstan/phpstan.git",
3882
+ "reference": "62fcadcde81b4037e42ad2489119d31c46f00191"
3883
+ },
3884
+ "dist": {
3885
+ "type": "zip",
3886
+ "url": "https://api.github.com/repos/phpstan/phpstan/zipball/62fcadcde81b4037e42ad2489119d31c46f00191",
3887
+ "reference": "62fcadcde81b4037e42ad2489119d31c46f00191",
3888
+ "shasum": ""
3889
+ },
3890
+ "require": {
3891
+ "php": "^7.2|^8.0"
3892
+ },
3893
+ "conflict": {
3894
+ "phpstan/phpstan-shim": "*"
3895
+ },
3896
+ "bin": [
3897
+ "phpstan",
3898
+ "phpstan.phar"
3899
+ ],
3900
+ "type": "library",
3901
+ "autoload": {
3902
+ "files": [
3903
+ "bootstrap.php"
3904
+ ]
3905
+ },
3906
+ "notification-url": "https://packagist.org/downloads/",
3907
+ "license": [
3908
+ "MIT"
3909
+ ],
3910
+ "description": "PHPStan - PHP Static Analysis Tool",
3911
+ "support": {
3912
+ "issues": "https://github.com/phpstan/phpstan/issues",
3913
+ "source": "https://github.com/phpstan/phpstan/tree/1.7.11"
3914
+ },
3915
+ "funding": [
3916
+ {
3917
+ "url": "https://github.com/ondrejmirtes",
3918
+ "type": "github"
3919
+ },
3920
+ {
3921
+ "url": "https://github.com/phpstan",
3922
+ "type": "github"
3923
+ },
3924
+ {
3925
+ "url": "https://www.patreon.com/phpstan",
3926
+ "type": "patreon"
3927
+ },
3928
+ {
3929
+ "url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan",
3930
+ "type": "tidelift"
3931
+ }
3932
+ ],
3933
+ "time": "2022-06-07T08:47:03+00:00"
3934
+ },
3935
+ {
3936
+ "name": "phpunit/php-code-coverage",
3937
+ "version": "6.1.4",
3938
+ "source": {
3939
+ "type": "git",
3940
+ "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
3941
+ "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d"
3942
+ },
3943
+ "dist": {
3944
+ "type": "zip",
3945
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
3946
+ "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
3947
+ "shasum": ""
3948
+ },
3949
+ "require": {
3950
+ "ext-dom": "*",
3951
+ "ext-xmlwriter": "*",
3952
+ "php": "^7.1",
3953
+ "phpunit/php-file-iterator": "^2.0",
3954
+ "phpunit/php-text-template": "^1.2.1",
3955
+ "phpunit/php-token-stream": "^3.0",
3956
+ "sebastian/code-unit-reverse-lookup": "^1.0.1",
3957
+ "sebastian/environment": "^3.1 || ^4.0",
3958
+ "sebastian/version": "^2.0.1",
3959
+ "theseer/tokenizer": "^1.1"
3960
+ },
3961
+ "require-dev": {
3962
+ "phpunit/phpunit": "^7.0"
3963
+ },
3964
+ "suggest": {
3965
+ "ext-xdebug": "^2.6.0"
3966
+ },
3967
+ "type": "library",
3968
+ "extra": {
3969
+ "branch-alias": {
3970
+ "dev-master": "6.1-dev"
3971
+ }
3972
+ },
3973
+ "autoload": {
3974
+ "classmap": [
3975
+ "src/"
3976
+ ]
3977
+ },
3978
+ "notification-url": "https://packagist.org/downloads/",
3979
+ "license": [
3980
+ "BSD-3-Clause"
3981
+ ],
3982
+ "authors": [
3983
+ {
3984
+ "name": "Sebastian Bergmann",
3985
+ "email": "sebastian@phpunit.de",
3986
+ "role": "lead"
3987
+ }
3988
+ ],
3989
+ "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
3990
+ "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
3991
+ "keywords": [
3992
+ "coverage",
3993
+ "testing",
3994
+ "xunit"
3995
+ ],
3996
+ "support": {
3997
+ "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
3998
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/master"
3999
+ },
4000
+ "time": "2018-10-31T16:06:48+00:00"
4001
+ },
4002
+ {
4003
+ "name": "phpunit/php-file-iterator",
4004
+ "version": "2.0.5",
4005
+ "source": {
4006
+ "type": "git",
4007
+ "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
4008
+ "reference": "42c5ba5220e6904cbfe8b1a1bda7c0cfdc8c12f5"
4009
+ },
4010
+ "dist": {
4011
+ "type": "zip",
4012
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/42c5ba5220e6904cbfe8b1a1bda7c0cfdc8c12f5",
4013
+ "reference": "42c5ba5220e6904cbfe8b1a1bda7c0cfdc8c12f5",
4014
+ "shasum": ""
4015
+ },
4016
+ "require": {
4017
+ "php": ">=7.1"
4018
+ },
4019
+ "require-dev": {
4020
+ "phpunit/phpunit": "^8.5"
4021
+ },
4022
+ "type": "library",
4023
+ "extra": {
4024
+ "branch-alias": {
4025
+ "dev-master": "2.0.x-dev"
4026
+ }
4027
+ },
4028
+ "autoload": {
4029
+ "classmap": [
4030
+ "src/"
4031
+ ]
4032
+ },
4033
+ "notification-url": "https://packagist.org/downloads/",
4034
+ "license": [
4035
+ "BSD-3-Clause"
4036
+ ],
4037
+ "authors": [
4038
+ {
4039
+ "name": "Sebastian Bergmann",
4040
+ "email": "sebastian@phpunit.de",
4041
+ "role": "lead"
4042
+ }
4043
+ ],
4044
+ "description": "FilterIterator implementation that filters files based on a list of suffixes.",
4045
+ "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
4046
+ "keywords": [
4047
+ "filesystem",
4048
+ "iterator"
4049
+ ],
4050
+ "support": {
4051
+ "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
4052
+ "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/2.0.5"
4053
+ },
4054
+ "funding": [
4055
+ {
4056
+ "url": "https://github.com/sebastianbergmann",
4057
+ "type": "github"
4058
+ }
4059
+ ],
4060
+ "time": "2021-12-02T12:42:26+00:00"
4061
+ },
4062
+ {
4063
+ "name": "phpunit/php-text-template",
4064
+ "version": "1.2.1",
4065
+ "source": {
4066
+ "type": "git",
4067
+ "url": "https://github.com/sebastianbergmann/php-text-template.git",
4068
+ "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
4069
+ },
4070
+ "dist": {
4071
+ "type": "zip",
4072
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
4073
+ "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
4074
+ "shasum": ""
4075
+ },
4076
+ "require": {
4077
+ "php": ">=5.3.3"
4078
+ },
4079
+ "type": "library",
4080
+ "autoload": {
4081
+ "classmap": [
4082
+ "src/"
4083
+ ]
4084
+ },
4085
+ "notification-url": "https://packagist.org/downloads/",
4086
+ "license": [
4087
+ "BSD-3-Clause"
4088
+ ],
4089
+ "authors": [
4090
+ {
4091
+ "name": "Sebastian Bergmann",
4092
+ "email": "sebastian@phpunit.de",
4093
+ "role": "lead"
4094
+ }
4095
+ ],
4096
+ "description": "Simple template engine.",
4097
+ "homepage": "https://github.com/sebastianbergmann/php-text-template/",
4098
+ "keywords": [
4099
+ "template"
4100
+ ],
4101
+ "support": {
4102
+ "issues": "https://github.com/sebastianbergmann/php-text-template/issues",
4103
+ "source": "https://github.com/sebastianbergmann/php-text-template/tree/1.2.1"
4104
+ },
4105
+ "time": "2015-06-21T13:50:34+00:00"
4106
+ },
4107
+ {
4108
+ "name": "phpunit/php-timer",
4109
+ "version": "2.1.3",
4110
+ "source": {
4111
+ "type": "git",
4112
+ "url": "https://github.com/sebastianbergmann/php-timer.git",
4113
+ "reference": "2454ae1765516d20c4ffe103d85a58a9a3bd5662"
4114
+ },
4115
+ "dist": {
4116
+ "type": "zip",
4117
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/2454ae1765516d20c4ffe103d85a58a9a3bd5662",
4118
+ "reference": "2454ae1765516d20c4ffe103d85a58a9a3bd5662",
4119
+ "shasum": ""
4120
+ },
4121
+ "require": {
4122
+ "php": ">=7.1"
4123
+ },
4124
+ "require-dev": {
4125
+ "phpunit/phpunit": "^8.5"
4126
+ },
4127
+ "type": "library",
4128
+ "extra": {
4129
+ "branch-alias": {
4130
+ "dev-master": "2.1-dev"
4131
+ }
4132
+ },
4133
+ "autoload": {
4134
+ "classmap": [
4135
+ "src/"
4136
+ ]
4137
+ },
4138
+ "notification-url": "https://packagist.org/downloads/",
4139
+ "license": [
4140
+ "BSD-3-Clause"
4141
+ ],
4142
+ "authors": [
4143
+ {
4144
+ "name": "Sebastian Bergmann",
4145
+ "email": "sebastian@phpunit.de",
4146
+ "role": "lead"
4147
+ }
4148
+ ],
4149
+ "description": "Utility class for timing",
4150
+ "homepage": "https://github.com/sebastianbergmann/php-timer/",
4151
+ "keywords": [
4152
+ "timer"
4153
+ ],
4154
+ "support": {
4155
+ "issues": "https://github.com/sebastianbergmann/php-timer/issues",
4156
+ "source": "https://github.com/sebastianbergmann/php-timer/tree/2.1.3"
4157
+ },
4158
+ "funding": [
4159
+ {
4160
+ "url": "https://github.com/sebastianbergmann",
4161
+ "type": "github"
4162
+ }
4163
+ ],
4164
+ "time": "2020-11-30T08:20:02+00:00"
4165
+ },
4166
+ {
4167
+ "name": "phpunit/php-token-stream",
4168
+ "version": "3.1.3",
4169
+ "source": {
4170
+ "type": "git",
4171
+ "url": "https://github.com/sebastianbergmann/php-token-stream.git",
4172
+ "reference": "9c1da83261628cb24b6a6df371b6e312b3954768"
4173
+ },
4174
+ "dist": {
4175
+ "type": "zip",
4176
+ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/9c1da83261628cb24b6a6df371b6e312b3954768",
4177
+ "reference": "9c1da83261628cb24b6a6df371b6e312b3954768",
4178
+ "shasum": ""
4179
+ },
4180
+ "require": {
4181
+ "ext-tokenizer": "*",
4182
+ "php": ">=7.1"
4183
+ },
4184
+ "require-dev": {
4185
+ "phpunit/phpunit": "^7.0"
4186
+ },
4187
+ "type": "library",
4188
+ "extra": {
4189
+ "branch-alias": {
4190
+ "dev-master": "3.1-dev"
4191
+ }
4192
+ },
4193
+ "autoload": {
4194
+ "classmap": [
4195
+ "src/"
4196
+ ]
4197
+ },
4198
+ "notification-url": "https://packagist.org/downloads/",
4199
+ "license": [
4200
+ "BSD-3-Clause"
4201
+ ],
4202
+ "authors": [
4203
+ {
4204
+ "name": "Sebastian Bergmann",
4205
+ "email": "sebastian@phpunit.de"
4206
+ }
4207
+ ],
4208
+ "description": "Wrapper around PHP's tokenizer extension.",
4209
+ "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
4210
+ "keywords": [
4211
+ "tokenizer"
4212
+ ],
4213
+ "support": {
4214
+ "issues": "https://github.com/sebastianbergmann/php-token-stream/issues",
4215
+ "source": "https://github.com/sebastianbergmann/php-token-stream/tree/3.1.3"
4216
+ },
4217
+ "funding": [
4218
+ {
4219
+ "url": "https://github.com/sebastianbergmann",
4220
+ "type": "github"
4221
+ }
4222
+ ],
4223
+ "abandoned": true,
4224
+ "time": "2021-07-26T12:15:06+00:00"
4225
+ },
4226
+ {
4227
+ "name": "phpunit/phpunit",
4228
+ "version": "7.5.20",
4229
+ "source": {
4230
+ "type": "git",
4231
+ "url": "https://github.com/sebastianbergmann/phpunit.git",
4232
+ "reference": "9467db479d1b0487c99733bb1e7944d32deded2c"
4233
+ },
4234
+ "dist": {
4235
+ "type": "zip",
4236
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9467db479d1b0487c99733bb1e7944d32deded2c",
4237
+ "reference": "9467db479d1b0487c99733bb1e7944d32deded2c",
4238
+ "shasum": ""
4239
+ },
4240
+ "require": {
4241
+ "doctrine/instantiator": "^1.1",
4242
+ "ext-dom": "*",
4243
+ "ext-json": "*",
4244
+ "ext-libxml": "*",
4245
+ "ext-mbstring": "*",
4246
+ "ext-xml": "*",
4247
+ "myclabs/deep-copy": "^1.7",
4248
+ "phar-io/manifest": "^1.0.2",
4249
+ "phar-io/version": "^2.0",
4250
+ "php": "^7.1",
4251
+ "phpspec/prophecy": "^1.7",
4252
+ "phpunit/php-code-coverage": "^6.0.7",
4253
+ "phpunit/php-file-iterator": "^2.0.1",
4254
+ "phpunit/php-text-template": "^1.2.1",
4255
+ "phpunit/php-timer": "^2.1",
4256
+ "sebastian/comparator": "^3.0",
4257
+ "sebastian/diff": "^3.0",
4258
+ "sebastian/environment": "^4.0",
4259
+ "sebastian/exporter": "^3.1",
4260
+ "sebastian/global-state": "^2.0",
4261
+ "sebastian/object-enumerator": "^3.0.3",
4262
+ "sebastian/resource-operations": "^2.0",
4263
+ "sebastian/version": "^2.0.1"
4264
+ },
4265
+ "conflict": {
4266
+ "phpunit/phpunit-mock-objects": "*"
4267
+ },
4268
+ "require-dev": {
4269
+ "ext-pdo": "*"
4270
+ },
4271
+ "suggest": {
4272
+ "ext-soap": "*",
4273
+ "ext-xdebug": "*",
4274
+ "phpunit/php-invoker": "^2.0"
4275
+ },
4276
+ "bin": [
4277
+ "phpunit"
4278
+ ],
4279
+ "type": "library",
4280
+ "extra": {
4281
+ "branch-alias": {
4282
+ "dev-master": "7.5-dev"
4283
+ }
4284
+ },
4285
+ "autoload": {
4286
+ "classmap": [
4287
+ "src/"
4288
+ ]
4289
+ },
4290
+ "notification-url": "https://packagist.org/downloads/",
4291
+ "license": [
4292
+ "BSD-3-Clause"
4293
+ ],
4294
+ "authors": [
4295
+ {
4296
+ "name": "Sebastian Bergmann",
4297
+ "email": "sebastian@phpunit.de",
4298
+ "role": "lead"
4299
+ }
4300
+ ],
4301
+ "description": "The PHP Unit Testing framework.",
4302
+ "homepage": "https://phpunit.de/",
4303
+ "keywords": [
4304
+ "phpunit",
4305
+ "testing",
4306
+ "xunit"
4307
+ ],
4308
+ "support": {
4309
+ "issues": "https://github.com/sebastianbergmann/phpunit/issues",
4310
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/7.5.20"
4311
+ },
4312
+ "time": "2020-01-08T08:45:45+00:00"
4313
+ },
4314
+ {
4315
+ "name": "sebastian/code-unit-reverse-lookup",
4316
+ "version": "1.0.2",
4317
+ "source": {
4318
+ "type": "git",
4319
+ "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
4320
+ "reference": "1de8cd5c010cb153fcd68b8d0f64606f523f7619"
4321
+ },
4322
+ "dist": {
4323
+ "type": "zip",
4324
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/1de8cd5c010cb153fcd68b8d0f64606f523f7619",
4325
+ "reference": "1de8cd5c010cb153fcd68b8d0f64606f523f7619",
4326
+ "shasum": ""
4327
+ },
4328
+ "require": {
4329
+ "php": ">=5.6"
4330
+ },
4331
+ "require-dev": {
4332
+ "phpunit/phpunit": "^8.5"
4333
+ },
4334
+ "type": "library",
4335
+ "extra": {
4336
+ "branch-alias": {
4337
+ "dev-master": "1.0.x-dev"
4338
+ }
4339
+ },
4340
+ "autoload": {
4341
+ "classmap": [
4342
+ "src/"
4343
+ ]
4344
+ },
4345
+ "notification-url": "https://packagist.org/downloads/",
4346
+ "license": [
4347
+ "BSD-3-Clause"
4348
+ ],
4349
+ "authors": [
4350
+ {
4351
+ "name": "Sebastian Bergmann",
4352
+ "email": "sebastian@phpunit.de"
4353
+ }
4354
+ ],
4355
+ "description": "Looks up which function or method a line of code belongs to",
4356
+ "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
4357
+ "support": {
4358
+ "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues",
4359
+ "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/1.0.2"
4360
+ },
4361
+ "funding": [
4362
+ {
4363
+ "url": "https://github.com/sebastianbergmann",
4364
+ "type": "github"
4365
+ }
4366
+ ],
4367
+ "time": "2020-11-30T08:15:22+00:00"
4368
+ },
4369
+ {
4370
+ "name": "sebastian/comparator",
4371
+ "version": "3.0.3",
4372
+ "source": {
4373
+ "type": "git",
4374
+ "url": "https://github.com/sebastianbergmann/comparator.git",
4375
+ "reference": "1071dfcef776a57013124ff35e1fc41ccd294758"
4376
+ },
4377
+ "dist": {
4378
+ "type": "zip",
4379
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/1071dfcef776a57013124ff35e1fc41ccd294758",
4380
+ "reference": "1071dfcef776a57013124ff35e1fc41ccd294758",
4381
+ "shasum": ""
4382
+ },
4383
+ "require": {
4384
+ "php": ">=7.1",
4385
+ "sebastian/diff": "^3.0",
4386
+ "sebastian/exporter": "^3.1"
4387
+ },
4388
+ "require-dev": {
4389
+ "phpunit/phpunit": "^8.5"
4390
+ },
4391
+ "type": "library",
4392
+ "extra": {
4393
+ "branch-alias": {
4394
+ "dev-master": "3.0-dev"
4395
+ }
4396
+ },
4397
+ "autoload": {
4398
+ "classmap": [
4399
+ "src/"
4400
+ ]
4401
+ },
4402
+ "notification-url": "https://packagist.org/downloads/",
4403
+ "license": [
4404
+ "BSD-3-Clause"
4405
+ ],
4406
+ "authors": [
4407
+ {
4408
+ "name": "Sebastian Bergmann",
4409
+ "email": "sebastian@phpunit.de"
4410
+ },
4411
+ {
4412
+ "name": "Jeff Welch",
4413
+ "email": "whatthejeff@gmail.com"
4414
+ },
4415
+ {
4416
+ "name": "Volker Dusch",
4417
+ "email": "github@wallbash.com"
4418
+ },
4419
+ {
4420
+ "name": "Bernhard Schussek",
4421
+ "email": "bschussek@2bepublished.at"
4422
+ }
4423
+ ],
4424
+ "description": "Provides the functionality to compare PHP values for equality",
4425
+ "homepage": "https://github.com/sebastianbergmann/comparator",
4426
+ "keywords": [
4427
+ "comparator",
4428
+ "compare",
4429
+ "equality"
4430
+ ],
4431
+ "support": {
4432
+ "issues": "https://github.com/sebastianbergmann/comparator/issues",
4433
+ "source": "https://github.com/sebastianbergmann/comparator/tree/3.0.3"
4434
+ },
4435
+ "funding": [
4436
+ {
4437
+ "url": "https://github.com/sebastianbergmann",
4438
+ "type": "github"
4439
+ }
4440
+ ],
4441
+ "time": "2020-11-30T08:04:30+00:00"
4442
+ },
4443
+ {
4444
+ "name": "sebastian/diff",
4445
+ "version": "3.0.3",
4446
+ "source": {
4447
+ "type": "git",
4448
+ "url": "https://github.com/sebastianbergmann/diff.git",
4449
+ "reference": "14f72dd46eaf2f2293cbe79c93cc0bc43161a211"
4450
+ },
4451
+ "dist": {
4452
+ "type": "zip",
4453
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/14f72dd46eaf2f2293cbe79c93cc0bc43161a211",
4454
+ "reference": "14f72dd46eaf2f2293cbe79c93cc0bc43161a211",
4455
+ "shasum": ""
4456
+ },
4457
+ "require": {
4458
+ "php": ">=7.1"
4459
+ },
4460
+ "require-dev": {
4461
+ "phpunit/phpunit": "^7.5 || ^8.0",
4462
+ "symfony/process": "^2 || ^3.3 || ^4"
4463
+ },
4464
+ "type": "library",
4465
+ "extra": {
4466
+ "branch-alias": {
4467
+ "dev-master": "3.0-dev"
4468
+ }
4469
+ },
4470
+ "autoload": {
4471
+ "classmap": [
4472
+ "src/"
4473
+ ]
4474
+ },
4475
+ "notification-url": "https://packagist.org/downloads/",
4476
+ "license": [
4477
+ "BSD-3-Clause"
4478
+ ],
4479
+ "authors": [
4480
+ {
4481
+ "name": "Sebastian Bergmann",
4482
+ "email": "sebastian@phpunit.de"
4483
+ },
4484
+ {
4485
+ "name": "Kore Nordmann",
4486
+ "email": "mail@kore-nordmann.de"
4487
+ }
4488
+ ],
4489
+ "description": "Diff implementation",
4490
+ "homepage": "https://github.com/sebastianbergmann/diff",
4491
+ "keywords": [
4492
+ "diff",
4493
+ "udiff",
4494
+ "unidiff",
4495
+ "unified diff"
4496
+ ],
4497
+ "support": {
4498
+ "issues": "https://github.com/sebastianbergmann/diff/issues",
4499
+ "source": "https://github.com/sebastianbergmann/diff/tree/3.0.3"
4500
+ },
4501
+ "funding": [
4502
+ {
4503
+ "url": "https://github.com/sebastianbergmann",
4504
+ "type": "github"
4505
+ }
4506
+ ],
4507
+ "time": "2020-11-30T07:59:04+00:00"
4508
+ },
4509
+ {
4510
+ "name": "sebastian/environment",
4511
+ "version": "4.2.4",
4512
+ "source": {
4513
+ "type": "git",
4514
+ "url": "https://github.com/sebastianbergmann/environment.git",
4515
+ "reference": "d47bbbad83711771f167c72d4e3f25f7fcc1f8b0"
4516
+ },
4517
+ "dist": {
4518
+ "type": "zip",
4519
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/d47bbbad83711771f167c72d4e3f25f7fcc1f8b0",
4520
+ "reference": "d47bbbad83711771f167c72d4e3f25f7fcc1f8b0",
4521
+ "shasum": ""
4522
+ },
4523
+ "require": {
4524
+ "php": ">=7.1"
4525
+ },
4526
+ "require-dev": {
4527
+ "phpunit/phpunit": "^7.5"
4528
+ },
4529
+ "suggest": {
4530
+ "ext-posix": "*"
4531
+ },
4532
+ "type": "library",
4533
+ "extra": {
4534
+ "branch-alias": {
4535
+ "dev-master": "4.2-dev"
4536
+ }
4537
+ },
4538
+ "autoload": {
4539
+ "classmap": [
4540
+ "src/"
4541
+ ]
4542
+ },
4543
+ "notification-url": "https://packagist.org/downloads/",
4544
+ "license": [
4545
+ "BSD-3-Clause"
4546
+ ],
4547
+ "authors": [
4548
+ {
4549
+ "name": "Sebastian Bergmann",
4550
+ "email": "sebastian@phpunit.de"
4551
+ }
4552
+ ],
4553
+ "description": "Provides functionality to handle HHVM/PHP environments",
4554
+ "homepage": "http://www.github.com/sebastianbergmann/environment",
4555
+ "keywords": [
4556
+ "Xdebug",
4557
+ "environment",
4558
+ "hhvm"
4559
+ ],
4560
+ "support": {
4561
+ "issues": "https://github.com/sebastianbergmann/environment/issues",
4562
+ "source": "https://github.com/sebastianbergmann/environment/tree/4.2.4"
4563
+ },
4564
+ "funding": [
4565
+ {
4566
+ "url": "https://github.com/sebastianbergmann",
4567
+ "type": "github"
4568
+ }
4569
+ ],
4570
+ "time": "2020-11-30T07:53:42+00:00"
4571
+ },
4572
+ {
4573
+ "name": "sebastian/exporter",
4574
+ "version": "3.1.4",
4575
+ "source": {
4576
+ "type": "git",
4577
+ "url": "https://github.com/sebastianbergmann/exporter.git",
4578
+ "reference": "0c32ea2e40dbf59de29f3b49bf375176ce7dd8db"
4579
+ },
4580
+ "dist": {
4581
+ "type": "zip",
4582
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/0c32ea2e40dbf59de29f3b49bf375176ce7dd8db",
4583
+ "reference": "0c32ea2e40dbf59de29f3b49bf375176ce7dd8db",
4584
+ "shasum": ""
4585
+ },
4586
+ "require": {
4587
+ "php": ">=7.0",
4588
+ "sebastian/recursion-context": "^3.0"
4589
+ },
4590
+ "require-dev": {
4591
+ "ext-mbstring": "*",
4592
+ "phpunit/phpunit": "^8.5"
4593
+ },
4594
+ "type": "library",
4595
+ "extra": {
4596
+ "branch-alias": {
4597
+ "dev-master": "3.1.x-dev"
4598
+ }
4599
+ },
4600
+ "autoload": {
4601
+ "classmap": [
4602
+ "src/"
4603
+ ]
4604
+ },
4605
+ "notification-url": "https://packagist.org/downloads/",
4606
+ "license": [
4607
+ "BSD-3-Clause"
4608
+ ],
4609
+ "authors": [
4610
+ {
4611
+ "name": "Sebastian Bergmann",
4612
+ "email": "sebastian@phpunit.de"
4613
+ },
4614
+ {
4615
+ "name": "Jeff Welch",
4616
+ "email": "whatthejeff@gmail.com"
4617
+ },
4618
+ {
4619
+ "name": "Volker Dusch",
4620
+ "email": "github@wallbash.com"
4621
+ },
4622
+ {
4623
+ "name": "Adam Harvey",
4624
+ "email": "aharvey@php.net"
4625
+ },
4626
+ {
4627
+ "name": "Bernhard Schussek",
4628
+ "email": "bschussek@gmail.com"
4629
+ }
4630
+ ],
4631
+ "description": "Provides the functionality to export PHP variables for visualization",
4632
+ "homepage": "http://www.github.com/sebastianbergmann/exporter",
4633
+ "keywords": [
4634
+ "export",
4635
+ "exporter"
4636
+ ],
4637
+ "support": {
4638
+ "issues": "https://github.com/sebastianbergmann/exporter/issues",
4639
+ "source": "https://github.com/sebastianbergmann/exporter/tree/3.1.4"
4640
+ },
4641
+ "funding": [
4642
+ {
4643
+ "url": "https://github.com/sebastianbergmann",
4644
+ "type": "github"
4645
+ }
4646
+ ],
4647
+ "time": "2021-11-11T13:51:24+00:00"
4648
+ },
4649
+ {
4650
+ "name": "sebastian/global-state",
4651
+ "version": "2.0.0",
4652
+ "source": {
4653
+ "type": "git",
4654
+ "url": "https://github.com/sebastianbergmann/global-state.git",
4655
+ "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4"
4656
+ },
4657
+ "dist": {
4658
+ "type": "zip",
4659
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
4660
+ "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
4661
+ "shasum": ""
4662
+ },
4663
+ "require": {
4664
+ "php": "^7.0"
4665
+ },
4666
+ "require-dev": {
4667
+ "phpunit/phpunit": "^6.0"
4668
+ },
4669
+ "suggest": {
4670
+ "ext-uopz": "*"
4671
+ },
4672
+ "type": "library",
4673
+ "extra": {
4674
+ "branch-alias": {
4675
+ "dev-master": "2.0-dev"
4676
+ }
4677
+ },
4678
+ "autoload": {
4679
+ "classmap": [
4680
+ "src/"
4681
+ ]
4682
+ },
4683
+ "notification-url": "https://packagist.org/downloads/",
4684
+ "license": [
4685
+ "BSD-3-Clause"
4686
+ ],
4687
+ "authors": [
4688
+ {
4689
+ "name": "Sebastian Bergmann",
4690
+ "email": "sebastian@phpunit.de"
4691
+ }
4692
+ ],
4693
+ "description": "Snapshotting of global state",
4694
+ "homepage": "http://www.github.com/sebastianbergmann/global-state",
4695
+ "keywords": [
4696
+ "global state"
4697
+ ],
4698
+ "support": {
4699
+ "issues": "https://github.com/sebastianbergmann/global-state/issues",
4700
+ "source": "https://github.com/sebastianbergmann/global-state/tree/2.0.0"
4701
+ },
4702
+ "time": "2017-04-27T15:39:26+00:00"
4703
+ },
4704
+ {
4705
+ "name": "sebastian/object-enumerator",
4706
+ "version": "3.0.4",
4707
+ "source": {
4708
+ "type": "git",
4709
+ "url": "https://github.com/sebastianbergmann/object-enumerator.git",
4710
+ "reference": "e67f6d32ebd0c749cf9d1dbd9f226c727043cdf2"
4711
+ },
4712
+ "dist": {
4713
+ "type": "zip",
4714
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/e67f6d32ebd0c749cf9d1dbd9f226c727043cdf2",
4715
+ "reference": "e67f6d32ebd0c749cf9d1dbd9f226c727043cdf2",
4716
+ "shasum": ""
4717
+ },
4718
+ "require": {
4719
+ "php": ">=7.0",
4720
+ "sebastian/object-reflector": "^1.1.1",
4721
+ "sebastian/recursion-context": "^3.0"
4722
+ },
4723
+ "require-dev": {
4724
+ "phpunit/phpunit": "^6.0"
4725
+ },
4726
+ "type": "library",
4727
+ "extra": {
4728
+ "branch-alias": {
4729
+ "dev-master": "3.0.x-dev"
4730
+ }
4731
+ },
4732
+ "autoload": {
4733
+ "classmap": [
4734
+ "src/"
4735
+ ]
4736
+ },
4737
+ "notification-url": "https://packagist.org/downloads/",
4738
+ "license": [
4739
+ "BSD-3-Clause"
4740
+ ],
4741
+ "authors": [
4742
+ {
4743
+ "name": "Sebastian Bergmann",
4744
+ "email": "sebastian@phpunit.de"
4745
+ }
4746
+ ],
4747
+ "description": "Traverses array structures and object graphs to enumerate all referenced objects",
4748
+ "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
4749
+ "support": {
4750
+ "issues": "https://github.com/sebastianbergmann/object-enumerator/issues",
4751
+ "source": "https://github.com/sebastianbergmann/object-enumerator/tree/3.0.4"
4752
+ },
4753
+ "funding": [
4754
+ {
4755
+ "url": "https://github.com/sebastianbergmann",
4756
+ "type": "github"
4757
+ }
4758
+ ],
4759
+ "time": "2020-11-30T07:40:27+00:00"
4760
+ },
4761
+ {
4762
+ "name": "sebastian/object-reflector",
4763
+ "version": "1.1.2",
4764
+ "source": {
4765
+ "type": "git",
4766
+ "url": "https://github.com/sebastianbergmann/object-reflector.git",
4767
+ "reference": "9b8772b9cbd456ab45d4a598d2dd1a1bced6363d"
4768
+ },
4769
+ "dist": {
4770
+ "type": "zip",
4771
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/9b8772b9cbd456ab45d4a598d2dd1a1bced6363d",
4772
+ "reference": "9b8772b9cbd456ab45d4a598d2dd1a1bced6363d",
4773
+ "shasum": ""
4774
+ },
4775
+ "require": {
4776
+ "php": ">=7.0"
4777
+ },
4778
+ "require-dev": {
4779
+ "phpunit/phpunit": "^6.0"
4780
+ },
4781
+ "type": "library",
4782
+ "extra": {
4783
+ "branch-alias": {
4784
+ "dev-master": "1.1-dev"
4785
+ }
4786
+ },
4787
+ "autoload": {
4788
+ "classmap": [
4789
+ "src/"
4790
+ ]
4791
+ },
4792
+ "notification-url": "https://packagist.org/downloads/",
4793
+ "license": [
4794
+ "BSD-3-Clause"
4795
+ ],
4796
+ "authors": [
4797
+ {
4798
+ "name": "Sebastian Bergmann",
4799
+ "email": "sebastian@phpunit.de"
4800
+ }
4801
+ ],
4802
+ "description": "Allows reflection of object attributes, including inherited and non-public ones",
4803
+ "homepage": "https://github.com/sebastianbergmann/object-reflector/",
4804
+ "support": {
4805
+ "issues": "https://github.com/sebastianbergmann/object-reflector/issues",
4806
+ "source": "https://github.com/sebastianbergmann/object-reflector/tree/1.1.2"
4807
+ },
4808
+ "funding": [
4809
+ {
4810
+ "url": "https://github.com/sebastianbergmann",
4811
+ "type": "github"
4812
+ }
4813
+ ],
4814
+ "time": "2020-11-30T07:37:18+00:00"
4815
+ },
4816
+ {
4817
+ "name": "sebastian/recursion-context",
4818
+ "version": "3.0.1",
4819
+ "source": {
4820
+ "type": "git",
4821
+ "url": "https://github.com/sebastianbergmann/recursion-context.git",
4822
+ "reference": "367dcba38d6e1977be014dc4b22f47a484dac7fb"
4823
+ },
4824
+ "dist": {
4825
+ "type": "zip",
4826
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/367dcba38d6e1977be014dc4b22f47a484dac7fb",
4827
+ "reference": "367dcba38d6e1977be014dc4b22f47a484dac7fb",
4828
+ "shasum": ""
4829
+ },
4830
+ "require": {
4831
+ "php": ">=7.0"
4832
+ },
4833
+ "require-dev": {
4834
+ "phpunit/phpunit": "^6.0"
4835
+ },
4836
+ "type": "library",
4837
+ "extra": {
4838
+ "branch-alias": {
4839
+ "dev-master": "3.0.x-dev"
4840
+ }
4841
+ },
4842
+ "autoload": {
4843
+ "classmap": [
4844
+ "src/"
4845
+ ]
4846
+ },
4847
+ "notification-url": "https://packagist.org/downloads/",
4848
+ "license": [
4849
+ "BSD-3-Clause"
4850
+ ],
4851
+ "authors": [
4852
+ {
4853
+ "name": "Sebastian Bergmann",
4854
+ "email": "sebastian@phpunit.de"
4855
+ },
4856
+ {
4857
+ "name": "Jeff Welch",
4858
+ "email": "whatthejeff@gmail.com"
4859
+ },
4860
+ {
4861
+ "name": "Adam Harvey",
4862
+ "email": "aharvey@php.net"
4863
+ }
4864
+ ],
4865
+ "description": "Provides functionality to recursively process PHP variables",
4866
+ "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
4867
+ "support": {
4868
+ "issues": "https://github.com/sebastianbergmann/recursion-context/issues",
4869
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/3.0.1"
4870
+ },
4871
+ "funding": [
4872
+ {
4873
+ "url": "https://github.com/sebastianbergmann",
4874
+ "type": "github"
4875
+ }
4876
+ ],
4877
+ "time": "2020-11-30T07:34:24+00:00"
4878
+ },
4879
+ {
4880
+ "name": "sebastian/resource-operations",
4881
+ "version": "2.0.2",
4882
+ "source": {
4883
+ "type": "git",
4884
+ "url": "https://github.com/sebastianbergmann/resource-operations.git",
4885
+ "reference": "31d35ca87926450c44eae7e2611d45a7a65ea8b3"
4886
+ },
4887
+ "dist": {
4888
+ "type": "zip",
4889
+ "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/31d35ca87926450c44eae7e2611d45a7a65ea8b3",
4890
+ "reference": "31d35ca87926450c44eae7e2611d45a7a65ea8b3",
4891
+ "shasum": ""
4892
+ },
4893
+ "require": {
4894
+ "php": ">=7.1"
4895
+ },
4896
+ "type": "library",
4897
+ "extra": {
4898
+ "branch-alias": {
4899
+ "dev-master": "2.0-dev"
4900
+ }
4901
+ },
4902
+ "autoload": {
4903
+ "classmap": [
4904
+ "src/"
4905
+ ]
4906
+ },
4907
+ "notification-url": "https://packagist.org/downloads/",
4908
+ "license": [
4909
+ "BSD-3-Clause"
4910
+ ],
4911
+ "authors": [
4912
+ {
4913
+ "name": "Sebastian Bergmann",
4914
+ "email": "sebastian@phpunit.de"
4915
+ }
4916
+ ],
4917
+ "description": "Provides a list of PHP built-in functions that operate on resources",
4918
+ "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
4919
+ "support": {
4920
+ "issues": "https://github.com/sebastianbergmann/resource-operations/issues",
4921
+ "source": "https://github.com/sebastianbergmann/resource-operations/tree/2.0.2"
4922
+ },
4923
+ "funding": [
4924
+ {
4925
+ "url": "https://github.com/sebastianbergmann",
4926
+ "type": "github"
4927
+ }
4928
+ ],
4929
+ "time": "2020-11-30T07:30:19+00:00"
4930
+ },
4931
+ {
4932
+ "name": "sebastian/version",
4933
+ "version": "2.0.1",
4934
+ "source": {
4935
+ "type": "git",
4936
+ "url": "https://github.com/sebastianbergmann/version.git",
4937
+ "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
4938
+ },
4939
+ "dist": {
4940
+ "type": "zip",
4941
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
4942
+ "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
4943
+ "shasum": ""
4944
+ },
4945
+ "require": {
4946
+ "php": ">=5.6"
4947
+ },
4948
+ "type": "library",
4949
+ "extra": {
4950
+ "branch-alias": {
4951
+ "dev-master": "2.0.x-dev"
4952
+ }
4953
+ },
4954
+ "autoload": {
4955
+ "classmap": [
4956
+ "src/"
4957
+ ]
4958
+ },
4959
+ "notification-url": "https://packagist.org/downloads/",
4960
+ "license": [
4961
+ "BSD-3-Clause"
4962
+ ],
4963
+ "authors": [
4964
+ {
4965
+ "name": "Sebastian Bergmann",
4966
+ "email": "sebastian@phpunit.de",
4967
+ "role": "lead"
4968
+ }
4969
+ ],
4970
+ "description": "Library that helps with managing the version number of Git-hosted PHP projects",
4971
+ "homepage": "https://github.com/sebastianbergmann/version",
4972
+ "support": {
4973
+ "issues": "https://github.com/sebastianbergmann/version/issues",
4974
+ "source": "https://github.com/sebastianbergmann/version/tree/master"
4975
+ },
4976
+ "time": "2016-10-03T07:35:21+00:00"
4977
+ },
4978
+ {
4979
+ "name": "squizlabs/php_codesniffer",
4980
+ "version": "3.6.2",
4981
+ "source": {
4982
+ "type": "git",
4983
+ "url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
4984
+ "reference": "5e4e71592f69da17871dba6e80dd51bce74a351a"
4985
+ },
4986
+ "dist": {
4987
+ "type": "zip",
4988
+ "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/5e4e71592f69da17871dba6e80dd51bce74a351a",
4989
+ "reference": "5e4e71592f69da17871dba6e80dd51bce74a351a",
4990
+ "shasum": ""
4991
+ },
4992
+ "require": {
4993
+ "ext-simplexml": "*",
4994
+ "ext-tokenizer": "*",
4995
+ "ext-xmlwriter": "*",
4996
+ "php": ">=5.4.0"
4997
+ },
4998
+ "require-dev": {
4999
+ "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
5000
+ },
5001
+ "bin": [
5002
+ "bin/phpcs",
5003
+ "bin/phpcbf"
5004
+ ],
5005
+ "type": "library",
5006
+ "extra": {
5007
+ "branch-alias": {
5008
+ "dev-master": "3.x-dev"
5009
+ }
5010
+ },
5011
+ "notification-url": "https://packagist.org/downloads/",
5012
+ "license": [
5013
+ "BSD-3-Clause"
5014
+ ],
5015
+ "authors": [
5016
+ {
5017
+ "name": "Greg Sherwood",
5018
+ "role": "lead"
5019
+ }
5020
+ ],
5021
+ "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.",
5022
+ "homepage": "https://github.com/squizlabs/PHP_CodeSniffer",
5023
+ "keywords": [
5024
+ "phpcs",
5025
+ "standards"
5026
+ ],
5027
+ "support": {
5028
+ "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues",
5029
+ "source": "https://github.com/squizlabs/PHP_CodeSniffer",
5030
+ "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki"
5031
+ },
5032
+ "time": "2021-12-12T21:44:58+00:00"
5033
+ },
5034
+ {
5035
+ "name": "symfony/polyfill-php73",
5036
+ "version": "v1.26.0",
5037
+ "source": {
5038
+ "type": "git",
5039
+ "url": "https://github.com/symfony/polyfill-php73.git",
5040
+ "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85"
5041
+ },
5042
+ "dist": {
5043
+ "type": "zip",
5044
+ "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/e440d35fa0286f77fb45b79a03fedbeda9307e85",
5045
+ "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85",
5046
+ "shasum": ""
5047
+ },
5048
+ "require": {
5049
+ "php": ">=7.1"
5050
+ },
5051
+ "type": "library",
5052
+ "extra": {
5053
+ "branch-alias": {
5054
+ "dev-main": "1.26-dev"
5055
+ },
5056
+ "thanks": {
5057
+ "name": "symfony/polyfill",
5058
+ "url": "https://github.com/symfony/polyfill"
5059
+ }
5060
+ },
5061
+ "autoload": {
5062
+ "files": [
5063
+ "bootstrap.php"
5064
+ ],
5065
+ "psr-4": {
5066
+ "Symfony\\Polyfill\\Php73\\": ""
5067
+ },
5068
+ "classmap": [
5069
+ "Resources/stubs"
5070
+ ]
5071
+ },
5072
+ "notification-url": "https://packagist.org/downloads/",
5073
+ "license": [
5074
+ "MIT"
5075
+ ],
5076
+ "authors": [
5077
+ {
5078
+ "name": "Nicolas Grekas",
5079
+ "email": "p@tchwork.com"
5080
+ },
5081
+ {
5082
+ "name": "Symfony Community",
5083
+ "homepage": "https://symfony.com/contributors"
5084
+ }
5085
+ ],
5086
+ "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions",
5087
+ "homepage": "https://symfony.com",
5088
+ "keywords": [
5089
+ "compatibility",
5090
+ "polyfill",
5091
+ "portable",
5092
+ "shim"
5093
+ ],
5094
+ "support": {
5095
+ "source": "https://github.com/symfony/polyfill-php73/tree/v1.26.0"
5096
+ },
5097
+ "funding": [
5098
+ {
5099
+ "url": "https://symfony.com/sponsor",
5100
+ "type": "custom"
5101
+ },
5102
+ {
5103
+ "url": "https://github.com/fabpot",
5104
+ "type": "github"
5105
+ },
5106
+ {
5107
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
5108
+ "type": "tidelift"
5109
+ }
5110
+ ],
5111
+ "time": "2022-05-24T11:49:31+00:00"
5112
+ },
5113
+ {
5114
+ "name": "symfony/process",
5115
+ "version": "v5.4.8",
5116
+ "source": {
5117
+ "type": "git",
5118
+ "url": "https://github.com/symfony/process.git",
5119
+ "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3"
5120
+ },
5121
+ "dist": {
5122
+ "type": "zip",
5123
+ "url": "https://api.github.com/repos/symfony/process/zipball/597f3fff8e3e91836bb0bd38f5718b56ddbde2f3",
5124
+ "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3",
5125
+ "shasum": ""
5126
+ },
5127
+ "require": {
5128
+ "php": ">=7.2.5",
5129
+ "symfony/polyfill-php80": "^1.16"
5130
+ },
5131
+ "type": "library",
5132
+ "autoload": {
5133
+ "psr-4": {
5134
+ "Symfony\\Component\\Process\\": ""
5135
+ },
5136
+ "exclude-from-classmap": [
5137
+ "/Tests/"
5138
+ ]
5139
+ },
5140
+ "notification-url": "https://packagist.org/downloads/",
5141
+ "license": [
5142
+ "MIT"
5143
+ ],
5144
+ "authors": [
5145
+ {
5146
+ "name": "Fabien Potencier",
5147
+ "email": "fabien@symfony.com"
5148
+ },
5149
+ {
5150
+ "name": "Symfony Community",
5151
+ "homepage": "https://symfony.com/contributors"
5152
+ }
5153
+ ],
5154
+ "description": "Executes commands in sub-processes",
5155
+ "homepage": "https://symfony.com",
5156
+ "support": {
5157
+ "source": "https://github.com/symfony/process/tree/v5.4.8"
5158
+ },
5159
+ "funding": [
5160
+ {
5161
+ "url": "https://symfony.com/sponsor",
5162
+ "type": "custom"
5163
+ },
5164
+ {
5165
+ "url": "https://github.com/fabpot",
5166
+ "type": "github"
5167
+ },
5168
+ {
5169
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
5170
+ "type": "tidelift"
5171
+ }
5172
+ ],
5173
+ "time": "2022-04-08T05:07:18+00:00"
5174
+ },
5175
+ {
5176
+ "name": "szepeviktor/phpstan-wordpress",
5177
+ "version": "v1.1.1",
5178
+ "source": {
5179
+ "type": "git",
5180
+ "url": "https://github.com/szepeviktor/phpstan-wordpress.git",
5181
+ "reference": "99cfea6b4c15af12dec09110b25dbc7521363f78"
5182
+ },
5183
+ "dist": {
5184
+ "type": "zip",
5185
+ "url": "https://api.github.com/repos/szepeviktor/phpstan-wordpress/zipball/99cfea6b4c15af12dec09110b25dbc7521363f78",
5186
+ "reference": "99cfea6b4c15af12dec09110b25dbc7521363f78",
5187
+ "shasum": ""
5188
+ },
5189
+ "require": {
5190
+ "php": "^7.2 || ^8.0",
5191
+ "php-stubs/wordpress-stubs": "^4.7 || ^5.0",
5192
+ "phpstan/phpstan": "^1.6",
5193
+ "symfony/polyfill-php73": "^1.12.0"
5194
+ },
5195
+ "require-dev": {
5196
+ "composer/composer": "^2.1.14",
5197
+ "dealerdirect/phpcodesniffer-composer-installer": "^0.7",
5198
+ "php-parallel-lint/php-parallel-lint": "^1.1",
5199
+ "phpstan/phpstan-strict-rules": "^1.2",
5200
+ "phpunit/phpunit": "^8 || ^9",
5201
+ "szepeviktor/phpcs-psr-12-neutron-hybrid-ruleset": "^0.6"
5202
+ },
5203
+ "type": "phpstan-extension",
5204
+ "extra": {
5205
+ "phpstan": {
5206
+ "includes": [
5207
+ "extension.neon"
5208
+ ]
5209
+ }
5210
+ },
5211
+ "autoload": {
5212
+ "psr-4": {
5213
+ "SzepeViktor\\PHPStan\\WordPress\\": "src/"
5214
+ }
5215
+ },
5216
+ "notification-url": "https://packagist.org/downloads/",
5217
+ "license": [
5218
+ "MIT"
5219
+ ],
5220
+ "description": "WordPress extensions for PHPStan",
5221
+ "keywords": [
5222
+ "PHPStan",
5223
+ "code analyse",
5224
+ "code analysis",
5225
+ "static analysis",
5226
+ "wordpress"
5227
+ ],
5228
+ "support": {
5229
+ "issues": "https://github.com/szepeviktor/phpstan-wordpress/issues",
5230
+ "source": "https://github.com/szepeviktor/phpstan-wordpress/tree/v1.1.1"
5231
+ },
5232
+ "funding": [
5233
+ {
5234
+ "url": "https://www.paypal.me/szepeviktor",
5235
+ "type": "custom"
5236
+ }
5237
+ ],
5238
+ "time": "2022-05-11T18:41:40+00:00"
5239
+ },
5240
+ {
5241
+ "name": "theseer/tokenizer",
5242
+ "version": "1.2.1",
5243
+ "source": {
5244
+ "type": "git",
5245
+ "url": "https://github.com/theseer/tokenizer.git",
5246
+ "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e"
5247
+ },
5248
+ "dist": {
5249
+ "type": "zip",
5250
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e",
5251
+ "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e",
5252
+ "shasum": ""
5253
+ },
5254
+ "require": {
5255
+ "ext-dom": "*",
5256
+ "ext-tokenizer": "*",
5257
+ "ext-xmlwriter": "*",
5258
+ "php": "^7.2 || ^8.0"
5259
+ },
5260
+ "type": "library",
5261
+ "autoload": {
5262
+ "classmap": [
5263
+ "src/"
5264
+ ]
5265
+ },
5266
+ "notification-url": "https://packagist.org/downloads/",
5267
+ "license": [
5268
+ "BSD-3-Clause"
5269
+ ],
5270
+ "authors": [
5271
+ {
5272
+ "name": "Arne Blankerts",
5273
+ "email": "arne@blankerts.de",
5274
+ "role": "Developer"
5275
+ }
5276
+ ],
5277
+ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
5278
+ "support": {
5279
+ "issues": "https://github.com/theseer/tokenizer/issues",
5280
+ "source": "https://github.com/theseer/tokenizer/tree/1.2.1"
5281
+ },
5282
+ "funding": [
5283
+ {
5284
+ "url": "https://github.com/theseer",
5285
+ "type": "github"
5286
+ }
5287
+ ],
5288
+ "time": "2021-07-28T10:34:58+00:00"
5289
+ },
5290
+ {
5291
+ "name": "webmozart/assert",
5292
+ "version": "1.11.0",
5293
+ "source": {
5294
+ "type": "git",
5295
+ "url": "https://github.com/webmozarts/assert.git",
5296
+ "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991"
5297
+ },
5298
+ "dist": {
5299
+ "type": "zip",
5300
+ "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991",
5301
+ "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991",
5302
+ "shasum": ""
5303
+ },
5304
+ "require": {
5305
+ "ext-ctype": "*",
5306
+ "php": "^7.2 || ^8.0"
5307
+ },
5308
+ "conflict": {
5309
+ "phpstan/phpstan": "<0.12.20",
5310
+ "vimeo/psalm": "<4.6.1 || 4.6.2"
5311
+ },
5312
+ "require-dev": {
5313
+ "phpunit/phpunit": "^8.5.13"
5314
+ },
5315
+ "type": "library",
5316
+ "extra": {
5317
+ "branch-alias": {
5318
+ "dev-master": "1.10-dev"
5319
+ }
5320
+ },
5321
+ "autoload": {
5322
+ "psr-4": {
5323
+ "Webmozart\\Assert\\": "src/"
5324
+ }
5325
+ },
5326
+ "notification-url": "https://packagist.org/downloads/",
5327
+ "license": [
5328
+ "MIT"
5329
+ ],
5330
+ "authors": [
5331
+ {
5332
+ "name": "Bernhard Schussek",
5333
+ "email": "bschussek@gmail.com"
5334
+ }
5335
+ ],
5336
+ "description": "Assertions to validate method input/output with nice error messages.",
5337
+ "keywords": [
5338
+ "assert",
5339
+ "check",
5340
+ "validate"
5341
+ ],
5342
+ "support": {
5343
+ "issues": "https://github.com/webmozarts/assert/issues",
5344
+ "source": "https://github.com/webmozarts/assert/tree/1.11.0"
5345
+ },
5346
+ "time": "2022-06-03T18:03:27+00:00"
5347
+ },
5348
+ {
5349
+ "name": "yoast/phpunit-polyfills",
5350
+ "version": "1.0.3",
5351
+ "source": {
5352
+ "type": "git",
5353
+ "url": "https://github.com/Yoast/PHPUnit-Polyfills.git",
5354
+ "reference": "5ea3536428944955f969bc764bbe09738e151ada"
5355
+ },
5356
+ "dist": {
5357
+ "type": "zip",
5358
+ "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/5ea3536428944955f969bc764bbe09738e151ada",
5359
+ "reference": "5ea3536428944955f969bc764bbe09738e151ada",
5360
+ "shasum": ""
5361
+ },
5362
+ "require": {
5363
+ "php": ">=5.4",
5364
+ "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.0"
5365
+ },
5366
+ "require-dev": {
5367
+ "yoast/yoastcs": "^2.2.0"
5368
+ },
5369
+ "type": "library",
5370
+ "extra": {
5371
+ "branch-alias": {
5372
+ "dev-main": "1.x-dev",
5373
+ "dev-develop": "1.x-dev"
5374
+ }
5375
+ },
5376
+ "autoload": {
5377
+ "files": [
5378
+ "phpunitpolyfills-autoload.php"
5379
+ ]
5380
+ },
5381
+ "notification-url": "https://packagist.org/downloads/",
5382
+ "license": [
5383
+ "BSD-3-Clause"
5384
+ ],
5385
+ "authors": [
5386
+ {
5387
+ "name": "Team Yoast",
5388
+ "email": "support@yoast.com",
5389
+ "homepage": "https://yoast.com"
5390
+ },
5391
+ {
5392
+ "name": "Contributors",
5393
+ "homepage": "https://github.com/Yoast/PHPUnit-Polyfills/graphs/contributors"
5394
+ }
5395
+ ],
5396
+ "description": "Set of polyfills for changed PHPUnit functionality to allow for creating PHPUnit cross-version compatible tests",
5397
+ "homepage": "https://github.com/Yoast/PHPUnit-Polyfills",
5398
+ "keywords": [
5399
+ "phpunit",
5400
+ "polyfill",
5401
+ "testing"
5402
+ ],
5403
+ "support": {
5404
+ "issues": "https://github.com/Yoast/PHPUnit-Polyfills/issues",
5405
+ "source": "https://github.com/Yoast/PHPUnit-Polyfills"
5406
+ },
5407
+ "time": "2021-11-23T01:37:03+00:00"
5408
  }
5409
  ],
 
5410
  "aliases": [],
5411
  "minimum-stability": "stable",
5412
  "stability-flags": {
5415
  "prefer-stable": true,
5416
  "prefer-lowest": false,
5417
  "platform": [],
5418
+ "platform-dev": [],
5419
+ "plugin-api-version": "2.1.0"
5420
  }
dist/admin/js/index.min.js CHANGED
@@ -1,3 +1,3 @@
1
  /*! For license information please see index.min.js.LICENSE.txt */
2
- !function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s=4)}([function(e,t,i){"use strict";i.r(t),i.d(t,"error_modal",(function(){return a})),i.d(t,"next_tab",(function(){return r})),i.d(t,"doShortText",(function(){return l})),i.d(t,"show_ajax_error",(function(){return u})),i.d(t,"ID",(function(){return d})),i.d(t,"getUrlParam",(function(){return c}));var n=i(2),s=i(3),o=i(1);let a;document.addEventListener("DOMContentLoaded",(function(){var e=document.querySelector("#error_modal");a=M.Modal.init(e)})),jQuery,jQuery(document).ready((function(){jQuery(".tooltipped").tooltip(),jQuery(".collapsible").collapsible(),jQuery("span.shorten_string").click((function(){jQuery(this).toggleClass("full"),l(jQuery(this))})),jQuery("span.shorten_string").each((function(){l(jQuery(this))})),jQuery("#xcloner_regex_exclude").on("focus",(function(){jQuery("ul.xcloner_regex_exclude_limit li").fadeIn()})),jQuery(".regex_pattern").on("click",(function(){jQuery(this).select()})),jQuery(".btn.system_info_toggle").on("click",(function(){jQuery(".additional_system_info").toggle()})),jQuery("a.download-logger").on("click",(function(e){var t=new o.Xcloner_Manage_Backups,i=jQuery(this).attr("href").substr(1);i&&t.download_backup_by_name(i),e.preventDefault()})),jQuery(".nav-tab-wrapper.content li").on("click",(function(e){jQuery(".nav-tab-wrapper li a").removeClass("nav-tab-active"),jQuery(this).find("a").addClass("nav-tab-active"),jQuery(".nav-tab-wrapper-content .tab-content").removeClass("active"),jQuery(".nav-tab-wrapper-content "+jQuery(this).find("a").attr("href")).addClass("active"),e.preventDefault(),location.hash=jQuery(this).find("a").attr("href")+"_hash"}));var e=window.location.hash;e&&r(e.replace("_hash",""))}));const r=function(e){jQuery(".nav-tab-wrapper").find("li a[href='"+e+"']").trigger("click"),location.hash=e},l=function(e){if(e.hasClass("full"))e.text(e.attr("data-text"));else{var t=e.text(),i=t.length,n=t.substr(0,10),s=t.substr(i-20,i);e.attr("data-text",t).text(n+"..."+s)}},u=function(e,t,i){"undefined"!=typeof xcloner_backup&&xcloner_backup.cancel_backup(),i&&void 0!==i.responseText&&(t=t+": "+i.responseText),jQuery("#error_modal .title").text(e),jQuery("#error_modal .msg").text(t),i&&i.status&&jQuery("#error_modal .status").text(i.status+" "+i.statusText),jQuery("#error_modal .body").text(JSON.stringify(i)),a.open()},d=function(){return"_"+Math.random().toString(36).substr(2,9)},c=function(e){return(location.search.split(e+"=")[1]||"").split("&")[0]};jQuery(document).ready((function(){window.remote_storage=new n.Xcloner_Remote_Storage,window.xcloner_backup=new s.Xcloner_Backup,window.xcloner_manage_backups=new o.Xcloner_Manage_Backups,window.ID=d,window.getUrlParam=c,window.show_ajax_error=u,window.doShortText=l,window.dataTable=null,window.next_tab=r}))},function(e,t,i){"use strict";i.r(t),i.d(t,"Xcloner_Manage_Backups",(function(){return l}));var n,s,o,a,r;i(0);document.addEventListener("DOMContentLoaded",(function(){var e=document.querySelector("#backup_cotent_modal");n=M.Modal.init(e);e=document.querySelector("#backup_encryption_modal");s=M.Modal.init(e);e=document.querySelector("#backup_decryption_modal");o=M.Modal.init(e);e=document.querySelector("#remote_storage_modal");a=M.Modal.init(e);e=document.querySelector("#local_storage_upload_modal");r=M.Modal.init(e)}));class l{constructor(){this.file_counter=0,this.storage_selection="",this.dataTable=""}download_backup_by_name(e){return window.open(XCLONER_AJAXURL+"&action=download_backup_by_name&name="+e+"&storage_selection="+this.storage_selection),!1}delete_backup_by_name(e,t,i){e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"delete_backup_by_name",name:e,storage_selection:this.storage_selection},success:function(e){e.finished?i.row(jQuery(t).parents("tr")).remove().draw():alert("There was an error deleting the file")},dataType:"json"})}list_backup_content_callback(e,t=0,i=0){var n=this;e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"list_backup_files",file:e,start:t,part:i},success:function(t){if(t.error)return jQuery("#backup_cotent_modal .files-list").addClass("error").prepend(t.message),void jQuery("#backup_cotent_modal .progress > div").addClass("determinate").removeClass(".indeterminate").css("width","100%");var i=[];for(var s in t.files){if(void 0!==t.total_size)parseInt(100*t.start),parseInt(t.total_size);n.file_counter++,i[s]="<li>"+n.file_counter+". <span title='"+t.files[s].mtime+"'>"+t.files[s].path+"</span> ("+t.files[s].size+" bytes)</li>"}jQuery("#backup_cotent_modal .modal-content .files-list").prepend(i.reverse().join("\n")),!t.finished&&jQuery("#backup_cotent_modal").is(":visible")?n.list_backup_content_callback(e,t.start,t.part):jQuery("#backup_cotent_modal .progress > div").addClass("determinate").removeClass(".indeterminate").css("width","100%")},error:function(e,t,i){jQuery("#backup_cotent_modal .files-list").addClass("error").prepend(t+i)},dataType:"json"})}list_backup_content(e){this.file_counter=0,jQuery("#backup_cotent_modal .modal-content .files-list").text("").removeClass("error"),jQuery("#backup_cotent_modal .modal-content .backup-name").text(e),n.open(),jQuery("#backup_cotent_modal .progress > div").removeClass("determinate").addClass("indeterminate"),this.list_backup_content_callback(e)}backup_encryption_callback(e,t=0,i=0,n=0){var s=this;e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"backup_encryption",file:e,start:t,part:i,iv:n},success:function(t){if(void 0!==t.total_size){jQuery("#backup_encryption_modal .progress > div").removeClass("indeterminate").addClass("determinate");var i=parseInt(100*t.start)/parseInt(t.total_size);jQuery("#backup_encryption_modal .progress .determinate").css("width",parseInt(i)+"%"),jQuery("#backup_encryption_modal .modal-content .files-list").text("Encrypting "+t.processing_file+" "+parseInt(i)+"%")}if(t.error)return jQuery("#backup_encryption_modal .notice").show(),jQuery("#backup_encryption_modal .files-list").addClass("error").prepend(t.message+" "),void jQuery("#backup_encryption_modal .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%");!t.finished&&jQuery("#backup_encryption_modal").is(":visible")?s.backup_encryption_callback(e,t.start,t.part,t.iv):(jQuery("#backup_encryption_modal .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%"),jQuery("#backup_encryption_modal .modal-content .files-list").text("Done Encrypting."),dataTable.ajax.reload())},error:function(e,t,i){jQuery("#backup_encryption_modal .files-list").addClass("error").prepend(t+i)},dataType:"json"})}backup_encryption(e,t=0){this.file_counter=0,jQuery("#backup_encryption_modal .modal-content .backup-name").text(e),s.open(),jQuery("#backup_encryption_modal .progress > div"),jQuery("#backup_encryption_modal .notice").show(),jQuery("#backup_encryption_modal a.btn").attr("onclick","xcloner_manage_backups.backup_encryption('"+e+"', true)"),jQuery("#backup_encryption_modal .modal-content .files-list").text("").removeClass("error"),t&&(jQuery("#backup_encryption_modal .notice").hide(),this.backup_encryption_callback(e))}backup_decryption_callback(e,t=0,i=0,n=0){var s=this,o=jQuery("#backup_decryption_modal #decryption_key").val();e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"backup_decryption",file:e,start:t,part:i,iv:n,decryption_key:o},success:function(t){if(t.start||(t.start=0),void 0!==t.total_size){jQuery("#backup_decryption_modal .progress > div").removeClass("indeterminate").addClass("determinate");var i=parseInt(100*t.start)/parseInt(t.total_size);jQuery("#backup_decryption_modal .progress .determinate").css("width",parseInt(i)+"%"),jQuery("#backup_decryption_modal .modal-content .files-list").text("Decrypting "+t.processing_file+" "+parseInt(i)+"%")}if(t.error)return jQuery("#backup_decryption_modal .files-list").addClass("error").prepend(t.message+" "),jQuery("#backup_decryption_modal .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%"),void jQuery("#backup_decryption_modal .notice").show();!t.finished&&jQuery("#backup_decryption_modal").is(":visible")?s.backup_decryption_callback(e,t.start,t.part,t.iv):(jQuery("#backup_decryption_modal .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%"),jQuery("#backup_decryption_modal .modal-content .files-list").text("Done Decrypting."),dataTable.ajax.reload())},error:function(e,t,i){jQuery("#backup_decryption_modal .files-list").addClass("error").prepend(t+i)},dataType:"json"})}backup_decryption(e,t=0){this.file_counter=0,jQuery("#backup_decryption_modal .modal-content .backup-name").text(e),o.open(),jQuery("#backup_decryption_modal .progress > div"),jQuery("#backup_decryption_modal .notice").show(),jQuery("#backup_decryption_modal a.btn").attr("onclick","xcloner_manage_backups.backup_decryption('"+e+"', true)"),jQuery("#backup_decryption_modal .modal-content .files-list").text("").removeClass("error"),t&&(jQuery("#backup_decryption_modal .notice").hide(),this.backup_decryption_callback(e))}cloud_upload(e,t){t=t||0,jQuery("#remote_storage_modal").find(".backup_name").text(e),jQuery("#remote_storage_modal").find("input.backup_name").val(e),M.updateTextFields(),jQuery(".col select").formSelect(),a.open(),jQuery("#remote_storage_modal .status").hide(),jQuery(".remote-storage-form").off("submit").on("submit",(function(){jQuery("#remote_storage_modal .status").show(),jQuery("#remote_storage_modal .status .progress .indeterminate").removeClass("determinate").css("width","0%"),jQuery("#remote_storage_modal .status-text").removeClass("error").text("");var i=jQuery("#remote_storage_modal select").val();return e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"upload_backup_to_remote",file:e,storage_type:i,delete_after_transfer:t},success:function(e){e.error?jQuery("#remote_storage_modal .status-text").addClass("error").text(e.message):jQuery("#remote_storage_modal .status-text").removeClass("error").text("done"),jQuery("#remote_storage_modal .status .progress .indeterminate").addClass("determinate").css("width","100%")},error:function(e,t,i){jQuery("#remote_storage_modal .status-text").addClass("error").text(t+i)},dataType:"json"}),!1}))}copy_remote_to_local(e){r.open(),jQuery("#local_storage_upload_modal .modal-content .backup-name").text(e),jQuery("#local_storage_upload_modal .status-text").removeClass("error").text(""),jQuery("#local_storage_upload_modal .status .progress .indeterminate").removeClass("determinate").css("width","0%"),e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"copy_backup_remote_to_local",file:e,storage_type:this.storage_selection},success:function(e){e.error?jQuery("#local_storage_upload_modal .status-text").addClass("error").text(e.message):jQuery("#local_storage_upload_modal .status-text").removeClass("error").text("done"),jQuery("#local_storage_upload_modal .status .progress .indeterminate").addClass("determinate").css("width","100%")},error:function(e,t,i){jQuery("#local_storage_upload_modal .status-text").addClass("error").text(t+i)},dataType:"json"})}}},function(e,t,i){"use strict";i.r(t),i.d(t,"Xcloner_Remote_Storage",(function(){return n}));class n{constructor(){}toggle_status(e){var t=jQuery(e).attr("name"),i=0;jQuery(e).is(":checked")&&(i=1),t&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"remote_storage_save_status",id:t,value:i},success:function(e){e.finished||alert("Error changing status")},dataType:"json"})}}},function(e,t,i){"use strict";i.r(t),i.d(t,"Xcloner_Backup",(function(){return n}));class n{constructor(){this.cancel=0,this.params,this.generate_hash=!1,this.last_dumpfile="",this.last_backup_file="",this.backup_part=0,this.backup_size_total=0,this.resume=new Object}get_form_params(){var e=[],t=[];jQuery.each(jQuery("#jstree_database_container").jstree("get_checked",!0),(function(){var t=new Object;t.id=this.id,t.parent=this.parent;var i=e.length;e[i]=t})),jQuery.each(jQuery("#jstree_files_container").jstree("get_checked",!0),(function(){var e=new Object;e.id=this.id,e.parent=this.parent;var i=t.length;t[i]=e}));var i=new Object;return i.table_params=e,i.files_params=t,i.backup_params=jQuery("#generate_backup_form").serializeArray(),i}do_backup_database_callback(e,t,i){if(i.extra&&(this.params.extra=i.extra),i.extra.stats&&(void 0!==i.extra.stats.tables_count&&jQuery(e).find(".table-counter").text(parseInt(i.extra.stats.tables_count)),void 0!==i.extra.stats.database_count&&jQuery(e).find(".database-counter").text(parseInt(i.extra.stats.database_count)),void 0!==i.extra.stats.total_records&&jQuery(e).find(".total-records").text(parseInt(i.extra.stats.total_records))),i.extra.tableName&&jQuery(e).find(".last-logged-table").text(i.extra.databaseName+"."+i.extra.tableName+" ("+i.extra.processedRecords+" records)"),void 0!==i.extra.processedRecords&&!i.extra.startAtRecord&&!i.extra.endDump){var n=parseInt(jQuery(e).find(".total-records").attr("data-processed"))+parseInt(i.extra.processedRecords),s=100*parseInt(n)/parseInt(jQuery(e).find(".total-records").text());jQuery(e).find(".progress .determinate").css("width",s+"%"),jQuery(e).find(".total-records").attr("data-processed",n),jQuery(e).find(".status-body ul.logged-tables").prepend(jQuery("<li>").text(i.extra.databaseName+"."+i.extra.tableName+" ("+i.extra.processedRecords+" records)"))}if(void 0!==i.extra.dumpfile){var o=i.extra.dumpfile+" ("+this.getSize(i.extra.dumpsize,1024)+" KB)";jQuery(this.last_dumpfile).hasClass(i.extra.dumpfile)?jQuery(this.last_dumpfile).html(o):this.last_dumpfile=jQuery("<li>").addClass(i.extra.dumpfile).html(o).prependTo("ul.logged-databases")}if(!i.finished)return this.do_ajax(e,t),!1;jQuery(e).find(".last-logged-table").text("done"),jQuery(e).find(".progress .determinate").css("width","100%"),this.do_backup_files()}do_backup_database(){if(jQuery("#jstree_database_container").length){var e="#generate_backup ul.backup-status li.database-backup";jQuery(e).show(),jQuery(e).find(".collapsible-header").trigger("click"),jQuery(e).find(".total-records").text(0),jQuery(e).find(".total-records").attr("data-processed",0),jQuery(e).find(".table-counter").text(0),jQuery(e).find(".database-counter").text(0),jQuery(e).find(".logged-databases").html(""),jQuery(e).find(".logged-tables").html(""),this.last_dumpfile=0,jQuery(e).find(".progress .determinate").css("width","0%"),this.do_ajax(e,"backup_database",1)}else this.do_backup_files()}do_scan_filesystem_callback(e,t,i){if(i.total_files_num&&jQuery(".file-system .file-counter").text(parseInt(i.total_files_num)+parseInt(jQuery(".file-system .file-counter").text())),i.total_files_size){var n=parseFloat(i.total_files_size)+parseFloat(jQuery(".file-system .file-size-total").text());jQuery(".file-system .file-size-total").text(n.toFixed(2))}if(i.last_logged_file&&jQuery(".file-system .last-logged-file").text(i.last_logged_file),!i.finished)return this.do_ajax(e,t),!1;jQuery(e).find(".progress .indeterminate").removeClass("indeterminate").addClass("determinate").css("width","100%"),jQuery(".file-system .last-logged-file").text("done"),this.do_backup_database()}do_scan_filesystem(){var e="#generate_backup ul.backup-status li.file-system";jQuery(e).show(),jQuery(e+" .status-body").show(),jQuery(e).find(".collapsible-header").trigger("click"),jQuery(".file-system .file-counter").text(0),jQuery(".file-system .last-logged-file").text(""),jQuery(".file-system .file-size-total").text(0),jQuery(".file-system .progress div").removeClass("determinate").addClass("indeterminate").css("width","0%"),this.do_ajax(e,"scan_filesystem",1)}do_backup_files_callback(e,t,i){if(i.extra&&(this.params.extra=i.extra),i.extra&&(void 0!==i.extra.start_at_line&&jQuery(e).find(".file-counter").text(parseInt(i.extra.start_at_line)),void 0!==i.extra.start_at_line&&jQuery(e).find(".file-size-total").text(this.getSize(this.backup_size_total+parseInt(i.extra.backup_size)))),i.extra.processed_file){if(void 0!==i.extra.start_at_byte&&i.extra.start_at_byte)var n=i.extra.start_at_byte;else n=i.extra.processed_file_size;jQuery(e).find(".last-logged-file").text(i.extra.processed_file+" ("+this.getSize(n,1024)+" KB)")}if(void 0!==i.extra.processed_file){var s=i.extra.backup_archive_name_full+" ("+this.getSize(i.extra.backup_size)+") MB";this.backup_part!=i.extra.backup_part&&(this.backup_part=i.extra.backup_part,this.backup_size_total=this.backup_size_total+i.extra.backup_size),jQuery(this.last_backup_file).hasClass(i.extra.backup_archive_name)||(this.last_backup_file=jQuery("<li>").addClass(i.extra.backup_archive_name).html(s).prependTo(jQuery(e).find(".status-body .backup-name"))),jQuery(this.last_backup_file).html(s)}if(i.extra.lines_total){var o=100*parseInt(i.extra.start_at_line)/parseInt(i.extra.lines_total);jQuery(e).find(".progress .determinate").css("width",o+"%")}if(!i.finished)return this.do_ajax(e,t),!1;jQuery(e).find(".last-logged-file").text("done"),jQuery(".backup-done .cloud-upload").attr("href","#"+i.extra.backup_parent),jQuery(".backup-done .download").attr("href","#"+i.extra.backup_parent),jQuery(".backup-done .list-backup-content").attr("href","#"+i.extra.backup_parent),this.do_backup_encryption()||this.do_remote_storage_upload(i.extra.backup_parent)||this.do_backup_done(i.extra.backup_parent)}do_backup_files(){if(this.cancel)return!1;var e="#generate_backup ul.backup-status li.files-backup";jQuery(e).show(),jQuery(e+" .status-body").show(),jQuery(e).find(".collapsible-header").trigger("click"),jQuery(e).find(".file-size-total").text(0),jQuery(e).find(".file-size-total").attr("data-processed",0),jQuery(e).find(".file-counter").text(0),jQuery(e).find(".last-logged-file").text(""),jQuery(e).find(".progress .determinate").css("width","0%"),this.do_ajax(e,"backup_files",1)}do_backup_encryption_callback(e,t,i){if(i.extra&&(this.params.extra=i.extra),jQuery(".backup-encryption .last-logged-file").text("encrypting "+i.processing_file+" ..."),void 0!==i.total_size){jQuery(".backup-encryption .progress > div").removeClass("indeterminate").addClass("determinate");var n=parseInt(100*i.start)/parseInt(i.total_size);jQuery(".backup-encryption .progress .determinate").css("width",parseInt(n)+"%")}return i.error?(jQuery(".backup-encryption .status-body").show(),jQuery(".backup-encryption .status-body").addClass("error").prepend(i.message+" "),void jQuery(".backup-encryption .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%")):i.finished?(jQuery(e).find(".progress > div").css("width","100%"),jQuery(".backup-encryption .last-logged-file").text("done"),void(this.do_remote_storage_upload(i.processing_file)||this.do_backup_done(i.processing_file))):(this.do_ajax(e,t),!1)}do_backup_encryption(){if(this.cancel)return!1;if(!jQuery("#backup_options #backup_encrypt").is(":checked"))return!1;var e="#generate_backup ul.backup-status li.backup-encryption";return jQuery(e).show(),jQuery(e+" .status-body").show(),jQuery(e).find(".collapsible-header").trigger("click"),jQuery(e).find(".progress .determinate").removeClass("determinate").addClass("indeterminate"),this.do_ajax(e,"backup_encryption",1),!0}do_upload_backup_to_remote_callback(e,t,i){!i||i.error?(jQuery(e).find(".status").text(i.message),jQuery(e).find(".progress .indeterminate").removeClass("indeterminate").addClass("determinate").css("width","0%")):(jQuery(e).find(".status").text("done"),jQuery(e).find(".progress .indeterminate").removeClass("indeterminate").addClass("determinate").css("width","100%")),this.do_backup_done()}do_remote_storage_upload(e){if(this.cancel)return!1;var t=jQuery("#schedule_storage").val();if(!t)return!1;var i=Number(jQuery("#backup_delete_after_remote_transfer").is(":checked"));jQuery("#remote_storage_modal #transfer_storage").val(t);var n="#generate_backup ul.backup-status li.remote-storage-transfer";return jQuery(n).show(),jQuery(n+" .status-body").show(),jQuery(n).find(".collapsible-header").trigger("click"),jQuery(n).find(".progress .determinate").removeClass("determinate").addClass("indeterminate"),this.params.file=e,this.params.storage_type=t,this.params.delete_after_transfer=i,this.do_ajax(n,"upload_backup_to_remote",1),!0}do_backup_done(e){var t="#generate_backup ul.backup-status li.backup-done";jQuery(t).show(),jQuery(t+" .status-body").show(),jQuery(t).find(".collapsible-header").trigger("click"),this.set_cancel(!1),jQuery("#generate_backup .action-buttons a").hide(),jQuery("#generate_backup .action-buttons .start").css("display","inline-block")}do_save_schedule_callback(e,t,i){jQuery("#schedule_backup_success").show()}cancel_backup(){this.set_cancel(!0),jQuery("#generate_backup .action-buttons a").hide(),jQuery("#generate_backup .action-buttons .start").css("display","inline-block"),jQuery("#generate_backup .action-buttons .restart").css("display","inline-block")}restart_backup(){if(this.set_cancel(!1),jQuery("#generate_backup .action-buttons a").hide(),jQuery("#generate_backup .action-buttons .cancel").css("display","inline-block"),this.resume.action)return this.do_ajax(this.resume.elem,this.resume.action,this.resume.params),void(this.resume=new Object);this.start_backup()}start_backup(){this.resume=new Object,this.set_cancel(!1),jQuery("#generate_backup .action-buttons a").hide(),jQuery("#generate_backup .action-buttons .cancel").css("display","inline-block"),this.generate_hash=!0,this.backup_size_total=0,this.last_backup_file="",this.backup_part=0,jQuery("#generate_backup ul.backup-name li").remove(),jQuery("#generate_backup ul.backup-status > li").hide(),jQuery("#generate_backup .backup-status").show(),this.params=this.get_form_params(),this.do_scan_filesystem()}set_cancel(e){this.cancel=e}get_cancel(e){return this.cancel}init_resume(e,t,i){this.resume.elem=e,this.resume.action=t,this.resume.init=i}do_ajax(e,t,i=0){let n="";if(void 0!==this.params.hash?n=this.params.hash:this.generate_hash&&(n="generate_hash"),1!=this.cancel){var s="do_"+t+"_callback",o=JSON.stringify(this.params),a=this;jQuery.ajax({url:XCLONER_AJAXURL,dataType:"json",type:"POST",data:{action:t,data:o,init:i,hash:n,API_ID:ID()},error:function(n){show_ajax_error("Communication Error","",n),a.init_resume(e,t,i)}}).done((function(n){if(n.hash&&(a.params.hash=n.hash),void 0!==n.error)return show_ajax_error("Communication Error","",n.error_message),void a.init_resume(e,t,i);a.resume=new Object,a[s](e,t,n)}))}else this.init_resume(e,t,i)}getSize(e,t=1048576){return(e/t).toFixed(2)}}},function(e,t,i){i(5),i(0),i(3),i(1),i(2),i(7),i(8)},function(e,t,i){(function(i){var n,s=function e(t,i,n){null===t&&(t=Function.prototype);var s=Object.getOwnPropertyDescriptor(t,i);if(void 0===s){var o=Object.getPrototypeOf(t);return null===o?void 0:e(o,i,n)}if("value"in s)return s.value;var a=s.get;return void 0!==a?a.call(n):void 0},o=function(){function e(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,i,n){return i&&e(t.prototype,i),n&&e(t,n),t}}();function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}window.cash=function(){var e,t=document,i=window,n=Array.prototype,s=n.slice,o=n.filter,a=n.push,r=function(){},l=function(e){return typeof e==typeof r&&e.call},u=function(e){return"string"==typeof e},d=/^#[\w-]*$/,c=/^\.[\w-]*$/,h=/<.+>/,p=/^\w+$/;function v(e,i){return i=i||t,c.test(e)?i.getElementsByClassName(e.slice(1)):p.test(e)?i.getElementsByTagName(e):i.querySelectorAll(e)}function _(i){if(!e){var n=(e=t.implementation.createHTMLDocument(null)).createElement("base");n.href=t.location.href,e.head.appendChild(n)}return e.body.innerHTML=i,e.body.childNodes}function f(e){"loading"!==t.readyState?e():t.addEventListener("DOMContentLoaded",e)}function m(e,n){if(!e)return this;if(e.cash&&e!==i)return e;var s,o=e,a=0;if(u(e))o=d.test(e)?t.getElementById(e.slice(1)):h.test(e)?_(e):v(e,n);else if(l(e))return f(e),this;if(!o)return this;if(o.nodeType||o===i)this[0]=o,this.length=1;else for(s=this.length=o.length;a<s;a++)this[a]=o[a];return this}function y(e,t){return new m(e,t)}var g=y.fn=y.prototype=m.prototype={cash:!0,length:0,push:a,splice:n.splice,map:n.map,init:m};function b(e,t){for(var i=e.length,n=0;n<i&&!1!==t.call(e[n],e[n],n,e);n++);}function k(e,t){var i=e&&(e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector);return!!i&&i.call(e,t)}function w(e){return u(e)?k:e.cash?function(t){return e.is(t)}:function(e,t){return e===t}}function x(e){return y(s.call(e).filter((function(e,t,i){return i.indexOf(e)===t})))}Object.defineProperty(g,"constructor",{value:y}),y.parseHTML=_,y.noop=r,y.isFunction=l,y.isString=u,y.extend=g.extend=function(e){e=e||{};var t=s.call(arguments),i=t.length,n=1;for(1===t.length&&(e=this,n=0);n<i;n++)if(t[n])for(var o in t[n])t[n].hasOwnProperty(o)&&(e[o]=t[n][o]);return e},y.extend({merge:function(e,t){for(var i=+t.length,n=e.length,s=0;s<i;n++,s++)e[n]=t[s];return e.length=n,e},each:b,matches:k,unique:x,isArray:Array.isArray,isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)}});var C=y.uid="_cash"+Date.now();function E(e){return e[C]=e[C]||{}}function M(e,t,i){return E(e)[t]=i}function j(e,t){var i=E(e);return void 0===i[t]&&(i[t]=e.dataset?e.dataset[t]:y(e).attr("data-"+t)),i[t]}function O(e,t){var i=E(e);i?delete i[t]:e.dataset?delete e.dataset[t]:y(e).removeAttr("data-"+name)}g.extend({data:function(e,t){if(u(e))return void 0===t?j(this[0],e):this.each((function(i){return M(i,e,t)}));for(var i in e)this.data(i,e[i]);return this},removeData:function(e){return this.each((function(t){return O(t,e)}))}});var T=/\S+/g;function L(e){return u(e)&&e.match(T)}function D(e,t){return e.classList?e.classList.contains(t):new RegExp("(^| )"+t+"( |$)","gi").test(e.className)}function B(e,t,i){e.classList?e.classList.add(t):i.indexOf(" "+t+" ")&&(e.className+=" "+t)}function Q(e,t){e.classList?e.classList.remove(t):e.className=e.className.replace(t,"")}g.extend({addClass:function(e){var t=L(e);return t?this.each((function(e){var i=" "+e.className+" ";b(t,(function(t){B(e,t,i)}))})):this},attr:function(e,t){if(e){if(u(e))return void 0===t?this[0]?this[0].getAttribute?this[0].getAttribute(e):this[0][e]:void 0:this.each((function(i){i.setAttribute?i.setAttribute(e,t):i[e]=t}));for(var i in e)this.attr(i,e[i]);return this}},hasClass:function(e){var t=!1,i=L(e);return i&&i.length&&this.each((function(e){return!(t=D(e,i[0]))})),t},prop:function(e,t){if(u(e))return void 0===t?this[0][e]:this.each((function(i){i[e]=t}));for(var i in e)this.prop(i,e[i]);return this},removeAttr:function(e){return this.each((function(t){t.removeAttribute?t.removeAttribute(e):delete t[e]}))},removeClass:function(e){if(!arguments.length)return this.attr("class","");var t=L(e);return t?this.each((function(e){b(t,(function(t){Q(e,t)}))})):this},removeProp:function(e){return this.each((function(t){delete t[e]}))},toggleClass:function(e,t){if(void 0!==t)return this[t?"addClass":"removeClass"](e);var i=L(e);return i?this.each((function(e){var t=" "+e.className+" ";b(i,(function(i){D(e,i)?Q(e,i):B(e,i,t)}))})):this}}),g.extend({add:function(e,t){return x(y.merge(this,y(e,t)))},each:function(e){return b(this,e),this},eq:function(e){return y(this.get(e))},filter:function(e){if(!e)return this;var t=l(e)?e:w(e);return y(o.call(this,(function(i){return t(i,e)})))},first:function(){return this.eq(0)},get:function(e){return void 0===e?s.call(this):e<0?this[e+this.length]:this[e]},index:function(e){var t=e?y(e)[0]:this[0],i=e?this:y(t).parent().children();return s.call(i).indexOf(t)},last:function(){return this.eq(-1)}});var $,I,S,A,R=(S=/(?:^\w|[A-Z]|\b\w)/g,A=/[\s-_]+/g,function(e){return e.replace(S,(function(e,t){return e[0===t?"toLowerCase":"toUpperCase"]()})).replace(A,"")}),P=($={},I=document.createElement("div").style,function(e){if(e=R(e),$[e])return $[e];var t=e.charAt(0).toUpperCase()+e.slice(1);return b((e+" "+["webkit","moz","ms","o"].join(t+" ")+t).split(" "),(function(t){if(t in I)return $[t]=e=$[e]=t,!1})),$[e]});function H(e,t){return parseInt(i.getComputedStyle(e[0],null)[t],10)||0}function W(e,t,i){var n=j(e,"_cashEvents")||M(e,"_cashEvents",{});n[t]=n[t]||[],n[t].push(i),e.addEventListener(t,i)}function q(e,t,i){var n,s=j(e,"_cashEvents"),o=s&&s[t];o&&(i?(e.removeEventListener(t,i),(n=o.indexOf(i))>=0&&o.splice(n,1)):(b(o,(function(i){e.removeEventListener(t,i)})),o=[]))}function z(e,t){return"&"+encodeURIComponent(e)+"="+encodeURIComponent(t).replace(/%20/g,"+")}function F(e){var t=[];return b(e.options,(function(e){e.selected&&t.push(e.value)})),t.length?t:null}function N(e){var t=e.selectedIndex;return t>=0?e.options[t].value:null}function X(e){var t=e.type;if(!t)return null;switch(t.toLowerCase()){case"select-one":return N(e);case"select-multiple":return F(e);case"radio":case"checkbox":return e.checked?e.value:null;default:return e.value?e.value:null}}function V(e,t,i){if(i){var n=e.childNodes[0];e.insertBefore(t,n)}else e.appendChild(t)}function Y(e,t,i){var n=u(t);n||!t.length?b(e,n?function(e){return e.insertAdjacentHTML(i?"afterbegin":"beforeend",t)}:function(e,n){return V(e,0===n?t:t.cloneNode(!0),i)}):b(t,(function(t){return Y(e,t,i)}))}y.prefixedProp=P,y.camelCase=R,g.extend({css:function(e,t){if(u(e))return e=P(e),arguments.length>1?this.each((function(i){return i.style[e]=t})):i.getComputedStyle(this[0])[e];for(var n in e)this.css(n,e[n]);return this}}),b(["Width","Height"],(function(e){var t=e.toLowerCase();g[t]=function(){return this[0].getBoundingClientRect()[t]},g["inner"+e]=function(){return this[0]["client"+e]},g["outer"+e]=function(t){return this[0]["offset"+e]+(t?H(this,"margin"+("Width"===e?"Left":"Top"))+H(this,"margin"+("Width"===e?"Right":"Bottom")):0)}})),g.extend({off:function(e,t){return this.each((function(i){return q(i,e,t)}))},on:function(e,t,i,n){var s;if(!u(e)){for(var o in e)this.on(o,t,e[o]);return this}return l(t)&&(i=t,t=null),"ready"===e?(f(i),this):(t&&(s=i,i=function(e){for(var i=e.target;!k(i,t);){if(i===this||null===i)return!1;i=i.parentNode}i&&s.call(i,e)}),this.each((function(t){var s=i;n&&(s=function(){i.apply(this,arguments),q(t,e,s)}),W(t,e,s)})))},one:function(e,t,i){return this.on(e,t,i,!0)},ready:f,trigger:function(e,t){if(document.createEvent){var i=document.createEvent("HTMLEvents");return i.initEvent(e,!0,!1),i=this.extend(i,t),this.each((function(e){return e.dispatchEvent(i)}))}}}),g.extend({serialize:function(){var e="";return b(this[0].elements||this,(function(t){if(!t.disabled&&"FIELDSET"!==t.tagName){var i=t.name;switch(t.type.toLowerCase()){case"file":case"reset":case"submit":case"button":break;case"select-multiple":var n=X(t);null!==n&&b(n,(function(t){e+=z(i,t)}));break;default:var s=X(t);null!==s&&(e+=z(i,s))}}})),e.substr(1)},val:function(e){return void 0===e?X(this[0]):this.each((function(t){return t.value=e}))}}),g.extend({after:function(e){return y(e).insertAfter(this),this},append:function(e){return Y(this,e),this},appendTo:function(e){return Y(y(e),this),this},before:function(e){return y(e).insertBefore(this),this},clone:function(){return y(this.map((function(e){return e.cloneNode(!0)})))},empty:function(){return this.html(""),this},html:function(e){if(void 0===e)return this[0].innerHTML;var t=e.nodeType?e[0].outerHTML:e;return this.each((function(e){return e.innerHTML=t}))},insertAfter:function(e){var t=this;return y(e).each((function(e,i){var n=e.parentNode,s=e.nextSibling;t.each((function(e){n.insertBefore(0===i?e:e.cloneNode(!0),s)}))})),this},insertBefore:function(e){var t=this;return y(e).each((function(e,i){var n=e.parentNode;t.each((function(t){n.insertBefore(0===i?t:t.cloneNode(!0),e)}))})),this},prepend:function(e){return Y(this,e,!0),this},prependTo:function(e){return Y(y(e),this,!0),this},remove:function(){return this.each((function(e){if(e.parentNode)return e.parentNode.removeChild(e)}))},text:function(e){return void 0===e?this[0].textContent:this.each((function(t){return t.textContent=e}))}});var K=t.documentElement;return g.extend({position:function(){var e=this[0];return{left:e.offsetLeft,top:e.offsetTop}},offset:function(){var e=this[0].getBoundingClientRect();return{top:e.top+i.pageYOffset-K.clientTop,left:e.left+i.pageXOffset-K.clientLeft}},offsetParent:function(){return y(this[0].offsetParent)}}),g.extend({children:function(e){var t=[];return this.each((function(e){a.apply(t,e.children)})),t=x(t),e?t.filter((function(t){return k(t,e)})):t},closest:function(e){return!e||this.length<1?y():this.is(e)?this.filter(e):this.parent().closest(e)},is:function(e){if(!e)return!1;var t=!1,i=w(e);return this.each((function(n){return!(t=i(n,e))})),t},find:function(e){if(!e||e.nodeType)return y(e&&this.has(e).length?e:null);var t=[];return this.each((function(i){a.apply(t,v(e,i))})),x(t)},has:function(e){var t=u(e)?function(t){return 0!==v(e,t).length}:function(t){return t.contains(e)};return this.filter(t)},next:function(){return y(this[0].nextElementSibling)},not:function(e){if(!e)return this;var t=w(e);return this.filter((function(i){return!t(i,e)}))},parent:function(){var e=[];return this.each((function(t){t&&t.parentNode&&e.push(t.parentNode)})),x(e)},parents:function(e){var i,n=[];return this.each((function(s){for(i=s;i&&i.parentNode&&i!==t.body.parentNode;)i=i.parentNode,(!e||e&&k(i,e))&&n.push(i)})),x(n)},prev:function(){return y(this[0].previousElementSibling)},siblings:function(e){var t=this.parent().children(e),i=this[0];return t.filter((function(e){return e!==i}))}}),y}();var u=function(){function e(t,i,n){l(this,e),i instanceof Element||console.error(Error(i+" is not an HTML Element"));var s=t.getInstance(i);s&&s.destroy(),this.el=i,this.$el=cash(i)}return o(e,null,[{key:"init",value:function(e,t,i){var n=null;if(t instanceof Element)n=new e(t,i);else if(t&&(t.jquery||t.cash||t instanceof NodeList)){for(var s=[],o=0;o<t.length;o++)s.push(new e(t[o],i));n=s}return n}}]),e}();!function(e){e.Package?M={}:e.M={},M.jQueryLoaded=!!e.jQuery}(window),void 0===(n=function(){return M}.apply(t,[]))||(e.exports=n),M.version="1.0.0",M.keys={TAB:9,ENTER:13,ESC:27,ARROW_UP:38,ARROW_DOWN:40},M.tabPressed=!1,M.keyDown=!1;document.addEventListener("keydown",(function(e){M.keyDown=!0,e.which!==M.keys.TAB&&e.which!==M.keys.ARROW_DOWN&&e.which!==M.keys.ARROW_UP||(M.tabPressed=!0)}),!0),document.addEventListener("keyup",(function(e){M.keyDown=!1,e.which!==M.keys.TAB&&e.which!==M.keys.ARROW_DOWN&&e.which!==M.keys.ARROW_UP||(M.tabPressed=!1)}),!0),document.addEventListener("focus",(function(e){M.keyDown&&document.body.classList.add("keyboard-focused")}),!0),document.addEventListener("blur",(function(e){document.body.classList.remove("keyboard-focused")}),!0),M.initializeJqueryWrapper=function(e,t,i){jQuery.fn[t]=function(n){if(e.prototype[n]){var s=Array.prototype.slice.call(arguments,1);if("get"===n.slice(0,3)){var o=this.first()[0][i];return o[n].apply(o,s)}return this.each((function(){var e=this[i];e[n].apply(e,s)}))}if("object"==typeof n||!n)return e.init(this,arguments[0]),this;jQuery.error("Method "+n+" does not exist on jQuery."+t)}},M.AutoInit=function(e){var t=e||document.body,i={Autocomplete:t.querySelectorAll(".autocomplete:not(.no-autoinit)"),Carousel:t.querySelectorAll(".carousel:not(.no-autoinit)"),Chips:t.querySelectorAll(".chips:not(.no-autoinit)"),Collapsible:t.querySelectorAll(".collapsible:not(.no-autoinit)"),Datepicker:t.querySelectorAll(".datepicker:not(.no-autoinit)"),Dropdown:t.querySelectorAll(".dropdown-trigger:not(.no-autoinit)"),Materialbox:t.querySelectorAll(".materialboxed:not(.no-autoinit)"),Modal:t.querySelectorAll(".modal:not(.no-autoinit)"),Parallax:t.querySelectorAll(".parallax:not(.no-autoinit)"),Pushpin:t.querySelectorAll(".pushpin:not(.no-autoinit)"),ScrollSpy:t.querySelectorAll(".scrollspy:not(.no-autoinit)"),FormSelect:t.querySelectorAll("select:not(.no-autoinit)"),Sidenav:t.querySelectorAll(".sidenav:not(.no-autoinit)"),Tabs:t.querySelectorAll(".tabs:not(.no-autoinit)"),TapTarget:t.querySelectorAll(".tap-target:not(.no-autoinit)"),Timepicker:t.querySelectorAll(".timepicker:not(.no-autoinit)"),Tooltip:t.querySelectorAll(".tooltipped:not(.no-autoinit)"),FloatingActionButton:t.querySelectorAll(".fixed-action-btn:not(.no-autoinit)")};for(var n in i){M[n].init(i[n])}},M.objectSelectorString=function(e){return((e.prop("tagName")||"")+(e.attr("id")||"")+(e.attr("class")||"")).replace(/\s/g,"")},M.guid=function(){function e(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return function(){return e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e()}}(),M.escapeHash=function(e){return e.replace(/(:|\.|\[|\]|,|=|\/)/g,"\\$1")},M.elementOrParentIsFixed=function(e){var t=$(e),i=t.add(t.parents()),n=!1;return i.each((function(){if("fixed"===$(this).css("position"))return n=!0,!1})),n},M.checkWithinContainer=function(e,t,i){var n={top:!1,right:!1,bottom:!1,left:!1},s=e.getBoundingClientRect(),o=e===document.body?Math.max(s.bottom,window.innerHeight):s.bottom,a=e.scrollLeft,r=e.scrollTop,l=t.left-a,u=t.top-r;return(l<s.left+i||l<i)&&(n.left=!0),(l+t.width>s.right-i||l+t.width>window.innerWidth-i)&&(n.right=!0),(u<s.top+i||u<i)&&(n.top=!0),(u+t.height>o-i||u+t.height>window.innerHeight-i)&&(n.bottom=!0),n},M.checkPossibleAlignments=function(e,t,i,n){var s={top:!0,right:!0,bottom:!0,left:!0,spaceOnTop:null,spaceOnRight:null,spaceOnBottom:null,spaceOnLeft:null},o="visible"===getComputedStyle(t).overflow,a=t.getBoundingClientRect(),r=Math.min(a.height,window.innerHeight),l=Math.min(a.width,window.innerWidth),u=e.getBoundingClientRect(),d=t.scrollLeft,c=t.scrollTop,h=i.left-d,p=i.top-c,v=i.top+u.height-c;return s.spaceOnRight=o?window.innerWidth-(u.left+i.width):l-(h+i.width),s.spaceOnRight<0&&(s.left=!1),s.spaceOnLeft=o?u.right-i.width:h-i.width+u.width,s.spaceOnLeft<0&&(s.right=!1),s.spaceOnBottom=o?window.innerHeight-(u.top+i.height+n):r-(p+i.height+n),s.spaceOnBottom<0&&(s.top=!1),s.spaceOnTop=o?u.bottom-(i.height+n):v-(i.height-n),s.spaceOnTop<0&&(s.bottom=!1),s},M.getOverflowParent=function(e){return null==e?null:e===document.body||"visible"!==getComputedStyle(e).overflow?e:M.getOverflowParent(e.parentElement)},M.getIdFromTrigger=function(e){var t=e.getAttribute("data-target");return t||(t=(t=e.getAttribute("href"))?t.slice(1):""),t},M.getDocumentScrollTop=function(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},M.getDocumentScrollLeft=function(){return window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0};var d=Date.now||function(){return(new Date).getTime()};M.throttle=function(e,t,i){var n=void 0,s=void 0,o=void 0,a=null,r=0;i||(i={});var l=function(){r=!1===i.leading?0:d(),a=null,o=e.apply(n,s),n=s=null};return function(){var u=d();r||!1!==i.leading||(r=u);var c=t-(u-r);return n=this,s=arguments,c<=0?(clearTimeout(a),a=null,r=u,o=e.apply(n,s),n=s=null):a||!1===i.trailing||(a=setTimeout(l,c)),o}};var c={scope:{}};c.defineProperty="function"==typeof Object.defineProperties?Object.defineProperty:function(e,t,i){if(i.get||i.set)throw new TypeError("ES3 does not support getters and setters.");e!=Array.prototype&&e!=Object.prototype&&(e[t]=i.value)},c.getGlobal=function(e){return"undefined"!=typeof window&&window===e?e:void 0!==i&&null!=i?i:e},c.global=c.getGlobal(this),c.SYMBOL_PREFIX="jscomp_symbol_",c.initSymbol=function(){c.initSymbol=function(){},c.global.Symbol||(c.global.Symbol=c.Symbol)},c.symbolCounter_=0,c.Symbol=function(e){return c.SYMBOL_PREFIX+(e||"")+c.symbolCounter_++},c.initSymbolIterator=function(){c.initSymbol();var e=c.global.Symbol.iterator;e||(e=c.global.Symbol.iterator=c.global.Symbol("iterator")),"function"!=typeof Array.prototype[e]&&c.defineProperty(Array.prototype,e,{configurable:!0,writable:!0,value:function(){return c.arrayIterator(this)}}),c.initSymbolIterator=function(){}},c.arrayIterator=function(e){var t=0;return c.iteratorPrototype((function(){return t<e.length?{done:!1,value:e[t++]}:{done:!0}}))},c.iteratorPrototype=function(e){return c.initSymbolIterator(),(e={next:e})[c.global.Symbol.iterator]=function(){return this},e},c.array=c.array||{},c.iteratorFromArray=function(e,t){c.initSymbolIterator(),e instanceof String&&(e+="");var i=0,n={next:function(){if(i<e.length){var s=i++;return{value:t(s,e[s]),done:!1}}return n.next=function(){return{done:!0,value:void 0}},n.next()}};return n[Symbol.iterator]=function(){return n},n},c.polyfill=function(e,t,i,n){if(t){for(i=c.global,e=e.split("."),n=0;n<e.length-1;n++){var s=e[n];s in i||(i[s]={}),i=i[s]}(t=t(n=i[e=e[e.length-1]]))!=n&&null!=t&&c.defineProperty(i,e,{configurable:!0,writable:!0,value:t})}},c.polyfill("Array.prototype.keys",(function(e){return e||function(){return c.iteratorFromArray(this,(function(e){return e}))}}),"es6-impl","es3");var h=this;M.anime=function(){function e(e){if(!R.col(e))try{return document.querySelectorAll(e)}catch(e){}}function t(e,t){for(var i=e.length,n=2<=arguments.length?arguments[1]:void 0,s=[],o=0;o<i;o++)if(o in e){var a=e[o];t.call(n,a,o,e)&&s.push(a)}return s}function i(e){return e.reduce((function(e,t){return e.concat(R.arr(t)?i(t):t)}),[])}function n(t){return R.arr(t)?t:(R.str(t)&&(t=e(t)||t),t instanceof NodeList||t instanceof HTMLCollection?[].slice.call(t):[t])}function s(e,t){return e.some((function(e){return e===t}))}function o(e){var t,i={};for(t in e)i[t]=e[t];return i}function a(e,t){var i,n=o(e);for(i in e)n[i]=t.hasOwnProperty(i)?t[i]:e[i];return n}function r(e,t){var i,n=o(e);for(i in t)n[i]=R.und(e[i])?t[i]:e[i];return n}function l(e){e=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,t,i,n){return t+t+i+i+n+n}));var t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return"rgba("+(e=parseInt(t[1],16))+","+parseInt(t[2],16)+","+(t=parseInt(t[3],16))+",1)"}function u(e){function t(e,t,i){return 0>i&&(i+=1),1<i&&--i,i<1/6?e+6*(t-e)*i:.5>i?t:i<2/3?e+(t-e)*(2/3-i)*6:e}var i=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(e);e=parseInt(i[1])/360;var n=parseInt(i[2])/100,s=parseInt(i[3])/100;if(i=i[4]||1,0==n)s=n=e=s;else{var o=.5>s?s*(1+n):s+n-s*n,a=2*s-o;s=t(a,o,e+1/3),n=t(a,o,e),e=t(a,o,e-1/3)}return"rgba("+255*s+","+255*n+","+255*e+","+i+")"}function d(e){if(e=/([\+\-]?[0-9#\.]+)(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(e))return e[2]}function c(e){return-1<e.indexOf("translate")||"perspective"===e?"px":-1<e.indexOf("rotate")||-1<e.indexOf("skew")?"deg":void 0}function p(e,t){return R.fnc(e)?e(t.target,t.id,t.total):e}function v(e,t){if(t in e.style)return getComputedStyle(e).getPropertyValue(t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase())||"0"}function _(e,t){return R.dom(e)&&s(A,t)?"transform":R.dom(e)&&(e.getAttribute(t)||R.svg(e)&&e[t])?"attribute":R.dom(e)&&"transform"!==t&&v(e,t)?"css":null!=e[t]?"object":void 0}function f(e,i){var n=c(i);if(n=-1<i.indexOf("scale")?1:0+n,!(e=e.style.transform))return n;for(var s=[],o=[],a=[],r=/(\w+)\((.+?)\)/g;s=r.exec(e);)o.push(s[1]),a.push(s[2]);return(e=t(a,(function(e,t){return o[t]===i}))).length?e[0]:n}function m(e,t){switch(_(e,t)){case"transform":return f(e,t);case"css":return v(e,t);case"attribute":return e.getAttribute(t)}return e[t]||0}function y(e,t){var i=/^(\*=|\+=|-=)/.exec(e);if(!i)return e;var n=d(e)||0;switch(t=parseFloat(t),e=parseFloat(e.replace(i[0],"")),i[0][0]){case"+":return t+e+n;case"-":return t-e+n;case"*":return t*e+n}}function g(e,t){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function b(e){e=e.points;for(var t,i=0,n=0;n<e.numberOfItems;n++){var s=e.getItem(n);0<n&&(i+=g(t,s)),t=s}return i}function k(e){if(e.getTotalLength)return e.getTotalLength();switch(e.tagName.toLowerCase()){case"circle":return 2*Math.PI*e.getAttribute("r");case"rect":return 2*e.getAttribute("width")+2*e.getAttribute("height");case"line":return g({x:e.getAttribute("x1"),y:e.getAttribute("y1")},{x:e.getAttribute("x2"),y:e.getAttribute("y2")});case"polyline":return b(e);case"polygon":var t=e.points;return b(e)+g(t.getItem(t.numberOfItems-1),t.getItem(0))}}function w(e,t){function i(i){return i=void 0===i?0:i,e.el.getPointAtLength(1<=t+i?t+i:0)}var n=i(),s=i(-1),o=i(1);switch(e.property){case"x":return n.x;case"y":return n.y;case"angle":return 180*Math.atan2(o.y-s.y,o.x-s.x)/Math.PI}}function x(e,t){var i,n=/-?\d*\.?\d+/g;if(i=R.pth(e)?e.totalLength:e,R.col(i))if(R.rgb(i)){var s=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(i);i=s?"rgba("+s[1]+",1)":i}else i=R.hex(i)?l(i):R.hsl(i)?u(i):void 0;else s=(s=d(i))?i.substr(0,i.length-s.length):i,i=t&&!/\s/g.test(i)?s+t:s;return{original:i+="",numbers:i.match(n)?i.match(n).map(Number):[0],strings:R.str(e)||t?i.split(n):[]}}function C(e){return t(e=e?i(R.arr(e)?e.map(n):n(e)):[],(function(e,t,i){return i.indexOf(e)===t}))}function E(e){var t=C(e);return t.map((function(e,i){return{target:e,id:i,total:t.length}}))}function M(e,t){var i=o(t);if(R.arr(e)){var s=e.length;2!==s||R.obj(e[0])?R.fnc(t.duration)||(i.duration=t.duration/s):e={value:e}}return n(e).map((function(e,i){return i=i?0:t.delay,e=R.obj(e)&&!R.pth(e)?e:{value:e},R.und(e.delay)&&(e.delay=i),e})).map((function(e){return r(e,i)}))}function j(e,t){var i,n={};for(i in e){var s=p(e[i],t);R.arr(s)&&1===(s=s.map((function(e){return p(e,t)}))).length&&(s=s[0]),n[i]=s}return n.duration=parseFloat(n.duration),n.delay=parseFloat(n.delay),n}function O(e){return R.arr(e)?P.apply(this,e):H[e]}function T(e,t){var i;return e.tweens.map((function(n){var s=(n=j(n,t)).value,o=m(t.target,e.name),a=i?i.to.original:o,r=(a=R.arr(s)?s[0]:a,y(R.arr(s)?s[1]:s,a));return o=d(r)||d(a)||d(o),n.from=x(a,o),n.to=x(r,o),n.start=i?i.end:e.offset,n.end=n.start+n.delay+n.duration,n.easing=O(n.easing),n.elasticity=(1e3-Math.min(Math.max(n.elasticity,1),999))/1e3,n.isPath=R.pth(s),n.isColor=R.col(n.from.original),n.isColor&&(n.round=1),i=n}))}function L(e,n){return t(i(e.map((function(e){return n.map((function(t){var i=_(e.target,t.name);if(i){var n=T(t,e);t={type:i,property:t.name,animatable:e,tweens:n,duration:n[n.length-1].end,delay:n[0].delay}}else t=void 0;return t}))}))),(function(e){return!R.und(e)}))}function D(e,t,i,n){var s="delay"===e;return t.length?(s?Math.min:Math.max).apply(Math,t.map((function(t){return t[e]}))):s?n.delay:i.offset+n.delay+n.duration}function B(e){var t,i=a(I,e),n=a(S,e),s=E(e.targets),o=[],l=r(i,n);for(t in e)l.hasOwnProperty(t)||"targets"===t||o.push({name:t,offset:l.offset,tweens:M(e[t],n)});return r(i,{children:[],animatables:s,animations:e=L(s,o),duration:D("duration",e,i,n),delay:D("delay",e,i,n)})}function Q(e){function i(){return window.Promise&&new Promise((function(e){return c=e}))}function n(e){return p.reversed?p.duration-e:e}function s(e){for(var i=0,n={},s=p.animations,o=s.length;i<o;){var a=s[i],r=a.animatable,l=(u=a.tweens)[h=u.length-1];h&&(l=t(u,(function(t){return e<t.end}))[0]||l);for(var u=Math.min(Math.max(e-l.start-l.delay,0),l.duration)/l.duration,d=isNaN(u)?1:l.easing(u,l.elasticity),c=(u=l.to.strings,l.round),h=[],_=void 0,f=(_=l.to.numbers.length,0);f<_;f++){var m=void 0,y=(m=l.to.numbers[f],l.from.numbers[f]);m=l.isPath?w(l.value,d*m):y+d*(m-y),c&&(l.isColor&&2<f||(m=Math.round(m*c)/c)),h.push(m)}if(l=u.length)for(_=u[0],d=0;d<l;d++)c=u[d+1],f=h[d],isNaN(f)||(_=c?_+(f+c):_+(f+" "));else _=h[0];W[a.type](r.target,a.property,_,n,r.id),a.currentValue=_,i++}if(i=Object.keys(n).length)for(s=0;s<i;s++)$||($=v(document.body,"transform")?"transform":"-webkit-transform"),p.animatables[s].target.style[$]=n[s].join(" ");p.currentTime=e,p.progress=e/p.duration*100}function o(e){p[e]&&p[e](p)}function a(){p.remaining&&!0!==p.remaining&&p.remaining--}function r(e){var t=p.duration,r=p.offset,v=r+p.delay,_=p.currentTime,f=p.reversed,m=n(e);if(p.children.length){var y=p.children,g=y.length;if(m>=p.currentTime)for(var b=0;b<g;b++)y[b].seek(m);else for(;g--;)y[g].seek(m)}(m>=v||!t)&&(p.began||(p.began=!0,o("begin")),o("run")),m>r&&m<t?s(m):(m<=r&&0!==_&&(s(0),f&&a()),(m>=t&&_!==t||!t)&&(s(t),f||a())),o("update"),e>=t&&(p.remaining?(u=l,"alternate"===p.direction&&(p.reversed=!p.reversed)):(p.pause(),p.completed||(p.completed=!0,o("complete"),"Promise"in window&&(c(),h=i()))),d=0)}e=void 0===e?{}:e;var l,u,d=0,c=null,h=i(),p=B(e);return p.reset=function(){var e=p.direction,t=p.loop;for(p.currentTime=0,p.progress=0,p.paused=!0,p.began=!1,p.completed=!1,p.reversed="reverse"===e,p.remaining="alternate"===e&&1===t?2:t,s(0),e=p.children.length;e--;)p.children[e].reset()},p.tick=function(e){l=e,u||(u=l),r((d+l-u)*Q.speed)},p.seek=function(e){r(n(e))},p.pause=function(){var e=q.indexOf(p);-1<e&&q.splice(e,1),p.paused=!0},p.play=function(){p.paused&&(p.paused=!1,u=0,d=n(p.currentTime),q.push(p),z||F())},p.reverse=function(){p.reversed=!p.reversed,u=0,d=n(p.currentTime)},p.restart=function(){p.pause(),p.reset(),p.play()},p.finished=h,p.reset(),p.autoplay&&p.play(),p}var $,I={update:void 0,begin:void 0,run:void 0,complete:void 0,loop:1,direction:"normal",autoplay:!0,offset:0},S={duration:1e3,delay:0,easing:"easeOutElastic",elasticity:500,round:0},A="translateX translateY translateZ rotate rotateX rotateY rotateZ scale scaleX scaleY scaleZ skewX skewY perspective".split(" "),R={arr:function(e){return Array.isArray(e)},obj:function(e){return-1<Object.prototype.toString.call(e).indexOf("Object")},pth:function(e){return R.obj(e)&&e.hasOwnProperty("totalLength")},svg:function(e){return e instanceof SVGElement},dom:function(e){return e.nodeType||R.svg(e)},str:function(e){return"string"==typeof e},fnc:function(e){return"function"==typeof e},und:function(e){return void 0===e},hex:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)},rgb:function(e){return/^rgb/.test(e)},hsl:function(e){return/^hsl/.test(e)},col:function(e){return R.hex(e)||R.rgb(e)||R.hsl(e)}},P=function(){function e(e,t,i){return(((1-3*i+3*t)*e+(3*i-6*t))*e+3*t)*e}return function(t,i,n,s){if(0<=t&&1>=t&&0<=n&&1>=n){var o=new Float32Array(11);if(t!==i||n!==s)for(var a=0;11>a;++a)o[a]=e(.1*a,t,n);return function(a){if(t===i&&n===s)return a;if(0===a)return 0;if(1===a)return 1;for(var r=0,l=1;10!==l&&o[l]<=a;++l)r+=.1;--l,l=r+(a-o[l])/(o[l+1]-o[l])*.1;var u=3*(1-3*n+3*t)*l*l+2*(3*n-6*t)*l+3*t;if(.001<=u){for(r=0;4>r&&0!=(u=3*(1-3*n+3*t)*l*l+2*(3*n-6*t)*l+3*t);++r){var d=e(l,t,n)-a;l-=d/u}a=l}else if(0===u)a=l;else{l=r,r+=.1;var c=0;do{0<(u=e(d=l+(r-l)/2,t,n)-a)?r=d:l=d}while(1e-7<Math.abs(u)&&10>++c);a=d}return e(a,i,s)}}}}(),H=function(){function e(e,t){return 0===e||1===e?e:-Math.pow(2,10*(e-1))*Math.sin(2*(e-1-t/(2*Math.PI)*Math.asin(1))*Math.PI/t)}var t,i="Quad Cubic Quart Quint Sine Expo Circ Back Elastic".split(" "),n={In:[[.55,.085,.68,.53],[.55,.055,.675,.19],[.895,.03,.685,.22],[.755,.05,.855,.06],[.47,0,.745,.715],[.95,.05,.795,.035],[.6,.04,.98,.335],[.6,-.28,.735,.045],e],Out:[[.25,.46,.45,.94],[.215,.61,.355,1],[.165,.84,.44,1],[.23,1,.32,1],[.39,.575,.565,1],[.19,1,.22,1],[.075,.82,.165,1],[.175,.885,.32,1.275],function(t,i){return 1-e(1-t,i)}],InOut:[[.455,.03,.515,.955],[.645,.045,.355,1],[.77,0,.175,1],[.86,0,.07,1],[.445,.05,.55,.95],[1,0,0,1],[.785,.135,.15,.86],[.68,-.55,.265,1.55],function(t,i){return.5>t?e(2*t,i)/2:1-e(-2*t+2,i)/2}]},s={linear:P(.25,.25,.75,.75)},o={};for(t in n)o.type=t,n[o.type].forEach(function(e){return function(t,n){s["ease"+e.type+i[n]]=R.fnc(t)?t:P.apply(h,t)}}(o)),o={type:o.type};return s}(),W={css:function(e,t,i){return e.style[t]=i},attribute:function(e,t,i){return e.setAttribute(t,i)},object:function(e,t,i){return e[t]=i},transform:function(e,t,i,n,s){n[s]||(n[s]=[]),n[s].push(t+"("+i+")")}},q=[],z=0,F=function(){function e(){z=requestAnimationFrame(t)}function t(t){var i=q.length;if(i){for(var n=0;n<i;)q[n]&&q[n].tick(t),n++;e()}else cancelAnimationFrame(z),z=0}return e}();return Q.version="2.2.0",Q.speed=1,Q.running=q,Q.remove=function(e){e=C(e);for(var t=q.length;t--;)for(var i=q[t],n=i.animations,o=n.length;o--;)s(e,n[o].animatable.target)&&(n.splice(o,1),n.length||i.pause())},Q.getValue=m,Q.path=function(t,i){var n=R.str(t)?e(t)[0]:t,s=i||100;return function(e){return{el:n,property:e,totalLength:k(n)*(s/100)}}},Q.setDashoffset=function(e){var t=k(e);return e.setAttribute("stroke-dasharray",t),t},Q.bezier=P,Q.easings=H,Q.timeline=function(e){var t=Q(e);return t.pause(),t.duration=0,t.add=function(i){return t.children.forEach((function(e){e.began=!0,e.completed=!0})),n(i).forEach((function(i){var n=r(i,a(S,e||{}));n.targets=n.targets||e.targets,i=t.duration;var s=n.offset;n.autoplay=!1,n.direction=t.direction,n.offset=R.und(s)?i:y(s,i),t.began=!0,t.completed=!0,t.seek(n.offset),(n=Q(n)).began=!0,n.completed=!0,n.duration>i&&(t.duration=n.duration),t.children.push(n)})),t.seek(0),t.reset(),t.autoplay&&t.restart(),t},t},Q.random=function(e,t){return Math.floor(Math.random()*(t-e+1))+e},Q}(),function(e,t){"use strict";var i={accordion:!0,onOpenStart:void 0,onOpenEnd:void 0,onCloseStart:void 0,onCloseEnd:void 0,inDuration:300,outDuration:300},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));n.el.M_Collapsible=n,n.options=e.extend({},u.defaults,i),n.$headers=n.$el.children("li").children(".collapsible-header"),n.$headers.attr("tabindex",0),n._setupEventHandlers();var s=n.$el.children("li.active").children(".collapsible-body");return n.options.accordion?s.first().css("display","block"):s.css("display","block"),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.M_Collapsible=void 0}},{key:"_setupEventHandlers",value:function(){var e=this;this._handleCollapsibleClickBound=this._handleCollapsibleClick.bind(this),this._handleCollapsibleKeydownBound=this._handleCollapsibleKeydown.bind(this),this.el.addEventListener("click",this._handleCollapsibleClickBound),this.$headers.each((function(t){t.addEventListener("keydown",e._handleCollapsibleKeydownBound)}))}},{key:"_removeEventHandlers",value:function(){var e=this;this.el.removeEventListener("click",this._handleCollapsibleClickBound),this.$headers.each((function(t){t.removeEventListener("keydown",e._handleCollapsibleKeydownBound)}))}},{key:"_handleCollapsibleClick",value:function(t){var i=e(t.target).closest(".collapsible-header");if(t.target&&i.length){var n=i.closest(".collapsible");if(n[0]===this.el){var s=i.closest("li"),o=n.children("li"),a=s[0].classList.contains("active"),r=o.index(s);a?this.close(r):this.open(r)}}}},{key:"_handleCollapsibleKeydown",value:function(e){13===e.keyCode&&this._handleCollapsibleClickBound(e)}},{key:"_animateIn",value:function(e){var i=this,n=this.$el.children("li").eq(e);if(n.length){var s=n.children(".collapsible-body");t.remove(s[0]),s.css({display:"block",overflow:"hidden",height:0,paddingTop:"",paddingBottom:""});var o=s.css("padding-top"),a=s.css("padding-bottom"),r=s[0].scrollHeight;s.css({paddingTop:0,paddingBottom:0}),t({targets:s[0],height:r,paddingTop:o,paddingBottom:a,duration:this.options.inDuration,easing:"easeInOutCubic",complete:function(e){s.css({overflow:"",paddingTop:"",paddingBottom:"",height:""}),"function"==typeof i.options.onOpenEnd&&i.options.onOpenEnd.call(i,n[0])}})}}},{key:"_animateOut",value:function(e){var i=this,n=this.$el.children("li").eq(e);if(n.length){var s=n.children(".collapsible-body");t.remove(s[0]),s.css("overflow","hidden"),t({targets:s[0],height:0,paddingTop:0,paddingBottom:0,duration:this.options.outDuration,easing:"easeInOutCubic",complete:function(){s.css({height:"",overflow:"",padding:"",display:""}),"function"==typeof i.options.onCloseEnd&&i.options.onCloseEnd.call(i,n[0])}})}}},{key:"open",value:function(t){var i=this,n=this.$el.children("li").eq(t);if(n.length&&!n[0].classList.contains("active")){if("function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,n[0]),this.options.accordion){var s=this.$el.children("li");this.$el.children("li.active").each((function(t){var n=s.index(e(t));i.close(n)}))}n[0].classList.add("active"),this._animateIn(t)}}},{key:"close",value:function(e){var t=this.$el.children("li").eq(e);t.length&&t[0].classList.contains("active")&&("function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,t[0]),t[0].classList.remove("active"),this._animateOut(e))}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Collapsible}},{key:"defaults",get:function(){return i}}]),u}(u);M.Collapsible=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"collapsible","M_Collapsible")}(cash,M.anime),function(e,t){"use strict";var i={alignment:"left",autoFocus:!0,constrainWidth:!0,container:null,coverTrigger:!0,closeOnClick:!0,hover:!1,inDuration:150,outDuration:250,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null,onItemClick:null},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Dropdown=n,u._dropdowns.push(n),n.id=M.getIdFromTrigger(t),n.dropdownEl=document.getElementById(n.id),n.$dropdownEl=e(n.dropdownEl),n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.isScrollable=!1,n.isTouchMoving=!1,n.focusedIndex=-1,n.filterQuery=[],n.options.container?e(n.options.container).append(n.dropdownEl):n.$el.after(n.dropdownEl),n._makeDropdownFocusable(),n._resetFilterQueryBound=n._resetFilterQuery.bind(n),n._handleDocumentClickBound=n._handleDocumentClick.bind(n),n._handleDocumentTouchmoveBound=n._handleDocumentTouchmove.bind(n),n._handleDropdownClickBound=n._handleDropdownClick.bind(n),n._handleDropdownKeydownBound=n._handleDropdownKeydown.bind(n),n._handleTriggerKeydownBound=n._handleTriggerKeydown.bind(n),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._resetDropdownStyles(),this._removeEventHandlers(),u._dropdowns.splice(u._dropdowns.indexOf(this),1),this.el.M_Dropdown=void 0}},{key:"_setupEventHandlers",value:function(){this.el.addEventListener("keydown",this._handleTriggerKeydownBound),this.dropdownEl.addEventListener("click",this._handleDropdownClickBound),this.options.hover?(this._handleMouseEnterBound=this._handleMouseEnter.bind(this),this.el.addEventListener("mouseenter",this._handleMouseEnterBound),this._handleMouseLeaveBound=this._handleMouseLeave.bind(this),this.el.addEventListener("mouseleave",this._handleMouseLeaveBound),this.dropdownEl.addEventListener("mouseleave",this._handleMouseLeaveBound)):(this._handleClickBound=this._handleClick.bind(this),this.el.addEventListener("click",this._handleClickBound))}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("keydown",this._handleTriggerKeydownBound),this.dropdownEl.removeEventListener("click",this._handleDropdownClickBound),this.options.hover?(this.el.removeEventListener("mouseenter",this._handleMouseEnterBound),this.el.removeEventListener("mouseleave",this._handleMouseLeaveBound),this.dropdownEl.removeEventListener("mouseleave",this._handleMouseLeaveBound)):this.el.removeEventListener("click",this._handleClickBound)}},{key:"_setupTemporaryEventHandlers",value:function(){document.body.addEventListener("click",this._handleDocumentClickBound,!0),document.body.addEventListener("touchend",this._handleDocumentClickBound),document.body.addEventListener("touchmove",this._handleDocumentTouchmoveBound),this.dropdownEl.addEventListener("keydown",this._handleDropdownKeydownBound)}},{key:"_removeTemporaryEventHandlers",value:function(){document.body.removeEventListener("click",this._handleDocumentClickBound,!0),document.body.removeEventListener("touchend",this._handleDocumentClickBound),document.body.removeEventListener("touchmove",this._handleDocumentTouchmoveBound),this.dropdownEl.removeEventListener("keydown",this._handleDropdownKeydownBound)}},{key:"_handleClick",value:function(e){e.preventDefault(),this.open()}},{key:"_handleMouseEnter",value:function(){this.open()}},{key:"_handleMouseLeave",value:function(t){var i=t.toElement||t.relatedTarget,n=!!e(i).closest(".dropdown-content").length,s=!1,o=e(i).closest(".dropdown-trigger");o.length&&o[0].M_Dropdown&&o[0].M_Dropdown.isOpen&&(s=!0),s||n||this.close()}},{key:"_handleDocumentClick",value:function(t){var i=this,n=e(t.target);this.options.closeOnClick&&n.closest(".dropdown-content").length&&!this.isTouchMoving?setTimeout((function(){i.close()}),0):!n.closest(".dropdown-trigger").length&&n.closest(".dropdown-content").length||setTimeout((function(){i.close()}),0),this.isTouchMoving=!1}},{key:"_handleTriggerKeydown",value:function(e){e.which!==M.keys.ARROW_DOWN&&e.which!==M.keys.ENTER||this.isOpen||(e.preventDefault(),this.open())}},{key:"_handleDocumentTouchmove",value:function(t){e(t.target).closest(".dropdown-content").length&&(this.isTouchMoving=!0)}},{key:"_handleDropdownClick",value:function(t){if("function"==typeof this.options.onItemClick){var i=e(t.target).closest("li")[0];this.options.onItemClick.call(this,i)}}},{key:"_handleDropdownKeydown",value:function(t){if(t.which===M.keys.TAB)t.preventDefault(),this.close();else if(t.which!==M.keys.ARROW_DOWN&&t.which!==M.keys.ARROW_UP||!this.isOpen)if(t.which===M.keys.ENTER&&this.isOpen){var i=this.dropdownEl.children[this.focusedIndex],n=e(i).find("a, button").first();n.length?n[0].click():i&&i.click()}else t.which===M.keys.ESC&&this.isOpen&&(t.preventDefault(),this.close());else{t.preventDefault();var s=t.which===M.keys.ARROW_DOWN?1:-1,o=this.focusedIndex,a=!1;do{if(o+=s,this.dropdownEl.children[o]&&-1!==this.dropdownEl.children[o].tabIndex){a=!0;break}}while(o<this.dropdownEl.children.length&&o>=0);a&&(this.focusedIndex=o,this._focusFocusedItem())}var r=String.fromCharCode(t.which).toLowerCase();if(r&&-1===[9,13,27,38,40].indexOf(t.which)){this.filterQuery.push(r);var l=this.filterQuery.join(""),u=e(this.dropdownEl).find("li").filter((function(t){return 0===e(t).text().toLowerCase().indexOf(l)}))[0];u&&(this.focusedIndex=e(u).index(),this._focusFocusedItem())}this.filterTimeout=setTimeout(this._resetFilterQueryBound,1e3)}},{key:"_resetFilterQuery",value:function(){this.filterQuery=[]}},{key:"_resetDropdownStyles",value:function(){this.$dropdownEl.css({display:"",width:"",height:"",left:"",top:"","transform-origin":"",transform:"",opacity:""})}},{key:"_makeDropdownFocusable",value:function(){this.dropdownEl.tabIndex=0,e(this.dropdownEl).children().each((function(e){e.getAttribute("tabindex")||e.setAttribute("tabindex",0)}))}},{key:"_focusFocusedItem",value:function(){this.focusedIndex>=0&&this.focusedIndex<this.dropdownEl.children.length&&this.options.autoFocus&&this.dropdownEl.children[this.focusedIndex].focus()}},{key:"_getDropdownPosition",value:function(){this.el.offsetParent.getBoundingClientRect();var e=this.el.getBoundingClientRect(),t=this.dropdownEl.getBoundingClientRect(),i=t.height,n=t.width,s=e.left-t.left,o=e.top-t.top,a={left:s,top:o,height:i,width:n},r=this.dropdownEl.offsetParent?this.dropdownEl.offsetParent:this.dropdownEl.parentNode,l=M.checkPossibleAlignments(this.el,r,a,this.options.coverTrigger?0:e.height),u="top",d=this.options.alignment;if(o+=this.options.coverTrigger?0:e.height,this.isScrollable=!1,l.top||(l.bottom?u="bottom":(this.isScrollable=!0,l.spaceOnTop>l.spaceOnBottom?(u="bottom",i+=l.spaceOnTop,o-=l.spaceOnTop):i+=l.spaceOnBottom)),!l[d]){var c="left"===d?"right":"left";l[c]?d=c:l.spaceOnLeft>l.spaceOnRight?(d="right",n+=l.spaceOnLeft,s-=l.spaceOnLeft):(d="left",n+=l.spaceOnRight)}return"bottom"===u&&(o=o-t.height+(this.options.coverTrigger?e.height:0)),"right"===d&&(s=s-t.width+e.width),{x:s,y:o,verticalAlignment:u,horizontalAlignment:d,height:i,width:n}}},{key:"_animateIn",value:function(){var e=this;t.remove(this.dropdownEl),t({targets:this.dropdownEl,opacity:{value:[0,1],easing:"easeOutQuad"},scaleX:[.3,1],scaleY:[.3,1],duration:this.options.inDuration,easing:"easeOutQuint",complete:function(t){e.options.autoFocus&&e.dropdownEl.focus(),"function"==typeof e.options.onOpenEnd&&e.options.onOpenEnd.call(e,e.el)}})}},{key:"_animateOut",value:function(){var e=this;t.remove(this.dropdownEl),t({targets:this.dropdownEl,opacity:{value:0,easing:"easeOutQuint"},scaleX:.3,scaleY:.3,duration:this.options.outDuration,easing:"easeOutQuint",complete:function(t){e._resetDropdownStyles(),"function"==typeof e.options.onCloseEnd&&e.options.onCloseEnd.call(e,e.el)}})}},{key:"_placeDropdown",value:function(){var e=this.options.constrainWidth?this.el.getBoundingClientRect().width:this.dropdownEl.getBoundingClientRect().width;this.dropdownEl.style.width=e+"px";var t=this._getDropdownPosition();this.dropdownEl.style.left=t.x+"px",this.dropdownEl.style.top=t.y+"px",this.dropdownEl.style.height=t.height+"px",this.dropdownEl.style.width=t.width+"px",this.dropdownEl.style.transformOrigin=("left"===t.horizontalAlignment?"0":"100%")+" "+("top"===t.verticalAlignment?"0":"100%")}},{key:"open",value:function(){this.isOpen||(this.isOpen=!0,"function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,this.el),this._resetDropdownStyles(),this.dropdownEl.style.display="block",this._placeDropdown(),this._animateIn(),this._setupTemporaryEventHandlers())}},{key:"close",value:function(){this.isOpen&&(this.isOpen=!1,this.focusedIndex=-1,"function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,this.el),this._animateOut(),this._removeTemporaryEventHandlers(),this.options.autoFocus&&this.el.focus())}},{key:"recalculateDimensions",value:function(){this.isOpen&&(this.$dropdownEl.css({width:"",height:"",left:"",top:"","transform-origin":""}),this._placeDropdown())}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Dropdown}},{key:"defaults",get:function(){return i}}]),u}(u);n._dropdowns=[],M.Dropdown=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"dropdown","M_Dropdown")}(cash,M.anime),function(e,t){"use strict";var i={opacity:.5,inDuration:250,outDuration:250,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null,preventScrolling:!0,dismissible:!0,startingTop:"4%",endingTop:"10%"},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Modal=n,n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.id=n.$el.attr("id"),n._openingTrigger=void 0,n.$overlay=e('<div class="modal-overlay"></div>'),n.el.tabIndex=0,n._nthModalOpened=0,u._count++,n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){u._count--,this._removeEventHandlers(),this.el.removeAttribute("style"),this.$overlay.remove(),this.el.M_Modal=void 0}},{key:"_setupEventHandlers",value:function(){this._handleOverlayClickBound=this._handleOverlayClick.bind(this),this._handleModalCloseClickBound=this._handleModalCloseClick.bind(this),1===u._count&&document.body.addEventListener("click",this._handleTriggerClick),this.$overlay[0].addEventListener("click",this._handleOverlayClickBound),this.el.addEventListener("click",this._handleModalCloseClickBound)}},{key:"_removeEventHandlers",value:function(){0===u._count&&document.body.removeEventListener("click",this._handleTriggerClick),this.$overlay[0].removeEventListener("click",this._handleOverlayClickBound),this.el.removeEventListener("click",this._handleModalCloseClickBound)}},{key:"_handleTriggerClick",value:function(t){var i=e(t.target).closest(".modal-trigger");if(i.length){var n=M.getIdFromTrigger(i[0]),s=document.getElementById(n).M_Modal;s&&s.open(i),t.preventDefault()}}},{key:"_handleOverlayClick",value:function(){this.options.dismissible&&this.close()}},{key:"_handleModalCloseClick",value:function(t){e(t.target).closest(".modal-close").length&&this.close()}},{key:"_handleKeydown",value:function(e){27===e.keyCode&&this.options.dismissible&&this.close()}},{key:"_handleFocus",value:function(e){this.el.contains(e.target)||this._nthModalOpened!==u._modalsOpen||this.el.focus()}},{key:"_animateIn",value:function(){var i=this;e.extend(this.el.style,{display:"block",opacity:0}),e.extend(this.$overlay[0].style,{display:"block",opacity:0}),t({targets:this.$overlay[0],opacity:this.options.opacity,duration:this.options.inDuration,easing:"easeOutQuad"});var n={targets:this.el,duration:this.options.inDuration,easing:"easeOutCubic",complete:function(){"function"==typeof i.options.onOpenEnd&&i.options.onOpenEnd.call(i,i.el,i._openingTrigger)}};this.el.classList.contains("bottom-sheet")?(e.extend(n,{bottom:0,opacity:1}),t(n)):(e.extend(n,{top:[this.options.startingTop,this.options.endingTop],opacity:1,scaleX:[.8,1],scaleY:[.8,1]}),t(n))}},{key:"_animateOut",value:function(){var i=this;t({targets:this.$overlay[0],opacity:0,duration:this.options.outDuration,easing:"easeOutQuart"});var n={targets:this.el,duration:this.options.outDuration,easing:"easeOutCubic",complete:function(){i.el.style.display="none",i.$overlay.remove(),"function"==typeof i.options.onCloseEnd&&i.options.onCloseEnd.call(i,i.el)}};this.el.classList.contains("bottom-sheet")?(e.extend(n,{bottom:"-100%",opacity:0}),t(n)):(e.extend(n,{top:[this.options.endingTop,this.options.startingTop],opacity:0,scaleX:.8,scaleY:.8}),t(n))}},{key:"open",value:function(e){if(!this.isOpen)return this.isOpen=!0,u._modalsOpen++,this._nthModalOpened=u._modalsOpen,this.$overlay[0].style.zIndex=1e3+2*u._modalsOpen,this.el.style.zIndex=1e3+2*u._modalsOpen+1,this._openingTrigger=e?e[0]:void 0,"function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,this.el,this._openingTrigger),this.options.preventScrolling&&(document.body.style.overflow="hidden"),this.el.classList.add("open"),this.el.insertAdjacentElement("afterend",this.$overlay[0]),this.options.dismissible&&(this._handleKeydownBound=this._handleKeydown.bind(this),this._handleFocusBound=this._handleFocus.bind(this),document.addEventListener("keydown",this._handleKeydownBound),document.addEventListener("focus",this._handleFocusBound,!0)),t.remove(this.el),t.remove(this.$overlay[0]),this._animateIn(),this.el.focus(),this}},{key:"close",value:function(){if(this.isOpen)return this.isOpen=!1,u._modalsOpen--,this._nthModalOpened=0,"function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,this.el),this.el.classList.remove("open"),0===u._modalsOpen&&(document.body.style.overflow=""),this.options.dismissible&&(document.removeEventListener("keydown",this._handleKeydownBound),document.removeEventListener("focus",this._handleFocusBound,!0)),t.remove(this.el),t.remove(this.$overlay[0]),this._animateOut(),this}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Modal}},{key:"defaults",get:function(){return i}}]),u}(u);n._modalsOpen=0,n._count=0,M.Modal=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"modal","M_Modal")}(cash,M.anime),function(e,t){"use strict";var i={inDuration:275,outDuration:200,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Materialbox=n,n.options=e.extend({},u.defaults,i),n.overlayActive=!1,n.doneAnimating=!0,n.placeholder=e("<div></div>").addClass("material-placeholder"),n.originalWidth=0,n.originalHeight=0,n.originInlineStyles=n.$el.attr("style"),n.caption=n.el.getAttribute("data-caption")||"",n.$el.before(n.placeholder),n.placeholder.append(n.$el),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.M_Materialbox=void 0,e(this.placeholder).after(this.el).remove(),this.$el.removeAttr("style")}},{key:"_setupEventHandlers",value:function(){this._handleMaterialboxClickBound=this._handleMaterialboxClick.bind(this),this.el.addEventListener("click",this._handleMaterialboxClickBound)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleMaterialboxClickBound)}},{key:"_handleMaterialboxClick",value:function(e){!1===this.doneAnimating||this.overlayActive&&this.doneAnimating?this.close():this.open()}},{key:"_handleWindowScroll",value:function(){this.overlayActive&&this.close()}},{key:"_handleWindowResize",value:function(){this.overlayActive&&this.close()}},{key:"_handleWindowEscape",value:function(e){27===e.keyCode&&this.doneAnimating&&this.overlayActive&&this.close()}},{key:"_makeAncestorsOverflowVisible",value:function(){this.ancestorsChanged=e();for(var t=this.placeholder[0].parentNode;null!==t&&!e(t).is(document);){var i=e(t);"visible"!==i.css("overflow")&&(i.css("overflow","visible"),void 0===this.ancestorsChanged?this.ancestorsChanged=i:this.ancestorsChanged=this.ancestorsChanged.add(i)),t=t.parentNode}}},{key:"_animateImageIn",value:function(){var e=this,i={targets:this.el,height:[this.originalHeight,this.newHeight],width:[this.originalWidth,this.newWidth],left:M.getDocumentScrollLeft()+this.windowWidth/2-this.placeholder.offset().left-this.newWidth/2,top:M.getDocumentScrollTop()+this.windowHeight/2-this.placeholder.offset().top-this.newHeight/2,duration:this.options.inDuration,easing:"easeOutQuad",complete:function(){e.doneAnimating=!0,"function"==typeof e.options.onOpenEnd&&e.options.onOpenEnd.call(e,e.el)}};this.maxWidth=this.$el.css("max-width"),this.maxHeight=this.$el.css("max-height"),"none"!==this.maxWidth&&(i.maxWidth=this.newWidth),"none"!==this.maxHeight&&(i.maxHeight=this.newHeight),t(i)}},{key:"_animateImageOut",value:function(){var e=this,i={targets:this.el,width:this.originalWidth,height:this.originalHeight,left:0,top:0,duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){e.placeholder.css({height:"",width:"",position:"",top:"",left:""}),e.attrWidth&&e.$el.attr("width",e.attrWidth),e.attrHeight&&e.$el.attr("height",e.attrHeight),e.$el.removeAttr("style"),e.originInlineStyles&&e.$el.attr("style",e.originInlineStyles),e.$el.removeClass("active"),e.doneAnimating=!0,e.ancestorsChanged.length&&e.ancestorsChanged.css("overflow",""),"function"==typeof e.options.onCloseEnd&&e.options.onCloseEnd.call(e,e.el)}};t(i)}},{key:"_updateVars",value:function(){this.windowWidth=window.innerWidth,this.windowHeight=window.innerHeight,this.caption=this.el.getAttribute("data-caption")||""}},{key:"open",value:function(){var i=this;this._updateVars(),this.originalWidth=this.el.getBoundingClientRect().width,this.originalHeight=this.el.getBoundingClientRect().height,this.doneAnimating=!1,this.$el.addClass("active"),this.overlayActive=!0,"function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,this.el),this.placeholder.css({width:this.placeholder[0].getBoundingClientRect().width+"px",height:this.placeholder[0].getBoundingClientRect().height+"px",position:"relative",top:0,left:0}),this._makeAncestorsOverflowVisible(),this.$el.css({position:"absolute","z-index":1e3,"will-change":"left, top, width, height"}),this.attrWidth=this.$el.attr("width"),this.attrHeight=this.$el.attr("height"),this.attrWidth&&(this.$el.css("width",this.attrWidth+"px"),this.$el.removeAttr("width")),this.attrHeight&&(this.$el.css("width",this.attrHeight+"px"),this.$el.removeAttr("height")),this.$overlay=e('<div id="materialbox-overlay"></div>').css({opacity:0}).one("click",(function(){i.doneAnimating&&i.close()})),this.$el.before(this.$overlay);var n=this.$overlay[0].getBoundingClientRect();this.$overlay.css({width:this.windowWidth+"px",height:this.windowHeight+"px",left:-1*n.left+"px",top:-1*n.top+"px"}),t.remove(this.el),t.remove(this.$overlay[0]),t({targets:this.$overlay[0],opacity:1,duration:this.options.inDuration,easing:"easeOutQuad"}),""!==this.caption&&(this.$photocaption&&t.remove(this.$photoCaption[0]),this.$photoCaption=e('<div class="materialbox-caption"></div>'),this.$photoCaption.text(this.caption),e("body").append(this.$photoCaption),this.$photoCaption.css({display:"inline"}),t({targets:this.$photoCaption[0],opacity:1,duration:this.options.inDuration,easing:"easeOutQuad"}));var s=0,o=this.originalWidth/this.windowWidth,a=this.originalHeight/this.windowHeight;this.newWidth=0,this.newHeight=0,o>a?(s=this.originalHeight/this.originalWidth,this.newWidth=.9*this.windowWidth,this.newHeight=.9*this.windowWidth*s):(s=this.originalWidth/this.originalHeight,this.newWidth=.9*this.windowHeight*s,this.newHeight=.9*this.windowHeight),this._animateImageIn(),this._handleWindowScrollBound=this._handleWindowScroll.bind(this),this._handleWindowResizeBound=this._handleWindowResize.bind(this),this._handleWindowEscapeBound=this._handleWindowEscape.bind(this),window.addEventListener("scroll",this._handleWindowScrollBound),window.addEventListener("resize",this._handleWindowResizeBound),window.addEventListener("keyup",this._handleWindowEscapeBound)}},{key:"close",value:function(){var e=this;this._updateVars(),this.doneAnimating=!1,"function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,this.el),t.remove(this.el),t.remove(this.$overlay[0]),""!==this.caption&&t.remove(this.$photoCaption[0]),window.removeEventListener("scroll",this._handleWindowScrollBound),window.removeEventListener("resize",this._handleWindowResizeBound),window.removeEventListener("keyup",this._handleWindowEscapeBound),t({targets:this.$overlay[0],opacity:0,duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){e.overlayActive=!1,e.$overlay.remove()}}),this._animateImageOut(),""!==this.caption&&t({targets:this.$photoCaption[0],opacity:0,duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){e.$photoCaption.remove()}})}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Materialbox}},{key:"defaults",get:function(){return i}}]),u}(u);M.Materialbox=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"materialbox","M_Materialbox")}(cash,M.anime),function(e){"use strict";var t={responsiveThreshold:0},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Parallax=s,s.options=e.extend({},n.defaults,i),s._enabled=window.innerWidth>s.options.responsiveThreshold,s.$img=s.$el.find("img").first(),s.$img.each((function(){this.complete&&e(this).trigger("load")})),s._updateParallax(),s._setupEventHandlers(),s._setupStyles(),n._parallaxes.push(s),s}return r(n,i),o(n,[{key:"destroy",value:function(){n._parallaxes.splice(n._parallaxes.indexOf(this),1),this.$img[0].style.transform="",this._removeEventHandlers(),this.$el[0].M_Parallax=void 0}},{key:"_setupEventHandlers",value:function(){this._handleImageLoadBound=this._handleImageLoad.bind(this),this.$img[0].addEventListener("load",this._handleImageLoadBound),0===n._parallaxes.length&&(n._handleScrollThrottled=M.throttle(n._handleScroll,5),window.addEventListener("scroll",n._handleScrollThrottled),n._handleWindowResizeThrottled=M.throttle(n._handleWindowResize,5),window.addEventListener("resize",n._handleWindowResizeThrottled))}},{key:"_removeEventHandlers",value:function(){this.$img[0].removeEventListener("load",this._handleImageLoadBound),0===n._parallaxes.length&&(window.removeEventListener("scroll",n._handleScrollThrottled),window.removeEventListener("resize",n._handleWindowResizeThrottled))}},{key:"_setupStyles",value:function(){this.$img[0].style.opacity=1}},{key:"_handleImageLoad",value:function(){this._updateParallax()}},{key:"_updateParallax",value:function(){var e=this.$el.height()>0?this.el.parentNode.offsetHeight:500,t=this.$img[0].offsetHeight-e,i=this.$el.offset().top+e,n=this.$el.offset().top,s=M.getDocumentScrollTop(),o=window.innerHeight,a=t*((s+o-n)/(e+o));this._enabled?i>s&&n<s+o&&(this.$img[0].style.transform="translate3D(-50%, "+a+"px, 0)"):this.$img[0].style.transform=""}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Parallax}},{key:"_handleScroll",value:function(){for(var e=0;e<n._parallaxes.length;e++){var t=n._parallaxes[e];t._updateParallax.call(t)}}},{key:"_handleWindowResize",value:function(){for(var e=0;e<n._parallaxes.length;e++){var t=n._parallaxes[e];t._enabled=window.innerWidth>t.options.responsiveThreshold}}},{key:"defaults",get:function(){return t}}]),n}(u);i._parallaxes=[],M.Parallax=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"parallax","M_Parallax")}(cash),function(e,t){"use strict";var i={duration:300,onShow:null,swipeable:!1,responsiveThreshold:1/0},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Tabs=n,n.options=e.extend({},u.defaults,i),n.$tabLinks=n.$el.children("li.tab").children("a"),n.index=0,n._setupActiveTabLink(),n.options.swipeable?n._setupSwipeableTabs():n._setupNormalTabs(),n._setTabsAndTabWidth(),n._createIndicator(),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this._indicator.parentNode.removeChild(this._indicator),this.options.swipeable?this._teardownSwipeableTabs():this._teardownNormalTabs(),this.$el[0].M_Tabs=void 0}},{key:"_setupEventHandlers",value:function(){this._handleWindowResizeBound=this._handleWindowResize.bind(this),window.addEventListener("resize",this._handleWindowResizeBound),this._handleTabClickBound=this._handleTabClick.bind(this),this.el.addEventListener("click",this._handleTabClickBound)}},{key:"_removeEventHandlers",value:function(){window.removeEventListener("resize",this._handleWindowResizeBound),this.el.removeEventListener("click",this._handleTabClickBound)}},{key:"_handleWindowResize",value:function(){this._setTabsAndTabWidth(),0!==this.tabWidth&&0!==this.tabsWidth&&(this._indicator.style.left=this._calcLeftPos(this.$activeTabLink)+"px",this._indicator.style.right=this._calcRightPos(this.$activeTabLink)+"px")}},{key:"_handleTabClick",value:function(t){var i=this,n=e(t.target).closest("li.tab"),s=e(t.target).closest("a");if(s.length&&s.parent().hasClass("tab"))if(n.hasClass("disabled"))t.preventDefault();else if(!s.attr("target")){this.$activeTabLink.removeClass("active");var o=this.$content;this.$activeTabLink=s,this.$content=e(M.escapeHash(s[0].hash)),this.$tabLinks=this.$el.children("li.tab").children("a"),this.$activeTabLink.addClass("active");var a=this.index;this.index=Math.max(this.$tabLinks.index(s),0),this.options.swipeable?this._tabsCarousel&&this._tabsCarousel.set(this.index,(function(){"function"==typeof i.options.onShow&&i.options.onShow.call(i,i.$content[0])})):this.$content.length&&(this.$content[0].style.display="block",this.$content.addClass("active"),"function"==typeof this.options.onShow&&this.options.onShow.call(this,this.$content[0]),o.length&&!o.is(this.$content)&&(o[0].style.display="none",o.removeClass("active"))),this._setTabsAndTabWidth(),this._animateIndicator(a),t.preventDefault()}}},{key:"_createIndicator",value:function(){var e=this,t=document.createElement("li");t.classList.add("indicator"),this.el.appendChild(t),this._indicator=t,setTimeout((function(){e._indicator.style.left=e._calcLeftPos(e.$activeTabLink)+"px",e._indicator.style.right=e._calcRightPos(e.$activeTabLink)+"px"}),0)}},{key:"_setupActiveTabLink",value:function(){this.$activeTabLink=e(this.$tabLinks.filter('[href="'+location.hash+'"]')),0===this.$activeTabLink.length&&(this.$activeTabLink=this.$el.children("li.tab").children("a.active").first()),0===this.$activeTabLink.length&&(this.$activeTabLink=this.$el.children("li.tab").children("a").first()),this.$tabLinks.removeClass("active"),this.$activeTabLink[0].classList.add("active"),this.index=Math.max(this.$tabLinks.index(this.$activeTabLink),0),this.$activeTabLink.length&&(this.$content=e(M.escapeHash(this.$activeTabLink[0].hash)),this.$content.addClass("active"))}},{key:"_setupSwipeableTabs",value:function(){var t=this;window.innerWidth>this.options.responsiveThreshold&&(this.options.swipeable=!1);var i=e();this.$tabLinks.each((function(t){var n=e(M.escapeHash(t.hash));n.addClass("carousel-item"),i=i.add(n)}));var n=e('<div class="tabs-content carousel carousel-slider"></div>');i.first().before(n),n.append(i),i[0].style.display="";var s=this.$activeTabLink.closest(".tab").index();this._tabsCarousel=M.Carousel.init(n[0],{fullWidth:!0,noWrap:!0,onCycleTo:function(i){var n=t.index;t.index=e(i).index(),t.$activeTabLink.removeClass("active"),t.$activeTabLink=t.$tabLinks.eq(t.index),t.$activeTabLink.addClass("active"),t._animateIndicator(n),"function"==typeof t.options.onShow&&t.options.onShow.call(t,t.$content[0])}}),this._tabsCarousel.set(s)}},{key:"_teardownSwipeableTabs",value:function(){var e=this._tabsCarousel.$el;this._tabsCarousel.destroy(),e.after(e.children()),e.remove()}},{key:"_setupNormalTabs",value:function(){this.$tabLinks.not(this.$activeTabLink).each((function(t){if(t.hash){var i=e(M.escapeHash(t.hash));i.length&&(i[0].style.display="none")}}))}},{key:"_teardownNormalTabs",value:function(){this.$tabLinks.each((function(t){if(t.hash){var i=e(M.escapeHash(t.hash));i.length&&(i[0].style.display="")}}))}},{key:"_setTabsAndTabWidth",value:function(){this.tabsWidth=this.$el.width(),this.tabWidth=Math.max(this.tabsWidth,this.el.scrollWidth)/this.$tabLinks.length}},{key:"_calcRightPos",value:function(e){return Math.ceil(this.tabsWidth-e.position().left-e[0].getBoundingClientRect().width)}},{key:"_calcLeftPos",value:function(e){return Math.floor(e.position().left)}},{key:"updateTabIndicator",value:function(){this._setTabsAndTabWidth(),this._animateIndicator(this.index)}},{key:"_animateIndicator",value:function(e){var i=0,n=0;this.index-e>=0?i=90:n=90;var s={targets:this._indicator,left:{value:this._calcLeftPos(this.$activeTabLink),delay:i},right:{value:this._calcRightPos(this.$activeTabLink),delay:n},duration:this.options.duration,easing:"easeOutQuad"};t.remove(this._indicator),t(s)}},{key:"select",value:function(e){var t=this.$tabLinks.filter('[href="#'+e+'"]');t.length&&t.trigger("click")}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Tabs}},{key:"defaults",get:function(){return i}}]),u}(u);M.Tabs=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"tabs","M_Tabs")}(cash,M.anime),function(e,t){"use strict";var i={exitDelay:200,enterDelay:0,html:null,margin:5,inDuration:250,outDuration:200,position:"bottom",transitionMovement:10},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Tooltip=n,n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.isHovered=!1,n.isFocused=!1,n._appendTooltipEl(),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){e(this.tooltipEl).remove(),this._removeEventHandlers(),this.el.M_Tooltip=void 0}},{key:"_appendTooltipEl",value:function(){var e=document.createElement("div");e.classList.add("material-tooltip"),this.tooltipEl=e;var t=document.createElement("div");t.classList.add("tooltip-content"),t.innerHTML=this.options.html,e.appendChild(t),document.body.appendChild(e)}},{key:"_updateTooltipContent",value:function(){this.tooltipEl.querySelector(".tooltip-content").innerHTML=this.options.html}},{key:"_setupEventHandlers",value:function(){this._handleMouseEnterBound=this._handleMouseEnter.bind(this),this._handleMouseLeaveBound=this._handleMouseLeave.bind(this),this._handleFocusBound=this._handleFocus.bind(this),this._handleBlurBound=this._handleBlur.bind(this),this.el.addEventListener("mouseenter",this._handleMouseEnterBound),this.el.addEventListener("mouseleave",this._handleMouseLeaveBound),this.el.addEventListener("focus",this._handleFocusBound,!0),this.el.addEventListener("blur",this._handleBlurBound,!0)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("mouseenter",this._handleMouseEnterBound),this.el.removeEventListener("mouseleave",this._handleMouseLeaveBound),this.el.removeEventListener("focus",this._handleFocusBound,!0),this.el.removeEventListener("blur",this._handleBlurBound,!0)}},{key:"open",value:function(t){this.isOpen||(t=void 0===t||void 0,this.isOpen=!0,this.options=e.extend({},this.options,this._getAttributeOptions()),this._updateTooltipContent(),this._setEnterDelayTimeout(t))}},{key:"close",value:function(){this.isOpen&&(this.isHovered=!1,this.isFocused=!1,this.isOpen=!1,this._setExitDelayTimeout())}},{key:"_setExitDelayTimeout",value:function(){var e=this;clearTimeout(this._exitDelayTimeout),this._exitDelayTimeout=setTimeout((function(){e.isHovered||e.isFocused||e._animateOut()}),this.options.exitDelay)}},{key:"_setEnterDelayTimeout",value:function(e){var t=this;clearTimeout(this._enterDelayTimeout),this._enterDelayTimeout=setTimeout((function(){(t.isHovered||t.isFocused||e)&&t._animateIn()}),this.options.enterDelay)}},{key:"_positionTooltip",value:function(){var t,i=this.el,n=this.tooltipEl,s=i.offsetHeight,o=i.offsetWidth,a=n.offsetHeight,r=n.offsetWidth,l=this.options.margin,u=void 0,d=void 0;this.xMovement=0,this.yMovement=0,u=i.getBoundingClientRect().top+M.getDocumentScrollTop(),d=i.getBoundingClientRect().left+M.getDocumentScrollLeft(),"top"===this.options.position?(u+=-a-l,d+=o/2-r/2,this.yMovement=-this.options.transitionMovement):"right"===this.options.position?(u+=s/2-a/2,d+=o+l,this.xMovement=this.options.transitionMovement):"left"===this.options.position?(u+=s/2-a/2,d+=-r-l,this.xMovement=-this.options.transitionMovement):(u+=s+l,d+=o/2-r/2,this.yMovement=this.options.transitionMovement),t=this._repositionWithinScreen(d,u,r,a),e(n).css({top:t.y+"px",left:t.x+"px"})}},{key:"_repositionWithinScreen",value:function(e,t,i,n){var s=M.getDocumentScrollLeft(),o=M.getDocumentScrollTop(),a=e-s,r=t-o,l={left:a,top:r,width:i,height:n},u=this.options.margin+this.options.transitionMovement,d=M.checkWithinContainer(document.body,l,u);return d.left?a=u:d.right&&(a-=a+i-window.innerWidth),d.top?r=u:d.bottom&&(r-=r+n-window.innerHeight),{x:a+s,y:r+o}}},{key:"_animateIn",value:function(){this._positionTooltip(),this.tooltipEl.style.visibility="visible",t.remove(this.tooltipEl),t({targets:this.tooltipEl,opacity:1,translateX:this.xMovement,translateY:this.yMovement,duration:this.options.inDuration,easing:"easeOutCubic"})}},{key:"_animateOut",value:function(){t.remove(this.tooltipEl),t({targets:this.tooltipEl,opacity:0,translateX:0,translateY:0,duration:this.options.outDuration,easing:"easeOutCubic"})}},{key:"_handleMouseEnter",value:function(){this.isHovered=!0,this.isFocused=!1,this.open(!1)}},{key:"_handleMouseLeave",value:function(){this.isHovered=!1,this.isFocused=!1,this.close()}},{key:"_handleFocus",value:function(){M.tabPressed&&(this.isFocused=!0,this.open(!1))}},{key:"_handleBlur",value:function(){this.isFocused=!1,this.close()}},{key:"_getAttributeOptions",value:function(){var e={},t=this.el.getAttribute("data-tooltip"),i=this.el.getAttribute("data-position");return t&&(e.html=t),i&&(e.position=i),e}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Tooltip}},{key:"defaults",get:function(){return i}}]),u}(u);M.Tooltip=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"tooltip","M_Tooltip")}(cash,M.anime),function(e){"use strict";var t=t||{},i=document.querySelectorAll.bind(document);function n(e){var t="";for(var i in e)e.hasOwnProperty(i)&&(t+=i+":"+e[i]+";");return t}var s={duration:750,show:function(e,t){if(2===e.button)return!1;var i=t||this,o=document.createElement("div");o.className="waves-ripple",i.appendChild(o);var a,r,l,u,d,c=(u={top:0,left:0},d=(a=i)&&a.ownerDocument,r=d.documentElement,void 0!==a.getBoundingClientRect&&(u=a.getBoundingClientRect()),l=function(e){return null!==(t=e)&&t===t.window?e:9===e.nodeType&&e.defaultView;var t}(d),{top:u.top+l.pageYOffset-r.clientTop,left:u.left+l.pageXOffset-r.clientLeft}),h=e.pageY-c.top,p=e.pageX-c.left,v="scale("+i.clientWidth/100*10+")";"touches"in e&&(h=e.touches[0].pageY-c.top,p=e.touches[0].pageX-c.left),o.setAttribute("data-hold",Date.now()),o.setAttribute("data-scale",v),o.setAttribute("data-x",p),o.setAttribute("data-y",h);var _={top:h+"px",left:p+"px"};o.className=o.className+" waves-notransition",o.setAttribute("style",n(_)),o.className=o.className.replace("waves-notransition",""),_["-webkit-transform"]=v,_["-moz-transform"]=v,_["-ms-transform"]=v,_["-o-transform"]=v,_.transform=v,_.opacity="1",_["-webkit-transition-duration"]=s.duration+"ms",_["-moz-transition-duration"]=s.duration+"ms",_["-o-transition-duration"]=s.duration+"ms",_["transition-duration"]=s.duration+"ms",_["-webkit-transition-timing-function"]="cubic-bezier(0.250, 0.460, 0.450, 0.940)",_["-moz-transition-timing-function"]="cubic-bezier(0.250, 0.460, 0.450, 0.940)",_["-o-transition-timing-function"]="cubic-bezier(0.250, 0.460, 0.450, 0.940)",_["transition-timing-function"]="cubic-bezier(0.250, 0.460, 0.450, 0.940)",o.setAttribute("style",n(_))},hide:function(e){o.touchup(e);var t=this,i=(t.clientWidth,null),a=t.getElementsByClassName("waves-ripple");if(!(a.length>0))return!1;var r=(i=a[a.length-1]).getAttribute("data-x"),l=i.getAttribute("data-y"),u=i.getAttribute("data-scale"),d=350-(Date.now()-Number(i.getAttribute("data-hold")));d<0&&(d=0),setTimeout((function(){var e={top:l+"px",left:r+"px",opacity:"0","-webkit-transition-duration":s.duration+"ms","-moz-transition-duration":s.duration+"ms","-o-transition-duration":s.duration+"ms","transition-duration":s.duration+"ms","-webkit-transform":u,"-moz-transform":u,"-ms-transform":u,"-o-transform":u,transform:u};i.setAttribute("style",n(e)),setTimeout((function(){try{t.removeChild(i)}catch(e){return!1}}),s.duration)}),d)},wrapInput:function(e){for(var t=0;t<e.length;t++){var i=e[t];if("input"===i.tagName.toLowerCase()){var n=i.parentNode;if("i"===n.tagName.toLowerCase()&&-1!==n.className.indexOf("waves-effect"))continue;var s=document.createElement("i");s.className=i.className+" waves-input-wrapper";var o=i.getAttribute("style");o||(o=""),s.setAttribute("style",o),i.className="waves-button-input",i.removeAttribute("style"),n.replaceChild(s,i),s.appendChild(i)}}}},o={touches:0,allowEvent:function(e){var t=!0;return"touchstart"===e.type?o.touches+=1:"touchend"===e.type||"touchcancel"===e.type?setTimeout((function(){o.touches>0&&(o.touches-=1)}),500):"mousedown"===e.type&&o.touches>0&&(t=!1),t},touchup:function(e){o.allowEvent(e)}};function a(t){var i=function(e){if(!1===o.allowEvent(e))return null;for(var t=null,i=e.target||e.srcElement;null!==i.parentNode;){if(!(i instanceof SVGElement)&&-1!==i.className.indexOf("waves-effect")){t=i;break}i=i.parentNode}return t}(t);null!==i&&(s.show(t,i),"ontouchstart"in e&&(i.addEventListener("touchend",s.hide,!1),i.addEventListener("touchcancel",s.hide,!1)),i.addEventListener("mouseup",s.hide,!1),i.addEventListener("mouseleave",s.hide,!1),i.addEventListener("dragend",s.hide,!1))}t.displayEffect=function(t){"duration"in(t=t||{})&&(s.duration=t.duration),s.wrapInput(i(".waves-effect")),"ontouchstart"in e&&document.body.addEventListener("touchstart",a,!1),document.body.addEventListener("mousedown",a,!1)},t.attach=function(t){"input"===t.tagName.toLowerCase()&&(s.wrapInput([t]),t=t.parentNode),"ontouchstart"in e&&t.addEventListener("touchstart",a,!1),t.addEventListener("mousedown",a,!1)},e.Waves=t,document.addEventListener("DOMContentLoaded",(function(){t.displayEffect()}),!1)}(window),function(e,t){"use strict";var i={html:"",displayLength:4e3,inDuration:300,outDuration:375,classes:"",completeCallback:null,activationPercent:.8},n=function(){function n(t){l(this,n),this.options=e.extend({},n.defaults,t),this.message=this.options.html,this.panning=!1,this.timeRemaining=this.options.displayLength,0===n._toasts.length&&n._createContainer(),n._toasts.push(this);var i=this._createToast();i.M_Toast=this,this.el=i,this.$el=e(i),this._animateIn(),this._setTimer()}return o(n,[{key:"_createToast",value:function(){var t=document.createElement("div");return t.classList.add("toast"),this.options.classes.length&&e(t).addClass(this.options.classes),("object"==typeof HTMLElement?this.message instanceof HTMLElement:this.message&&"object"==typeof this.message&&null!==this.message&&1===this.message.nodeType&&"string"==typeof this.message.nodeName)?t.appendChild(this.message):this.message.jquery?e(t).append(this.message[0]):t.innerHTML=this.message,n._container.appendChild(t),t}},{key:"_animateIn",value:function(){t({targets:this.el,top:0,opacity:1,duration:this.options.inDuration,easing:"easeOutCubic"})}},{key:"_setTimer",value:function(){var e=this;this.timeRemaining!==1/0&&(this.counterInterval=setInterval((function(){e.panning||(e.timeRemaining-=20),e.timeRemaining<=0&&e.dismiss()}),20))}},{key:"dismiss",value:function(){var e=this;window.clearInterval(this.counterInterval);var i=this.el.offsetWidth*this.options.activationPercent;this.wasSwiped&&(this.el.style.transition="transform .05s, opacity .05s",this.el.style.transform="translateX("+i+"px)",this.el.style.opacity=0),t({targets:this.el,opacity:0,marginTop:-40,duration:this.options.outDuration,easing:"easeOutExpo",complete:function(){"function"==typeof e.options.completeCallback&&e.options.completeCallback(),e.$el.remove(),n._toasts.splice(n._toasts.indexOf(e),1),0===n._toasts.length&&n._removeContainer()}})}}],[{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Toast}},{key:"_createContainer",value:function(){var e=document.createElement("div");e.setAttribute("id","toast-container"),e.addEventListener("touchstart",n._onDragStart),e.addEventListener("touchmove",n._onDragMove),e.addEventListener("touchend",n._onDragEnd),e.addEventListener("mousedown",n._onDragStart),document.addEventListener("mousemove",n._onDragMove),document.addEventListener("mouseup",n._onDragEnd),document.body.appendChild(e),n._container=e}},{key:"_removeContainer",value:function(){document.removeEventListener("mousemove",n._onDragMove),document.removeEventListener("mouseup",n._onDragEnd),e(n._container).remove(),n._container=null}},{key:"_onDragStart",value:function(t){if(t.target&&e(t.target).closest(".toast").length){var i=e(t.target).closest(".toast")[0].M_Toast;i.panning=!0,n._draggedToast=i,i.el.classList.add("panning"),i.el.style.transition="",i.startingXPos=n._xPos(t),i.time=Date.now(),i.xPos=n._xPos(t)}}},{key:"_onDragMove",value:function(e){if(n._draggedToast){e.preventDefault();var t=n._draggedToast;t.deltaX=Math.abs(t.xPos-n._xPos(e)),t.xPos=n._xPos(e),t.velocityX=t.deltaX/(Date.now()-t.time),t.time=Date.now();var i=t.xPos-t.startingXPos,s=t.el.offsetWidth*t.options.activationPercent;t.el.style.transform="translateX("+i+"px)",t.el.style.opacity=1-Math.abs(i/s)}}},{key:"_onDragEnd",value:function(){if(n._draggedToast){var e=n._draggedToast;e.panning=!1,e.el.classList.remove("panning");var t=e.xPos-e.startingXPos,i=e.el.offsetWidth*e.options.activationPercent;Math.abs(t)>i||e.velocityX>1?(e.wasSwiped=!0,e.dismiss()):(e.el.style.transition="transform .2s, opacity .2s",e.el.style.transform="",e.el.style.opacity=""),n._draggedToast=null}}},{key:"_xPos",value:function(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientX:e.clientX}},{key:"dismissAll",value:function(){for(var e in n._toasts)n._toasts[e].dismiss()}},{key:"defaults",get:function(){return i}}]),n}();n._toasts=[],n._container=null,n._draggedToast=null,M.Toast=n,M.toast=function(e){return new n(e)}}(cash,M.anime),function(e,t){"use strict";var i={edge:"left",draggable:!0,inDuration:250,outDuration:200,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null,preventScrolling:!0},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Sidenav=n,n.id=n.$el.attr("id"),n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.isFixed=n.el.classList.contains("sidenav-fixed"),n.isDragged=!1,n.lastWindowWidth=window.innerWidth,n.lastWindowHeight=window.innerHeight,n._createOverlay(),n._createDragTarget(),n._setupEventHandlers(),n._setupClasses(),n._setupFixed(),u._sidenavs.push(n),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this._enableBodyScrolling(),this._overlay.parentNode.removeChild(this._overlay),this.dragTarget.parentNode.removeChild(this.dragTarget),this.el.M_Sidenav=void 0,this.el.style.transform="";var e=u._sidenavs.indexOf(this);e>=0&&u._sidenavs.splice(e,1)}},{key:"_createOverlay",value:function(){var e=document.createElement("div");this._closeBound=this.close.bind(this),e.classList.add("sidenav-overlay"),e.addEventListener("click",this._closeBound),document.body.appendChild(e),this._overlay=e}},{key:"_setupEventHandlers",value:function(){0===u._sidenavs.length&&document.body.addEventListener("click",this._handleTriggerClick),this._handleDragTargetDragBound=this._handleDragTargetDrag.bind(this),this._handleDragTargetReleaseBound=this._handleDragTargetRelease.bind(this),this._handleCloseDragBound=this._handleCloseDrag.bind(this),this._handleCloseReleaseBound=this._handleCloseRelease.bind(this),this._handleCloseTriggerClickBound=this._handleCloseTriggerClick.bind(this),this.dragTarget.addEventListener("touchmove",this._handleDragTargetDragBound),this.dragTarget.addEventListener("touchend",this._handleDragTargetReleaseBound),this._overlay.addEventListener("touchmove",this._handleCloseDragBound),this._overlay.addEventListener("touchend",this._handleCloseReleaseBound),this.el.addEventListener("touchmove",this._handleCloseDragBound),this.el.addEventListener("touchend",this._handleCloseReleaseBound),this.el.addEventListener("click",this._handleCloseTriggerClickBound),this.isFixed&&(this._handleWindowResizeBound=this._handleWindowResize.bind(this),window.addEventListener("resize",this._handleWindowResizeBound))}},{key:"_removeEventHandlers",value:function(){1===u._sidenavs.length&&document.body.removeEventListener("click",this._handleTriggerClick),this.dragTarget.removeEventListener("touchmove",this._handleDragTargetDragBound),this.dragTarget.removeEventListener("touchend",this._handleDragTargetReleaseBound),this._overlay.removeEventListener("touchmove",this._handleCloseDragBound),this._overlay.removeEventListener("touchend",this._handleCloseReleaseBound),this.el.removeEventListener("touchmove",this._handleCloseDragBound),this.el.removeEventListener("touchend",this._handleCloseReleaseBound),this.el.removeEventListener("click",this._handleCloseTriggerClickBound),this.isFixed&&window.removeEventListener("resize",this._handleWindowResizeBound)}},{key:"_handleTriggerClick",value:function(t){var i=e(t.target).closest(".sidenav-trigger");if(t.target&&i.length){var n=M.getIdFromTrigger(i[0]),s=document.getElementById(n).M_Sidenav;s&&s.open(i),t.preventDefault()}}},{key:"_startDrag",value:function(e){var i=e.targetTouches[0].clientX;this.isDragged=!0,this._startingXpos=i,this._xPos=this._startingXpos,this._time=Date.now(),this._width=this.el.getBoundingClientRect().width,this._overlay.style.display="block",this._initialScrollTop=this.isOpen?this.el.scrollTop:M.getDocumentScrollTop(),this._verticallyScrolling=!1,t.remove(this.el),t.remove(this._overlay)}},{key:"_dragMoveUpdate",value:function(e){var t=e.targetTouches[0].clientX,i=this.isOpen?this.el.scrollTop:M.getDocumentScrollTop();this.deltaX=Math.abs(this._xPos-t),this._xPos=t,this.velocityX=this.deltaX/(Date.now()-this._time),this._time=Date.now(),this._initialScrollTop!==i&&(this._verticallyScrolling=!0)}},{key:"_handleDragTargetDrag",value:function(e){if(this.options.draggable&&!this._isCurrentlyFixed()&&!this._verticallyScrolling){this.isDragged||this._startDrag(e),this._dragMoveUpdate(e);var t=this._xPos-this._startingXpos,i=t>0?"right":"left";t=Math.min(this._width,Math.abs(t)),this.options.edge===i&&(t=0);var n=t,s="translateX(-100%)";"right"===this.options.edge&&(s="translateX(100%)",n=-n),this.percentOpen=Math.min(1,t/this._width),this.el.style.transform=s+" translateX("+n+"px)",this._overlay.style.opacity=this.percentOpen}}},{key:"_handleDragTargetRelease",value:function(){this.isDragged&&(this.percentOpen>.2?this.open():this._animateOut(),this.isDragged=!1,this._verticallyScrolling=!1)}},{key:"_handleCloseDrag",value:function(e){if(this.isOpen){if(!this.options.draggable||this._isCurrentlyFixed()||this._verticallyScrolling)return;this.isDragged||this._startDrag(e),this._dragMoveUpdate(e);var t=this._xPos-this._startingXpos,i=t>0?"right":"left";t=Math.min(this._width,Math.abs(t)),this.options.edge!==i&&(t=0);var n=-t;"right"===this.options.edge&&(n=-n),this.percentOpen=Math.min(1,1-t/this._width),this.el.style.transform="translateX("+n+"px)",this._overlay.style.opacity=this.percentOpen}}},{key:"_handleCloseRelease",value:function(){this.isOpen&&this.isDragged&&(this.percentOpen>.8?this._animateIn():this.close(),this.isDragged=!1,this._verticallyScrolling=!1)}},{key:"_handleCloseTriggerClick",value:function(t){e(t.target).closest(".sidenav-close").length&&!this._isCurrentlyFixed()&&this.close()}},{key:"_handleWindowResize",value:function(){this.lastWindowWidth!==window.innerWidth&&(window.innerWidth>992?this.open():this.close()),this.lastWindowWidth=window.innerWidth,this.lastWindowHeight=window.innerHeight}},{key:"_setupClasses",value:function(){"right"===this.options.edge&&(this.el.classList.add("right-aligned"),this.dragTarget.classList.add("right-aligned"))}},{key:"_removeClasses",value:function(){this.el.classList.remove("right-aligned"),this.dragTarget.classList.remove("right-aligned")}},{key:"_setupFixed",value:function(){this._isCurrentlyFixed()&&this.open()}},{key:"_isCurrentlyFixed",value:function(){return this.isFixed&&window.innerWidth>992}},{key:"_createDragTarget",value:function(){var e=document.createElement("div");e.classList.add("drag-target"),document.body.appendChild(e),this.dragTarget=e}},{key:"_preventBodyScrolling",value:function(){document.body.style.overflow="hidden"}},{key:"_enableBodyScrolling",value:function(){document.body.style.overflow=""}},{key:"open",value:function(){!0!==this.isOpen&&(this.isOpen=!0,"function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,this.el),this._isCurrentlyFixed()?(t.remove(this.el),t({targets:this.el,translateX:0,duration:0,easing:"easeOutQuad"}),this._enableBodyScrolling(),this._overlay.style.display="none"):(this.options.preventScrolling&&this._preventBodyScrolling(),this.isDragged&&1==this.percentOpen||this._animateIn()))}},{key:"close",value:function(){if(!1!==this.isOpen)if(this.isOpen=!1,"function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,this.el),this._isCurrentlyFixed()){var e="left"===this.options.edge?"-105%":"105%";this.el.style.transform="translateX("+e+")"}else this._enableBodyScrolling(),this.isDragged&&0==this.percentOpen?this._overlay.style.display="none":this._animateOut()}},{key:"_animateIn",value:function(){this._animateSidenavIn(),this._animateOverlayIn()}},{key:"_animateSidenavIn",value:function(){var e=this,i="left"===this.options.edge?-1:1;this.isDragged&&(i="left"===this.options.edge?i+this.percentOpen:i-this.percentOpen),t.remove(this.el),t({targets:this.el,translateX:[100*i+"%",0],duration:this.options.inDuration,easing:"easeOutQuad",complete:function(){"function"==typeof e.options.onOpenEnd&&e.options.onOpenEnd.call(e,e.el)}})}},{key:"_animateOverlayIn",value:function(){var i=0;this.isDragged?i=this.percentOpen:e(this._overlay).css({display:"block"}),t.remove(this._overlay),t({targets:this._overlay,opacity:[i,1],duration:this.options.inDuration,easing:"easeOutQuad"})}},{key:"_animateOut",value:function(){this._animateSidenavOut(),this._animateOverlayOut()}},{key:"_animateSidenavOut",value:function(){var e=this,i="left"===this.options.edge?-1:1,n=0;this.isDragged&&(n="left"===this.options.edge?i+this.percentOpen:i-this.percentOpen),t.remove(this.el),t({targets:this.el,translateX:[100*n+"%",105*i+"%"],duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){"function"==typeof e.options.onCloseEnd&&e.options.onCloseEnd.call(e,e.el)}})}},{key:"_animateOverlayOut",value:function(){var i=this;t.remove(this._overlay),t({targets:this._overlay,opacity:0,duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){e(i._overlay).css("display","none")}})}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Sidenav}},{key:"defaults",get:function(){return i}}]),u}(u);n._sidenavs=[],M.Sidenav=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"sidenav","M_Sidenav")}(cash,M.anime),function(e,t){"use strict";var i={throttle:100,scrollOffset:200,activeClass:"active",getActiveElement:function(e){return'a[href="#'+e+'"]'}},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_ScrollSpy=n,n.options=e.extend({},u.defaults,i),u._elements.push(n),u._count++,u._increment++,n.tickId=-1,n.id=u._increment,n._setupEventHandlers(),n._handleWindowScroll(),n}return r(u,n),o(u,[{key:"destroy",value:function(){u._elements.splice(u._elements.indexOf(this),1),u._elementsInView.splice(u._elementsInView.indexOf(this),1),u._visibleElements.splice(u._visibleElements.indexOf(this.$el),1),u._count--,this._removeEventHandlers(),e(this.options.getActiveElement(this.$el.attr("id"))).removeClass(this.options.activeClass),this.el.M_ScrollSpy=void 0}},{key:"_setupEventHandlers",value:function(){var e=M.throttle(this._handleWindowScroll,200);this._handleThrottledResizeBound=e.bind(this),this._handleWindowScrollBound=this._handleWindowScroll.bind(this),1===u._count&&(window.addEventListener("scroll",this._handleWindowScrollBound),window.addEventListener("resize",this._handleThrottledResizeBound),document.body.addEventListener("click",this._handleTriggerClick))}},{key:"_removeEventHandlers",value:function(){0===u._count&&(window.removeEventListener("scroll",this._handleWindowScrollBound),window.removeEventListener("resize",this._handleThrottledResizeBound),document.body.removeEventListener("click",this._handleTriggerClick))}},{key:"_handleTriggerClick",value:function(i){for(var n=e(i.target),s=u._elements.length-1;s>=0;s--){var o=u._elements[s];if(n.is('a[href="#'+o.$el.attr("id")+'"]')){i.preventDefault();var a=o.$el.offset().top+1;t({targets:[document.documentElement,document.body],scrollTop:a-o.options.scrollOffset,duration:400,easing:"easeOutCubic"});break}}}},{key:"_handleWindowScroll",value:function(){u._ticks++;for(var e=M.getDocumentScrollTop(),t=M.getDocumentScrollLeft(),i=t+window.innerWidth,n=e+window.innerHeight,s=u._findElements(e,i,n,t),o=0;o<s.length;o++){var a=s[o];a.tickId<0&&a._enter(),a.tickId=u._ticks}for(var r=0;r<u._elementsInView.length;r++){var l=u._elementsInView[r],d=l.tickId;d>=0&&d!==u._ticks&&(l._exit(),l.tickId=-1)}u._elementsInView=s}},{key:"_enter",value:function(){u._visibleElements=u._visibleElements.filter((function(e){return 0!=e.height()})),u._visibleElements[0]?(e(this.options.getActiveElement(u._visibleElements[0].attr("id"))).removeClass(this.options.activeClass),u._visibleElements[0][0].M_ScrollSpy&&this.id<u._visibleElements[0][0].M_ScrollSpy.id?u._visibleElements.unshift(this.$el):u._visibleElements.push(this.$el)):u._visibleElements.push(this.$el),e(this.options.getActiveElement(u._visibleElements[0].attr("id"))).addClass(this.options.activeClass)}},{key:"_exit",value:function(){var t=this;u._visibleElements=u._visibleElements.filter((function(e){return 0!=e.height()})),u._visibleElements[0]&&(e(this.options.getActiveElement(u._visibleElements[0].attr("id"))).removeClass(this.options.activeClass),u._visibleElements=u._visibleElements.filter((function(e){return e.attr("id")!=t.$el.attr("id")})),u._visibleElements[0]&&e(this.options.getActiveElement(u._visibleElements[0].attr("id"))).addClass(this.options.activeClass))}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_ScrollSpy}},{key:"_findElements",value:function(e,t,i,n){for(var s=[],o=0;o<u._elements.length;o++){var a=u._elements[o],r=e+a.options.scrollOffset||200;if(a.$el.height()>0){var l=a.$el.offset().top,d=a.$el.offset().left,c=d+a.$el.width(),h=l+a.$el.height();!(d>t||c<n||l>i||h<r)&&s.push(a)}}return s}},{key:"defaults",get:function(){return i}}]),u}(u);n._elements=[],n._elementsInView=[],n._visibleElements=[],n._count=0,n._increment=0,n._ticks=0,M.ScrollSpy=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"scrollSpy","M_ScrollSpy")}(cash,M.anime),function(e){"use strict";var t={data:{},limit:1/0,onAutocomplete:null,minLength:1,sortFunction:function(e,t,i){return e.indexOf(i)-t.indexOf(i)}},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Autocomplete=s,s.options=e.extend({},n.defaults,i),s.isOpen=!1,s.count=0,s.activeIndex=-1,s.oldVal,s.$inputField=s.$el.closest(".input-field"),s.$active=e(),s._mousedown=!1,s._setupDropdown(),s._setupEventHandlers(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this._removeDropdown(),this.el.M_Autocomplete=void 0}},{key:"_setupEventHandlers",value:function(){this._handleInputBlurBound=this._handleInputBlur.bind(this),this._handleInputKeyupAndFocusBound=this._handleInputKeyupAndFocus.bind(this),this._handleInputKeydownBound=this._handleInputKeydown.bind(this),this._handleInputClickBound=this._handleInputClick.bind(this),this._handleContainerMousedownAndTouchstartBound=this._handleContainerMousedownAndTouchstart.bind(this),this._handleContainerMouseupAndTouchendBound=this._handleContainerMouseupAndTouchend.bind(this),this.el.addEventListener("blur",this._handleInputBlurBound),this.el.addEventListener("keyup",this._handleInputKeyupAndFocusBound),this.el.addEventListener("focus",this._handleInputKeyupAndFocusBound),this.el.addEventListener("keydown",this._handleInputKeydownBound),this.el.addEventListener("click",this._handleInputClickBound),this.container.addEventListener("mousedown",this._handleContainerMousedownAndTouchstartBound),this.container.addEventListener("mouseup",this._handleContainerMouseupAndTouchendBound),void 0!==window.ontouchstart&&(this.container.addEventListener("touchstart",this._handleContainerMousedownAndTouchstartBound),this.container.addEventListener("touchend",this._handleContainerMouseupAndTouchendBound))}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("blur",this._handleInputBlurBound),this.el.removeEventListener("keyup",this._handleInputKeyupAndFocusBound),this.el.removeEventListener("focus",this._handleInputKeyupAndFocusBound),this.el.removeEventListener("keydown",this._handleInputKeydownBound),this.el.removeEventListener("click",this._handleInputClickBound),this.container.removeEventListener("mousedown",this._handleContainerMousedownAndTouchstartBound),this.container.removeEventListener("mouseup",this._handleContainerMouseupAndTouchendBound),void 0!==window.ontouchstart&&(this.container.removeEventListener("touchstart",this._handleContainerMousedownAndTouchstartBound),this.container.removeEventListener("touchend",this._handleContainerMouseupAndTouchendBound))}},{key:"_setupDropdown",value:function(){var t=this;this.container=document.createElement("ul"),this.container.id="autocomplete-options-"+M.guid(),e(this.container).addClass("autocomplete-content dropdown-content"),this.$inputField.append(this.container),this.el.setAttribute("data-target",this.container.id),this.dropdown=M.Dropdown.init(this.el,{autoFocus:!1,closeOnClick:!1,coverTrigger:!1,onItemClick:function(i){t.selectOption(e(i))}}),this.el.removeEventListener("click",this.dropdown._handleClickBound)}},{key:"_removeDropdown",value:function(){this.container.parentNode.removeChild(this.container)}},{key:"_handleInputBlur",value:function(){this._mousedown||(this.close(),this._resetAutocomplete())}},{key:"_handleInputKeyupAndFocus",value:function(e){"keyup"===e.type&&(n._keydown=!1),this.count=0;var t=this.el.value.toLowerCase();13!==e.keyCode&&38!==e.keyCode&&40!==e.keyCode&&(this.oldVal===t||!M.tabPressed&&"focus"===e.type||this.open(),this.oldVal=t)}},{key:"_handleInputKeydown",value:function(t){n._keydown=!0;var i=t.keyCode,s=void 0,o=e(this.container).children("li").length;i===M.keys.ENTER&&this.activeIndex>=0?(s=e(this.container).children("li").eq(this.activeIndex)).length&&(this.selectOption(s),t.preventDefault()):i!==M.keys.ARROW_UP&&i!==M.keys.ARROW_DOWN||(t.preventDefault(),i===M.keys.ARROW_UP&&this.activeIndex>0&&this.activeIndex--,i===M.keys.ARROW_DOWN&&this.activeIndex<o-1&&this.activeIndex++,this.$active.removeClass("active"),this.activeIndex>=0&&(this.$active=e(this.container).children("li").eq(this.activeIndex),this.$active.addClass("active")))}},{key:"_handleInputClick",value:function(e){this.open()}},{key:"_handleContainerMousedownAndTouchstart",value:function(e){this._mousedown=!0}},{key:"_handleContainerMouseupAndTouchend",value:function(e){this._mousedown=!1}},{key:"_highlight",value:function(e,t){var i=t.find("img"),n=t.text().toLowerCase().indexOf(""+e.toLowerCase()),s=n+e.length-1,o=t.text().slice(0,n),a=t.text().slice(n,s+1),r=t.text().slice(s+1);t.html("<span>"+o+"<span class='highlight'>"+a+"</span>"+r+"</span>"),i.length&&t.prepend(i)}},{key:"_resetCurrentElement",value:function(){this.activeIndex=-1,this.$active.removeClass("active")}},{key:"_resetAutocomplete",value:function(){e(this.container).empty(),this._resetCurrentElement(),this.oldVal=null,this.isOpen=!1,this._mousedown=!1}},{key:"selectOption",value:function(e){var t=e.text().trim();this.el.value=t,this.$el.trigger("change"),this._resetAutocomplete(),this.close(),"function"==typeof this.options.onAutocomplete&&this.options.onAutocomplete.call(this,t)}},{key:"_renderDropdown",value:function(t,i){var n=this;this._resetAutocomplete();var s=[];for(var o in t)if(t.hasOwnProperty(o)&&-1!==o.toLowerCase().indexOf(i)){if(this.count>=this.options.limit)break;var a={data:t[o],key:o};s.push(a),this.count++}if(this.options.sortFunction){s.sort((function(e,t){return n.options.sortFunction(e.key.toLowerCase(),t.key.toLowerCase(),i.toLowerCase())}))}for(var r=0;r<s.length;r++){var l=s[r],u=e("<li></li>");l.data?u.append('<img src="'+l.data+'" class="right circle"><span>'+l.key+"</span>"):u.append("<span>"+l.key+"</span>"),e(this.container).append(u),this._highlight(i,u)}}},{key:"open",value:function(){var e=this.el.value.toLowerCase();this._resetAutocomplete(),e.length>=this.options.minLength&&(this.isOpen=!0,this._renderDropdown(this.options.data,e)),this.dropdown.isOpen?this.dropdown.recalculateDimensions():this.dropdown.open()}},{key:"close",value:function(){this.dropdown.close()}},{key:"updateData",value:function(e){var t=this.el.value.toLowerCase();this.options.data=e,this.isOpen&&this._renderDropdown(e,t)}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Autocomplete}},{key:"defaults",get:function(){return t}}]),n}(u);i._keydown=!1,M.Autocomplete=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"autocomplete","M_Autocomplete")}(cash),function(e){M.updateTextFields=function(){e("input[type=text], input[type=password], input[type=email], input[type=url], input[type=tel], input[type=number], input[type=search], input[type=date], input[type=time], textarea").each((function(t,i){var n=e(this);t.value.length>0||e(t).is(":focus")||t.autofocus||null!==n.attr("placeholder")?n.siblings("label").addClass("active"):t.validity?n.siblings("label").toggleClass("active",!0===t.validity.badInput):n.siblings("label").removeClass("active")}))},M.validate_field=function(e){var t=null!==e.attr("data-length"),i=parseInt(e.attr("data-length")),n=e[0].value.length;0!==n||!1!==e[0].validity.badInput||e.is(":required")?e.hasClass("validate")&&(e.is(":valid")&&t&&n<=i||e.is(":valid")&&!t?(e.removeClass("invalid"),e.addClass("valid")):(e.removeClass("valid"),e.addClass("invalid"))):e.hasClass("validate")&&(e.removeClass("valid"),e.removeClass("invalid"))},M.textareaAutoResize=function(t){if(t instanceof Element&&(t=e(t)),t.length){var i=e(".hiddendiv").first();i.length||(i=e('<div class="hiddendiv common"></div>'),e("body").append(i));var n=t.css("font-family"),s=t.css("font-size"),o=t.css("line-height"),a=t.css("padding-top"),r=t.css("padding-right"),l=t.css("padding-bottom"),u=t.css("padding-left");s&&i.css("font-size",s),n&&i.css("font-family",n),o&&i.css("line-height",o),a&&i.css("padding-top",a),r&&i.css("padding-right",r),l&&i.css("padding-bottom",l),u&&i.css("padding-left",u),t.data("original-height")||t.data("original-height",t.height()),"off"===t.attr("wrap")&&i.css("overflow-wrap","normal").css("white-space","pre"),i.text(t[0].value+"\n");var d=i.html().replace(/\n/g,"<br>");i.html(d),t[0].offsetWidth>0&&t[0].offsetHeight>0?i.css("width",t.width()+"px"):i.css("width",window.innerWidth/2+"px"),t.data("original-height")<=i.innerHeight()?t.css("height",i.innerHeight()+"px"):t[0].value.length<t.data("previous-length")&&t.css("height",t.data("original-height")+"px"),t.data("previous-length",t[0].value.length)}else console.error("No textarea element found")},e(document).ready((function(){var t="input[type=text], input[type=password], input[type=email], input[type=url], input[type=tel], input[type=number], input[type=search], input[type=date], input[type=time], textarea";e(document).on("change",t,(function(){0===this.value.length&&null===e(this).attr("placeholder")||e(this).siblings("label").addClass("active"),M.validate_field(e(this))})),e(document).ready((function(){M.updateTextFields()})),e(document).on("reset",(function(i){var n=e(i.target);n.is("form")&&(n.find(t).removeClass("valid").removeClass("invalid"),n.find(t).each((function(t){this.value.length&&e(this).siblings("label").removeClass("active")})),setTimeout((function(){n.find("select").each((function(){this.M_FormSelect&&e(this).trigger("change")}))}),0))})),document.addEventListener("focus",(function(i){e(i.target).is(t)&&e(i.target).siblings("label, .prefix").addClass("active")}),!0),document.addEventListener("blur",(function(i){var n=e(i.target);if(n.is(t)){var s=".prefix";0===n[0].value.length&&!0!==n[0].validity.badInput&&null===n.attr("placeholder")&&(s+=", label"),n.siblings(s).removeClass("active"),M.validate_field(n)}}),!0);e(document).on("keyup","input[type=radio], input[type=checkbox]",(function(t){if(t.which===M.keys.TAB)return e(this).addClass("tabbed"),void e(this).one("blur",(function(t){e(this).removeClass("tabbed")}))}));var i=".materialize-textarea";e(i).each((function(){var t=e(this);t.data("original-height",t.height()),t.data("previous-length",this.value.length),M.textareaAutoResize(t)})),e(document).on("keyup",i,(function(){M.textareaAutoResize(e(this))})),e(document).on("keydown",i,(function(){M.textareaAutoResize(e(this))})),e(document).on("change",'.file-field input[type="file"]',(function(){for(var t=e(this).closest(".file-field").find("input.file-path"),i=e(this)[0].files,n=[],s=0;s<i.length;s++)n.push(i[s].name);t[0].value=n.join(", "),t.trigger("change")}))}))}(cash),function(e,t){"use strict";var i={indicators:!0,height:400,duration:500,interval:6e3},n=function(n){function u(i,n){l(this,u);var s=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,i,n));return s.el.M_Slider=s,s.options=e.extend({},u.defaults,n),s.$slider=s.$el.find(".slides"),s.$slides=s.$slider.children("li"),s.activeIndex=s.$slides.filter((function(t){return e(t).hasClass("active")})).first().index(),-1!=s.activeIndex&&(s.$active=s.$slides.eq(s.activeIndex)),s._setSliderHeight(),s.$slides.find(".caption").each((function(e){s._animateCaptionIn(e,0)})),s.$slides.find("img").each((function(t){var i="data:image/gif;base64,R0lGODlhAQABAIABAP///wAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==";e(t).attr("src")!==i&&(e(t).css("background-image",'url("'+e(t).attr("src")+'")'),e(t).attr("src",i))})),s._setupIndicators(),s.$active?s.$active.css("display","block"):(s.$slides.first().addClass("active"),t({targets:s.$slides.first()[0],opacity:1,duration:s.options.duration,easing:"easeOutQuad"}),s.activeIndex=0,s.$active=s.$slides.eq(s.activeIndex),s.options.indicators&&s.$indicators.eq(s.activeIndex).addClass("active")),s.$active.find("img").each((function(e){t({targets:s.$active.find(".caption")[0],opacity:1,translateX:0,translateY:0,duration:s.options.duration,easing:"easeOutQuad"})})),s._setupEventHandlers(),s.start(),s}return r(u,n),o(u,[{key:"destroy",value:function(){this.pause(),this._removeIndicators(),this._removeEventHandlers(),this.el.M_Slider=void 0}},{key:"_setupEventHandlers",value:function(){var e=this;this._handleIntervalBound=this._handleInterval.bind(this),this._handleIndicatorClickBound=this._handleIndicatorClick.bind(this),this.options.indicators&&this.$indicators.each((function(t){t.addEventListener("click",e._handleIndicatorClickBound)}))}},{key:"_removeEventHandlers",value:function(){var e=this;this.options.indicators&&this.$indicators.each((function(t){t.removeEventListener("click",e._handleIndicatorClickBound)}))}},{key:"_handleIndicatorClick",value:function(t){var i=e(t.target).index();this.set(i)}},{key:"_handleInterval",value:function(){var e=this.$slider.find(".active").index();this.$slides.length===e+1?e=0:e+=1,this.set(e)}},{key:"_animateCaptionIn",value:function(i,n){var s={targets:i,opacity:0,duration:n,easing:"easeOutQuad"};e(i).hasClass("center-align")?s.translateY=-100:e(i).hasClass("right-align")?s.translateX=100:e(i).hasClass("left-align")&&(s.translateX=-100),t(s)}},{key:"_setSliderHeight",value:function(){this.$el.hasClass("fullscreen")||(this.options.indicators?this.$el.css("height",this.options.height+40+"px"):this.$el.css("height",this.options.height+"px"),this.$slider.css("height",this.options.height+"px"))}},{key:"_setupIndicators",value:function(){var t=this;this.options.indicators&&(this.$indicators=e('<ul class="indicators"></ul>'),this.$slides.each((function(i,n){var s=e('<li class="indicator-item"></li>');t.$indicators.append(s[0])})),this.$el.append(this.$indicators[0]),this.$indicators=this.$indicators.children("li.indicator-item"))}},{key:"_removeIndicators",value:function(){this.$el.find("ul.indicators").remove()}},{key:"set",value:function(e){var i=this;if(e>=this.$slides.length?e=0:e<0&&(e=this.$slides.length-1),this.activeIndex!=e){this.$active=this.$slides.eq(this.activeIndex);var n=this.$active.find(".caption");this.$active.removeClass("active"),t({targets:this.$active[0],opacity:0,duration:this.options.duration,easing:"easeOutQuad",complete:function(){i.$slides.not(".active").each((function(e){t({targets:e,opacity:0,translateX:0,translateY:0,duration:0,easing:"easeOutQuad"})}))}}),this._animateCaptionIn(n[0],this.options.duration),this.options.indicators&&(this.$indicators.eq(this.activeIndex).removeClass("active"),this.$indicators.eq(e).addClass("active")),t({targets:this.$slides.eq(e)[0],opacity:1,duration:this.options.duration,easing:"easeOutQuad"}),t({targets:this.$slides.eq(e).find(".caption")[0],opacity:1,translateX:0,translateY:0,duration:this.options.duration,delay:this.options.duration,easing:"easeOutQuad"}),this.$slides.eq(e).addClass("active"),this.activeIndex=e,this.start()}}},{key:"pause",value:function(){clearInterval(this.interval)}},{key:"start",value:function(){clearInterval(this.interval),this.interval=setInterval(this._handleIntervalBound,this.options.duration+this.options.interval)}},{key:"next",value:function(){var e=this.activeIndex+1;e>=this.$slides.length?e=0:e<0&&(e=this.$slides.length-1),this.set(e)}},{key:"prev",value:function(){var e=this.activeIndex-1;e>=this.$slides.length?e=0:e<0&&(e=this.$slides.length-1),this.set(e)}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Slider}},{key:"defaults",get:function(){return i}}]),u}(u);M.Slider=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"slider","M_Slider")}(cash,M.anime),function(e,t){e(document).on("click",".card",(function(i){if(e(this).children(".card-reveal").length){var n=e(i.target).closest(".card");void 0===n.data("initialOverflow")&&n.data("initialOverflow",void 0===n.css("overflow")?"":n.css("overflow"));var s=e(this).find(".card-reveal");e(i.target).is(e(".card-reveal .card-title"))||e(i.target).is(e(".card-reveal .card-title i"))?t({targets:s[0],translateY:0,duration:225,easing:"easeInOutQuad",complete:function(t){var i=t.animatables[0].target;e(i).css({display:"none"}),n.css("overflow",n.data("initialOverflow"))}}):(e(i.target).is(e(".card .activator"))||e(i.target).is(e(".card .activator i")))&&(n.css("overflow","hidden"),s.css({display:"block"}),t({targets:s[0],translateY:"-100%",duration:300,easing:"easeInOutQuad"}))}}))}(cash,M.anime),function(e){"use strict";var t={data:[],placeholder:"",secondaryPlaceholder:"",autocompleteOptions:{},limit:1/0,onChipAdd:null,onChipSelect:null,onChipDelete:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Chips=s,s.options=e.extend({},n.defaults,i),s.$el.addClass("chips input-field"),s.chipsData=[],s.$chips=e(),s._setupInput(),s.hasAutocomplete=Object.keys(s.options.autocompleteOptions).length>0,s.$input.attr("id")||s.$input.attr("id",M.guid()),s.options.data.length&&(s.chipsData=s.options.data,s._renderChips(s.chipsData)),s.hasAutocomplete&&s._setupAutocomplete(),s._setPlaceholder(),s._setupLabel(),s._setupEventHandlers(),s}return r(n,i),o(n,[{key:"getData",value:function(){return this.chipsData}},{key:"destroy",value:function(){this._removeEventHandlers(),this.$chips.remove(),this.el.M_Chips=void 0}},{key:"_setupEventHandlers",value:function(){this._handleChipClickBound=this._handleChipClick.bind(this),this._handleInputKeydownBound=this._handleInputKeydown.bind(this),this._handleInputFocusBound=this._handleInputFocus.bind(this),this._handleInputBlurBound=this._handleInputBlur.bind(this),this.el.addEventListener("click",this._handleChipClickBound),document.addEventListener("keydown",n._handleChipsKeydown),document.addEventListener("keyup",n._handleChipsKeyup),this.el.addEventListener("blur",n._handleChipsBlur,!0),this.$input[0].addEventListener("focus",this._handleInputFocusBound),this.$input[0].addEventListener("blur",this._handleInputBlurBound),this.$input[0].addEventListener("keydown",this._handleInputKeydownBound)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleChipClickBound),document.removeEventListener("keydown",n._handleChipsKeydown),document.removeEventListener("keyup",n._handleChipsKeyup),this.el.removeEventListener("blur",n._handleChipsBlur,!0),this.$input[0].removeEventListener("focus",this._handleInputFocusBound),this.$input[0].removeEventListener("blur",this._handleInputBlurBound),this.$input[0].removeEventListener("keydown",this._handleInputKeydownBound)}},{key:"_handleChipClick",value:function(t){var i=e(t.target).closest(".chip"),n=e(t.target).is(".close");if(i.length){var s=i.index();n?(this.deleteChip(s),this.$input[0].focus()):this.selectChip(s)}else this.$input[0].focus()}},{key:"_handleInputFocus",value:function(){this.$el.addClass("focus")}},{key:"_handleInputBlur",value:function(){this.$el.removeClass("focus")}},{key:"_handleInputKeydown",value:function(e){if(n._keydown=!0,13===e.keyCode){if(this.hasAutocomplete&&this.autocomplete&&this.autocomplete.isOpen)return;e.preventDefault(),this.addChip({tag:this.$input[0].value}),this.$input[0].value=""}else 8!==e.keyCode&&37!==e.keyCode||""!==this.$input[0].value||!this.chipsData.length||(e.preventDefault(),this.selectChip(this.chipsData.length-1))}},{key:"_renderChip",value:function(t){if(t.tag){var i=document.createElement("div"),n=document.createElement("i");if(i.classList.add("chip"),i.textContent=t.tag,i.setAttribute("tabindex",0),e(n).addClass("material-icons close"),n.textContent="close",t.image){var s=document.createElement("img");s.setAttribute("src",t.image),i.insertBefore(s,i.firstChild)}return i.appendChild(n),i}}},{key:"_renderChips",value:function(){this.$chips.remove();for(var e=0;e<this.chipsData.length;e++){var t=this._renderChip(this.chipsData[e]);this.$el.append(t),this.$chips.add(t)}this.$el.append(this.$input[0])}},{key:"_setupAutocomplete",value:function(){var e=this;this.options.autocompleteOptions.onAutocomplete=function(t){e.addChip({tag:t}),e.$input[0].value="",e.$input[0].focus()},this.autocomplete=M.Autocomplete.init(this.$input[0],this.options.autocompleteOptions)}},{key:"_setupInput",value:function(){this.$input=this.$el.find("input"),this.$input.length||(this.$input=e("<input></input>"),this.$el.append(this.$input)),this.$input.addClass("input")}},{key:"_setupLabel",value:function(){this.$label=this.$el.find("label"),this.$label.length&&this.$label.setAttribute("for",this.$input.attr("id"))}},{key:"_setPlaceholder",value:function(){void 0!==this.chipsData&&!this.chipsData.length&&this.options.placeholder?e(this.$input).prop("placeholder",this.options.placeholder):(void 0===this.chipsData||this.chipsData.length)&&this.options.secondaryPlaceholder&&e(this.$input).prop("placeholder",this.options.secondaryPlaceholder)}},{key:"_isValid",value:function(e){if(e.hasOwnProperty("tag")&&""!==e.tag){for(var t=!1,i=0;i<this.chipsData.length;i++)if(this.chipsData[i].tag===e.tag){t=!0;break}return!t}return!1}},{key:"addChip",value:function(t){if(this._isValid(t)&&!(this.chipsData.length>=this.options.limit)){var i=this._renderChip(t);this.$chips.add(i),this.chipsData.push(t),e(this.$input).before(i),this._setPlaceholder(),"function"==typeof this.options.onChipAdd&&this.options.onChipAdd.call(this,this.$el,i)}}},{key:"deleteChip",value:function(t){var i=this.$chips.eq(t);this.$chips.eq(t).remove(),this.$chips=this.$chips.filter((function(t){return e(t).index()>=0})),this.chipsData.splice(t,1),this._setPlaceholder(),"function"==typeof this.options.onChipDelete&&this.options.onChipDelete.call(this,this.$el,i[0])}},{key:"selectChip",value:function(e){var t=this.$chips.eq(e);this._selectedChip=t,t[0].focus(),"function"==typeof this.options.onChipSelect&&this.options.onChipSelect.call(this,this.$el,t[0])}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Chips}},{key:"_handleChipsKeydown",value:function(t){n._keydown=!0;var i=e(t.target).closest(".chips"),s=t.target&&i.length;if(!e(t.target).is("input, textarea")&&s){var o=i[0].M_Chips;if(8===t.keyCode||46===t.keyCode){t.preventDefault();var a=o.chipsData.length;if(o._selectedChip){var r=o._selectedChip.index();o.deleteChip(r),o._selectedChip=null,a=Math.max(r-1,0)}o.chipsData.length&&o.selectChip(a)}else if(37===t.keyCode){if(o._selectedChip){var l=o._selectedChip.index()-1;if(l<0)return;o.selectChip(l)}}else if(39===t.keyCode&&o._selectedChip){var u=o._selectedChip.index()+1;u>=o.chipsData.length?o.$input[0].focus():o.selectChip(u)}}}},{key:"_handleChipsKeyup",value:function(e){n._keydown=!1}},{key:"_handleChipsBlur",value:function(t){n._keydown||(e(t.target).closest(".chips")[0].M_Chips._selectedChip=null)}},{key:"defaults",get:function(){return t}}]),n}(u);i._keydown=!1,M.Chips=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"chips","M_Chips"),e(document).ready((function(){e(document.body).on("click",".chip .close",(function(){var t=e(this).closest(".chips");t.length&&t[0].M_Chips||e(this).closest(".chip").remove()}))}))}(cash),function(e){"use strict";var t={top:0,bottom:1/0,offset:0,onPositionChange:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Pushpin=s,s.options=e.extend({},n.defaults,i),s.originalOffset=s.el.offsetTop,n._pushpins.push(s),s._setupEventHandlers(),s._updatePosition(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this.el.style.top=null,this._removePinClasses(),this._removeEventHandlers();var e=n._pushpins.indexOf(this);n._pushpins.splice(e,1)}},{key:"_setupEventHandlers",value:function(){document.addEventListener("scroll",n._updateElements)}},{key:"_removeEventHandlers",value:function(){document.removeEventListener("scroll",n._updateElements)}},{key:"_updatePosition",value:function(){var e=M.getDocumentScrollTop()+this.options.offset;this.options.top<=e&&this.options.bottom>=e&&!this.el.classList.contains("pinned")&&(this._removePinClasses(),this.el.style.top=this.options.offset+"px",this.el.classList.add("pinned"),"function"==typeof this.options.onPositionChange&&this.options.onPositionChange.call(this,"pinned")),e<this.options.top&&!this.el.classList.contains("pin-top")&&(this._removePinClasses(),this.el.style.top=0,this.el.classList.add("pin-top"),"function"==typeof this.options.onPositionChange&&this.options.onPositionChange.call(this,"pin-top")),e>this.options.bottom&&!this.el.classList.contains("pin-bottom")&&(this._removePinClasses(),this.el.classList.add("pin-bottom"),this.el.style.top=this.options.bottom-this.originalOffset+"px","function"==typeof this.options.onPositionChange&&this.options.onPositionChange.call(this,"pin-bottom"))}},{key:"_removePinClasses",value:function(){this.el.classList.remove("pin-top"),this.el.classList.remove("pinned"),this.el.classList.remove("pin-bottom")}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Pushpin}},{key:"_updateElements",value:function(){for(var e in n._pushpins){n._pushpins[e]._updatePosition()}}},{key:"defaults",get:function(){return t}}]),n}(u);i._pushpins=[],M.Pushpin=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"pushpin","M_Pushpin")}(cash),function(e,t){"use strict";var i={direction:"top",hoverEnabled:!0,toolbarEnabled:!1};e.fn.reverse=[].reverse;var n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_FloatingActionButton=n,n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.$anchor=n.$el.children("a").first(),n.$menu=n.$el.children("ul").first(),n.$floatingBtns=n.$el.find("ul .btn-floating"),n.$floatingBtnsReverse=n.$el.find("ul .btn-floating").reverse(),n.offsetY=0,n.offsetX=0,n.$el.addClass("direction-"+n.options.direction),"top"===n.options.direction?n.offsetY=40:"right"===n.options.direction?n.offsetX=-40:"bottom"===n.options.direction?n.offsetY=-40:n.offsetX=40,n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.M_FloatingActionButton=void 0}},{key:"_setupEventHandlers",value:function(){this._handleFABClickBound=this._handleFABClick.bind(this),this._handleOpenBound=this.open.bind(this),this._handleCloseBound=this.close.bind(this),this.options.hoverEnabled&&!this.options.toolbarEnabled?(this.el.addEventListener("mouseenter",this._handleOpenBound),this.el.addEventListener("mouseleave",this._handleCloseBound)):this.el.addEventListener("click",this._handleFABClickBound)}},{key:"_removeEventHandlers",value:function(){this.options.hoverEnabled&&!this.options.toolbarEnabled?(this.el.removeEventListener("mouseenter",this._handleOpenBound),this.el.removeEventListener("mouseleave",this._handleCloseBound)):this.el.removeEventListener("click",this._handleFABClickBound)}},{key:"_handleFABClick",value:function(){this.isOpen?this.close():this.open()}},{key:"_handleDocumentClick",value:function(t){e(t.target).closest(this.$menu).length||this.close()}},{key:"open",value:function(){this.isOpen||(this.options.toolbarEnabled?this._animateInToolbar():this._animateInFAB(),this.isOpen=!0)}},{key:"close",value:function(){this.isOpen&&(this.options.toolbarEnabled?(window.removeEventListener("scroll",this._handleCloseBound,!0),document.body.removeEventListener("click",this._handleDocumentClickBound,!0),this._animateOutToolbar()):this._animateOutFAB(),this.isOpen=!1)}},{key:"_animateInFAB",value:function(){var e=this;this.$el.addClass("active");var i=0;this.$floatingBtnsReverse.each((function(n){t({targets:n,opacity:1,scale:[.4,1],translateY:[e.offsetY,0],translateX:[e.offsetX,0],duration:275,delay:i,easing:"easeInOutQuad"}),i+=40}))}},{key:"_animateOutFAB",value:function(){var e=this;this.$floatingBtnsReverse.each((function(i){t.remove(i),t({targets:i,opacity:0,scale:.4,translateY:e.offsetY,translateX:e.offsetX,duration:175,easing:"easeOutQuad",complete:function(){e.$el.removeClass("active")}})}))}},{key:"_animateInToolbar",value:function(){var t,i=this,n=window.innerWidth,s=window.innerHeight,o=this.el.getBoundingClientRect(),a=e('<div class="fab-backdrop"></div>'),r=this.$anchor.css("background-color");this.$anchor.append(a),this.offsetX=o.left-n/2+o.width/2,this.offsetY=s-o.bottom,t=n/a[0].clientWidth,this.btnBottom=o.bottom,this.btnLeft=o.left,this.btnWidth=o.width,this.$el.addClass("active"),this.$el.css({"text-align":"center",width:"100%",bottom:0,left:0,transform:"translateX("+this.offsetX+"px)",transition:"none"}),this.$anchor.css({transform:"translateY("+-this.offsetY+"px)",transition:"none"}),a.css({"background-color":r}),setTimeout((function(){i.$el.css({transform:"",transition:"transform .2s cubic-bezier(0.550, 0.085, 0.680, 0.530), background-color 0s linear .2s"}),i.$anchor.css({overflow:"visible",transform:"",transition:"transform .2s"}),setTimeout((function(){i.$el.css({overflow:"hidden","background-color":r}),a.css({transform:"scale("+t+")",transition:"transform .2s cubic-bezier(0.550, 0.055, 0.675, 0.190)"}),i.$menu.children("li").children("a").css({opacity:1}),i._handleDocumentClickBound=i._handleDocumentClick.bind(i),window.addEventListener("scroll",i._handleCloseBound,!0),document.body.addEventListener("click",i._handleDocumentClickBound,!0)}),100)}),0)}},{key:"_animateOutToolbar",value:function(){var e=this,t=window.innerWidth,i=window.innerHeight,n=this.$el.find(".fab-backdrop"),s=this.$anchor.css("background-color");this.offsetX=this.btnLeft-t/2+this.btnWidth/2,this.offsetY=i-this.btnBottom,this.$el.removeClass("active"),this.$el.css({"background-color":"transparent",transition:"none"}),this.$anchor.css({transition:"none"}),n.css({transform:"scale(0)","background-color":s}),this.$menu.children("li").children("a").css({opacity:""}),setTimeout((function(){n.remove(),e.$el.css({"text-align":"",width:"",bottom:"",left:"",overflow:"","background-color":"",transform:"translate3d("+-e.offsetX+"px,0,0)"}),e.$anchor.css({overflow:"",transform:"translate3d(0,"+e.offsetY+"px,0)"}),setTimeout((function(){e.$el.css({transform:"translate3d(0,0,0)",transition:"transform .2s"}),e.$anchor.css({transform:"translate3d(0,0,0)",transition:"transform .2s cubic-bezier(0.550, 0.055, 0.675, 0.190)"})}),20)}),200)}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_FloatingActionButton}},{key:"defaults",get:function(){return i}}]),u}(u);M.FloatingActionButton=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"floatingActionButton","M_FloatingActionButton")}(cash,M.anime),function(e){"use strict";var t={autoClose:!1,format:"mmm dd, yyyy",parse:null,defaultDate:null,setDefaultDate:!1,disableWeekends:!1,disableDayFn:null,firstDay:0,minDate:null,maxDate:null,yearRange:10,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,container:null,showClearBtn:!1,i18n:{cancel:"Cancel",clear:"Clear",done:"Ok",previousMonth:"‹",nextMonth:"›",months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],weekdaysAbbrev:["S","M","T","W","T","F","S"]},events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));s.el.M_Datepicker=s,s.options=e.extend({},n.defaults,i),i&&i.hasOwnProperty("i18n")&&"object"==typeof i.i18n&&(s.options.i18n=e.extend({},n.defaults.i18n,i.i18n)),s.options.minDate&&s.options.minDate.setHours(0,0,0,0),s.options.maxDate&&s.options.maxDate.setHours(0,0,0,0),s.id=M.guid(),s._setupVariables(),s._insertHTMLIntoDOM(),s._setupModal(),s._setupEventHandlers(),s.options.defaultDate||(s.options.defaultDate=new Date(Date.parse(s.el.value)));var o=s.options.defaultDate;return n._isDate(o)?s.options.setDefaultDate?(s.setDate(o,!0),s.setInputValue()):s.gotoDate(o):s.gotoDate(new Date),s.isOpen=!1,s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.modal.destroy(),e(this.modalEl).remove(),this.destroySelects(),this.el.M_Datepicker=void 0}},{key:"destroySelects",value:function(){var e=this.calendarEl.querySelector(".orig-select-year");e&&M.FormSelect.getInstance(e).destroy();var t=this.calendarEl.querySelector(".orig-select-month");t&&M.FormSelect.getInstance(t).destroy()}},{key:"_insertHTMLIntoDOM",value:function(){this.options.showClearBtn&&(e(this.clearBtn).css({visibility:""}),this.clearBtn.innerHTML=this.options.i18n.clear),this.doneBtn.innerHTML=this.options.i18n.done,this.cancelBtn.innerHTML=this.options.i18n.cancel,this.options.container?this.$modalEl.appendTo(this.options.container):this.$modalEl.insertBefore(this.el)}},{key:"_setupModal",value:function(){var e=this;this.modalEl.id="modal-"+this.id,this.modal=M.Modal.init(this.modalEl,{onCloseEnd:function(){e.isOpen=!1}})}},{key:"toString",value:function(e){var t=this;return e=e||this.options.format,n._isDate(this.date)?e.split(/(d{1,4}|m{1,4}|y{4}|yy|!.)/g).map((function(e){return t.formats[e]?t.formats[e]():e})).join(""):""}},{key:"setDate",value:function(e,t){if(!e)return this.date=null,this._renderDateDisplay(),this.draw();if("string"==typeof e&&(e=new Date(Date.parse(e))),n._isDate(e)){var i=this.options.minDate,s=this.options.maxDate;n._isDate(i)&&e<i?e=i:n._isDate(s)&&e>s&&(e=s),this.date=new Date(e.getTime()),this._renderDateDisplay(),n._setToStartOfDay(this.date),this.gotoDate(this.date),t||"function"!=typeof this.options.onSelect||this.options.onSelect.call(this,this.date)}}},{key:"setInputValue",value:function(){this.el.value=this.toString(),this.$el.trigger("change",{firedBy:this})}},{key:"_renderDateDisplay",value:function(){var e=n._isDate(this.date)?this.date:new Date,t=this.options.i18n,i=t.weekdaysShort[e.getDay()],s=t.monthsShort[e.getMonth()],o=e.getDate();this.yearTextEl.innerHTML=e.getFullYear(),this.dateTextEl.innerHTML=i+", "+s+" "+o}},{key:"gotoDate",value:function(e){var t=!0;if(n._isDate(e)){if(this.calendars){var i=new Date(this.calendars[0].year,this.calendars[0].month,1),s=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),o=e.getTime();s.setMonth(s.getMonth()+1),s.setDate(s.getDate()-1),t=o<i.getTime()||s.getTime()<o}t&&(this.calendars=[{month:e.getMonth(),year:e.getFullYear()}]),this.adjustCalendars()}}},{key:"adjustCalendars",value:function(){this.calendars[0]=this.adjustCalendar(this.calendars[0]),this.draw()}},{key:"adjustCalendar",value:function(e){return e.month<0&&(e.year-=Math.ceil(Math.abs(e.month)/12),e.month+=12),e.month>11&&(e.year+=Math.floor(Math.abs(e.month)/12),e.month-=12),e}},{key:"nextMonth",value:function(){this.calendars[0].month++,this.adjustCalendars()}},{key:"prevMonth",value:function(){this.calendars[0].month--,this.adjustCalendars()}},{key:"render",value:function(e,t,i){var s=this.options,o=new Date,a=n._getDaysInMonth(e,t),r=new Date(e,t,1).getDay(),l=[],u=[];n._setToStartOfDay(o),s.firstDay>0&&(r-=s.firstDay)<0&&(r+=7);for(var d=0===t?11:t-1,c=11===t?0:t+1,h=0===t?e-1:e,p=11===t?e+1:e,v=n._getDaysInMonth(h,d),_=a+r,f=_;f>7;)f-=7;_+=7-f;for(var m=!1,y=0,g=0;y<_;y++){var b=new Date(e,t,y-r+1),k=!!n._isDate(this.date)&&n._compareDates(b,this.date),w=n._compareDates(b,o),x=-1!==s.events.indexOf(b.toDateString()),C=y<r||y>=a+r,E=y-r+1,M=t,j=e,O=s.startRange&&n._compareDates(s.startRange,b),T=s.endRange&&n._compareDates(s.endRange,b),L=s.startRange&&s.endRange&&s.startRange<b&&b<s.endRange;C&&(y<r?(E=v+E,M=d,j=h):(E-=a,M=c,j=p));var D={day:E,month:M,year:j,hasEvent:x,isSelected:k,isToday:w,isDisabled:s.minDate&&b<s.minDate||s.maxDate&&b>s.maxDate||s.disableWeekends&&n._isWeekend(b)||s.disableDayFn&&s.disableDayFn(b),isEmpty:C,isStartRange:O,isEndRange:T,isInRange:L,showDaysInNextAndPreviousMonths:s.showDaysInNextAndPreviousMonths};u.push(this.renderDay(D)),7==++g&&(l.push(this.renderRow(u,s.isRTL,m)),u=[],g=0,m=!1)}return this.renderTable(s,l,i)}},{key:"renderDay",value:function(e){var t=[],i="false";if(e.isEmpty){if(!e.showDaysInNextAndPreviousMonths)return'<td class="is-empty"></td>';t.push("is-outside-current-month"),t.push("is-selection-disabled")}return e.isDisabled&&t.push("is-disabled"),e.isToday&&t.push("is-today"),e.isSelected&&(t.push("is-selected"),i="true"),e.hasEvent&&t.push("has-event"),e.isInRange&&t.push("is-inrange"),e.isStartRange&&t.push("is-startrange"),e.isEndRange&&t.push("is-endrange"),'<td data-day="'+e.day+'" class="'+t.join(" ")+'" aria-selected="'+i+'"><button class="datepicker-day-button" type="button" data-year="'+e.year+'" data-month="'+e.month+'" data-day="'+e.day+'">'+e.day+"</button></td>"}},{key:"renderRow",value:function(e,t,i){return'<tr class="datepicker-row'+(i?" is-selected":"")+'">'+(t?e.reverse():e).join("")+"</tr>"}},{key:"renderTable",value:function(e,t,i){return'<div class="datepicker-table-wrapper"><table cellpadding="0" cellspacing="0" class="datepicker-table" role="grid" aria-labelledby="'+i+'">'+this.renderHead(e)+this.renderBody(t)+"</table></div>"}},{key:"renderHead",value:function(e){var t=void 0,i=[];for(t=0;t<7;t++)i.push('<th scope="col"><abbr title="'+this.renderDayName(e,t)+'">'+this.renderDayName(e,t,!0)+"</abbr></th>");return"<thead><tr>"+(e.isRTL?i.reverse():i).join("")+"</tr></thead>"}},{key:"renderBody",value:function(e){return"<tbody>"+e.join("")+"</tbody>"}},{key:"renderTitle",value:function(t,i,n,s,o,a){var r,l,u=void 0,d=void 0,c=void 0,h=this.options,p=n===h.minYear,v=n===h.maxYear,_='<div id="'+a+'" class="datepicker-controls" role="heading" aria-live="assertive">',f=!0,m=!0;for(c=[],u=0;u<12;u++)c.push('<option value="'+(n===o?u-i:12+u-i)+'"'+(u===s?' selected="selected"':"")+(p&&u<h.minMonth||v&&u>h.maxMonth?'disabled="disabled"':"")+">"+h.i18n.months[u]+"</option>");for(r='<select class="datepicker-select orig-select-month" tabindex="-1">'+c.join("")+"</select>",e.isArray(h.yearRange)?(u=h.yearRange[0],d=h.yearRange[1]+1):(u=n-h.yearRange,d=1+n+h.yearRange),c=[];u<d&&u<=h.maxYear;u++)u>=h.minYear&&c.push('<option value="'+u+'" '+(u===n?'selected="selected"':"")+">"+u+"</option>");l='<select class="datepicker-select orig-select-year" tabindex="-1">'+c.join("")+"</select>";_+='<button class="month-prev'+(f?"":" is-disabled")+'" type="button"><svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"/><path d="M0-.5h24v24H0z" fill="none"/></svg></button>',_+='<div class="selects-container">',h.showMonthAfterYear?_+=l+r:_+=r+l,_+="</div>",p&&(0===s||h.minMonth>=s)&&(f=!1),v&&(11===s||h.maxMonth<=s)&&(m=!1);return(_+='<button class="month-next'+(m?"":" is-disabled")+'" type="button"><svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"/><path d="M0-.25h24v24H0z" fill="none"/></svg></button>')+"</div>"}},{key:"draw",value:function(e){if(this.isOpen||e){var t,i=this.options,n=i.minYear,s=i.maxYear,o=i.minMonth,a=i.maxMonth,r="";this._y<=n&&(this._y=n,!isNaN(o)&&this._m<o&&(this._m=o)),this._y>=s&&(this._y=s,!isNaN(a)&&this._m>a&&(this._m=a)),t="datepicker-title-"+Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,2);for(var l=0;l<1;l++)this._renderDateDisplay(),r+=this.renderTitle(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,t)+this.render(this.calendars[l].year,this.calendars[l].month,t);this.destroySelects(),this.calendarEl.innerHTML=r;var u=this.calendarEl.querySelector(".orig-select-year"),d=this.calendarEl.querySelector(".orig-select-month");M.FormSelect.init(u,{classes:"select-year",dropdownOptions:{container:document.body,constrainWidth:!1}}),M.FormSelect.init(d,{classes:"select-month",dropdownOptions:{container:document.body,constrainWidth:!1}}),u.addEventListener("change",this._handleYearChange.bind(this)),d.addEventListener("change",this._handleMonthChange.bind(this)),"function"==typeof this.options.onDraw&&this.options.onDraw(this)}}},{key:"_setupEventHandlers",value:function(){this._handleInputKeydownBound=this._handleInputKeydown.bind(this),this._handleInputClickBound=this._handleInputClick.bind(this),this._handleInputChangeBound=this._handleInputChange.bind(this),this._handleCalendarClickBound=this._handleCalendarClick.bind(this),this._finishSelectionBound=this._finishSelection.bind(this),this._handleMonthChange=this._handleMonthChange.bind(this),this._closeBound=this.close.bind(this),this.el.addEventListener("click",this._handleInputClickBound),this.el.addEventListener("keydown",this._handleInputKeydownBound),this.el.addEventListener("change",this._handleInputChangeBound),this.calendarEl.addEventListener("click",this._handleCalendarClickBound),this.doneBtn.addEventListener("click",this._finishSelectionBound),this.cancelBtn.addEventListener("click",this._closeBound),this.options.showClearBtn&&(this._handleClearClickBound=this._handleClearClick.bind(this),this.clearBtn.addEventListener("click",this._handleClearClickBound))}},{key:"_setupVariables",value:function(){var t=this;this.$modalEl=e(n._template),this.modalEl=this.$modalEl[0],this.calendarEl=this.modalEl.querySelector(".datepicker-calendar"),this.yearTextEl=this.modalEl.querySelector(".year-text"),this.dateTextEl=this.modalEl.querySelector(".date-text"),this.options.showClearBtn&&(this.clearBtn=this.modalEl.querySelector(".datepicker-clear")),this.doneBtn=this.modalEl.querySelector(".datepicker-done"),this.cancelBtn=this.modalEl.querySelector(".datepicker-cancel"),this.formats={d:function(){return t.date.getDate()},dd:function(){var e=t.date.getDate();return(e<10?"0":"")+e},ddd:function(){return t.options.i18n.weekdaysShort[t.date.getDay()]},dddd:function(){return t.options.i18n.weekdays[t.date.getDay()]},m:function(){return t.date.getMonth()+1},mm:function(){var e=t.date.getMonth()+1;return(e<10?"0":"")+e},mmm:function(){return t.options.i18n.monthsShort[t.date.getMonth()]},mmmm:function(){return t.options.i18n.months[t.date.getMonth()]},yy:function(){return(""+t.date.getFullYear()).slice(2)},yyyy:function(){return t.date.getFullYear()}}}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleInputClickBound),this.el.removeEventListener("keydown",this._handleInputKeydownBound),this.el.removeEventListener("change",this._handleInputChangeBound),this.calendarEl.removeEventListener("click",this._handleCalendarClickBound)}},{key:"_handleInputClick",value:function(){this.open()}},{key:"_handleInputKeydown",value:function(e){e.which===M.keys.ENTER&&(e.preventDefault(),this.open())}},{key:"_handleCalendarClick",value:function(t){if(this.isOpen){var i=e(t.target);i.hasClass("is-disabled")||(!i.hasClass("datepicker-day-button")||i.hasClass("is-empty")||i.parent().hasClass("is-disabled")?i.closest(".month-prev").length?this.prevMonth():i.closest(".month-next").length&&this.nextMonth():(this.setDate(new Date(t.target.getAttribute("data-year"),t.target.getAttribute("data-month"),t.target.getAttribute("data-day"))),this.options.autoClose&&this._finishSelection()))}}},{key:"_handleClearClick",value:function(){this.date=null,this.setInputValue(),this.close()}},{key:"_handleMonthChange",value:function(e){this.gotoMonth(e.target.value)}},{key:"_handleYearChange",value:function(e){this.gotoYear(e.target.value)}},{key:"gotoMonth",value:function(e){isNaN(e)||(this.calendars[0].month=parseInt(e,10),this.adjustCalendars())}},{key:"gotoYear",value:function(e){isNaN(e)||(this.calendars[0].year=parseInt(e,10),this.adjustCalendars())}},{key:"_handleInputChange",value:function(e){var t=void 0;e.firedBy!==this&&(t=this.options.parse?this.options.parse(this.el.value,this.options.format):new Date(Date.parse(this.el.value)),n._isDate(t)&&this.setDate(t))}},{key:"renderDayName",value:function(e,t,i){for(t+=e.firstDay;t>=7;)t-=7;return i?e.i18n.weekdaysAbbrev[t]:e.i18n.weekdays[t]}},{key:"_finishSelection",value:function(){this.setInputValue(),this.close()}},{key:"open",value:function(){if(!this.isOpen)return this.isOpen=!0,"function"==typeof this.options.onOpen&&this.options.onOpen.call(this),this.draw(),this.modal.open(),this}},{key:"close",value:function(){if(this.isOpen)return this.isOpen=!1,"function"==typeof this.options.onClose&&this.options.onClose.call(this),this.modal.close(),this}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"_isDate",value:function(e){return/Date/.test(Object.prototype.toString.call(e))&&!isNaN(e.getTime())}},{key:"_isWeekend",value:function(e){var t=e.getDay();return 0===t||6===t}},{key:"_setToStartOfDay",value:function(e){n._isDate(e)&&e.setHours(0,0,0,0)}},{key:"_getDaysInMonth",value:function(e,t){return[31,n._isLeapYear(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]}},{key:"_isLeapYear",value:function(e){return e%4==0&&e%100!=0||e%400==0}},{key:"_compareDates",value:function(e,t){return e.getTime()===t.getTime()}},{key:"_setToStartOfDay",value:function(e){n._isDate(e)&&e.setHours(0,0,0,0)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Datepicker}},{key:"defaults",get:function(){return t}}]),n}(u);i._template=['<div class= "modal datepicker-modal">','<div class="modal-content datepicker-container">','<div class="datepicker-date-display">','<span class="year-text"></span>','<span class="date-text"></span>',"</div>",'<div class="datepicker-calendar-container">','<div class="datepicker-calendar"></div>','<div class="datepicker-footer">','<button class="btn-flat datepicker-clear waves-effect" style="visibility: hidden;" type="button"></button>','<div class="confirmation-btns">','<button class="btn-flat datepicker-cancel waves-effect" type="button"></button>','<button class="btn-flat datepicker-done waves-effect" type="button"></button>',"</div>","</div>","</div>","</div>","</div>"].join(""),M.Datepicker=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"datepicker","M_Datepicker")}(cash),function(e){"use strict";var t={dialRadius:135,outerRadius:105,innerRadius:70,tickRadius:20,duration:350,container:null,defaultTime:"now",fromNow:0,showClearBtn:!1,i18n:{cancel:"Cancel",clear:"Clear",done:"Ok"},autoClose:!1,twelveHour:!0,vibrate:!0,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null,onSelect:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Timepicker=s,s.options=e.extend({},n.defaults,i),s.id=M.guid(),s._insertHTMLIntoDOM(),s._setupModal(),s._setupVariables(),s._setupEventHandlers(),s._clockSetup(),s._pickerSetup(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.modal.destroy(),e(this.modalEl).remove(),this.el.M_Timepicker=void 0}},{key:"_setupEventHandlers",value:function(){this._handleInputKeydownBound=this._handleInputKeydown.bind(this),this._handleInputClickBound=this._handleInputClick.bind(this),this._handleClockClickStartBound=this._handleClockClickStart.bind(this),this._handleDocumentClickMoveBound=this._handleDocumentClickMove.bind(this),this._handleDocumentClickEndBound=this._handleDocumentClickEnd.bind(this),this.el.addEventListener("click",this._handleInputClickBound),this.el.addEventListener("keydown",this._handleInputKeydownBound),this.plate.addEventListener("mousedown",this._handleClockClickStartBound),this.plate.addEventListener("touchstart",this._handleClockClickStartBound),e(this.spanHours).on("click",this.showView.bind(this,"hours")),e(this.spanMinutes).on("click",this.showView.bind(this,"minutes"))}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleInputClickBound),this.el.removeEventListener("keydown",this._handleInputKeydownBound)}},{key:"_handleInputClick",value:function(){this.open()}},{key:"_handleInputKeydown",value:function(e){e.which===M.keys.ENTER&&(e.preventDefault(),this.open())}},{key:"_handleClockClickStart",value:function(e){e.preventDefault();var t=this.plate.getBoundingClientRect(),i=t.left,s=t.top;this.x0=i+this.options.dialRadius,this.y0=s+this.options.dialRadius,this.moved=!1;var o=n._Pos(e);this.dx=o.x-this.x0,this.dy=o.y-this.y0,this.setHand(this.dx,this.dy,!1),document.addEventListener("mousemove",this._handleDocumentClickMoveBound),document.addEventListener("touchmove",this._handleDocumentClickMoveBound),document.addEventListener("mouseup",this._handleDocumentClickEndBound),document.addEventListener("touchend",this._handleDocumentClickEndBound)}},{key:"_handleDocumentClickMove",value:function(e){e.preventDefault();var t=n._Pos(e),i=t.x-this.x0,s=t.y-this.y0;this.moved=!0,this.setHand(i,s,!1,!0)}},{key:"_handleDocumentClickEnd",value:function(t){var i=this;t.preventDefault(),document.removeEventListener("mouseup",this._handleDocumentClickEndBound),document.removeEventListener("touchend",this._handleDocumentClickEndBound);var s=n._Pos(t),o=s.x-this.x0,a=s.y-this.y0;this.moved&&o===this.dx&&a===this.dy&&this.setHand(o,a),"hours"===this.currentView?this.showView("minutes",this.options.duration/2):this.options.autoClose&&(e(this.minutesView).addClass("timepicker-dial-out"),setTimeout((function(){i.done()}),this.options.duration/2)),"function"==typeof this.options.onSelect&&this.options.onSelect.call(this,this.hours,this.minutes),document.removeEventListener("mousemove",this._handleDocumentClickMoveBound),document.removeEventListener("touchmove",this._handleDocumentClickMoveBound)}},{key:"_insertHTMLIntoDOM",value:function(){this.$modalEl=e(n._template),this.modalEl=this.$modalEl[0],this.modalEl.id="modal-"+this.id;var t=document.querySelector(this.options.container);this.options.container&&t?this.$modalEl.appendTo(t):this.$modalEl.insertBefore(this.el)}},{key:"_setupModal",value:function(){var e=this;this.modal=M.Modal.init(this.modalEl,{onOpenStart:this.options.onOpenStart,onOpenEnd:this.options.onOpenEnd,onCloseStart:this.options.onCloseStart,onCloseEnd:function(){"function"==typeof e.options.onCloseEnd&&e.options.onCloseEnd.call(e),e.isOpen=!1}})}},{key:"_setupVariables",value:function(){this.currentView="hours",this.vibrate=navigator.vibrate?"vibrate":navigator.webkitVibrate?"webkitVibrate":null,this._canvas=this.modalEl.querySelector(".timepicker-canvas"),this.plate=this.modalEl.querySelector(".timepicker-plate"),this.hoursView=this.modalEl.querySelector(".timepicker-hours"),this.minutesView=this.modalEl.querySelector(".timepicker-minutes"),this.spanHours=this.modalEl.querySelector(".timepicker-span-hours"),this.spanMinutes=this.modalEl.querySelector(".timepicker-span-minutes"),this.spanAmPm=this.modalEl.querySelector(".timepicker-span-am-pm"),this.footer=this.modalEl.querySelector(".timepicker-footer"),this.amOrPm="PM"}},{key:"_pickerSetup",value:function(){var t=e('<button class="btn-flat timepicker-clear waves-effect" style="visibility: hidden;" type="button" tabindex="'+(this.options.twelveHour?"3":"1")+'">'+this.options.i18n.clear+"</button>").appendTo(this.footer).on("click",this.clear.bind(this));this.options.showClearBtn&&t.css({visibility:""});var i=e('<div class="confirmation-btns"></div>');e('<button class="btn-flat timepicker-close waves-effect" type="button" tabindex="'+(this.options.twelveHour?"3":"1")+'">'+this.options.i18n.cancel+"</button>").appendTo(i).on("click",this.close.bind(this)),e('<button class="btn-flat timepicker-close waves-effect" type="button" tabindex="'+(this.options.twelveHour?"3":"1")+'">'+this.options.i18n.done+"</button>").appendTo(i).on("click",this.done.bind(this)),i.appendTo(this.footer)}},{key:"_clockSetup",value:function(){this.options.twelveHour&&(this.$amBtn=e('<div class="am-btn">AM</div>'),this.$pmBtn=e('<div class="pm-btn">PM</div>'),this.$amBtn.on("click",this._handleAmPmClick.bind(this)).appendTo(this.spanAmPm),this.$pmBtn.on("click",this._handleAmPmClick.bind(this)).appendTo(this.spanAmPm)),this._buildHoursView(),this._buildMinutesView(),this._buildSVGClock()}},{key:"_buildSVGClock",value:function(){var e=this.options.dialRadius,t=this.options.tickRadius,i=2*e,s=n._createSVGEl("svg");s.setAttribute("class","timepicker-svg"),s.setAttribute("width",i),s.setAttribute("height",i);var o=n._createSVGEl("g");o.setAttribute("transform","translate("+e+","+e+")");var a=n._createSVGEl("circle");a.setAttribute("class","timepicker-canvas-bearing"),a.setAttribute("cx",0),a.setAttribute("cy",0),a.setAttribute("r",4);var r=n._createSVGEl("line");r.setAttribute("x1",0),r.setAttribute("y1",0);var l=n._createSVGEl("circle");l.setAttribute("class","timepicker-canvas-bg"),l.setAttribute("r",t),o.appendChild(r),o.appendChild(l),o.appendChild(a),s.appendChild(o),this._canvas.appendChild(s),this.hand=r,this.bg=l,this.bearing=a,this.g=o}},{key:"_buildHoursView",value:function(){var t=e('<div class="timepicker-tick"></div>');if(this.options.twelveHour)for(var i=1;i<13;i+=1){var n=t.clone(),s=i/6*Math.PI,o=this.options.outerRadius;n.css({left:this.options.dialRadius+Math.sin(s)*o-this.options.tickRadius+"px",top:this.options.dialRadius-Math.cos(s)*o-this.options.tickRadius+"px"}),n.html(0===i?"00":i),this.hoursView.appendChild(n[0])}else for(var a=0;a<24;a+=1){var r=t.clone(),l=a/6*Math.PI,u=a>0&&a<13?this.options.innerRadius:this.options.outerRadius;r.css({left:this.options.dialRadius+Math.sin(l)*u-this.options.tickRadius+"px",top:this.options.dialRadius-Math.cos(l)*u-this.options.tickRadius+"px"}),r.html(0===a?"00":a),this.hoursView.appendChild(r[0])}}},{key:"_buildMinutesView",value:function(){for(var t=e('<div class="timepicker-tick"></div>'),i=0;i<60;i+=5){var s=t.clone(),o=i/30*Math.PI;s.css({left:this.options.dialRadius+Math.sin(o)*this.options.outerRadius-this.options.tickRadius+"px",top:this.options.dialRadius-Math.cos(o)*this.options.outerRadius-this.options.tickRadius+"px"}),s.html(n._addLeadingZero(i)),this.minutesView.appendChild(s[0])}}},{key:"_handleAmPmClick",value:function(t){var i=e(t.target);this.amOrPm=i.hasClass("am-btn")?"AM":"PM",this._updateAmPmView()}},{key:"_updateAmPmView",value:function(){this.options.twelveHour&&(this.$amBtn.toggleClass("text-primary","AM"===this.amOrPm),this.$pmBtn.toggleClass("text-primary","PM"===this.amOrPm))}},{key:"_updateTimeFromInput",value:function(){var e=((this.el.value||this.options.defaultTime||"")+"").split(":");if(this.options.twelveHour&&void 0!==e[1]&&(e[1].toUpperCase().indexOf("AM")>0?this.amOrPm="AM":this.amOrPm="PM",e[1]=e[1].replace("AM","").replace("PM","")),"now"===e[0]){var t=new Date(+new Date+this.options.fromNow);e=[t.getHours(),t.getMinutes()],this.options.twelveHour&&(this.amOrPm=e[0]>=12&&e[0]<24?"PM":"AM")}this.hours=+e[0]||0,this.minutes=+e[1]||0,this.spanHours.innerHTML=this.hours,this.spanMinutes.innerHTML=n._addLeadingZero(this.minutes),this._updateAmPmView()}},{key:"showView",value:function(t,i){"minutes"===t&&e(this.hoursView).css("visibility");var n="hours"===t,s=n?this.hoursView:this.minutesView,o=n?this.minutesView:this.hoursView;this.currentView=t,e(this.spanHours).toggleClass("text-primary",n),e(this.spanMinutes).toggleClass("text-primary",!n),o.classList.add("timepicker-dial-out"),e(s).css("visibility","visible").removeClass("timepicker-dial-out"),this.resetClock(i),clearTimeout(this.toggleViewTimer),this.toggleViewTimer=setTimeout((function(){e(o).css("visibility","hidden")}),this.options.duration)}},{key:"resetClock",value:function(t){var i=this.currentView,n=this[i],s="hours"===i,o=n*(Math.PI/(s?6:30)),a=s&&n>0&&n<13?this.options.innerRadius:this.options.outerRadius,r=Math.sin(o)*a,l=-Math.cos(o)*a,u=this;t?(e(this.canvas).addClass("timepicker-canvas-out"),setTimeout((function(){e(u.canvas).removeClass("timepicker-canvas-out"),u.setHand(r,l)}),t)):this.setHand(r,l)}},{key:"setHand",value:function(e,t,i){var s=this,o=Math.atan2(e,-t),a="hours"===this.currentView,r=Math.PI/(a||i?6:30),l=Math.sqrt(e*e+t*t),u=a&&l<(this.options.outerRadius+this.options.innerRadius)/2,d=u?this.options.innerRadius:this.options.outerRadius;this.options.twelveHour&&(d=this.options.outerRadius),o<0&&(o=2*Math.PI+o);var c=Math.round(o/r);o=c*r,this.options.twelveHour?a?0===c&&(c=12):(i&&(c*=5),60===c&&(c=0)):a?(12===c&&(c=0),c=u?0===c?12:c:0===c?0:c+12):(i&&(c*=5),60===c&&(c=0)),this[this.currentView]!==c&&this.vibrate&&this.options.vibrate&&(this.vibrateTimer||(navigator[this.vibrate](10),this.vibrateTimer=setTimeout((function(){s.vibrateTimer=null}),100))),this[this.currentView]=c,a?this.spanHours.innerHTML=c:this.spanMinutes.innerHTML=n._addLeadingZero(c);var h=Math.sin(o)*(d-this.options.tickRadius),p=-Math.cos(o)*(d-this.options.tickRadius),v=Math.sin(o)*d,_=-Math.cos(o)*d;this.hand.setAttribute("x2",h),this.hand.setAttribute("y2",p),this.bg.setAttribute("cx",v),this.bg.setAttribute("cy",_)}},{key:"open",value:function(){this.isOpen||(this.isOpen=!0,this._updateTimeFromInput(),this.showView("hours"),this.modal.open())}},{key:"close",value:function(){this.isOpen&&(this.isOpen=!1,this.modal.close())}},{key:"done",value:function(e,t){var i=this.el.value,s=t?"":n._addLeadingZero(this.hours)+":"+n._addLeadingZero(this.minutes);this.time=s,!t&&this.options.twelveHour&&(s=s+" "+this.amOrPm),this.el.value=s,s!==i&&this.$el.trigger("change"),this.close(),this.el.focus()}},{key:"clear",value:function(){this.done(null,!0)}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"_addLeadingZero",value:function(e){return(e<10?"0":"")+e}},{key:"_createSVGEl",value:function(e){return document.createElementNS("http://www.w3.org/2000/svg",e)}},{key:"_Pos",value:function(e){return e.targetTouches&&e.targetTouches.length>=1?{x:e.targetTouches[0].clientX,y:e.targetTouches[0].clientY}:{x:e.clientX,y:e.clientY}}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Timepicker}},{key:"defaults",get:function(){return t}}]),n}(u);i._template=['<div class= "modal timepicker-modal">','<div class="modal-content timepicker-container">','<div class="timepicker-digital-display">','<div class="timepicker-text-container">','<div class="timepicker-display-column">','<span class="timepicker-span-hours text-primary"></span>',":",'<span class="timepicker-span-minutes"></span>',"</div>",'<div class="timepicker-display-column timepicker-display-am-pm">','<div class="timepicker-span-am-pm"></div>',"</div>","</div>","</div>",'<div class="timepicker-analog-display">','<div class="timepicker-plate">','<div class="timepicker-canvas"></div>','<div class="timepicker-dial timepicker-hours"></div>','<div class="timepicker-dial timepicker-minutes timepicker-dial-out"></div>',"</div>",'<div class="timepicker-footer"></div>',"</div>","</div>","</div>"].join(""),M.Timepicker=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"timepicker","M_Timepicker")}(cash),function(e){"use strict";var t={},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_CharacterCounter=s,s.options=e.extend({},n.defaults,i),s.isInvalid=!1,s.isValidLength=!1,s._setupCounter(),s._setupEventHandlers(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.CharacterCounter=void 0,this._removeCounter()}},{key:"_setupEventHandlers",value:function(){this._handleUpdateCounterBound=this.updateCounter.bind(this),this.el.addEventListener("focus",this._handleUpdateCounterBound,!0),this.el.addEventListener("input",this._handleUpdateCounterBound,!0)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("focus",this._handleUpdateCounterBound,!0),this.el.removeEventListener("input",this._handleUpdateCounterBound,!0)}},{key:"_setupCounter",value:function(){this.counterEl=document.createElement("span"),e(this.counterEl).addClass("character-counter").css({float:"right","font-size":"12px",height:1}),this.$el.parent().append(this.counterEl)}},{key:"_removeCounter",value:function(){e(this.counterEl).remove()}},{key:"updateCounter",value:function(){var t=+this.$el.attr("data-length"),i=this.el.value.length;this.isValidLength=i<=t;var n=i;t&&(n+="/"+t,this._validateInput()),e(this.counterEl).html(n)}},{key:"_validateInput",value:function(){this.isValidLength&&this.isInvalid?(this.isInvalid=!1,this.$el.removeClass("invalid")):this.isValidLength||this.isInvalid||(this.isInvalid=!0,this.$el.removeClass("valid"),this.$el.addClass("invalid"))}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_CharacterCounter}},{key:"defaults",get:function(){return t}}]),n}(u);M.CharacterCounter=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"characterCounter","M_CharacterCounter")}(cash),function(e){"use strict";var t={duration:200,dist:-100,shift:0,padding:0,numVisible:5,fullWidth:!1,indicators:!1,noWrap:!1,onCycleTo:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Carousel=s,s.options=e.extend({},n.defaults,i),s.hasMultipleSlides=s.$el.find(".carousel-item").length>1,s.showIndicators=s.options.indicators&&s.hasMultipleSlides,s.noWrap=s.options.noWrap||!s.hasMultipleSlides,s.pressed=!1,s.dragged=!1,s.offset=s.target=0,s.images=[],s.itemWidth=s.$el.find(".carousel-item").first().innerWidth(),s.itemHeight=s.$el.find(".carousel-item").first().innerHeight(),s.dim=2*s.itemWidth+s.options.padding||1,s._autoScrollBound=s._autoScroll.bind(s),s._trackBound=s._track.bind(s),s.options.fullWidth&&(s.options.dist=0,s._setCarouselHeight(),s.showIndicators&&s.$el.find(".carousel-fixed-item").addClass("with-indicators")),s.$indicators=e('<ul class="indicators"></ul>'),s.$el.find(".carousel-item").each((function(t,i){if(s.images.push(t),s.showIndicators){var n=e('<li class="indicator-item"></li>');0===i&&n[0].classList.add("active"),s.$indicators.append(n)}})),s.showIndicators&&s.$el.append(s.$indicators),s.count=s.images.length,s.options.numVisible=Math.min(s.count,s.options.numVisible),s.xform="transform",["webkit","Moz","O","ms"].every((function(e){var t=e+"Transform";return void 0===document.body.style[t]||(s.xform=t,!1)})),s._setupEventHandlers(),s._scroll(s.offset),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.M_Carousel=void 0}},{key:"_setupEventHandlers",value:function(){var e=this;this._handleCarouselTapBound=this._handleCarouselTap.bind(this),this._handleCarouselDragBound=this._handleCarouselDrag.bind(this),this._handleCarouselReleaseBound=this._handleCarouselRelease.bind(this),this._handleCarouselClickBound=this._handleCarouselClick.bind(this),void 0!==window.ontouchstart&&(this.el.addEventListener("touchstart",this._handleCarouselTapBound),this.el.addEventListener("touchmove",this._handleCarouselDragBound),this.el.addEventListener("touchend",this._handleCarouselReleaseBound)),this.el.addEventListener("mousedown",this._handleCarouselTapBound),this.el.addEventListener("mousemove",this._handleCarouselDragBound),this.el.addEventListener("mouseup",this._handleCarouselReleaseBound),this.el.addEventListener("mouseleave",this._handleCarouselReleaseBound),this.el.addEventListener("click",this._handleCarouselClickBound),this.showIndicators&&this.$indicators&&(this._handleIndicatorClickBound=this._handleIndicatorClick.bind(this),this.$indicators.find(".indicator-item").each((function(t,i){t.addEventListener("click",e._handleIndicatorClickBound)})));var t=M.throttle(this._handleResize,200);this._handleThrottledResizeBound=t.bind(this),window.addEventListener("resize",this._handleThrottledResizeBound)}},{key:"_removeEventHandlers",value:function(){var e=this;void 0!==window.ontouchstart&&(this.el.removeEventListener("touchstart",this._handleCarouselTapBound),this.el.removeEventListener("touchmove",this._handleCarouselDragBound),this.el.removeEventListener("touchend",this._handleCarouselReleaseBound)),this.el.removeEventListener("mousedown",this._handleCarouselTapBound),this.el.removeEventListener("mousemove",this._handleCarouselDragBound),this.el.removeEventListener("mouseup",this._handleCarouselReleaseBound),this.el.removeEventListener("mouseleave",this._handleCarouselReleaseBound),this.el.removeEventListener("click",this._handleCarouselClickBound),this.showIndicators&&this.$indicators&&this.$indicators.find(".indicator-item").each((function(t,i){t.removeEventListener("click",e._handleIndicatorClickBound)})),window.removeEventListener("resize",this._handleThrottledResizeBound)}},{key:"_handleCarouselTap",value:function(t){"mousedown"===t.type&&e(t.target).is("img")&&t.preventDefault(),this.pressed=!0,this.dragged=!1,this.verticalDragged=!1,this.reference=this._xpos(t),this.referenceY=this._ypos(t),this.velocity=this.amplitude=0,this.frame=this.offset,this.timestamp=Date.now(),clearInterval(this.ticker),this.ticker=setInterval(this._trackBound,100)}},{key:"_handleCarouselDrag",value:function(e){var t=void 0,i=void 0,n=void 0;if(this.pressed)if(t=this._xpos(e),i=this._ypos(e),n=this.reference-t,Math.abs(this.referenceY-i)<30&&!this.verticalDragged)(n>2||n<-2)&&(this.dragged=!0,this.reference=t,this._scroll(this.offset+n));else{if(this.dragged)return e.preventDefault(),e.stopPropagation(),!1;this.verticalDragged=!0}if(this.dragged)return e.preventDefault(),e.stopPropagation(),!1}},{key:"_handleCarouselRelease",value:function(e){if(this.pressed)return this.pressed=!1,clearInterval(this.ticker),this.target=this.offset,(this.velocity>10||this.velocity<-10)&&(this.amplitude=.9*this.velocity,this.target=this.offset+this.amplitude),this.target=Math.round(this.target/this.dim)*this.dim,this.noWrap&&(this.target>=this.dim*(this.count-1)?this.target=this.dim*(this.count-1):this.target<0&&(this.target=0)),this.amplitude=this.target-this.offset,this.timestamp=Date.now(),requestAnimationFrame(this._autoScrollBound),this.dragged&&(e.preventDefault(),e.stopPropagation()),!1}},{key:"_handleCarouselClick",value:function(t){if(this.dragged)return t.preventDefault(),t.stopPropagation(),!1;if(!this.options.fullWidth){var i=e(t.target).closest(".carousel-item").index();0!==this._wrap(this.center)-i&&(t.preventDefault(),t.stopPropagation()),this._cycleTo(i)}}},{key:"_handleIndicatorClick",value:function(t){t.stopPropagation();var i=e(t.target).closest(".indicator-item");i.length&&this._cycleTo(i.index())}},{key:"_handleResize",value:function(e){this.options.fullWidth?(this.itemWidth=this.$el.find(".carousel-item").first().innerWidth(),this.imageHeight=this.$el.find(".carousel-item.active").height(),this.dim=2*this.itemWidth+this.options.padding,this.offset=2*this.center*this.itemWidth,this.target=this.offset,this._setCarouselHeight(!0)):this._scroll()}},{key:"_setCarouselHeight",value:function(e){var t=this,i=this.$el.find(".carousel-item.active").length?this.$el.find(".carousel-item.active").first():this.$el.find(".carousel-item").first(),n=i.find("img").first();if(n.length)if(n[0].complete){var s=n.height();if(s>0)this.$el.css("height",s+"px");else{var o=n[0].naturalWidth,a=n[0].naturalHeight,r=this.$el.width()/o*a;this.$el.css("height",r+"px")}}else n.one("load",(function(e,i){t.$el.css("height",e.offsetHeight+"px")}));else if(!e){var l=i.height();this.$el.css("height",l+"px")}}},{key:"_xpos",value:function(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientX:e.clientX}},{key:"_ypos",value:function(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientY:e.clientY}},{key:"_wrap",value:function(e){return e>=this.count?e%this.count:e<0?this._wrap(this.count+e%this.count):e}},{key:"_track",value:function(){var e,t,i,n;t=(e=Date.now())-this.timestamp,this.timestamp=e,i=this.offset-this.frame,this.frame=this.offset,n=1e3*i/(1+t),this.velocity=.8*n+.2*this.velocity}},{key:"_autoScroll",value:function(){var e=void 0,t=void 0;this.amplitude&&(e=Date.now()-this.timestamp,(t=this.amplitude*Math.exp(-e/this.options.duration))>2||t<-2?(this._scroll(this.target-t),requestAnimationFrame(this._autoScrollBound)):this._scroll(this.target))}},{key:"_scroll",value:function(t){var i=this;this.$el.hasClass("scrolling")||this.el.classList.add("scrolling"),null!=this.scrollingTimeout&&window.clearTimeout(this.scrollingTimeout),this.scrollingTimeout=window.setTimeout((function(){i.$el.removeClass("scrolling")}),this.options.duration);var n,s,o,a,r=void 0,l=void 0,u=void 0,d=void 0,c=void 0,h=void 0,p=this.center,v=1/this.options.numVisible;if(this.offset="number"==typeof t?t:this.offset,this.center=Math.floor((this.offset+this.dim/2)/this.dim),a=-(o=(s=this.offset-this.center*this.dim)<0?1:-1)*s*2/this.dim,n=this.count>>1,this.options.fullWidth?(u="translateX(0)",h=1):(u="translateX("+(this.el.clientWidth-this.itemWidth)/2+"px) ",u+="translateY("+(this.el.clientHeight-this.itemHeight)/2+"px)",h=1-v*a),this.showIndicators){var _=this.center%this.count,f=this.$indicators.find(".indicator-item.active");f.index()!==_&&(f.removeClass("active"),this.$indicators.find(".indicator-item").eq(_)[0].classList.add("active"))}if(!this.noWrap||this.center>=0&&this.center<this.count){l=this.images[this._wrap(this.center)],e(l).hasClass("active")||(this.$el.find(".carousel-item").removeClass("active"),l.classList.add("active"));var m=u+" translateX("+-s/2+"px) translateX("+o*this.options.shift*a*r+"px) translateZ("+this.options.dist*a+"px)";this._updateItemStyle(l,h,0,m)}for(r=1;r<=n;++r){if(this.options.fullWidth?(d=this.options.dist,c=r===n&&s<0?1-a:1):(d=this.options.dist*(2*r+a*o),c=1-v*(2*r+a*o)),!this.noWrap||this.center+r<this.count){l=this.images[this._wrap(this.center+r)];var y=u+" translateX("+(this.options.shift+(this.dim*r-s)/2)+"px) translateZ("+d+"px)";this._updateItemStyle(l,c,-r,y)}if(this.options.fullWidth?(d=this.options.dist,c=r===n&&s>0?1-a:1):(d=this.options.dist*(2*r-a*o),c=1-v*(2*r-a*o)),!this.noWrap||this.center-r>=0){l=this.images[this._wrap(this.center-r)];var g=u+" translateX("+(-this.options.shift+(-this.dim*r-s)/2)+"px) translateZ("+d+"px)";this._updateItemStyle(l,c,-r,g)}}if(!this.noWrap||this.center>=0&&this.center<this.count){l=this.images[this._wrap(this.center)];var b=u+" translateX("+-s/2+"px) translateX("+o*this.options.shift*a+"px) translateZ("+this.options.dist*a+"px)";this._updateItemStyle(l,h,0,b)}var k=this.$el.find(".carousel-item").eq(this._wrap(this.center));p!==this.center&&"function"==typeof this.options.onCycleTo&&this.options.onCycleTo.call(this,k[0],this.dragged),"function"==typeof this.oneTimeCallback&&(this.oneTimeCallback.call(this,k[0],this.dragged),this.oneTimeCallback=null)}},{key:"_updateItemStyle",value:function(e,t,i,n){e.style[this.xform]=n,e.style.zIndex=i,e.style.opacity=t,e.style.visibility="visible"}},{key:"_cycleTo",value:function(e,t){var i=this.center%this.count-e;this.noWrap||(i<0?Math.abs(i+this.count)<Math.abs(i)&&(i+=this.count):i>0&&Math.abs(i-this.count)<i&&(i-=this.count)),this.target=this.dim*Math.round(this.offset/this.dim),i<0?this.target+=this.dim*Math.abs(i):i>0&&(this.target-=this.dim*i),"function"==typeof t&&(this.oneTimeCallback=t),this.offset!==this.target&&(this.amplitude=this.target-this.offset,this.timestamp=Date.now(),requestAnimationFrame(this._autoScrollBound))}},{key:"next",value:function(e){(void 0===e||isNaN(e))&&(e=1);var t=this.center+e;if(t>=this.count||t<0){if(this.noWrap)return;t=this._wrap(t)}this._cycleTo(t)}},{key:"prev",value:function(e){(void 0===e||isNaN(e))&&(e=1);var t=this.center-e;if(t>=this.count||t<0){if(this.noWrap)return;t=this._wrap(t)}this._cycleTo(t)}},{key:"set",value:function(e,t){if((void 0===e||isNaN(e))&&(e=0),e>this.count||e<0){if(this.noWrap)return;e=this._wrap(e)}this._cycleTo(e,t)}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Carousel}},{key:"defaults",get:function(){return t}}]),n}(u);M.Carousel=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"carousel","M_Carousel")}(cash),function(e){"use strict";var t={onOpen:void 0,onClose:void 0},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_TapTarget=s,s.options=e.extend({},n.defaults,i),s.isOpen=!1,s.$origin=e("#"+s.$el.attr("data-target")),s._setup(),s._calculatePositioning(),s._setupEventHandlers(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.TapTarget=void 0}},{key:"_setupEventHandlers",value:function(){this._handleDocumentClickBound=this._handleDocumentClick.bind(this),this._handleTargetClickBound=this._handleTargetClick.bind(this),this._handleOriginClickBound=this._handleOriginClick.bind(this),this.el.addEventListener("click",this._handleTargetClickBound),this.originEl.addEventListener("click",this._handleOriginClickBound);var e=M.throttle(this._handleResize,200);this._handleThrottledResizeBound=e.bind(this),window.addEventListener("resize",this._handleThrottledResizeBound)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleTargetClickBound),this.originEl.removeEventListener("click",this._handleOriginClickBound),window.removeEventListener("resize",this._handleThrottledResizeBound)}},{key:"_handleTargetClick",value:function(e){this.open()}},{key:"_handleOriginClick",value:function(e){this.close()}},{key:"_handleResize",value:function(e){this._calculatePositioning()}},{key:"_handleDocumentClick",value:function(t){e(t.target).closest(".tap-target-wrapper").length||(this.close(),t.preventDefault(),t.stopPropagation())}},{key:"_setup",value:function(){this.wrapper=this.$el.parent()[0],this.waveEl=e(this.wrapper).find(".tap-target-wave")[0],this.originEl=e(this.wrapper).find(".tap-target-origin")[0],this.contentEl=this.$el.find(".tap-target-content")[0],e(this.wrapper).hasClass(".tap-target-wrapper")||(this.wrapper=document.createElement("div"),this.wrapper.classList.add("tap-target-wrapper"),this.$el.before(e(this.wrapper)),this.wrapper.append(this.el)),this.contentEl||(this.contentEl=document.createElement("div"),this.contentEl.classList.add("tap-target-content"),this.$el.append(this.contentEl)),this.waveEl||(this.waveEl=document.createElement("div"),this.waveEl.classList.add("tap-target-wave"),this.originEl||(this.originEl=this.$origin.clone(!0,!0),this.originEl.addClass("tap-target-origin"),this.originEl.removeAttr("id"),this.originEl.removeAttr("style"),this.originEl=this.originEl[0],this.waveEl.append(this.originEl)),this.wrapper.append(this.waveEl))}},{key:"_calculatePositioning",value:function(){var t="fixed"===this.$origin.css("position");if(!t)for(var i=this.$origin.parents(),n=0;n<i.length&&!(t="fixed"==e(i[n]).css("position"));n++);var s=this.$origin.outerWidth(),o=this.$origin.outerHeight(),a=t?this.$origin.offset().top-M.getDocumentScrollTop():this.$origin.offset().top,r=t?this.$origin.offset().left-M.getDocumentScrollLeft():this.$origin.offset().left,l=window.innerWidth,u=window.innerHeight,d=l/2,c=u/2,h=r<=d,p=r>d,v=a<=c,_=a>c,f=r>=.25*l&&r<=.75*l,m=this.$el.outerWidth(),y=this.$el.outerHeight(),g=a+o/2-y/2,b=r+s/2-m/2,k=t?"fixed":"absolute",w=f?m:m/2+s,x=y/2,C=v?y/2:0,E=h&&!f?m/2-s:0,j=s,O=_?"bottom":"top",T=2*s,L=T,D=y/2-L/2,B=m/2-T/2,Q={};Q.top=v?g+"px":"",Q.right=p?l-b-m+"px":"",Q.bottom=_?u-g-y+"px":"",Q.left=h?b+"px":"",Q.position=k,e(this.wrapper).css(Q),e(this.contentEl).css({width:w+"px",height:x+"px",top:C+"px",right:"0px",bottom:"0px",left:E+"px",padding:j+"px",verticalAlign:O}),e(this.waveEl).css({top:D+"px",left:B+"px",width:T+"px",height:L+"px"})}},{key:"open",value:function(){this.isOpen||("function"==typeof this.options.onOpen&&this.options.onOpen.call(this,this.$origin[0]),this.isOpen=!0,this.wrapper.classList.add("open"),document.body.addEventListener("click",this._handleDocumentClickBound,!0),document.body.addEventListener("touchend",this._handleDocumentClickBound))}},{key:"close",value:function(){this.isOpen&&("function"==typeof this.options.onClose&&this.options.onClose.call(this,this.$origin[0]),this.isOpen=!1,this.wrapper.classList.remove("open"),document.body.removeEventListener("click",this._handleDocumentClickBound,!0),document.body.removeEventListener("touchend",this._handleDocumentClickBound))}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_TapTarget}},{key:"defaults",get:function(){return t}}]),n}(u);M.TapTarget=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"tapTarget","M_TapTarget")}(cash),function(e){"use strict";var t={classes:"",dropdownOptions:{}},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.$el.hasClass("browser-default")?a(s):(s.el.M_FormSelect=s,s.options=e.extend({},n.defaults,i),s.isMultiple=s.$el.prop("multiple"),s.el.tabIndex=-1,s._keysSelected={},s._valueDict={},s._setupDropdown(),s._setupEventHandlers(),s)}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this._removeDropdown(),this.el.M_FormSelect=void 0}},{key:"_setupEventHandlers",value:function(){var t=this;this._handleSelectChangeBound=this._handleSelectChange.bind(this),this._handleOptionClickBound=this._handleOptionClick.bind(this),this._handleInputClickBound=this._handleInputClick.bind(this),e(this.dropdownOptions).find("li:not(.optgroup)").each((function(e){e.addEventListener("click",t._handleOptionClickBound)})),this.el.addEventListener("change",this._handleSelectChangeBound),this.input.addEventListener("click",this._handleInputClickBound)}},{key:"_removeEventHandlers",value:function(){var t=this;e(this.dropdownOptions).find("li:not(.optgroup)").each((function(e){e.removeEventListener("click",t._handleOptionClickBound)})),this.el.removeEventListener("change",this._handleSelectChangeBound),this.input.removeEventListener("click",this._handleInputClickBound)}},{key:"_handleSelectChange",value:function(e){this._setValueToInput()}},{key:"_handleOptionClick",value:function(t){t.preventDefault();var i=e(t.target).closest("li")[0],n=i.id;if(!e(i).hasClass("disabled")&&!e(i).hasClass("optgroup")&&n.length){var s=!0;if(this.isMultiple){var o=e(this.dropdownOptions).find("li.disabled.selected");o.length&&(o.removeClass("selected"),o.find('input[type="checkbox"]').prop("checked",!1),this._toggleEntryFromArray(o[0].id)),s=this._toggleEntryFromArray(n)}else e(this.dropdownOptions).find("li").removeClass("selected"),e(i).toggleClass("selected",s);e(this._valueDict[n].el).prop("selected")!==s&&(e(this._valueDict[n].el).prop("selected",s),this.$el.trigger("change"))}t.stopPropagation()}},{key:"_handleInputClick",value:function(){this.dropdown&&this.dropdown.isOpen&&(this._setValueToInput(),this._setSelectedStates())}},{key:"_setupDropdown",value:function(){var t=this;this.wrapper=document.createElement("div"),e(this.wrapper).addClass("select-wrapper "+this.options.classes),this.$el.before(e(this.wrapper)),this.wrapper.appendChild(this.el),this.el.disabled&&this.wrapper.classList.add("disabled"),this.$selectOptions=this.$el.children("option, optgroup"),this.dropdownOptions=document.createElement("ul"),this.dropdownOptions.id="select-options-"+M.guid(),e(this.dropdownOptions).addClass("dropdown-content select-dropdown "+(this.isMultiple?"multiple-select-dropdown":"")),this.$selectOptions.length&&this.$selectOptions.each((function(i){if(e(i).is("option")){var n=void 0;n=t.isMultiple?t._appendOptionWithIcon(t.$el,i,"multiple"):t._appendOptionWithIcon(t.$el,i),t._addOptionToValueDict(i,n)}else if(e(i).is("optgroup")){var s=e(i).children("option");e(t.dropdownOptions).append(e('<li class="optgroup"><span>'+i.getAttribute("label")+"</span></li>")[0]),s.each((function(e){var i=t._appendOptionWithIcon(t.$el,e,"optgroup-option");t._addOptionToValueDict(e,i)}))}})),this.$el.after(this.dropdownOptions),this.input=document.createElement("input"),e(this.input).addClass("select-dropdown dropdown-trigger"),this.input.setAttribute("type","text"),this.input.setAttribute("readonly","true"),this.input.setAttribute("data-target",this.dropdownOptions.id),this.el.disabled&&e(this.input).prop("disabled","true"),this.$el.before(this.input),this._setValueToInput();var i=e('<svg class="caret" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');if(this.$el.before(i[0]),!this.el.disabled){var n=e.extend({},this.options.dropdownOptions);n.onOpenEnd=function(i){var n=e(t.dropdownOptions).find(".selected").first();if(n.length&&(M.keyDown=!0,t.dropdown.focusedIndex=n.index(),t.dropdown._focusFocusedItem(),M.keyDown=!1,t.dropdown.isScrollable)){var s=n[0].getBoundingClientRect().top-t.dropdownOptions.getBoundingClientRect().top;s-=t.dropdownOptions.clientHeight/2,t.dropdownOptions.scrollTop=s}},this.isMultiple&&(n.closeOnClick=!1),this.dropdown=M.Dropdown.init(this.input,n)}this._setSelectedStates()}},{key:"_addOptionToValueDict",value:function(e,t){var i=Object.keys(this._valueDict).length,n=this.dropdownOptions.id+i,s={};t.id=n,s.el=e,s.optionEl=t,this._valueDict[n]=s}},{key:"_removeDropdown",value:function(){e(this.wrapper).find(".caret").remove(),e(this.input).remove(),e(this.dropdownOptions).remove(),e(this.wrapper).before(this.$el),e(this.wrapper).remove()}},{key:"_appendOptionWithIcon",value:function(t,i,n){var s=i.disabled?"disabled ":"",o="optgroup-option"===n?"optgroup-option ":"",a=this.isMultiple?'<label><input type="checkbox"'+s+'"/><span>'+i.innerHTML+"</span></label>":i.innerHTML,r=e("<li></li>"),l=e("<span></span>");l.html(a),r.addClass(s+" "+o),r.append(l);var u=i.getAttribute("data-icon");if(u){var d=e('<img alt="" src="'+u+'">');r.prepend(d)}return e(this.dropdownOptions).append(r[0]),r[0]}},{key:"_toggleEntryFromArray",value:function(t){var i=!this._keysSelected.hasOwnProperty(t),n=e(this._valueDict[t].optionEl);return i?this._keysSelected[t]=!0:delete this._keysSelected[t],n.toggleClass("selected",i),n.find('input[type="checkbox"]').prop("checked",i),n.prop("selected",i),i}},{key:"_setValueToInput",value:function(){var t=[];if(this.$el.find("option").each((function(i){if(e(i).prop("selected")){var n=e(i).text();t.push(n)}})),!t.length){var i=this.$el.find("option:disabled").eq(0);i.length&&""===i[0].value&&t.push(i.text())}this.input.value=t.join(", ")}},{key:"_setSelectedStates",value:function(){for(var t in this._keysSelected={},this._valueDict){var i=this._valueDict[t],n=e(i.el).prop("selected");e(i.optionEl).find('input[type="checkbox"]').prop("checked",n),n?(this._activateOption(e(this.dropdownOptions),e(i.optionEl)),this._keysSelected[t]=!0):e(i.optionEl).removeClass("selected")}}},{key:"_activateOption",value:function(t,i){i&&(this.isMultiple||t.find("li.selected").removeClass("selected"),e(i).addClass("selected"))}},{key:"getSelectedValues",value:function(){var e=[];for(var t in this._keysSelected)e.push(this._valueDict[t].el.value);return e}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_FormSelect}},{key:"defaults",get:function(){return t}}]),n}(u);M.FormSelect=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"formSelect","M_FormSelect")}(cash),function(e,t){"use strict";var i={},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Range=n,n.options=e.extend({},u.defaults,i),n._mousedown=!1,n._setupThumb(),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this._removeThumb(),this.el.M_Range=void 0}},{key:"_setupEventHandlers",value:function(){this._handleRangeChangeBound=this._handleRangeChange.bind(this),this._handleRangeMousedownTouchstartBound=this._handleRangeMousedownTouchstart.bind(this),this._handleRangeInputMousemoveTouchmoveBound=this._handleRangeInputMousemoveTouchmove.bind(this),this._handleRangeMouseupTouchendBound=this._handleRangeMouseupTouchend.bind(this),this._handleRangeBlurMouseoutTouchleaveBound=this._handleRangeBlurMouseoutTouchleave.bind(this),this.el.addEventListener("change",this._handleRangeChangeBound),this.el.addEventListener("mousedown",this._handleRangeMousedownTouchstartBound),this.el.addEventListener("touchstart",this._handleRangeMousedownTouchstartBound),this.el.addEventListener("input",this._handleRangeInputMousemoveTouchmoveBound),this.el.addEventListener("mousemove",this._handleRangeInputMousemoveTouchmoveBound),this.el.addEventListener("touchmove",this._handleRangeInputMousemoveTouchmoveBound),this.el.addEventListener("mouseup",this._handleRangeMouseupTouchendBound),this.el.addEventListener("touchend",this._handleRangeMouseupTouchendBound),this.el.addEventListener("blur",this._handleRangeBlurMouseoutTouchleaveBound),this.el.addEventListener("mouseout",this._handleRangeBlurMouseoutTouchleaveBound),this.el.addEventListener("touchleave",this._handleRangeBlurMouseoutTouchleaveBound)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("change",this._handleRangeChangeBound),this.el.removeEventListener("mousedown",this._handleRangeMousedownTouchstartBound),this.el.removeEventListener("touchstart",this._handleRangeMousedownTouchstartBound),this.el.removeEventListener("input",this._handleRangeInputMousemoveTouchmoveBound),this.el.removeEventListener("mousemove",this._handleRangeInputMousemoveTouchmoveBound),this.el.removeEventListener("touchmove",this._handleRangeInputMousemoveTouchmoveBound),this.el.removeEventListener("mouseup",this._handleRangeMouseupTouchendBound),this.el.removeEventListener("touchend",this._handleRangeMouseupTouchendBound),this.el.removeEventListener("blur",this._handleRangeBlurMouseoutTouchleaveBound),this.el.removeEventListener("mouseout",this._handleRangeBlurMouseoutTouchleaveBound),this.el.removeEventListener("touchleave",this._handleRangeBlurMouseoutTouchleaveBound)}},{key:"_handleRangeChange",value:function(){e(this.value).html(this.$el.val()),e(this.thumb).hasClass("active")||this._showRangeBubble();var t=this._calcRangeOffset();e(this.thumb).addClass("active").css("left",t+"px")}},{key:"_handleRangeMousedownTouchstart",value:function(t){if(e(this.value).html(this.$el.val()),this._mousedown=!0,this.$el.addClass("active"),e(this.thumb).hasClass("active")||this._showRangeBubble(),"input"!==t.type){var i=this._calcRangeOffset();e(this.thumb).addClass("active").css("left",i+"px")}}},{key:"_handleRangeInputMousemoveTouchmove",value:function(){if(this._mousedown){e(this.thumb).hasClass("active")||this._showRangeBubble();var t=this._calcRangeOffset();e(this.thumb).addClass("active").css("left",t+"px"),e(this.value).html(this.$el.val())}}},{key:"_handleRangeMouseupTouchend",value:function(){this._mousedown=!1,this.$el.removeClass("active")}},{key:"_handleRangeBlurMouseoutTouchleave",value:function(){if(!this._mousedown){var i=7+parseInt(this.$el.css("padding-left"))+"px";e(this.thumb).hasClass("active")&&(t.remove(this.thumb),t({targets:this.thumb,height:0,width:0,top:10,easing:"easeOutQuad",marginLeft:i,duration:100})),e(this.thumb).removeClass("active")}}},{key:"_setupThumb",value:function(){this.thumb=document.createElement("span"),this.value=document.createElement("span"),e(this.thumb).addClass("thumb"),e(this.value).addClass("value"),e(this.thumb).append(this.value),this.$el.after(this.thumb)}},{key:"_removeThumb",value:function(){e(this.thumb).remove()}},{key:"_showRangeBubble",value:function(){var i=-7+parseInt(e(this.thumb).parent().css("padding-left"))+"px";t.remove(this.thumb),t({targets:this.thumb,height:30,width:30,top:-30,marginLeft:i,duration:300,easing:"easeOutQuint"})}},{key:"_calcRangeOffset",value:function(){var e=this.$el.width()-15,t=parseFloat(this.$el.attr("max"))||100,i=parseFloat(this.$el.attr("min"))||0;return(parseFloat(this.$el.val())-i)/(t-i)*e}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Range}},{key:"defaults",get:function(){return i}}]),u}(u);M.Range=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"range","M_Range"),n.init(e("input[type=range]"))}(cash,M.anime)}).call(this,i(6))},function(e,t){var i;i=function(){return this}();try{i=i||new Function("return this")()}catch(e){"object"==typeof window&&(i=window)}e.exports=i},function(e,t,i){"use strict";i.r(t);var n=i(0);class s{constructor(e){this.steps=["restore-script-upload-step","backup-upload-step","restore-remote-backup-step","restore-remote-database-step","restore-finish-step"],this.ajaxurl=ajaxurl,this.cancel=!1,this.upload_file_event=new Event("upload_file_event"),this.resume=new Object,this.hash=e,this.local_restore=0,this.file_counter=0,document.addEventListener("backup_upload_finish",(function(e){jQuery(".xcloner-restore .backup-upload-step .toggler").removeClass("cancel")}),!1),document.addEventListener("remote_restore_backup_finish",(function(e){jQuery(".xcloner-restore .restore-remote-backup-step .toggler").removeClass("cancel")}),!1),document.addEventListener("remote_restore_mysql_backup_finish",(function(e){jQuery(".xcloner-restore .restore-remote-database-step .toggler").removeClass("cancel")}),!1),document.addEventListener("restore_script_invalid",(function(e){jQuery(".xcloner-restore #restore_script_url").addClass("invalid").removeClass("valid"),jQuery(".xcloner-restore #validate_url .material-icons").text("error")}),!1),document.addEventListener("restore_script_valid",(function(e){jQuery(".xcloner-restore #validate_url .material-icons").text("check_circle"),jQuery(".xcloner-restore #restore_script_url").removeClass("invalid").addClass("valid")}),!1),document.addEventListener("xcloner_populate_remote_backup_files_list",(function(e){var t=e.detail.files,i=jQuery(".xcloner-restore #remote_backup_file").val();for(var n in jQuery(".xcloner-restore #remote_backup_file").find("option").not(":first").remove(),t){var s="not-selected";(t[n].selected||i==t[n].path)&&(s="selected"),jQuery(".xcloner-restore #remote_backup_file").append("<option value='"+t[n].path+"' "+s+">"+t[n].path+"("+e.detail.$this.getSize(t[n].size)+" MB)</option>").addClass("file")}}),!1),document.addEventListener("xcloner_populate_remote_mysqldump_files_list",(function(e){var t=e.detail.files,i=jQuery(".xcloner-restore #remote_database_file").val();for(var n in jQuery(".xcloner-restore #remote_database_file").find("option").not(":first").remove(),t){if(t[n].selected||i==t[n].path)var s="selected";else s="not-selected";jQuery(".xcloner-restore #remote_database_file").append("<option value='"+t[n].path+"' "+s+">"+t[n].path+"("+e.detail.$this.getSize(t[n].size)+" MB) "+t[n].timestamp+"</option>").addClass("file")}}),!1),document.addEventListener("xcloner_restore_next_step",(function(e){if(void 0!==e.detail.$this){var t=e.detail.$this;jQuery(".xcloner-restore li."+t.steps[t.set_current_step]).show().find(".collapsible-header").trigger("click")}}),!1),document.addEventListener("xcloner_restore_update_progress",(function(e){void 0!==e.detail.percent&&(jQuery(".xcloner-restore .steps.active .progress").show(),"indeterminate"==e.detail.class&&jQuery(".xcloner-restore .steps.active .progress > div").addClass(e.detail.class).removeClass("determinate"),"determinate"==e.detail.class&&jQuery(".xcloner-restore .steps.active .progress > div").addClass(e.detail.class).removeClass("indeterminate"),100==e.detail.percent?jQuery(".xcloner-restore .steps.active .progress > div").removeClass("indeterminate").addClass("determinate").css("width",e.detail.percent+"%"):jQuery(".xcloner-restore .steps.active .progress .determinate").css("width",e.detail.percent+"%"))}),!1),document.addEventListener("xcloner_restore_display_status_text",(function(e){void 0===e.detail.status&&(e.detail.status="updated"),void 0!==e.detail.message&&jQuery(".xcloner-restore .steps.active .status").html("<div class='"+e.detail.status+"'>"+e.detail.message+"</div>")}),!1),document.addEventListener("xcloner_populate_remote_restore_path",(function(e){void 0!==e.detail.dir&&(jQuery(".xcloner-restore #remote_restore_path").val()||jQuery(".xcloner-restore #remote_restore_path").val(e.detail.dir)),void 0!==e.detail.restore_script_url&&(jQuery(".xcloner-restore #remote_restore_url").val()||jQuery(".xcloner-restore #remote_restore_url").val(e.detail.restore_script_url),jQuery(".xcloner-restore #remote_restore_site_url").val()||jQuery(".xcloner-restore #remote_restore_site_url").val(e.detail.restore_script_url),jQuery(".xcloner-restore #remote_mysql_host").val()||jQuery(".xcloner-restore #remote_mysql_host").val(e.detail.remote_mysql_host),jQuery(".xcloner-restore #remote_mysql_db").val()||jQuery(".xcloner-restore #remote_mysql_db").val(e.detail.remote_mysql_db),jQuery(".xcloner-restore #remote_mysql_user").val()||jQuery(".xcloner-restore #remote_mysql_user").val(e.detail.remote_mysql_user),jQuery(".xcloner-restore #remote_mysql_pass").val()||jQuery(".xcloner-restore #remote_mysql_pass").val(e.detail.remote_mysql_pass))}),!1),document.addEventListener("remote_restore_update_files_list",(function(e){if(void 0!==e.detail.files&&e.detail.files.length){for(var t=[],i=0;i<e.detail.files.length;i++)t[i]="<li>"+e.detail.files[i]+"</li>";jQuery(".xcloner-restore .restore-remote-backup-step .files-list").is(":hidden")||jQuery(".xcloner-restore .restore-remote-backup-step .files-list").html(t.reverse().join("\n"))}else jQuery.isArray(e.detail.files)||jQuery(".xcloner-restore .restore-remote-backup-step .files-list").html("")}),!1),document.addEventListener("xcloner_restore_display_query_box",(function(e){e.detail.query?(jQuery(".xcloner-restore .query-box").show(),jQuery(".xcloner-restore .query-list").val(e.detail.query)):(jQuery(".xcloner-restore .query-box").hide(),jQuery(".xcloner-restore .query-list").val(""))}),!1),document.addEventListener("xcloner_restore_finish",(function(e){jQuery(".xcloner-restore #xcloner_restore_finish").show(),jQuery(".xcloner-restore #open_target_site a").removeAttr("disabled")}),!1)}get_remote_backup_files_callback(e,t,i=new Object){if(t){var n=e.statusText.files;document.dispatchEvent(new CustomEvent("xcloner_populate_remote_backup_files_list",{detail:{files:n,$this:this}}))}}get_remote_backup_files(){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var e=new Object;e.local_backup_file=jQuery(".xcloner-restore .backup-upload-step #backup_file").val(),this.do_ajax("get_remote_backup_files_callback","list_backup_archives",e),this.get_remote_restore_path_default()}get_remote_mysqldump_files_callback(e,t,i=new Object){if(t){var n=e.statusText.files;document.dispatchEvent(new CustomEvent("xcloner_populate_remote_mysqldump_files_list",{detail:{files:n,$this:this}}))}}get_remote_mysqldump_files(){if(this.ajaxurl=this.restore_script_url,this.set_cancel(!1),this.resume.callback="","get_remote_mysqldump_files_callback"==this.resume.callback)return this.do_ajax(this.resume.callback,this.resume.action,this.resume.params),void(this.resume=new Object);var e=new Object;e.backup_file=this.get_backup_file(),e.remote_path=this.get_remote_path(),this.do_ajax("get_remote_mysqldump_files_callback","list_mysqldump_backups",e)}get_backup_file(){return jQuery(".xcloner-restore #remote_backup_file").val()}get_remote_path(){return jQuery(".xcloner-restore #remote_restore_path").val()}get_remote_restore_path_default_callback(e,t,i=new Object){t&&document.dispatchEvent(new CustomEvent("xcloner_populate_remote_restore_path",{detail:e.statusText}))}get_remote_restore_path_default(){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var e=new Object;e.restore_script_url=this.restore_script_url,this.do_ajax("get_remote_restore_path_default_callback","get_current_directory",e)}remote_restore_backup_file_callback(e,t,i=new Object){if(!t)return document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:e.status+" "+e.statusText}})),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}})),void document.dispatchEvent(new CustomEvent("remote_restore_backup_finish"));var n=parseInt(e.statusText.start)+parseInt(e.statusText.processed);if(e.statusText.extracted_files&&document.dispatchEvent(new CustomEvent("remote_restore_update_files_list",{detail:{files:e.statusText.extracted_files}})),!e.statusText.finished)return i.start=e.statusText.start,i.part=e.statusText.part,i.processed=e.statusText.processed,document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Processing <strong>"+e.statusText.backup_file+"</strong>- processed "+this.getSize(n,1024)+" KB from archive"}})),void this.do_ajax("remote_restore_backup_file_callback","restore_backup_to_path",i);document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Done restoring <strong>"+e.statusText.backup_file+"</strong>."}})),document.dispatchEvent(new CustomEvent("remote_restore_backup_finish")),this.cancel=!1}remote_restore_backup_file(e,t){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var i=new Object;if(i.backup_file=e,i.remote_path=t,i.filter_files=jQuery(".xcloner-restore input[name=filter_files]:checked").val(),"remote_restore_backup_file_callback"==this.resume.callback)return this.do_ajax(this.resume.callback,this.resume.action,this.resume.params),void(this.resume=new Object);document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0,class:"indeterminate"}})),document.dispatchEvent(new CustomEvent("remote_restore_update_files_list",{detail:{files:""}})),this.do_ajax("remote_restore_backup_file_callback","restore_backup_to_path",i)}remote_restore_mysql_backup_file_callback(e,t,i=new Object){if(!e)return this.set_cancel(!0),void document.dispatchEvent(new CustomEvent("remote_restore_mysql_backup_finish"));if(!t)return this.start=e.statusText.start,document.dispatchEvent(new CustomEvent("xcloner_restore_display_query_box",{detail:{query:e.statusText.query}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:e.status+" "+e.statusText.message}})),void document.dispatchEvent(new CustomEvent("remote_restore_mysql_backup_finish"));document.dispatchEvent(new CustomEvent("xcloner_restore_display_query_box",{detail:{query:""}})),i.query="";parseInt(e.statusText.start),parseInt(e.statusText.processed);if(!e.statusText.finished){i.start=e.statusText.start,i.processed=e.statusText.processed,this.start=i.start;var n=0;return e.statusText.backup_size&&(n=100*parseInt(e.statusText.start)/parseInt(e.statusText.backup_size)),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Processing <strong>"+e.statusText.backup_file+"</strong>- wrote "+this.getSize(e.statusText.start,1024)+" KB of data"}})),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:n}})),void this.do_ajax("remote_restore_mysql_backup_file_callback","restore_mysql_backup",i)}document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Done restoring <strong>"+e.statusText.backup_file+"</strong>."}})),document.dispatchEvent(new CustomEvent("remote_restore_mysql_backup_finish")),this.cancel=!1}remote_restore_mysql_backup_file(e){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var t=new Object;if(t.remote_mysql_host=jQuery(".xcloner-restore #remote_mysql_host").val(),t.remote_mysql_db=jQuery(".xcloner-restore #remote_mysql_db").val(),t.remote_mysql_user=jQuery(".xcloner-restore #remote_mysql_user").val(),t.remote_mysql_pass=jQuery(".xcloner-restore #remote_mysql_pass").val(),t.remote_path=jQuery(".xcloner-restore #remote_restore_path").val(),t.wp_home_url=jQuery(".xcloner-restore #wp_home_url").val(),t.remote_restore_url=jQuery(".xcloner-restore #remote_restore_url").val(),jQuery(".xcloner-restore #wp_site_url").length&&(t.wp_site_url=jQuery(".xcloner-restore #wp_site_url").val(),t.restore_site_url=jQuery(".xcloner-restore #remote_restore_site_url").val()),t.mysqldump_file=e,t.query="",t.start=0,jQuery(".xcloner-restore .query-box .query-list").val()&&(t.query=jQuery(".xcloner-restore .query-box .query-list").val(),t.start=this.start),document.dispatchEvent(new CustomEvent("xcloner_restore_display_query_box",{detail:{query:""}})),"remote_restore_mysql_backup_file_callback"==this.resume.callback)return this.do_ajax(this.resume.callback,this.resume.action,this.resume.params),void(this.resume=new Object);this.do_ajax("remote_restore_mysql_backup_file_callback","restore_mysql_backup",t)}restore_finish_callback(e,t,i=new Object){if(!t)return document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:e.statusText,$this:this}})),!1;document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:e.statusText,$this:this}})),document.dispatchEvent(new CustomEvent("xcloner_restore_finish",{detail:{message:e.statusText,$this:this}}))}restore_finish(){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var e=new Object;e.backup_archive=jQuery(".xcloner-restore #remote_backup_file").val(),e.remote_mysql_host=jQuery(".xcloner-restore #remote_mysql_host").val(),e.remote_mysql_db=jQuery(".xcloner-restore #remote_mysql_db").val(),e.remote_mysql_user=jQuery(".xcloner-restore #remote_mysql_user").val(),e.remote_mysql_pass=jQuery(".xcloner-restore #remote_mysql_pass").val(),e.remote_path=jQuery(".xcloner-restore #remote_restore_path").val(),e.remote_restore_url=jQuery(".xcloner-restore #remote_restore_url").val(),e.delete_backup_temporary_folder=0,e.delete_restore_script=0,e.update_remote_site_url=0,jQuery(".xcloner-restore #delete_backup_temporary_folder").is(":checked")&&(e.delete_backup_temporary_folder=1),jQuery(".xcloner-restore #delete_restore_script").is(":checked")&&(e.delete_restore_script=1),jQuery(".xcloner-restore #update_remote_site_url").is(":checked")&&(e.update_remote_site_url=1),jQuery(".xcloner-restore #delete_backup_archive").is(":checked")&&(e.delete_backup_archive=1),this.do_ajax("restore_finish_callback","restore_finish",e)}upload_backup_file(e){this.ajaxurl=ajaxurl;var t=new Object;if(this.set_cancel(!1),"upload_backup_file_callback"==this.resume.callback)return this.do_ajax(this.resume.callback,this.resume.action,this.resume.params),void(this.resume=new Object);t.file=e,t.start=0,t.target_url=this.restore_script_url,document.dispatchEvent(new CustomEvent("backup_upload_start")),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Uploading backup 0%"}})),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0}})),this.do_ajax("upload_backup_file_callback","restore_upload_backup",t)}upload_backup_file_callback(e,t,i=new Object){if(!t)return document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:e.status+" "+e.statusText}})),void document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}}));if(e&&(!1!==e.start||e.part<e.total_parts)){var n=0;if(e.total_size){e.start||(e.start=0);var s=parseInt(e.start)+parseInt(e.uploaded_size);n=100*parseInt(s)/parseInt(e.total_size)}var o="";e.part>0&&(o="part "+e.part+" - "),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:n}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Uploading backup "+o+parseFloat(n).toFixed(2)+"%"}})),i.start=e.start,i.part=e.part,i.uploaded_size=e.uploaded_size,this.do_ajax("upload_backup_file_callback","restore_upload_backup",i)}else this.cancel=!1,document.dispatchEvent(new CustomEvent("backup_upload_finish")),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Done."}}))}verify_restore_url_callback(e,t,i=new Object){if(t)document.dispatchEvent(new CustomEvent("restore_script_valid")),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Validation ok."}})),this.local_restore?this.next_step(1):this.next_step();else{var n="<a href='"+this.restore_script_url+"' target='_blank'>restore script address</a>";document.dispatchEvent(new CustomEvent("restore_script_invalid")),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Could not access the restore script: "+e.status+" "+e.statusText+". Please check the javascript console for more details. Are you able to see a valid JSON response of the "+n+" in your browser?"}}))}}verify_restore_url(e,t,i=new Object){"http://"==this.restore_script_url||"https://"==this.restore_script_url||""==this.restore_script_url||void 0===this.restore_script_url?(this.restore_script_url=ajaxurl+"?action=restore_backup",this.local_restore=1,jQuery("#delete_backup_archive").attr("disabled","disabled").removeAttr("checked"),jQuery("#delete_restore_script").attr("disabled","disabled").removeAttr("checked")):(this.local_restore=0,jQuery("#delete_restore_script").attr("checked","checked").removeAttr("disabled")),1==this.local_restore?(jQuery(".restore-remote-backup-step #filter_files_all").removeAttr("checked").attr("disabled","disabled"),jQuery(".restore-remote-backup-step #filter_files_wp_content").attr("checked","checked")):(jQuery(".restore-remote-backup-step #filter_files_all").removeAttr("disabled").attr("checked","checked"),jQuery(".restore-remote-backup-step #filter_files_wp_content").removeAttr("checked")),this.ajaxurl=this.restore_script_url,jQuery(".xcloner-restore #xcloner_restore_finish").hide(),this.cancel=!1,this.set_current_step=0,this.do_ajax("verify_restore_url_callback")}open_target_site(e){var t=jQuery(".xcloner-restore #remote_restore_url").val();t||jQuery(".xcloner-restore #wp_home_url").val(),jQuery(e).attr("href",t)}next_step(e=0){this.set_current_step=jQuery(".xcloner-restore li.active").attr("data-step"),this.set_current_step=parseInt(this.set_current_step)+parseInt(e),document.dispatchEvent(new CustomEvent("xcloner_restore_next_step",{detail:{$this:this}}))}list_backup_content_callback(e,t,i=new Object){if(e.error)return jQuery("#backup_cotent_modal .files-list").addClass("error").prepend(e.statusText),void jQuery("#backup_cotent_modal .progress > div").addClass("determinate").removeClass(".indeterminate").css("width","100%");e=e.statusText;var n=[];for(var s in e.files){if(void 0!==e.total_size)parseInt(100*e.start),parseInt(e.total_size);this.file_counter++,n[s]="<li>"+this.file_counter+". <span title='"+e.files[s].mtime+"'>"+e.files[s].path+"</span> ("+e.files[s].size+" bytes)</li>"}jQuery("#backup_cotent_modal .modal-content .files-list").prepend(n.reverse().join("\n")),!e.finished&&jQuery("#backup_cotent_modal").is(":visible")?(i.start=e.start,i.part=e.part,this.do_ajax("list_backup_content_callback","list_backup_files",i)):jQuery("#backup_cotent_modal .progress > div").addClass("determinate").removeClass(".indeterminate").css("width","100%")}list_backup_content(e){this.file_counter=0,jQuery("#backup_cotent_modal .modal-content .files-list").text("").removeClass("error"),jQuery("#backup_cotent_modal .modal-content .backup-name").text(e);var t=document.querySelector("#backup_cotent_modal");M.Modal.init(t).open(),jQuery("#backup_cotent_modal .progress > div").removeClass("determinate").addClass("indeterminate");var i=new Object;i.file=e,i.start=0,i.part=0,this.do_ajax("list_backup_content_callback","list_backup_files",i)}init_resume(){this.resume=new Object,jQuery(".xcloner-restore .steps.active .progress").is(":visible")&&document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0}})),jQuery(".xcloner-restore .steps.active .status").html()&&document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:""}})),document.dispatchEvent(new CustomEvent("remote_restore_update_files_list",{detail:{files:""}}))}do_ajax(e,t="",i=new Object){if("restore_upload_backup"==t&&(i.action="restore_upload_backup"),i.xcloner_action=t,i.hash=this.hash,i.API_ID=Object(n.ID)(),void 0!==typeof XCLONER_WPNONCE&&(i._wpnonce=XCLONER_WPNONCE),1==this.cancel)return this.resume.callback=e,this.resume.action=t,void(this.resume.params=i);if(!this.restore_script_url)return!1;var s=this;jQuery(".xcloner-restore .steps.active").addClass("active_status"),this.request=jQuery.ajax({url:this.ajaxurl,dataType:"json",type:"POST",crossDomain:!0,data:i,error:function(n,o,a){s.resume.callback=e,s.resume.action=t,s.resume.params=i,document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:n.status+" "+n.statusText}})),s[e](n,!1)}}).done((function(n){n||(s.resume.callback=e,s.resume.action=t,s.resume.params=i,document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Lost connection with the API, please try and authentificate again"}}))),n&&200!=n.status?n.error?document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:n.message}})):s[e](n,!1,i):s[e](n,!0,i)}))}set_restore_script_url(e){this.restore_script_url=e}set_current_step(e){this.set_current_step=e}set_cancel(e){e&&document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0,class:"determinate"}})),this.cancel=e}get_cancel(e){return this.cancel}getSize(e,t=1048576){return(e/t).toFixed(2)}}jQuery(document).ready((function(){if("undefined"!=typeof xcloner_auth_key)var e=new s(xcloner_auth_key);else e=new s;e.set_current_step(0),jQuery(".col select").formSelect(),jQuery(".xcloner-restore .upload-backup.cancel").on("click",(function(){e.set_cancel(!0)})),jQuery(".xcloner-restore .upload-backup").on("click",(function(){jQuery(this).hasClass("cancel")?e.set_cancel(!0):e.set_cancel(!1);var t=jQuery(".xcloner-restore #backup_file").val();t?(jQuery(this).parent().toggleClass("cancel"),e.get_cancel()||e.upload_backup_file(t)):document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Please select a backup file from the list above"}}))})),jQuery(".xcloner-restore #validate_url").on("click",(function(){e.set_restore_script_url(jQuery(".xcloner-restore #restore_script_url").val()),e.verify_restore_url()})),jQuery(".xcloner-restore #skip_upload_backup").on("click",(function(){e.set_cancel(!0),e.next_step()})),jQuery(".xcloner-restore #skip_restore_remote_database_step").on("click",(function(){e.set_cancel(!0),e.next_step()})),jQuery(".xcloner-restore li.steps").on("click",(function(){e.set_current_step=jQuery(this).attr("data-step")-1})),jQuery(".xcloner-restore #skip_remote_backup_step").on("click",(function(){e.set_cancel(!0),e.next_step()})),jQuery(".xcloner-restore .restore-remote-backup-step .collapsible-header").click((function(){e.get_remote_backup_files()})),jQuery(".xcloner-restore .restore-remote-database-step .collapsible-header").click((function(){e.get_remote_mysqldump_files()})),jQuery(".xcloner-restore #remote_backup_file").on("change",(function(){e.init_resume()})),jQuery(".xcloner-restore #backup_file").on("change",(function(){e.init_resume()})),jQuery(".xcloner-restore #restore_finish").click((function(){e.restore_finish()})),jQuery(".xcloner-restore #open_target_site a").click((function(){e.open_target_site(this)})),jQuery(".xcloner-restore #refresh_remote_backup_file").on("click",(function(t){document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0}})),e.resume=new Object,e.get_remote_backup_files(),t.stopPropagation()})),jQuery(".xcloner-restore #refresh_database_file").on("click",(function(t){document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0}})),e.resume=new Object,e.get_remote_mysqldump_files(),t.stopPropagation()})),jQuery(".xcloner-restore #toggle_file_restore_display").on("click",(function(e){jQuery(".xcloner-restore .restore-remote-backup-step .files-list").toggle()})),jQuery(".xcloner-restore .restore_remote_mysqldump").on("click",(function(t){jQuery(this).hasClass("cancel")?e.set_cancel(!0):e.set_cancel(!1),this.remote_database_file=jQuery(".xcloner-restore #remote_database_file").val(),this.remote_database_file?(jQuery(this).parent().toggleClass("cancel"),e.get_cancel()||(document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0,class:"determinate"}})),e.remote_restore_mysql_backup_file(this.remote_database_file))):document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Please select a mysqld backup file from the list"}}))})),jQuery(".xcloner-restore .list-backup-content").on("click",(function(t){var i=jQuery(".xcloner-restore #remote_backup_file").val();i&&e.list_backup_content(i),t.preventDefault()})),jQuery(".xcloner-restore .restore-remote-backup-step .restore_remote_backup").click((function(){jQuery(this).hasClass("cancel")?e.set_cancel(!0):e.set_cancel(!1),this.backup_file=jQuery(".xcloner-restore #remote_backup_file").val(),this.backup_file?(this.remote_path=jQuery(".xcloner-restore #remote_restore_path").val(),this.remote_path?(jQuery(this).parent().toggleClass("cancel"),e.get_cancel()||(document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0,class:"indeterminate"}})),e.remote_restore_backup_file(this.backup_file,this.remote_path))):document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Please enter the remote restore path"}}))):document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Please select a backup file from the list above"}}))}))}))},function(e,t,i){"use strict";i.r(t);var n,s=i(0);document.addEventListener("DOMContentLoaded",(function(){var e=document.querySelector("#edit_schedule");n=M.Modal.init(e)})),jQuery(document).ready((function(){var e=new class{constructor(){this.edit_modal=jQuery("#edit_schedule")}get_form_params(){}get_schedule_by_id(e){var t=this;e&&jQuery.ajax({url:XCLONER_AJAXURL,data:{action:"get_schedule_by_id",id:e},success:function(i){i.id==e&&t.create_modal(i)},dataType:"json"})}delete_schedule_by_id(e,t,i){e&&jQuery.ajax({url:XCLONER_AJAXURL,data:{action:"delete_schedule_by_id",id:e},success:function(e){jQuery(t).parents("tr").remove(),i.row(jQuery(t).parents("tr")).remove().draw()},dataType:"json"})}create_modal(e){this.edit_modal.find("#schedule_id").text(e.id),1==e.status?this.edit_modal.find("#status").attr("checked","checked"):this.edit_modal.find("#status").removeAttr("checked"),this.edit_modal.find("#schedule_id").text(e.id),this.edit_modal.find("#schedule_id_hidden").val(e.id),this.edit_modal.find("#schedule_name").val(e.name),this.edit_modal.find("#backup_name").val(e.backup_params.backup_name),this.edit_modal.find("#email_notification").val(e.backup_params.email_notification),this.edit_modal.find("#diff_start_date").val(e.backup_params.diff_start_date),this.edit_modal.find('#schedule_frequency>option[value="'+e.recurrence+'"]').prop("selected",!0),this.edit_modal.find('#backup_type>option[value="'+e.backup_type+'"]').prop("selected",!0),this.edit_modal.find('#schedule_storage>option[value="'+e.remote_storage+'"]').prop("selected",!0),this.edit_modal.find("#schedule_start_date").val(e.start_at),void 0!==e.backup_params.backup_encrypt&&1==e.backup_params.backup_encrypt&&this.edit_modal.find("#backup_encrypt").attr("checked","checked"),void 0!==e.backup_params.backup_delete_after_remote_transfer&&1==e.backup_params.backup_delete_after_remote_transfer&&this.edit_modal.find("#backup_delete_after_remote_transfer").attr("checked","checked");var t=jQuery.parseJSON(e.table_params),i="";for(var s in t)for(var o in t[s])i+=s+"."+t[s][o]+"\n";this.edit_modal.find("#table_params").val(i);var a=jQuery.parseJSON(e.excluded_files),r="";for(var o in a)r+=a[o]+"\n";this.edit_modal.find("#excluded_files").val(r),jQuery(".col select").formSelect(),M.updateTextFields(),n.open()}save_schedule(e,t){var i=jQuery(e).serialize();jQuery.ajax({url:XCLONER_AJAXURL,dataType:"json",type:"POST",data:i,error:function(e){alert("Error saving schedule!")}}).done((function(e){void 0===e.error?(n.close(),t.ajax.reload()):alert("Error saving schedule!"+e.error)}))}IsJsonString(e){try{JSON.parse(e)}catch(e){return!1}return!0}};jQuery("select[required]").css({display:"block",height:0,padding:0,width:0,position:"absolute"});let t=jQuery("#scheduled_backups").DataTable({responsive:!0,bFilter:!1,order:[[3,"desc"]],buttons:["selectAll","selectNone"],language:{emptyTable:"No schedules available",buttons:{selectAll:"Select all items",selectNone:"Select none"}},columnDefs:[{targets:"no-sort",orderable:!1},{className:"hide-on-med-and-down",targets:[3,5]}],ajax:XCLONER_AJAXURL+"&action=get_scheduler_list",fnDrawCallback:function(i){jQuery(this).off("click",".edit").on("click",".edit",(function(){var t=jQuery(this).attr("href").substr(1);e.get_schedule_by_id(t)})),jQuery(this).off("click",".delete").on("click",".delete",(function(){var i=jQuery(this).attr("href").substr(1);if(confirm("Are you sure you want to delete it?"))e.delete_schedule_by_id(i,this,t)})),jQuery("span.shorten_string").each((function(){Object(s.doShortText)(jQuery(this))})),jQuery("span.shorten_string").click((function(){jQuery(this).toggleClass("full"),Object(s.doShortText)(jQuery(this))}))}});jQuery("#save_schedule").on("submit",(function(){return e.save_schedule(jQuery(this),t),!1})),"function"==typeof jQuery(".timepicker").pickatime&&jQuery(".timepicker").pickatime({default:"now",min:[7,30],twelvehour:!1,donetext:"OK",autoclose:!1,vibrate:!0}),"function"==typeof jQuery(".timepicker").pickadate&&(jQuery(".datepicker").pickadate({format:"d mmmm yyyy",selectMonths:!0,selectYears:15,min:.1,onSet:function(){}}),jQuery(".datepicker_max_today").pickadate({format:"yyyy-mm-dd",selectMonths:!0,selectYears:15,max:.1,onSet:function(){}}))}))}]);
3
  //# sourceMappingURL=index.min.js.map
1
  /*! For license information please see index.min.js.LICENSE.txt */
2
+ !function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="",i(i.s=4)}([function(e,t,i){"use strict";i.r(t),i.d(t,"error_modal",(function(){return a})),i.d(t,"next_tab",(function(){return r})),i.d(t,"doShortText",(function(){return l})),i.d(t,"show_ajax_error",(function(){return u})),i.d(t,"ID",(function(){return d})),i.d(t,"getUrlParam",(function(){return c}));var n=i(2),s=i(3),o=i(1);let a;document.addEventListener("DOMContentLoaded",(function(){var e=document.querySelector("#error_modal");a=M.Modal.init(e)})),jQuery,jQuery(document).ready((function(){jQuery(".tooltipped").tooltip(),jQuery(".collapsible").collapsible(),jQuery("span.shorten_string").click((function(){jQuery(this).toggleClass("full"),l(jQuery(this))})),jQuery("span.shorten_string").each((function(){l(jQuery(this))})),jQuery("#xcloner_regex_exclude").on("focus",(function(){jQuery("ul.xcloner_regex_exclude_limit li").fadeIn()})),jQuery(".regex_pattern").on("click",(function(){jQuery(this).select()})),jQuery(".btn.system_info_toggle").on("click",(function(){jQuery(".additional_system_info").toggle()})),jQuery("a.download-logger").on("click",(function(e){var t=new o.Xcloner_Manage_Backups,i=jQuery(this).attr("href").substr(1);i&&t.download_backup_by_name(i),e.preventDefault()})),jQuery(".nav-tab-wrapper.content li").on("click",(function(e){jQuery(".nav-tab-wrapper li a").removeClass("nav-tab-active"),jQuery(this).find("a").addClass("nav-tab-active"),jQuery(".nav-tab-wrapper-content .tab-content").removeClass("active"),jQuery(".nav-tab-wrapper-content "+jQuery(this).find("a").attr("href")).addClass("active"),e.preventDefault(),location.hash=jQuery(this).find("a").attr("href")+"_hash"}));var e=window.location.hash;e&&r(e.replace("_hash",""))}));const r=function(e){jQuery(".nav-tab-wrapper").find("li a[href='"+e+"']").trigger("click"),location.hash=e},l=function(e){if(e.hasClass("full"))e.text(e.attr("data-text"));else{var t=e.text(),i=t.length,n=t.substr(0,10),s=t.substr(i-20,i);e.attr("data-text",t).text(n+"..."+s)}},u=function(e,t,i){"undefined"!=typeof xcloner_backup&&xcloner_backup.cancel_backup(),i&&void 0!==i.responseText&&(t=t+": "+i.responseText),jQuery("#error_modal .title").text(e),jQuery("#error_modal .msg").text(t),i&&i.status&&jQuery("#error_modal .status").text(i.status+" "+i.statusText),jQuery("#error_modal .body").text(JSON.stringify(i)),a.open()},d=function(){return"_"+Math.random().toString(36).substr(2,9)},c=function(e){return(location.search.split(e+"=")[1]||"").split("&")[0]};jQuery(document).ready((function(){window.remote_storage=new n.Xcloner_Remote_Storage,window.xcloner_backup=new s.Xcloner_Backup,window.xcloner_manage_backups=new o.Xcloner_Manage_Backups,window.ID=d,window.getUrlParam=c,window.show_ajax_error=u,window.doShortText=l,window.dataTable=null,window.next_tab=r}))},function(e,t,i){"use strict";i.r(t),i.d(t,"Xcloner_Manage_Backups",(function(){return l}));var n,s,o,a,r;i(0);document.addEventListener("DOMContentLoaded",(function(){var e=document.querySelector("#backup_cotent_modal");n=M.Modal.init(e);e=document.querySelector("#backup_encryption_modal");s=M.Modal.init(e);e=document.querySelector("#backup_decryption_modal");o=M.Modal.init(e);e=document.querySelector("#remote_storage_modal");a=M.Modal.init(e);e=document.querySelector("#local_storage_upload_modal");r=M.Modal.init(e)}));class l{constructor(){this.file_counter=0,this.storage_selection="",this.dataTable=""}download_backup_by_name(e){return window.open(XCLONER_AJAXURL+"&action=download_backup_by_name&name="+e+"&storage_selection="+this.storage_selection),!1}delete_backup_by_name(e,t,i){e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"delete_backup_by_name",name:e,storage_selection:this.storage_selection},success:function(e){e.finished?i.row(jQuery(t).parents("tr")).remove().draw():alert("There was an error deleting the file")},dataType:"json"})}list_backup_content_callback(e,t=0,i=0){var n=this;e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"list_backup_files",file:e,start:t,part:i},success:function(t){if(t.error)return jQuery("#backup_cotent_modal .files-list").addClass("error").prepend(t.message),void jQuery("#backup_cotent_modal .progress > div").addClass("determinate").removeClass(".indeterminate").css("width","100%");var i=[];for(var s in t.files){if(void 0!==t.total_size)parseInt(100*t.start),parseInt(t.total_size);n.file_counter++,i[s]="<li>"+n.file_counter+". <span title='"+t.files[s].mtime+"'>"+t.files[s].path+"</span> ("+t.files[s].size+" bytes)</li>"}jQuery("#backup_cotent_modal .modal-content .files-list").prepend(i.reverse().join("\n")),!t.finished&&jQuery("#backup_cotent_modal").is(":visible")?n.list_backup_content_callback(e,t.start,t.part):jQuery("#backup_cotent_modal .progress > div").addClass("determinate").removeClass(".indeterminate").css("width","100%")},error:function(e,t,i){jQuery("#backup_cotent_modal .files-list").addClass("error").prepend(t+i)},dataType:"json"})}list_backup_content(e){this.file_counter=0,jQuery("#backup_cotent_modal .modal-content .files-list").text("").removeClass("error"),jQuery("#backup_cotent_modal .modal-content .backup-name").text(e),n.open(),jQuery("#backup_cotent_modal .progress > div").removeClass("determinate").addClass("indeterminate"),this.list_backup_content_callback(e)}backup_encryption_callback(e,t=0,i=0,n=0){var s=this;e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"backup_encryption",file:e,start:t,part:i,iv:n},success:function(t){if(void 0!==t.total_size){jQuery("#backup_encryption_modal .progress > div").removeClass("indeterminate").addClass("determinate");var i=parseInt(100*t.start)/parseInt(t.total_size);jQuery("#backup_encryption_modal .progress .determinate").css("width",parseInt(i)+"%"),jQuery("#backup_encryption_modal .modal-content .files-list").text("Encrypting "+t.processing_file+" "+parseInt(i)+"%")}if(t.error)return jQuery("#backup_encryption_modal .notice").show(),jQuery("#backup_encryption_modal .files-list").addClass("error").prepend(t.message+" "),void jQuery("#backup_encryption_modal .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%");!t.finished&&jQuery("#backup_encryption_modal").is(":visible")?s.backup_encryption_callback(e,t.start,t.part,t.iv):(jQuery("#backup_encryption_modal .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%"),jQuery("#backup_encryption_modal .modal-content .files-list").text("Done Encrypting."),dataTable.ajax.reload())},error:function(e,t,i){jQuery("#backup_encryption_modal .files-list").addClass("error").prepend(t+i)},dataType:"json"})}backup_encryption(e,t=0){this.file_counter=0,jQuery("#backup_encryption_modal .modal-content .backup-name").text(e),s.open(),jQuery("#backup_encryption_modal .progress > div"),jQuery("#backup_encryption_modal .notice").show(),jQuery("#backup_encryption_modal a.btn").attr("onclick","xcloner_manage_backups.backup_encryption('"+e+"', true)"),jQuery("#backup_encryption_modal .modal-content .files-list").text("").removeClass("error"),t&&(jQuery("#backup_encryption_modal .notice").hide(),this.backup_encryption_callback(e))}backup_decryption_callback(e,t=0,i=0,n=0){var s=this,o=jQuery("#backup_decryption_modal #decryption_key").val();e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"backup_decryption",file:e,start:t,part:i,iv:n,decryption_key:o},success:function(t){if(t.start||(t.start=0),void 0!==t.total_size){jQuery("#backup_decryption_modal .progress > div").removeClass("indeterminate").addClass("determinate");var i=parseInt(100*t.start)/parseInt(t.total_size);jQuery("#backup_decryption_modal .progress .determinate").css("width",parseInt(i)+"%"),jQuery("#backup_decryption_modal .modal-content .files-list").text("Decrypting "+t.processing_file+" "+parseInt(i)+"%")}if(t.error)return jQuery("#backup_decryption_modal .files-list").addClass("error").prepend(t.message+" "),jQuery("#backup_decryption_modal .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%"),void jQuery("#backup_decryption_modal .notice").show();!t.finished&&jQuery("#backup_decryption_modal").is(":visible")?s.backup_decryption_callback(e,t.start,t.part,t.iv):(jQuery("#backup_decryption_modal .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%"),jQuery("#backup_decryption_modal .modal-content .files-list").text("Done Decrypting."),dataTable.ajax.reload())},error:function(e,t,i){jQuery("#backup_decryption_modal .files-list").addClass("error").prepend(t+i)},dataType:"json"})}backup_decryption(e,t=0){this.file_counter=0,jQuery("#backup_decryption_modal .modal-content .backup-name").text(e),o.open(),jQuery("#backup_decryption_modal .progress > div"),jQuery("#backup_decryption_modal .notice").show(),jQuery("#backup_decryption_modal a.btn").attr("onclick","xcloner_manage_backups.backup_decryption('"+e+"', true)"),jQuery("#backup_decryption_modal .modal-content .files-list").text("").removeClass("error"),t&&(jQuery("#backup_decryption_modal .notice").hide(),this.backup_decryption_callback(e))}cloud_upload(e,t){t=t||0,jQuery("#remote_storage_modal").find(".backup_name").text(e),jQuery("#remote_storage_modal").find("input.backup_name").val(e),M.updateTextFields(),jQuery(".col select").formSelect(),a.open(),jQuery("#remote_storage_modal .status").hide(),jQuery(".remote-storage-form").off("submit").on("submit",(function(){jQuery("#remote_storage_modal .status").show(),jQuery("#remote_storage_modal .status .progress .indeterminate").removeClass("determinate").css("width","0%"),jQuery("#remote_storage_modal .status-text").removeClass("error").text("");var i=jQuery("#remote_storage_modal select").val();return e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"upload_backup_to_remote",file:e,storage_type:i,delete_after_transfer:t},success:function(e){e.error?jQuery("#remote_storage_modal .status-text").addClass("error").text(e.message):jQuery("#remote_storage_modal .status-text").removeClass("error").text("done"),jQuery("#remote_storage_modal .status .progress .indeterminate").addClass("determinate").css("width","100%")},error:function(e,t,i){jQuery("#remote_storage_modal .status-text").addClass("error").text(t+i)},dataType:"json"}),!1}))}copy_remote_to_local(e){r.open(),jQuery("#local_storage_upload_modal .modal-content .backup-name").text(e),jQuery("#local_storage_upload_modal .status-text").removeClass("error").text(""),jQuery("#local_storage_upload_modal .status .progress .indeterminate").removeClass("determinate").css("width","0%"),e&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"copy_backup_remote_to_local",file:e,storage_type:this.storage_selection},success:function(e){e.error?jQuery("#local_storage_upload_modal .status-text").addClass("error").text(e.message):jQuery("#local_storage_upload_modal .status-text").removeClass("error").text("done"),jQuery("#local_storage_upload_modal .status .progress .indeterminate").addClass("determinate").css("width","100%")},error:function(e,t,i){jQuery("#local_storage_upload_modal .status-text").addClass("error").text(t+i)},dataType:"json"})}}},function(e,t,i){"use strict";i.r(t),i.d(t,"Xcloner_Remote_Storage",(function(){return n}));class n{constructor(){}toggle_status(e){var t=jQuery(e).attr("name"),i=0;jQuery(e).is(":checked")&&(i=1),t&&jQuery.ajax({url:XCLONER_AJAXURL,method:"post",data:{action:"remote_storage_save_status",id:t,value:i},success:function(e){e.finished||alert("Error changing status")},dataType:"json"})}}},function(e,t,i){"use strict";i.r(t),i.d(t,"Xcloner_Backup",(function(){return n}));class n{constructor(){this.cancel=0,this.params,this.generate_hash=!1,this.last_dumpfile="",this.last_backup_file="",this.backup_part=0,this.backup_size_total=0,this.resume=new Object}get_form_params(){var e=[],t=[];jQuery.each(jQuery("#jstree_database_container").jstree("get_checked",!0),(function(){var t=new Object;t.id=this.id,t.parent=this.parent;var i=e.length;e[i]=t})),jQuery.each(jQuery("#jstree_files_container").jstree("get_checked",!0),(function(){var e=new Object;e.id=this.id,e.parent=this.parent;var i=t.length;t[i]=e}));var i=new Object;return i.table_params=e,i.files_params=t,i.backup_params=jQuery("#generate_backup_form").serializeArray(),i}do_backup_database_callback(e,t,i){if(i.extra&&(this.params.extra=i.extra),i.extra.stats&&(void 0!==i.extra.stats.tables_count&&jQuery(e).find(".table-counter").text(parseInt(i.extra.stats.tables_count)),void 0!==i.extra.stats.database_count&&jQuery(e).find(".database-counter").text(parseInt(i.extra.stats.database_count)),void 0!==i.extra.stats.total_records&&jQuery(e).find(".total-records").text(parseInt(i.extra.stats.total_records))),i.extra.tableName&&jQuery(e).find(".last-logged-table").text(i.extra.databaseName+"."+i.extra.tableName+" ("+i.extra.processedRecords+" records)"),void 0!==i.extra.processedRecords&&!i.extra.startAtRecord&&!i.extra.endDump){var n=parseInt(jQuery(e).find(".total-records").attr("data-processed"))+parseInt(i.extra.processedRecords),s=100*parseInt(n)/parseInt(jQuery(e).find(".total-records").text());jQuery(e).find(".progress .determinate").css("width",s+"%"),jQuery(e).find(".total-records").attr("data-processed",n),jQuery(e).find(".status-body ul.logged-tables").prepend(jQuery("<li>").text(i.extra.databaseName+"."+i.extra.tableName+" ("+i.extra.processedRecords+" records)"))}if(void 0!==i.extra.dumpfile){var o=i.extra.dumpfile+" ("+this.getSize(i.extra.dumpsize,1024)+" KB)";jQuery(this.last_dumpfile).hasClass(i.extra.dumpfile)?jQuery(this.last_dumpfile).html(o):this.last_dumpfile=jQuery("<li>").addClass(i.extra.dumpfile).html(o).prependTo("ul.logged-databases")}if(!i.finished)return this.do_ajax(e,t),!1;jQuery(e).find(".last-logged-table").text("done"),jQuery(e).find(".progress .determinate").css("width","100%"),this.do_backup_files()}do_backup_database(){if(jQuery("#jstree_database_container").length){var e="#generate_backup ul.backup-status li.database-backup";jQuery(e).show(),jQuery(e).find(".collapsible-header").trigger("click"),jQuery(e).find(".total-records").text(0),jQuery(e).find(".total-records").attr("data-processed",0),jQuery(e).find(".table-counter").text(0),jQuery(e).find(".database-counter").text(0),jQuery(e).find(".logged-databases").html(""),jQuery(e).find(".logged-tables").html(""),this.last_dumpfile=0,jQuery(e).find(".progress .determinate").css("width","0%"),this.do_ajax(e,"backup_database",1)}else this.do_backup_files()}do_scan_filesystem_callback(e,t,i){if(i.total_files_num&&jQuery(".file-system .file-counter").text(parseInt(i.total_files_num)+parseInt(jQuery(".file-system .file-counter").text())),i.total_files_size){var n=parseFloat(i.total_files_size)+parseFloat(jQuery(".file-system .file-size-total").text());jQuery(".file-system .file-size-total").text(n.toFixed(2))}if(i.last_logged_file&&jQuery(".file-system .last-logged-file").text(i.last_logged_file),!i.finished)return this.do_ajax(e,t),!1;jQuery(e).find(".progress .indeterminate").removeClass("indeterminate").addClass("determinate").css("width","100%"),jQuery(".file-system .last-logged-file").text("done"),this.do_backup_database()}do_scan_filesystem(){var e="#generate_backup ul.backup-status li.file-system";jQuery(e).show(),jQuery(e+" .status-body").show(),jQuery(e).find(".collapsible-header").trigger("click"),jQuery(".file-system .file-counter").text(0),jQuery(".file-system .last-logged-file").text(""),jQuery(".file-system .file-size-total").text(0),jQuery(".file-system .progress div").removeClass("determinate").addClass("indeterminate").css("width","0%"),this.do_ajax(e,"scan_filesystem",1)}do_backup_files_callback(e,t,i){if(i.extra&&(this.params.extra=i.extra),i.extra&&(void 0!==i.extra.start_at_line&&jQuery(e).find(".file-counter").text(parseInt(i.extra.start_at_line)),void 0!==i.extra.start_at_line&&jQuery(e).find(".file-size-total").text(this.getSize(this.backup_size_total+parseInt(i.extra.backup_size)))),i.extra.processed_file){if(void 0!==i.extra.start_at_byte&&i.extra.start_at_byte)var n=i.extra.start_at_byte;else n=i.extra.processed_file_size;jQuery(e).find(".last-logged-file").text(i.extra.processed_file+" ("+this.getSize(n,1024)+" KB)")}if(void 0!==i.extra.processed_file){var s=i.extra.backup_archive_name_full+" ("+this.getSize(i.extra.backup_size)+") MB";this.backup_part!=i.extra.backup_part&&(this.backup_part=i.extra.backup_part,this.backup_size_total=this.backup_size_total+i.extra.backup_size),jQuery(this.last_backup_file).hasClass(i.extra.backup_archive_name)||(this.last_backup_file=jQuery("<li>").addClass(i.extra.backup_archive_name).html(s).prependTo(jQuery(e).find(".status-body .backup-name"))),jQuery(this.last_backup_file).html(s)}if(i.extra.lines_total){var o=100*parseInt(i.extra.start_at_line)/parseInt(i.extra.lines_total);jQuery(e).find(".progress .determinate").css("width",o+"%")}if(!i.finished)return this.do_ajax(e,t),!1;jQuery(e).find(".last-logged-file").text("done"),jQuery(".backup-done .cloud-upload").attr("href","#"+i.extra.backup_parent),jQuery(".backup-done .download").attr("href","#"+i.extra.backup_parent),jQuery(".backup-done .list-backup-content").attr("href","#"+i.extra.backup_parent),this.do_backup_encryption()||this.do_remote_storage_upload(i.extra.backup_parent)||this.do_backup_done(i.extra.backup_parent)}do_backup_files(){if(this.cancel)return!1;var e="#generate_backup ul.backup-status li.files-backup";jQuery(e).show(),jQuery(e+" .status-body").show(),jQuery(e).find(".collapsible-header").trigger("click"),jQuery(e).find(".file-size-total").text(0),jQuery(e).find(".file-size-total").attr("data-processed",0),jQuery(e).find(".file-counter").text(0),jQuery(e).find(".last-logged-file").text(""),jQuery(e).find(".progress .determinate").css("width","0%"),this.do_ajax(e,"backup_files",1)}do_backup_encryption_callback(e,t,i){if(i.extra&&(this.params.extra=i.extra),jQuery(".backup-encryption .last-logged-file").text("encrypting "+i.processing_file+" ..."),void 0!==i.total_size){jQuery(".backup-encryption .progress > div").removeClass("indeterminate").addClass("determinate");var n=parseInt(100*i.start)/parseInt(i.total_size);jQuery(".backup-encryption .progress .determinate").css("width",parseInt(n)+"%")}return i.error?(jQuery(".backup-encryption .status-body").show(),jQuery(".backup-encryption .status-body").addClass("error").prepend(i.message+" "),void jQuery(".backup-encryption .progress > div").addClass("determinate").removeClass("indeterminate").css("width","100%")):i.finished?(jQuery(e).find(".progress > div").css("width","100%"),jQuery(".backup-encryption .last-logged-file").text("done"),void(this.do_remote_storage_upload(i.processing_file)||this.do_backup_done(i.processing_file))):(this.do_ajax(e,t),!1)}do_backup_encryption(){if(this.cancel)return!1;if(!jQuery("#backup_options #backup_encrypt").is(":checked"))return!1;var e="#generate_backup ul.backup-status li.backup-encryption";return jQuery(e).show(),jQuery(e+" .status-body").show(),jQuery(e).find(".collapsible-header").trigger("click"),jQuery(e).find(".progress .determinate").removeClass("determinate").addClass("indeterminate"),this.do_ajax(e,"backup_encryption",1),!0}do_upload_backup_to_remote_callback(e,t,i){!i||i.error?(jQuery(e).find(".status").text(i.message),jQuery(e).find(".progress .indeterminate").removeClass("indeterminate").addClass("determinate").css("width","0%")):(jQuery(e).find(".status").text("done"),jQuery(e).find(".progress .indeterminate").removeClass("indeterminate").addClass("determinate").css("width","100%")),this.do_backup_done()}do_remote_storage_upload(e){if(this.cancel)return!1;var t=jQuery("#schedule_storage").val();if(!t)return!1;var i=Number(jQuery("#backup_delete_after_remote_transfer").is(":checked"));jQuery("#remote_storage_modal #transfer_storage").val(t);var n="#generate_backup ul.backup-status li.remote-storage-transfer";return jQuery(n).show(),jQuery(n+" .status-body").show(),jQuery(n).find(".collapsible-header").trigger("click"),jQuery(n).find(".progress .determinate").removeClass("determinate").addClass("indeterminate"),this.params.file=e,this.params.storage_type=t,this.params.delete_after_transfer=i,this.do_ajax(n,"upload_backup_to_remote",1),!0}do_backup_done(e){var t="#generate_backup ul.backup-status li.backup-done";jQuery(t).show(),jQuery(t+" .status-body").show(),jQuery(t).find(".collapsible-header").trigger("click"),this.set_cancel(!1),jQuery("#generate_backup .action-buttons a").hide(),jQuery("#generate_backup .action-buttons .start").css("display","inline-block")}do_save_schedule_callback(e,t,i){jQuery("#schedule_backup_success").show()}cancel_backup(){this.set_cancel(!0),jQuery("#generate_backup .action-buttons a").hide(),jQuery("#generate_backup .action-buttons .start").css("display","inline-block"),jQuery("#generate_backup .action-buttons .restart").css("display","inline-block")}restart_backup(){if(this.set_cancel(!1),jQuery("#generate_backup .action-buttons a").hide(),jQuery("#generate_backup .action-buttons .cancel").css("display","inline-block"),this.resume.action)return this.do_ajax(this.resume.elem,this.resume.action,this.resume.params),void(this.resume=new Object);this.start_backup()}start_backup(){this.resume=new Object,this.set_cancel(!1),jQuery("#generate_backup .action-buttons a").hide(),jQuery("#generate_backup .action-buttons .cancel").css("display","inline-block"),this.generate_hash=!0,this.backup_size_total=0,this.last_backup_file="",this.backup_part=0,jQuery("#generate_backup ul.backup-name li").remove(),jQuery("#generate_backup ul.backup-status > li").hide(),jQuery("#generate_backup .backup-status").show(),this.params=this.get_form_params(),this.do_scan_filesystem()}set_cancel(e){this.cancel=e}get_cancel(e){return this.cancel}init_resume(e,t,i){this.resume.elem=e,this.resume.action=t,this.resume.init=i}do_ajax(e,t,i=0){let n="";if(void 0!==this.params.hash?n=this.params.hash:this.generate_hash&&(n="generate_hash"),1!=this.cancel){var s="do_"+t+"_callback",o=JSON.stringify(this.params),a=this;jQuery.ajax({url:XCLONER_AJAXURL,dataType:"json",type:"POST",data:{action:t,data:o,init:i,hash:n,API_ID:ID()},error:function(n){show_ajax_error("Communication Error","",n),a.init_resume(e,t,i)}}).done((function(n){if(n.hash&&(a.params.hash=n.hash),void 0!==n.error)return show_ajax_error("Communication Error","",n.error_message),void a.init_resume(e,t,i);a.resume=new Object,a[s](e,t,n)}))}else this.init_resume(e,t,i)}getSize(e,t=1048576){return(e/t).toFixed(2)}}},function(e,t,i){i(5),i(0),i(3),i(1),i(2),i(7),i(8)},function(e,t,i){(function(i){var n,s=function e(t,i,n){null===t&&(t=Function.prototype);var s=Object.getOwnPropertyDescriptor(t,i);if(void 0===s){var o=Object.getPrototypeOf(t);return null===o?void 0:e(o,i,n)}if("value"in s)return s.value;var a=s.get;return void 0!==a?a.call(n):void 0},o=function(){function e(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,i,n){return i&&e(t.prototype,i),n&&e(t,n),t}}();function a(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function r(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}window.cash=function(){var e,t=document,i=window,n=Array.prototype,s=n.slice,o=n.filter,a=n.push,r=function(){},l=function(e){return typeof e==typeof r&&e.call},u=function(e){return"string"==typeof e},d=/^#[\w-]*$/,c=/^\.[\w-]*$/,h=/<.+>/,p=/^\w+$/;function v(e,i){return i=i||t,c.test(e)?i.getElementsByClassName(e.slice(1)):p.test(e)?i.getElementsByTagName(e):i.querySelectorAll(e)}function _(i){if(!e){var n=(e=t.implementation.createHTMLDocument(null)).createElement("base");n.href=t.location.href,e.head.appendChild(n)}return e.body.innerHTML=i,e.body.childNodes}function f(e){"loading"!==t.readyState?e():t.addEventListener("DOMContentLoaded",e)}function m(e,n){if(!e)return this;if(e.cash&&e!==i)return e;var s,o=e,a=0;if(u(e))o=d.test(e)?t.getElementById(e.slice(1)):h.test(e)?_(e):v(e,n);else if(l(e))return f(e),this;if(!o)return this;if(o.nodeType||o===i)this[0]=o,this.length=1;else for(s=this.length=o.length;a<s;a++)this[a]=o[a];return this}function y(e,t){return new m(e,t)}var g=y.fn=y.prototype=m.prototype={cash:!0,length:0,push:a,splice:n.splice,map:n.map,init:m};function b(e,t){for(var i=e.length,n=0;n<i&&!1!==t.call(e[n],e[n],n,e);n++);}function k(e,t){var i=e&&(e.matches||e.webkitMatchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector);return!!i&&i.call(e,t)}function w(e){return u(e)?k:e.cash?function(t){return e.is(t)}:function(e,t){return e===t}}function x(e){return y(s.call(e).filter((function(e,t,i){return i.indexOf(e)===t})))}Object.defineProperty(g,"constructor",{value:y}),y.parseHTML=_,y.noop=r,y.isFunction=l,y.isString=u,y.extend=g.extend=function(e){e=e||{};var t=s.call(arguments),i=t.length,n=1;for(1===t.length&&(e=this,n=0);n<i;n++)if(t[n])for(var o in t[n])t[n].hasOwnProperty(o)&&(e[o]=t[n][o]);return e},y.extend({merge:function(e,t){for(var i=+t.length,n=e.length,s=0;s<i;n++,s++)e[n]=t[s];return e.length=n,e},each:b,matches:k,unique:x,isArray:Array.isArray,isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)}});var C=y.uid="_cash"+Date.now();function E(e){return e[C]=e[C]||{}}function M(e,t,i){return E(e)[t]=i}function j(e,t){var i=E(e);return void 0===i[t]&&(i[t]=e.dataset?e.dataset[t]:y(e).attr("data-"+t)),i[t]}function O(e,t){var i=E(e);i?delete i[t]:e.dataset?delete e.dataset[t]:y(e).removeAttr("data-"+name)}g.extend({data:function(e,t){if(u(e))return void 0===t?j(this[0],e):this.each((function(i){return M(i,e,t)}));for(var i in e)this.data(i,e[i]);return this},removeData:function(e){return this.each((function(t){return O(t,e)}))}});var T=/\S+/g;function L(e){return u(e)&&e.match(T)}function D(e,t){return e.classList?e.classList.contains(t):new RegExp("(^| )"+t+"( |$)","gi").test(e.className)}function B(e,t,i){e.classList?e.classList.add(t):i.indexOf(" "+t+" ")&&(e.className+=" "+t)}function Q(e,t){e.classList?e.classList.remove(t):e.className=e.className.replace(t,"")}g.extend({addClass:function(e){var t=L(e);return t?this.each((function(e){var i=" "+e.className+" ";b(t,(function(t){B(e,t,i)}))})):this},attr:function(e,t){if(e){if(u(e))return void 0===t?this[0]?this[0].getAttribute?this[0].getAttribute(e):this[0][e]:void 0:this.each((function(i){i.setAttribute?i.setAttribute(e,t):i[e]=t}));for(var i in e)this.attr(i,e[i]);return this}},hasClass:function(e){var t=!1,i=L(e);return i&&i.length&&this.each((function(e){return!(t=D(e,i[0]))})),t},prop:function(e,t){if(u(e))return void 0===t?this[0][e]:this.each((function(i){i[e]=t}));for(var i in e)this.prop(i,e[i]);return this},removeAttr:function(e){return this.each((function(t){t.removeAttribute?t.removeAttribute(e):delete t[e]}))},removeClass:function(e){if(!arguments.length)return this.attr("class","");var t=L(e);return t?this.each((function(e){b(t,(function(t){Q(e,t)}))})):this},removeProp:function(e){return this.each((function(t){delete t[e]}))},toggleClass:function(e,t){if(void 0!==t)return this[t?"addClass":"removeClass"](e);var i=L(e);return i?this.each((function(e){var t=" "+e.className+" ";b(i,(function(i){D(e,i)?Q(e,i):B(e,i,t)}))})):this}}),g.extend({add:function(e,t){return x(y.merge(this,y(e,t)))},each:function(e){return b(this,e),this},eq:function(e){return y(this.get(e))},filter:function(e){if(!e)return this;var t=l(e)?e:w(e);return y(o.call(this,(function(i){return t(i,e)})))},first:function(){return this.eq(0)},get:function(e){return void 0===e?s.call(this):e<0?this[e+this.length]:this[e]},index:function(e){var t=e?y(e)[0]:this[0],i=e?this:y(t).parent().children();return s.call(i).indexOf(t)},last:function(){return this.eq(-1)}});var $,I,S,A,R=(S=/(?:^\w|[A-Z]|\b\w)/g,A=/[\s-_]+/g,function(e){return e.replace(S,(function(e,t){return e[0===t?"toLowerCase":"toUpperCase"]()})).replace(A,"")}),P=($={},I=document.createElement("div").style,function(e){if(e=R(e),$[e])return $[e];var t=e.charAt(0).toUpperCase()+e.slice(1);return b((e+" "+["webkit","moz","ms","o"].join(t+" ")+t).split(" "),(function(t){if(t in I)return $[t]=e=$[e]=t,!1})),$[e]});function H(e,t){return parseInt(i.getComputedStyle(e[0],null)[t],10)||0}function W(e,t,i){var n=j(e,"_cashEvents")||M(e,"_cashEvents",{});n[t]=n[t]||[],n[t].push(i),e.addEventListener(t,i)}function q(e,t,i){var n,s=j(e,"_cashEvents"),o=s&&s[t];o&&(i?(e.removeEventListener(t,i),(n=o.indexOf(i))>=0&&o.splice(n,1)):(b(o,(function(i){e.removeEventListener(t,i)})),o=[]))}function z(e,t){return"&"+encodeURIComponent(e)+"="+encodeURIComponent(t).replace(/%20/g,"+")}function F(e){var t=[];return b(e.options,(function(e){e.selected&&t.push(e.value)})),t.length?t:null}function N(e){var t=e.selectedIndex;return t>=0?e.options[t].value:null}function X(e){var t=e.type;if(!t)return null;switch(t.toLowerCase()){case"select-one":return N(e);case"select-multiple":return F(e);case"radio":case"checkbox":return e.checked?e.value:null;default:return e.value?e.value:null}}function V(e,t,i){if(i){var n=e.childNodes[0];e.insertBefore(t,n)}else e.appendChild(t)}function Y(e,t,i){var n=u(t);n||!t.length?b(e,n?function(e){return e.insertAdjacentHTML(i?"afterbegin":"beforeend",t)}:function(e,n){return V(e,0===n?t:t.cloneNode(!0),i)}):b(t,(function(t){return Y(e,t,i)}))}y.prefixedProp=P,y.camelCase=R,g.extend({css:function(e,t){if(u(e))return e=P(e),arguments.length>1?this.each((function(i){return i.style[e]=t})):i.getComputedStyle(this[0])[e];for(var n in e)this.css(n,e[n]);return this}}),b(["Width","Height"],(function(e){var t=e.toLowerCase();g[t]=function(){return this[0].getBoundingClientRect()[t]},g["inner"+e]=function(){return this[0]["client"+e]},g["outer"+e]=function(t){return this[0]["offset"+e]+(t?H(this,"margin"+("Width"===e?"Left":"Top"))+H(this,"margin"+("Width"===e?"Right":"Bottom")):0)}})),g.extend({off:function(e,t){return this.each((function(i){return q(i,e,t)}))},on:function(e,t,i,n){var s;if(!u(e)){for(var o in e)this.on(o,t,e[o]);return this}return l(t)&&(i=t,t=null),"ready"===e?(f(i),this):(t&&(s=i,i=function(e){for(var i=e.target;!k(i,t);){if(i===this||null===i)return!1;i=i.parentNode}i&&s.call(i,e)}),this.each((function(t){var s=i;n&&(s=function(){i.apply(this,arguments),q(t,e,s)}),W(t,e,s)})))},one:function(e,t,i){return this.on(e,t,i,!0)},ready:f,trigger:function(e,t){if(document.createEvent){var i=document.createEvent("HTMLEvents");return i.initEvent(e,!0,!1),i=this.extend(i,t),this.each((function(e){return e.dispatchEvent(i)}))}}}),g.extend({serialize:function(){var e="";return b(this[0].elements||this,(function(t){if(!t.disabled&&"FIELDSET"!==t.tagName){var i=t.name;switch(t.type.toLowerCase()){case"file":case"reset":case"submit":case"button":break;case"select-multiple":var n=X(t);null!==n&&b(n,(function(t){e+=z(i,t)}));break;default:var s=X(t);null!==s&&(e+=z(i,s))}}})),e.substr(1)},val:function(e){return void 0===e?X(this[0]):this.each((function(t){return t.value=e}))}}),g.extend({after:function(e){return y(e).insertAfter(this),this},append:function(e){return Y(this,e),this},appendTo:function(e){return Y(y(e),this),this},before:function(e){return y(e).insertBefore(this),this},clone:function(){return y(this.map((function(e){return e.cloneNode(!0)})))},empty:function(){return this.html(""),this},html:function(e){if(void 0===e)return this[0].innerHTML;var t=e.nodeType?e[0].outerHTML:e;return this.each((function(e){return e.innerHTML=t}))},insertAfter:function(e){var t=this;return y(e).each((function(e,i){var n=e.parentNode,s=e.nextSibling;t.each((function(e){n.insertBefore(0===i?e:e.cloneNode(!0),s)}))})),this},insertBefore:function(e){var t=this;return y(e).each((function(e,i){var n=e.parentNode;t.each((function(t){n.insertBefore(0===i?t:t.cloneNode(!0),e)}))})),this},prepend:function(e){return Y(this,e,!0),this},prependTo:function(e){return Y(y(e),this,!0),this},remove:function(){return this.each((function(e){if(e.parentNode)return e.parentNode.removeChild(e)}))},text:function(e){return void 0===e?this[0].textContent:this.each((function(t){return t.textContent=e}))}});var K=t.documentElement;return g.extend({position:function(){var e=this[0];return{left:e.offsetLeft,top:e.offsetTop}},offset:function(){var e=this[0].getBoundingClientRect();return{top:e.top+i.pageYOffset-K.clientTop,left:e.left+i.pageXOffset-K.clientLeft}},offsetParent:function(){return y(this[0].offsetParent)}}),g.extend({children:function(e){var t=[];return this.each((function(e){a.apply(t,e.children)})),t=x(t),e?t.filter((function(t){return k(t,e)})):t},closest:function(e){return!e||this.length<1?y():this.is(e)?this.filter(e):this.parent().closest(e)},is:function(e){if(!e)return!1;var t=!1,i=w(e);return this.each((function(n){return!(t=i(n,e))})),t},find:function(e){if(!e||e.nodeType)return y(e&&this.has(e).length?e:null);var t=[];return this.each((function(i){a.apply(t,v(e,i))})),x(t)},has:function(e){var t=u(e)?function(t){return 0!==v(e,t).length}:function(t){return t.contains(e)};return this.filter(t)},next:function(){return y(this[0].nextElementSibling)},not:function(e){if(!e)return this;var t=w(e);return this.filter((function(i){return!t(i,e)}))},parent:function(){var e=[];return this.each((function(t){t&&t.parentNode&&e.push(t.parentNode)})),x(e)},parents:function(e){var i,n=[];return this.each((function(s){for(i=s;i&&i.parentNode&&i!==t.body.parentNode;)i=i.parentNode,(!e||e&&k(i,e))&&n.push(i)})),x(n)},prev:function(){return y(this[0].previousElementSibling)},siblings:function(e){var t=this.parent().children(e),i=this[0];return t.filter((function(e){return e!==i}))}}),y}();var u=function(){function e(t,i,n){l(this,e),i instanceof Element||console.error(Error(i+" is not an HTML Element"));var s=t.getInstance(i);s&&s.destroy(),this.el=i,this.$el=cash(i)}return o(e,null,[{key:"init",value:function(e,t,i){var n=null;if(t instanceof Element)n=new e(t,i);else if(t&&(t.jquery||t.cash||t instanceof NodeList)){for(var s=[],o=0;o<t.length;o++)s.push(new e(t[o],i));n=s}return n}}]),e}();!function(e){e.Package?M={}:e.M={},M.jQueryLoaded=!!e.jQuery}(window),void 0===(n=function(){return M}.apply(t,[]))||(e.exports=n),M.version="1.0.0",M.keys={TAB:9,ENTER:13,ESC:27,ARROW_UP:38,ARROW_DOWN:40},M.tabPressed=!1,M.keyDown=!1;document.addEventListener("keydown",(function(e){M.keyDown=!0,e.which!==M.keys.TAB&&e.which!==M.keys.ARROW_DOWN&&e.which!==M.keys.ARROW_UP||(M.tabPressed=!0)}),!0),document.addEventListener("keyup",(function(e){M.keyDown=!1,e.which!==M.keys.TAB&&e.which!==M.keys.ARROW_DOWN&&e.which!==M.keys.ARROW_UP||(M.tabPressed=!1)}),!0),document.addEventListener("focus",(function(e){M.keyDown&&document.body.classList.add("keyboard-focused")}),!0),document.addEventListener("blur",(function(e){document.body.classList.remove("keyboard-focused")}),!0),M.initializeJqueryWrapper=function(e,t,i){jQuery.fn[t]=function(n){if(e.prototype[n]){var s=Array.prototype.slice.call(arguments,1);if("get"===n.slice(0,3)){var o=this.first()[0][i];return o[n].apply(o,s)}return this.each((function(){var e=this[i];e[n].apply(e,s)}))}if("object"==typeof n||!n)return e.init(this,arguments[0]),this;jQuery.error("Method "+n+" does not exist on jQuery."+t)}},M.AutoInit=function(e){var t=e||document.body,i={Autocomplete:t.querySelectorAll(".autocomplete:not(.no-autoinit)"),Carousel:t.querySelectorAll(".carousel:not(.no-autoinit)"),Chips:t.querySelectorAll(".chips:not(.no-autoinit)"),Collapsible:t.querySelectorAll(".collapsible:not(.no-autoinit)"),Datepicker:t.querySelectorAll(".datepicker:not(.no-autoinit)"),Dropdown:t.querySelectorAll(".dropdown-trigger:not(.no-autoinit)"),Materialbox:t.querySelectorAll(".materialboxed:not(.no-autoinit)"),Modal:t.querySelectorAll(".modal:not(.no-autoinit)"),Parallax:t.querySelectorAll(".parallax:not(.no-autoinit)"),Pushpin:t.querySelectorAll(".pushpin:not(.no-autoinit)"),ScrollSpy:t.querySelectorAll(".scrollspy:not(.no-autoinit)"),FormSelect:t.querySelectorAll("select:not(.no-autoinit)"),Sidenav:t.querySelectorAll(".sidenav:not(.no-autoinit)"),Tabs:t.querySelectorAll(".tabs:not(.no-autoinit)"),TapTarget:t.querySelectorAll(".tap-target:not(.no-autoinit)"),Timepicker:t.querySelectorAll(".timepicker:not(.no-autoinit)"),Tooltip:t.querySelectorAll(".tooltipped:not(.no-autoinit)"),FloatingActionButton:t.querySelectorAll(".fixed-action-btn:not(.no-autoinit)")};for(var n in i){M[n].init(i[n])}},M.objectSelectorString=function(e){return((e.prop("tagName")||"")+(e.attr("id")||"")+(e.attr("class")||"")).replace(/\s/g,"")},M.guid=function(){function e(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return function(){return e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e()}}(),M.escapeHash=function(e){return e.replace(/(:|\.|\[|\]|,|=|\/)/g,"\\$1")},M.elementOrParentIsFixed=function(e){var t=$(e),i=t.add(t.parents()),n=!1;return i.each((function(){if("fixed"===$(this).css("position"))return n=!0,!1})),n},M.checkWithinContainer=function(e,t,i){var n={top:!1,right:!1,bottom:!1,left:!1},s=e.getBoundingClientRect(),o=e===document.body?Math.max(s.bottom,window.innerHeight):s.bottom,a=e.scrollLeft,r=e.scrollTop,l=t.left-a,u=t.top-r;return(l<s.left+i||l<i)&&(n.left=!0),(l+t.width>s.right-i||l+t.width>window.innerWidth-i)&&(n.right=!0),(u<s.top+i||u<i)&&(n.top=!0),(u+t.height>o-i||u+t.height>window.innerHeight-i)&&(n.bottom=!0),n},M.checkPossibleAlignments=function(e,t,i,n){var s={top:!0,right:!0,bottom:!0,left:!0,spaceOnTop:null,spaceOnRight:null,spaceOnBottom:null,spaceOnLeft:null},o="visible"===getComputedStyle(t).overflow,a=t.getBoundingClientRect(),r=Math.min(a.height,window.innerHeight),l=Math.min(a.width,window.innerWidth),u=e.getBoundingClientRect(),d=t.scrollLeft,c=t.scrollTop,h=i.left-d,p=i.top-c,v=i.top+u.height-c;return s.spaceOnRight=o?window.innerWidth-(u.left+i.width):l-(h+i.width),s.spaceOnRight<0&&(s.left=!1),s.spaceOnLeft=o?u.right-i.width:h-i.width+u.width,s.spaceOnLeft<0&&(s.right=!1),s.spaceOnBottom=o?window.innerHeight-(u.top+i.height+n):r-(p+i.height+n),s.spaceOnBottom<0&&(s.top=!1),s.spaceOnTop=o?u.bottom-(i.height+n):v-(i.height-n),s.spaceOnTop<0&&(s.bottom=!1),s},M.getOverflowParent=function(e){return null==e?null:e===document.body||"visible"!==getComputedStyle(e).overflow?e:M.getOverflowParent(e.parentElement)},M.getIdFromTrigger=function(e){var t=e.getAttribute("data-target");return t||(t=(t=e.getAttribute("href"))?t.slice(1):""),t},M.getDocumentScrollTop=function(){return window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},M.getDocumentScrollLeft=function(){return window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0};var d=Date.now||function(){return(new Date).getTime()};M.throttle=function(e,t,i){var n=void 0,s=void 0,o=void 0,a=null,r=0;i||(i={});var l=function(){r=!1===i.leading?0:d(),a=null,o=e.apply(n,s),n=s=null};return function(){var u=d();r||!1!==i.leading||(r=u);var c=t-(u-r);return n=this,s=arguments,c<=0?(clearTimeout(a),a=null,r=u,o=e.apply(n,s),n=s=null):a||!1===i.trailing||(a=setTimeout(l,c)),o}};var c={scope:{}};c.defineProperty="function"==typeof Object.defineProperties?Object.defineProperty:function(e,t,i){if(i.get||i.set)throw new TypeError("ES3 does not support getters and setters.");e!=Array.prototype&&e!=Object.prototype&&(e[t]=i.value)},c.getGlobal=function(e){return"undefined"!=typeof window&&window===e?e:void 0!==i&&null!=i?i:e},c.global=c.getGlobal(this),c.SYMBOL_PREFIX="jscomp_symbol_",c.initSymbol=function(){c.initSymbol=function(){},c.global.Symbol||(c.global.Symbol=c.Symbol)},c.symbolCounter_=0,c.Symbol=function(e){return c.SYMBOL_PREFIX+(e||"")+c.symbolCounter_++},c.initSymbolIterator=function(){c.initSymbol();var e=c.global.Symbol.iterator;e||(e=c.global.Symbol.iterator=c.global.Symbol("iterator")),"function"!=typeof Array.prototype[e]&&c.defineProperty(Array.prototype,e,{configurable:!0,writable:!0,value:function(){return c.arrayIterator(this)}}),c.initSymbolIterator=function(){}},c.arrayIterator=function(e){var t=0;return c.iteratorPrototype((function(){return t<e.length?{done:!1,value:e[t++]}:{done:!0}}))},c.iteratorPrototype=function(e){return c.initSymbolIterator(),(e={next:e})[c.global.Symbol.iterator]=function(){return this},e},c.array=c.array||{},c.iteratorFromArray=function(e,t){c.initSymbolIterator(),e instanceof String&&(e+="");var i=0,n={next:function(){if(i<e.length){var s=i++;return{value:t(s,e[s]),done:!1}}return n.next=function(){return{done:!0,value:void 0}},n.next()}};return n[Symbol.iterator]=function(){return n},n},c.polyfill=function(e,t,i,n){if(t){for(i=c.global,e=e.split("."),n=0;n<e.length-1;n++){var s=e[n];s in i||(i[s]={}),i=i[s]}(t=t(n=i[e=e[e.length-1]]))!=n&&null!=t&&c.defineProperty(i,e,{configurable:!0,writable:!0,value:t})}},c.polyfill("Array.prototype.keys",(function(e){return e||function(){return c.iteratorFromArray(this,(function(e){return e}))}}),"es6-impl","es3");var h=this;M.anime=function(){function e(e){if(!R.col(e))try{return document.querySelectorAll(e)}catch(e){}}function t(e,t){for(var i=e.length,n=2<=arguments.length?arguments[1]:void 0,s=[],o=0;o<i;o++)if(o in e){var a=e[o];t.call(n,a,o,e)&&s.push(a)}return s}function i(e){return e.reduce((function(e,t){return e.concat(R.arr(t)?i(t):t)}),[])}function n(t){return R.arr(t)?t:(R.str(t)&&(t=e(t)||t),t instanceof NodeList||t instanceof HTMLCollection?[].slice.call(t):[t])}function s(e,t){return e.some((function(e){return e===t}))}function o(e){var t,i={};for(t in e)i[t]=e[t];return i}function a(e,t){var i,n=o(e);for(i in e)n[i]=t.hasOwnProperty(i)?t[i]:e[i];return n}function r(e,t){var i,n=o(e);for(i in t)n[i]=R.und(e[i])?t[i]:e[i];return n}function l(e){e=e.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,(function(e,t,i,n){return t+t+i+i+n+n}));var t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return"rgba("+(e=parseInt(t[1],16))+","+parseInt(t[2],16)+","+(t=parseInt(t[3],16))+",1)"}function u(e){function t(e,t,i){return 0>i&&(i+=1),1<i&&--i,i<1/6?e+6*(t-e)*i:.5>i?t:i<2/3?e+(t-e)*(2/3-i)*6:e}var i=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e)||/hsla\((\d+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)/g.exec(e);e=parseInt(i[1])/360;var n=parseInt(i[2])/100,s=parseInt(i[3])/100;if(i=i[4]||1,0==n)s=n=e=s;else{var o=.5>s?s*(1+n):s+n-s*n,a=2*s-o;s=t(a,o,e+1/3),n=t(a,o,e),e=t(a,o,e-1/3)}return"rgba("+255*s+","+255*n+","+255*e+","+i+")"}function d(e){if(e=/([\+\-]?[0-9#\.]+)(%|px|pt|em|rem|in|cm|mm|ex|ch|pc|vw|vh|vmin|vmax|deg|rad|turn)?$/.exec(e))return e[2]}function c(e){return-1<e.indexOf("translate")||"perspective"===e?"px":-1<e.indexOf("rotate")||-1<e.indexOf("skew")?"deg":void 0}function p(e,t){return R.fnc(e)?e(t.target,t.id,t.total):e}function v(e,t){if(t in e.style)return getComputedStyle(e).getPropertyValue(t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase())||"0"}function _(e,t){return R.dom(e)&&s(A,t)?"transform":R.dom(e)&&(e.getAttribute(t)||R.svg(e)&&e[t])?"attribute":R.dom(e)&&"transform"!==t&&v(e,t)?"css":null!=e[t]?"object":void 0}function f(e,i){var n=c(i);if(n=-1<i.indexOf("scale")?1:0+n,!(e=e.style.transform))return n;for(var s=[],o=[],a=[],r=/(\w+)\((.+?)\)/g;s=r.exec(e);)o.push(s[1]),a.push(s[2]);return e=t(a,(function(e,t){return o[t]===i})),e.length?e[0]:n}function m(e,t){switch(_(e,t)){case"transform":return f(e,t);case"css":return v(e,t);case"attribute":return e.getAttribute(t)}return e[t]||0}function y(e,t){var i=/^(\*=|\+=|-=)/.exec(e);if(!i)return e;var n=d(e)||0;switch(t=parseFloat(t),e=parseFloat(e.replace(i[0],"")),i[0][0]){case"+":return t+e+n;case"-":return t-e+n;case"*":return t*e+n}}function g(e,t){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function b(e){e=e.points;for(var t,i=0,n=0;n<e.numberOfItems;n++){var s=e.getItem(n);0<n&&(i+=g(t,s)),t=s}return i}function k(e){if(e.getTotalLength)return e.getTotalLength();switch(e.tagName.toLowerCase()){case"circle":return 2*Math.PI*e.getAttribute("r");case"rect":return 2*e.getAttribute("width")+2*e.getAttribute("height");case"line":return g({x:e.getAttribute("x1"),y:e.getAttribute("y1")},{x:e.getAttribute("x2"),y:e.getAttribute("y2")});case"polyline":return b(e);case"polygon":var t=e.points;return b(e)+g(t.getItem(t.numberOfItems-1),t.getItem(0))}}function w(e,t){function i(i){return i=void 0===i?0:i,e.el.getPointAtLength(1<=t+i?t+i:0)}var n=i(),s=i(-1),o=i(1);switch(e.property){case"x":return n.x;case"y":return n.y;case"angle":return 180*Math.atan2(o.y-s.y,o.x-s.x)/Math.PI}}function x(e,t){var i,n=/-?\d*\.?\d+/g;if(i=R.pth(e)?e.totalLength:e,R.col(i))if(R.rgb(i)){var s=/rgb\((\d+,\s*[\d]+,\s*[\d]+)\)/g.exec(i);i=s?"rgba("+s[1]+",1)":i}else i=R.hex(i)?l(i):R.hsl(i)?u(i):void 0;else s=(s=d(i))?i.substr(0,i.length-s.length):i,i=t&&!/\s/g.test(i)?s+t:s;return{original:i+="",numbers:i.match(n)?i.match(n).map(Number):[0],strings:R.str(e)||t?i.split(n):[]}}function C(e){return t(e=e?i(R.arr(e)?e.map(n):n(e)):[],(function(e,t,i){return i.indexOf(e)===t}))}function E(e){var t=C(e);return t.map((function(e,i){return{target:e,id:i,total:t.length}}))}function M(e,t){var i=o(t);if(R.arr(e)){var s=e.length;2!==s||R.obj(e[0])?R.fnc(t.duration)||(i.duration=t.duration/s):e={value:e}}return n(e).map((function(e,i){return i=i?0:t.delay,e=R.obj(e)&&!R.pth(e)?e:{value:e},R.und(e.delay)&&(e.delay=i),e})).map((function(e){return r(e,i)}))}function j(e,t){var i,n={};for(i in e){var s=p(e[i],t);R.arr(s)&&(s=s.map((function(e){return p(e,t)})),1===s.length&&(s=s[0])),n[i]=s}return n.duration=parseFloat(n.duration),n.delay=parseFloat(n.delay),n}function O(e){return R.arr(e)?P.apply(this,e):H[e]}function T(e,t){var i;return e.tweens.map((function(n){var s=(n=j(n,t)).value,o=m(t.target,e.name),a=i?i.to.original:o,r=(a=R.arr(s)?s[0]:a,y(R.arr(s)?s[1]:s,a));return o=d(r)||d(a)||d(o),n.from=x(a,o),n.to=x(r,o),n.start=i?i.end:e.offset,n.end=n.start+n.delay+n.duration,n.easing=O(n.easing),n.elasticity=(1e3-Math.min(Math.max(n.elasticity,1),999))/1e3,n.isPath=R.pth(s),n.isColor=R.col(n.from.original),n.isColor&&(n.round=1),i=n}))}function L(e,n){return t(i(e.map((function(e){return n.map((function(t){var i=_(e.target,t.name);if(i){var n=T(t,e);t={type:i,property:t.name,animatable:e,tweens:n,duration:n[n.length-1].end,delay:n[0].delay}}else t=void 0;return t}))}))),(function(e){return!R.und(e)}))}function D(e,t,i,n){var s="delay"===e;return t.length?(s?Math.min:Math.max).apply(Math,t.map((function(t){return t[e]}))):s?n.delay:i.offset+n.delay+n.duration}function B(e){var t,i=a(I,e),n=a(S,e),s=E(e.targets),o=[],l=r(i,n);for(t in e)l.hasOwnProperty(t)||"targets"===t||o.push({name:t,offset:l.offset,tweens:M(e[t],n)});return r(i,{children:[],animatables:s,animations:e=L(s,o),duration:D("duration",e,i,n),delay:D("delay",e,i,n)})}function Q(e){function i(){return window.Promise&&new Promise((function(e){return c=e}))}function n(e){return p.reversed?p.duration-e:e}function s(e){for(var i=0,n={},s=p.animations,o=s.length;i<o;){var a=s[i],r=a.animatable,l=(u=a.tweens)[h=u.length-1];h&&(l=t(u,(function(t){return e<t.end}))[0]||l);for(var u=Math.min(Math.max(e-l.start-l.delay,0),l.duration)/l.duration,d=isNaN(u)?1:l.easing(u,l.elasticity),c=(u=l.to.strings,l.round),h=[],_=void 0,f=(_=l.to.numbers.length,0);f<_;f++){var m=void 0,y=(m=l.to.numbers[f],l.from.numbers[f]);m=l.isPath?w(l.value,d*m):y+d*(m-y),c&&(l.isColor&&2<f||(m=Math.round(m*c)/c)),h.push(m)}if(l=u.length)for(_=u[0],d=0;d<l;d++)c=u[d+1],f=h[d],isNaN(f)||(_=c?_+(f+c):_+(f+" "));else _=h[0];W[a.type](r.target,a.property,_,n,r.id),a.currentValue=_,i++}if(i=Object.keys(n).length)for(s=0;s<i;s++)$||($=v(document.body,"transform")?"transform":"-webkit-transform"),p.animatables[s].target.style[$]=n[s].join(" ");p.currentTime=e,p.progress=e/p.duration*100}function o(e){p[e]&&p[e](p)}function a(){p.remaining&&!0!==p.remaining&&p.remaining--}function r(e){var t=p.duration,r=p.offset,v=r+p.delay,_=p.currentTime,f=p.reversed,m=n(e);if(p.children.length){var y=p.children,g=y.length;if(m>=p.currentTime)for(var b=0;b<g;b++)y[b].seek(m);else for(;g--;)y[g].seek(m)}(m>=v||!t)&&(p.began||(p.began=!0,o("begin")),o("run")),m>r&&m<t?s(m):(m<=r&&0!==_&&(s(0),f&&a()),(m>=t&&_!==t||!t)&&(s(t),f||a())),o("update"),e>=t&&(p.remaining?(u=l,"alternate"===p.direction&&(p.reversed=!p.reversed)):(p.pause(),p.completed||(p.completed=!0,o("complete"),"Promise"in window&&(c(),h=i()))),d=0)}e=void 0===e?{}:e;var l,u,d=0,c=null,h=i(),p=B(e);return p.reset=function(){var e=p.direction,t=p.loop;for(p.currentTime=0,p.progress=0,p.paused=!0,p.began=!1,p.completed=!1,p.reversed="reverse"===e,p.remaining="alternate"===e&&1===t?2:t,s(0),e=p.children.length;e--;)p.children[e].reset()},p.tick=function(e){l=e,u||(u=l),r((d+l-u)*Q.speed)},p.seek=function(e){r(n(e))},p.pause=function(){var e=q.indexOf(p);-1<e&&q.splice(e,1),p.paused=!0},p.play=function(){p.paused&&(p.paused=!1,u=0,d=n(p.currentTime),q.push(p),z||F())},p.reverse=function(){p.reversed=!p.reversed,u=0,d=n(p.currentTime)},p.restart=function(){p.pause(),p.reset(),p.play()},p.finished=h,p.reset(),p.autoplay&&p.play(),p}var $,I={update:void 0,begin:void 0,run:void 0,complete:void 0,loop:1,direction:"normal",autoplay:!0,offset:0},S={duration:1e3,delay:0,easing:"easeOutElastic",elasticity:500,round:0},A="translateX translateY translateZ rotate rotateX rotateY rotateZ scale scaleX scaleY scaleZ skewX skewY perspective".split(" "),R={arr:function(e){return Array.isArray(e)},obj:function(e){return-1<Object.prototype.toString.call(e).indexOf("Object")},pth:function(e){return R.obj(e)&&e.hasOwnProperty("totalLength")},svg:function(e){return e instanceof SVGElement},dom:function(e){return e.nodeType||R.svg(e)},str:function(e){return"string"==typeof e},fnc:function(e){return"function"==typeof e},und:function(e){return void 0===e},hex:function(e){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(e)},rgb:function(e){return/^rgb/.test(e)},hsl:function(e){return/^hsl/.test(e)},col:function(e){return R.hex(e)||R.rgb(e)||R.hsl(e)}},P=function(){function e(e,t,i){return(((1-3*i+3*t)*e+(3*i-6*t))*e+3*t)*e}return function(t,i,n,s){if(0<=t&&1>=t&&0<=n&&1>=n){var o=new Float32Array(11);if(t!==i||n!==s)for(var a=0;11>a;++a)o[a]=e(.1*a,t,n);return function(a){if(t===i&&n===s)return a;if(0===a)return 0;if(1===a)return 1;for(var r=0,l=1;10!==l&&o[l]<=a;++l)r+=.1;--l,l=r+(a-o[l])/(o[l+1]-o[l])*.1;var u=3*(1-3*n+3*t)*l*l+2*(3*n-6*t)*l+3*t;if(.001<=u){for(r=0;4>r&&0!=(u=3*(1-3*n+3*t)*l*l+2*(3*n-6*t)*l+3*t);++r){var d=e(l,t,n)-a;l-=d/u}a=l}else if(0===u)a=l;else{l=r,r+=.1;var c=0;do{0<(u=e(d=l+(r-l)/2,t,n)-a)?r=d:l=d}while(1e-7<Math.abs(u)&&10>++c);a=d}return e(a,i,s)}}}}(),H=function(){function e(e,t){return 0===e||1===e?e:-Math.pow(2,10*(e-1))*Math.sin(2*(e-1-t/(2*Math.PI)*Math.asin(1))*Math.PI/t)}var t,i="Quad Cubic Quart Quint Sine Expo Circ Back Elastic".split(" "),n={In:[[.55,.085,.68,.53],[.55,.055,.675,.19],[.895,.03,.685,.22],[.755,.05,.855,.06],[.47,0,.745,.715],[.95,.05,.795,.035],[.6,.04,.98,.335],[.6,-.28,.735,.045],e],Out:[[.25,.46,.45,.94],[.215,.61,.355,1],[.165,.84,.44,1],[.23,1,.32,1],[.39,.575,.565,1],[.19,1,.22,1],[.075,.82,.165,1],[.175,.885,.32,1.275],function(t,i){return 1-e(1-t,i)}],InOut:[[.455,.03,.515,.955],[.645,.045,.355,1],[.77,0,.175,1],[.86,0,.07,1],[.445,.05,.55,.95],[1,0,0,1],[.785,.135,.15,.86],[.68,-.55,.265,1.55],function(t,i){return.5>t?e(2*t,i)/2:1-e(-2*t+2,i)/2}]},s={linear:P(.25,.25,.75,.75)},o={};for(t in n)o.type=t,n[o.type].forEach(function(e){return function(t,n){s["ease"+e.type+i[n]]=R.fnc(t)?t:P.apply(h,t)}}(o)),o={type:o.type};return s}(),W={css:function(e,t,i){return e.style[t]=i},attribute:function(e,t,i){return e.setAttribute(t,i)},object:function(e,t,i){return e[t]=i},transform:function(e,t,i,n,s){n[s]||(n[s]=[]),n[s].push(t+"("+i+")")}},q=[],z=0,F=function(){function e(){z=requestAnimationFrame(t)}function t(t){var i=q.length;if(i){for(var n=0;n<i;)q[n]&&q[n].tick(t),n++;e()}else cancelAnimationFrame(z),z=0}return e}();return Q.version="2.2.0",Q.speed=1,Q.running=q,Q.remove=function(e){e=C(e);for(var t=q.length;t--;)for(var i=q[t],n=i.animations,o=n.length;o--;)s(e,n[o].animatable.target)&&(n.splice(o,1),n.length||i.pause())},Q.getValue=m,Q.path=function(t,i){var n=R.str(t)?e(t)[0]:t,s=i||100;return function(e){return{el:n,property:e,totalLength:k(n)*(s/100)}}},Q.setDashoffset=function(e){var t=k(e);return e.setAttribute("stroke-dasharray",t),t},Q.bezier=P,Q.easings=H,Q.timeline=function(e){var t=Q(e);return t.pause(),t.duration=0,t.add=function(i){return t.children.forEach((function(e){e.began=!0,e.completed=!0})),n(i).forEach((function(i){var n=r(i,a(S,e||{}));n.targets=n.targets||e.targets,i=t.duration;var s=n.offset;n.autoplay=!1,n.direction=t.direction,n.offset=R.und(s)?i:y(s,i),t.began=!0,t.completed=!0,t.seek(n.offset),(n=Q(n)).began=!0,n.completed=!0,n.duration>i&&(t.duration=n.duration),t.children.push(n)})),t.seek(0),t.reset(),t.autoplay&&t.restart(),t},t},Q.random=function(e,t){return Math.floor(Math.random()*(t-e+1))+e},Q}(),function(e,t){"use strict";var i={accordion:!0,onOpenStart:void 0,onOpenEnd:void 0,onCloseStart:void 0,onCloseEnd:void 0,inDuration:300,outDuration:300},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));n.el.M_Collapsible=n,n.options=e.extend({},u.defaults,i),n.$headers=n.$el.children("li").children(".collapsible-header"),n.$headers.attr("tabindex",0),n._setupEventHandlers();var s=n.$el.children("li.active").children(".collapsible-body");return n.options.accordion?s.first().css("display","block"):s.css("display","block"),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.M_Collapsible=void 0}},{key:"_setupEventHandlers",value:function(){var e=this;this._handleCollapsibleClickBound=this._handleCollapsibleClick.bind(this),this._handleCollapsibleKeydownBound=this._handleCollapsibleKeydown.bind(this),this.el.addEventListener("click",this._handleCollapsibleClickBound),this.$headers.each((function(t){t.addEventListener("keydown",e._handleCollapsibleKeydownBound)}))}},{key:"_removeEventHandlers",value:function(){var e=this;this.el.removeEventListener("click",this._handleCollapsibleClickBound),this.$headers.each((function(t){t.removeEventListener("keydown",e._handleCollapsibleKeydownBound)}))}},{key:"_handleCollapsibleClick",value:function(t){var i=e(t.target).closest(".collapsible-header");if(t.target&&i.length){var n=i.closest(".collapsible");if(n[0]===this.el){var s=i.closest("li"),o=n.children("li"),a=s[0].classList.contains("active"),r=o.index(s);a?this.close(r):this.open(r)}}}},{key:"_handleCollapsibleKeydown",value:function(e){13===e.keyCode&&this._handleCollapsibleClickBound(e)}},{key:"_animateIn",value:function(e){var i=this,n=this.$el.children("li").eq(e);if(n.length){var s=n.children(".collapsible-body");t.remove(s[0]),s.css({display:"block",overflow:"hidden",height:0,paddingTop:"",paddingBottom:""});var o=s.css("padding-top"),a=s.css("padding-bottom"),r=s[0].scrollHeight;s.css({paddingTop:0,paddingBottom:0}),t({targets:s[0],height:r,paddingTop:o,paddingBottom:a,duration:this.options.inDuration,easing:"easeInOutCubic",complete:function(e){s.css({overflow:"",paddingTop:"",paddingBottom:"",height:""}),"function"==typeof i.options.onOpenEnd&&i.options.onOpenEnd.call(i,n[0])}})}}},{key:"_animateOut",value:function(e){var i=this,n=this.$el.children("li").eq(e);if(n.length){var s=n.children(".collapsible-body");t.remove(s[0]),s.css("overflow","hidden"),t({targets:s[0],height:0,paddingTop:0,paddingBottom:0,duration:this.options.outDuration,easing:"easeInOutCubic",complete:function(){s.css({height:"",overflow:"",padding:"",display:""}),"function"==typeof i.options.onCloseEnd&&i.options.onCloseEnd.call(i,n[0])}})}}},{key:"open",value:function(t){var i=this,n=this.$el.children("li").eq(t);if(n.length&&!n[0].classList.contains("active")){if("function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,n[0]),this.options.accordion){var s=this.$el.children("li");this.$el.children("li.active").each((function(t){var n=s.index(e(t));i.close(n)}))}n[0].classList.add("active"),this._animateIn(t)}}},{key:"close",value:function(e){var t=this.$el.children("li").eq(e);t.length&&t[0].classList.contains("active")&&("function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,t[0]),t[0].classList.remove("active"),this._animateOut(e))}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Collapsible}},{key:"defaults",get:function(){return i}}]),u}(u);M.Collapsible=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"collapsible","M_Collapsible")}(cash,M.anime),function(e,t){"use strict";var i={alignment:"left",autoFocus:!0,constrainWidth:!0,container:null,coverTrigger:!0,closeOnClick:!0,hover:!1,inDuration:150,outDuration:250,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null,onItemClick:null},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Dropdown=n,u._dropdowns.push(n),n.id=M.getIdFromTrigger(t),n.dropdownEl=document.getElementById(n.id),n.$dropdownEl=e(n.dropdownEl),n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.isScrollable=!1,n.isTouchMoving=!1,n.focusedIndex=-1,n.filterQuery=[],n.options.container?e(n.options.container).append(n.dropdownEl):n.$el.after(n.dropdownEl),n._makeDropdownFocusable(),n._resetFilterQueryBound=n._resetFilterQuery.bind(n),n._handleDocumentClickBound=n._handleDocumentClick.bind(n),n._handleDocumentTouchmoveBound=n._handleDocumentTouchmove.bind(n),n._handleDropdownClickBound=n._handleDropdownClick.bind(n),n._handleDropdownKeydownBound=n._handleDropdownKeydown.bind(n),n._handleTriggerKeydownBound=n._handleTriggerKeydown.bind(n),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._resetDropdownStyles(),this._removeEventHandlers(),u._dropdowns.splice(u._dropdowns.indexOf(this),1),this.el.M_Dropdown=void 0}},{key:"_setupEventHandlers",value:function(){this.el.addEventListener("keydown",this._handleTriggerKeydownBound),this.dropdownEl.addEventListener("click",this._handleDropdownClickBound),this.options.hover?(this._handleMouseEnterBound=this._handleMouseEnter.bind(this),this.el.addEventListener("mouseenter",this._handleMouseEnterBound),this._handleMouseLeaveBound=this._handleMouseLeave.bind(this),this.el.addEventListener("mouseleave",this._handleMouseLeaveBound),this.dropdownEl.addEventListener("mouseleave",this._handleMouseLeaveBound)):(this._handleClickBound=this._handleClick.bind(this),this.el.addEventListener("click",this._handleClickBound))}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("keydown",this._handleTriggerKeydownBound),this.dropdownEl.removeEventListener("click",this._handleDropdownClickBound),this.options.hover?(this.el.removeEventListener("mouseenter",this._handleMouseEnterBound),this.el.removeEventListener("mouseleave",this._handleMouseLeaveBound),this.dropdownEl.removeEventListener("mouseleave",this._handleMouseLeaveBound)):this.el.removeEventListener("click",this._handleClickBound)}},{key:"_setupTemporaryEventHandlers",value:function(){document.body.addEventListener("click",this._handleDocumentClickBound,!0),document.body.addEventListener("touchend",this._handleDocumentClickBound),document.body.addEventListener("touchmove",this._handleDocumentTouchmoveBound),this.dropdownEl.addEventListener("keydown",this._handleDropdownKeydownBound)}},{key:"_removeTemporaryEventHandlers",value:function(){document.body.removeEventListener("click",this._handleDocumentClickBound,!0),document.body.removeEventListener("touchend",this._handleDocumentClickBound),document.body.removeEventListener("touchmove",this._handleDocumentTouchmoveBound),this.dropdownEl.removeEventListener("keydown",this._handleDropdownKeydownBound)}},{key:"_handleClick",value:function(e){e.preventDefault(),this.open()}},{key:"_handleMouseEnter",value:function(){this.open()}},{key:"_handleMouseLeave",value:function(t){var i=t.toElement||t.relatedTarget,n=!!e(i).closest(".dropdown-content").length,s=!1,o=e(i).closest(".dropdown-trigger");o.length&&o[0].M_Dropdown&&o[0].M_Dropdown.isOpen&&(s=!0),s||n||this.close()}},{key:"_handleDocumentClick",value:function(t){var i=this,n=e(t.target);this.options.closeOnClick&&n.closest(".dropdown-content").length&&!this.isTouchMoving?setTimeout((function(){i.close()}),0):!n.closest(".dropdown-trigger").length&&n.closest(".dropdown-content").length||setTimeout((function(){i.close()}),0),this.isTouchMoving=!1}},{key:"_handleTriggerKeydown",value:function(e){e.which!==M.keys.ARROW_DOWN&&e.which!==M.keys.ENTER||this.isOpen||(e.preventDefault(),this.open())}},{key:"_handleDocumentTouchmove",value:function(t){e(t.target).closest(".dropdown-content").length&&(this.isTouchMoving=!0)}},{key:"_handleDropdownClick",value:function(t){if("function"==typeof this.options.onItemClick){var i=e(t.target).closest("li")[0];this.options.onItemClick.call(this,i)}}},{key:"_handleDropdownKeydown",value:function(t){if(t.which===M.keys.TAB)t.preventDefault(),this.close();else if(t.which!==M.keys.ARROW_DOWN&&t.which!==M.keys.ARROW_UP||!this.isOpen)if(t.which===M.keys.ENTER&&this.isOpen){var i=this.dropdownEl.children[this.focusedIndex],n=e(i).find("a, button").first();n.length?n[0].click():i&&i.click()}else t.which===M.keys.ESC&&this.isOpen&&(t.preventDefault(),this.close());else{t.preventDefault();var s=t.which===M.keys.ARROW_DOWN?1:-1,o=this.focusedIndex,a=!1;do{if(o+=s,this.dropdownEl.children[o]&&-1!==this.dropdownEl.children[o].tabIndex){a=!0;break}}while(o<this.dropdownEl.children.length&&o>=0);a&&(this.focusedIndex=o,this._focusFocusedItem())}var r=String.fromCharCode(t.which).toLowerCase();if(r&&-1===[9,13,27,38,40].indexOf(t.which)){this.filterQuery.push(r);var l=this.filterQuery.join(""),u=e(this.dropdownEl).find("li").filter((function(t){return 0===e(t).text().toLowerCase().indexOf(l)}))[0];u&&(this.focusedIndex=e(u).index(),this._focusFocusedItem())}this.filterTimeout=setTimeout(this._resetFilterQueryBound,1e3)}},{key:"_resetFilterQuery",value:function(){this.filterQuery=[]}},{key:"_resetDropdownStyles",value:function(){this.$dropdownEl.css({display:"",width:"",height:"",left:"",top:"","transform-origin":"",transform:"",opacity:""})}},{key:"_makeDropdownFocusable",value:function(){this.dropdownEl.tabIndex=0,e(this.dropdownEl).children().each((function(e){e.getAttribute("tabindex")||e.setAttribute("tabindex",0)}))}},{key:"_focusFocusedItem",value:function(){this.focusedIndex>=0&&this.focusedIndex<this.dropdownEl.children.length&&this.options.autoFocus&&this.dropdownEl.children[this.focusedIndex].focus()}},{key:"_getDropdownPosition",value:function(){this.el.offsetParent.getBoundingClientRect();var e=this.el.getBoundingClientRect(),t=this.dropdownEl.getBoundingClientRect(),i=t.height,n=t.width,s=e.left-t.left,o=e.top-t.top,a={left:s,top:o,height:i,width:n},r=this.dropdownEl.offsetParent?this.dropdownEl.offsetParent:this.dropdownEl.parentNode,l=M.checkPossibleAlignments(this.el,r,a,this.options.coverTrigger?0:e.height),u="top",d=this.options.alignment;if(o+=this.options.coverTrigger?0:e.height,this.isScrollable=!1,l.top||(l.bottom?u="bottom":(this.isScrollable=!0,l.spaceOnTop>l.spaceOnBottom?(u="bottom",i+=l.spaceOnTop,o-=l.spaceOnTop):i+=l.spaceOnBottom)),!l[d]){var c="left"===d?"right":"left";l[c]?d=c:l.spaceOnLeft>l.spaceOnRight?(d="right",n+=l.spaceOnLeft,s-=l.spaceOnLeft):(d="left",n+=l.spaceOnRight)}return"bottom"===u&&(o=o-t.height+(this.options.coverTrigger?e.height:0)),"right"===d&&(s=s-t.width+e.width),{x:s,y:o,verticalAlignment:u,horizontalAlignment:d,height:i,width:n}}},{key:"_animateIn",value:function(){var e=this;t.remove(this.dropdownEl),t({targets:this.dropdownEl,opacity:{value:[0,1],easing:"easeOutQuad"},scaleX:[.3,1],scaleY:[.3,1],duration:this.options.inDuration,easing:"easeOutQuint",complete:function(t){e.options.autoFocus&&e.dropdownEl.focus(),"function"==typeof e.options.onOpenEnd&&e.options.onOpenEnd.call(e,e.el)}})}},{key:"_animateOut",value:function(){var e=this;t.remove(this.dropdownEl),t({targets:this.dropdownEl,opacity:{value:0,easing:"easeOutQuint"},scaleX:.3,scaleY:.3,duration:this.options.outDuration,easing:"easeOutQuint",complete:function(t){e._resetDropdownStyles(),"function"==typeof e.options.onCloseEnd&&e.options.onCloseEnd.call(e,e.el)}})}},{key:"_placeDropdown",value:function(){var e=this.options.constrainWidth?this.el.getBoundingClientRect().width:this.dropdownEl.getBoundingClientRect().width;this.dropdownEl.style.width=e+"px";var t=this._getDropdownPosition();this.dropdownEl.style.left=t.x+"px",this.dropdownEl.style.top=t.y+"px",this.dropdownEl.style.height=t.height+"px",this.dropdownEl.style.width=t.width+"px",this.dropdownEl.style.transformOrigin=("left"===t.horizontalAlignment?"0":"100%")+" "+("top"===t.verticalAlignment?"0":"100%")}},{key:"open",value:function(){this.isOpen||(this.isOpen=!0,"function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,this.el),this._resetDropdownStyles(),this.dropdownEl.style.display="block",this._placeDropdown(),this._animateIn(),this._setupTemporaryEventHandlers())}},{key:"close",value:function(){this.isOpen&&(this.isOpen=!1,this.focusedIndex=-1,"function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,this.el),this._animateOut(),this._removeTemporaryEventHandlers(),this.options.autoFocus&&this.el.focus())}},{key:"recalculateDimensions",value:function(){this.isOpen&&(this.$dropdownEl.css({width:"",height:"",left:"",top:"","transform-origin":""}),this._placeDropdown())}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Dropdown}},{key:"defaults",get:function(){return i}}]),u}(u);n._dropdowns=[],M.Dropdown=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"dropdown","M_Dropdown")}(cash,M.anime),function(e,t){"use strict";var i={opacity:.5,inDuration:250,outDuration:250,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null,preventScrolling:!0,dismissible:!0,startingTop:"4%",endingTop:"10%"},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Modal=n,n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.id=n.$el.attr("id"),n._openingTrigger=void 0,n.$overlay=e('<div class="modal-overlay"></div>'),n.el.tabIndex=0,n._nthModalOpened=0,u._count++,n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){u._count--,this._removeEventHandlers(),this.el.removeAttribute("style"),this.$overlay.remove(),this.el.M_Modal=void 0}},{key:"_setupEventHandlers",value:function(){this._handleOverlayClickBound=this._handleOverlayClick.bind(this),this._handleModalCloseClickBound=this._handleModalCloseClick.bind(this),1===u._count&&document.body.addEventListener("click",this._handleTriggerClick),this.$overlay[0].addEventListener("click",this._handleOverlayClickBound),this.el.addEventListener("click",this._handleModalCloseClickBound)}},{key:"_removeEventHandlers",value:function(){0===u._count&&document.body.removeEventListener("click",this._handleTriggerClick),this.$overlay[0].removeEventListener("click",this._handleOverlayClickBound),this.el.removeEventListener("click",this._handleModalCloseClickBound)}},{key:"_handleTriggerClick",value:function(t){var i=e(t.target).closest(".modal-trigger");if(i.length){var n=M.getIdFromTrigger(i[0]),s=document.getElementById(n).M_Modal;s&&s.open(i),t.preventDefault()}}},{key:"_handleOverlayClick",value:function(){this.options.dismissible&&this.close()}},{key:"_handleModalCloseClick",value:function(t){e(t.target).closest(".modal-close").length&&this.close()}},{key:"_handleKeydown",value:function(e){27===e.keyCode&&this.options.dismissible&&this.close()}},{key:"_handleFocus",value:function(e){this.el.contains(e.target)||this._nthModalOpened!==u._modalsOpen||this.el.focus()}},{key:"_animateIn",value:function(){var i=this;e.extend(this.el.style,{display:"block",opacity:0}),e.extend(this.$overlay[0].style,{display:"block",opacity:0}),t({targets:this.$overlay[0],opacity:this.options.opacity,duration:this.options.inDuration,easing:"easeOutQuad"});var n={targets:this.el,duration:this.options.inDuration,easing:"easeOutCubic",complete:function(){"function"==typeof i.options.onOpenEnd&&i.options.onOpenEnd.call(i,i.el,i._openingTrigger)}};this.el.classList.contains("bottom-sheet")?(e.extend(n,{bottom:0,opacity:1}),t(n)):(e.extend(n,{top:[this.options.startingTop,this.options.endingTop],opacity:1,scaleX:[.8,1],scaleY:[.8,1]}),t(n))}},{key:"_animateOut",value:function(){var i=this;t({targets:this.$overlay[0],opacity:0,duration:this.options.outDuration,easing:"easeOutQuart"});var n={targets:this.el,duration:this.options.outDuration,easing:"easeOutCubic",complete:function(){i.el.style.display="none",i.$overlay.remove(),"function"==typeof i.options.onCloseEnd&&i.options.onCloseEnd.call(i,i.el)}};this.el.classList.contains("bottom-sheet")?(e.extend(n,{bottom:"-100%",opacity:0}),t(n)):(e.extend(n,{top:[this.options.endingTop,this.options.startingTop],opacity:0,scaleX:.8,scaleY:.8}),t(n))}},{key:"open",value:function(e){if(!this.isOpen)return this.isOpen=!0,u._modalsOpen++,this._nthModalOpened=u._modalsOpen,this.$overlay[0].style.zIndex=1e3+2*u._modalsOpen,this.el.style.zIndex=1e3+2*u._modalsOpen+1,this._openingTrigger=e?e[0]:void 0,"function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,this.el,this._openingTrigger),this.options.preventScrolling&&(document.body.style.overflow="hidden"),this.el.classList.add("open"),this.el.insertAdjacentElement("afterend",this.$overlay[0]),this.options.dismissible&&(this._handleKeydownBound=this._handleKeydown.bind(this),this._handleFocusBound=this._handleFocus.bind(this),document.addEventListener("keydown",this._handleKeydownBound),document.addEventListener("focus",this._handleFocusBound,!0)),t.remove(this.el),t.remove(this.$overlay[0]),this._animateIn(),this.el.focus(),this}},{key:"close",value:function(){if(this.isOpen)return this.isOpen=!1,u._modalsOpen--,this._nthModalOpened=0,"function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,this.el),this.el.classList.remove("open"),0===u._modalsOpen&&(document.body.style.overflow=""),this.options.dismissible&&(document.removeEventListener("keydown",this._handleKeydownBound),document.removeEventListener("focus",this._handleFocusBound,!0)),t.remove(this.el),t.remove(this.$overlay[0]),this._animateOut(),this}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Modal}},{key:"defaults",get:function(){return i}}]),u}(u);n._modalsOpen=0,n._count=0,M.Modal=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"modal","M_Modal")}(cash,M.anime),function(e,t){"use strict";var i={inDuration:275,outDuration:200,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Materialbox=n,n.options=e.extend({},u.defaults,i),n.overlayActive=!1,n.doneAnimating=!0,n.placeholder=e("<div></div>").addClass("material-placeholder"),n.originalWidth=0,n.originalHeight=0,n.originInlineStyles=n.$el.attr("style"),n.caption=n.el.getAttribute("data-caption")||"",n.$el.before(n.placeholder),n.placeholder.append(n.$el),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.M_Materialbox=void 0,e(this.placeholder).after(this.el).remove(),this.$el.removeAttr("style")}},{key:"_setupEventHandlers",value:function(){this._handleMaterialboxClickBound=this._handleMaterialboxClick.bind(this),this.el.addEventListener("click",this._handleMaterialboxClickBound)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleMaterialboxClickBound)}},{key:"_handleMaterialboxClick",value:function(e){!1===this.doneAnimating||this.overlayActive&&this.doneAnimating?this.close():this.open()}},{key:"_handleWindowScroll",value:function(){this.overlayActive&&this.close()}},{key:"_handleWindowResize",value:function(){this.overlayActive&&this.close()}},{key:"_handleWindowEscape",value:function(e){27===e.keyCode&&this.doneAnimating&&this.overlayActive&&this.close()}},{key:"_makeAncestorsOverflowVisible",value:function(){this.ancestorsChanged=e();for(var t=this.placeholder[0].parentNode;null!==t&&!e(t).is(document);){var i=e(t);"visible"!==i.css("overflow")&&(i.css("overflow","visible"),void 0===this.ancestorsChanged?this.ancestorsChanged=i:this.ancestorsChanged=this.ancestorsChanged.add(i)),t=t.parentNode}}},{key:"_animateImageIn",value:function(){var e=this,i={targets:this.el,height:[this.originalHeight,this.newHeight],width:[this.originalWidth,this.newWidth],left:M.getDocumentScrollLeft()+this.windowWidth/2-this.placeholder.offset().left-this.newWidth/2,top:M.getDocumentScrollTop()+this.windowHeight/2-this.placeholder.offset().top-this.newHeight/2,duration:this.options.inDuration,easing:"easeOutQuad",complete:function(){e.doneAnimating=!0,"function"==typeof e.options.onOpenEnd&&e.options.onOpenEnd.call(e,e.el)}};this.maxWidth=this.$el.css("max-width"),this.maxHeight=this.$el.css("max-height"),"none"!==this.maxWidth&&(i.maxWidth=this.newWidth),"none"!==this.maxHeight&&(i.maxHeight=this.newHeight),t(i)}},{key:"_animateImageOut",value:function(){var e=this,i={targets:this.el,width:this.originalWidth,height:this.originalHeight,left:0,top:0,duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){e.placeholder.css({height:"",width:"",position:"",top:"",left:""}),e.attrWidth&&e.$el.attr("width",e.attrWidth),e.attrHeight&&e.$el.attr("height",e.attrHeight),e.$el.removeAttr("style"),e.originInlineStyles&&e.$el.attr("style",e.originInlineStyles),e.$el.removeClass("active"),e.doneAnimating=!0,e.ancestorsChanged.length&&e.ancestorsChanged.css("overflow",""),"function"==typeof e.options.onCloseEnd&&e.options.onCloseEnd.call(e,e.el)}};t(i)}},{key:"_updateVars",value:function(){this.windowWidth=window.innerWidth,this.windowHeight=window.innerHeight,this.caption=this.el.getAttribute("data-caption")||""}},{key:"open",value:function(){var i=this;this._updateVars(),this.originalWidth=this.el.getBoundingClientRect().width,this.originalHeight=this.el.getBoundingClientRect().height,this.doneAnimating=!1,this.$el.addClass("active"),this.overlayActive=!0,"function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,this.el),this.placeholder.css({width:this.placeholder[0].getBoundingClientRect().width+"px",height:this.placeholder[0].getBoundingClientRect().height+"px",position:"relative",top:0,left:0}),this._makeAncestorsOverflowVisible(),this.$el.css({position:"absolute","z-index":1e3,"will-change":"left, top, width, height"}),this.attrWidth=this.$el.attr("width"),this.attrHeight=this.$el.attr("height"),this.attrWidth&&(this.$el.css("width",this.attrWidth+"px"),this.$el.removeAttr("width")),this.attrHeight&&(this.$el.css("width",this.attrHeight+"px"),this.$el.removeAttr("height")),this.$overlay=e('<div id="materialbox-overlay"></div>').css({opacity:0}).one("click",(function(){i.doneAnimating&&i.close()})),this.$el.before(this.$overlay);var n=this.$overlay[0].getBoundingClientRect();this.$overlay.css({width:this.windowWidth+"px",height:this.windowHeight+"px",left:-1*n.left+"px",top:-1*n.top+"px"}),t.remove(this.el),t.remove(this.$overlay[0]),t({targets:this.$overlay[0],opacity:1,duration:this.options.inDuration,easing:"easeOutQuad"}),""!==this.caption&&(this.$photocaption&&t.remove(this.$photoCaption[0]),this.$photoCaption=e('<div class="materialbox-caption"></div>'),this.$photoCaption.text(this.caption),e("body").append(this.$photoCaption),this.$photoCaption.css({display:"inline"}),t({targets:this.$photoCaption[0],opacity:1,duration:this.options.inDuration,easing:"easeOutQuad"}));var s=0,o=this.originalWidth/this.windowWidth,a=this.originalHeight/this.windowHeight;this.newWidth=0,this.newHeight=0,o>a?(s=this.originalHeight/this.originalWidth,this.newWidth=.9*this.windowWidth,this.newHeight=.9*this.windowWidth*s):(s=this.originalWidth/this.originalHeight,this.newWidth=.9*this.windowHeight*s,this.newHeight=.9*this.windowHeight),this._animateImageIn(),this._handleWindowScrollBound=this._handleWindowScroll.bind(this),this._handleWindowResizeBound=this._handleWindowResize.bind(this),this._handleWindowEscapeBound=this._handleWindowEscape.bind(this),window.addEventListener("scroll",this._handleWindowScrollBound),window.addEventListener("resize",this._handleWindowResizeBound),window.addEventListener("keyup",this._handleWindowEscapeBound)}},{key:"close",value:function(){var e=this;this._updateVars(),this.doneAnimating=!1,"function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,this.el),t.remove(this.el),t.remove(this.$overlay[0]),""!==this.caption&&t.remove(this.$photoCaption[0]),window.removeEventListener("scroll",this._handleWindowScrollBound),window.removeEventListener("resize",this._handleWindowResizeBound),window.removeEventListener("keyup",this._handleWindowEscapeBound),t({targets:this.$overlay[0],opacity:0,duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){e.overlayActive=!1,e.$overlay.remove()}}),this._animateImageOut(),""!==this.caption&&t({targets:this.$photoCaption[0],opacity:0,duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){e.$photoCaption.remove()}})}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Materialbox}},{key:"defaults",get:function(){return i}}]),u}(u);M.Materialbox=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"materialbox","M_Materialbox")}(cash,M.anime),function(e){"use strict";var t={responsiveThreshold:0},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Parallax=s,s.options=e.extend({},n.defaults,i),s._enabled=window.innerWidth>s.options.responsiveThreshold,s.$img=s.$el.find("img").first(),s.$img.each((function(){this.complete&&e(this).trigger("load")})),s._updateParallax(),s._setupEventHandlers(),s._setupStyles(),n._parallaxes.push(s),s}return r(n,i),o(n,[{key:"destroy",value:function(){n._parallaxes.splice(n._parallaxes.indexOf(this),1),this.$img[0].style.transform="",this._removeEventHandlers(),this.$el[0].M_Parallax=void 0}},{key:"_setupEventHandlers",value:function(){this._handleImageLoadBound=this._handleImageLoad.bind(this),this.$img[0].addEventListener("load",this._handleImageLoadBound),0===n._parallaxes.length&&(n._handleScrollThrottled=M.throttle(n._handleScroll,5),window.addEventListener("scroll",n._handleScrollThrottled),n._handleWindowResizeThrottled=M.throttle(n._handleWindowResize,5),window.addEventListener("resize",n._handleWindowResizeThrottled))}},{key:"_removeEventHandlers",value:function(){this.$img[0].removeEventListener("load",this._handleImageLoadBound),0===n._parallaxes.length&&(window.removeEventListener("scroll",n._handleScrollThrottled),window.removeEventListener("resize",n._handleWindowResizeThrottled))}},{key:"_setupStyles",value:function(){this.$img[0].style.opacity=1}},{key:"_handleImageLoad",value:function(){this._updateParallax()}},{key:"_updateParallax",value:function(){var e=this.$el.height()>0?this.el.parentNode.offsetHeight:500,t=this.$img[0].offsetHeight-e,i=this.$el.offset().top+e,n=this.$el.offset().top,s=M.getDocumentScrollTop(),o=window.innerHeight,a=t*((s+o-n)/(e+o));this._enabled?i>s&&n<s+o&&(this.$img[0].style.transform="translate3D(-50%, "+a+"px, 0)"):this.$img[0].style.transform=""}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Parallax}},{key:"_handleScroll",value:function(){for(var e=0;e<n._parallaxes.length;e++){var t=n._parallaxes[e];t._updateParallax.call(t)}}},{key:"_handleWindowResize",value:function(){for(var e=0;e<n._parallaxes.length;e++){var t=n._parallaxes[e];t._enabled=window.innerWidth>t.options.responsiveThreshold}}},{key:"defaults",get:function(){return t}}]),n}(u);i._parallaxes=[],M.Parallax=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"parallax","M_Parallax")}(cash),function(e,t){"use strict";var i={duration:300,onShow:null,swipeable:!1,responsiveThreshold:1/0},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Tabs=n,n.options=e.extend({},u.defaults,i),n.$tabLinks=n.$el.children("li.tab").children("a"),n.index=0,n._setupActiveTabLink(),n.options.swipeable?n._setupSwipeableTabs():n._setupNormalTabs(),n._setTabsAndTabWidth(),n._createIndicator(),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this._indicator.parentNode.removeChild(this._indicator),this.options.swipeable?this._teardownSwipeableTabs():this._teardownNormalTabs(),this.$el[0].M_Tabs=void 0}},{key:"_setupEventHandlers",value:function(){this._handleWindowResizeBound=this._handleWindowResize.bind(this),window.addEventListener("resize",this._handleWindowResizeBound),this._handleTabClickBound=this._handleTabClick.bind(this),this.el.addEventListener("click",this._handleTabClickBound)}},{key:"_removeEventHandlers",value:function(){window.removeEventListener("resize",this._handleWindowResizeBound),this.el.removeEventListener("click",this._handleTabClickBound)}},{key:"_handleWindowResize",value:function(){this._setTabsAndTabWidth(),0!==this.tabWidth&&0!==this.tabsWidth&&(this._indicator.style.left=this._calcLeftPos(this.$activeTabLink)+"px",this._indicator.style.right=this._calcRightPos(this.$activeTabLink)+"px")}},{key:"_handleTabClick",value:function(t){var i=this,n=e(t.target).closest("li.tab"),s=e(t.target).closest("a");if(s.length&&s.parent().hasClass("tab"))if(n.hasClass("disabled"))t.preventDefault();else if(!s.attr("target")){this.$activeTabLink.removeClass("active");var o=this.$content;this.$activeTabLink=s,this.$content=e(M.escapeHash(s[0].hash)),this.$tabLinks=this.$el.children("li.tab").children("a"),this.$activeTabLink.addClass("active");var a=this.index;this.index=Math.max(this.$tabLinks.index(s),0),this.options.swipeable?this._tabsCarousel&&this._tabsCarousel.set(this.index,(function(){"function"==typeof i.options.onShow&&i.options.onShow.call(i,i.$content[0])})):this.$content.length&&(this.$content[0].style.display="block",this.$content.addClass("active"),"function"==typeof this.options.onShow&&this.options.onShow.call(this,this.$content[0]),o.length&&!o.is(this.$content)&&(o[0].style.display="none",o.removeClass("active"))),this._setTabsAndTabWidth(),this._animateIndicator(a),t.preventDefault()}}},{key:"_createIndicator",value:function(){var e=this,t=document.createElement("li");t.classList.add("indicator"),this.el.appendChild(t),this._indicator=t,setTimeout((function(){e._indicator.style.left=e._calcLeftPos(e.$activeTabLink)+"px",e._indicator.style.right=e._calcRightPos(e.$activeTabLink)+"px"}),0)}},{key:"_setupActiveTabLink",value:function(){this.$activeTabLink=e(this.$tabLinks.filter('[href="'+location.hash+'"]')),0===this.$activeTabLink.length&&(this.$activeTabLink=this.$el.children("li.tab").children("a.active").first()),0===this.$activeTabLink.length&&(this.$activeTabLink=this.$el.children("li.tab").children("a").first()),this.$tabLinks.removeClass("active"),this.$activeTabLink[0].classList.add("active"),this.index=Math.max(this.$tabLinks.index(this.$activeTabLink),0),this.$activeTabLink.length&&(this.$content=e(M.escapeHash(this.$activeTabLink[0].hash)),this.$content.addClass("active"))}},{key:"_setupSwipeableTabs",value:function(){var t=this;window.innerWidth>this.options.responsiveThreshold&&(this.options.swipeable=!1);var i=e();this.$tabLinks.each((function(t){var n=e(M.escapeHash(t.hash));n.addClass("carousel-item"),i=i.add(n)}));var n=e('<div class="tabs-content carousel carousel-slider"></div>');i.first().before(n),n.append(i),i[0].style.display="";var s=this.$activeTabLink.closest(".tab").index();this._tabsCarousel=M.Carousel.init(n[0],{fullWidth:!0,noWrap:!0,onCycleTo:function(i){var n=t.index;t.index=e(i).index(),t.$activeTabLink.removeClass("active"),t.$activeTabLink=t.$tabLinks.eq(t.index),t.$activeTabLink.addClass("active"),t._animateIndicator(n),"function"==typeof t.options.onShow&&t.options.onShow.call(t,t.$content[0])}}),this._tabsCarousel.set(s)}},{key:"_teardownSwipeableTabs",value:function(){var e=this._tabsCarousel.$el;this._tabsCarousel.destroy(),e.after(e.children()),e.remove()}},{key:"_setupNormalTabs",value:function(){this.$tabLinks.not(this.$activeTabLink).each((function(t){if(t.hash){var i=e(M.escapeHash(t.hash));i.length&&(i[0].style.display="none")}}))}},{key:"_teardownNormalTabs",value:function(){this.$tabLinks.each((function(t){if(t.hash){var i=e(M.escapeHash(t.hash));i.length&&(i[0].style.display="")}}))}},{key:"_setTabsAndTabWidth",value:function(){this.tabsWidth=this.$el.width(),this.tabWidth=Math.max(this.tabsWidth,this.el.scrollWidth)/this.$tabLinks.length}},{key:"_calcRightPos",value:function(e){return Math.ceil(this.tabsWidth-e.position().left-e[0].getBoundingClientRect().width)}},{key:"_calcLeftPos",value:function(e){return Math.floor(e.position().left)}},{key:"updateTabIndicator",value:function(){this._setTabsAndTabWidth(),this._animateIndicator(this.index)}},{key:"_animateIndicator",value:function(e){var i=0,n=0;this.index-e>=0?i=90:n=90;var s={targets:this._indicator,left:{value:this._calcLeftPos(this.$activeTabLink),delay:i},right:{value:this._calcRightPos(this.$activeTabLink),delay:n},duration:this.options.duration,easing:"easeOutQuad"};t.remove(this._indicator),t(s)}},{key:"select",value:function(e){var t=this.$tabLinks.filter('[href="#'+e+'"]');t.length&&t.trigger("click")}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Tabs}},{key:"defaults",get:function(){return i}}]),u}(u);M.Tabs=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"tabs","M_Tabs")}(cash,M.anime),function(e,t){"use strict";var i={exitDelay:200,enterDelay:0,html:null,margin:5,inDuration:250,outDuration:200,position:"bottom",transitionMovement:10},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Tooltip=n,n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.isHovered=!1,n.isFocused=!1,n._appendTooltipEl(),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){e(this.tooltipEl).remove(),this._removeEventHandlers(),this.el.M_Tooltip=void 0}},{key:"_appendTooltipEl",value:function(){var e=document.createElement("div");e.classList.add("material-tooltip"),this.tooltipEl=e;var t=document.createElement("div");t.classList.add("tooltip-content"),t.innerHTML=this.options.html,e.appendChild(t),document.body.appendChild(e)}},{key:"_updateTooltipContent",value:function(){this.tooltipEl.querySelector(".tooltip-content").innerHTML=this.options.html}},{key:"_setupEventHandlers",value:function(){this._handleMouseEnterBound=this._handleMouseEnter.bind(this),this._handleMouseLeaveBound=this._handleMouseLeave.bind(this),this._handleFocusBound=this._handleFocus.bind(this),this._handleBlurBound=this._handleBlur.bind(this),this.el.addEventListener("mouseenter",this._handleMouseEnterBound),this.el.addEventListener("mouseleave",this._handleMouseLeaveBound),this.el.addEventListener("focus",this._handleFocusBound,!0),this.el.addEventListener("blur",this._handleBlurBound,!0)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("mouseenter",this._handleMouseEnterBound),this.el.removeEventListener("mouseleave",this._handleMouseLeaveBound),this.el.removeEventListener("focus",this._handleFocusBound,!0),this.el.removeEventListener("blur",this._handleBlurBound,!0)}},{key:"open",value:function(t){this.isOpen||(t=void 0===t||void 0,this.isOpen=!0,this.options=e.extend({},this.options,this._getAttributeOptions()),this._updateTooltipContent(),this._setEnterDelayTimeout(t))}},{key:"close",value:function(){this.isOpen&&(this.isHovered=!1,this.isFocused=!1,this.isOpen=!1,this._setExitDelayTimeout())}},{key:"_setExitDelayTimeout",value:function(){var e=this;clearTimeout(this._exitDelayTimeout),this._exitDelayTimeout=setTimeout((function(){e.isHovered||e.isFocused||e._animateOut()}),this.options.exitDelay)}},{key:"_setEnterDelayTimeout",value:function(e){var t=this;clearTimeout(this._enterDelayTimeout),this._enterDelayTimeout=setTimeout((function(){(t.isHovered||t.isFocused||e)&&t._animateIn()}),this.options.enterDelay)}},{key:"_positionTooltip",value:function(){var t,i=this.el,n=this.tooltipEl,s=i.offsetHeight,o=i.offsetWidth,a=n.offsetHeight,r=n.offsetWidth,l=this.options.margin,u=void 0,d=void 0;this.xMovement=0,this.yMovement=0,u=i.getBoundingClientRect().top+M.getDocumentScrollTop(),d=i.getBoundingClientRect().left+M.getDocumentScrollLeft(),"top"===this.options.position?(u+=-a-l,d+=o/2-r/2,this.yMovement=-this.options.transitionMovement):"right"===this.options.position?(u+=s/2-a/2,d+=o+l,this.xMovement=this.options.transitionMovement):"left"===this.options.position?(u+=s/2-a/2,d+=-r-l,this.xMovement=-this.options.transitionMovement):(u+=s+l,d+=o/2-r/2,this.yMovement=this.options.transitionMovement),t=this._repositionWithinScreen(d,u,r,a),e(n).css({top:t.y+"px",left:t.x+"px"})}},{key:"_repositionWithinScreen",value:function(e,t,i,n){var s=M.getDocumentScrollLeft(),o=M.getDocumentScrollTop(),a=e-s,r=t-o,l={left:a,top:r,width:i,height:n},u=this.options.margin+this.options.transitionMovement,d=M.checkWithinContainer(document.body,l,u);return d.left?a=u:d.right&&(a-=a+i-window.innerWidth),d.top?r=u:d.bottom&&(r-=r+n-window.innerHeight),{x:a+s,y:r+o}}},{key:"_animateIn",value:function(){this._positionTooltip(),this.tooltipEl.style.visibility="visible",t.remove(this.tooltipEl),t({targets:this.tooltipEl,opacity:1,translateX:this.xMovement,translateY:this.yMovement,duration:this.options.inDuration,easing:"easeOutCubic"})}},{key:"_animateOut",value:function(){t.remove(this.tooltipEl),t({targets:this.tooltipEl,opacity:0,translateX:0,translateY:0,duration:this.options.outDuration,easing:"easeOutCubic"})}},{key:"_handleMouseEnter",value:function(){this.isHovered=!0,this.isFocused=!1,this.open(!1)}},{key:"_handleMouseLeave",value:function(){this.isHovered=!1,this.isFocused=!1,this.close()}},{key:"_handleFocus",value:function(){M.tabPressed&&(this.isFocused=!0,this.open(!1))}},{key:"_handleBlur",value:function(){this.isFocused=!1,this.close()}},{key:"_getAttributeOptions",value:function(){var e={},t=this.el.getAttribute("data-tooltip"),i=this.el.getAttribute("data-position");return t&&(e.html=t),i&&(e.position=i),e}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Tooltip}},{key:"defaults",get:function(){return i}}]),u}(u);M.Tooltip=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"tooltip","M_Tooltip")}(cash,M.anime),function(e){"use strict";var t=t||{},i=document.querySelectorAll.bind(document);function n(e){var t="";for(var i in e)e.hasOwnProperty(i)&&(t+=i+":"+e[i]+";");return t}var s={duration:750,show:function(e,t){if(2===e.button)return!1;var i=t||this,o=document.createElement("div");o.className="waves-ripple",i.appendChild(o);var a,r,l,u,d,c=(u={top:0,left:0},d=(a=i)&&a.ownerDocument,r=d.documentElement,void 0!==a.getBoundingClientRect&&(u=a.getBoundingClientRect()),l=function(e){return null!==(t=e)&&t===t.window?e:9===e.nodeType&&e.defaultView;var t}(d),{top:u.top+l.pageYOffset-r.clientTop,left:u.left+l.pageXOffset-r.clientLeft}),h=e.pageY-c.top,p=e.pageX-c.left,v="scale("+i.clientWidth/100*10+")";"touches"in e&&(h=e.touches[0].pageY-c.top,p=e.touches[0].pageX-c.left),o.setAttribute("data-hold",Date.now()),o.setAttribute("data-scale",v),o.setAttribute("data-x",p),o.setAttribute("data-y",h);var _={top:h+"px",left:p+"px"};o.className=o.className+" waves-notransition",o.setAttribute("style",n(_)),o.className=o.className.replace("waves-notransition",""),_["-webkit-transform"]=v,_["-moz-transform"]=v,_["-ms-transform"]=v,_["-o-transform"]=v,_.transform=v,_.opacity="1",_["-webkit-transition-duration"]=s.duration+"ms",_["-moz-transition-duration"]=s.duration+"ms",_["-o-transition-duration"]=s.duration+"ms",_["transition-duration"]=s.duration+"ms",_["-webkit-transition-timing-function"]="cubic-bezier(0.250, 0.460, 0.450, 0.940)",_["-moz-transition-timing-function"]="cubic-bezier(0.250, 0.460, 0.450, 0.940)",_["-o-transition-timing-function"]="cubic-bezier(0.250, 0.460, 0.450, 0.940)",_["transition-timing-function"]="cubic-bezier(0.250, 0.460, 0.450, 0.940)",o.setAttribute("style",n(_))},hide:function(e){o.touchup(e);var t=this,i=(t.clientWidth,null),a=t.getElementsByClassName("waves-ripple");if(!(a.length>0))return!1;var r=(i=a[a.length-1]).getAttribute("data-x"),l=i.getAttribute("data-y"),u=i.getAttribute("data-scale"),d=350-(Date.now()-Number(i.getAttribute("data-hold")));d<0&&(d=0),setTimeout((function(){var e={top:l+"px",left:r+"px",opacity:"0","-webkit-transition-duration":s.duration+"ms","-moz-transition-duration":s.duration+"ms","-o-transition-duration":s.duration+"ms","transition-duration":s.duration+"ms","-webkit-transform":u,"-moz-transform":u,"-ms-transform":u,"-o-transform":u,transform:u};i.setAttribute("style",n(e)),setTimeout((function(){try{t.removeChild(i)}catch(e){return!1}}),s.duration)}),d)},wrapInput:function(e){for(var t=0;t<e.length;t++){var i=e[t];if("input"===i.tagName.toLowerCase()){var n=i.parentNode;if("i"===n.tagName.toLowerCase()&&-1!==n.className.indexOf("waves-effect"))continue;var s=document.createElement("i");s.className=i.className+" waves-input-wrapper";var o=i.getAttribute("style");o||(o=""),s.setAttribute("style",o),i.className="waves-button-input",i.removeAttribute("style"),n.replaceChild(s,i),s.appendChild(i)}}}},o={touches:0,allowEvent:function(e){var t=!0;return"touchstart"===e.type?o.touches+=1:"touchend"===e.type||"touchcancel"===e.type?setTimeout((function(){o.touches>0&&(o.touches-=1)}),500):"mousedown"===e.type&&o.touches>0&&(t=!1),t},touchup:function(e){o.allowEvent(e)}};function a(t){var i=function(e){if(!1===o.allowEvent(e))return null;for(var t=null,i=e.target||e.srcElement;null!==i.parentNode;){if(!(i instanceof SVGElement)&&-1!==i.className.indexOf("waves-effect")){t=i;break}i=i.parentNode}return t}(t);null!==i&&(s.show(t,i),"ontouchstart"in e&&(i.addEventListener("touchend",s.hide,!1),i.addEventListener("touchcancel",s.hide,!1)),i.addEventListener("mouseup",s.hide,!1),i.addEventListener("mouseleave",s.hide,!1),i.addEventListener("dragend",s.hide,!1))}t.displayEffect=function(t){"duration"in(t=t||{})&&(s.duration=t.duration),s.wrapInput(i(".waves-effect")),"ontouchstart"in e&&document.body.addEventListener("touchstart",a,!1),document.body.addEventListener("mousedown",a,!1)},t.attach=function(t){"input"===t.tagName.toLowerCase()&&(s.wrapInput([t]),t=t.parentNode),"ontouchstart"in e&&t.addEventListener("touchstart",a,!1),t.addEventListener("mousedown",a,!1)},e.Waves=t,document.addEventListener("DOMContentLoaded",(function(){t.displayEffect()}),!1)}(window),function(e,t){"use strict";var i={html:"",displayLength:4e3,inDuration:300,outDuration:375,classes:"",completeCallback:null,activationPercent:.8},n=function(){function n(t){l(this,n),this.options=e.extend({},n.defaults,t),this.message=this.options.html,this.panning=!1,this.timeRemaining=this.options.displayLength,0===n._toasts.length&&n._createContainer(),n._toasts.push(this);var i=this._createToast();i.M_Toast=this,this.el=i,this.$el=e(i),this._animateIn(),this._setTimer()}return o(n,[{key:"_createToast",value:function(){var t=document.createElement("div");return t.classList.add("toast"),this.options.classes.length&&e(t).addClass(this.options.classes),("object"==typeof HTMLElement?this.message instanceof HTMLElement:this.message&&"object"==typeof this.message&&null!==this.message&&1===this.message.nodeType&&"string"==typeof this.message.nodeName)?t.appendChild(this.message):this.message.jquery?e(t).append(this.message[0]):t.innerHTML=this.message,n._container.appendChild(t),t}},{key:"_animateIn",value:function(){t({targets:this.el,top:0,opacity:1,duration:this.options.inDuration,easing:"easeOutCubic"})}},{key:"_setTimer",value:function(){var e=this;this.timeRemaining!==1/0&&(this.counterInterval=setInterval((function(){e.panning||(e.timeRemaining-=20),e.timeRemaining<=0&&e.dismiss()}),20))}},{key:"dismiss",value:function(){var e=this;window.clearInterval(this.counterInterval);var i=this.el.offsetWidth*this.options.activationPercent;this.wasSwiped&&(this.el.style.transition="transform .05s, opacity .05s",this.el.style.transform="translateX("+i+"px)",this.el.style.opacity=0),t({targets:this.el,opacity:0,marginTop:-40,duration:this.options.outDuration,easing:"easeOutExpo",complete:function(){"function"==typeof e.options.completeCallback&&e.options.completeCallback(),e.$el.remove(),n._toasts.splice(n._toasts.indexOf(e),1),0===n._toasts.length&&n._removeContainer()}})}}],[{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Toast}},{key:"_createContainer",value:function(){var e=document.createElement("div");e.setAttribute("id","toast-container"),e.addEventListener("touchstart",n._onDragStart),e.addEventListener("touchmove",n._onDragMove),e.addEventListener("touchend",n._onDragEnd),e.addEventListener("mousedown",n._onDragStart),document.addEventListener("mousemove",n._onDragMove),document.addEventListener("mouseup",n._onDragEnd),document.body.appendChild(e),n._container=e}},{key:"_removeContainer",value:function(){document.removeEventListener("mousemove",n._onDragMove),document.removeEventListener("mouseup",n._onDragEnd),e(n._container).remove(),n._container=null}},{key:"_onDragStart",value:function(t){if(t.target&&e(t.target).closest(".toast").length){var i=e(t.target).closest(".toast")[0].M_Toast;i.panning=!0,n._draggedToast=i,i.el.classList.add("panning"),i.el.style.transition="",i.startingXPos=n._xPos(t),i.time=Date.now(),i.xPos=n._xPos(t)}}},{key:"_onDragMove",value:function(e){if(n._draggedToast){e.preventDefault();var t=n._draggedToast;t.deltaX=Math.abs(t.xPos-n._xPos(e)),t.xPos=n._xPos(e),t.velocityX=t.deltaX/(Date.now()-t.time),t.time=Date.now();var i=t.xPos-t.startingXPos,s=t.el.offsetWidth*t.options.activationPercent;t.el.style.transform="translateX("+i+"px)",t.el.style.opacity=1-Math.abs(i/s)}}},{key:"_onDragEnd",value:function(){if(n._draggedToast){var e=n._draggedToast;e.panning=!1,e.el.classList.remove("panning");var t=e.xPos-e.startingXPos,i=e.el.offsetWidth*e.options.activationPercent;Math.abs(t)>i||e.velocityX>1?(e.wasSwiped=!0,e.dismiss()):(e.el.style.transition="transform .2s, opacity .2s",e.el.style.transform="",e.el.style.opacity=""),n._draggedToast=null}}},{key:"_xPos",value:function(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientX:e.clientX}},{key:"dismissAll",value:function(){for(var e in n._toasts)n._toasts[e].dismiss()}},{key:"defaults",get:function(){return i}}]),n}();n._toasts=[],n._container=null,n._draggedToast=null,M.Toast=n,M.toast=function(e){return new n(e)}}(cash,M.anime),function(e,t){"use strict";var i={edge:"left",draggable:!0,inDuration:250,outDuration:200,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null,preventScrolling:!0},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Sidenav=n,n.id=n.$el.attr("id"),n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.isFixed=n.el.classList.contains("sidenav-fixed"),n.isDragged=!1,n.lastWindowWidth=window.innerWidth,n.lastWindowHeight=window.innerHeight,n._createOverlay(),n._createDragTarget(),n._setupEventHandlers(),n._setupClasses(),n._setupFixed(),u._sidenavs.push(n),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this._enableBodyScrolling(),this._overlay.parentNode.removeChild(this._overlay),this.dragTarget.parentNode.removeChild(this.dragTarget),this.el.M_Sidenav=void 0,this.el.style.transform="";var e=u._sidenavs.indexOf(this);e>=0&&u._sidenavs.splice(e,1)}},{key:"_createOverlay",value:function(){var e=document.createElement("div");this._closeBound=this.close.bind(this),e.classList.add("sidenav-overlay"),e.addEventListener("click",this._closeBound),document.body.appendChild(e),this._overlay=e}},{key:"_setupEventHandlers",value:function(){0===u._sidenavs.length&&document.body.addEventListener("click",this._handleTriggerClick),this._handleDragTargetDragBound=this._handleDragTargetDrag.bind(this),this._handleDragTargetReleaseBound=this._handleDragTargetRelease.bind(this),this._handleCloseDragBound=this._handleCloseDrag.bind(this),this._handleCloseReleaseBound=this._handleCloseRelease.bind(this),this._handleCloseTriggerClickBound=this._handleCloseTriggerClick.bind(this),this.dragTarget.addEventListener("touchmove",this._handleDragTargetDragBound),this.dragTarget.addEventListener("touchend",this._handleDragTargetReleaseBound),this._overlay.addEventListener("touchmove",this._handleCloseDragBound),this._overlay.addEventListener("touchend",this._handleCloseReleaseBound),this.el.addEventListener("touchmove",this._handleCloseDragBound),this.el.addEventListener("touchend",this._handleCloseReleaseBound),this.el.addEventListener("click",this._handleCloseTriggerClickBound),this.isFixed&&(this._handleWindowResizeBound=this._handleWindowResize.bind(this),window.addEventListener("resize",this._handleWindowResizeBound))}},{key:"_removeEventHandlers",value:function(){1===u._sidenavs.length&&document.body.removeEventListener("click",this._handleTriggerClick),this.dragTarget.removeEventListener("touchmove",this._handleDragTargetDragBound),this.dragTarget.removeEventListener("touchend",this._handleDragTargetReleaseBound),this._overlay.removeEventListener("touchmove",this._handleCloseDragBound),this._overlay.removeEventListener("touchend",this._handleCloseReleaseBound),this.el.removeEventListener("touchmove",this._handleCloseDragBound),this.el.removeEventListener("touchend",this._handleCloseReleaseBound),this.el.removeEventListener("click",this._handleCloseTriggerClickBound),this.isFixed&&window.removeEventListener("resize",this._handleWindowResizeBound)}},{key:"_handleTriggerClick",value:function(t){var i=e(t.target).closest(".sidenav-trigger");if(t.target&&i.length){var n=M.getIdFromTrigger(i[0]),s=document.getElementById(n).M_Sidenav;s&&s.open(i),t.preventDefault()}}},{key:"_startDrag",value:function(e){var i=e.targetTouches[0].clientX;this.isDragged=!0,this._startingXpos=i,this._xPos=this._startingXpos,this._time=Date.now(),this._width=this.el.getBoundingClientRect().width,this._overlay.style.display="block",this._initialScrollTop=this.isOpen?this.el.scrollTop:M.getDocumentScrollTop(),this._verticallyScrolling=!1,t.remove(this.el),t.remove(this._overlay)}},{key:"_dragMoveUpdate",value:function(e){var t=e.targetTouches[0].clientX,i=this.isOpen?this.el.scrollTop:M.getDocumentScrollTop();this.deltaX=Math.abs(this._xPos-t),this._xPos=t,this.velocityX=this.deltaX/(Date.now()-this._time),this._time=Date.now(),this._initialScrollTop!==i&&(this._verticallyScrolling=!0)}},{key:"_handleDragTargetDrag",value:function(e){if(this.options.draggable&&!this._isCurrentlyFixed()&&!this._verticallyScrolling){this.isDragged||this._startDrag(e),this._dragMoveUpdate(e);var t=this._xPos-this._startingXpos,i=t>0?"right":"left";t=Math.min(this._width,Math.abs(t)),this.options.edge===i&&(t=0);var n=t,s="translateX(-100%)";"right"===this.options.edge&&(s="translateX(100%)",n=-n),this.percentOpen=Math.min(1,t/this._width),this.el.style.transform=s+" translateX("+n+"px)",this._overlay.style.opacity=this.percentOpen}}},{key:"_handleDragTargetRelease",value:function(){this.isDragged&&(this.percentOpen>.2?this.open():this._animateOut(),this.isDragged=!1,this._verticallyScrolling=!1)}},{key:"_handleCloseDrag",value:function(e){if(this.isOpen){if(!this.options.draggable||this._isCurrentlyFixed()||this._verticallyScrolling)return;this.isDragged||this._startDrag(e),this._dragMoveUpdate(e);var t=this._xPos-this._startingXpos,i=t>0?"right":"left";t=Math.min(this._width,Math.abs(t)),this.options.edge!==i&&(t=0);var n=-t;"right"===this.options.edge&&(n=-n),this.percentOpen=Math.min(1,1-t/this._width),this.el.style.transform="translateX("+n+"px)",this._overlay.style.opacity=this.percentOpen}}},{key:"_handleCloseRelease",value:function(){this.isOpen&&this.isDragged&&(this.percentOpen>.8?this._animateIn():this.close(),this.isDragged=!1,this._verticallyScrolling=!1)}},{key:"_handleCloseTriggerClick",value:function(t){e(t.target).closest(".sidenav-close").length&&!this._isCurrentlyFixed()&&this.close()}},{key:"_handleWindowResize",value:function(){this.lastWindowWidth!==window.innerWidth&&(window.innerWidth>992?this.open():this.close()),this.lastWindowWidth=window.innerWidth,this.lastWindowHeight=window.innerHeight}},{key:"_setupClasses",value:function(){"right"===this.options.edge&&(this.el.classList.add("right-aligned"),this.dragTarget.classList.add("right-aligned"))}},{key:"_removeClasses",value:function(){this.el.classList.remove("right-aligned"),this.dragTarget.classList.remove("right-aligned")}},{key:"_setupFixed",value:function(){this._isCurrentlyFixed()&&this.open()}},{key:"_isCurrentlyFixed",value:function(){return this.isFixed&&window.innerWidth>992}},{key:"_createDragTarget",value:function(){var e=document.createElement("div");e.classList.add("drag-target"),document.body.appendChild(e),this.dragTarget=e}},{key:"_preventBodyScrolling",value:function(){document.body.style.overflow="hidden"}},{key:"_enableBodyScrolling",value:function(){document.body.style.overflow=""}},{key:"open",value:function(){!0!==this.isOpen&&(this.isOpen=!0,"function"==typeof this.options.onOpenStart&&this.options.onOpenStart.call(this,this.el),this._isCurrentlyFixed()?(t.remove(this.el),t({targets:this.el,translateX:0,duration:0,easing:"easeOutQuad"}),this._enableBodyScrolling(),this._overlay.style.display="none"):(this.options.preventScrolling&&this._preventBodyScrolling(),this.isDragged&&1==this.percentOpen||this._animateIn()))}},{key:"close",value:function(){if(!1!==this.isOpen)if(this.isOpen=!1,"function"==typeof this.options.onCloseStart&&this.options.onCloseStart.call(this,this.el),this._isCurrentlyFixed()){var e="left"===this.options.edge?"-105%":"105%";this.el.style.transform="translateX("+e+")"}else this._enableBodyScrolling(),this.isDragged&&0==this.percentOpen?this._overlay.style.display="none":this._animateOut()}},{key:"_animateIn",value:function(){this._animateSidenavIn(),this._animateOverlayIn()}},{key:"_animateSidenavIn",value:function(){var e=this,i="left"===this.options.edge?-1:1;this.isDragged&&(i="left"===this.options.edge?i+this.percentOpen:i-this.percentOpen),t.remove(this.el),t({targets:this.el,translateX:[100*i+"%",0],duration:this.options.inDuration,easing:"easeOutQuad",complete:function(){"function"==typeof e.options.onOpenEnd&&e.options.onOpenEnd.call(e,e.el)}})}},{key:"_animateOverlayIn",value:function(){var i=0;this.isDragged?i=this.percentOpen:e(this._overlay).css({display:"block"}),t.remove(this._overlay),t({targets:this._overlay,opacity:[i,1],duration:this.options.inDuration,easing:"easeOutQuad"})}},{key:"_animateOut",value:function(){this._animateSidenavOut(),this._animateOverlayOut()}},{key:"_animateSidenavOut",value:function(){var e=this,i="left"===this.options.edge?-1:1,n=0;this.isDragged&&(n="left"===this.options.edge?i+this.percentOpen:i-this.percentOpen),t.remove(this.el),t({targets:this.el,translateX:[100*n+"%",105*i+"%"],duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){"function"==typeof e.options.onCloseEnd&&e.options.onCloseEnd.call(e,e.el)}})}},{key:"_animateOverlayOut",value:function(){var i=this;t.remove(this._overlay),t({targets:this._overlay,opacity:0,duration:this.options.outDuration,easing:"easeOutQuad",complete:function(){e(i._overlay).css("display","none")}})}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Sidenav}},{key:"defaults",get:function(){return i}}]),u}(u);n._sidenavs=[],M.Sidenav=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"sidenav","M_Sidenav")}(cash,M.anime),function(e,t){"use strict";var i={throttle:100,scrollOffset:200,activeClass:"active",getActiveElement:function(e){return'a[href="#'+e+'"]'}},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_ScrollSpy=n,n.options=e.extend({},u.defaults,i),u._elements.push(n),u._count++,u._increment++,n.tickId=-1,n.id=u._increment,n._setupEventHandlers(),n._handleWindowScroll(),n}return r(u,n),o(u,[{key:"destroy",value:function(){u._elements.splice(u._elements.indexOf(this),1),u._elementsInView.splice(u._elementsInView.indexOf(this),1),u._visibleElements.splice(u._visibleElements.indexOf(this.$el),1),u._count--,this._removeEventHandlers(),e(this.options.getActiveElement(this.$el.attr("id"))).removeClass(this.options.activeClass),this.el.M_ScrollSpy=void 0}},{key:"_setupEventHandlers",value:function(){var e=M.throttle(this._handleWindowScroll,200);this._handleThrottledResizeBound=e.bind(this),this._handleWindowScrollBound=this._handleWindowScroll.bind(this),1===u._count&&(window.addEventListener("scroll",this._handleWindowScrollBound),window.addEventListener("resize",this._handleThrottledResizeBound),document.body.addEventListener("click",this._handleTriggerClick))}},{key:"_removeEventHandlers",value:function(){0===u._count&&(window.removeEventListener("scroll",this._handleWindowScrollBound),window.removeEventListener("resize",this._handleThrottledResizeBound),document.body.removeEventListener("click",this._handleTriggerClick))}},{key:"_handleTriggerClick",value:function(i){for(var n=e(i.target),s=u._elements.length-1;s>=0;s--){var o=u._elements[s];if(n.is('a[href="#'+o.$el.attr("id")+'"]')){i.preventDefault();var a=o.$el.offset().top+1;t({targets:[document.documentElement,document.body],scrollTop:a-o.options.scrollOffset,duration:400,easing:"easeOutCubic"});break}}}},{key:"_handleWindowScroll",value:function(){u._ticks++;for(var e=M.getDocumentScrollTop(),t=M.getDocumentScrollLeft(),i=t+window.innerWidth,n=e+window.innerHeight,s=u._findElements(e,i,n,t),o=0;o<s.length;o++){var a=s[o];a.tickId<0&&a._enter(),a.tickId=u._ticks}for(var r=0;r<u._elementsInView.length;r++){var l=u._elementsInView[r],d=l.tickId;d>=0&&d!==u._ticks&&(l._exit(),l.tickId=-1)}u._elementsInView=s}},{key:"_enter",value:function(){u._visibleElements=u._visibleElements.filter((function(e){return 0!=e.height()})),u._visibleElements[0]?(e(this.options.getActiveElement(u._visibleElements[0].attr("id"))).removeClass(this.options.activeClass),u._visibleElements[0][0].M_ScrollSpy&&this.id<u._visibleElements[0][0].M_ScrollSpy.id?u._visibleElements.unshift(this.$el):u._visibleElements.push(this.$el)):u._visibleElements.push(this.$el),e(this.options.getActiveElement(u._visibleElements[0].attr("id"))).addClass(this.options.activeClass)}},{key:"_exit",value:function(){var t=this;u._visibleElements=u._visibleElements.filter((function(e){return 0!=e.height()})),u._visibleElements[0]&&(e(this.options.getActiveElement(u._visibleElements[0].attr("id"))).removeClass(this.options.activeClass),u._visibleElements=u._visibleElements.filter((function(e){return e.attr("id")!=t.$el.attr("id")})),u._visibleElements[0]&&e(this.options.getActiveElement(u._visibleElements[0].attr("id"))).addClass(this.options.activeClass))}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_ScrollSpy}},{key:"_findElements",value:function(e,t,i,n){for(var s=[],o=0;o<u._elements.length;o++){var a=u._elements[o],r=e+a.options.scrollOffset||200;if(a.$el.height()>0){var l=a.$el.offset().top,d=a.$el.offset().left,c=d+a.$el.width(),h=l+a.$el.height();!(d>t||c<n||l>i||h<r)&&s.push(a)}}return s}},{key:"defaults",get:function(){return i}}]),u}(u);n._elements=[],n._elementsInView=[],n._visibleElements=[],n._count=0,n._increment=0,n._ticks=0,M.ScrollSpy=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"scrollSpy","M_ScrollSpy")}(cash,M.anime),function(e){"use strict";var t={data:{},limit:1/0,onAutocomplete:null,minLength:1,sortFunction:function(e,t,i){return e.indexOf(i)-t.indexOf(i)}},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Autocomplete=s,s.options=e.extend({},n.defaults,i),s.isOpen=!1,s.count=0,s.activeIndex=-1,s.oldVal,s.$inputField=s.$el.closest(".input-field"),s.$active=e(),s._mousedown=!1,s._setupDropdown(),s._setupEventHandlers(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this._removeDropdown(),this.el.M_Autocomplete=void 0}},{key:"_setupEventHandlers",value:function(){this._handleInputBlurBound=this._handleInputBlur.bind(this),this._handleInputKeyupAndFocusBound=this._handleInputKeyupAndFocus.bind(this),this._handleInputKeydownBound=this._handleInputKeydown.bind(this),this._handleInputClickBound=this._handleInputClick.bind(this),this._handleContainerMousedownAndTouchstartBound=this._handleContainerMousedownAndTouchstart.bind(this),this._handleContainerMouseupAndTouchendBound=this._handleContainerMouseupAndTouchend.bind(this),this.el.addEventListener("blur",this._handleInputBlurBound),this.el.addEventListener("keyup",this._handleInputKeyupAndFocusBound),this.el.addEventListener("focus",this._handleInputKeyupAndFocusBound),this.el.addEventListener("keydown",this._handleInputKeydownBound),this.el.addEventListener("click",this._handleInputClickBound),this.container.addEventListener("mousedown",this._handleContainerMousedownAndTouchstartBound),this.container.addEventListener("mouseup",this._handleContainerMouseupAndTouchendBound),void 0!==window.ontouchstart&&(this.container.addEventListener("touchstart",this._handleContainerMousedownAndTouchstartBound),this.container.addEventListener("touchend",this._handleContainerMouseupAndTouchendBound))}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("blur",this._handleInputBlurBound),this.el.removeEventListener("keyup",this._handleInputKeyupAndFocusBound),this.el.removeEventListener("focus",this._handleInputKeyupAndFocusBound),this.el.removeEventListener("keydown",this._handleInputKeydownBound),this.el.removeEventListener("click",this._handleInputClickBound),this.container.removeEventListener("mousedown",this._handleContainerMousedownAndTouchstartBound),this.container.removeEventListener("mouseup",this._handleContainerMouseupAndTouchendBound),void 0!==window.ontouchstart&&(this.container.removeEventListener("touchstart",this._handleContainerMousedownAndTouchstartBound),this.container.removeEventListener("touchend",this._handleContainerMouseupAndTouchendBound))}},{key:"_setupDropdown",value:function(){var t=this;this.container=document.createElement("ul"),this.container.id="autocomplete-options-"+M.guid(),e(this.container).addClass("autocomplete-content dropdown-content"),this.$inputField.append(this.container),this.el.setAttribute("data-target",this.container.id),this.dropdown=M.Dropdown.init(this.el,{autoFocus:!1,closeOnClick:!1,coverTrigger:!1,onItemClick:function(i){t.selectOption(e(i))}}),this.el.removeEventListener("click",this.dropdown._handleClickBound)}},{key:"_removeDropdown",value:function(){this.container.parentNode.removeChild(this.container)}},{key:"_handleInputBlur",value:function(){this._mousedown||(this.close(),this._resetAutocomplete())}},{key:"_handleInputKeyupAndFocus",value:function(e){"keyup"===e.type&&(n._keydown=!1),this.count=0;var t=this.el.value.toLowerCase();13!==e.keyCode&&38!==e.keyCode&&40!==e.keyCode&&(this.oldVal===t||!M.tabPressed&&"focus"===e.type||this.open(),this.oldVal=t)}},{key:"_handleInputKeydown",value:function(t){n._keydown=!0;var i=t.keyCode,s=void 0,o=e(this.container).children("li").length;i===M.keys.ENTER&&this.activeIndex>=0?(s=e(this.container).children("li").eq(this.activeIndex)).length&&(this.selectOption(s),t.preventDefault()):i!==M.keys.ARROW_UP&&i!==M.keys.ARROW_DOWN||(t.preventDefault(),i===M.keys.ARROW_UP&&this.activeIndex>0&&this.activeIndex--,i===M.keys.ARROW_DOWN&&this.activeIndex<o-1&&this.activeIndex++,this.$active.removeClass("active"),this.activeIndex>=0&&(this.$active=e(this.container).children("li").eq(this.activeIndex),this.$active.addClass("active")))}},{key:"_handleInputClick",value:function(e){this.open()}},{key:"_handleContainerMousedownAndTouchstart",value:function(e){this._mousedown=!0}},{key:"_handleContainerMouseupAndTouchend",value:function(e){this._mousedown=!1}},{key:"_highlight",value:function(e,t){var i=t.find("img"),n=t.text().toLowerCase().indexOf(""+e.toLowerCase()),s=n+e.length-1,o=t.text().slice(0,n),a=t.text().slice(n,s+1),r=t.text().slice(s+1);t.html("<span>"+o+"<span class='highlight'>"+a+"</span>"+r+"</span>"),i.length&&t.prepend(i)}},{key:"_resetCurrentElement",value:function(){this.activeIndex=-1,this.$active.removeClass("active")}},{key:"_resetAutocomplete",value:function(){e(this.container).empty(),this._resetCurrentElement(),this.oldVal=null,this.isOpen=!1,this._mousedown=!1}},{key:"selectOption",value:function(e){var t=e.text().trim();this.el.value=t,this.$el.trigger("change"),this._resetAutocomplete(),this.close(),"function"==typeof this.options.onAutocomplete&&this.options.onAutocomplete.call(this,t)}},{key:"_renderDropdown",value:function(t,i){var n=this;this._resetAutocomplete();var s=[];for(var o in t)if(t.hasOwnProperty(o)&&-1!==o.toLowerCase().indexOf(i)){if(this.count>=this.options.limit)break;var a={data:t[o],key:o};s.push(a),this.count++}if(this.options.sortFunction){s.sort((function(e,t){return n.options.sortFunction(e.key.toLowerCase(),t.key.toLowerCase(),i.toLowerCase())}))}for(var r=0;r<s.length;r++){var l=s[r],u=e("<li></li>");l.data?u.append('<img src="'+l.data+'" class="right circle"><span>'+l.key+"</span>"):u.append("<span>"+l.key+"</span>"),e(this.container).append(u),this._highlight(i,u)}}},{key:"open",value:function(){var e=this.el.value.toLowerCase();this._resetAutocomplete(),e.length>=this.options.minLength&&(this.isOpen=!0,this._renderDropdown(this.options.data,e)),this.dropdown.isOpen?this.dropdown.recalculateDimensions():this.dropdown.open()}},{key:"close",value:function(){this.dropdown.close()}},{key:"updateData",value:function(e){var t=this.el.value.toLowerCase();this.options.data=e,this.isOpen&&this._renderDropdown(e,t)}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Autocomplete}},{key:"defaults",get:function(){return t}}]),n}(u);i._keydown=!1,M.Autocomplete=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"autocomplete","M_Autocomplete")}(cash),function(e){M.updateTextFields=function(){e("input[type=text], input[type=password], input[type=email], input[type=url], input[type=tel], input[type=number], input[type=search], input[type=date], input[type=time], textarea").each((function(t,i){var n=e(this);t.value.length>0||e(t).is(":focus")||t.autofocus||null!==n.attr("placeholder")?n.siblings("label").addClass("active"):t.validity?n.siblings("label").toggleClass("active",!0===t.validity.badInput):n.siblings("label").removeClass("active")}))},M.validate_field=function(e){var t=null!==e.attr("data-length"),i=parseInt(e.attr("data-length")),n=e[0].value.length;0!==n||!1!==e[0].validity.badInput||e.is(":required")?e.hasClass("validate")&&(e.is(":valid")&&t&&n<=i||e.is(":valid")&&!t?(e.removeClass("invalid"),e.addClass("valid")):(e.removeClass("valid"),e.addClass("invalid"))):e.hasClass("validate")&&(e.removeClass("valid"),e.removeClass("invalid"))},M.textareaAutoResize=function(t){if(t instanceof Element&&(t=e(t)),t.length){var i=e(".hiddendiv").first();i.length||(i=e('<div class="hiddendiv common"></div>'),e("body").append(i));var n=t.css("font-family"),s=t.css("font-size"),o=t.css("line-height"),a=t.css("padding-top"),r=t.css("padding-right"),l=t.css("padding-bottom"),u=t.css("padding-left");s&&i.css("font-size",s),n&&i.css("font-family",n),o&&i.css("line-height",o),a&&i.css("padding-top",a),r&&i.css("padding-right",r),l&&i.css("padding-bottom",l),u&&i.css("padding-left",u),t.data("original-height")||t.data("original-height",t.height()),"off"===t.attr("wrap")&&i.css("overflow-wrap","normal").css("white-space","pre"),i.text(t[0].value+"\n");var d=i.html().replace(/\n/g,"<br>");i.html(d),t[0].offsetWidth>0&&t[0].offsetHeight>0?i.css("width",t.width()+"px"):i.css("width",window.innerWidth/2+"px"),t.data("original-height")<=i.innerHeight()?t.css("height",i.innerHeight()+"px"):t[0].value.length<t.data("previous-length")&&t.css("height",t.data("original-height")+"px"),t.data("previous-length",t[0].value.length)}else console.error("No textarea element found")},e(document).ready((function(){var t="input[type=text], input[type=password], input[type=email], input[type=url], input[type=tel], input[type=number], input[type=search], input[type=date], input[type=time], textarea";e(document).on("change",t,(function(){0===this.value.length&&null===e(this).attr("placeholder")||e(this).siblings("label").addClass("active"),M.validate_field(e(this))})),e(document).ready((function(){M.updateTextFields()})),e(document).on("reset",(function(i){var n=e(i.target);n.is("form")&&(n.find(t).removeClass("valid").removeClass("invalid"),n.find(t).each((function(t){this.value.length&&e(this).siblings("label").removeClass("active")})),setTimeout((function(){n.find("select").each((function(){this.M_FormSelect&&e(this).trigger("change")}))}),0))})),document.addEventListener("focus",(function(i){e(i.target).is(t)&&e(i.target).siblings("label, .prefix").addClass("active")}),!0),document.addEventListener("blur",(function(i){var n=e(i.target);if(n.is(t)){var s=".prefix";0===n[0].value.length&&!0!==n[0].validity.badInput&&null===n.attr("placeholder")&&(s+=", label"),n.siblings(s).removeClass("active"),M.validate_field(n)}}),!0);e(document).on("keyup","input[type=radio], input[type=checkbox]",(function(t){if(t.which===M.keys.TAB)return e(this).addClass("tabbed"),void e(this).one("blur",(function(t){e(this).removeClass("tabbed")}))}));var i=".materialize-textarea";e(i).each((function(){var t=e(this);t.data("original-height",t.height()),t.data("previous-length",this.value.length),M.textareaAutoResize(t)})),e(document).on("keyup",i,(function(){M.textareaAutoResize(e(this))})),e(document).on("keydown",i,(function(){M.textareaAutoResize(e(this))})),e(document).on("change",'.file-field input[type="file"]',(function(){for(var t=e(this).closest(".file-field").find("input.file-path"),i=e(this)[0].files,n=[],s=0;s<i.length;s++)n.push(i[s].name);t[0].value=n.join(", "),t.trigger("change")}))}))}(cash),function(e,t){"use strict";var i={indicators:!0,height:400,duration:500,interval:6e3},n=function(n){function u(i,n){l(this,u);var s=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,i,n));return s.el.M_Slider=s,s.options=e.extend({},u.defaults,n),s.$slider=s.$el.find(".slides"),s.$slides=s.$slider.children("li"),s.activeIndex=s.$slides.filter((function(t){return e(t).hasClass("active")})).first().index(),-1!=s.activeIndex&&(s.$active=s.$slides.eq(s.activeIndex)),s._setSliderHeight(),s.$slides.find(".caption").each((function(e){s._animateCaptionIn(e,0)})),s.$slides.find("img").each((function(t){var i="data:image/gif;base64,R0lGODlhAQABAIABAP///wAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==";e(t).attr("src")!==i&&(e(t).css("background-image",'url("'+e(t).attr("src")+'")'),e(t).attr("src",i))})),s._setupIndicators(),s.$active?s.$active.css("display","block"):(s.$slides.first().addClass("active"),t({targets:s.$slides.first()[0],opacity:1,duration:s.options.duration,easing:"easeOutQuad"}),s.activeIndex=0,s.$active=s.$slides.eq(s.activeIndex),s.options.indicators&&s.$indicators.eq(s.activeIndex).addClass("active")),s.$active.find("img").each((function(e){t({targets:s.$active.find(".caption")[0],opacity:1,translateX:0,translateY:0,duration:s.options.duration,easing:"easeOutQuad"})})),s._setupEventHandlers(),s.start(),s}return r(u,n),o(u,[{key:"destroy",value:function(){this.pause(),this._removeIndicators(),this._removeEventHandlers(),this.el.M_Slider=void 0}},{key:"_setupEventHandlers",value:function(){var e=this;this._handleIntervalBound=this._handleInterval.bind(this),this._handleIndicatorClickBound=this._handleIndicatorClick.bind(this),this.options.indicators&&this.$indicators.each((function(t){t.addEventListener("click",e._handleIndicatorClickBound)}))}},{key:"_removeEventHandlers",value:function(){var e=this;this.options.indicators&&this.$indicators.each((function(t){t.removeEventListener("click",e._handleIndicatorClickBound)}))}},{key:"_handleIndicatorClick",value:function(t){var i=e(t.target).index();this.set(i)}},{key:"_handleInterval",value:function(){var e=this.$slider.find(".active").index();this.$slides.length===e+1?e=0:e+=1,this.set(e)}},{key:"_animateCaptionIn",value:function(i,n){var s={targets:i,opacity:0,duration:n,easing:"easeOutQuad"};e(i).hasClass("center-align")?s.translateY=-100:e(i).hasClass("right-align")?s.translateX=100:e(i).hasClass("left-align")&&(s.translateX=-100),t(s)}},{key:"_setSliderHeight",value:function(){this.$el.hasClass("fullscreen")||(this.options.indicators?this.$el.css("height",this.options.height+40+"px"):this.$el.css("height",this.options.height+"px"),this.$slider.css("height",this.options.height+"px"))}},{key:"_setupIndicators",value:function(){var t=this;this.options.indicators&&(this.$indicators=e('<ul class="indicators"></ul>'),this.$slides.each((function(i,n){var s=e('<li class="indicator-item"></li>');t.$indicators.append(s[0])})),this.$el.append(this.$indicators[0]),this.$indicators=this.$indicators.children("li.indicator-item"))}},{key:"_removeIndicators",value:function(){this.$el.find("ul.indicators").remove()}},{key:"set",value:function(e){var i=this;if(e>=this.$slides.length?e=0:e<0&&(e=this.$slides.length-1),this.activeIndex!=e){this.$active=this.$slides.eq(this.activeIndex);var n=this.$active.find(".caption");this.$active.removeClass("active"),t({targets:this.$active[0],opacity:0,duration:this.options.duration,easing:"easeOutQuad",complete:function(){i.$slides.not(".active").each((function(e){t({targets:e,opacity:0,translateX:0,translateY:0,duration:0,easing:"easeOutQuad"})}))}}),this._animateCaptionIn(n[0],this.options.duration),this.options.indicators&&(this.$indicators.eq(this.activeIndex).removeClass("active"),this.$indicators.eq(e).addClass("active")),t({targets:this.$slides.eq(e)[0],opacity:1,duration:this.options.duration,easing:"easeOutQuad"}),t({targets:this.$slides.eq(e).find(".caption")[0],opacity:1,translateX:0,translateY:0,duration:this.options.duration,delay:this.options.duration,easing:"easeOutQuad"}),this.$slides.eq(e).addClass("active"),this.activeIndex=e,this.start()}}},{key:"pause",value:function(){clearInterval(this.interval)}},{key:"start",value:function(){clearInterval(this.interval),this.interval=setInterval(this._handleIntervalBound,this.options.duration+this.options.interval)}},{key:"next",value:function(){var e=this.activeIndex+1;e>=this.$slides.length?e=0:e<0&&(e=this.$slides.length-1),this.set(e)}},{key:"prev",value:function(){var e=this.activeIndex-1;e>=this.$slides.length?e=0:e<0&&(e=this.$slides.length-1),this.set(e)}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Slider}},{key:"defaults",get:function(){return i}}]),u}(u);M.Slider=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"slider","M_Slider")}(cash,M.anime),function(e,t){e(document).on("click",".card",(function(i){if(e(this).children(".card-reveal").length){var n=e(i.target).closest(".card");void 0===n.data("initialOverflow")&&n.data("initialOverflow",void 0===n.css("overflow")?"":n.css("overflow"));var s=e(this).find(".card-reveal");e(i.target).is(e(".card-reveal .card-title"))||e(i.target).is(e(".card-reveal .card-title i"))?t({targets:s[0],translateY:0,duration:225,easing:"easeInOutQuad",complete:function(t){var i=t.animatables[0].target;e(i).css({display:"none"}),n.css("overflow",n.data("initialOverflow"))}}):(e(i.target).is(e(".card .activator"))||e(i.target).is(e(".card .activator i")))&&(n.css("overflow","hidden"),s.css({display:"block"}),t({targets:s[0],translateY:"-100%",duration:300,easing:"easeInOutQuad"}))}}))}(cash,M.anime),function(e){"use strict";var t={data:[],placeholder:"",secondaryPlaceholder:"",autocompleteOptions:{},limit:1/0,onChipAdd:null,onChipSelect:null,onChipDelete:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Chips=s,s.options=e.extend({},n.defaults,i),s.$el.addClass("chips input-field"),s.chipsData=[],s.$chips=e(),s._setupInput(),s.hasAutocomplete=Object.keys(s.options.autocompleteOptions).length>0,s.$input.attr("id")||s.$input.attr("id",M.guid()),s.options.data.length&&(s.chipsData=s.options.data,s._renderChips(s.chipsData)),s.hasAutocomplete&&s._setupAutocomplete(),s._setPlaceholder(),s._setupLabel(),s._setupEventHandlers(),s}return r(n,i),o(n,[{key:"getData",value:function(){return this.chipsData}},{key:"destroy",value:function(){this._removeEventHandlers(),this.$chips.remove(),this.el.M_Chips=void 0}},{key:"_setupEventHandlers",value:function(){this._handleChipClickBound=this._handleChipClick.bind(this),this._handleInputKeydownBound=this._handleInputKeydown.bind(this),this._handleInputFocusBound=this._handleInputFocus.bind(this),this._handleInputBlurBound=this._handleInputBlur.bind(this),this.el.addEventListener("click",this._handleChipClickBound),document.addEventListener("keydown",n._handleChipsKeydown),document.addEventListener("keyup",n._handleChipsKeyup),this.el.addEventListener("blur",n._handleChipsBlur,!0),this.$input[0].addEventListener("focus",this._handleInputFocusBound),this.$input[0].addEventListener("blur",this._handleInputBlurBound),this.$input[0].addEventListener("keydown",this._handleInputKeydownBound)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleChipClickBound),document.removeEventListener("keydown",n._handleChipsKeydown),document.removeEventListener("keyup",n._handleChipsKeyup),this.el.removeEventListener("blur",n._handleChipsBlur,!0),this.$input[0].removeEventListener("focus",this._handleInputFocusBound),this.$input[0].removeEventListener("blur",this._handleInputBlurBound),this.$input[0].removeEventListener("keydown",this._handleInputKeydownBound)}},{key:"_handleChipClick",value:function(t){var i=e(t.target).closest(".chip"),n=e(t.target).is(".close");if(i.length){var s=i.index();n?(this.deleteChip(s),this.$input[0].focus()):this.selectChip(s)}else this.$input[0].focus()}},{key:"_handleInputFocus",value:function(){this.$el.addClass("focus")}},{key:"_handleInputBlur",value:function(){this.$el.removeClass("focus")}},{key:"_handleInputKeydown",value:function(e){if(n._keydown=!0,13===e.keyCode){if(this.hasAutocomplete&&this.autocomplete&&this.autocomplete.isOpen)return;e.preventDefault(),this.addChip({tag:this.$input[0].value}),this.$input[0].value=""}else 8!==e.keyCode&&37!==e.keyCode||""!==this.$input[0].value||!this.chipsData.length||(e.preventDefault(),this.selectChip(this.chipsData.length-1))}},{key:"_renderChip",value:function(t){if(t.tag){var i=document.createElement("div"),n=document.createElement("i");if(i.classList.add("chip"),i.textContent=t.tag,i.setAttribute("tabindex",0),e(n).addClass("material-icons close"),n.textContent="close",t.image){var s=document.createElement("img");s.setAttribute("src",t.image),i.insertBefore(s,i.firstChild)}return i.appendChild(n),i}}},{key:"_renderChips",value:function(){this.$chips.remove();for(var e=0;e<this.chipsData.length;e++){var t=this._renderChip(this.chipsData[e]);this.$el.append(t),this.$chips.add(t)}this.$el.append(this.$input[0])}},{key:"_setupAutocomplete",value:function(){var e=this;this.options.autocompleteOptions.onAutocomplete=function(t){e.addChip({tag:t}),e.$input[0].value="",e.$input[0].focus()},this.autocomplete=M.Autocomplete.init(this.$input[0],this.options.autocompleteOptions)}},{key:"_setupInput",value:function(){this.$input=this.$el.find("input"),this.$input.length||(this.$input=e("<input></input>"),this.$el.append(this.$input)),this.$input.addClass("input")}},{key:"_setupLabel",value:function(){this.$label=this.$el.find("label"),this.$label.length&&this.$label.setAttribute("for",this.$input.attr("id"))}},{key:"_setPlaceholder",value:function(){void 0!==this.chipsData&&!this.chipsData.length&&this.options.placeholder?e(this.$input).prop("placeholder",this.options.placeholder):(void 0===this.chipsData||this.chipsData.length)&&this.options.secondaryPlaceholder&&e(this.$input).prop("placeholder",this.options.secondaryPlaceholder)}},{key:"_isValid",value:function(e){if(e.hasOwnProperty("tag")&&""!==e.tag){for(var t=!1,i=0;i<this.chipsData.length;i++)if(this.chipsData[i].tag===e.tag){t=!0;break}return!t}return!1}},{key:"addChip",value:function(t){if(this._isValid(t)&&!(this.chipsData.length>=this.options.limit)){var i=this._renderChip(t);this.$chips.add(i),this.chipsData.push(t),e(this.$input).before(i),this._setPlaceholder(),"function"==typeof this.options.onChipAdd&&this.options.onChipAdd.call(this,this.$el,i)}}},{key:"deleteChip",value:function(t){var i=this.$chips.eq(t);this.$chips.eq(t).remove(),this.$chips=this.$chips.filter((function(t){return e(t).index()>=0})),this.chipsData.splice(t,1),this._setPlaceholder(),"function"==typeof this.options.onChipDelete&&this.options.onChipDelete.call(this,this.$el,i[0])}},{key:"selectChip",value:function(e){var t=this.$chips.eq(e);this._selectedChip=t,t[0].focus(),"function"==typeof this.options.onChipSelect&&this.options.onChipSelect.call(this,this.$el,t[0])}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Chips}},{key:"_handleChipsKeydown",value:function(t){n._keydown=!0;var i=e(t.target).closest(".chips"),s=t.target&&i.length;if(!e(t.target).is("input, textarea")&&s){var o=i[0].M_Chips;if(8===t.keyCode||46===t.keyCode){t.preventDefault();var a=o.chipsData.length;if(o._selectedChip){var r=o._selectedChip.index();o.deleteChip(r),o._selectedChip=null,a=Math.max(r-1,0)}o.chipsData.length&&o.selectChip(a)}else if(37===t.keyCode){if(o._selectedChip){var l=o._selectedChip.index()-1;if(l<0)return;o.selectChip(l)}}else if(39===t.keyCode&&o._selectedChip){var u=o._selectedChip.index()+1;u>=o.chipsData.length?o.$input[0].focus():o.selectChip(u)}}}},{key:"_handleChipsKeyup",value:function(e){n._keydown=!1}},{key:"_handleChipsBlur",value:function(t){n._keydown||(e(t.target).closest(".chips")[0].M_Chips._selectedChip=null)}},{key:"defaults",get:function(){return t}}]),n}(u);i._keydown=!1,M.Chips=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"chips","M_Chips"),e(document).ready((function(){e(document.body).on("click",".chip .close",(function(){var t=e(this).closest(".chips");t.length&&t[0].M_Chips||e(this).closest(".chip").remove()}))}))}(cash),function(e){"use strict";var t={top:0,bottom:1/0,offset:0,onPositionChange:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Pushpin=s,s.options=e.extend({},n.defaults,i),s.originalOffset=s.el.offsetTop,n._pushpins.push(s),s._setupEventHandlers(),s._updatePosition(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this.el.style.top=null,this._removePinClasses(),this._removeEventHandlers();var e=n._pushpins.indexOf(this);n._pushpins.splice(e,1)}},{key:"_setupEventHandlers",value:function(){document.addEventListener("scroll",n._updateElements)}},{key:"_removeEventHandlers",value:function(){document.removeEventListener("scroll",n._updateElements)}},{key:"_updatePosition",value:function(){var e=M.getDocumentScrollTop()+this.options.offset;this.options.top<=e&&this.options.bottom>=e&&!this.el.classList.contains("pinned")&&(this._removePinClasses(),this.el.style.top=this.options.offset+"px",this.el.classList.add("pinned"),"function"==typeof this.options.onPositionChange&&this.options.onPositionChange.call(this,"pinned")),e<this.options.top&&!this.el.classList.contains("pin-top")&&(this._removePinClasses(),this.el.style.top=0,this.el.classList.add("pin-top"),"function"==typeof this.options.onPositionChange&&this.options.onPositionChange.call(this,"pin-top")),e>this.options.bottom&&!this.el.classList.contains("pin-bottom")&&(this._removePinClasses(),this.el.classList.add("pin-bottom"),this.el.style.top=this.options.bottom-this.originalOffset+"px","function"==typeof this.options.onPositionChange&&this.options.onPositionChange.call(this,"pin-bottom"))}},{key:"_removePinClasses",value:function(){this.el.classList.remove("pin-top"),this.el.classList.remove("pinned"),this.el.classList.remove("pin-bottom")}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Pushpin}},{key:"_updateElements",value:function(){for(var e in n._pushpins){n._pushpins[e]._updatePosition()}}},{key:"defaults",get:function(){return t}}]),n}(u);i._pushpins=[],M.Pushpin=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"pushpin","M_Pushpin")}(cash),function(e,t){"use strict";var i={direction:"top",hoverEnabled:!0,toolbarEnabled:!1};e.fn.reverse=[].reverse;var n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_FloatingActionButton=n,n.options=e.extend({},u.defaults,i),n.isOpen=!1,n.$anchor=n.$el.children("a").first(),n.$menu=n.$el.children("ul").first(),n.$floatingBtns=n.$el.find("ul .btn-floating"),n.$floatingBtnsReverse=n.$el.find("ul .btn-floating").reverse(),n.offsetY=0,n.offsetX=0,n.$el.addClass("direction-"+n.options.direction),"top"===n.options.direction?n.offsetY=40:"right"===n.options.direction?n.offsetX=-40:"bottom"===n.options.direction?n.offsetY=-40:n.offsetX=40,n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.M_FloatingActionButton=void 0}},{key:"_setupEventHandlers",value:function(){this._handleFABClickBound=this._handleFABClick.bind(this),this._handleOpenBound=this.open.bind(this),this._handleCloseBound=this.close.bind(this),this.options.hoverEnabled&&!this.options.toolbarEnabled?(this.el.addEventListener("mouseenter",this._handleOpenBound),this.el.addEventListener("mouseleave",this._handleCloseBound)):this.el.addEventListener("click",this._handleFABClickBound)}},{key:"_removeEventHandlers",value:function(){this.options.hoverEnabled&&!this.options.toolbarEnabled?(this.el.removeEventListener("mouseenter",this._handleOpenBound),this.el.removeEventListener("mouseleave",this._handleCloseBound)):this.el.removeEventListener("click",this._handleFABClickBound)}},{key:"_handleFABClick",value:function(){this.isOpen?this.close():this.open()}},{key:"_handleDocumentClick",value:function(t){e(t.target).closest(this.$menu).length||this.close()}},{key:"open",value:function(){this.isOpen||(this.options.toolbarEnabled?this._animateInToolbar():this._animateInFAB(),this.isOpen=!0)}},{key:"close",value:function(){this.isOpen&&(this.options.toolbarEnabled?(window.removeEventListener("scroll",this._handleCloseBound,!0),document.body.removeEventListener("click",this._handleDocumentClickBound,!0),this._animateOutToolbar()):this._animateOutFAB(),this.isOpen=!1)}},{key:"_animateInFAB",value:function(){var e=this;this.$el.addClass("active");var i=0;this.$floatingBtnsReverse.each((function(n){t({targets:n,opacity:1,scale:[.4,1],translateY:[e.offsetY,0],translateX:[e.offsetX,0],duration:275,delay:i,easing:"easeInOutQuad"}),i+=40}))}},{key:"_animateOutFAB",value:function(){var e=this;this.$floatingBtnsReverse.each((function(i){t.remove(i),t({targets:i,opacity:0,scale:.4,translateY:e.offsetY,translateX:e.offsetX,duration:175,easing:"easeOutQuad",complete:function(){e.$el.removeClass("active")}})}))}},{key:"_animateInToolbar",value:function(){var t,i=this,n=window.innerWidth,s=window.innerHeight,o=this.el.getBoundingClientRect(),a=e('<div class="fab-backdrop"></div>'),r=this.$anchor.css("background-color");this.$anchor.append(a),this.offsetX=o.left-n/2+o.width/2,this.offsetY=s-o.bottom,t=n/a[0].clientWidth,this.btnBottom=o.bottom,this.btnLeft=o.left,this.btnWidth=o.width,this.$el.addClass("active"),this.$el.css({"text-align":"center",width:"100%",bottom:0,left:0,transform:"translateX("+this.offsetX+"px)",transition:"none"}),this.$anchor.css({transform:"translateY("+-this.offsetY+"px)",transition:"none"}),a.css({"background-color":r}),setTimeout((function(){i.$el.css({transform:"",transition:"transform .2s cubic-bezier(0.550, 0.085, 0.680, 0.530), background-color 0s linear .2s"}),i.$anchor.css({overflow:"visible",transform:"",transition:"transform .2s"}),setTimeout((function(){i.$el.css({overflow:"hidden","background-color":r}),a.css({transform:"scale("+t+")",transition:"transform .2s cubic-bezier(0.550, 0.055, 0.675, 0.190)"}),i.$menu.children("li").children("a").css({opacity:1}),i._handleDocumentClickBound=i._handleDocumentClick.bind(i),window.addEventListener("scroll",i._handleCloseBound,!0),document.body.addEventListener("click",i._handleDocumentClickBound,!0)}),100)}),0)}},{key:"_animateOutToolbar",value:function(){var e=this,t=window.innerWidth,i=window.innerHeight,n=this.$el.find(".fab-backdrop"),s=this.$anchor.css("background-color");this.offsetX=this.btnLeft-t/2+this.btnWidth/2,this.offsetY=i-this.btnBottom,this.$el.removeClass("active"),this.$el.css({"background-color":"transparent",transition:"none"}),this.$anchor.css({transition:"none"}),n.css({transform:"scale(0)","background-color":s}),this.$menu.children("li").children("a").css({opacity:""}),setTimeout((function(){n.remove(),e.$el.css({"text-align":"",width:"",bottom:"",left:"",overflow:"","background-color":"",transform:"translate3d("+-e.offsetX+"px,0,0)"}),e.$anchor.css({overflow:"",transform:"translate3d(0,"+e.offsetY+"px,0)"}),setTimeout((function(){e.$el.css({transform:"translate3d(0,0,0)",transition:"transform .2s"}),e.$anchor.css({transform:"translate3d(0,0,0)",transition:"transform .2s cubic-bezier(0.550, 0.055, 0.675, 0.190)"})}),20)}),200)}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_FloatingActionButton}},{key:"defaults",get:function(){return i}}]),u}(u);M.FloatingActionButton=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"floatingActionButton","M_FloatingActionButton")}(cash,M.anime),function(e){"use strict";var t={autoClose:!1,format:"mmm dd, yyyy",parse:null,defaultDate:null,setDefaultDate:!1,disableWeekends:!1,disableDayFn:null,firstDay:0,minDate:null,maxDate:null,yearRange:10,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,container:null,showClearBtn:!1,i18n:{cancel:"Cancel",clear:"Clear",done:"Ok",previousMonth:"‹",nextMonth:"›",months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],weekdaysAbbrev:["S","M","T","W","T","F","S"]},events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));s.el.M_Datepicker=s,s.options=e.extend({},n.defaults,i),i&&i.hasOwnProperty("i18n")&&"object"==typeof i.i18n&&(s.options.i18n=e.extend({},n.defaults.i18n,i.i18n)),s.options.minDate&&s.options.minDate.setHours(0,0,0,0),s.options.maxDate&&s.options.maxDate.setHours(0,0,0,0),s.id=M.guid(),s._setupVariables(),s._insertHTMLIntoDOM(),s._setupModal(),s._setupEventHandlers(),s.options.defaultDate||(s.options.defaultDate=new Date(Date.parse(s.el.value)));var o=s.options.defaultDate;return n._isDate(o)?s.options.setDefaultDate?(s.setDate(o,!0),s.setInputValue()):s.gotoDate(o):s.gotoDate(new Date),s.isOpen=!1,s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.modal.destroy(),e(this.modalEl).remove(),this.destroySelects(),this.el.M_Datepicker=void 0}},{key:"destroySelects",value:function(){var e=this.calendarEl.querySelector(".orig-select-year");e&&M.FormSelect.getInstance(e).destroy();var t=this.calendarEl.querySelector(".orig-select-month");t&&M.FormSelect.getInstance(t).destroy()}},{key:"_insertHTMLIntoDOM",value:function(){this.options.showClearBtn&&(e(this.clearBtn).css({visibility:""}),this.clearBtn.innerHTML=this.options.i18n.clear),this.doneBtn.innerHTML=this.options.i18n.done,this.cancelBtn.innerHTML=this.options.i18n.cancel,this.options.container?this.$modalEl.appendTo(this.options.container):this.$modalEl.insertBefore(this.el)}},{key:"_setupModal",value:function(){var e=this;this.modalEl.id="modal-"+this.id,this.modal=M.Modal.init(this.modalEl,{onCloseEnd:function(){e.isOpen=!1}})}},{key:"toString",value:function(e){var t=this;return e=e||this.options.format,n._isDate(this.date)?e.split(/(d{1,4}|m{1,4}|y{4}|yy|!.)/g).map((function(e){return t.formats[e]?t.formats[e]():e})).join(""):""}},{key:"setDate",value:function(e,t){if(!e)return this.date=null,this._renderDateDisplay(),this.draw();if("string"==typeof e&&(e=new Date(Date.parse(e))),n._isDate(e)){var i=this.options.minDate,s=this.options.maxDate;n._isDate(i)&&e<i?e=i:n._isDate(s)&&e>s&&(e=s),this.date=new Date(e.getTime()),this._renderDateDisplay(),n._setToStartOfDay(this.date),this.gotoDate(this.date),t||"function"!=typeof this.options.onSelect||this.options.onSelect.call(this,this.date)}}},{key:"setInputValue",value:function(){this.el.value=this.toString(),this.$el.trigger("change",{firedBy:this})}},{key:"_renderDateDisplay",value:function(){var e=n._isDate(this.date)?this.date:new Date,t=this.options.i18n,i=t.weekdaysShort[e.getDay()],s=t.monthsShort[e.getMonth()],o=e.getDate();this.yearTextEl.innerHTML=e.getFullYear(),this.dateTextEl.innerHTML=i+", "+s+" "+o}},{key:"gotoDate",value:function(e){var t=!0;if(n._isDate(e)){if(this.calendars){var i=new Date(this.calendars[0].year,this.calendars[0].month,1),s=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),o=e.getTime();s.setMonth(s.getMonth()+1),s.setDate(s.getDate()-1),t=o<i.getTime()||s.getTime()<o}t&&(this.calendars=[{month:e.getMonth(),year:e.getFullYear()}]),this.adjustCalendars()}}},{key:"adjustCalendars",value:function(){this.calendars[0]=this.adjustCalendar(this.calendars[0]),this.draw()}},{key:"adjustCalendar",value:function(e){return e.month<0&&(e.year-=Math.ceil(Math.abs(e.month)/12),e.month+=12),e.month>11&&(e.year+=Math.floor(Math.abs(e.month)/12),e.month-=12),e}},{key:"nextMonth",value:function(){this.calendars[0].month++,this.adjustCalendars()}},{key:"prevMonth",value:function(){this.calendars[0].month--,this.adjustCalendars()}},{key:"render",value:function(e,t,i){var s=this.options,o=new Date,a=n._getDaysInMonth(e,t),r=new Date(e,t,1).getDay(),l=[],u=[];n._setToStartOfDay(o),s.firstDay>0&&(r-=s.firstDay)<0&&(r+=7);for(var d=0===t?11:t-1,c=11===t?0:t+1,h=0===t?e-1:e,p=11===t?e+1:e,v=n._getDaysInMonth(h,d),_=a+r,f=_;f>7;)f-=7;_+=7-f;for(var m=!1,y=0,g=0;y<_;y++){var b=new Date(e,t,y-r+1),k=!!n._isDate(this.date)&&n._compareDates(b,this.date),w=n._compareDates(b,o),x=-1!==s.events.indexOf(b.toDateString()),C=y<r||y>=a+r,E=y-r+1,M=t,j=e,O=s.startRange&&n._compareDates(s.startRange,b),T=s.endRange&&n._compareDates(s.endRange,b),L=s.startRange&&s.endRange&&s.startRange<b&&b<s.endRange;C&&(y<r?(E=v+E,M=d,j=h):(E-=a,M=c,j=p));var D={day:E,month:M,year:j,hasEvent:x,isSelected:k,isToday:w,isDisabled:s.minDate&&b<s.minDate||s.maxDate&&b>s.maxDate||s.disableWeekends&&n._isWeekend(b)||s.disableDayFn&&s.disableDayFn(b),isEmpty:C,isStartRange:O,isEndRange:T,isInRange:L,showDaysInNextAndPreviousMonths:s.showDaysInNextAndPreviousMonths};u.push(this.renderDay(D)),7==++g&&(l.push(this.renderRow(u,s.isRTL,m)),u=[],g=0,m=!1)}return this.renderTable(s,l,i)}},{key:"renderDay",value:function(e){var t=[],i="false";if(e.isEmpty){if(!e.showDaysInNextAndPreviousMonths)return'<td class="is-empty"></td>';t.push("is-outside-current-month"),t.push("is-selection-disabled")}return e.isDisabled&&t.push("is-disabled"),e.isToday&&t.push("is-today"),e.isSelected&&(t.push("is-selected"),i="true"),e.hasEvent&&t.push("has-event"),e.isInRange&&t.push("is-inrange"),e.isStartRange&&t.push("is-startrange"),e.isEndRange&&t.push("is-endrange"),'<td data-day="'+e.day+'" class="'+t.join(" ")+'" aria-selected="'+i+'"><button class="datepicker-day-button" type="button" data-year="'+e.year+'" data-month="'+e.month+'" data-day="'+e.day+'">'+e.day+"</button></td>"}},{key:"renderRow",value:function(e,t,i){return'<tr class="datepicker-row'+(i?" is-selected":"")+'">'+(t?e.reverse():e).join("")+"</tr>"}},{key:"renderTable",value:function(e,t,i){return'<div class="datepicker-table-wrapper"><table cellpadding="0" cellspacing="0" class="datepicker-table" role="grid" aria-labelledby="'+i+'">'+this.renderHead(e)+this.renderBody(t)+"</table></div>"}},{key:"renderHead",value:function(e){var t=void 0,i=[];for(t=0;t<7;t++)i.push('<th scope="col"><abbr title="'+this.renderDayName(e,t)+'">'+this.renderDayName(e,t,!0)+"</abbr></th>");return"<thead><tr>"+(e.isRTL?i.reverse():i).join("")+"</tr></thead>"}},{key:"renderBody",value:function(e){return"<tbody>"+e.join("")+"</tbody>"}},{key:"renderTitle",value:function(t,i,n,s,o,a){var r,l,u=void 0,d=void 0,c=void 0,h=this.options,p=n===h.minYear,v=n===h.maxYear,_='<div id="'+a+'" class="datepicker-controls" role="heading" aria-live="assertive">',f=!0,m=!0;for(c=[],u=0;u<12;u++)c.push('<option value="'+(n===o?u-i:12+u-i)+'"'+(u===s?' selected="selected"':"")+(p&&u<h.minMonth||v&&u>h.maxMonth?'disabled="disabled"':"")+">"+h.i18n.months[u]+"</option>");for(r='<select class="datepicker-select orig-select-month" tabindex="-1">'+c.join("")+"</select>",e.isArray(h.yearRange)?(u=h.yearRange[0],d=h.yearRange[1]+1):(u=n-h.yearRange,d=1+n+h.yearRange),c=[];u<d&&u<=h.maxYear;u++)u>=h.minYear&&c.push('<option value="'+u+'" '+(u===n?'selected="selected"':"")+">"+u+"</option>");l='<select class="datepicker-select orig-select-year" tabindex="-1">'+c.join("")+"</select>";_+='<button class="month-prev'+(f?"":" is-disabled")+'" type="button"><svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"/><path d="M0-.5h24v24H0z" fill="none"/></svg></button>',_+='<div class="selects-container">',h.showMonthAfterYear?_+=l+r:_+=r+l,_+="</div>",p&&(0===s||h.minMonth>=s)&&(f=!1),v&&(11===s||h.maxMonth<=s)&&(m=!1);return(_+='<button class="month-next'+(m?"":" is-disabled")+'" type="button"><svg fill="#000000" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"/><path d="M0-.25h24v24H0z" fill="none"/></svg></button>')+"</div>"}},{key:"draw",value:function(e){if(this.isOpen||e){var t,i=this.options,n=i.minYear,s=i.maxYear,o=i.minMonth,a=i.maxMonth,r="";this._y<=n&&(this._y=n,!isNaN(o)&&this._m<o&&(this._m=o)),this._y>=s&&(this._y=s,!isNaN(a)&&this._m>a&&(this._m=a)),t="datepicker-title-"+Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,2);for(var l=0;l<1;l++)this._renderDateDisplay(),r+=this.renderTitle(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,t)+this.render(this.calendars[l].year,this.calendars[l].month,t);this.destroySelects(),this.calendarEl.innerHTML=r;var u=this.calendarEl.querySelector(".orig-select-year"),d=this.calendarEl.querySelector(".orig-select-month");M.FormSelect.init(u,{classes:"select-year",dropdownOptions:{container:document.body,constrainWidth:!1}}),M.FormSelect.init(d,{classes:"select-month",dropdownOptions:{container:document.body,constrainWidth:!1}}),u.addEventListener("change",this._handleYearChange.bind(this)),d.addEventListener("change",this._handleMonthChange.bind(this)),"function"==typeof this.options.onDraw&&this.options.onDraw(this)}}},{key:"_setupEventHandlers",value:function(){this._handleInputKeydownBound=this._handleInputKeydown.bind(this),this._handleInputClickBound=this._handleInputClick.bind(this),this._handleInputChangeBound=this._handleInputChange.bind(this),this._handleCalendarClickBound=this._handleCalendarClick.bind(this),this._finishSelectionBound=this._finishSelection.bind(this),this._handleMonthChange=this._handleMonthChange.bind(this),this._closeBound=this.close.bind(this),this.el.addEventListener("click",this._handleInputClickBound),this.el.addEventListener("keydown",this._handleInputKeydownBound),this.el.addEventListener("change",this._handleInputChangeBound),this.calendarEl.addEventListener("click",this._handleCalendarClickBound),this.doneBtn.addEventListener("click",this._finishSelectionBound),this.cancelBtn.addEventListener("click",this._closeBound),this.options.showClearBtn&&(this._handleClearClickBound=this._handleClearClick.bind(this),this.clearBtn.addEventListener("click",this._handleClearClickBound))}},{key:"_setupVariables",value:function(){var t=this;this.$modalEl=e(n._template),this.modalEl=this.$modalEl[0],this.calendarEl=this.modalEl.querySelector(".datepicker-calendar"),this.yearTextEl=this.modalEl.querySelector(".year-text"),this.dateTextEl=this.modalEl.querySelector(".date-text"),this.options.showClearBtn&&(this.clearBtn=this.modalEl.querySelector(".datepicker-clear")),this.doneBtn=this.modalEl.querySelector(".datepicker-done"),this.cancelBtn=this.modalEl.querySelector(".datepicker-cancel"),this.formats={d:function(){return t.date.getDate()},dd:function(){var e=t.date.getDate();return(e<10?"0":"")+e},ddd:function(){return t.options.i18n.weekdaysShort[t.date.getDay()]},dddd:function(){return t.options.i18n.weekdays[t.date.getDay()]},m:function(){return t.date.getMonth()+1},mm:function(){var e=t.date.getMonth()+1;return(e<10?"0":"")+e},mmm:function(){return t.options.i18n.monthsShort[t.date.getMonth()]},mmmm:function(){return t.options.i18n.months[t.date.getMonth()]},yy:function(){return(""+t.date.getFullYear()).slice(2)},yyyy:function(){return t.date.getFullYear()}}}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleInputClickBound),this.el.removeEventListener("keydown",this._handleInputKeydownBound),this.el.removeEventListener("change",this._handleInputChangeBound),this.calendarEl.removeEventListener("click",this._handleCalendarClickBound)}},{key:"_handleInputClick",value:function(){this.open()}},{key:"_handleInputKeydown",value:function(e){e.which===M.keys.ENTER&&(e.preventDefault(),this.open())}},{key:"_handleCalendarClick",value:function(t){if(this.isOpen){var i=e(t.target);i.hasClass("is-disabled")||(!i.hasClass("datepicker-day-button")||i.hasClass("is-empty")||i.parent().hasClass("is-disabled")?i.closest(".month-prev").length?this.prevMonth():i.closest(".month-next").length&&this.nextMonth():(this.setDate(new Date(t.target.getAttribute("data-year"),t.target.getAttribute("data-month"),t.target.getAttribute("data-day"))),this.options.autoClose&&this._finishSelection()))}}},{key:"_handleClearClick",value:function(){this.date=null,this.setInputValue(),this.close()}},{key:"_handleMonthChange",value:function(e){this.gotoMonth(e.target.value)}},{key:"_handleYearChange",value:function(e){this.gotoYear(e.target.value)}},{key:"gotoMonth",value:function(e){isNaN(e)||(this.calendars[0].month=parseInt(e,10),this.adjustCalendars())}},{key:"gotoYear",value:function(e){isNaN(e)||(this.calendars[0].year=parseInt(e,10),this.adjustCalendars())}},{key:"_handleInputChange",value:function(e){var t=void 0;e.firedBy!==this&&(t=this.options.parse?this.options.parse(this.el.value,this.options.format):new Date(Date.parse(this.el.value)),n._isDate(t)&&this.setDate(t))}},{key:"renderDayName",value:function(e,t,i){for(t+=e.firstDay;t>=7;)t-=7;return i?e.i18n.weekdaysAbbrev[t]:e.i18n.weekdays[t]}},{key:"_finishSelection",value:function(){this.setInputValue(),this.close()}},{key:"open",value:function(){if(!this.isOpen)return this.isOpen=!0,"function"==typeof this.options.onOpen&&this.options.onOpen.call(this),this.draw(),this.modal.open(),this}},{key:"close",value:function(){if(this.isOpen)return this.isOpen=!1,"function"==typeof this.options.onClose&&this.options.onClose.call(this),this.modal.close(),this}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"_isDate",value:function(e){return/Date/.test(Object.prototype.toString.call(e))&&!isNaN(e.getTime())}},{key:"_isWeekend",value:function(e){var t=e.getDay();return 0===t||6===t}},{key:"_setToStartOfDay",value:function(e){n._isDate(e)&&e.setHours(0,0,0,0)}},{key:"_getDaysInMonth",value:function(e,t){return[31,n._isLeapYear(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]}},{key:"_isLeapYear",value:function(e){return e%4==0&&e%100!=0||e%400==0}},{key:"_compareDates",value:function(e,t){return e.getTime()===t.getTime()}},{key:"_setToStartOfDay",value:function(e){n._isDate(e)&&e.setHours(0,0,0,0)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Datepicker}},{key:"defaults",get:function(){return t}}]),n}(u);i._template=['<div class= "modal datepicker-modal">','<div class="modal-content datepicker-container">','<div class="datepicker-date-display">','<span class="year-text"></span>','<span class="date-text"></span>',"</div>",'<div class="datepicker-calendar-container">','<div class="datepicker-calendar"></div>','<div class="datepicker-footer">','<button class="btn-flat datepicker-clear waves-effect" style="visibility: hidden;" type="button"></button>','<div class="confirmation-btns">','<button class="btn-flat datepicker-cancel waves-effect" type="button"></button>','<button class="btn-flat datepicker-done waves-effect" type="button"></button>',"</div>","</div>","</div>","</div>","</div>"].join(""),M.Datepicker=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"datepicker","M_Datepicker")}(cash),function(e){"use strict";var t={dialRadius:135,outerRadius:105,innerRadius:70,tickRadius:20,duration:350,container:null,defaultTime:"now",fromNow:0,showClearBtn:!1,i18n:{cancel:"Cancel",clear:"Clear",done:"Ok"},autoClose:!1,twelveHour:!0,vibrate:!0,onOpenStart:null,onOpenEnd:null,onCloseStart:null,onCloseEnd:null,onSelect:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Timepicker=s,s.options=e.extend({},n.defaults,i),s.id=M.guid(),s._insertHTMLIntoDOM(),s._setupModal(),s._setupVariables(),s._setupEventHandlers(),s._clockSetup(),s._pickerSetup(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.modal.destroy(),e(this.modalEl).remove(),this.el.M_Timepicker=void 0}},{key:"_setupEventHandlers",value:function(){this._handleInputKeydownBound=this._handleInputKeydown.bind(this),this._handleInputClickBound=this._handleInputClick.bind(this),this._handleClockClickStartBound=this._handleClockClickStart.bind(this),this._handleDocumentClickMoveBound=this._handleDocumentClickMove.bind(this),this._handleDocumentClickEndBound=this._handleDocumentClickEnd.bind(this),this.el.addEventListener("click",this._handleInputClickBound),this.el.addEventListener("keydown",this._handleInputKeydownBound),this.plate.addEventListener("mousedown",this._handleClockClickStartBound),this.plate.addEventListener("touchstart",this._handleClockClickStartBound),e(this.spanHours).on("click",this.showView.bind(this,"hours")),e(this.spanMinutes).on("click",this.showView.bind(this,"minutes"))}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleInputClickBound),this.el.removeEventListener("keydown",this._handleInputKeydownBound)}},{key:"_handleInputClick",value:function(){this.open()}},{key:"_handleInputKeydown",value:function(e){e.which===M.keys.ENTER&&(e.preventDefault(),this.open())}},{key:"_handleClockClickStart",value:function(e){e.preventDefault();var t=this.plate.getBoundingClientRect(),i=t.left,s=t.top;this.x0=i+this.options.dialRadius,this.y0=s+this.options.dialRadius,this.moved=!1;var o=n._Pos(e);this.dx=o.x-this.x0,this.dy=o.y-this.y0,this.setHand(this.dx,this.dy,!1),document.addEventListener("mousemove",this._handleDocumentClickMoveBound),document.addEventListener("touchmove",this._handleDocumentClickMoveBound),document.addEventListener("mouseup",this._handleDocumentClickEndBound),document.addEventListener("touchend",this._handleDocumentClickEndBound)}},{key:"_handleDocumentClickMove",value:function(e){e.preventDefault();var t=n._Pos(e),i=t.x-this.x0,s=t.y-this.y0;this.moved=!0,this.setHand(i,s,!1,!0)}},{key:"_handleDocumentClickEnd",value:function(t){var i=this;t.preventDefault(),document.removeEventListener("mouseup",this._handleDocumentClickEndBound),document.removeEventListener("touchend",this._handleDocumentClickEndBound);var s=n._Pos(t),o=s.x-this.x0,a=s.y-this.y0;this.moved&&o===this.dx&&a===this.dy&&this.setHand(o,a),"hours"===this.currentView?this.showView("minutes",this.options.duration/2):this.options.autoClose&&(e(this.minutesView).addClass("timepicker-dial-out"),setTimeout((function(){i.done()}),this.options.duration/2)),"function"==typeof this.options.onSelect&&this.options.onSelect.call(this,this.hours,this.minutes),document.removeEventListener("mousemove",this._handleDocumentClickMoveBound),document.removeEventListener("touchmove",this._handleDocumentClickMoveBound)}},{key:"_insertHTMLIntoDOM",value:function(){this.$modalEl=e(n._template),this.modalEl=this.$modalEl[0],this.modalEl.id="modal-"+this.id;var t=document.querySelector(this.options.container);this.options.container&&t?this.$modalEl.appendTo(t):this.$modalEl.insertBefore(this.el)}},{key:"_setupModal",value:function(){var e=this;this.modal=M.Modal.init(this.modalEl,{onOpenStart:this.options.onOpenStart,onOpenEnd:this.options.onOpenEnd,onCloseStart:this.options.onCloseStart,onCloseEnd:function(){"function"==typeof e.options.onCloseEnd&&e.options.onCloseEnd.call(e),e.isOpen=!1}})}},{key:"_setupVariables",value:function(){this.currentView="hours",this.vibrate=navigator.vibrate?"vibrate":navigator.webkitVibrate?"webkitVibrate":null,this._canvas=this.modalEl.querySelector(".timepicker-canvas"),this.plate=this.modalEl.querySelector(".timepicker-plate"),this.hoursView=this.modalEl.querySelector(".timepicker-hours"),this.minutesView=this.modalEl.querySelector(".timepicker-minutes"),this.spanHours=this.modalEl.querySelector(".timepicker-span-hours"),this.spanMinutes=this.modalEl.querySelector(".timepicker-span-minutes"),this.spanAmPm=this.modalEl.querySelector(".timepicker-span-am-pm"),this.footer=this.modalEl.querySelector(".timepicker-footer"),this.amOrPm="PM"}},{key:"_pickerSetup",value:function(){var t=e('<button class="btn-flat timepicker-clear waves-effect" style="visibility: hidden;" type="button" tabindex="'+(this.options.twelveHour?"3":"1")+'">'+this.options.i18n.clear+"</button>").appendTo(this.footer).on("click",this.clear.bind(this));this.options.showClearBtn&&t.css({visibility:""});var i=e('<div class="confirmation-btns"></div>');e('<button class="btn-flat timepicker-close waves-effect" type="button" tabindex="'+(this.options.twelveHour?"3":"1")+'">'+this.options.i18n.cancel+"</button>").appendTo(i).on("click",this.close.bind(this)),e('<button class="btn-flat timepicker-close waves-effect" type="button" tabindex="'+(this.options.twelveHour?"3":"1")+'">'+this.options.i18n.done+"</button>").appendTo(i).on("click",this.done.bind(this)),i.appendTo(this.footer)}},{key:"_clockSetup",value:function(){this.options.twelveHour&&(this.$amBtn=e('<div class="am-btn">AM</div>'),this.$pmBtn=e('<div class="pm-btn">PM</div>'),this.$amBtn.on("click",this._handleAmPmClick.bind(this)).appendTo(this.spanAmPm),this.$pmBtn.on("click",this._handleAmPmClick.bind(this)).appendTo(this.spanAmPm)),this._buildHoursView(),this._buildMinutesView(),this._buildSVGClock()}},{key:"_buildSVGClock",value:function(){var e=this.options.dialRadius,t=this.options.tickRadius,i=2*e,s=n._createSVGEl("svg");s.setAttribute("class","timepicker-svg"),s.setAttribute("width",i),s.setAttribute("height",i);var o=n._createSVGEl("g");o.setAttribute("transform","translate("+e+","+e+")");var a=n._createSVGEl("circle");a.setAttribute("class","timepicker-canvas-bearing"),a.setAttribute("cx",0),a.setAttribute("cy",0),a.setAttribute("r",4);var r=n._createSVGEl("line");r.setAttribute("x1",0),r.setAttribute("y1",0);var l=n._createSVGEl("circle");l.setAttribute("class","timepicker-canvas-bg"),l.setAttribute("r",t),o.appendChild(r),o.appendChild(l),o.appendChild(a),s.appendChild(o),this._canvas.appendChild(s),this.hand=r,this.bg=l,this.bearing=a,this.g=o}},{key:"_buildHoursView",value:function(){var t=e('<div class="timepicker-tick"></div>');if(this.options.twelveHour)for(var i=1;i<13;i+=1){var n=t.clone(),s=i/6*Math.PI,o=this.options.outerRadius;n.css({left:this.options.dialRadius+Math.sin(s)*o-this.options.tickRadius+"px",top:this.options.dialRadius-Math.cos(s)*o-this.options.tickRadius+"px"}),n.html(0===i?"00":i),this.hoursView.appendChild(n[0])}else for(var a=0;a<24;a+=1){var r=t.clone(),l=a/6*Math.PI,u=a>0&&a<13?this.options.innerRadius:this.options.outerRadius;r.css({left:this.options.dialRadius+Math.sin(l)*u-this.options.tickRadius+"px",top:this.options.dialRadius-Math.cos(l)*u-this.options.tickRadius+"px"}),r.html(0===a?"00":a),this.hoursView.appendChild(r[0])}}},{key:"_buildMinutesView",value:function(){for(var t=e('<div class="timepicker-tick"></div>'),i=0;i<60;i+=5){var s=t.clone(),o=i/30*Math.PI;s.css({left:this.options.dialRadius+Math.sin(o)*this.options.outerRadius-this.options.tickRadius+"px",top:this.options.dialRadius-Math.cos(o)*this.options.outerRadius-this.options.tickRadius+"px"}),s.html(n._addLeadingZero(i)),this.minutesView.appendChild(s[0])}}},{key:"_handleAmPmClick",value:function(t){var i=e(t.target);this.amOrPm=i.hasClass("am-btn")?"AM":"PM",this._updateAmPmView()}},{key:"_updateAmPmView",value:function(){this.options.twelveHour&&(this.$amBtn.toggleClass("text-primary","AM"===this.amOrPm),this.$pmBtn.toggleClass("text-primary","PM"===this.amOrPm))}},{key:"_updateTimeFromInput",value:function(){var e=((this.el.value||this.options.defaultTime||"")+"").split(":");if(this.options.twelveHour&&void 0!==e[1]&&(e[1].toUpperCase().indexOf("AM")>0?this.amOrPm="AM":this.amOrPm="PM",e[1]=e[1].replace("AM","").replace("PM","")),"now"===e[0]){var t=new Date(+new Date+this.options.fromNow);e=[t.getHours(),t.getMinutes()],this.options.twelveHour&&(this.amOrPm=e[0]>=12&&e[0]<24?"PM":"AM")}this.hours=+e[0]||0,this.minutes=+e[1]||0,this.spanHours.innerHTML=this.hours,this.spanMinutes.innerHTML=n._addLeadingZero(this.minutes),this._updateAmPmView()}},{key:"showView",value:function(t,i){"minutes"===t&&e(this.hoursView).css("visibility");var n="hours"===t,s=n?this.hoursView:this.minutesView,o=n?this.minutesView:this.hoursView;this.currentView=t,e(this.spanHours).toggleClass("text-primary",n),e(this.spanMinutes).toggleClass("text-primary",!n),o.classList.add("timepicker-dial-out"),e(s).css("visibility","visible").removeClass("timepicker-dial-out"),this.resetClock(i),clearTimeout(this.toggleViewTimer),this.toggleViewTimer=setTimeout((function(){e(o).css("visibility","hidden")}),this.options.duration)}},{key:"resetClock",value:function(t){var i=this.currentView,n=this[i],s="hours"===i,o=n*(Math.PI/(s?6:30)),a=s&&n>0&&n<13?this.options.innerRadius:this.options.outerRadius,r=Math.sin(o)*a,l=-Math.cos(o)*a,u=this;t?(e(this.canvas).addClass("timepicker-canvas-out"),setTimeout((function(){e(u.canvas).removeClass("timepicker-canvas-out"),u.setHand(r,l)}),t)):this.setHand(r,l)}},{key:"setHand",value:function(e,t,i){var s=this,o=Math.atan2(e,-t),a="hours"===this.currentView,r=Math.PI/(a||i?6:30),l=Math.sqrt(e*e+t*t),u=a&&l<(this.options.outerRadius+this.options.innerRadius)/2,d=u?this.options.innerRadius:this.options.outerRadius;this.options.twelveHour&&(d=this.options.outerRadius),o<0&&(o=2*Math.PI+o);var c=Math.round(o/r);o=c*r,this.options.twelveHour?a?0===c&&(c=12):(i&&(c*=5),60===c&&(c=0)):a?(12===c&&(c=0),c=u?0===c?12:c:0===c?0:c+12):(i&&(c*=5),60===c&&(c=0)),this[this.currentView]!==c&&this.vibrate&&this.options.vibrate&&(this.vibrateTimer||(navigator[this.vibrate](10),this.vibrateTimer=setTimeout((function(){s.vibrateTimer=null}),100))),this[this.currentView]=c,a?this.spanHours.innerHTML=c:this.spanMinutes.innerHTML=n._addLeadingZero(c);var h=Math.sin(o)*(d-this.options.tickRadius),p=-Math.cos(o)*(d-this.options.tickRadius),v=Math.sin(o)*d,_=-Math.cos(o)*d;this.hand.setAttribute("x2",h),this.hand.setAttribute("y2",p),this.bg.setAttribute("cx",v),this.bg.setAttribute("cy",_)}},{key:"open",value:function(){this.isOpen||(this.isOpen=!0,this._updateTimeFromInput(),this.showView("hours"),this.modal.open())}},{key:"close",value:function(){this.isOpen&&(this.isOpen=!1,this.modal.close())}},{key:"done",value:function(e,t){var i=this.el.value,s=t?"":n._addLeadingZero(this.hours)+":"+n._addLeadingZero(this.minutes);this.time=s,!t&&this.options.twelveHour&&(s=s+" "+this.amOrPm),this.el.value=s,s!==i&&this.$el.trigger("change"),this.close(),this.el.focus()}},{key:"clear",value:function(){this.done(null,!0)}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"_addLeadingZero",value:function(e){return(e<10?"0":"")+e}},{key:"_createSVGEl",value:function(e){return document.createElementNS("http://www.w3.org/2000/svg",e)}},{key:"_Pos",value:function(e){return e.targetTouches&&e.targetTouches.length>=1?{x:e.targetTouches[0].clientX,y:e.targetTouches[0].clientY}:{x:e.clientX,y:e.clientY}}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Timepicker}},{key:"defaults",get:function(){return t}}]),n}(u);i._template=['<div class= "modal timepicker-modal">','<div class="modal-content timepicker-container">','<div class="timepicker-digital-display">','<div class="timepicker-text-container">','<div class="timepicker-display-column">','<span class="timepicker-span-hours text-primary"></span>',":",'<span class="timepicker-span-minutes"></span>',"</div>",'<div class="timepicker-display-column timepicker-display-am-pm">','<div class="timepicker-span-am-pm"></div>',"</div>","</div>","</div>",'<div class="timepicker-analog-display">','<div class="timepicker-plate">','<div class="timepicker-canvas"></div>','<div class="timepicker-dial timepicker-hours"></div>','<div class="timepicker-dial timepicker-minutes timepicker-dial-out"></div>',"</div>",'<div class="timepicker-footer"></div>',"</div>","</div>","</div>"].join(""),M.Timepicker=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"timepicker","M_Timepicker")}(cash),function(e){"use strict";var t={},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_CharacterCounter=s,s.options=e.extend({},n.defaults,i),s.isInvalid=!1,s.isValidLength=!1,s._setupCounter(),s._setupEventHandlers(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.CharacterCounter=void 0,this._removeCounter()}},{key:"_setupEventHandlers",value:function(){this._handleUpdateCounterBound=this.updateCounter.bind(this),this.el.addEventListener("focus",this._handleUpdateCounterBound,!0),this.el.addEventListener("input",this._handleUpdateCounterBound,!0)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("focus",this._handleUpdateCounterBound,!0),this.el.removeEventListener("input",this._handleUpdateCounterBound,!0)}},{key:"_setupCounter",value:function(){this.counterEl=document.createElement("span"),e(this.counterEl).addClass("character-counter").css({float:"right","font-size":"12px",height:1}),this.$el.parent().append(this.counterEl)}},{key:"_removeCounter",value:function(){e(this.counterEl).remove()}},{key:"updateCounter",value:function(){var t=+this.$el.attr("data-length"),i=this.el.value.length;this.isValidLength=i<=t;var n=i;t&&(n+="/"+t,this._validateInput()),e(this.counterEl).html(n)}},{key:"_validateInput",value:function(){this.isValidLength&&this.isInvalid?(this.isInvalid=!1,this.$el.removeClass("invalid")):this.isValidLength||this.isInvalid||(this.isInvalid=!0,this.$el.removeClass("valid"),this.$el.addClass("invalid"))}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_CharacterCounter}},{key:"defaults",get:function(){return t}}]),n}(u);M.CharacterCounter=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"characterCounter","M_CharacterCounter")}(cash),function(e){"use strict";var t={duration:200,dist:-100,shift:0,padding:0,numVisible:5,fullWidth:!1,indicators:!1,noWrap:!1,onCycleTo:null},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_Carousel=s,s.options=e.extend({},n.defaults,i),s.hasMultipleSlides=s.$el.find(".carousel-item").length>1,s.showIndicators=s.options.indicators&&s.hasMultipleSlides,s.noWrap=s.options.noWrap||!s.hasMultipleSlides,s.pressed=!1,s.dragged=!1,s.offset=s.target=0,s.images=[],s.itemWidth=s.$el.find(".carousel-item").first().innerWidth(),s.itemHeight=s.$el.find(".carousel-item").first().innerHeight(),s.dim=2*s.itemWidth+s.options.padding||1,s._autoScrollBound=s._autoScroll.bind(s),s._trackBound=s._track.bind(s),s.options.fullWidth&&(s.options.dist=0,s._setCarouselHeight(),s.showIndicators&&s.$el.find(".carousel-fixed-item").addClass("with-indicators")),s.$indicators=e('<ul class="indicators"></ul>'),s.$el.find(".carousel-item").each((function(t,i){if(s.images.push(t),s.showIndicators){var n=e('<li class="indicator-item"></li>');0===i&&n[0].classList.add("active"),s.$indicators.append(n)}})),s.showIndicators&&s.$el.append(s.$indicators),s.count=s.images.length,s.options.numVisible=Math.min(s.count,s.options.numVisible),s.xform="transform",["webkit","Moz","O","ms"].every((function(e){var t=e+"Transform";return void 0===document.body.style[t]||(s.xform=t,!1)})),s._setupEventHandlers(),s._scroll(s.offset),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.M_Carousel=void 0}},{key:"_setupEventHandlers",value:function(){var e=this;this._handleCarouselTapBound=this._handleCarouselTap.bind(this),this._handleCarouselDragBound=this._handleCarouselDrag.bind(this),this._handleCarouselReleaseBound=this._handleCarouselRelease.bind(this),this._handleCarouselClickBound=this._handleCarouselClick.bind(this),void 0!==window.ontouchstart&&(this.el.addEventListener("touchstart",this._handleCarouselTapBound),this.el.addEventListener("touchmove",this._handleCarouselDragBound),this.el.addEventListener("touchend",this._handleCarouselReleaseBound)),this.el.addEventListener("mousedown",this._handleCarouselTapBound),this.el.addEventListener("mousemove",this._handleCarouselDragBound),this.el.addEventListener("mouseup",this._handleCarouselReleaseBound),this.el.addEventListener("mouseleave",this._handleCarouselReleaseBound),this.el.addEventListener("click",this._handleCarouselClickBound),this.showIndicators&&this.$indicators&&(this._handleIndicatorClickBound=this._handleIndicatorClick.bind(this),this.$indicators.find(".indicator-item").each((function(t,i){t.addEventListener("click",e._handleIndicatorClickBound)})));var t=M.throttle(this._handleResize,200);this._handleThrottledResizeBound=t.bind(this),window.addEventListener("resize",this._handleThrottledResizeBound)}},{key:"_removeEventHandlers",value:function(){var e=this;void 0!==window.ontouchstart&&(this.el.removeEventListener("touchstart",this._handleCarouselTapBound),this.el.removeEventListener("touchmove",this._handleCarouselDragBound),this.el.removeEventListener("touchend",this._handleCarouselReleaseBound)),this.el.removeEventListener("mousedown",this._handleCarouselTapBound),this.el.removeEventListener("mousemove",this._handleCarouselDragBound),this.el.removeEventListener("mouseup",this._handleCarouselReleaseBound),this.el.removeEventListener("mouseleave",this._handleCarouselReleaseBound),this.el.removeEventListener("click",this._handleCarouselClickBound),this.showIndicators&&this.$indicators&&this.$indicators.find(".indicator-item").each((function(t,i){t.removeEventListener("click",e._handleIndicatorClickBound)})),window.removeEventListener("resize",this._handleThrottledResizeBound)}},{key:"_handleCarouselTap",value:function(t){"mousedown"===t.type&&e(t.target).is("img")&&t.preventDefault(),this.pressed=!0,this.dragged=!1,this.verticalDragged=!1,this.reference=this._xpos(t),this.referenceY=this._ypos(t),this.velocity=this.amplitude=0,this.frame=this.offset,this.timestamp=Date.now(),clearInterval(this.ticker),this.ticker=setInterval(this._trackBound,100)}},{key:"_handleCarouselDrag",value:function(e){var t=void 0,i=void 0,n=void 0;if(this.pressed)if(t=this._xpos(e),i=this._ypos(e),n=this.reference-t,Math.abs(this.referenceY-i)<30&&!this.verticalDragged)(n>2||n<-2)&&(this.dragged=!0,this.reference=t,this._scroll(this.offset+n));else{if(this.dragged)return e.preventDefault(),e.stopPropagation(),!1;this.verticalDragged=!0}if(this.dragged)return e.preventDefault(),e.stopPropagation(),!1}},{key:"_handleCarouselRelease",value:function(e){if(this.pressed)return this.pressed=!1,clearInterval(this.ticker),this.target=this.offset,(this.velocity>10||this.velocity<-10)&&(this.amplitude=.9*this.velocity,this.target=this.offset+this.amplitude),this.target=Math.round(this.target/this.dim)*this.dim,this.noWrap&&(this.target>=this.dim*(this.count-1)?this.target=this.dim*(this.count-1):this.target<0&&(this.target=0)),this.amplitude=this.target-this.offset,this.timestamp=Date.now(),requestAnimationFrame(this._autoScrollBound),this.dragged&&(e.preventDefault(),e.stopPropagation()),!1}},{key:"_handleCarouselClick",value:function(t){if(this.dragged)return t.preventDefault(),t.stopPropagation(),!1;if(!this.options.fullWidth){var i=e(t.target).closest(".carousel-item").index();0!==this._wrap(this.center)-i&&(t.preventDefault(),t.stopPropagation()),this._cycleTo(i)}}},{key:"_handleIndicatorClick",value:function(t){t.stopPropagation();var i=e(t.target).closest(".indicator-item");i.length&&this._cycleTo(i.index())}},{key:"_handleResize",value:function(e){this.options.fullWidth?(this.itemWidth=this.$el.find(".carousel-item").first().innerWidth(),this.imageHeight=this.$el.find(".carousel-item.active").height(),this.dim=2*this.itemWidth+this.options.padding,this.offset=2*this.center*this.itemWidth,this.target=this.offset,this._setCarouselHeight(!0)):this._scroll()}},{key:"_setCarouselHeight",value:function(e){var t=this,i=this.$el.find(".carousel-item.active").length?this.$el.find(".carousel-item.active").first():this.$el.find(".carousel-item").first(),n=i.find("img").first();if(n.length)if(n[0].complete){var s=n.height();if(s>0)this.$el.css("height",s+"px");else{var o=n[0].naturalWidth,a=n[0].naturalHeight,r=this.$el.width()/o*a;this.$el.css("height",r+"px")}}else n.one("load",(function(e,i){t.$el.css("height",e.offsetHeight+"px")}));else if(!e){var l=i.height();this.$el.css("height",l+"px")}}},{key:"_xpos",value:function(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientX:e.clientX}},{key:"_ypos",value:function(e){return e.targetTouches&&e.targetTouches.length>=1?e.targetTouches[0].clientY:e.clientY}},{key:"_wrap",value:function(e){return e>=this.count?e%this.count:e<0?this._wrap(this.count+e%this.count):e}},{key:"_track",value:function(){var e,t,i,n;t=(e=Date.now())-this.timestamp,this.timestamp=e,i=this.offset-this.frame,this.frame=this.offset,n=1e3*i/(1+t),this.velocity=.8*n+.2*this.velocity}},{key:"_autoScroll",value:function(){var e=void 0,t=void 0;this.amplitude&&(e=Date.now()-this.timestamp,(t=this.amplitude*Math.exp(-e/this.options.duration))>2||t<-2?(this._scroll(this.target-t),requestAnimationFrame(this._autoScrollBound)):this._scroll(this.target))}},{key:"_scroll",value:function(t){var i=this;this.$el.hasClass("scrolling")||this.el.classList.add("scrolling"),null!=this.scrollingTimeout&&window.clearTimeout(this.scrollingTimeout),this.scrollingTimeout=window.setTimeout((function(){i.$el.removeClass("scrolling")}),this.options.duration);var n,s,o,a,r=void 0,l=void 0,u=void 0,d=void 0,c=void 0,h=void 0,p=this.center,v=1/this.options.numVisible;if(this.offset="number"==typeof t?t:this.offset,this.center=Math.floor((this.offset+this.dim/2)/this.dim),a=-(o=(s=this.offset-this.center*this.dim)<0?1:-1)*s*2/this.dim,n=this.count>>1,this.options.fullWidth?(u="translateX(0)",h=1):(u="translateX("+(this.el.clientWidth-this.itemWidth)/2+"px) ",u+="translateY("+(this.el.clientHeight-this.itemHeight)/2+"px)",h=1-v*a),this.showIndicators){var _=this.center%this.count,f=this.$indicators.find(".indicator-item.active");f.index()!==_&&(f.removeClass("active"),this.$indicators.find(".indicator-item").eq(_)[0].classList.add("active"))}if(!this.noWrap||this.center>=0&&this.center<this.count){l=this.images[this._wrap(this.center)],e(l).hasClass("active")||(this.$el.find(".carousel-item").removeClass("active"),l.classList.add("active"));var m=u+" translateX("+-s/2+"px) translateX("+o*this.options.shift*a*r+"px) translateZ("+this.options.dist*a+"px)";this._updateItemStyle(l,h,0,m)}for(r=1;r<=n;++r){if(this.options.fullWidth?(d=this.options.dist,c=r===n&&s<0?1-a:1):(d=this.options.dist*(2*r+a*o),c=1-v*(2*r+a*o)),!this.noWrap||this.center+r<this.count){l=this.images[this._wrap(this.center+r)];var y=u+" translateX("+(this.options.shift+(this.dim*r-s)/2)+"px) translateZ("+d+"px)";this._updateItemStyle(l,c,-r,y)}if(this.options.fullWidth?(d=this.options.dist,c=r===n&&s>0?1-a:1):(d=this.options.dist*(2*r-a*o),c=1-v*(2*r-a*o)),!this.noWrap||this.center-r>=0){l=this.images[this._wrap(this.center-r)];var g=u+" translateX("+(-this.options.shift+(-this.dim*r-s)/2)+"px) translateZ("+d+"px)";this._updateItemStyle(l,c,-r,g)}}if(!this.noWrap||this.center>=0&&this.center<this.count){l=this.images[this._wrap(this.center)];var b=u+" translateX("+-s/2+"px) translateX("+o*this.options.shift*a+"px) translateZ("+this.options.dist*a+"px)";this._updateItemStyle(l,h,0,b)}var k=this.$el.find(".carousel-item").eq(this._wrap(this.center));p!==this.center&&"function"==typeof this.options.onCycleTo&&this.options.onCycleTo.call(this,k[0],this.dragged),"function"==typeof this.oneTimeCallback&&(this.oneTimeCallback.call(this,k[0],this.dragged),this.oneTimeCallback=null)}},{key:"_updateItemStyle",value:function(e,t,i,n){e.style[this.xform]=n,e.style.zIndex=i,e.style.opacity=t,e.style.visibility="visible"}},{key:"_cycleTo",value:function(e,t){var i=this.center%this.count-e;this.noWrap||(i<0?Math.abs(i+this.count)<Math.abs(i)&&(i+=this.count):i>0&&Math.abs(i-this.count)<i&&(i-=this.count)),this.target=this.dim*Math.round(this.offset/this.dim),i<0?this.target+=this.dim*Math.abs(i):i>0&&(this.target-=this.dim*i),"function"==typeof t&&(this.oneTimeCallback=t),this.offset!==this.target&&(this.amplitude=this.target-this.offset,this.timestamp=Date.now(),requestAnimationFrame(this._autoScrollBound))}},{key:"next",value:function(e){(void 0===e||isNaN(e))&&(e=1);var t=this.center+e;if(t>=this.count||t<0){if(this.noWrap)return;t=this._wrap(t)}this._cycleTo(t)}},{key:"prev",value:function(e){(void 0===e||isNaN(e))&&(e=1);var t=this.center-e;if(t>=this.count||t<0){if(this.noWrap)return;t=this._wrap(t)}this._cycleTo(t)}},{key:"set",value:function(e,t){if((void 0===e||isNaN(e))&&(e=0),e>this.count||e<0){if(this.noWrap)return;e=this._wrap(e)}this._cycleTo(e,t)}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Carousel}},{key:"defaults",get:function(){return t}}]),n}(u);M.Carousel=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"carousel","M_Carousel")}(cash),function(e){"use strict";var t={onOpen:void 0,onClose:void 0},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.el.M_TapTarget=s,s.options=e.extend({},n.defaults,i),s.isOpen=!1,s.$origin=e("#"+s.$el.attr("data-target")),s._setup(),s._calculatePositioning(),s._setupEventHandlers(),s}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this.el.TapTarget=void 0}},{key:"_setupEventHandlers",value:function(){this._handleDocumentClickBound=this._handleDocumentClick.bind(this),this._handleTargetClickBound=this._handleTargetClick.bind(this),this._handleOriginClickBound=this._handleOriginClick.bind(this),this.el.addEventListener("click",this._handleTargetClickBound),this.originEl.addEventListener("click",this._handleOriginClickBound);var e=M.throttle(this._handleResize,200);this._handleThrottledResizeBound=e.bind(this),window.addEventListener("resize",this._handleThrottledResizeBound)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("click",this._handleTargetClickBound),this.originEl.removeEventListener("click",this._handleOriginClickBound),window.removeEventListener("resize",this._handleThrottledResizeBound)}},{key:"_handleTargetClick",value:function(e){this.open()}},{key:"_handleOriginClick",value:function(e){this.close()}},{key:"_handleResize",value:function(e){this._calculatePositioning()}},{key:"_handleDocumentClick",value:function(t){e(t.target).closest(".tap-target-wrapper").length||(this.close(),t.preventDefault(),t.stopPropagation())}},{key:"_setup",value:function(){this.wrapper=this.$el.parent()[0],this.waveEl=e(this.wrapper).find(".tap-target-wave")[0],this.originEl=e(this.wrapper).find(".tap-target-origin")[0],this.contentEl=this.$el.find(".tap-target-content")[0],e(this.wrapper).hasClass(".tap-target-wrapper")||(this.wrapper=document.createElement("div"),this.wrapper.classList.add("tap-target-wrapper"),this.$el.before(e(this.wrapper)),this.wrapper.append(this.el)),this.contentEl||(this.contentEl=document.createElement("div"),this.contentEl.classList.add("tap-target-content"),this.$el.append(this.contentEl)),this.waveEl||(this.waveEl=document.createElement("div"),this.waveEl.classList.add("tap-target-wave"),this.originEl||(this.originEl=this.$origin.clone(!0,!0),this.originEl.addClass("tap-target-origin"),this.originEl.removeAttr("id"),this.originEl.removeAttr("style"),this.originEl=this.originEl[0],this.waveEl.append(this.originEl)),this.wrapper.append(this.waveEl))}},{key:"_calculatePositioning",value:function(){var t="fixed"===this.$origin.css("position");if(!t)for(var i=this.$origin.parents(),n=0;n<i.length&&!(t="fixed"==e(i[n]).css("position"));n++);var s=this.$origin.outerWidth(),o=this.$origin.outerHeight(),a=t?this.$origin.offset().top-M.getDocumentScrollTop():this.$origin.offset().top,r=t?this.$origin.offset().left-M.getDocumentScrollLeft():this.$origin.offset().left,l=window.innerWidth,u=window.innerHeight,d=l/2,c=u/2,h=r<=d,p=r>d,v=a<=c,_=a>c,f=r>=.25*l&&r<=.75*l,m=this.$el.outerWidth(),y=this.$el.outerHeight(),g=a+o/2-y/2,b=r+s/2-m/2,k=t?"fixed":"absolute",w=f?m:m/2+s,x=y/2,C=v?y/2:0,E=h&&!f?m/2-s:0,j=s,O=_?"bottom":"top",T=2*s,L=T,D=y/2-L/2,B=m/2-T/2,Q={};Q.top=v?g+"px":"",Q.right=p?l-b-m+"px":"",Q.bottom=_?u-g-y+"px":"",Q.left=h?b+"px":"",Q.position=k,e(this.wrapper).css(Q),e(this.contentEl).css({width:w+"px",height:x+"px",top:C+"px",right:"0px",bottom:"0px",left:E+"px",padding:j+"px",verticalAlign:O}),e(this.waveEl).css({top:D+"px",left:B+"px",width:T+"px",height:L+"px"})}},{key:"open",value:function(){this.isOpen||("function"==typeof this.options.onOpen&&this.options.onOpen.call(this,this.$origin[0]),this.isOpen=!0,this.wrapper.classList.add("open"),document.body.addEventListener("click",this._handleDocumentClickBound,!0),document.body.addEventListener("touchend",this._handleDocumentClickBound))}},{key:"close",value:function(){this.isOpen&&("function"==typeof this.options.onClose&&this.options.onClose.call(this,this.$origin[0]),this.isOpen=!1,this.wrapper.classList.remove("open"),document.body.removeEventListener("click",this._handleDocumentClickBound,!0),document.body.removeEventListener("touchend",this._handleDocumentClickBound))}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_TapTarget}},{key:"defaults",get:function(){return t}}]),n}(u);M.TapTarget=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"tapTarget","M_TapTarget")}(cash),function(e){"use strict";var t={classes:"",dropdownOptions:{}},i=function(i){function n(t,i){l(this,n);var s=a(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,n,t,i));return s.$el.hasClass("browser-default")?a(s):(s.el.M_FormSelect=s,s.options=e.extend({},n.defaults,i),s.isMultiple=s.$el.prop("multiple"),s.el.tabIndex=-1,s._keysSelected={},s._valueDict={},s._setupDropdown(),s._setupEventHandlers(),s)}return r(n,i),o(n,[{key:"destroy",value:function(){this._removeEventHandlers(),this._removeDropdown(),this.el.M_FormSelect=void 0}},{key:"_setupEventHandlers",value:function(){var t=this;this._handleSelectChangeBound=this._handleSelectChange.bind(this),this._handleOptionClickBound=this._handleOptionClick.bind(this),this._handleInputClickBound=this._handleInputClick.bind(this),e(this.dropdownOptions).find("li:not(.optgroup)").each((function(e){e.addEventListener("click",t._handleOptionClickBound)})),this.el.addEventListener("change",this._handleSelectChangeBound),this.input.addEventListener("click",this._handleInputClickBound)}},{key:"_removeEventHandlers",value:function(){var t=this;e(this.dropdownOptions).find("li:not(.optgroup)").each((function(e){e.removeEventListener("click",t._handleOptionClickBound)})),this.el.removeEventListener("change",this._handleSelectChangeBound),this.input.removeEventListener("click",this._handleInputClickBound)}},{key:"_handleSelectChange",value:function(e){this._setValueToInput()}},{key:"_handleOptionClick",value:function(t){t.preventDefault();var i=e(t.target).closest("li")[0],n=i.id;if(!e(i).hasClass("disabled")&&!e(i).hasClass("optgroup")&&n.length){var s=!0;if(this.isMultiple){var o=e(this.dropdownOptions).find("li.disabled.selected");o.length&&(o.removeClass("selected"),o.find('input[type="checkbox"]').prop("checked",!1),this._toggleEntryFromArray(o[0].id)),s=this._toggleEntryFromArray(n)}else e(this.dropdownOptions).find("li").removeClass("selected"),e(i).toggleClass("selected",s);e(this._valueDict[n].el).prop("selected")!==s&&(e(this._valueDict[n].el).prop("selected",s),this.$el.trigger("change"))}t.stopPropagation()}},{key:"_handleInputClick",value:function(){this.dropdown&&this.dropdown.isOpen&&(this._setValueToInput(),this._setSelectedStates())}},{key:"_setupDropdown",value:function(){var t=this;this.wrapper=document.createElement("div"),e(this.wrapper).addClass("select-wrapper "+this.options.classes),this.$el.before(e(this.wrapper)),this.wrapper.appendChild(this.el),this.el.disabled&&this.wrapper.classList.add("disabled"),this.$selectOptions=this.$el.children("option, optgroup"),this.dropdownOptions=document.createElement("ul"),this.dropdownOptions.id="select-options-"+M.guid(),e(this.dropdownOptions).addClass("dropdown-content select-dropdown "+(this.isMultiple?"multiple-select-dropdown":"")),this.$selectOptions.length&&this.$selectOptions.each((function(i){if(e(i).is("option")){var n=void 0;n=t.isMultiple?t._appendOptionWithIcon(t.$el,i,"multiple"):t._appendOptionWithIcon(t.$el,i),t._addOptionToValueDict(i,n)}else if(e(i).is("optgroup")){var s=e(i).children("option");e(t.dropdownOptions).append(e('<li class="optgroup"><span>'+i.getAttribute("label")+"</span></li>")[0]),s.each((function(e){var i=t._appendOptionWithIcon(t.$el,e,"optgroup-option");t._addOptionToValueDict(e,i)}))}})),this.$el.after(this.dropdownOptions),this.input=document.createElement("input"),e(this.input).addClass("select-dropdown dropdown-trigger"),this.input.setAttribute("type","text"),this.input.setAttribute("readonly","true"),this.input.setAttribute("data-target",this.dropdownOptions.id),this.el.disabled&&e(this.input).prop("disabled","true"),this.$el.before(this.input),this._setValueToInput();var i=e('<svg class="caret" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');if(this.$el.before(i[0]),!this.el.disabled){var n=e.extend({},this.options.dropdownOptions);n.onOpenEnd=function(i){var n=e(t.dropdownOptions).find(".selected").first();if(n.length&&(M.keyDown=!0,t.dropdown.focusedIndex=n.index(),t.dropdown._focusFocusedItem(),M.keyDown=!1,t.dropdown.isScrollable)){var s=n[0].getBoundingClientRect().top-t.dropdownOptions.getBoundingClientRect().top;s-=t.dropdownOptions.clientHeight/2,t.dropdownOptions.scrollTop=s}},this.isMultiple&&(n.closeOnClick=!1),this.dropdown=M.Dropdown.init(this.input,n)}this._setSelectedStates()}},{key:"_addOptionToValueDict",value:function(e,t){var i=Object.keys(this._valueDict).length,n=this.dropdownOptions.id+i,s={};t.id=n,s.el=e,s.optionEl=t,this._valueDict[n]=s}},{key:"_removeDropdown",value:function(){e(this.wrapper).find(".caret").remove(),e(this.input).remove(),e(this.dropdownOptions).remove(),e(this.wrapper).before(this.$el),e(this.wrapper).remove()}},{key:"_appendOptionWithIcon",value:function(t,i,n){var s=i.disabled?"disabled ":"",o="optgroup-option"===n?"optgroup-option ":"",a=this.isMultiple?'<label><input type="checkbox"'+s+'"/><span>'+i.innerHTML+"</span></label>":i.innerHTML,r=e("<li></li>"),l=e("<span></span>");l.html(a),r.addClass(s+" "+o),r.append(l);var u=i.getAttribute("data-icon");if(u){var d=e('<img alt="" src="'+u+'">');r.prepend(d)}return e(this.dropdownOptions).append(r[0]),r[0]}},{key:"_toggleEntryFromArray",value:function(t){var i=!this._keysSelected.hasOwnProperty(t),n=e(this._valueDict[t].optionEl);return i?this._keysSelected[t]=!0:delete this._keysSelected[t],n.toggleClass("selected",i),n.find('input[type="checkbox"]').prop("checked",i),n.prop("selected",i),i}},{key:"_setValueToInput",value:function(){var t=[];if(this.$el.find("option").each((function(i){if(e(i).prop("selected")){var n=e(i).text();t.push(n)}})),!t.length){var i=this.$el.find("option:disabled").eq(0);i.length&&""===i[0].value&&t.push(i.text())}this.input.value=t.join(", ")}},{key:"_setSelectedStates",value:function(){for(var t in this._keysSelected={},this._valueDict){var i=this._valueDict[t],n=e(i.el).prop("selected");e(i.optionEl).find('input[type="checkbox"]').prop("checked",n),n?(this._activateOption(e(this.dropdownOptions),e(i.optionEl)),this._keysSelected[t]=!0):e(i.optionEl).removeClass("selected")}}},{key:"_activateOption",value:function(t,i){i&&(this.isMultiple||t.find("li.selected").removeClass("selected"),e(i).addClass("selected"))}},{key:"getSelectedValues",value:function(){var e=[];for(var t in this._keysSelected)e.push(this._valueDict[t].el.value);return e}}],[{key:"init",value:function(e,t){return s(n.__proto__||Object.getPrototypeOf(n),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_FormSelect}},{key:"defaults",get:function(){return t}}]),n}(u);M.FormSelect=i,M.jQueryLoaded&&M.initializeJqueryWrapper(i,"formSelect","M_FormSelect")}(cash),function(e,t){"use strict";var i={},n=function(n){function u(t,i){l(this,u);var n=a(this,(u.__proto__||Object.getPrototypeOf(u)).call(this,u,t,i));return n.el.M_Range=n,n.options=e.extend({},u.defaults,i),n._mousedown=!1,n._setupThumb(),n._setupEventHandlers(),n}return r(u,n),o(u,[{key:"destroy",value:function(){this._removeEventHandlers(),this._removeThumb(),this.el.M_Range=void 0}},{key:"_setupEventHandlers",value:function(){this._handleRangeChangeBound=this._handleRangeChange.bind(this),this._handleRangeMousedownTouchstartBound=this._handleRangeMousedownTouchstart.bind(this),this._handleRangeInputMousemoveTouchmoveBound=this._handleRangeInputMousemoveTouchmove.bind(this),this._handleRangeMouseupTouchendBound=this._handleRangeMouseupTouchend.bind(this),this._handleRangeBlurMouseoutTouchleaveBound=this._handleRangeBlurMouseoutTouchleave.bind(this),this.el.addEventListener("change",this._handleRangeChangeBound),this.el.addEventListener("mousedown",this._handleRangeMousedownTouchstartBound),this.el.addEventListener("touchstart",this._handleRangeMousedownTouchstartBound),this.el.addEventListener("input",this._handleRangeInputMousemoveTouchmoveBound),this.el.addEventListener("mousemove",this._handleRangeInputMousemoveTouchmoveBound),this.el.addEventListener("touchmove",this._handleRangeInputMousemoveTouchmoveBound),this.el.addEventListener("mouseup",this._handleRangeMouseupTouchendBound),this.el.addEventListener("touchend",this._handleRangeMouseupTouchendBound),this.el.addEventListener("blur",this._handleRangeBlurMouseoutTouchleaveBound),this.el.addEventListener("mouseout",this._handleRangeBlurMouseoutTouchleaveBound),this.el.addEventListener("touchleave",this._handleRangeBlurMouseoutTouchleaveBound)}},{key:"_removeEventHandlers",value:function(){this.el.removeEventListener("change",this._handleRangeChangeBound),this.el.removeEventListener("mousedown",this._handleRangeMousedownTouchstartBound),this.el.removeEventListener("touchstart",this._handleRangeMousedownTouchstartBound),this.el.removeEventListener("input",this._handleRangeInputMousemoveTouchmoveBound),this.el.removeEventListener("mousemove",this._handleRangeInputMousemoveTouchmoveBound),this.el.removeEventListener("touchmove",this._handleRangeInputMousemoveTouchmoveBound),this.el.removeEventListener("mouseup",this._handleRangeMouseupTouchendBound),this.el.removeEventListener("touchend",this._handleRangeMouseupTouchendBound),this.el.removeEventListener("blur",this._handleRangeBlurMouseoutTouchleaveBound),this.el.removeEventListener("mouseout",this._handleRangeBlurMouseoutTouchleaveBound),this.el.removeEventListener("touchleave",this._handleRangeBlurMouseoutTouchleaveBound)}},{key:"_handleRangeChange",value:function(){e(this.value).html(this.$el.val()),e(this.thumb).hasClass("active")||this._showRangeBubble();var t=this._calcRangeOffset();e(this.thumb).addClass("active").css("left",t+"px")}},{key:"_handleRangeMousedownTouchstart",value:function(t){if(e(this.value).html(this.$el.val()),this._mousedown=!0,this.$el.addClass("active"),e(this.thumb).hasClass("active")||this._showRangeBubble(),"input"!==t.type){var i=this._calcRangeOffset();e(this.thumb).addClass("active").css("left",i+"px")}}},{key:"_handleRangeInputMousemoveTouchmove",value:function(){if(this._mousedown){e(this.thumb).hasClass("active")||this._showRangeBubble();var t=this._calcRangeOffset();e(this.thumb).addClass("active").css("left",t+"px"),e(this.value).html(this.$el.val())}}},{key:"_handleRangeMouseupTouchend",value:function(){this._mousedown=!1,this.$el.removeClass("active")}},{key:"_handleRangeBlurMouseoutTouchleave",value:function(){if(!this._mousedown){var i=7+parseInt(this.$el.css("padding-left"))+"px";e(this.thumb).hasClass("active")&&(t.remove(this.thumb),t({targets:this.thumb,height:0,width:0,top:10,easing:"easeOutQuad",marginLeft:i,duration:100})),e(this.thumb).removeClass("active")}}},{key:"_setupThumb",value:function(){this.thumb=document.createElement("span"),this.value=document.createElement("span"),e(this.thumb).addClass("thumb"),e(this.value).addClass("value"),e(this.thumb).append(this.value),this.$el.after(this.thumb)}},{key:"_removeThumb",value:function(){e(this.thumb).remove()}},{key:"_showRangeBubble",value:function(){var i=-7+parseInt(e(this.thumb).parent().css("padding-left"))+"px";t.remove(this.thumb),t({targets:this.thumb,height:30,width:30,top:-30,marginLeft:i,duration:300,easing:"easeOutQuint"})}},{key:"_calcRangeOffset",value:function(){var e=this.$el.width()-15,t=parseFloat(this.$el.attr("max"))||100,i=parseFloat(this.$el.attr("min"))||0;return(parseFloat(this.$el.val())-i)/(t-i)*e}}],[{key:"init",value:function(e,t){return s(u.__proto__||Object.getPrototypeOf(u),"init",this).call(this,this,e,t)}},{key:"getInstance",value:function(e){return(e.jquery?e[0]:e).M_Range}},{key:"defaults",get:function(){return i}}]),u}(u);M.Range=n,M.jQueryLoaded&&M.initializeJqueryWrapper(n,"range","M_Range"),n.init(e("input[type=range]"))}(cash,M.anime)}).call(this,i(6))},function(e,t){var i;i=function(){return this}();try{i=i||new Function("return this")()}catch(e){"object"==typeof window&&(i=window)}e.exports=i},function(e,t,i){"use strict";i.r(t);var n=i(0);class s{constructor(e){this.steps=["restore-script-upload-step","backup-upload-step","restore-remote-backup-step","restore-remote-database-step","restore-finish-step"],this.ajaxurl=ajaxurl,this.cancel=!1,this.upload_file_event=new Event("upload_file_event"),this.resume=new Object,this.hash=e,this.local_restore=0,this.file_counter=0,document.addEventListener("backup_upload_finish",(function(e){jQuery(".xcloner-restore .backup-upload-step .toggler").removeClass("cancel")}),!1),document.addEventListener("remote_restore_backup_finish",(function(e){jQuery(".xcloner-restore .restore-remote-backup-step .toggler").removeClass("cancel")}),!1),document.addEventListener("remote_restore_mysql_backup_finish",(function(e){jQuery(".xcloner-restore .restore-remote-database-step .toggler").removeClass("cancel")}),!1),document.addEventListener("restore_script_invalid",(function(e){jQuery(".xcloner-restore #restore_script_url").addClass("invalid").removeClass("valid"),jQuery(".xcloner-restore #validate_url .material-icons").text("error")}),!1),document.addEventListener("restore_script_valid",(function(e){jQuery(".xcloner-restore #validate_url .material-icons").text("check_circle"),jQuery(".xcloner-restore #restore_script_url").removeClass("invalid").addClass("valid")}),!1),document.addEventListener("xcloner_populate_remote_backup_files_list",(function(e){var t=e.detail.files,i=jQuery(".xcloner-restore #remote_backup_file").val();for(var n in jQuery(".xcloner-restore #remote_backup_file").find("option").not(":first").remove(),t){var s="not-selected";(t[n].selected||i==t[n].path)&&(s="selected"),jQuery(".xcloner-restore #remote_backup_file").append("<option value='"+t[n].path+"' "+s+">"+t[n].path+"("+e.detail.$this.getSize(t[n].size)+" MB)</option>").addClass("file")}}),!1),document.addEventListener("xcloner_populate_remote_mysqldump_files_list",(function(e){var t=e.detail.files,i=jQuery(".xcloner-restore #remote_database_file").val();for(var n in jQuery(".xcloner-restore #remote_database_file").find("option").not(":first").remove(),t){if(t[n].selected||i==t[n].path)var s="selected";else s="not-selected";jQuery(".xcloner-restore #remote_database_file").append("<option value='"+t[n].path+"' "+s+">"+t[n].path+"("+e.detail.$this.getSize(t[n].size)+" MB) "+t[n].timestamp+"</option>").addClass("file")}}),!1),document.addEventListener("xcloner_restore_next_step",(function(e){if(void 0!==e.detail.$this){var t=e.detail.$this;jQuery(".xcloner-restore li."+t.steps[t.set_current_step]).show().find(".collapsible-header").trigger("click")}}),!1),document.addEventListener("xcloner_restore_update_progress",(function(e){void 0!==e.detail.percent&&(jQuery(".xcloner-restore .steps.active .progress").show(),"indeterminate"==e.detail.class&&jQuery(".xcloner-restore .steps.active .progress > div").addClass(e.detail.class).removeClass("determinate"),"determinate"==e.detail.class&&jQuery(".xcloner-restore .steps.active .progress > div").addClass(e.detail.class).removeClass("indeterminate"),100==e.detail.percent?jQuery(".xcloner-restore .steps.active .progress > div").removeClass("indeterminate").addClass("determinate").css("width",e.detail.percent+"%"):jQuery(".xcloner-restore .steps.active .progress .determinate").css("width",e.detail.percent+"%"))}),!1),document.addEventListener("xcloner_restore_display_status_text",(function(e){void 0===e.detail.status&&(e.detail.status="updated"),void 0!==e.detail.message&&jQuery(".xcloner-restore .steps.active .status").html("<div class='"+e.detail.status+"'>"+e.detail.message+"</div>")}),!1),document.addEventListener("xcloner_populate_remote_restore_path",(function(e){void 0!==e.detail.dir&&(jQuery(".xcloner-restore #remote_restore_path").val()||jQuery(".xcloner-restore #remote_restore_path").val(e.detail.dir)),void 0!==e.detail.restore_script_url&&(jQuery(".xcloner-restore #remote_restore_url").val()||jQuery(".xcloner-restore #remote_restore_url").val(e.detail.restore_script_url),jQuery(".xcloner-restore #remote_restore_site_url").val()||jQuery(".xcloner-restore #remote_restore_site_url").val(e.detail.restore_script_url),jQuery(".xcloner-restore #remote_mysql_host").val()||jQuery(".xcloner-restore #remote_mysql_host").val(e.detail.remote_mysql_host),jQuery(".xcloner-restore #remote_mysql_db").val()||jQuery(".xcloner-restore #remote_mysql_db").val(e.detail.remote_mysql_db),jQuery(".xcloner-restore #remote_mysql_user").val()||jQuery(".xcloner-restore #remote_mysql_user").val(e.detail.remote_mysql_user),jQuery(".xcloner-restore #remote_mysql_pass").val()||jQuery(".xcloner-restore #remote_mysql_pass").val(e.detail.remote_mysql_pass))}),!1),document.addEventListener("remote_restore_update_files_list",(function(e){if(void 0!==e.detail.files&&e.detail.files.length){for(var t=[],i=0;i<e.detail.files.length;i++)t[i]="<li>"+e.detail.files[i]+"</li>";jQuery(".xcloner-restore .restore-remote-backup-step .files-list").is(":hidden")||jQuery(".xcloner-restore .restore-remote-backup-step .files-list").html(t.reverse().join("\n"))}else jQuery.isArray(e.detail.files)||jQuery(".xcloner-restore .restore-remote-backup-step .files-list").html("")}),!1),document.addEventListener("xcloner_restore_display_query_box",(function(e){e.detail.query?(jQuery(".xcloner-restore .query-box").show(),jQuery(".xcloner-restore .query-list").val(e.detail.query)):(jQuery(".xcloner-restore .query-box").hide(),jQuery(".xcloner-restore .query-list").val(""))}),!1),document.addEventListener("xcloner_restore_finish",(function(e){jQuery(".xcloner-restore #xcloner_restore_finish").show(),jQuery(".xcloner-restore #open_target_site a").removeAttr("disabled")}),!1)}get_remote_backup_files_callback(e,t,i=new Object){if(t){var n=e.statusText.files;document.dispatchEvent(new CustomEvent("xcloner_populate_remote_backup_files_list",{detail:{files:n,$this:this}}))}}get_remote_backup_files(){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var e=new Object;e.local_backup_file=jQuery(".xcloner-restore .backup-upload-step #backup_file").val(),this.do_ajax("get_remote_backup_files_callback","list_backup_archives",e),this.get_remote_restore_path_default()}get_remote_mysqldump_files_callback(e,t,i=new Object){if(t){var n=e.statusText.files;document.dispatchEvent(new CustomEvent("xcloner_populate_remote_mysqldump_files_list",{detail:{files:n,$this:this}}))}}get_remote_mysqldump_files(){if(this.ajaxurl=this.restore_script_url,this.set_cancel(!1),this.resume.callback="","get_remote_mysqldump_files_callback"==this.resume.callback)return this.do_ajax(this.resume.callback,this.resume.action,this.resume.params),void(this.resume=new Object);var e=new Object;e.backup_file=this.get_backup_file(),e.remote_path=this.get_remote_path(),this.do_ajax("get_remote_mysqldump_files_callback","list_mysqldump_backups",e)}get_backup_file(){return jQuery(".xcloner-restore #remote_backup_file").val()}get_remote_path(){return jQuery(".xcloner-restore #remote_restore_path").val()}get_remote_restore_path_default_callback(e,t,i=new Object){t&&document.dispatchEvent(new CustomEvent("xcloner_populate_remote_restore_path",{detail:e.statusText}))}get_remote_restore_path_default(){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var e=new Object;e.restore_script_url=this.restore_script_url,this.do_ajax("get_remote_restore_path_default_callback","get_current_directory",e)}remote_restore_backup_file_callback(e,t,i=new Object){if(!t)return document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:e.status+" "+e.statusText}})),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}})),void document.dispatchEvent(new CustomEvent("remote_restore_backup_finish"));var n=parseInt(e.statusText.start)+parseInt(e.statusText.processed);if(e.statusText.extracted_files&&document.dispatchEvent(new CustomEvent("remote_restore_update_files_list",{detail:{files:e.statusText.extracted_files}})),!e.statusText.finished)return i.start=e.statusText.start,i.part=e.statusText.part,i.processed=e.statusText.processed,document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Processing <strong>"+e.statusText.backup_file+"</strong>- processed "+this.getSize(n,1024)+" KB from archive"}})),void this.do_ajax("remote_restore_backup_file_callback","restore_backup_to_path",i);document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Done restoring <strong>"+e.statusText.backup_file+"</strong>."}})),document.dispatchEvent(new CustomEvent("remote_restore_backup_finish")),this.cancel=!1}remote_restore_backup_file(e,t){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var i=new Object;if(i.backup_file=e,i.remote_path=t,i.filter_files=jQuery(".xcloner-restore input[name=filter_files]:checked").val(),"remote_restore_backup_file_callback"==this.resume.callback)return this.do_ajax(this.resume.callback,this.resume.action,this.resume.params),void(this.resume=new Object);document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0,class:"indeterminate"}})),document.dispatchEvent(new CustomEvent("remote_restore_update_files_list",{detail:{files:""}})),this.do_ajax("remote_restore_backup_file_callback","restore_backup_to_path",i)}remote_restore_mysql_backup_file_callback(e,t,i=new Object){if(!e)return this.set_cancel(!0),void document.dispatchEvent(new CustomEvent("remote_restore_mysql_backup_finish"));if(!t)return this.start=e.statusText.start,document.dispatchEvent(new CustomEvent("xcloner_restore_display_query_box",{detail:{query:e.statusText.query}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:e.status+" "+e.statusText.message}})),void document.dispatchEvent(new CustomEvent("remote_restore_mysql_backup_finish"));document.dispatchEvent(new CustomEvent("xcloner_restore_display_query_box",{detail:{query:""}})),i.query="";parseInt(e.statusText.start),parseInt(e.statusText.processed);if(!e.statusText.finished){i.start=e.statusText.start,i.processed=e.statusText.processed,this.start=i.start;var n=0;return e.statusText.backup_size&&(n=100*parseInt(e.statusText.start)/parseInt(e.statusText.backup_size)),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Processing <strong>"+e.statusText.backup_file+"</strong>- wrote "+this.getSize(e.statusText.start,1024)+" KB of data"}})),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:n}})),void this.do_ajax("remote_restore_mysql_backup_file_callback","restore_mysql_backup",i)}document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Done restoring <strong>"+e.statusText.backup_file+"</strong>."}})),document.dispatchEvent(new CustomEvent("remote_restore_mysql_backup_finish")),this.cancel=!1}remote_restore_mysql_backup_file(e){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var t=new Object;if(t.remote_mysql_host=jQuery(".xcloner-restore #remote_mysql_host").val(),t.remote_mysql_db=jQuery(".xcloner-restore #remote_mysql_db").val(),t.remote_mysql_user=jQuery(".xcloner-restore #remote_mysql_user").val(),t.remote_mysql_pass=jQuery(".xcloner-restore #remote_mysql_pass").val(),t.remote_path=jQuery(".xcloner-restore #remote_restore_path").val(),t.wp_home_url=jQuery(".xcloner-restore #wp_home_url").val(),t.remote_restore_url=jQuery(".xcloner-restore #remote_restore_url").val(),jQuery(".xcloner-restore #wp_site_url").length&&(t.wp_site_url=jQuery(".xcloner-restore #wp_site_url").val(),t.restore_site_url=jQuery(".xcloner-restore #remote_restore_site_url").val()),t.mysqldump_file=e,t.query="",t.start=0,jQuery(".xcloner-restore .query-box .query-list").val()&&(t.query=jQuery(".xcloner-restore .query-box .query-list").val(),t.start=this.start),document.dispatchEvent(new CustomEvent("xcloner_restore_display_query_box",{detail:{query:""}})),"remote_restore_mysql_backup_file_callback"==this.resume.callback)return this.do_ajax(this.resume.callback,this.resume.action,this.resume.params),void(this.resume=new Object);this.do_ajax("remote_restore_mysql_backup_file_callback","restore_mysql_backup",t)}restore_finish_callback(e,t,i=new Object){if(!t)return document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:e.statusText,$this:this}})),!1;document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:e.statusText,$this:this}})),document.dispatchEvent(new CustomEvent("xcloner_restore_finish",{detail:{message:e.statusText,$this:this}}))}restore_finish(){this.ajaxurl=this.restore_script_url,this.set_cancel(!1);var e=new Object;e.backup_archive=jQuery(".xcloner-restore #remote_backup_file").val(),e.remote_mysql_host=jQuery(".xcloner-restore #remote_mysql_host").val(),e.remote_mysql_db=jQuery(".xcloner-restore #remote_mysql_db").val(),e.remote_mysql_user=jQuery(".xcloner-restore #remote_mysql_user").val(),e.remote_mysql_pass=jQuery(".xcloner-restore #remote_mysql_pass").val(),e.remote_path=jQuery(".xcloner-restore #remote_restore_path").val(),e.remote_restore_url=jQuery(".xcloner-restore #remote_restore_url").val(),e.delete_backup_temporary_folder=0,e.delete_restore_script=0,e.update_remote_site_url=0,jQuery(".xcloner-restore #delete_backup_temporary_folder").is(":checked")&&(e.delete_backup_temporary_folder=1),jQuery(".xcloner-restore #delete_restore_script").is(":checked")&&(e.delete_restore_script=1),jQuery(".xcloner-restore #update_remote_site_url").is(":checked")&&(e.update_remote_site_url=1),jQuery(".xcloner-restore #delete_backup_archive").is(":checked")&&(e.delete_backup_archive=1),this.do_ajax("restore_finish_callback","restore_finish",e)}upload_backup_file(e){this.ajaxurl=ajaxurl;var t=new Object;if(this.set_cancel(!1),"upload_backup_file_callback"==this.resume.callback)return this.do_ajax(this.resume.callback,this.resume.action,this.resume.params),void(this.resume=new Object);t.file=e,t.start=0,t.target_url=this.restore_script_url,document.dispatchEvent(new CustomEvent("backup_upload_start")),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Uploading backup 0%"}})),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0}})),this.do_ajax("upload_backup_file_callback","restore_upload_backup",t)}upload_backup_file_callback(e,t,i=new Object){if(!t)return document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:e.status+" "+e.statusText}})),void document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}}));if(e&&(!1!==e.start||e.part<e.total_parts)){var n=0;if(e.total_size){e.start||(e.start=0);var s=parseInt(e.start)+parseInt(e.uploaded_size);n=100*parseInt(s)/parseInt(e.total_size)}var o="";e.part>0&&(o="part "+e.part+" - "),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:n}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Uploading backup "+o+parseFloat(n).toFixed(2)+"%"}})),i.start=e.start,i.part=e.part,i.uploaded_size=e.uploaded_size,this.do_ajax("upload_backup_file_callback","restore_upload_backup",i)}else this.cancel=!1,document.dispatchEvent(new CustomEvent("backup_upload_finish")),document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:100}})),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Done."}}))}verify_restore_url_callback(e,t,i=new Object){if(t)document.dispatchEvent(new CustomEvent("restore_script_valid")),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:"Validation ok."}})),this.local_restore?this.next_step(1):this.next_step();else{var n="<a href='"+this.restore_script_url+"' target='_blank'>restore script address</a>";document.dispatchEvent(new CustomEvent("restore_script_invalid")),document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Could not access the restore script: "+e.status+" "+e.statusText+". Please check the javascript console for more details. Are you able to see a valid JSON response of the "+n+" in your browser?"}}))}}verify_restore_url(e,t,i=new Object){"http://"==this.restore_script_url||"https://"==this.restore_script_url||""==this.restore_script_url||void 0===this.restore_script_url?(this.restore_script_url=ajaxurl+"?action=restore_backup",this.local_restore=1,jQuery("#delete_backup_archive").attr("disabled","disabled").removeAttr("checked"),jQuery("#delete_restore_script").attr("disabled","disabled").removeAttr("checked")):(this.local_restore=0,jQuery("#delete_restore_script").attr("checked","checked").removeAttr("disabled")),1==this.local_restore?(jQuery(".restore-remote-backup-step #filter_files_all").removeAttr("checked").attr("disabled","disabled"),jQuery(".restore-remote-backup-step #filter_files_wp_content").attr("checked","checked")):(jQuery(".restore-remote-backup-step #filter_files_all").removeAttr("disabled").attr("checked","checked"),jQuery(".restore-remote-backup-step #filter_files_wp_content").removeAttr("checked")),this.ajaxurl=this.restore_script_url,jQuery(".xcloner-restore #xcloner_restore_finish").hide(),this.cancel=!1,this.set_current_step=0,this.do_ajax("verify_restore_url_callback")}open_target_site(e){var t=jQuery(".xcloner-restore #remote_restore_url").val();t||jQuery(".xcloner-restore #wp_home_url").val(),jQuery(e).attr("href",t)}next_step(e=0){this.set_current_step=jQuery(".xcloner-restore li.active").attr("data-step"),this.set_current_step=parseInt(this.set_current_step)+parseInt(e),document.dispatchEvent(new CustomEvent("xcloner_restore_next_step",{detail:{$this:this}}))}list_backup_content_callback(e,t,i=new Object){if(e.error)return jQuery("#backup_cotent_modal .files-list").addClass("error").prepend(e.statusText),void jQuery("#backup_cotent_modal .progress > div").addClass("determinate").removeClass(".indeterminate").css("width","100%");e=e.statusText;var n=[];for(var s in e.files){if(void 0!==e.total_size)parseInt(100*e.start),parseInt(e.total_size);this.file_counter++,n[s]="<li>"+this.file_counter+". <span title='"+e.files[s].mtime+"'>"+e.files[s].path+"</span> ("+e.files[s].size+" bytes)</li>"}jQuery("#backup_cotent_modal .modal-content .files-list").prepend(n.reverse().join("\n")),!e.finished&&jQuery("#backup_cotent_modal").is(":visible")?(i.start=e.start,i.part=e.part,this.do_ajax("list_backup_content_callback","list_backup_files",i)):jQuery("#backup_cotent_modal .progress > div").addClass("determinate").removeClass(".indeterminate").css("width","100%")}list_backup_content(e){this.file_counter=0,jQuery("#backup_cotent_modal .modal-content .files-list").text("").removeClass("error"),jQuery("#backup_cotent_modal .modal-content .backup-name").text(e);var t=document.querySelector("#backup_cotent_modal");M.Modal.init(t).open(),jQuery("#backup_cotent_modal .progress > div").removeClass("determinate").addClass("indeterminate");var i=new Object;i.file=e,i.start=0,i.part=0,this.do_ajax("list_backup_content_callback","list_backup_files",i)}init_resume(){this.resume=new Object,jQuery(".xcloner-restore .steps.active .progress").is(":visible")&&document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0}})),jQuery(".xcloner-restore .steps.active .status").html()&&document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{message:""}})),document.dispatchEvent(new CustomEvent("remote_restore_update_files_list",{detail:{files:""}}))}do_ajax(e,t="",i=new Object){if("restore_upload_backup"==t&&(i.action="restore_upload_backup"),i.xcloner_action=t,i.hash=this.hash,i.API_ID=Object(n.ID)(),void 0!==typeof XCLONER_WPNONCE&&(i._wpnonce=XCLONER_WPNONCE),1==this.cancel)return this.resume.callback=e,this.resume.action=t,void(this.resume.params=i);if(!this.restore_script_url)return!1;var s=this;jQuery(".xcloner-restore .steps.active").addClass("active_status"),this.request=jQuery.ajax({url:this.ajaxurl,dataType:"json",type:"POST",crossDomain:!0,data:i,error:function(n,o,a){s.resume.callback=e,s.resume.action=t,s.resume.params=i,document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:n.status+" "+n.statusText}})),s[e](n,!1)}}).done((function(n){n||(s.resume.callback=e,s.resume.action=t,s.resume.params=i,document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Lost connection with the API, please try and authentificate again"}}))),n&&200!=n.status?n.error?document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:n.message}})):s[e](n,!1,i):s[e](n,!0,i)}))}set_restore_script_url(e){this.restore_script_url=e}set_current_step(e){this.set_current_step=e}set_cancel(e){e&&document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0,class:"determinate"}})),this.cancel=e}get_cancel(e){return this.cancel}getSize(e,t=1048576){return(e/t).toFixed(2)}}jQuery(document).ready((function(){if("undefined"!=typeof xcloner_auth_key)var e=new s(xcloner_auth_key);else e=new s;e.set_current_step(0),jQuery(".col select").formSelect(),jQuery(".xcloner-restore .upload-backup.cancel").on("click",(function(){e.set_cancel(!0)})),jQuery(".xcloner-restore .upload-backup").on("click",(function(){jQuery(this).hasClass("cancel")?e.set_cancel(!0):e.set_cancel(!1);var t=jQuery(".xcloner-restore #backup_file").val();t?(jQuery(this).parent().toggleClass("cancel"),e.get_cancel()||e.upload_backup_file(t)):document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Please select a backup file from the list above"}}))})),jQuery(".xcloner-restore #validate_url").on("click",(function(){e.set_restore_script_url(jQuery(".xcloner-restore #restore_script_url").val()),e.verify_restore_url()})),jQuery(".xcloner-restore #skip_upload_backup").on("click",(function(){e.set_cancel(!0),e.next_step()})),jQuery(".xcloner-restore #skip_restore_remote_database_step").on("click",(function(){e.set_cancel(!0),e.next_step()})),jQuery(".xcloner-restore li.steps").on("click",(function(){e.set_current_step=jQuery(this).attr("data-step")-1})),jQuery(".xcloner-restore #skip_remote_backup_step").on("click",(function(){e.set_cancel(!0),e.next_step()})),jQuery(".xcloner-restore .restore-remote-backup-step .collapsible-header").click((function(){e.get_remote_backup_files()})),jQuery(".xcloner-restore .restore-remote-database-step .collapsible-header").click((function(){e.get_remote_mysqldump_files()})),jQuery(".xcloner-restore #remote_backup_file").on("change",(function(){e.init_resume()})),jQuery(".xcloner-restore #backup_file").on("change",(function(){e.init_resume()})),jQuery(".xcloner-restore #restore_finish").click((function(){e.restore_finish()})),jQuery(".xcloner-restore #open_target_site a").click((function(){e.open_target_site(this)})),jQuery(".xcloner-restore #refresh_remote_backup_file").on("click",(function(t){document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0}})),e.resume=new Object,e.get_remote_backup_files(),t.stopPropagation()})),jQuery(".xcloner-restore #refresh_database_file").on("click",(function(t){document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0}})),e.resume=new Object,e.get_remote_mysqldump_files(),t.stopPropagation()})),jQuery(".xcloner-restore #toggle_file_restore_display").on("click",(function(e){jQuery(".xcloner-restore .restore-remote-backup-step .files-list").toggle()})),jQuery(".xcloner-restore .restore_remote_mysqldump").on("click",(function(t){jQuery(this).hasClass("cancel")?e.set_cancel(!0):e.set_cancel(!1),this.remote_database_file=jQuery(".xcloner-restore #remote_database_file").val(),this.remote_database_file?(jQuery(this).parent().toggleClass("cancel"),e.get_cancel()||(document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0,class:"determinate"}})),e.remote_restore_mysql_backup_file(this.remote_database_file))):document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Please select a mysqld backup file from the list"}}))})),jQuery(".xcloner-restore .list-backup-content").on("click",(function(t){var i=jQuery(".xcloner-restore #remote_backup_file").val();i&&e.list_backup_content(i),t.preventDefault()})),jQuery(".xcloner-restore .restore-remote-backup-step .restore_remote_backup").click((function(){jQuery(this).hasClass("cancel")?e.set_cancel(!0):e.set_cancel(!1),this.backup_file=jQuery(".xcloner-restore #remote_backup_file").val(),this.backup_file?(this.remote_path=jQuery(".xcloner-restore #remote_restore_path").val(),this.remote_path?(jQuery(this).parent().toggleClass("cancel"),e.get_cancel()||(document.dispatchEvent(new CustomEvent("xcloner_restore_update_progress",{detail:{percent:0,class:"indeterminate"}})),e.remote_restore_backup_file(this.backup_file,this.remote_path))):document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Please enter the remote restore path"}}))):document.dispatchEvent(new CustomEvent("xcloner_restore_display_status_text",{detail:{status:"error",message:"Please select a backup file from the list above"}}))}))}))},function(e,t,i){"use strict";i.r(t);var n,s=i(0);document.addEventListener("DOMContentLoaded",(function(){var e=document.querySelector("#edit_schedule");n=M.Modal.init(e)})),jQuery(document).ready((function(){var e=new class{constructor(){this.edit_modal=jQuery("#edit_schedule")}get_form_params(){}get_schedule_by_id(e){var t=this;e&&jQuery.ajax({url:XCLONER_AJAXURL,data:{action:"get_schedule_by_id",id:e},success:function(i){i.id==e&&t.create_modal(i)},dataType:"json"})}delete_schedule_by_id(e,t,i){e&&jQuery.ajax({url:XCLONER_AJAXURL,data:{action:"delete_schedule_by_id",id:e},success:function(e){jQuery(t).parents("tr").remove(),i.row(jQuery(t).parents("tr")).remove().draw()},dataType:"json"})}create_modal(e){this.edit_modal.find("#schedule_id").text(e.id),1==e.status?this.edit_modal.find("#status").attr("checked","checked"):this.edit_modal.find("#status").removeAttr("checked"),this.edit_modal.find("#schedule_id").text(e.id),this.edit_modal.find("#schedule_id_hidden").val(e.id),this.edit_modal.find("#schedule_name").val(e.name),this.edit_modal.find("#backup_name").val(e.backup_params.backup_name),this.edit_modal.find("#email_notification").val(e.backup_params.email_notification),this.edit_modal.find("#diff_start_date").val(e.backup_params.diff_start_date),this.edit_modal.find('#schedule_frequency>option[value="'+e.recurrence+'"]').prop("selected",!0),this.edit_modal.find('#backup_type>option[value="'+e.backup_type+'"]').prop("selected",!0),this.edit_modal.find('#schedule_storage>option[value="'+e.remote_storage+'"]').prop("selected",!0),this.edit_modal.find("#schedule_start_date").val(e.start_at),void 0!==e.backup_params.backup_encrypt&&1==e.backup_params.backup_encrypt&&this.edit_modal.find("#backup_encrypt").attr("checked","checked"),void 0!==e.backup_params.backup_delete_after_remote_transfer&&1==e.backup_params.backup_delete_after_remote_transfer&&this.edit_modal.find("#backup_delete_after_remote_transfer").attr("checked","checked");var t=jQuery.parseJSON(e.table_params),i="";for(var s in t)for(var o in t[s])i+=s+"."+t[s][o]+"\n";this.edit_modal.find("#table_params").val(i);var a=jQuery.parseJSON(e.excluded_files),r="";for(var o in a)r+=a[o]+"\n";this.edit_modal.find("#excluded_files").val(r),jQuery(".col select").formSelect(),M.updateTextFields(),n.open()}save_schedule(e,t){var i=jQuery(e).serialize();jQuery.ajax({url:XCLONER_AJAXURL,dataType:"json",type:"POST",data:i,error:function(e){alert("Error saving schedule!")}}).done((function(e){void 0===e.error?(n.close(),t.ajax.reload()):alert("Error saving schedule!"+e.error)}))}IsJsonString(e){try{JSON.parse(e)}catch(e){return!1}return!0}};jQuery("select[required]").css({display:"block",height:0,padding:0,width:0,position:"absolute"});let t=jQuery("#scheduled_backups").DataTable({responsive:!0,bFilter:!1,order:[[3,"desc"]],buttons:["selectAll","selectNone"],language:{emptyTable:"No schedules available",buttons:{selectAll:"Select all items",selectNone:"Select none"}},columnDefs:[{targets:"no-sort",orderable:!1},{className:"hide-on-med-and-down",targets:[3,5]}],ajax:XCLONER_AJAXURL+"&action=get_scheduler_list",fnDrawCallback:function(i){jQuery(this).off("click",".edit").on("click",".edit",(function(){var t=jQuery(this).attr("href").substr(1);e.get_schedule_by_id(t)})),jQuery(this).off("click",".delete").on("click",".delete",(function(){var i=jQuery(this).attr("href").substr(1);if(confirm("Are you sure you want to delete it?"))e.delete_schedule_by_id(i,this,t)})),jQuery("span.shorten_string").each((function(){Object(s.doShortText)(jQuery(this))})),jQuery("span.shorten_string").click((function(){jQuery(this).toggleClass("full"),Object(s.doShortText)(jQuery(this))}))}});jQuery("#save_schedule").on("submit",(function(){return e.save_schedule(jQuery(this),t),!1})),"function"==typeof jQuery(".timepicker").pickatime&&jQuery(".timepicker").pickatime({default:"now",min:[7,30],twelvehour:!1,donetext:"OK",autoclose:!1,vibrate:!0}),"function"==typeof jQuery(".timepicker").pickadate&&(jQuery(".datepicker").pickadate({format:"d mmmm yyyy",selectMonths:!0,selectYears:15,min:.1,onSet:function(){}}),jQuery(".datepicker_max_today").pickadate({format:"yyyy-mm-dd",selectMonths:!0,selectYears:15,max:.1,onSet:function(){}}))}))}]);
3
  //# sourceMappingURL=index.min.js.map
dist/admin/js/index.min.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///admin/js/index.min.js"],"names":["modules","installedModules","__webpack_require__","moduleId","exports","module","i","l","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","__webpack_exports__","error_modal","next_tab","doShortText","show_ajax_error","ID","getUrlParam","_xcloner_remote_storage_class__WEBPACK_IMPORTED_MODULE_0__","_xcloner_backup_class__WEBPACK_IMPORTED_MODULE_1__","_xcloner_manage_backups_class__WEBPACK_IMPORTED_MODULE_2__","document","addEventListener","Modalelem","querySelector","M","Modal","init","jQuery","ready","tooltip","collapsible","click","this","toggleClass","each","on","fadeIn","select","toggle","e","xcloner_manage_backups","id","attr","substr","download_backup_by_name","preventDefault","removeClass","find","addClass","location","hash","window","replace","trigger","elem","hasClass","text","text_lenght","length","first","last","title","msg","json","xcloner_backup","cancel_backup","undefined","responseText","status","statusText","JSON","stringify","open","Math","random","toString","search","split","remote_storage","dataTable","Xcloner_Manage_Backups","backup_cotent_modal","backup_encryption_modal","backup_decryption_modal","remote_storage_modal","local_storage_upload_modal","[object Object]","file_counter","storage_selection","XCLONER_AJAXURL","ajax","url","method","data","action","success","response","finished","row","parents","remove","draw","alert","dataType","backup_file","start","part","$this","file","error","prepend","message","css","files_text","files","total_size","parseInt","mtime","path","size","reverse","join","is","list_backup_content_callback","xhr","textStatus","iv","percent","processing_file","show","backup_encryption_callback","reload","hide","decryption_key","val","backup_decryption_callback","delete_after_transfer","updateTextFields","formSelect","off","storage_type","Xcloner_Remote_Storage","field","Xcloner_Backup","cancel","params","generate_hash","last_dumpfile","last_backup_file","backup_part","backup_size_total","resume","table_params","files_params","jstree","parent","index","$return","backup_params","serializeArray","extra","stats","tables_count","database_count","total_records","tableName","databaseName","processedRecords","startAtRecord","endDump","records","dumpfile","db_text","getSize","dumpsize","html","prependTo","do_ajax","do_backup_files","total_files_num","total_files_size","parseFloat","toFixed","last_logged_file","do_backup_database","start_at_line","backup_size","processed_file","start_at_byte","processed_size","processed_file_size","backup_text","backup_archive_name_full","backup_archive_name","lines_total","backup_parent","do_backup_encryption","do_remote_storage_upload","do_backup_done","backup_name","delete_backup_after_transfer","Number","set_cancel","start_backup","get_form_params","do_scan_filesystem","callback","type","API_ID","err","init_resume","done","error_message","bytes","conv","global","__WEBPACK_AMD_DEFINE_RESULT__","_get","receiver","Function","desc","getOwnPropertyDescriptor","getPrototypeOf","_createClass","defineProperties","target","props","descriptor","configurable","writable","Constructor","protoProps","staticProps","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","TypeError","constructor","setPrototypeOf","__proto__","_classCallCheck","instance","cash","frag","doc","win","ArrayProto","Array","slice","filter","push","noop","isFunction","item","isString","idMatch","classMatch","htmlMatch","singlet","selector","context","test","getElementsByClassName","getElementsByTagName","querySelectorAll","parseHTML","str","base","implementation","createHTMLDocument","createElement","href","head","appendChild","body","innerHTML","childNodes","onReady","fn","readyState","Init","elems","getElementById","nodeType","splice","map","collection","matches","el","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","getCompareFunction","unique","indexOf","extend","args","arguments","merge","second","len","j","isArray","isNumeric","isNaN","isFinite","uid","Date","now","getDataCache","node","setData","getData","dataset","removeData","removeAttr","v","notWhiteMatch","getClasses","match","classList","contains","RegExp","className","spacedName","add","classes","getAttribute","setAttribute","check","prop","removeAttribute","removeProp","state","eq","comparator","child","children","cache","style","camelRegex","whiteSpace","camelCase","letter","getPrefixedProp","ucProp","charAt","toUpperCase","compute","getComputedStyle","registerEvent","eventName","eventCache","removeEvent","events","removeEventListener","event","encode","encodeURIComponent","getSelectMultiple_","values","options","selected","getSelectSingle_","selectedIndex","getValue","toLowerCase","checked","insertElement","insertBefore","insertContent","insertAdjacentHTML","cloneNode","prefixedProp","lower","getBoundingClientRect","margins","delegate","runOnce","originalCallback","parentNode","finalCallback","apply","one","createEvent","evt","initEvent","dispatchEvent","serialize","query","elements","disabled","tagName","after","insertAfter","append","content","appendTo","before","clone","empty","source","outerHTML","_this","sibling","nextSibling","_this2","removeChild","textContent","docEl","documentElement","position","left","offsetLeft","top","offsetTop","offset","rect","pageYOffset","clientTop","pageXOffset","clientLeft","offsetParent","closest","has","next","nextElementSibling","not","result","prev","previousElementSibling","siblings","factory","Component","classDef","Element","console","Error","ins","getInstance","destroy","$el","els","instances","jquery","NodeList","instancesArr","Package","jQueryLoaded","version","keys","TAB","ENTER","ESC","ARROW_UP","ARROW_DOWN","tabPressed","keyDown","which","initializeJqueryWrapper","plugin","pluginName","classRef","methodOrOptions","AutoInit","root","registry","Autocomplete","Carousel","Chips","Collapsible","Datepicker","Dropdown","Materialbox","Parallax","Pushpin","ScrollSpy","FormSelect","Sidenav","Tabs","TapTarget","Timepicker","Tooltip","FloatingActionButton","objectSelectorString","obj","guid","s4","floor","substring","escapeHash","elementOrParentIsFixed","element","$element","$","$checkElements","isFixed","checkWithinContainer","container","bounding","edges","right","bottom","containerRect","containerBottom","max","innerHeight","scrollLeft","scrollTop","scrolledX","scrolledY","width","innerWidth","height","checkPossibleAlignments","canAlign","spaceOnTop","spaceOnRight","spaceOnBottom","spaceOnLeft","containerAllowsOverflow","overflow","containerHeight","min","containerWidth","elOffsetRect","scrolledYTopEdge","scrolledYBottomEdge","getOverflowParent","parentElement","getIdFromTrigger","getDocumentScrollTop","getDocumentScrollLeft","getTime","throttle","func","wait","timeout","previous","later","leading","remaining","clearTimeout","trailing","setTimeout","$jscomp","scope","set","getGlobal","SYMBOL_PREFIX","initSymbol","symbolCounter_","initSymbolIterator","iterator","arrayIterator","iteratorPrototype","array","iteratorFromArray","String","u","polyfill","$jscomp$this","anime","a","h","col","b","f","k","reduce","concat","arr","HTMLCollection","some","C","D","z","und","T","exec","U","y","V","I","fnc","total","E","getPropertyValue","J","dom","W","svg","X","transform","K","L","F","sqrt","pow","x","points","numberOfItems","getItem","N","getTotalLength","PI","Y","getPointAtLength","atan2","O","pth","totalLength","rgb","hex","hsl","original","numbers","strings","P","Z","aa","duration","delay","ba","ca","A","Q","da","tweens","to","w","from","end","easing","elasticity","isPath","isColor","round","ea","animatable","R","fa","ga","S","targets","animatables","animations","q","Promise","g","reversed","ha","currentValue","H","currentTime","progress","G","seek","began","direction","pause","completed","reset","loop","paused","tick","speed","play","B","ia","restart","autoplay","update","begin","run","complete","SVGElement","Float32Array","abs","sin","asin","In","Out","InOut","linear","forEach","attribute","requestAnimationFrame","cancelAnimationFrame","running","setDashoffset","bezier","easings","timeline","anim","_defaults","accordion","onOpenStart","onOpenEnd","onCloseStart","onCloseEnd","inDuration","outDuration","_Component","_this3","M_Collapsible","defaults","$headers","_setupEventHandlers","$activeBodies","_removeEventHandlers","_this4","_handleCollapsibleClickBound","_handleCollapsibleClick","_handleCollapsibleKeydownBound","_handleCollapsibleKeydown","header","_this5","$header","$collapsible","$collapsibleLi","$collapsibleLis","isActive","close","keyCode","_this6","$body","display","paddingTop","paddingBottom","pTop","pBottom","finalHeight","scrollHeight","_this7","padding","_this8","_animateIn","_animateOut","alignment","autoFocus","constrainWidth","coverTrigger","closeOnClick","hover","onItemClick","_Component2","_this9","M_Dropdown","_dropdowns","dropdownEl","$dropdownEl","isOpen","isScrollable","isTouchMoving","focusedIndex","filterQuery","_makeDropdownFocusable","_resetFilterQueryBound","_resetFilterQuery","_handleDocumentClickBound","_handleDocumentClick","_handleDocumentTouchmoveBound","_handleDocumentTouchmove","_handleDropdownClickBound","_handleDropdownClick","_handleDropdownKeydownBound","_handleDropdownKeydown","_handleTriggerKeydownBound","_handleTriggerKeydown","_resetDropdownStyles","_handleMouseEnterBound","_handleMouseEnter","_handleMouseLeaveBound","_handleMouseLeave","_handleClickBound","_handleClick","toEl","toElement","relatedTarget","leaveToDropdownContent","leaveToActiveDropdownTrigger","$closestTrigger","_this10","$target","itemEl","focusedElement","$activatableElement","newFocusedIndex","foundNewIndex","tabIndex","_focusFocusedItem","fromCharCode","string","newOptionEl","filterTimeout","transform-origin","opacity","focus","triggerBRect","dropdownBRect","idealHeight","idealWidth","idealXPos","idealYPos","dropdownBounds","closestOverflowParent","alignments","verticalAlignment","horizontalAlignment","oppositeAlignment","_this11","scaleX","scaleY","_this12","positionInfo","_getDropdownPosition","transformOrigin","_placeDropdown","_setupTemporaryEventHandlers","_removeTemporaryEventHandlers","preventScrolling","dismissible","startingTop","endingTop","_Component3","_this13","M_Modal","_openingTrigger","$overlay","_nthModalOpened","_count","_handleOverlayClickBound","_handleOverlayClick","_handleModalCloseClickBound","_handleModalCloseClick","_handleTriggerClick","$trigger","modalId","modalInstance","_modalsOpen","_this14","enterAnimOptions","_this15","exitAnimOptions","zIndex","insertAdjacentElement","_handleKeydownBound","_handleKeydown","_handleFocusBound","_handleFocus","_Component4","_this16","M_Materialbox","overlayActive","doneAnimating","placeholder","originalWidth","originalHeight","originInlineStyles","caption","_handleMaterialboxClickBound","_handleMaterialboxClick","ancestorsChanged","ancestor","curr","_this17","animOptions","newHeight","newWidth","windowWidth","windowHeight","maxWidth","maxHeight","_this18","attrWidth","attrHeight","_this19","_updateVars","_makeAncestorsOverflowVisible","z-index","will-change","overlayOffset","$photocaption","$photoCaption","ratio","widthPercent","heightPercent","_animateImageIn","_handleWindowScrollBound","_handleWindowScroll","_handleWindowResizeBound","_handleWindowResize","_handleWindowEscapeBound","_handleWindowEscape","_this20","_animateImageOut","responsiveThreshold","_Component5","_this21","M_Parallax","_enabled","$img","_updateParallax","_setupStyles","_parallaxes","_handleImageLoadBound","_handleImageLoad","_handleScrollThrottled","_handleScroll","_handleWindowResizeThrottled","offsetHeight","parallaxDist","parallax","parallaxInstance","onShow","swipeable","Infinity","_Component6","_this22","M_Tabs","$tabLinks","_setupActiveTabLink","_setupSwipeableTabs","_setupNormalTabs","_setTabsAndTabWidth","_createIndicator","_indicator","_teardownSwipeableTabs","_teardownNormalTabs","_handleTabClickBound","_handleTabClick","tabWidth","tabsWidth","_calcLeftPos","$activeTabLink","_calcRightPos","_this23","tab","tabLink","$oldContent","$content","prevIndex","_tabsCarousel","_animateIndicator","_this24","indicator","_this25","$tabsContent","link","$currContent","$tabsWrapper","activeTabIndex","fullWidth","noWrap","onCycleTo","scrollWidth","ceil","leftDelay","rightDelay","tabId","exitDelay","enterDelay","margin","transitionMovement","_Component7","_this26","M_Tooltip","isHovered","isFocused","_appendTooltipEl","tooltipEl","tooltipContentEl","_handleBlurBound","_handleBlur","isManual","_getAttributeOptions","_updateTooltipContent","_setEnterDelayTimeout","_setExitDelayTimeout","_this27","_exitDelayTimeout","_this28","_enterDelayTimeout","newCoordinates","origin","originHeight","originWidth","offsetWidth","tooltipHeight","tooltipWidth","targetTop","targetLeft","xMovement","yMovement","_repositionWithinScreen","newX","newY","_positionTooltip","visibility","translateX","translateY","attributeOptions","tooltipTextOption","positionOption","Waves","$$","convertStyle","Effect","button","ripple","docElem","box","pos","ownerDocument","defaultView","getWindow","relativeY","pageY","relativeX","pageX","scale","clientWidth","touches","rippleStyle","TouchHandler","touchup","ripples","-webkit-transition-duration","-moz-transition-duration","-o-transition-duration","transition-duration","-webkit-transform","-moz-transform","-ms-transform","-o-transform","wrapInput","wrapper","elementStyle","replaceChild","allowEvent","allow","showEffect","srcElement","getWavesEffectElement","displayEffect","attach","displayLength","completeCallback","activationPercent","Toast","panning","timeRemaining","_toasts","_createContainer","toastElement","_createToast","M_Toast","_setTimer","toast","HTMLElement","nodeName","_container","_this29","counterInterval","setInterval","dismiss","_this30","clearInterval","activationDistance","wasSwiped","transition","marginTop","_removeContainer","_onDragStart","_onDragMove","_onDragEnd","_draggedToast","startingXPos","_xPos","time","xPos","deltaX","velocityX","totalDeltaX","targetTouches","clientX","toastIndex","edge","draggable","_Component8","_this31","M_Sidenav","isDragged","lastWindowWidth","lastWindowHeight","_createOverlay","_createDragTarget","_setupClasses","_setupFixed","_sidenavs","_enableBodyScrolling","_overlay","dragTarget","overlay","_closeBound","_handleDragTargetDragBound","_handleDragTargetDrag","_handleDragTargetReleaseBound","_handleDragTargetRelease","_handleCloseDragBound","_handleCloseDrag","_handleCloseReleaseBound","_handleCloseRelease","_handleCloseTriggerClickBound","_handleCloseTriggerClick","sidenavId","sidenavInstance","_startingXpos","_time","_width","_initialScrollTop","_verticallyScrolling","currentScrollTop","_isCurrentlyFixed","_startDrag","_dragMoveUpdate","dragDirection","transformX","transformPrefix","percentOpen","_preventBodyScrolling","_animateSidenavIn","_animateOverlayIn","_this32","slideOutPercent","_animateSidenavOut","_animateOverlayOut","_this33","endPercent","_this34","scrollOffset","activeClass","getActiveElement","_Component9","_this35","M_ScrollSpy","_elements","_increment","tickId","_elementsInView","_visibleElements","throttledResize","_handleThrottledResizeBound","scrollspy","_ticks","intersections","_findElements","_enter","_i","_scrollspy","_lastTick","_exit","unshift","_this36","hits","currTop","elTop","elLeft","elRight","elBottom","limit","onAutocomplete","minLength","sortFunction","inputString","_Component10","_this37","M_Autocomplete","count","activeIndex","oldVal","$inputField","$active","_mousedown","_setupDropdown","_removeDropdown","_handleInputBlurBound","_handleInputBlur","_handleInputKeyupAndFocusBound","_handleInputKeyupAndFocus","_handleInputKeydownBound","_handleInputKeydown","_handleInputClickBound","_handleInputClick","_handleContainerMousedownAndTouchstartBound","_handleContainerMousedownAndTouchstart","_handleContainerMouseupAndTouchendBound","_handleContainerMouseupAndTouchend","ontouchstart","_this38","dropdown","selectOption","_resetAutocomplete","_keydown","liElement","numItems","img","matchStart","matchEnd","beforeMatch","matchText","afterMatch","_resetCurrentElement","trim","_this39","matchingData","entry","sort","_entry","$autocompleteOption","_highlight","_renderDropdown","recalculateDimensions","autofocus","validity","badInput","validate_field","hasLength","lenAttr","textareaAutoResize","$textarea","hiddenDiv","fontFamily","fontSize","lineHeight","paddingRight","paddingLeft","input_selector","formReset","M_FormSelect","$inputElement","text_area_selector","path_input","file_names","indicators","interval","Slider","_Component11","_this40","M_Slider","$slider","$slides","_setSliderHeight","_animateCaptionIn","placeholderBase64","_setupIndicators","$indicators","_removeIndicators","_this41","_handleIntervalBound","_handleInterval","_handleIndicatorClickBound","_handleIndicatorClick","_this42","currIndex","newActiveIndex","_this43","$indicator","_this44","$caption","newIndex","$card","$cardReveal","secondaryPlaceholder","autocompleteOptions","onChipAdd","onChipSelect","onChipDelete","_Component12","_this45","M_Chips","chipsData","$chips","_setupInput","hasAutocomplete","$input","_renderChips","_setupAutocomplete","_setPlaceholder","_setupLabel","_handleChipClickBound","_handleChipClick","_handleInputFocusBound","_handleInputFocus","_handleChipsKeydown","_handleChipsKeyup","_handleChipsBlur","$chip","clickedClose","deleteChip","selectChip","autocomplete","addChip","tag","chip","renderedChip","closeIcon","image","firstChild","chipEl","_renderChip","_this46","$label","exists","_isValid","chipIndex","_selectedChip","chipsKeydown","currChips","selectIndex","_selectIndex","_selectIndex2","onPositionChange","_Component13","_this47","M_Pushpin","originalOffset","_pushpins","_updatePosition","_removePinClasses","_updateElements","scrolled","elIndex","hoverEnabled","toolbarEnabled","_Component14","_this48","M_FloatingActionButton","$anchor","$menu","$floatingBtns","$floatingBtnsReverse","offsetY","offsetX","_handleFABClickBound","_handleFABClick","_handleOpenBound","_handleCloseBound","_animateInToolbar","_animateInFAB","_animateOutToolbar","_animateOutFAB","_this49","_this50","scaleFactor","_this51","btnRect","backdrop","fabColor","btnBottom","btnLeft","btnWidth","text-align","background-color","_this52","autoClose","format","parse","defaultDate","setDefaultDate","disableWeekends","disableDayFn","firstDay","minDate","maxDate","yearRange","minYear","maxYear","minMonth","maxMonth","startRange","endRange","isRTL","showMonthAfterYear","showDaysInNextAndPreviousMonths","showClearBtn","i18n","clear","previousMonth","nextMonth","months","monthsShort","weekdays","weekdaysShort","weekdaysAbbrev","onSelect","onOpen","onClose","onDraw","_Component15","_this53","M_Datepicker","setHours","_setupVariables","_insertHTMLIntoDOM","_setupModal","defDate","_isDate","setDate","setInputValue","gotoDate","modal","modalEl","destroySelects","oldYearSelect","calendarEl","oldMonthSelect","clearBtn","doneBtn","cancelBtn","$modalEl","_this54","_this55","date","label","formats","preventOnSelect","_renderDateDisplay","_setToStartOfDay","firedBy","displayDate","day","getDay","month","getMonth","getDate","yearTextEl","getFullYear","dateTextEl","newCalendar","calendars","firstVisibleDate","year","lastVisibleDate","visibleDate","setMonth","adjustCalendars","adjustCalendar","calendar","randId","opts","days","_getDaysInMonth","yearOfPreviousMonth","yearOfNextMonth","daysInPreviousMonth","cells","isWeekSelected","isSelected","_compareDates","isToday","hasEvent","toDateString","isEmpty","dayNumber","monthNumber","yearNumber","isStartRange","isEndRange","isInRange","dayConfig","isDisabled","_isWeekend","renderDay","renderRow","renderTable","ariaSelected","isRowSelected","renderHead","renderBody","renderDayName","rows","refYear","monthHtml","yearHtml","isMinYear","isMaxYear","force","_y","_m","renderTitle","render","yearSelect","monthSelect","dropdownOptions","_handleYearChange","_handleMonthChange","_handleInputChangeBound","_handleInputChange","_handleCalendarClickBound","_handleCalendarClick","_finishSelectionBound","_finishSelection","_handleClearClickBound","_handleClearClick","_this56","_template","dd","ddd","dddd","mm","mmm","mmmm","yy","yyyy","prevMonth","gotoMonth","gotoYear","abbr","_isLeapYear","dialRadius","outerRadius","innerRadius","tickRadius","defaultTime","fromNow","twelveHour","vibrate","_Component16","_this57","M_Timepicker","_clockSetup","_pickerSetup","_handleClockClickStartBound","_handleClockClickStart","_handleDocumentClickMoveBound","_handleDocumentClickMove","_handleDocumentClickEndBound","_handleDocumentClickEnd","plate","spanHours","showView","spanMinutes","clockPlateBR","x0","y0","moved","clickPos","_Pos","dx","dy","setHand","_this58","currentView","minutesView","hours","minutes","containerEl","_this59","navigator","webkitVibrate","_canvas","hoursView","spanAmPm","footer","amOrPm","$clearBtn","confirmationBtnsContainer","$amBtn","$pmBtn","_handleAmPmClick","_buildHoursView","_buildMinutesView","_buildSVGClock","diameter","_createSVGEl","bearing","hand","bg","$tick","radian","radius","cos","_i2","_tick","_radian","_radius","_addLeadingZero","$btnClicked","_updateAmPmView","getHours","getMinutes","view","isHours","nextView","hideView","resetClock","toggleViewTimer","canvas","roundBy5","_this60","unit","inner","vibrateTimer","cx1","cy1","cx2","cy2","_updateTimeFromInput","clearValue","num","createElementNS","clientY","CharacterCounter","_Component17","_this61","M_CharacterCounter","isInvalid","isValidLength","_setupCounter","_removeCounter","_handleUpdateCounterBound","updateCounter","counterEl","float","font-size","maxLength","actualLength","counterString","_validateInput","dist","shift","numVisible","_Component18","_this62","M_Carousel","hasMultipleSlides","showIndicators","pressed","dragged","images","itemWidth","itemHeight","dim","_autoScrollBound","_autoScroll","_trackBound","_track","_setCarouselHeight","xform","every","prefix","_scroll","_this63","_handleCarouselTapBound","_handleCarouselTap","_handleCarouselDragBound","_handleCarouselDrag","_handleCarouselReleaseBound","_handleCarouselRelease","_handleCarouselClickBound","_handleCarouselClick","_handleResize","_this64","verticalDragged","reference","_xpos","referenceY","_ypos","velocity","amplitude","frame","timestamp","ticker","delta","stopPropagation","clickedIndex","_wrap","center","_cycleTo","imageHeight","imageOnly","_this65","firstSlide","firstImage","naturalWidth","naturalHeight","adjustedHeight","slideHeight","elapsed","exp","_this66","scrollingTimeout","half","dir","tween","zTranslation","tweenedOpacity","centerTweenedOpacity","lastCenter","numVisibleOffset","clientHeight","diff","activeIndicator","transformString","_updateItemStyle","_transformString","_transformString2","_transformString3","$currItem","oneTimeCallback","_Component19","_this67","M_TapTarget","$origin","_setup","_calculatePositioning","_handleTargetClickBound","_handleTargetClick","_handleOriginClickBound","_handleOriginClick","originEl","waveEl","contentEl","outerWidth","outerHeight","originTop","originLeft","centerX","centerY","isLeft","isRight","isTop","isBottom","isCenterX","tapTargetWidth","tapTargetHeight","tapTargetTop","tapTargetLeft","tapTargetPosition","tapTargetTextWidth","tapTargetTextHeight","tapTargetTextTop","tapTargetTextLeft","tapTargetTextPadding","tapTargetTextAlign","tapTargetWaveWidth","tapTargetWaveHeight","tapTargetWaveTop","tapTargetWaveLeft","tapTargetWrapperCssObj","tapTargetTextRight","tapTargetTextBottom","verticalAlign","_Component20","_this68","isMultiple","_keysSelected","_valueDict","_this69","_handleSelectChangeBound","_handleSelectChange","_handleOptionClickBound","_handleOptionClick","input","_this70","_setValueToInput","option","placeholderOption","_toggleEntryFromArray","_setSelectedStates","_this71","$selectOptions","optionEl","_appendOptionWithIcon","_addOptionToValueDict","selectOptions","dropdownIcon","selectedOption","disabledClass","optgroupClass","multipleCheckbox","liEl","spanEl","iconUrl","imgEl","notAdded","$optionLi","firstDisabled","optionIsSelected","_activateOption","newOption","selectedValues","Range","_Component21","_this72","M_Range","_setupThumb","_removeThumb","_handleRangeChangeBound","_handleRangeChange","_handleRangeMousedownTouchstartBound","_handleRangeMousedownTouchstart","_handleRangeInputMousemoveTouchmoveBound","_handleRangeInputMousemoveTouchmove","_handleRangeMouseupTouchendBound","_handleRangeMouseupTouchend","_handleRangeBlurMouseoutTouchleaveBound","_handleRangeBlurMouseoutTouchleave","thumb","_showRangeBubble","_calcRangeOffset","marginLeft","_xcloner_admin__WEBPACK_IMPORTED_MODULE_0__","Xcloner_Restore","steps","ajaxurl","upload_file_event","Event","local_restore","detail","original_value","set_current_step","class","restore_script_url","remote_mysql_host","remote_mysql_db","remote_mysql_user","remote_mysql_pass","CustomEvent","local_backup_file","get_remote_restore_path_default","get_backup_file","remote_path","get_remote_path","processed","extracted_files","filter_files","mysqldump_file","wp_home_url","remote_restore_url","wp_site_url","restore_site_url","backup_archive","delete_backup_temporary_folder","delete_restore_script","update_remote_site_url","delete_backup_archive","target_url","total_parts","uploaded_size","part_text","next_step","href_url","inc","xcloner_action","XCLONER_WPNONCE","_wpnonce","request","crossDomain","xcloner_auth_key","xcloner_restore","get_cancel","upload_backup_file","set_restore_script_url","verify_restore_url","get_remote_backup_files","get_remote_mysqldump_files","restore_finish","open_target_site","remote_database_file","remote_restore_mysql_backup_file","list_backup_content","remote_restore_backup_file","edit_schedule_modal_instance","xcloner_scheduler","edit_modal","create_modal","email_notification","diff_start_date","recurrence","backup_type","start_at","backup_encrypt","backup_delete_after_remote_transfer","tables","parseJSON","tables_list","db","excluded_files","exclude_files_list","form","DataTable","responsive","bFilter","order","buttons","language","emptyTable","selectAll","selectNone","columnDefs","orderable","fnDrawCallback","oSettings","get_schedule_by_id","confirm","delete_schedule_by_id","save_schedule","pickatime","default","twelvehour","donetext","autoclose","pickadate","selectMonths","selectYears","onSet"],"mappings":"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","file":"./admin/js/index.min.js","sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///admin/js/index.min.js"],"names":["modules","installedModules","__webpack_require__","moduleId","exports","module","i","l","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","__webpack_exports__","error_modal","next_tab","doShortText","show_ajax_error","ID","getUrlParam","_xcloner_remote_storage_class__WEBPACK_IMPORTED_MODULE_0__","_xcloner_backup_class__WEBPACK_IMPORTED_MODULE_1__","_xcloner_manage_backups_class__WEBPACK_IMPORTED_MODULE_2__","document","addEventListener","Modalelem","querySelector","M","Modal","init","jQuery","ready","tooltip","collapsible","click","this","toggleClass","each","on","fadeIn","select","toggle","e","xcloner_manage_backups","id","attr","substr","download_backup_by_name","preventDefault","removeClass","find","addClass","location","hash","window","replace","trigger","elem","hasClass","text","text_lenght","length","first","last","title","msg","json","xcloner_backup","cancel_backup","undefined","responseText","status","statusText","JSON","stringify","open","Math","random","toString","search","split","remote_storage","dataTable","Xcloner_Manage_Backups","backup_cotent_modal","backup_encryption_modal","backup_decryption_modal","remote_storage_modal","local_storage_upload_modal","constructor","file_counter","storage_selection","XCLONER_AJAXURL","delete_backup_by_name","ajax","url","method","data","action","success","response","finished","row","parents","remove","draw","alert","dataType","list_backup_content_callback","backup_file","start","part","$this","file","error","prepend","message","css","files_text","files","total_size","parseInt","mtime","path","size","reverse","join","is","xhr","textStatus","list_backup_content","backup_encryption_callback","iv","percent","processing_file","show","reload","backup_encryption","hide","backup_decryption_callback","decryption_key","val","backup_decryption","cloud_upload","delete_after_transfer","updateTextFields","formSelect","off","storage_type","copy_remote_to_local","Xcloner_Remote_Storage","toggle_status","field","Xcloner_Backup","cancel","params","generate_hash","last_dumpfile","last_backup_file","backup_part","backup_size_total","resume","get_form_params","table_params","files_params","jstree","parent","index","$return","backup_params","serializeArray","do_backup_database_callback","extra","stats","tables_count","database_count","total_records","tableName","databaseName","processedRecords","startAtRecord","endDump","records","dumpfile","db_text","getSize","dumpsize","html","prependTo","do_ajax","do_backup_files","do_backup_database","do_scan_filesystem_callback","total_files_num","total_files_size","parseFloat","toFixed","last_logged_file","do_scan_filesystem","do_backup_files_callback","start_at_line","backup_size","processed_file","start_at_byte","processed_size","processed_file_size","backup_text","backup_archive_name_full","backup_archive_name","lines_total","backup_parent","do_backup_encryption","do_remote_storage_upload","do_backup_done","do_backup_encryption_callback","do_upload_backup_to_remote_callback","backup_name","delete_backup_after_transfer","Number","set_cancel","do_save_schedule_callback","restart_backup","start_backup","get_cancel","init_resume","callback","type","API_ID","err","done","error_message","bytes","conv","global","__WEBPACK_AMD_DEFINE_RESULT__","_get","receiver","Function","desc","getOwnPropertyDescriptor","getPrototypeOf","_createClass","defineProperties","target","props","descriptor","configurable","writable","Constructor","protoProps","staticProps","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","TypeError","setPrototypeOf","__proto__","_classCallCheck","instance","cash","frag","doc","win","ArrayProto","Array","slice","filter","push","noop","isFunction","item","isString","idMatch","classMatch","htmlMatch","singlet","selector","context","test","getElementsByClassName","getElementsByTagName","querySelectorAll","parseHTML","str","base","implementation","createHTMLDocument","createElement","href","head","appendChild","body","innerHTML","childNodes","onReady","fn","readyState","Init","elems","getElementById","nodeType","splice","map","collection","matches","el","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","getCompareFunction","unique","indexOf","extend","args","arguments","merge","second","len","j","isArray","isNumeric","isNaN","isFinite","uid","Date","now","getDataCache","node","setData","getData","dataset","removeData","removeAttr","v","notWhiteMatch","getClasses","match","classList","contains","RegExp","className","spacedName","add","classes","getAttribute","setAttribute","check","prop","removeAttribute","removeProp","state","eq","comparator","child","children","cache","style","camelRegex","whiteSpace","camelCase","letter","getPrefixedProp","ucProp","charAt","toUpperCase","compute","getComputedStyle","registerEvent","eventName","eventCache","removeEvent","events","removeEventListener","event","encode","encodeURIComponent","getSelectMultiple_","values","options","selected","getSelectSingle_","selectedIndex","getValue","toLowerCase","checked","insertElement","insertBefore","insertContent","insertAdjacentHTML","cloneNode","prefixedProp","lower","getBoundingClientRect","margins","delegate","runOnce","originalCallback","parentNode","finalCallback","apply","one","createEvent","evt","initEvent","dispatchEvent","serialize","query","elements","disabled","tagName","after","insertAfter","append","content","appendTo","before","clone","empty","source","outerHTML","_this","sibling","nextSibling","_this2","removeChild","textContent","docEl","documentElement","position","left","offsetLeft","top","offsetTop","offset","rect","pageYOffset","clientTop","pageXOffset","clientLeft","offsetParent","closest","has","next","nextElementSibling","not","result","prev","previousElementSibling","siblings","factory","Component","classDef","Element","console","Error","ins","getInstance","destroy","$el","els","instances","jquery","NodeList","instancesArr","Package","jQueryLoaded","version","keys","TAB","ENTER","ESC","ARROW_UP","ARROW_DOWN","tabPressed","keyDown","which","initializeJqueryWrapper","plugin","pluginName","classRef","methodOrOptions","AutoInit","root","registry","Autocomplete","Carousel","Chips","Collapsible","Datepicker","Dropdown","Materialbox","Parallax","Pushpin","ScrollSpy","FormSelect","Sidenav","Tabs","TapTarget","Timepicker","Tooltip","FloatingActionButton","objectSelectorString","obj","guid","s4","floor","substring","escapeHash","elementOrParentIsFixed","element","$element","$","$checkElements","isFixed","checkWithinContainer","container","bounding","edges","right","bottom","containerRect","containerBottom","max","innerHeight","scrollLeft","scrollTop","scrolledX","scrolledY","width","innerWidth","height","checkPossibleAlignments","canAlign","spaceOnTop","spaceOnRight","spaceOnBottom","spaceOnLeft","containerAllowsOverflow","overflow","containerHeight","min","containerWidth","elOffsetRect","scrolledYTopEdge","scrolledYBottomEdge","getOverflowParent","parentElement","getIdFromTrigger","getDocumentScrollTop","getDocumentScrollLeft","getTime","throttle","func","wait","timeout","previous","later","leading","remaining","clearTimeout","trailing","setTimeout","$jscomp","scope","set","getGlobal","SYMBOL_PREFIX","initSymbol","symbolCounter_","initSymbolIterator","iterator","arrayIterator","iteratorPrototype","array","iteratorFromArray","String","u","polyfill","$jscomp$this","anime","a","h","col","b","f","k","reduce","concat","arr","HTMLCollection","some","C","D","z","und","T","exec","U","y","V","I","fnc","total","E","getPropertyValue","J","dom","W","svg","X","transform","K","L","F","sqrt","pow","x","points","numberOfItems","getItem","N","getTotalLength","PI","Y","getPointAtLength","atan2","O","pth","totalLength","rgb","hex","hsl","original","numbers","strings","P","Z","aa","duration","delay","ba","ca","A","Q","da","tweens","to","w","from","end","easing","elasticity","isPath","isColor","round","ea","animatable","R","fa","ga","S","targets","animatables","animations","q","Promise","g","reversed","ha","currentValue","H","currentTime","progress","G","seek","began","direction","pause","completed","reset","loop","paused","tick","speed","play","B","ia","restart","autoplay","update","begin","run","complete","SVGElement","Float32Array","abs","sin","asin","In","Out","InOut","linear","forEach","attribute","requestAnimationFrame","cancelAnimationFrame","running","setDashoffset","bezier","easings","timeline","anim","_defaults","accordion","onOpenStart","onOpenEnd","onCloseStart","onCloseEnd","inDuration","outDuration","_Component","_this3","M_Collapsible","defaults","$headers","_setupEventHandlers","$activeBodies","_removeEventHandlers","_this4","_handleCollapsibleClickBound","_handleCollapsibleClick","_handleCollapsibleKeydownBound","_handleCollapsibleKeydown","header","_this5","$header","$collapsible","$collapsibleLi","$collapsibleLis","isActive","close","keyCode","_this6","$body","display","paddingTop","paddingBottom","pTop","pBottom","finalHeight","scrollHeight","_this7","padding","_this8","_animateIn","_animateOut","alignment","autoFocus","constrainWidth","coverTrigger","closeOnClick","hover","onItemClick","_Component2","_this9","M_Dropdown","_dropdowns","dropdownEl","$dropdownEl","isOpen","isScrollable","isTouchMoving","focusedIndex","filterQuery","_makeDropdownFocusable","_resetFilterQueryBound","_resetFilterQuery","_handleDocumentClickBound","_handleDocumentClick","_handleDocumentTouchmoveBound","_handleDocumentTouchmove","_handleDropdownClickBound","_handleDropdownClick","_handleDropdownKeydownBound","_handleDropdownKeydown","_handleTriggerKeydownBound","_handleTriggerKeydown","_resetDropdownStyles","_handleMouseEnterBound","_handleMouseEnter","_handleMouseLeaveBound","_handleMouseLeave","_handleClickBound","_handleClick","toEl","toElement","relatedTarget","leaveToDropdownContent","leaveToActiveDropdownTrigger","$closestTrigger","_this10","$target","itemEl","focusedElement","$activatableElement","newFocusedIndex","foundNewIndex","tabIndex","_focusFocusedItem","fromCharCode","string","newOptionEl","filterTimeout","opacity","focus","triggerBRect","dropdownBRect","idealHeight","idealWidth","idealXPos","idealYPos","dropdownBounds","closestOverflowParent","alignments","verticalAlignment","horizontalAlignment","oppositeAlignment","_this11","scaleX","scaleY","_this12","positionInfo","_getDropdownPosition","transformOrigin","_placeDropdown","_setupTemporaryEventHandlers","_removeTemporaryEventHandlers","preventScrolling","dismissible","startingTop","endingTop","_Component3","_this13","M_Modal","_openingTrigger","$overlay","_nthModalOpened","_count","_handleOverlayClickBound","_handleOverlayClick","_handleModalCloseClickBound","_handleModalCloseClick","_handleTriggerClick","$trigger","modalId","modalInstance","_modalsOpen","_this14","enterAnimOptions","_this15","exitAnimOptions","zIndex","insertAdjacentElement","_handleKeydownBound","_handleKeydown","_handleFocusBound","_handleFocus","_Component4","_this16","M_Materialbox","overlayActive","doneAnimating","placeholder","originalWidth","originalHeight","originInlineStyles","caption","_handleMaterialboxClickBound","_handleMaterialboxClick","ancestorsChanged","ancestor","curr","_this17","animOptions","newHeight","newWidth","windowWidth","windowHeight","maxWidth","maxHeight","_this18","attrWidth","attrHeight","_this19","_updateVars","_makeAncestorsOverflowVisible","overlayOffset","$photocaption","$photoCaption","ratio","widthPercent","heightPercent","_animateImageIn","_handleWindowScrollBound","_handleWindowScroll","_handleWindowResizeBound","_handleWindowResize","_handleWindowEscapeBound","_handleWindowEscape","_this20","_animateImageOut","responsiveThreshold","_Component5","_this21","M_Parallax","_enabled","$img","_updateParallax","_setupStyles","_parallaxes","_handleImageLoadBound","_handleImageLoad","_handleScrollThrottled","_handleScroll","_handleWindowResizeThrottled","offsetHeight","parallaxDist","parallax","parallaxInstance","onShow","swipeable","Infinity","_Component6","_this22","M_Tabs","$tabLinks","_setupActiveTabLink","_setupSwipeableTabs","_setupNormalTabs","_setTabsAndTabWidth","_createIndicator","_indicator","_teardownSwipeableTabs","_teardownNormalTabs","_handleTabClickBound","_handleTabClick","tabWidth","tabsWidth","_calcLeftPos","$activeTabLink","_calcRightPos","_this23","tab","tabLink","$oldContent","$content","prevIndex","_tabsCarousel","_animateIndicator","_this24","indicator","_this25","$tabsContent","link","$currContent","$tabsWrapper","activeTabIndex","fullWidth","noWrap","onCycleTo","scrollWidth","ceil","leftDelay","rightDelay","tabId","exitDelay","enterDelay","margin","transitionMovement","_Component7","_this26","M_Tooltip","isHovered","isFocused","_appendTooltipEl","tooltipEl","tooltipContentEl","_handleBlurBound","_handleBlur","isManual","_getAttributeOptions","_updateTooltipContent","_setEnterDelayTimeout","_setExitDelayTimeout","_this27","_exitDelayTimeout","_this28","_enterDelayTimeout","newCoordinates","origin","originHeight","originWidth","offsetWidth","tooltipHeight","tooltipWidth","targetTop","targetLeft","xMovement","yMovement","_repositionWithinScreen","newX","newY","_positionTooltip","visibility","translateX","translateY","attributeOptions","tooltipTextOption","positionOption","Waves","$$","convertStyle","Effect","button","ripple","docElem","box","pos","ownerDocument","defaultView","getWindow","relativeY","pageY","relativeX","pageX","scale","clientWidth","touches","rippleStyle","TouchHandler","touchup","ripples","wrapInput","wrapper","elementStyle","replaceChild","allowEvent","allow","showEffect","srcElement","getWavesEffectElement","displayEffect","attach","displayLength","completeCallback","activationPercent","Toast","panning","timeRemaining","_toasts","_createContainer","toastElement","_createToast","M_Toast","_setTimer","toast","HTMLElement","nodeName","_container","_this29","counterInterval","setInterval","dismiss","_this30","clearInterval","activationDistance","wasSwiped","transition","marginTop","_removeContainer","_onDragStart","_onDragMove","_onDragEnd","_draggedToast","startingXPos","_xPos","time","xPos","deltaX","velocityX","totalDeltaX","targetTouches","clientX","toastIndex","edge","draggable","_Component8","_this31","M_Sidenav","isDragged","lastWindowWidth","lastWindowHeight","_createOverlay","_createDragTarget","_setupClasses","_setupFixed","_sidenavs","_enableBodyScrolling","_overlay","dragTarget","overlay","_closeBound","_handleDragTargetDragBound","_handleDragTargetDrag","_handleDragTargetReleaseBound","_handleDragTargetRelease","_handleCloseDragBound","_handleCloseDrag","_handleCloseReleaseBound","_handleCloseRelease","_handleCloseTriggerClickBound","_handleCloseTriggerClick","sidenavId","sidenavInstance","_startingXpos","_time","_width","_initialScrollTop","_verticallyScrolling","currentScrollTop","_isCurrentlyFixed","_startDrag","_dragMoveUpdate","dragDirection","transformX","transformPrefix","percentOpen","_preventBodyScrolling","_animateSidenavIn","_animateOverlayIn","_this32","slideOutPercent","_animateSidenavOut","_animateOverlayOut","_this33","endPercent","_this34","scrollOffset","activeClass","getActiveElement","_Component9","_this35","M_ScrollSpy","_elements","_increment","tickId","_elementsInView","_visibleElements","throttledResize","_handleThrottledResizeBound","scrollspy","_ticks","intersections","_findElements","_enter","_i","_scrollspy","_lastTick","_exit","unshift","_this36","hits","currTop","elTop","elLeft","elRight","elBottom","limit","onAutocomplete","minLength","sortFunction","inputString","_Component10","_this37","M_Autocomplete","count","activeIndex","oldVal","$inputField","$active","_mousedown","_setupDropdown","_removeDropdown","_handleInputBlurBound","_handleInputBlur","_handleInputKeyupAndFocusBound","_handleInputKeyupAndFocus","_handleInputKeydownBound","_handleInputKeydown","_handleInputClickBound","_handleInputClick","_handleContainerMousedownAndTouchstartBound","_handleContainerMousedownAndTouchstart","_handleContainerMouseupAndTouchendBound","_handleContainerMouseupAndTouchend","ontouchstart","_this38","dropdown","selectOption","_resetAutocomplete","_keydown","liElement","numItems","img","matchStart","matchEnd","beforeMatch","matchText","afterMatch","_resetCurrentElement","trim","_this39","matchingData","entry","sort","_entry","$autocompleteOption","_highlight","_renderDropdown","recalculateDimensions","autofocus","validity","badInput","validate_field","hasLength","lenAttr","textareaAutoResize","$textarea","hiddenDiv","fontFamily","fontSize","lineHeight","paddingRight","paddingLeft","input_selector","formReset","M_FormSelect","$inputElement","text_area_selector","path_input","file_names","indicators","interval","Slider","_Component11","_this40","M_Slider","$slider","$slides","_setSliderHeight","_animateCaptionIn","placeholderBase64","_setupIndicators","$indicators","_removeIndicators","_this41","_handleIntervalBound","_handleInterval","_handleIndicatorClickBound","_handleIndicatorClick","_this42","currIndex","newActiveIndex","_this43","$indicator","_this44","$caption","newIndex","$card","$cardReveal","secondaryPlaceholder","autocompleteOptions","onChipAdd","onChipSelect","onChipDelete","_Component12","_this45","M_Chips","chipsData","$chips","_setupInput","hasAutocomplete","$input","_renderChips","_setupAutocomplete","_setPlaceholder","_setupLabel","_handleChipClickBound","_handleChipClick","_handleInputFocusBound","_handleInputFocus","_handleChipsKeydown","_handleChipsKeyup","_handleChipsBlur","$chip","clickedClose","deleteChip","selectChip","autocomplete","addChip","tag","chip","renderedChip","closeIcon","image","firstChild","chipEl","_renderChip","_this46","$label","exists","_isValid","chipIndex","_selectedChip","chipsKeydown","currChips","selectIndex","_selectIndex","_selectIndex2","onPositionChange","_Component13","_this47","M_Pushpin","originalOffset","_pushpins","_updatePosition","_removePinClasses","_updateElements","scrolled","elIndex","hoverEnabled","toolbarEnabled","_Component14","_this48","M_FloatingActionButton","$anchor","$menu","$floatingBtns","$floatingBtnsReverse","offsetY","offsetX","_handleFABClickBound","_handleFABClick","_handleOpenBound","_handleCloseBound","_animateInToolbar","_animateInFAB","_animateOutToolbar","_animateOutFAB","_this49","_this50","scaleFactor","_this51","btnRect","backdrop","fabColor","btnBottom","btnLeft","btnWidth","_this52","autoClose","format","parse","defaultDate","setDefaultDate","disableWeekends","disableDayFn","firstDay","minDate","maxDate","yearRange","minYear","maxYear","minMonth","maxMonth","startRange","endRange","isRTL","showMonthAfterYear","showDaysInNextAndPreviousMonths","showClearBtn","i18n","clear","previousMonth","nextMonth","months","monthsShort","weekdays","weekdaysShort","weekdaysAbbrev","onSelect","onOpen","onClose","onDraw","_Component15","_this53","M_Datepicker","setHours","_setupVariables","_insertHTMLIntoDOM","_setupModal","defDate","_isDate","setDate","setInputValue","gotoDate","modal","modalEl","destroySelects","oldYearSelect","calendarEl","oldMonthSelect","clearBtn","doneBtn","cancelBtn","$modalEl","_this54","_this55","date","label","formats","preventOnSelect","_renderDateDisplay","_setToStartOfDay","firedBy","displayDate","day","getDay","month","getMonth","getDate","yearTextEl","getFullYear","dateTextEl","newCalendar","calendars","firstVisibleDate","year","lastVisibleDate","visibleDate","setMonth","adjustCalendars","adjustCalendar","calendar","randId","opts","days","_getDaysInMonth","yearOfPreviousMonth","yearOfNextMonth","daysInPreviousMonth","cells","isWeekSelected","isSelected","_compareDates","isToday","hasEvent","toDateString","isEmpty","dayNumber","monthNumber","yearNumber","isStartRange","isEndRange","isInRange","dayConfig","isDisabled","_isWeekend","renderDay","renderRow","renderTable","ariaSelected","isRowSelected","renderHead","renderBody","renderDayName","rows","refYear","monthHtml","yearHtml","isMinYear","isMaxYear","force","_y","_m","renderTitle","render","yearSelect","monthSelect","dropdownOptions","_handleYearChange","_handleMonthChange","_handleInputChangeBound","_handleInputChange","_handleCalendarClickBound","_handleCalendarClick","_finishSelectionBound","_finishSelection","_handleClearClickBound","_handleClearClick","_this56","_template","dd","ddd","dddd","mm","mmm","mmmm","yy","yyyy","prevMonth","gotoMonth","gotoYear","abbr","_isLeapYear","dialRadius","outerRadius","innerRadius","tickRadius","defaultTime","fromNow","twelveHour","vibrate","_Component16","_this57","M_Timepicker","_clockSetup","_pickerSetup","_handleClockClickStartBound","_handleClockClickStart","_handleDocumentClickMoveBound","_handleDocumentClickMove","_handleDocumentClickEndBound","_handleDocumentClickEnd","plate","spanHours","showView","spanMinutes","clockPlateBR","x0","y0","moved","clickPos","_Pos","dx","dy","setHand","_this58","currentView","minutesView","hours","minutes","containerEl","_this59","navigator","webkitVibrate","_canvas","hoursView","spanAmPm","footer","amOrPm","$clearBtn","confirmationBtnsContainer","$amBtn","$pmBtn","_handleAmPmClick","_buildHoursView","_buildMinutesView","_buildSVGClock","diameter","_createSVGEl","bearing","hand","bg","$tick","radian","radius","cos","_i2","_tick","_radian","_radius","_addLeadingZero","$btnClicked","_updateAmPmView","getHours","getMinutes","view","isHours","nextView","hideView","resetClock","toggleViewTimer","canvas","roundBy5","_this60","unit","inner","vibrateTimer","cx1","cy1","cx2","cy2","_updateTimeFromInput","clearValue","num","createElementNS","clientY","CharacterCounter","_Component17","_this61","M_CharacterCounter","isInvalid","isValidLength","_setupCounter","_removeCounter","_handleUpdateCounterBound","updateCounter","counterEl","float","maxLength","actualLength","counterString","_validateInput","dist","shift","numVisible","_Component18","_this62","M_Carousel","hasMultipleSlides","showIndicators","pressed","dragged","images","itemWidth","itemHeight","dim","_autoScrollBound","_autoScroll","_trackBound","_track","_setCarouselHeight","xform","every","prefix","_scroll","_this63","_handleCarouselTapBound","_handleCarouselTap","_handleCarouselDragBound","_handleCarouselDrag","_handleCarouselReleaseBound","_handleCarouselRelease","_handleCarouselClickBound","_handleCarouselClick","_handleResize","_this64","verticalDragged","reference","_xpos","referenceY","_ypos","velocity","amplitude","frame","timestamp","ticker","delta","stopPropagation","clickedIndex","_wrap","center","_cycleTo","imageHeight","imageOnly","_this65","firstSlide","firstImage","naturalWidth","naturalHeight","adjustedHeight","slideHeight","elapsed","exp","_this66","scrollingTimeout","half","dir","tween","zTranslation","tweenedOpacity","centerTweenedOpacity","lastCenter","numVisibleOffset","clientHeight","diff","activeIndicator","transformString","_updateItemStyle","_transformString","_transformString2","_transformString3","$currItem","oneTimeCallback","_Component19","_this67","M_TapTarget","$origin","_setup","_calculatePositioning","_handleTargetClickBound","_handleTargetClick","_handleOriginClickBound","_handleOriginClick","originEl","waveEl","contentEl","outerWidth","outerHeight","originTop","originLeft","centerX","centerY","isLeft","isRight","isTop","isBottom","isCenterX","tapTargetWidth","tapTargetHeight","tapTargetTop","tapTargetLeft","tapTargetPosition","tapTargetTextWidth","tapTargetTextHeight","tapTargetTextTop","tapTargetTextLeft","tapTargetTextPadding","tapTargetTextAlign","tapTargetWaveWidth","tapTargetWaveHeight","tapTargetWaveTop","tapTargetWaveLeft","tapTargetWrapperCssObj","tapTargetTextRight","tapTargetTextBottom","verticalAlign","_Component20","_this68","isMultiple","_keysSelected","_valueDict","_this69","_handleSelectChangeBound","_handleSelectChange","_handleOptionClickBound","_handleOptionClick","input","_this70","_setValueToInput","option","placeholderOption","_toggleEntryFromArray","_setSelectedStates","_this71","$selectOptions","optionEl","_appendOptionWithIcon","_addOptionToValueDict","selectOptions","dropdownIcon","selectedOption","disabledClass","optgroupClass","multipleCheckbox","liEl","spanEl","iconUrl","imgEl","notAdded","$optionLi","firstDisabled","optionIsSelected","_activateOption","newOption","selectedValues","Range","_Component21","_this72","M_Range","_setupThumb","_removeThumb","_handleRangeChangeBound","_handleRangeChange","_handleRangeMousedownTouchstartBound","_handleRangeMousedownTouchstart","_handleRangeInputMousemoveTouchmoveBound","_handleRangeInputMousemoveTouchmove","_handleRangeMouseupTouchendBound","_handleRangeMouseupTouchend","_handleRangeBlurMouseoutTouchleaveBound","_handleRangeBlurMouseoutTouchleave","thumb","_showRangeBubble","_calcRangeOffset","marginLeft","_xcloner_admin__WEBPACK_IMPORTED_MODULE_0__","Xcloner_Restore","steps","ajaxurl","upload_file_event","Event","local_restore","detail","original_value","set_current_step","class","restore_script_url","remote_mysql_host","remote_mysql_db","remote_mysql_user","remote_mysql_pass","get_remote_backup_files_callback","CustomEvent","get_remote_backup_files","local_backup_file","get_remote_restore_path_default","get_remote_mysqldump_files_callback","get_remote_mysqldump_files","get_backup_file","remote_path","get_remote_path","get_remote_restore_path_default_callback","remote_restore_backup_file_callback","processed","extracted_files","remote_restore_backup_file","filter_files","remote_restore_mysql_backup_file_callback","remote_restore_mysql_backup_file","mysqldump_file","wp_home_url","remote_restore_url","wp_site_url","restore_site_url","restore_finish_callback","restore_finish","backup_archive","delete_backup_temporary_folder","delete_restore_script","update_remote_site_url","delete_backup_archive","upload_backup_file","target_url","upload_backup_file_callback","total_parts","uploaded_size","part_text","verify_restore_url_callback","next_step","href_url","verify_restore_url","open_target_site","inc","xcloner_action","XCLONER_WPNONCE","_wpnonce","request","crossDomain","set_restore_script_url","xcloner_auth_key","xcloner_restore","remote_database_file","edit_schedule_modal_instance","xcloner_scheduler","edit_modal","get_schedule_by_id","create_modal","delete_schedule_by_id","email_notification","diff_start_date","recurrence","backup_type","start_at","backup_encrypt","backup_delete_after_remote_transfer","tables","parseJSON","tables_list","db","excluded_files","exclude_files_list","save_schedule","form","IsJsonString","DataTable","responsive","bFilter","order","buttons","language","emptyTable","selectAll","selectNone","columnDefs","orderable","fnDrawCallback","oSettings","confirm","pickatime","default","twelvehour","donetext","autoclose","pickadate","selectMonths","selectYears","onSet"],"mappings":"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