Orbit Fox by ThemeIsle - Version 2.10.8

Version Description

Download this release

Release Info

Developer themeisle
Plugin Icon 128x128 Orbit Fox by ThemeIsle
Version 2.10.8
Comparing to
See all releases

Code changes from version 2.10.7 to 2.10.8

Files changed (55) hide show
  1. .eslintrc +3 -0
  2. CHANGELOG.md +6 -0
  3. core/app/abstract/class-orbit-fox-module-abstract.php +9 -1
  4. core/app/class-orbit-fox-admin.php +142 -221
  5. core/app/class-orbit-fox-plugin-install.php +9 -77
  6. core/assets/css/orbit-fox-admin.css +0 -3964
  7. core/assets/js/orbit-fox-admin.js +0 -238
  8. core/assets/js/plugin-install.js +0 -97
  9. core/includes/class-orbit-fox.php +1 -1
  10. dashboard/assets/orbit-fox.png +0 -0
  11. dashboard/build/dashboard.asset.php +1 -0
  12. dashboard/build/dashboard.js +1 -0
  13. dashboard/build/style-dashboard.css +1 -0
  14. dashboard/src/components/App.js +22 -0
  15. dashboard/src/components/AvailableModules.js +34 -0
  16. dashboard/src/components/DashboardContext.js +5 -0
  17. dashboard/src/components/Header.js +46 -0
  18. dashboard/src/components/ModuleCard.js +128 -0
  19. dashboard/src/components/ModuleSettings.js +164 -0
  20. dashboard/src/components/PluginCard.js +121 -0
  21. dashboard/src/components/RecommendedPlugins.js +31 -0
  22. dashboard/src/components/Snackbar.js +25 -0
  23. dashboard/src/dashboard.js +5 -0
  24. dashboard/src/scss/_core-overrides.scss +22 -0
  25. dashboard/src/scss/_general.scss +22 -0
  26. dashboard/src/scss/_vars.scss +2 -0
  27. dashboard/src/scss/components/_available-modules.scss +6 -0
  28. dashboard/src/scss/components/_header.scss +46 -0
  29. dashboard/src/scss/components/_module-card.scss +51 -0
  30. dashboard/src/scss/components/_module-settings.scss +104 -0
  31. dashboard/src/scss/components/_plugin-card.scss +63 -0
  32. dashboard/src/scss/components/_recommended-plugins.scss +6 -0
  33. dashboard/src/style.scss +12 -0
  34. dashboard/src/utils/common.js +160 -0
  35. dashboard/src/utils/rest.js +37 -0
  36. languages/themeisle-companion.pot +35 -70
  37. obfx_modules/companion-legacy/init.php +8 -5
  38. obfx_modules/custom-fonts/init.php +4 -3
  39. obfx_modules/google-analytics/init.php +9 -33
  40. obfx_modules/google-analytics/js/script.js +0 -49
  41. obfx_modules/gutenberg-blocks/init.php +2 -2
  42. obfx_modules/mystock-import/js/script.js +61 -2
  43. obfx_modules/social-sharing/css/admin.css +18 -61
  44. obfx_modules/social-sharing/css/public.css +5 -0
  45. obfx_modules/social-sharing/init.php +6 -18
  46. obfx_modules/template-directory/init.php +4 -3
  47. readme.md +24 -17
  48. readme.txt +30 -23
  49. themeisle-companion.php +1 -1
  50. vendor/autoload.php +1 -1
  51. vendor/composer/ClassLoader.php +102 -11
  52. vendor/composer/InstalledVersions.php +6 -6
  53. vendor/composer/autoload_real.php +7 -7
  54. vendor/composer/autoload_static.php +4 -4
  55. vendor/composer/installed.php +6 -6
.eslintrc ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ {
2
+ "extends": [ "plugin:@wordpress/eslint-plugin/recommended" ]
3
+ }
CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
 
 
 
 
 
 
1
  ##### [Version 2.10.7](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.6...v2.10.7) (2021-08-02)
2
 
3
  [Fix] Widgets with repeater fields are generating errors
1
+ ##### [Version 2.10.8](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.7...v2.10.8) (2021-09-29)
2
+
3
+ - [Feat] Refactor the dashboard.
4
+ - [Feat] Add Telegram social sharing icon.
5
+ - [Fix] HomePage reverts to FrontPage if you have Orbit Fox Hestia Enhancements active and switch theme
6
+
7
  ##### [Version 2.10.7](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.6...v2.10.7) (2021-08-02)
8
 
9
  [Fix] Widgets with repeater fields are generating errors
core/app/abstract/class-orbit-fox-module-abstract.php CHANGED
@@ -73,7 +73,15 @@ abstract class Orbit_Fox_Module_Abstract {
73
  * @access protected
74
  * @var boolean $active_default The default active state of the module.
75
  */
76
- protected $active_default = false;
 
 
 
 
 
 
 
 
77
  /**
78
  * Stores an array of notices
79
  *
73
  * @access protected
74
  * @var boolean $active_default The default active state of the module.
75
  */
76
+ public $active_default = false;
77
+ /**
78
+ * True if the page should refresh after the module is enabled
79
+ *
80
+ * @access protected
81
+ * @var boolean $refresh_after_enabled Flag for page refresh after activation
82
+ */
83
+ public $refresh_after_enabled = false;
84
+
85
  /**
86
  * Stores an array of notices
87
  *
core/app/class-orbit-fox-admin.php CHANGED
@@ -52,6 +52,96 @@ class Orbit_Fox_Admin {
52
  $this->plugin_name = $plugin_name;
53
  $this->version = $version;
54
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
  }
56
 
57
  /**
@@ -77,8 +167,15 @@ class Orbit_Fox_Admin {
77
  return;
78
  }
79
  if ( in_array( $screen->id, array( 'toplevel_page_obfx_companion' ), true ) ) {
80
- wp_enqueue_style( $this->plugin_name, plugin_dir_url( __FILE__ ) . '../assets/css/orbit-fox-admin.css', array(), $this->version, 'all' );
 
 
 
 
 
 
81
  }
 
82
  do_action( 'obfx_admin_enqueue_styles' );
83
  }
84
 
@@ -106,23 +203,41 @@ class Orbit_Fox_Admin {
106
  return;
107
  }
108
  if ( in_array( $screen->id, array( 'toplevel_page_obfx_companion' ), true ) ) {
109
- wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . '../assets/js/orbit-fox-admin.js', array( 'jquery' ), $this->version, false );
 
110
 
111
- wp_register_script( 'obfx-plugin-install', plugin_dir_url( __FILE__ ) . '../assets/js/plugin-install.js', array( 'jquery' ), $this->version, true );
 
 
 
 
 
 
 
 
 
 
 
 
 
112
 
 
 
113
  wp_localize_script(
114
- 'obfx-plugin-install',
115
- 'obfxPluginInstall',
116
  array(
117
- 'activating' => esc_html__( 'Activating ', 'themeisle-companion' ),
118
- 'installing' => esc_html__( 'Installing ... ', 'themeisle-companion' ),
 
 
 
 
 
 
 
119
  )
120
  );
121
-
122
- wp_enqueue_script( 'plugin-install' );
123
- wp_enqueue_script( 'updates' );
124
- wp_enqueue_script( 'obfx-plugin-install' );
125
-
126
  }
127
  do_action( 'obfx_admin_enqueue_scripts' );
128
  }
@@ -255,27 +370,6 @@ class Orbit_Fox_Admin {
255
  do_action( 'orbit_fox_modules' );
256
  }
257
 
258
- /**
259
- * This method is called via AJAX and processes the
260
- * request for updating module options.
261
- *
262
- * @codeCoverageIgnore
263
- *
264
- * @since 1.0.0
265
- * @access public
266
- */
267
- public function obfx_update_module_options() {
268
- $json = stripslashes( str_replace( '"', '"', $_POST['data'] ) ); //phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotValidated
269
- $data = json_decode( $json, true );
270
- $response['type'] = 'error';
271
- $response['message'] = __( 'Could not process the request!', 'themeisle-companion' );
272
- if ( isset( $data['noance'] ) && wp_verify_nonce( $data['noance'], 'obfx_update_module_options_' . $data['module-slug'] ) ) {
273
- $response = $this->try_module_save( $data );
274
- }
275
- echo json_encode( $response );
276
- wp_die();
277
- }
278
-
279
  /**
280
  * A method used for saving module options data
281
  * and returning a well formatted response as an array.
@@ -313,7 +407,7 @@ class Orbit_Fox_Admin {
313
  /**
314
  * Define render function for recommended tab.
315
  */
316
- public function load_recommended_plugins() {
317
  $plugins = [
318
  'optimole-wp',
319
  'feedzy-rss-feeds',
@@ -325,96 +419,29 @@ class Orbit_Fox_Admin {
325
  'otter-blocks',
326
  ];
327
  shuffle( $plugins );
328
- echo sprintf( '<div class="obfx-recommended-title-wrapper"><span class="obfx-recommended-title"><span class="dashicons dashicons-megaphone"></span> &nbsp; %s</span><div class="clearfix"></div></div>', 'Orbit Fox recommends' );
329
-
330
  $install_instance = new Orbit_Fox_Plugin_Install();
331
 
 
332
  foreach ( $plugins as $plugin ) {
333
  $current_plugin = $install_instance->call_plugin_api( $plugin );
334
  if ( ! isset( $current_plugin->name ) ) {
335
  continue;
336
  }
337
- $image = $install_instance->check_for_icon( $current_plugin->icons );
338
- $name = $current_plugin->name;
339
- $desc = $current_plugin->short_description;
340
- $button = $install_instance->get_button_html( $plugin );
341
-
342
- echo '<div class="tile obfx-recommended ">';
343
- echo '<div class="tile-icon">';
344
- echo '<div class="obfx-icon-recommended">';
345
- echo '<img width="100" src="' . esc_url( $image ) . '"/>';
346
- echo '</div>';
347
- echo '</div>';
348
- echo '<div class="tile-content">';
349
- echo '<p class="tile-title">' . esc_html( $name ) . '</p>';
350
- echo '<p class="tile-subtitle">' . esc_html( $desc ) . '</p>';
351
- echo '</div>';
352
- echo '<div class="tile-action">';
353
- echo '<div class="form-group">';
354
- echo '<label class="form-switch activated">';
355
- echo wp_kses_post( $button );
356
- echo '</label>';
357
- echo '</div>';
358
- echo '</div>';
359
- echo '</div>';
360
- }
361
-
362
- }
363
-
364
-
365
-
366
- /**
367
- * This method is called via AJAX and processes the
368
- * request for updating module options.
369
- *
370
- * @codeCoverageIgnore
371
- *
372
- * @since 1.0.0
373
- * @access public
374
- */
375
- public function obfx_update_module_active_status() {
376
- $json = stripslashes( str_replace( '&quot;', '"', $_POST['data'] ) ); //phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotValidated
377
- $data = json_decode( $json, true );
378
- $response['type'] = 'error';
379
- $response['message'] = __( 'Could not process the request!', 'themeisle-companion' );
380
- if ( isset( $data['noance'] ) && wp_verify_nonce( $data['noance'], 'obfx_activate_mod_' . $data['name'] ) ) {
381
- $response = $this->try_module_activate( $data );
382
- }
383
- echo json_encode( $response );
384
- wp_die();
385
- }
386
 
387
- /**
388
- * A method used for saving module status data
389
- * and returning a well formatted response as an array.
390
- *
391
- * @codeCoverageIgnore
392
- *
393
- * @param array $data The data to try and update status via the module model.
394
- *
395
- * @return array
396
- * @since 1.0.0
397
- * @access public
398
- */
399
- public function try_module_activate( $data ) {
400
- $response = array();
401
- $global_settings = new Orbit_Fox_Global_Settings();
402
- $modules = $global_settings::$instance->module_objects;
403
- $response['type'] = 'error';
404
- $response['message'] = __( 'No module found!', 'themeisle-companion' );
405
- if ( isset( $modules[ $data['name'] ] ) ) {
406
- $module = $modules[ $data['name'] ];
407
- $response['type'] = 'warning';
408
- $response['message'] = __( 'Something went wrong, can not change module status!', 'themeisle-companion' );
409
- $result = $module->set_status( 'active', $data['checked'] );
410
- $this->trigger_activate_deactivate( $data['checked'], $module );
411
- if ( $result ) {
412
- $response['type'] = 'success';
413
- $response['message'] = __( 'Module status changed!', 'themeisle-companion' );
414
- }
415
  }
416
 
417
- return $response;
418
  }
419
 
420
  /**
@@ -446,113 +473,7 @@ class Orbit_Fox_Admin {
446
  * @access public
447
  */
448
  public function page_modules_render() {
449
- $global_settings = new Orbit_Fox_Global_Settings();
450
-
451
- $modules = $global_settings::$instance->module_objects;
452
-
453
- $rdh = new Orbit_Fox_Render_Helper();
454
- $tiles = '';
455
- $panels = '';
456
- $toasts = '';
457
- $count_modules = 0;
458
- foreach ( $modules as $slug => $module ) {
459
- if ( $module->enable_module() ) {
460
- $notices = $module->get_notices();
461
- $showed_notices = $module->get_status( 'showed_notices' );
462
- if ( ! is_array( $showed_notices ) ) {
463
- $showed_notices = array();
464
- }
465
- if ( isset( $showed_notices ) && is_array( $showed_notices ) ) {
466
- foreach ( $notices as $notice ) {
467
- $hash = md5( serialize( $notice ) );
468
- $data = array(
469
- 'notice' => $notice,
470
- );
471
- // phpcs:ignore WordPress.PHP.StrictComparisons.LooseComparison
472
- if ( $notice['display_always'] == false && ! in_array( $hash, $showed_notices, true ) ) {
473
- $toasts .= $rdh->get_partial( 'module-toast', $data );
474
- // phpcs:ignore WordPress.PHP.StrictComparisons.LooseComparison
475
- } elseif ( $notice['display_always'] == true ) {
476
- $toasts .= $rdh->get_partial( 'module-toast', $data );
477
- }
478
- }
479
- }
480
-
481
- $module->update_showed_notices();
482
- if ( $module->auto === false ) {
483
- $count_modules ++;
484
- $checked = '';
485
- if ( $module->get_is_active() ) {
486
- $checked = 'checked';
487
- }
488
-
489
- $data = array(
490
- 'slug' => $slug,
491
- 'name' => $module->name,
492
- 'description' => $module->description,
493
- 'checked' => $checked,
494
- 'beta' => $module->beta,
495
- 'confirm_intent' => $module->confirm_intent,
496
- );
497
- $tiles .= $rdh->get_partial( 'module-tile', $data );
498
- $tiles .= '<div class="divider"></div>';
499
- }
500
-
501
- $module_options = $module->get_options();
502
- $options_fields = '';
503
- if ( ! empty( $module_options ) ) {
504
- foreach ( $module_options as $option ) {
505
- $options_fields .= $rdh->render_option( $option, $module );
506
- }
507
-
508
- $panels .= $rdh->get_partial(
509
- 'module-panel',
510
- array(
511
- 'slug' => $slug,
512
- 'name' => $module->name,
513
- 'active' => $module->get_is_active(),
514
- 'description' => $module->description,
515
- 'show' => $module->show,
516
- 'no_save' => $module->no_save,
517
- 'options_fields' => $options_fields,
518
- )
519
- );
520
- }
521
- }// End if().
522
- }// End foreach().
523
-
524
- $no_modules = false;
525
- $empty_tpl = '';
526
- if ( $count_modules === 0 ) {
527
- $no_modules = true;
528
- $empty_tpl = $rdh->get_partial(
529
- 'empty',
530
- array(
531
- 'title' => __( 'No modules found.', 'themeisle-companion' ),
532
- 'sub_title' => __( 'Please contact support for more help.', 'themeisle-companion' ),
533
- 'show_btn' => true,
534
- )
535
- );
536
- $panels = $rdh->get_partial(
537
- 'empty',
538
- array(
539
- 'title' => __( 'No active modules.', 'themeisle-companion' ),
540
- 'sub_title' => __( 'Activate a module using the toggles above.', 'themeisle-companion' ),
541
- 'show_btn' => false,
542
- )
543
- );
544
- }
545
-
546
- $data = array(
547
- 'no_modules' => $no_modules,
548
- 'empty_tpl' => $empty_tpl,
549
- 'count_modules' => $count_modules,
550
- 'tiles' => $tiles,
551
- 'toasts' => $toasts,
552
- 'panels' => $panels,
553
- );
554
- $output = $rdh->get_view( 'modules', $data );
555
- echo $output; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
556
  }
557
 
558
  }
52
  $this->plugin_name = $plugin_name;
53
  $this->version = $version;
54
 
55
+ add_action( 'rest_api_init', [ $this, 'init_dashboard_routes' ] );
56
+
57
+ }
58
+
59
+ /**
60
+ * Registers the REST routes used for updating the modules state and settings
61
+ */
62
+ public function init_dashboard_routes() {
63
+ register_rest_route(
64
+ 'obfx',
65
+ '/toggle-module-state',
66
+ array(
67
+ 'methods' => WP_REST_Server::CREATABLE,
68
+ 'callback' => [ $this, 'update_module_callback' ],
69
+ 'permission_callback' => function () {
70
+ return current_user_can( 'manage_options' );
71
+ },
72
+ )
73
+ );
74
+ register_rest_route(
75
+ 'obfx',
76
+ '/set-module-settings',
77
+ array(
78
+ 'methods' => WP_REST_Server::CREATABLE,
79
+ 'callback' => [ $this, 'update_module_callback' ],
80
+ 'permission_callback' => function () {
81
+ return current_user_can( 'manage_options' );
82
+ },
83
+ )
84
+ );
85
+ }
86
+
87
+ /**
88
+ * Callback function for the REST requests.
89
+ * Updates the module data corresponding to the request and returns a response.
90
+ *
91
+ * @param WP_REST_Request $request The request
92
+ *
93
+ * @return WP_REST_Response The response to the request
94
+ */
95
+ public function update_module_callback( WP_REST_Request $request ) {
96
+ $data = json_decode( $request->get_body(), true );
97
+ $settings = new Orbit_Fox_Global_Settings();
98
+ $modules = $settings::$instance->module_objects;
99
+
100
+ if ( ! isset( $data['slug'] ) || ! isset( $data['value'] ) ) {
101
+ return new WP_REST_Response(
102
+ [
103
+ 'type' => 'error',
104
+ 'message' => __( 'Bad request!', 'themeisle-companion' ),
105
+ ]
106
+ );
107
+ }
108
+
109
+ if ( ! isset( $modules[ $data['slug'] ] ) ) {
110
+ return new WP_REST_Response(
111
+ [
112
+ 'type' => 'error',
113
+ 'message' => __( 'Module not found!', 'themeisle-companion' ),
114
+ ]
115
+ );
116
+ }
117
+
118
+ $response = false;
119
+
120
+ if ( $request->get_route() === '/obfx/toggle-module-state' ) {
121
+ $response = $modules[ $data['slug'] ]->set_status( 'active', $data['value'] );
122
+ $this->trigger_activate_deactivate( $data['value'], $modules[ $data['slug'] ] );
123
+ }
124
+
125
+ if ( $request->get_route() === '/obfx/set-module-settings' ) {
126
+ unset( $data->slug );
127
+ $response = $modules[ $data['slug'] ]->set_options( $data['value'] );
128
+ }
129
+
130
+ if ( ! $response ) {
131
+ return new WP_REST_Response(
132
+ [
133
+ 'type' => 'warning',
134
+ 'message' => __( 'Data unchanged!', 'themeisle-companion' ),
135
+ ]
136
+ );
137
+ }
138
+
139
+ return new WP_REST_Response(
140
+ [
141
+ 'type' => 'success',
142
+ 'data' => $data,
143
+ ]
144
+ );
145
  }
146
 
147
  /**
167
  return;
168
  }
169
  if ( in_array( $screen->id, array( 'toplevel_page_obfx_companion' ), true ) ) {
170
+ $dependencies = include OBX_PATH . '/dashboard/build/dashboard.asset.php';
171
+ wp_register_style( 'obfx-dashboard-style', OBFX_URL . 'dashboard/build/style-dashboard.css', [ 'wp-components' ], $dependencies['version'] );
172
+ wp_enqueue_style( 'obfx-dashboard-style' );
173
+ wp_register_style( 'obfx-dashboard-colors', OBFX_URL . 'obfx_modules/social-sharing/css/admin.css', [ 'wp-components' ], $dependencies['version'] );
174
+ wp_enqueue_style( 'obfx-dashboard-colors' );
175
+ wp_register_style( 'obfx-dashboard-social', OBFX_URL . 'obfx_modules/social-sharing/css/vendor/socicon/socicon.css', [ 'wp-components' ], $dependencies['version'] );
176
+ wp_enqueue_style( 'obfx-dashboard-social' );
177
  }
178
+
179
  do_action( 'obfx_admin_enqueue_styles' );
180
  }
181
 
203
  return;
204
  }
205
  if ( in_array( $screen->id, array( 'toplevel_page_obfx_companion' ), true ) ) {
206
+ wp_enqueue_script( 'plugin-install' );
207
+ wp_enqueue_script( 'updates' );
208
 
209
+ $dependencies = include OBX_PATH . '/dashboard/build/dashboard.asset.php';
210
+ $global_settings = new Orbit_Fox_Global_Settings();
211
+ $modules = array_filter(
212
+ $global_settings::$instance->module_objects,
213
+ function( $module ) {
214
+ return $module->enable_module();
215
+ }
216
+ );
217
+ $modules_options = array_map(
218
+ function( $module ) {
219
+ return $module->options();
220
+ },
221
+ $modules
222
+ );
223
 
224
+ wp_register_script( 'obfx-dashboard', OBFX_URL . '/dashboard/build/dashboard.js', $dependencies['dependencies'], $this->version, true );
225
+ wp_enqueue_script( 'obfx-dashboard' );
226
  wp_localize_script(
227
+ 'obfx-dashboard',
228
+ 'obfxDash',
229
  array(
230
+ 'path' => OBFX_URL . '/dashboard/',
231
+ 'root' => esc_url_raw( get_rest_url() ) . 'obfx/',
232
+ 'toggleStateRoute' => 'toggle-module-state',
233
+ 'setSettingsRoute' => 'set-module-settings',
234
+ 'nonce' => wp_create_nonce( 'wp_rest' ),
235
+ 'modules' => $modules,
236
+ 'data' => get_option( 'obfx_data' ),
237
+ 'options' => $modules_options,
238
+ 'plugins' => $this->get_recommended_plugins(),
239
  )
240
  );
 
 
 
 
 
241
  }
242
  do_action( 'obfx_admin_enqueue_scripts' );
243
  }
370
  do_action( 'orbit_fox_modules' );
371
  }
372
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
373
  /**
374
  * A method used for saving module options data
375
  * and returning a well formatted response as an array.
407
  /**
408
  * Define render function for recommended tab.
409
  */
410
+ public function get_recommended_plugins() {
411
  $plugins = [
412
  'optimole-wp',
413
  'feedzy-rss-feeds',
419
  'otter-blocks',
420
  ];
421
  shuffle( $plugins );
 
 
422
  $install_instance = new Orbit_Fox_Plugin_Install();
423
 
424
+ $data = array();
425
  foreach ( $plugins as $plugin ) {
426
  $current_plugin = $install_instance->call_plugin_api( $plugin );
427
  if ( ! isset( $current_plugin->name ) ) {
428
  continue;
429
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
430
 
431
+ $data[ $plugin ] = array(
432
+ 'banner' => $current_plugin->banners['low'],
433
+ 'name' => html_entity_decode( $current_plugin->name ),
434
+ 'description' => html_entity_decode( $current_plugin->short_description ),
435
+ 'version' => $current_plugin->version,
436
+ 'author' => html_entity_decode( wp_strip_all_tags( $current_plugin->author ) ),
437
+ 'action' => $install_instance->check_plugin_state( $plugin ),
438
+ 'path' => $install_instance->get_plugin_path( $plugin ),
439
+ 'activate' => $install_instance->get_plugin_action_link( $plugin ),
440
+ 'deactivate' => $install_instance->get_plugin_action_link( $plugin, 'deactivate' ),
441
+ );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
442
  }
443
 
444
+ return $data;
445
  }
446
 
447
  /**
473
  * @access public
474
  */
475
  public function page_modules_render() {
476
+ echo '<div id="obfx-dash"></div>'; // entry point for the React dashboard
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
477
  }
478
 
479
  }
core/app/class-orbit-fox-plugin-install.php CHANGED
@@ -51,27 +51,6 @@ class Orbit_Fox_Plugin_Install {
51
  return $call_api;
52
  }
53
 
54
- /**
55
- * Get plugin icon.
56
- *
57
- * @param array $arr Icon sizes.
58
- *
59
- * @return string
60
- */
61
- public function check_for_icon( $arr ) {
62
- if ( ! empty( $arr['svg'] ) ) {
63
- $plugin_icon_url = $arr['svg'];
64
- } elseif ( ! empty( $arr['2x'] ) ) {
65
- $plugin_icon_url = $arr['2x'];
66
- } elseif ( ! empty( $arr['1x'] ) ) {
67
- $plugin_icon_url = $arr['1x'];
68
- } else {
69
- $plugin_icon_url = $arr['default'];
70
- }
71
-
72
- return $plugin_icon_url;
73
- }
74
-
75
  /**
76
  * Check plugin state.
77
  *
@@ -117,73 +96,26 @@ class Orbit_Fox_Plugin_Install {
117
  }
118
 
119
  /**
120
- * Generate action button html.
121
- *
122
- * @param string $slug plugin slug.
123
- * @param array $settings button settings.
124
  *
 
 
125
  * @return string
126
  */
127
- public function get_button_html( $slug, $settings = array() ) {
128
- $button = '';
129
- $redirect = '';
130
- if ( ! empty( $settings ) && array_key_exists( 'redirect', $settings ) ) {
131
- $redirect = $settings['redirect'];
132
- }
133
- $state = $this->check_plugin_state( $slug );
134
- if ( empty( $slug ) ) {
135
  return '';
136
  }
137
 
138
- $additional = '';
139
-
140
- if ( $state === 'deactivate' ) {
141
- $additional = ' action_button active';
142
- }
143
-
144
- $button .= '<div class=" plugin-card-' . esc_attr( $slug ) . esc_attr( $additional ) . '" style="padding: 8px 0 5px;">';
145
-
146
- $plugin_link_suffix = self::get_plugin_path( $slug );
147
-
148
- $nonce = add_query_arg(
149
  array(
150
- 'action' => 'activate',
151
- 'plugin' => rawurlencode( $plugin_link_suffix ),
152
  'plugin_status' => 'all',
153
  'paged' => '1',
154
- '_wpnonce' => wp_create_nonce( 'activate-plugin_' . $plugin_link_suffix ),
155
  ),
156
  esc_url( network_admin_url( 'plugins.php' ) )
157
  );
158
- switch ( $state ) {
159
- case 'install':
160
- $button .= '<a data-redirect="' . esc_url( $redirect ) . '" data-slug="' . esc_attr( $slug ) . '" class="install-now obfx-install-plugin button button-primary" href="' . esc_url( $nonce ) . '" data-name="' . esc_attr( $slug ) . '" aria-label="Install ' . esc_attr( $slug ) . '"><span class="dashicons dashicons-download"></span>' . __( 'Install and activate', 'themeisle-companion' ) . '</a>';
161
- break;
162
-
163
- case 'activate':
164
- $button .= '<a data-redirect="' . esc_url( $redirect ) . '" data-slug="' . esc_attr( $slug ) . '" class="activate-now button button-primary" href="' . esc_url( $nonce ) . '" aria-label="Activate ' . esc_attr( $slug ) . '">' . esc_html__( 'Activate', 'themeisle-companion' ) . '</a>';
165
- break;
166
-
167
- case 'deactivate':
168
- $nonce = add_query_arg(
169
- array(
170
- 'action' => 'deactivate',
171
- 'plugin' => rawurlencode( $plugin_link_suffix ),
172
- 'plugin_status' => 'all',
173
- 'paged' => '1',
174
- '_wpnonce' => wp_create_nonce( 'deactivate-plugin_' . $plugin_link_suffix ),
175
- ),
176
- esc_url( network_admin_url( 'plugins.php' ) )
177
- );
178
-
179
- $button .= '<a data-redirect="' . esc_url( $redirect ) . '" data-slug="' . esc_attr( $slug ) . '" class="deactivate-now button button-primary" href="' . esc_url( $nonce ) . '" data-name="' . esc_attr( $slug ) . '" aria-label="Deactivate ' . esc_attr( $slug ) . '">' . esc_html__( 'Deactivate', 'themeisle-companion' ) . '</a>';
180
- break;
181
-
182
- default:
183
- break;
184
- }// End switch().
185
- $button .= '</div>';
186
-
187
- return $button;
188
  }
189
  }
51
  return $call_api;
52
  }
53
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
54
  /**
55
  * Check plugin state.
56
  *
96
  }
97
 
98
  /**
99
+ * Get Plugin Action link.
 
 
 
100
  *
101
+ * @param string $slug plugin slug.
102
+ * @param string $action action [activate, deactivate].
103
  * @return string
104
  */
105
+ public function get_plugin_action_link( $slug, $action = 'activate' ) {
106
+ if ( ! in_array( $action, [ 'activate', 'deactivate' ] ) ) {
 
 
 
 
 
 
107
  return '';
108
  }
109
 
110
+ return add_query_arg(
 
 
 
 
 
 
 
 
 
 
111
  array(
112
+ 'action' => $action,
113
+ 'plugin' => rawurlencode( $this->get_plugin_path( $slug ) ),
114
  'plugin_status' => 'all',
115
  'paged' => '1',
116
+ '_wpnonce' => wp_create_nonce( $action . '-plugin_' . $this->get_plugin_path( $slug ) ),
117
  ),
118
  esc_url( network_admin_url( 'plugins.php' ) )
119
  );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
120
  }
121
  }
core/assets/css/orbit-fox-admin.css DELETED
@@ -1,3964 +0,0 @@
1
- /**
2
- * Orbit Fox Admin Style
3
- *
4
- * @since 1.0.0
5
- * @package Orbit_Fox/assets
6
- *
7
- * @author ThemeIsle
8
- * Extends Spectre.css Library
9
- */
10
- /*
11
- Version: 2.8.14
12
- */
13
-
14
- /* Document
15
- ========================================================================== */
16
- html {
17
- font-size: 62.5%;
18
- }
19
-
20
- .obfx-wrapper {
21
- font-family: sans-serif;
22
- /* 1 */
23
- line-height: 1.15;
24
- /* 3 */
25
-
26
- -webkit-text-size-adjust: 100%;
27
- /* 2 */
28
- -ms-text-size-adjust: 100%;
29
- /* 3 */
30
- }
31
-
32
- /* Sections
33
- ========================================================================== */
34
-
35
- /**
36
- * Add the correct display in IE 9-.
37
- */
38
- .obfx-wrapper article,
39
- .obfx-wrapper aside,
40
- .obfx-wrapper footer,
41
- .obfx-wrapper header,
42
- .obfx-wrapper nav,
43
- .obfx-wrapper section {
44
- display: block;
45
- }
46
-
47
- /**
48
- * Correct the font size and margin on `h1` elements within `section` and
49
- * `article` contexts in Chrome, Firefox, and Safari.
50
- */
51
- .obfx-wrapper h1 {
52
- margin: 0.67em 0;
53
- font-size: 2em;
54
- }
55
-
56
- /* Grouping content
57
- ========================================================================== */
58
- /**
59
- * Add the correct display in IE 9-.
60
- * 1. Add the correct display in IE.
61
- */
62
- .obfx-wrapper figcaption,
63
- .obfx-wrapper figure,
64
- .obfx-wrapper main {
65
- /* 1 */
66
- display: block;
67
- }
68
-
69
- /**
70
- * Add the correct margin in IE 8 (removed).
71
- */
72
- /**
73
- * 1. Add the correct box sizing in Firefox.
74
- * 2. Show the overflow in Edge and IE.
75
- */
76
- .obfx-wrapper hr {
77
- /* 1 */
78
- overflow: visible;
79
- box-sizing: content-box;
80
- /* 1 */
81
- height: 0;
82
- /* 2 */
83
- }
84
-
85
- /**
86
- * 1. Correct the inheritance and scaling of font size in all browsers. (removed)
87
- * 2. Correct the odd `em` font sizing in all browsers.
88
- */
89
- /* Text-level semantics
90
- ========================================================================== */
91
- /**
92
- * 1. Remove the gray background on active links in IE 10.
93
- * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
94
- */
95
- .obfx-wrapper a {
96
- background-color: transparent;
97
- /* 1 */
98
-
99
- -webkit-text-decoration-skip: objects;
100
- /* 2 */
101
- }
102
-
103
- /**
104
- * Remove the outline on focused links when they are also active or hovered
105
- * in all browsers (opinionated).
106
- */
107
- .obfx-wrapper a:active,
108
- .obfx-wrapper a:hover {
109
- outline-width: 0;
110
- }
111
-
112
- /**
113
- * 1. Remove the bottom border in Firefox 39-.
114
- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. (removed)
115
- */
116
- /**
117
- * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
118
- */
119
- .obfx-wrapper b,
120
- .obfx-wrapper strong {
121
- font-weight: inherit;
122
- }
123
-
124
- /**
125
- * Add the correct font weight in Chrome, Edge, and Safari.
126
- */
127
- .obfx-wrapper b,
128
- .obfx-wrapper strong {
129
- font-weight: bolder;
130
- }
131
-
132
- /**
133
- * 1. Correct the inheritance and scaling of font size in all browsers.
134
- * 2. Correct the odd `em` font sizing in all browsers.
135
- */
136
- .obfx-wrapper code,
137
- .obfx-wrapper kbd,
138
- .obfx-wrapper pre,
139
- .obfx-wrapper samp {
140
- font-family: monospace, monospace;
141
- /* 1 */
142
- font-size: 1em;
143
- /* 2 */
144
- }
145
-
146
- /**
147
- * Add the correct font style in Android 4.3-.
148
- */
149
- .obfx-wrapper dfn {
150
- font-style: italic;
151
- }
152
-
153
- /**
154
- * Add the correct background and color in IE 9-. (Removed)
155
- */
156
- /**
157
- * Add the correct font size in all browsers.
158
- */
159
- .obfx-wrapper small {
160
- font-size: 80%;
161
- }
162
-
163
- /**
164
- * Prevent `sub` and `sup` elements from affecting the line height in
165
- * all browsers.
166
- */
167
- .obfx-wrapper sub,
168
- .obfx-wrapper sup {
169
- position: relative;
170
- font-size: 75%;
171
- line-height: 0;
172
- vertical-align: baseline;
173
- }
174
-
175
- .obfx-wrapper sub {
176
- bottom: -0.25em;
177
- }
178
-
179
- .obfx-wrapper sup {
180
- top: -0.5em;
181
- }
182
-
183
- /* Embedded content
184
- ========================================================================== */
185
- /**
186
- * Add the correct display in IE 9-.
187
- */
188
- .obfx-wrapper audio,
189
- .obfx-wrapper video {
190
- display: inline-block;
191
- }
192
-
193
- /**
194
- * Add the correct display in iOS 4-7.
195
- */
196
- .obfx-wrapper audio:not([controls]) {
197
- display: none;
198
- height: 0;
199
- }
200
-
201
- /**
202
- * Remove the border on images inside links in IE 10-.
203
- */
204
- .obfx-wrapper img {
205
- border-style: none;
206
- }
207
-
208
- /**
209
- * Hide the overflow in IE.
210
- */
211
- .obfx-wrapper svg:not(:root) {
212
- overflow: hidden;
213
- }
214
-
215
- /* Forms
216
- ========================================================================== */
217
- /**
218
- * 1. Change the font styles in all browsers (opinionated).
219
- * 2. Remove the margin in Firefox and Safari.
220
- */
221
- .obfx-wrapper button,
222
- .obfx-wrapper input,
223
- .obfx-wrapper optgroup,
224
- .obfx-wrapper select,
225
- .obfx-wrapper textarea {
226
- margin: 0;
227
- font-family: inherit;
228
- font-size: inherit;
229
- line-height: inherit;
230
- }
231
-
232
- /**
233
- * Show the overflow in IE.
234
- * 1. Show the overflow in Edge.
235
- */
236
- .obfx-wrapper button,
237
- .obfx-wrapper input {
238
- overflow: visible;
239
- }
240
-
241
- /**
242
- * Remove the inheritance of text transform in Edge, Firefox, and IE.
243
- * 1. Remove the inheritance of text transform in Firefox.
244
- */
245
- .obfx-wrapper button,
246
- .obfx-wrapper select {
247
- text-transform: none;
248
- }
249
-
250
- /**
251
- * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
252
- * controls in Android 4.
253
- * 2. Correct the inability to style clickable types in iOS and Safari.
254
- */
255
- .obfx-wrapper button,
256
- .obfx-wrapper [type="button"],
257
- .obfx-wrapper [type="reset"],
258
- .obfx-wrapper [type="submit"] {
259
- -webkit-appearance: button;
260
- }
261
-
262
- /**
263
- * Remove the inner border and padding in Firefox.
264
- */
265
- .obfx-wrapper button::-moz-focus-inner,
266
- .obfx-wrapper [type="button"]::-moz-focus-inner,
267
- .obfx-wrapper [type="reset"]::-moz-focus-inner,
268
- .obfx-wrapper [type="submit"]::-moz-focus-inner {
269
- padding: 0;
270
- border-style: none;
271
- }
272
-
273
- /**
274
- * Restore the focus styles unset by the previous rule (removed).
275
- */
276
- /**
277
- * Change the border, margin, and padding in all browsers (opinionated) (changed).
278
- */
279
- .obfx-wrapper fieldset {
280
- margin: 0;
281
- padding: 0;
282
- border: 0;
283
- }
284
-
285
- /**
286
- * 1. Correct the text wrapping in Edge and IE.
287
- * 2. Correct the color inheritance from `fieldset` elements in IE.
288
- * 3. Remove the padding so developers are not caught out when they zero out
289
- * `fieldset` elements in all browsers.
290
- */
291
- .obfx-wrapper legend {
292
- display: table;
293
- box-sizing: border-box;
294
- max-width: 100%;
295
- padding: 0;
296
- color: inherit;
297
- white-space: normal;
298
- }
299
-
300
- /**
301
- * 1. Add the correct display in IE 9-.
302
- * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
303
- */
304
- .obfx-wrapper progress {
305
- display: inline-block;
306
- /* 1 */
307
- vertical-align: baseline;
308
- /* 2 */
309
- }
310
-
311
- /**
312
- * Remove the default vertical scrollbar in IE.
313
- */
314
- .obfx-wrapper textarea {
315
- overflow: auto;
316
- }
317
-
318
- /**
319
- * 1. Add the correct box sizing in IE 10-.
320
- * 2. Remove the padding in IE 10-.
321
- */
322
- .obfx-wrapper [type="checkbox"],
323
- .obfx-wrapper [type="radio"] {
324
- box-sizing: border-box;
325
- /* 1 */
326
- padding: 0;
327
- /* 2 */
328
- }
329
-
330
- /**
331
- * Correct the cursor style of increment and decrement buttons in Chrome.
332
- */
333
- .obfx-wrapper [type="number"]::-webkit-inner-spin-button,
334
- .obfx-wrapper [type="number"]::-webkit-outer-spin-button {
335
- height: auto;
336
- }
337
-
338
- /**
339
- * 1. Correct the odd appearance in Chrome and Safari.
340
- * 2. Correct the outline style in Safari.
341
- */
342
- .obfx-wrapper [type="search"] {
343
- /* 1 */
344
- outline-offset: -2px;
345
-
346
- -webkit-appearance: textfield;
347
- /* 2 */
348
- }
349
-
350
- /**
351
- * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
352
- */
353
- .obfx-wrapper [type="search"]::-webkit-search-cancel-button,
354
- .obfx-wrapper [type="search"]::-webkit-search-decoration {
355
- -webkit-appearance: none;
356
- }
357
-
358
- /**
359
- * 1. Correct the inability to style clickable types in iOS and Safari.
360
- * 2. Change font properties to `inherit` in Safari.
361
- */
362
- .obfx-wrapper ::-webkit-file-upload-button {
363
- /* 1 */
364
- font: inherit;
365
-
366
- -webkit-appearance: button;
367
- /* 2 */
368
- }
369
-
370
- /* Interactive
371
- ========================================================================== */
372
- /*
373
- * Add the correct display in IE 9-.
374
- * 1. Add the correct display in Edge, IE, and Firefox.
375
- */
376
- .obfx-wrapper details,
377
- .obfx-wrapper menu {
378
- display: block;
379
- }
380
-
381
- /*
382
- * Add the correct display in all browsers.
383
- */
384
- .obfx-wrapper summary {
385
- display: list-item;
386
- }
387
-
388
- /* Scripting
389
- ========================================================================== */
390
- /**
391
- * Add the correct display in IE 9-.
392
- */
393
- .obfx-wrapper canvas {
394
- display: inline-block;
395
- }
396
-
397
- /**
398
- * Add the correct display in IE.
399
- */
400
- .obfx-wrapper template {
401
- display: none;
402
- }
403
-
404
- /* Hidden
405
- ========================================================================== */
406
- /**
407
- * Add the correct display in IE 10-.
408
- */
409
- .obfx-wrapper [hidden] {
410
- display: none;
411
- }
412
-
413
- .obfx-wrapper *,
414
- .obfx-wrapper *::before,
415
- .obfx-wrapper *::after {
416
- box-sizing: inherit;
417
- }
418
-
419
- .obfx-wrapper {
420
- box-sizing: border-box;
421
- font-size: 10px;
422
- line-height: 1.42857143;
423
-
424
- -webkit-tap-highlight-color: transparent;
425
- }
426
-
427
- .obfx-wrapper {
428
- overflow-x: hidden;
429
- margin-top: 40px;
430
- margin-right: 20px;
431
- padding: 16px;
432
- color: #50596c;
433
- background: #fff;
434
- font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
435
- font-size: 1.4rem;
436
- text-rendering: optimizeLegibility;
437
- }
438
-
439
- .obfx-wrapper a {
440
- outline: none;
441
- color: #5764c6;
442
- text-decoration: none;
443
- }
444
-
445
- .obfx-wrapper a:focus {
446
- box-shadow: 0 0 0 0.2rem rgba(87, 100, 198, 0.15);
447
- }
448
-
449
- .obfx-wrapper a:focus,
450
- .obfx-wrapper a:hover,
451
- .obfx-wrapper a:active,
452
- .obfx-wrapper a.active {
453
- color: #3b49af;
454
- text-decoration: underline;
455
- }
456
-
457
- .obfx-wrapper h1,
458
- .obfx-wrapper h2,
459
- .obfx-wrapper h3,
460
- .obfx-wrapper h4,
461
- .obfx-wrapper h5,
462
- .obfx-wrapper h6 {
463
- margin-top: 0;
464
- margin-bottom: 1.5rem;
465
- color: inherit;
466
- font-weight: 300;
467
- line-height: 1.2;
468
- }
469
-
470
- .obfx-wrapper h1 {
471
- display: inline-block;
472
- font-size: 5rem;
473
- vertical-align: top;
474
- }
475
-
476
- .obfx-wrapper h2 {
477
- font-size: 4rem;
478
- }
479
-
480
- .obfx-wrapper h3 {
481
- font-size: 3rem;
482
- }
483
-
484
- .obfx-wrapper h4 {
485
- font-size: 2.4rem;
486
- }
487
-
488
- .obfx-wrapper h5 {
489
- font-size: 2rem;
490
- }
491
-
492
- .obfx-wrapper h6 {
493
- font-size: 1.6rem;
494
- }
495
-
496
- .obfx-wrapper .powered {
497
- display: inline-block;
498
- margin-bottom: 10px;
499
- margin-left: 10px;
500
- font-style: italic;
501
- vertical-align: bottom;
502
- }
503
-
504
- .obfx-wrapper p {
505
- margin: 0 0 1rem;
506
- line-height: 2.4rem;
507
- }
508
-
509
- .obfx-wrapper a,
510
- .obfx-wrapper ins,
511
- .obfx-wrapper u {
512
- -webkit-text-decoration-skip: ink edges;
513
- text-decoration-skip: ink edges;
514
- }
515
-
516
- .obfx-wrapper blockquote {
517
- margin-left: 0;
518
- padding: 1rem 2rem;
519
- border-left: 0.2rem solid #f0f1f4;
520
- }
521
-
522
- .obfx-wrapper blockquote p:last-child {
523
- margin-bottom: 0;
524
- }
525
-
526
- .obfx-wrapper blockquote cite {
527
- color: #acb3c2;
528
- }
529
-
530
- .obfx-wrapper ul,
531
- .obfx-wrapper ol {
532
- margin: 2rem 0 2rem 2rem;
533
- padding: 0;
534
- }
535
-
536
- .obfx-wrapper ul ul,
537
- .obfx-wrapper ol ul,
538
- .obfx-wrapper ul ol,
539
- .obfx-wrapper ol ol {
540
- margin: 1.5rem 0 1.5rem 2rem;
541
- }
542
-
543
- .obfx-wrapper ul li,
544
- .obfx-wrapper ol li {
545
- margin-top: 1rem;
546
- }
547
-
548
- .obfx-wrapper ul {
549
- list-style: disc inside;
550
- }
551
-
552
- .obfx-wrapper ul ul {
553
- list-style-type: circle;
554
- }
555
-
556
- .obfx-wrapper ol {
557
- list-style: decimal inside;
558
- }
559
-
560
- .obfx-wrapper ol ol {
561
- list-style-type: lower-alpha;
562
- }
563
-
564
- .obfx-wrapper dl dt {
565
- font-weight: bold;
566
- }
567
-
568
- .obfx-wrapper dl dd {
569
- margin: 0.5rem 0 1.5rem 0;
570
- }
571
-
572
- .obfx-wrapper mark {
573
- display: inline-block;
574
- padding: 0.3rem 0.4rem;
575
- border-radius: 0.2rem;
576
- color: #50596c;
577
- background: #ffe9b3;
578
- line-height: 1;
579
- vertical-align: baseline;
580
- }
581
-
582
- .obfx-wrapper kbd {
583
- display: inline-block;
584
- padding: 0.3rem 0.4rem;
585
- border-radius: 0.2rem;
586
- color: #fff;
587
- background: #454d5d;
588
- line-height: 1;
589
- vertical-align: baseline;
590
- }
591
-
592
- .obfx-wrapper abbr[title] {
593
- border-bottom: 0.1rem dotted;
594
- text-decoration: none;
595
- cursor: help;
596
- }
597
-
598
- .obfx-wrapper .table {
599
- width: 100%;
600
- border-spacing: 0;
601
- border-collapse: collapse;
602
- text-align: left;
603
- }
604
-
605
- .obfx-wrapper .table.table-striped tbody tr:nth-of-type(odd) {
606
- background: #f8f9fa;
607
- }
608
-
609
- .obfx-wrapper .table.table-hover tbody tr:hover {
610
- background: #f0f1f4;
611
- }
612
-
613
- .obfx-wrapper .table tbody tr.active,
614
- .obfx-wrapper .table.table-striped tbody tr.active {
615
- background: #f0f1f4;
616
- }
617
-
618
- .obfx-wrapper .table td {
619
- padding: 1.5rem 1rem;
620
- border-bottom: 0.1rem solid #f0f1f4;
621
- }
622
-
623
- .obfx-wrapper .table th {
624
- padding: 1.5rem 1rem;
625
- border-bottom: 0.1rem solid #727e96;
626
- }
627
-
628
- .obfx-wrapper .btn {
629
- display: inline-block;
630
- height: 3.2rem;
631
- padding: 0.5rem 0.8rem;
632
- border: 0.1rem solid #5764c6;
633
- border-radius: 0.2rem;
634
- outline: none;
635
- color: #5764c6;
636
- background: #fff;
637
- font-size: 1.4rem;
638
- line-height: 2rem;
639
- text-align: center;
640
- vertical-align: middle;
641
- white-space: nowrap;
642
- text-decoration: none;
643
- cursor: pointer;
644
- -webkit-user-select: none;
645
- -moz-user-select: none;
646
- -ms-user-select: none;
647
- user-select: none;
648
- -webkit-transition: all 0.1s ease;
649
- transition: all 0.1s ease;
650
-
651
- -webkit-appearance: none;
652
- -moz-appearance: none;
653
- appearance: none;
654
- }
655
-
656
- .obfx-wrapper .btn:focus {
657
- background: #fbfbfe;
658
- box-shadow: 0 0 0 0.2rem rgba(87, 100, 198, 0.15);
659
- text-decoration: none;
660
- }
661
-
662
- .obfx-wrapper .btn:hover {
663
- border-color: #4c59c2;
664
- color: #fff;
665
- background: #5764c6;
666
- text-decoration: none;
667
- }
668
-
669
- .obfx-wrapper .btn:active,
670
- .obfx-wrapper .btn.active {
671
- border-color: #3e4cb6;
672
- color: #fff;
673
- background: #4c59c2;
674
- text-decoration: none;
675
- }
676
-
677
- .obfx-wrapper .btn[disabled],
678
- .obfx-wrapper .btn:disabled,
679
- .obfx-wrapper .btn.disabled {
680
- opacity: 0.5;
681
- cursor: default;
682
- pointer-events: none;
683
- }
684
-
685
- .obfx-wrapper .btn.btn-primary {
686
- border-color: #4c59c2;
687
- color: #fff;
688
- background: #5764c6;
689
- }
690
-
691
- .obfx-wrapper .btn.btn-primary:focus,
692
- .obfx-wrapper .btn.btn-primary:hover {
693
- border-color: #3e4cb6;
694
- color: #fff;
695
- background: #4452c0;
696
- }
697
-
698
- .obfx-wrapper .btn.btn-primary:active,
699
- .obfx-wrapper .btn.btn-primary.active {
700
- border-color: #3b49af;
701
- color: #fff;
702
- background: #3f4eba;
703
- }
704
-
705
- .obfx-wrapper .btn.btn-primary.loading::after {
706
- border-bottom-color: #fff;
707
- border-left-color: #fff;
708
- }
709
-
710
- .obfx-wrapper .btn.btn-success {
711
- border-color: #2faa3f;
712
- color: #fff;
713
- background: #32b643;
714
- }
715
-
716
- .obfx-wrapper .btn.btn-success:focus {
717
- box-shadow: 0 0 0 0.1rem rgba(50, 182, 67, 0.2);
718
- }
719
-
720
- .obfx-wrapper .btn.btn-success:focus,
721
- .obfx-wrapper .btn.btn-success:hover {
722
- border-color: #2da23c;
723
- color: #fff;
724
- background: #30ae40;
725
- }
726
-
727
- .obfx-wrapper .btn.btn-success.active,
728
- .obfx-wrapper .btn.btn-success:active {
729
- border-color: #278e34;
730
- color: #fff;
731
- background: #2a9a39;
732
- }
733
-
734
- .obfx-wrapper .btn.btn-success.loading::after {
735
- border-bottom-color: #fff;
736
- border-left-color: #fff;
737
- }
738
-
739
- .obfx-wrapper .btn.btn-error {
740
- border-color: #d95000;
741
- color: #fff;
742
- background: #e85600;
743
- }
744
-
745
- .obfx-wrapper .btn.btn-error:focus {
746
- box-shadow: 0 0 0 0.1rem rgba(232, 86, 0, 0.2);
747
- }
748
-
749
- .obfx-wrapper .btn.btn-error:focus,
750
- .obfx-wrapper .btn.btn-error:hover {
751
- border-color: #cf4d00;
752
- color: #fff;
753
- background: #de5200;
754
- }
755
-
756
- .obfx-wrapper .btn.btn-error.active,
757
- .obfx-wrapper .btn.btn-error:active {
758
- border-color: #b54300;
759
- color: #fff;
760
- background: #c44900;
761
- }
762
-
763
- .obfx-wrapper .btn.btn-error.loading::after {
764
- border-bottom-color: #fff;
765
- border-left-color: #fff;
766
- }
767
-
768
- .obfx-wrapper .btn.btn-link {
769
- border-color: transparent;
770
- color: #5764c6;
771
- background: transparent;
772
- }
773
-
774
- .obfx-wrapper .btn.btn-link:focus,
775
- .obfx-wrapper .btn.btn-link:hover,
776
- .obfx-wrapper .btn.btn-link:active,
777
- .obfx-wrapper .btn.btn-link.active {
778
- color: #3b49af;
779
- }
780
-
781
- .obfx-wrapper .btn.btn-sm {
782
- height: 2.4rem;
783
- padding: 0.1rem 0.8rem;
784
- font-size: 1.2rem;
785
- }
786
-
787
- .obfx-wrapper .btn.btn-lg {
788
- height: 4rem;
789
- padding: 0.9rem 0.8rem;
790
- font-size: 1.6rem;
791
- }
792
-
793
- .obfx-wrapper .btn.btn-block {
794
- display: block;
795
- width: 100%;
796
- }
797
-
798
- .obfx-wrapper .btn.btn-action {
799
- width: 3.2rem;
800
- padding-right: 0;
801
- padding-left: 0;
802
- }
803
-
804
- .obfx-wrapper .btn.btn-action.btn-sm {
805
- width: 2.4rem;
806
- }
807
-
808
- .obfx-wrapper .btn.btn-action.btn-lg {
809
- width: 4rem;
810
- }
811
-
812
- .obfx-wrapper .btn.btn-clear {
813
- width: 1.6rem;
814
- height: 1.6rem;
815
- margin-right: -0.2rem;
816
- margin-left: 0.4rem;
817
- padding: 0 0.2rem;
818
- border: 0;
819
- opacity: 0.45;
820
- color: currentColor;
821
- background: transparent;
822
- line-height: 1.6rem;
823
- text-decoration: none;
824
- }
825
-
826
- .obfx-wrapper .btn.btn-clear:hover {
827
- opacity: 0.85;
828
- }
829
-
830
- .obfx-wrapper .btn.btn-clear::before {
831
- content: "\2715";
832
- }
833
-
834
- .obfx-wrapper .btn-group {
835
- display: -webkit-inline-box;
836
- display: inline-flex;
837
- display: -ms-inline-flexbox;
838
- display: -webkit-inline-flex;
839
-
840
- -webkit-flex-wrap: wrap;
841
- -ms-flex-wrap: wrap;
842
- flex-wrap: wrap;
843
- }
844
-
845
- .obfx-wrapper .btn-group .btn {
846
- -webkit-box-flex: 1;
847
- -webkit-flex: 1 0 auto;
848
- -ms-flex: 1 0 auto;
849
- flex: 1 0 auto;
850
- }
851
-
852
- .obfx-wrapper .btn-group .btn:first-child:not(:last-child) {
853
- border-top-right-radius: 0;
854
- border-bottom-right-radius: 0;
855
- }
856
-
857
- .obfx-wrapper .btn-group .btn:not(:first-child):not(:last-child) {
858
- margin-left: -0.1rem;
859
- border-radius: 0;
860
- }
861
-
862
- .obfx-wrapper .btn-group .btn:last-child:not(:first-child) {
863
- margin-left: -0.1rem;
864
- border-top-left-radius: 0;
865
- border-bottom-left-radius: 0;
866
- }
867
-
868
- .obfx-wrapper .btn-group .btn:focus,
869
- .obfx-wrapper .btn-group .btn:hover,
870
- .obfx-wrapper .btn-group .btn:active,
871
- .obfx-wrapper .btn-group .btn.active {
872
- z-index: 1;
873
- }
874
-
875
- .obfx-wrapper .btn-group.btn-group-block {
876
- display: -webkit-box;
877
- display: flex;
878
- display: -ms-flexbox;
879
- display: -webkit-flex;
880
- }
881
-
882
- .obfx-wrapper .btn-group.btn-group-block .btn {
883
- -webkit-box-flex: 1;
884
- -webkit-flex: 1 0 0;
885
- -ms-flex: 1 0 0;
886
- flex: 1 0 0;
887
- }
888
-
889
- .obfx-wrapper .form-group:not(:last-child) {
890
- margin-bottom: 1rem;
891
- }
892
-
893
- .obfx-wrapper .form-label {
894
- display: block;
895
- padding: 0.6rem 0;
896
- }
897
-
898
- .obfx-wrapper .form-label.label-sm {
899
- padding: 0.2rem 0;
900
- }
901
-
902
- .obfx-wrapper .form-label.label-lg {
903
- padding: 1rem 0;
904
- }
905
-
906
- .obfx-wrapper .form-input {
907
- display: block;
908
- position: relative;
909
- width: 100%;
910
- max-width: 100%;
911
- height: 3.2rem;
912
- padding: 0.5rem 0.8rem;
913
- border: 0.1rem solid #c4c9d3;
914
- border-radius: 0.2rem;
915
- outline: none;
916
- color: #50596c;
917
- background: #fff;
918
- background-image: none;
919
- font-size: 1.4rem;
920
- line-height: 2rem;
921
- -webkit-transition: all 0.2s ease;
922
- transition: all 0.2s ease;
923
-
924
- -webkit-appearance: none;
925
- -moz-appearance: none;
926
- appearance: none;
927
- }
928
-
929
- .obfx-wrapper .form-input:focus {
930
- border-color: #5764c6;
931
- box-shadow: 0 0 0 0.2rem rgba(87, 100, 198, 0.15);
932
- }
933
-
934
- .obfx-wrapper .form-input::-webkit-input-placeholder {
935
- color: #acb3c2;
936
- }
937
-
938
- .obfx-wrapper .form-input:-ms-input-placeholder {
939
- color: #acb3c2;
940
- }
941
-
942
- .obfx-wrapper .form-input::placeholder {
943
- color: #acb3c2;
944
- }
945
-
946
- .obfx-wrapper .form-input.input-sm {
947
- height: 2.4rem;
948
- padding: 0.1rem 0.8rem;
949
- font-size: 1.2rem;
950
- }
951
-
952
- .obfx-wrapper .form-input.input-lg {
953
- height: 4rem;
954
- padding: 0.9rem 0.8rem;
955
- font-size: 1.6rem;
956
- }
957
-
958
- .obfx-wrapper .form-input.input-inline {
959
- display: inline-block;
960
- width: auto;
961
- vertical-align: middle;
962
- }
963
-
964
- .obfx-wrapper textarea.form-input {
965
- height: auto;
966
- }
967
-
968
- .obfx-wrapper .form-input[type="file"] {
969
- height: auto;
970
- }
971
-
972
- .obfx-wrapper .form-input-hint {
973
- margin-top: 0.4rem;
974
- color: #acb3c2;
975
- }
976
-
977
- .obfx-wrapper .has-success .form-input-hint,
978
- .obfx-wrapper .is-success + .form-input-hint {
979
- color: #32b643;
980
- }
981
-
982
- .obfx-wrapper .has-error .form-input-hint,
983
- .obfx-wrapper .is-error + .form-input-hint {
984
- color: #e85600;
985
- }
986
-
987
- .obfx-wrapper .form-select {
988
- width: 100%;
989
- padding: 0.5rem 0.8rem;
990
- border: 0.1rem solid #c4c9d3;
991
- border-radius: 0.2rem;
992
- outline: none;
993
- color: inherit;
994
- font-size: 1.4rem;
995
- line-height: 2rem;
996
- vertical-align: middle;
997
-
998
- -webkit-appearance: none;
999
- -moz-appearance: none;
1000
- appearance: none;
1001
- }
1002
-
1003
- .obfx-wrapper .form-select[multiple] option {
1004
- padding: 0.2rem 0.4rem;
1005
- }
1006
-
1007
- .obfx-wrapper .form-select:not([multiple]) {
1008
- height: 3.2rem;
1009
- padding-right: 2.4rem;
1010
- background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23667189' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center / 0.8rem 1rem;
1011
- }
1012
-
1013
- .obfx-wrapper .form-select:focus {
1014
- border-color: #5764c6;
1015
- box-shadow: 0 0 0 0.2rem rgba(87, 100, 198, 0.15);
1016
- }
1017
-
1018
- .obfx-wrapper .form-select::-ms-expand {
1019
- display: none;
1020
- }
1021
-
1022
- .obfx-wrapper .form-select.select-sm {
1023
- height: 2.4rem;
1024
- padding: 0.1rem 2rem 0.1rem 0.6rem;
1025
- font-size: 1.2rem;
1026
- }
1027
-
1028
- .obfx-wrapper .form-select.select-lg {
1029
- height: 4rem;
1030
- padding: 0.9rem 2.4rem 0.9rem 0.8rem;
1031
- font-size: 1.6rem;
1032
- }
1033
-
1034
- .obfx-wrapper .has-success .form-input,
1035
- .obfx-wrapper .has-success .form-select,
1036
- .obfx-wrapper .form-input.is-success,
1037
- .obfx-wrapper .form-select.is-success {
1038
- border-color: #32b643;
1039
- }
1040
-
1041
- .obfx-wrapper .has-success .form-input:focus,
1042
- .obfx-wrapper .has-success .form-select:focus,
1043
- .obfx-wrapper .form-input.is-success:focus,
1044
- .obfx-wrapper .form-select.is-success:focus {
1045
- box-shadow: 0 0 0 0.2rem rgba(50, 182, 67, 0.15);
1046
- }
1047
-
1048
- .obfx-wrapper .has-error .form-input,
1049
- .obfx-wrapper .has-error .form-select,
1050
- .obfx-wrapper .form-input.is-error,
1051
- .obfx-wrapper .form-select.is-error {
1052
- border-color: #e85600;
1053
- }
1054
-
1055
- .obfx-wrapper .has-error .form-input:focus,
1056
- .obfx-wrapper .has-error .form-select:focus,
1057
- .obfx-wrapper .form-input.is-error:focus,
1058
- .obfx-wrapper .form-select.is-error:focus {
1059
- box-shadow: 0 0 0 0.2rem rgba(232, 86, 0, 0.15);
1060
- }
1061
-
1062
- .obfx-wrapper .form-input:not(:placeholder-shown):invalid {
1063
- border-color: #e85600;
1064
- }
1065
-
1066
- .obfx-wrapper .form-input:not(:placeholder-shown):invalid:focus {
1067
- box-shadow: 0 0 0 0.2rem rgba(232, 86, 0, 0.15);
1068
- }
1069
-
1070
- .obfx-wrapper .form-input:not(:placeholder-shown):invalid + .form-input-hint {
1071
- color: #e85600;
1072
- }
1073
-
1074
- .obfx-wrapper .has-icon-left,
1075
- .obfx-wrapper .has-icon-right {
1076
- position: relative;
1077
- }
1078
-
1079
- .obfx-wrapper .has-icon-left .form-icon,
1080
- .obfx-wrapper .has-icon-right .form-icon {
1081
- position: absolute;
1082
- top: 50%;
1083
- min-width: 1.4rem;
1084
- margin: 0 0.8rem;
1085
- -webkit-transform: translateY(-50%);
1086
- -ms-transform: translateY(-50%);
1087
- transform: translateY(-50%);
1088
- }
1089
-
1090
- .obfx-wrapper .has-icon-left .form-icon {
1091
- left: 0;
1092
- }
1093
-
1094
- .obfx-wrapper .has-icon-left .form-input {
1095
- padding-left: 3rem;
1096
- }
1097
-
1098
- .obfx-wrapper .has-icon-right .form-icon {
1099
- right: 0;
1100
- }
1101
-
1102
- .obfx-wrapper .has-icon-right .form-input {
1103
- padding-right: 3rem;
1104
- }
1105
-
1106
- .obfx-wrapper .form-checkbox,
1107
- .obfx-wrapper .form-radio,
1108
- .obfx-wrapper .form-switch {
1109
- display: inline-block;
1110
- position: relative;
1111
- line-height: 2rem;
1112
- }
1113
-
1114
- .obfx-wrapper .form-checkbox input,
1115
- .obfx-wrapper .form-radio input,
1116
- .obfx-wrapper .form-switch input {
1117
- overflow: hidden;
1118
- clip: rect(0, 0, 0, 0);
1119
- position: absolute;
1120
- width: 0.1rem;
1121
- height: 0.1rem;
1122
- margin: -0.1rem;
1123
- }
1124
-
1125
- .obfx-wrapper .form-checkbox input:focus + .form-icon,
1126
- .obfx-wrapper .form-radio input:focus + .form-icon,
1127
- .obfx-wrapper .form-switch input:focus + .form-icon {
1128
- border-color: #5764c6;
1129
- box-shadow: 0 0 0 0.2rem rgba(87, 100, 198, 0.15);
1130
- }
1131
-
1132
- .obfx-wrapper .form-checkbox input:checked + .form-icon,
1133
- .obfx-wrapper .form-radio input:checked + .form-icon,
1134
- .obfx-wrapper .form-switch input:checked + .form-icon {
1135
- border-color: #5764c6;
1136
- background: #5764c6;
1137
- }
1138
-
1139
- .obfx-wrapper .form-checkbox .form-icon,
1140
- .obfx-wrapper .form-radio .form-icon,
1141
- .obfx-wrapper .form-switch .form-icon {
1142
- display: inline-block;
1143
- position: absolute;
1144
- border: 0.1rem solid #c4c9d3;
1145
- cursor: pointer;
1146
- -webkit-transition: all 0.2s ease;
1147
- transition: all 0.2s ease;
1148
- }
1149
-
1150
- .obfx-wrapper .form-checkbox,
1151
- .obfx-wrapper .form-radio {
1152
- padding: 0.2rem 2rem;
1153
- }
1154
-
1155
- .obfx-wrapper .form-checkbox .form-icon,
1156
- .obfx-wrapper .form-radio .form-icon {
1157
- top: 0.5rem;
1158
- left: 0;
1159
- width: 1.4rem;
1160
- height: 1.4rem;
1161
- background: #fff;
1162
- }
1163
-
1164
- .obfx-wrapper .form-checkbox input:active + .form-icon,
1165
- .obfx-wrapper .form-radio input:active + .form-icon {
1166
- background: #f0f1f4;
1167
- }
1168
-
1169
- .obfx-wrapper .form-checkbox .form-icon {
1170
- border-radius: 0.2rem;
1171
- }
1172
-
1173
- .obfx-wrapper .form-checkbox input:checked + .form-icon::before {
1174
- position: absolute;
1175
- top: 50%;
1176
- left: 50%;
1177
- width: 0.6rem;
1178
- height: 1rem;
1179
- margin-top: -0.6rem;
1180
- margin-left: -0.3rem;
1181
- border: 0.2rem solid #fff;
1182
- border-top-width: 0;
1183
- border-left-width: 0;
1184
- background-clip: padding-box;
1185
- content: "";
1186
- -webkit-transform: rotate(45deg);
1187
- -ms-transform: rotate(45deg);
1188
- transform: rotate(45deg);
1189
- }
1190
-
1191
- .obfx-wrapper .form-checkbox input:indeterminate + .form-icon {
1192
- border-color: #5764c6;
1193
- background: #5764c6;
1194
- }
1195
-
1196
- .obfx-wrapper .form-checkbox input:indeterminate + .form-icon::before {
1197
- position: absolute;
1198
- top: 50%;
1199
- left: 50%;
1200
- width: 1rem;
1201
- height: 0.2rem;
1202
- margin-top: -0.1rem;
1203
- margin-left: -0.5rem;
1204
- background: #fff;
1205
- content: "";
1206
- }
1207
-
1208
- .obfx-wrapper .form-radio .form-icon {
1209
- border-radius: 0.7rem;
1210
- }
1211
-
1212
- .obfx-wrapper .form-radio input:checked + .form-icon::before {
1213
- position: absolute;
1214
- top: 50%;
1215
- left: 50%;
1216
- width: 0.4rem;
1217
- height: 0.4rem;
1218
- margin-top: -0.2rem;
1219
- margin-left: -0.2rem;
1220
- border-radius: 0.2rem;
1221
- background: #fff;
1222
- content: "";
1223
- }
1224
-
1225
- .obfx-wrapper .form-switch {
1226
- padding: 0.2rem 2rem 0.2rem 3.6rem;
1227
- }
1228
-
1229
- .obfx-wrapper .form-switch .form-icon {
1230
- top: 0.3rem;
1231
- left: 0;
1232
- width: 3rem;
1233
- height: 1.8rem;
1234
- border-radius: 0.9rem;
1235
- background: #e7e9ed;
1236
- background-clip: padding-box;
1237
- }
1238
-
1239
- .obfx-wrapper .form-switch .form-icon::before {
1240
- display: block;
1241
- position: absolute;
1242
- top: 0;
1243
- left: 0;
1244
- width: 1.6rem;
1245
- height: 1.6rem;
1246
- border-radius: 0.8rem;
1247
- background: #fff;
1248
- content: "";
1249
- -webkit-transition: all 0.2s ease;
1250
- transition: all 0.2s ease;
1251
- }
1252
-
1253
- .obfx-wrapper .form-switch input:checked + .form-icon::before {
1254
- left: 1.2rem;
1255
- }
1256
-
1257
- .obfx-wrapper .form-switch input:active + .form-icon::before {
1258
- background: #f8f9fa;
1259
- }
1260
-
1261
- .obfx-wrapper .input-group {
1262
- display: -webkit-box;
1263
- display: flex;
1264
- display: -ms-flexbox;
1265
- display: -webkit-flex;
1266
- }
1267
-
1268
- .obfx-wrapper .input-group .input-group-addon {
1269
- padding: 0.5rem 0.8rem;
1270
- border: 0.1rem solid #c4c9d3;
1271
- border-radius: 0.2rem;
1272
- background: #f8f9fa;
1273
- line-height: 2rem;
1274
- }
1275
-
1276
- .obfx-wrapper .input-group .input-group-addon.addon-sm {
1277
- padding: 0.1rem 0.8rem;
1278
- font-size: 1.2rem;
1279
- }
1280
-
1281
- .obfx-wrapper .input-group .input-group-addon.addon-lg {
1282
- padding: 0.9rem 0.8rem;
1283
- font-size: 1.6rem;
1284
- }
1285
-
1286
- .obfx-wrapper .input-group .input-group-addon,
1287
- .obfx-wrapper .input-group .input-group-btn {
1288
- -webkit-box-flex: 1;
1289
- -webkit-flex: 1 0 auto;
1290
- -ms-flex: 1 0 auto;
1291
- flex: 1 0 auto;
1292
- }
1293
-
1294
- .obfx-wrapper .input-group .form-input:first-child:not(:last-child),
1295
- .obfx-wrapper .input-group .form-select:first-child:not(:last-child),
1296
- .obfx-wrapper .input-group .input-group-addon:first-child:not(:last-child),
1297
- .obfx-wrapper .input-group .input-group-btn:first-child:not(:last-child) {
1298
- border-top-right-radius: 0;
1299
- border-bottom-right-radius: 0;
1300
- }
1301
-
1302
- .obfx-wrapper .input-group .form-input:not(:first-child):not(:last-child),
1303
- .obfx-wrapper .input-group .form-select:not(:first-child):not(:last-child),
1304
- .obfx-wrapper .input-group .input-group-addon:not(:first-child):not(:last-child),
1305
- .obfx-wrapper .input-group .input-group-btn:not(:first-child):not(:last-child) {
1306
- margin-left: -0.1rem;
1307
- border-radius: 0;
1308
- }
1309
-
1310
- .obfx-wrapper .input-group .form-input:last-child:not(:first-child),
1311
- .obfx-wrapper .input-group .form-select:last-child:not(:first-child),
1312
- .obfx-wrapper .input-group .input-group-addon:last-child:not(:first-child),
1313
- .obfx-wrapper .input-group .input-group-btn:last-child:not(:first-child) {
1314
- margin-left: -0.1rem;
1315
- border-top-left-radius: 0;
1316
- border-bottom-left-radius: 0;
1317
- }
1318
-
1319
- .obfx-wrapper .input-group .form-input:focus,
1320
- .obfx-wrapper .input-group .form-select:focus,
1321
- .obfx-wrapper .input-group .input-group-addon:focus,
1322
- .obfx-wrapper .input-group .input-group-btn:focus {
1323
- z-index: 1;
1324
- }
1325
-
1326
- .obfx-wrapper .input-group .form-select {
1327
- width: auto;
1328
- }
1329
-
1330
- .obfx-wrapper .input-group.input-inline {
1331
- display: -webkit-inline-box;
1332
- display: inline-flex;
1333
- display: -ms-inline-flexbox;
1334
- display: -webkit-inline-flex;
1335
- }
1336
-
1337
- .obfx-wrapper .form-input:disabled,
1338
- .obfx-wrapper .form-select:disabled,
1339
- .obfx-wrapper .form-input.disabled,
1340
- .obfx-wrapper .form-select.disabled {
1341
- opacity: 0.5;
1342
- background-color: #f0f1f4;
1343
- cursor: not-allowed;
1344
- }
1345
-
1346
- .obfx-wrapper .form-input[readonly] {
1347
- background-color: #f8f9fa;
1348
- }
1349
-
1350
- .obfx-wrapper input:disabled + .form-icon,
1351
- .obfx-wrapper input.disabled + .form-icon {
1352
- opacity: 0.5;
1353
- background: #f0f1f4;
1354
- cursor: not-allowed;
1355
- }
1356
-
1357
- .obfx-wrapper .form-switch input:disabled + .form-icon::before,
1358
- .obfx-wrapper .form-switch input.disabled + .form-icon::before {
1359
- background: #fff;
1360
- }
1361
-
1362
- .obfx-wrapper .form-horizontal {
1363
- padding: 1rem;
1364
- }
1365
-
1366
- .obfx-wrapper .form-horizontal .form-group {
1367
- display: -webkit-box;
1368
- display: flex;
1369
- display: -ms-flexbox;
1370
- display: -webkit-flex;
1371
- }
1372
-
1373
- .obfx-wrapper .form-horizontal .form-checkbox,
1374
- .obfx-wrapper .form-horizontal .form-radio,
1375
- .obfx-wrapper .form-horizontal .form-switch {
1376
- margin: 0.4rem 0;
1377
- }
1378
-
1379
- .obfx-wrapper .label {
1380
- display: inline-block;
1381
- padding: 0.3rem 0.4rem;
1382
- border-radius: 0.2rem;
1383
- color: #5b657a;
1384
- background: #f8f9fa;
1385
- line-height: 1;
1386
- vertical-align: baseline;
1387
- }
1388
-
1389
- .obfx-wrapper .label.label-primary {
1390
- color: #fff;
1391
- background: #5764c6;
1392
- }
1393
-
1394
- .obfx-wrapper .label.label-success {
1395
- color: #fff;
1396
- background: #32b643;
1397
- }
1398
-
1399
- .obfx-wrapper .label.label-warning {
1400
- color: #fff;
1401
- background: #ffb700;
1402
- }
1403
-
1404
- .obfx-wrapper .label.label-error {
1405
- color: #fff;
1406
- background: #e85600;
1407
- }
1408
-
1409
- .obfx-wrapper code {
1410
- display: inline-block;
1411
- padding: 0.3rem 0.4rem;
1412
- border-radius: 0.2rem;
1413
- color: #e06870;
1414
- background: #fdf4f4;
1415
- line-height: 1;
1416
- vertical-align: baseline;
1417
- }
1418
-
1419
- .obfx-wrapper .code {
1420
- position: relative;
1421
- border-radius: 0.2rem;
1422
- color: #50596c;
1423
- line-height: 2rem;
1424
- }
1425
-
1426
- .obfx-wrapper .code::before {
1427
- position: absolute;
1428
- top: 0.2rem;
1429
- right: 1rem;
1430
- color: #acb3c2;
1431
- font-size: 1.2rem;
1432
- content: attr(data-lang);
1433
- }
1434
-
1435
- .obfx-wrapper .code code {
1436
- display: block;
1437
- overflow-x: auto;
1438
- width: 100%;
1439
- padding: 2rem;
1440
- color: inherit;
1441
- background: #f8f9fa;
1442
- line-height: inherit;
1443
- }
1444
-
1445
- .obfx-wrapper .img-responsive {
1446
- display: block;
1447
- max-width: 100%;
1448
- height: auto;
1449
- }
1450
-
1451
- .obfx-wrapper .img-fit-cover {
1452
- object-fit: cover;
1453
- }
1454
-
1455
- .obfx-wrapper .img-fit-contain {
1456
- object-fit: contain;
1457
- }
1458
-
1459
- .obfx-wrapper .video-responsive {
1460
- display: block;
1461
- overflow: hidden;
1462
- position: relative;
1463
- width: 100%;
1464
- padding: 0;
1465
- }
1466
-
1467
- .obfx-wrapper .video-responsive::before {
1468
- display: block;
1469
- padding-bottom: 56.25%;
1470
- content: "";
1471
- }
1472
-
1473
- .obfx-wrapper .video-responsive iframe,
1474
- .obfx-wrapper .video-responsive object,
1475
- .obfx-wrapper .video-responsive embed {
1476
- position: absolute;
1477
- top: 0;
1478
- right: 0;
1479
- bottom: 0;
1480
- left: 0;
1481
- width: 100%;
1482
- height: 100%;
1483
- }
1484
-
1485
- .obfx-wrapper .video-responsive video {
1486
- width: 100%;
1487
- max-width: 100%;
1488
- height: auto;
1489
- }
1490
-
1491
- .obfx-wrapper .video-responsive-4-3::before {
1492
- padding-bottom: 75%;
1493
- }
1494
-
1495
- .obfx-wrapper .video-responsive-1-1::before {
1496
- padding-bottom: 100%;
1497
- }
1498
-
1499
- .obfx-wrapper .figure {
1500
- margin: 0 0 1rem 0;
1501
- }
1502
-
1503
- .obfx-wrapper .figure .figure-caption {
1504
- margin-top: 1rem;
1505
- color: #727e96;
1506
- }
1507
-
1508
- .obfx-wrapper .container {
1509
- width: 100%;
1510
- margin-right: auto;
1511
- margin-left: auto;
1512
- padding-right: 1rem;
1513
- padding-left: 1rem;
1514
- }
1515
-
1516
- .obfx-wrapper .container.grid-1280 {
1517
- max-width: 130rem;
1518
- }
1519
-
1520
- .obfx-wrapper .container.grid-960 {
1521
- max-width: 98rem;
1522
- }
1523
-
1524
- .obfx-wrapper .container.grid-480 {
1525
- max-width: 50rem;
1526
- }
1527
-
1528
- .obfx-wrapper .columns {
1529
- display: -webkit-box;
1530
- display: flex;
1531
- display: -ms-flexbox;
1532
- display: -webkit-flex;
1533
- margin-right: -1rem;
1534
- margin-left: -1rem;
1535
-
1536
- -webkit-flex-wrap: wrap;
1537
- -ms-flex-wrap: wrap;
1538
- flex-wrap: wrap;
1539
- }
1540
-
1541
- .obfx-wrapper .columns.col-gapless {
1542
- margin-right: 0;
1543
- margin-left: 0;
1544
- }
1545
-
1546
- .obfx-wrapper .columns.col-gapless .column {
1547
- padding-right: 0;
1548
- padding-left: 0;
1549
- }
1550
-
1551
- .obfx-wrapper .columns.col-oneline {
1552
- overflow-x: auto;
1553
-
1554
- -webkit-flex-wrap: nowrap;
1555
- -ms-flex-wrap: nowrap;
1556
- flex-wrap: nowrap;
1557
- }
1558
-
1559
- .obfx-wrapper .column {
1560
- max-width: 100%;
1561
- padding: 1rem;
1562
-
1563
- -webkit-box-flex: 1;
1564
- -webkit-flex: 1;
1565
- -ms-flex: 1;
1566
- flex: 1;
1567
- }
1568
-
1569
- .obfx-wrapper .column.col-12,
1570
- .obfx-wrapper .column.col-11,
1571
- .obfx-wrapper .column.col-10,
1572
- .obfx-wrapper .column.col-9,
1573
- .obfx-wrapper .column.col-8,
1574
- .obfx-wrapper .column.col-7,
1575
- .obfx-wrapper .column.col-6,
1576
- .obfx-wrapper .column.col-5,
1577
- .obfx-wrapper .column.col-4,
1578
- .obfx-wrapper .column.col-3,
1579
- .obfx-wrapper .column.col-2,
1580
- .obfx-wrapper .column.col-1 {
1581
- -webkit-box-flex: 0;
1582
- -webkit-flex: none;
1583
- -ms-flex: none;
1584
- flex: none;
1585
- }
1586
-
1587
- .obfx-wrapper .col-12 {
1588
- width: 100%;
1589
- }
1590
-
1591
- .obfx-wrapper .col-11 {
1592
- width: 91.66666667%;
1593
- }
1594
-
1595
- .obfx-wrapper .col-10 {
1596
- width: 83.33333333%;
1597
- }
1598
-
1599
- .obfx-wrapper .col-9 {
1600
- width: 75%;
1601
- }
1602
-
1603
- .obfx-wrapper .col-8 {
1604
- width: 66.66666667%;
1605
- }
1606
-
1607
- .obfx-wrapper .col-7 {
1608
- width: 58.33333333%;
1609
- }
1610
-
1611
- .obfx-wrapper .col-6 {
1612
- width: 50%;
1613
- }
1614
-
1615
- .obfx-wrapper .col-5 {
1616
- width: 41.66666667%;
1617
- }
1618
-
1619
- .obfx-wrapper .col-4 {
1620
- width: 33.33333333%;
1621
- }
1622
-
1623
- .obfx-wrapper .col-3 {
1624
- width: 25%;
1625
- }
1626
-
1627
- .obfx-wrapper .col-2 {
1628
- width: 16.66666667%;
1629
- }
1630
-
1631
- .obfx-wrapper .col-1 {
1632
- width: 8.33333333%;
1633
- }
1634
-
1635
- .obfx-header {
1636
- border-top: 4px solid #5764c6;
1637
- }
1638
-
1639
- .obfx-logo {
1640
- margin-right: 10px;
1641
- }
1642
-
1643
- .obfx-header h1 {
1644
- margin-bottom: 0 !important;
1645
- letter-spacing: -0.025em;
1646
- }
1647
-
1648
- @media screen and (max-width: 1280px) {
1649
- .obfx-wrapper .col-xl-12,
1650
- .obfx-wrapper .col-xl-11,
1651
- .obfx-wrapper .col-xl-10,
1652
- .obfx-wrapper .col-xl-9,
1653
- .obfx-wrapper .col-xl-8,
1654
- .obfx-wrapper .col-xl-7,
1655
- .obfx-wrapper .col-xl-6,
1656
- .obfx-wrapper .col-xl-5,
1657
- .obfx-wrapper .col-xl-4,
1658
- .obfx-wrapper .col-xl-3,
1659
- .obfx-wrapper .col-xl-2,
1660
- .obfx-wrapper .col-xl-1 {
1661
- -webkit-box-flex: 0;
1662
- -webkit-flex: none;
1663
- -ms-flex: none;
1664
- flex: none;
1665
- }
1666
-
1667
- .obfx-wrapper .col-xl-12 {
1668
- width: 100%;
1669
- }
1670
-
1671
- .obfx-wrapper .col-xl-11 {
1672
- width: 91.66666667%;
1673
- }
1674
-
1675
- .obfx-wrapper .col-xl-10 {
1676
- width: 83.33333333%;
1677
- }
1678
-
1679
- .obfx-wrapper .col-xl-9 {
1680
- width: 75%;
1681
- }
1682
-
1683
- .obfx-wrapper .col-xl-8 {
1684
- width: 66.66666667%;
1685
- }
1686
-
1687
- .obfx-wrapper .col-xl-7 {
1688
- width: 58.33333333%;
1689
- }
1690
-
1691
- .obfx-wrapper .col-xl-6 {
1692
- width: 50%;
1693
- }
1694
-
1695
- .obfx-wrapper .col-xl-5 {
1696
- width: 41.66666667%;
1697
- }
1698
-
1699
- .obfx-wrapper .col-xl-4 {
1700
- width: 33.33333333%;
1701
- }
1702
-
1703
- .obfx-wrapper .col-xl-3 {
1704
- width: 25%;
1705
- }
1706
-
1707
- .obfx-wrapper .col-xl-2 {
1708
- width: 16.66666667%;
1709
- }
1710
-
1711
- .obfx-wrapper .col-xl-1 {
1712
- width: 8.33333333%;
1713
- }
1714
- }
1715
-
1716
- @media screen and (max-width: 960px) {
1717
- .obfx-wrapper .col-lg-12,
1718
- .obfx-wrapper .col-lg-11,
1719
- .obfx-wrapper .col-lg-10,
1720
- .obfx-wrapper .col-lg-9,
1721
- .obfx-wrapper .col-lg-8,
1722
- .obfx-wrapper .col-lg-7,
1723
- .obfx-wrapper .col-lg-6,
1724
- .obfx-wrapper .col-lg-5,
1725
- .obfx-wrapper .col-lg-4,
1726
- .obfx-wrapper .col-lg-3,
1727
- .obfx-wrapper .col-lg-2,
1728
- .obfx-wrapper .col-lg-1 {
1729
- -webkit-box-flex: 0;
1730
- -webkit-flex: none;
1731
- -ms-flex: none;
1732
- flex: none;
1733
- }
1734
-
1735
- .obfx-wrapper .col-lg-12 {
1736
- width: 100%;
1737
- }
1738
-
1739
- .obfx-wrapper .col-lg-11 {
1740
- width: 91.66666667%;
1741
- }
1742
-
1743
- .obfx-wrapper .col-lg-10 {
1744
- width: 83.33333333%;
1745
- }
1746
-
1747
- .obfx-wrapper .col-lg-9 {
1748
- width: 75%;
1749
- }
1750
-
1751
- .obfx-wrapper .col-lg-8 {
1752
- width: 66.66666667%;
1753
- }
1754
-
1755
- .obfx-wrapper .col-lg-7 {
1756
- width: 58.33333333%;
1757
- }
1758
-
1759
- .obfx-wrapper .col-lg-6 {
1760
- width: 50%;
1761
- }
1762
-
1763
- .obfx-wrapper .col-lg-5 {
1764
- width: 41.66666667%;
1765
- }
1766
-
1767
- .obfx-wrapper .col-lg-4 {
1768
- width: 33.33333333%;
1769
- }
1770
-
1771
- .obfx-wrapper .col-lg-3 {
1772
- width: 25%;
1773
- }
1774
-
1775
- .obfx-wrapper .col-lg-2 {
1776
- width: 16.66666667%;
1777
- }
1778
-
1779
- .obfx-wrapper .col-lg-1 {
1780
- width: 8.33333333%;
1781
- }
1782
- }
1783
-
1784
- @media screen and (max-width: 840px) {
1785
- .obfx-wrapper .col-md-12,
1786
- .obfx-wrapper .col-md-11,
1787
- .obfx-wrapper .col-md-10,
1788
- .obfx-wrapper .col-md-9,
1789
- .obfx-wrapper .col-md-8,
1790
- .obfx-wrapper .col-md-7,
1791
- .obfx-wrapper .col-md-6,
1792
- .obfx-wrapper .col-md-5,
1793
- .obfx-wrapper .col-md-4,
1794
- .obfx-wrapper .col-md-3,
1795
- .obfx-wrapper .col-md-2,
1796
- .obfx-wrapper .col-md-1 {
1797
- -webkit-box-flex: 0;
1798
- -webkit-flex: none;
1799
- -ms-flex: none;
1800
- flex: none;
1801
- }
1802
-
1803
- .obfx-wrapper .col-md-12 {
1804
- width: 100%;
1805
- }
1806
-
1807
- .obfx-wrapper .col-md-11 {
1808
- width: 91.66666667%;
1809
- }
1810
-
1811
- .obfx-wrapper .col-md-10 {
1812
- width: 83.33333333%;
1813
- }
1814
-
1815
- .obfx-wrapper .col-md-9 {
1816
- width: 75%;
1817
- }
1818
-
1819
- .obfx-wrapper .col-md-8 {
1820
- width: 66.66666667%;
1821
- }
1822
-
1823
- .obfx-wrapper .col-md-7 {
1824
- width: 58.33333333%;
1825
- }
1826
-
1827
- .obfx-wrapper .col-md-6 {
1828
- width: 50%;
1829
- }
1830
-
1831
- .obfx-wrapper .col-md-5 {
1832
- width: 41.66666667%;
1833
- }
1834
-
1835
- .obfx-wrapper .col-md-4 {
1836
- width: 33.33333333%;
1837
- }
1838
-
1839
- .obfx-wrapper .col-md-3 {
1840
- width: 25%;
1841
- }
1842
-
1843
- .obfx-wrapper .col-md-2 {
1844
- width: 16.66666667%;
1845
- }
1846
-
1847
- .obfx-wrapper .col-md-1 {
1848
- width: 8.33333333%;
1849
- }
1850
- }
1851
-
1852
- @media screen and (max-width: 600px) {
1853
- .obfx-wrapper .col-sm-12,
1854
- .obfx-wrapper .col-sm-11,
1855
- .obfx-wrapper .col-sm-10,
1856
- .obfx-wrapper .col-sm-9,
1857
- .obfx-wrapper .col-sm-8,
1858
- .obfx-wrapper .col-sm-7,
1859
- .obfx-wrapper .col-sm-6,
1860
- .obfx-wrapper .col-sm-5,
1861
- .obfx-wrapper .col-sm-4,
1862
- .obfx-wrapper .col-sm-3,
1863
- .obfx-wrapper .col-sm-2,
1864
- .obfx-wrapper .col-sm-1 {
1865
- -webkit-box-flex: 0;
1866
- -webkit-flex: none;
1867
- -ms-flex: none;
1868
- flex: none;
1869
- }
1870
-
1871
- .obfx-wrapper .col-sm-12 {
1872
- width: 100%;
1873
- }
1874
-
1875
- .obfx-wrapper .col-sm-11 {
1876
- width: 91.66666667%;
1877
- }
1878
-
1879
- .obfx-wrapper .col-sm-10 {
1880
- width: 83.33333333%;
1881
- }
1882
-
1883
- .obfx-wrapper .col-sm-9 {
1884
- width: 75%;
1885
- }
1886
-
1887
- .obfx-wrapper .col-sm-8 {
1888
- width: 66.66666667%;
1889
- }
1890
-
1891
- .obfx-wrapper .col-sm-7 {
1892
- width: 58.33333333%;
1893
- }
1894
-
1895
- .obfx-wrapper .col-sm-6 {
1896
- width: 50%;
1897
- }
1898
-
1899
- .obfx-wrapper .col-sm-5 {
1900
- width: 41.66666667%;
1901
- }
1902
-
1903
- .obfx-wrapper .col-sm-4 {
1904
- width: 33.33333333%;
1905
- }
1906
-
1907
- .obfx-wrapper .col-sm-3 {
1908
- width: 25%;
1909
- }
1910
-
1911
- .obfx-wrapper .col-sm-2 {
1912
- width: 16.66666667%;
1913
- }
1914
-
1915
- .obfx-wrapper .col-sm-1 {
1916
- width: 8.33333333%;
1917
- }
1918
- }
1919
-
1920
- @media screen and (max-width: 480px) {
1921
- .obfx-wrapper .col-xs-12,
1922
- .obfx-wrapper .col-xs-11,
1923
- .obfx-wrapper .col-xs-10,
1924
- .obfx-wrapper .col-xs-9,
1925
- .obfx-wrapper .col-xs-8,
1926
- .obfx-wrapper .col-xs-7,
1927
- .obfx-wrapper .col-xs-6,
1928
- .obfx-wrapper .col-xs-5,
1929
- .obfx-wrapper .col-xs-4,
1930
- .obfx-wrapper .col-xs-3,
1931
- .obfx-wrapper .col-xs-2,
1932
- .obfx-wrapper .col-xs-1 {
1933
- -webkit-box-flex: 0;
1934
- -webkit-flex: none;
1935
- -ms-flex: none;
1936
- flex: none;
1937
- }
1938
-
1939
- .obfx-wrapper .col-xs-12 {
1940
- width: 100%;
1941
- }
1942
-
1943
- .obfx-wrapper .col-xs-11 {
1944
- width: 91.66666667%;
1945
- }
1946
-
1947
- .obfx-wrapper .col-xs-10 {
1948
- width: 83.33333333%;
1949
- }
1950
-
1951
- .obfx-wrapper .col-xs-9 {
1952
- width: 75%;
1953
- }
1954
-
1955
- .obfx-wrapper .col-xs-8 {
1956
- width: 66.66666667%;
1957
- }
1958
-
1959
- .obfx-wrapper .col-xs-7 {
1960
- width: 58.33333333%;
1961
- }
1962
-
1963
- .obfx-wrapper .col-xs-6 {
1964
- width: 50%;
1965
- }
1966
-
1967
- .obfx-wrapper .col-xs-5 {
1968
- width: 41.66666667%;
1969
- }
1970
-
1971
- .obfx-wrapper .col-xs-4 {
1972
- width: 33.33333333%;
1973
- }
1974
-
1975
- .obfx-wrapper .col-xs-3 {
1976
- width: 25%;
1977
- }
1978
-
1979
- .obfx-wrapper .col-xs-2 {
1980
- width: 16.66666667%;
1981
- }
1982
-
1983
- .obfx-wrapper .col-xs-1 {
1984
- width: 8.33333333%;
1985
- }
1986
- }
1987
-
1988
- .obfx-wrapper .show-xs,
1989
- .obfx-wrapper .show-sm,
1990
- .obfx-wrapper .show-md,
1991
- .obfx-wrapper .show-lg,
1992
- .obfx-wrapper .show-xl {
1993
- display: none !important;
1994
- }
1995
-
1996
- @media screen and (max-width: 480px) {
1997
- .obfx-wrapper .hide-xs {
1998
- display: none !important;
1999
- }
2000
-
2001
- .obfx-wrapper .show-xs {
2002
- display: block !important;
2003
- }
2004
- }
2005
-
2006
- @media screen and (max-width: 600px) {
2007
- .obfx-wrapper .hide-sm {
2008
- display: none !important;
2009
- }
2010
-
2011
- .obfx-wrapper .show-sm {
2012
- display: block !important;
2013
- }
2014
- }
2015
-
2016
- @media screen and (max-width: 840px) {
2017
- .obfx-wrapper .hide-md {
2018
- display: none !important;
2019
- }
2020
-
2021
- .obfx-wrapper .show-md {
2022
- display: block !important;
2023
- }
2024
- }
2025
-
2026
- @media screen and (max-width: 960px) {
2027
- .obfx-wrapper .hide-lg {
2028
- display: none !important;
2029
- }
2030
-
2031
- .obfx-wrapper .show-lg {
2032
- display: block !important;
2033
- }
2034
- }
2035
-
2036
- @media screen and (max-width: 1280px) {
2037
- .obfx-wrapper .hide-xl {
2038
- display: none !important;
2039
- }
2040
-
2041
- .obfx-wrapper .show-xl {
2042
- display: block !important;
2043
- }
2044
- }
2045
-
2046
- .obfx-wrapper .navbar {
2047
- display: -webkit-box;
2048
- display: flex;
2049
- display: -ms-flexbox;
2050
- display: -webkit-flex;
2051
-
2052
- -webkit-align-items: stretch;
2053
- align-items: stretch;
2054
- -webkit-box-align: stretch;
2055
- -webkit-box-pack: justify;
2056
- -ms-flex-align: stretch;
2057
- -ms-flex-pack: justify;
2058
- -webkit-flex-wrap: wrap;
2059
- -ms-flex-wrap: wrap;
2060
- flex-wrap: wrap;
2061
- -webkit-justify-content: space-between;
2062
- justify-content: space-between;
2063
- }
2064
-
2065
- .obfx-wrapper .navbar .navbar-section {
2066
- display: -webkit-box;
2067
- display: flex;
2068
- display: -ms-flexbox;
2069
- display: -webkit-flex;
2070
-
2071
- -webkit-align-items: center;
2072
- align-items: center;
2073
- -webkit-box-align: center;
2074
- -webkit-box-flex: 1;
2075
- -webkit-flex: 1 0 0;
2076
- -ms-flex: 1 0 0;
2077
- flex: 1 0 0;
2078
- -ms-flex-align: center;
2079
- }
2080
-
2081
- .obfx-wrapper .navbar .navbar-section:last-child {
2082
- -webkit-box-pack: end;
2083
- -ms-flex-pack: end;
2084
- -webkit-justify-content: flex-end;
2085
- justify-content: flex-end;
2086
- }
2087
-
2088
- .obfx-wrapper .navbar .navbar-center {
2089
- display: -webkit-box;
2090
- display: flex;
2091
- display: -ms-flexbox;
2092
- display: -webkit-flex;
2093
-
2094
- -webkit-align-items: center;
2095
- align-items: center;
2096
- -webkit-box-align: center;
2097
- -webkit-box-flex: 0;
2098
- -webkit-flex: 0 0 auto;
2099
- -ms-flex: 0 0 auto;
2100
- flex: 0 0 auto;
2101
- -ms-flex-align: center;
2102
- }
2103
-
2104
- .obfx-wrapper .navbar .navbar-brand {
2105
- font-size: 1.6rem;
2106
- font-weight: 500;
2107
- text-decoration: none;
2108
- }
2109
-
2110
- .obfx-wrapper .panel {
2111
- display: -webkit-box;
2112
- display: flex;
2113
- display: -ms-flexbox;
2114
- display: -webkit-flex;
2115
- flex-direction: column;
2116
- border: 0.1rem solid #f0f1f4;
2117
- border-radius: 0.2rem;
2118
-
2119
- -webkit-box-direction: normal;
2120
- -webkit-box-orient: vertical;
2121
- -webkit-flex-direction: column;
2122
- -ms-flex-direction: column;
2123
- }
2124
-
2125
- .obfx-wrapper .panel .panel-header,
2126
- .obfx-wrapper .panel .panel-footer {
2127
- padding: 1.5rem;
2128
-
2129
- -webkit-box-flex: 0;
2130
- -webkit-flex: 0 0 auto;
2131
- -ms-flex: 0 0 auto;
2132
- flex: 0 0 auto;
2133
- }
2134
-
2135
- .obfx-wrapper .panel .panel-nav {
2136
- -webkit-box-flex: 0;
2137
- -webkit-flex: 0 0 auto;
2138
- -ms-flex: 0 0 auto;
2139
- flex: 0 0 auto;
2140
- }
2141
-
2142
- .obfx-wrapper .panel .panel-body {
2143
- overflow-y: auto;
2144
- padding: 0 1.5rem;
2145
-
2146
- -webkit-box-flex: 1;
2147
- -webkit-flex: 1 1 auto;
2148
- -ms-flex: 1 1 auto;
2149
- flex: 1 1 auto;
2150
- }
2151
-
2152
- .obfx-wrapper .panel .panel-title {
2153
- font-size: 2rem;
2154
- }
2155
-
2156
- .obfx-wrapper .panel .panel-subtitle {
2157
- color: #50595E;
2158
- }
2159
-
2160
- .obfx-wrapper .empty {
2161
- padding: 4rem;
2162
- border-radius: 0.2rem;
2163
- color: #727e96;
2164
- background: #f8f9fa;
2165
- text-align: center;
2166
- }
2167
-
2168
- .obfx-wrapper .empty .empty-title,
2169
- .obfx-wrapper .empty .empty-subtitle {
2170
- margin: 1rem auto;
2171
- }
2172
-
2173
- .obfx-wrapper .empty .empty-subtitle {
2174
- color: #bbc1cd;
2175
- }
2176
-
2177
- .obfx-wrapper .empty .empty-action {
2178
- margin-top: 1.5rem;
2179
- }
2180
-
2181
- .obfx-wrapper .form-autocomplete {
2182
- position: relative;
2183
- }
2184
-
2185
- .obfx-wrapper .form-autocomplete .form-autocomplete-input {
2186
- display: -webkit-box;
2187
- display: flex;
2188
- display: -ms-flexbox;
2189
- display: -webkit-flex;
2190
- height: auto;
2191
- min-height: 3.2rem;
2192
- padding: 0.1rem 0 0 0.1rem;
2193
-
2194
- -webkit-align-content: flex-start;
2195
- align-content: flex-start;
2196
- -ms-flex-line-pack: start;
2197
- -webkit-flex-wrap: wrap;
2198
- -ms-flex-wrap: wrap;
2199
- flex-wrap: wrap;
2200
- }
2201
-
2202
- .obfx-wrapper .form-autocomplete .form-autocomplete-input.is-focused {
2203
- border-color: #5764c6;
2204
- box-shadow: 0 0 0 0.2rem rgba(87, 100, 198, 0.15);
2205
- }
2206
-
2207
- .obfx-wrapper .form-autocomplete .form-autocomplete-input .form-input {
2208
- display: inline-block;
2209
- width: auto;
2210
- height: 2.8rem;
2211
- padding: 0.3rem 0.8rem;
2212
- border-color: transparent;
2213
- box-shadow: none;
2214
-
2215
- -webkit-box-flex: 1;
2216
- -webkit-flex: 1 0 auto;
2217
- -ms-flex: 1 0 auto;
2218
- flex: 1 0 auto;
2219
- }
2220
-
2221
- .obfx-wrapper .form-autocomplete mark {
2222
- padding: 0.1em 0;
2223
- font-size: 1em;
2224
- }
2225
-
2226
- .obfx-wrapper .form-autocomplete .menu {
2227
- position: absolute;
2228
- top: 100%;
2229
- left: 0;
2230
- width: 100%;
2231
- }
2232
-
2233
- .obfx-wrapper .avatar {
2234
- display: inline-block;
2235
- position: relative;
2236
- width: 3.2rem;
2237
- height: 3.2rem;
2238
- margin: 0;
2239
- border-radius: 50%;
2240
- color: rgba(255, 255, 255, 0.85);
2241
- background: #5764c6;
2242
- font-size: 1.4rem;
2243
- font-weight: 300;
2244
- line-height: 1;
2245
- vertical-align: middle;
2246
- }
2247
-
2248
- .obfx-wrapper .avatar.avatar-xs {
2249
- width: 1.6rem;
2250
- height: 1.6rem;
2251
- font-size: 0.8rem;
2252
- }
2253
-
2254
- .obfx-wrapper .avatar.avatar-sm {
2255
- width: 2.4rem;
2256
- height: 2.4rem;
2257
- font-size: 1rem;
2258
- }
2259
-
2260
- .obfx-wrapper .avatar.avatar-lg {
2261
- width: 4.8rem;
2262
- height: 4.8rem;
2263
- font-size: 2rem;
2264
- }
2265
-
2266
- .obfx-wrapper .avatar.avatar-xl {
2267
- width: 6.4rem;
2268
- height: 6.4rem;
2269
- font-size: 2.6rem;
2270
- }
2271
-
2272
- .obfx-wrapper .avatar img {
2273
- position: relative;
2274
- z-index: 100;
2275
- width: 100%;
2276
- height: 100%;
2277
- border-radius: 50%;
2278
- }
2279
-
2280
- .obfx-wrapper .avatar .avatar-icon {
2281
- position: absolute;
2282
- right: 14.64%;
2283
- bottom: 14.64%;
2284
- width: 50%;
2285
- height: 50%;
2286
- padding: 0.2rem;
2287
- background: #fff;
2288
- -webkit-transform: translate(50%, 50%);
2289
- -ms-transform: translate(50%, 50%);
2290
- transform: translate(50%, 50%);
2291
- }
2292
-
2293
- .obfx-wrapper .avatar[data-initial]::before {
2294
- position: absolute;
2295
- z-index: 1;
2296
- top: 50%;
2297
- left: 50%;
2298
- color: currentColor;
2299
- content: attr(data-initial);
2300
- -webkit-transform: translate(-50%, -50%);
2301
- -ms-transform: translate(-50%, -50%);
2302
- transform: translate(-50%, -50%);
2303
- }
2304
-
2305
- .obfx-wrapper .badge {
2306
- position: relative;
2307
- white-space: nowrap;
2308
- }
2309
-
2310
- .obfx-wrapper .badge[data-badge]::after,
2311
- .obfx-wrapper .badge:not([data-badge])::after {
2312
- display: inline-block;
2313
- border-radius: 1rem;
2314
- color: #fff;
2315
- background: #5764c6;
2316
- background-clip: padding-box;
2317
- box-shadow: 0 0 0 0.2rem #fff;
2318
- content: attr(data-badge);
2319
- -webkit-transform: translate(-0.2rem, -1rem);
2320
- -ms-transform: translate(-0.2rem, -1rem);
2321
- transform: translate(-0.2rem, -1rem);
2322
- }
2323
-
2324
- .obfx-wrapper .badge[data-badge]::after {
2325
- min-width: 1.8rem;
2326
- height: 1.8rem;
2327
- padding: 0.3rem 0.5rem;
2328
- font-size: 1.2rem;
2329
- line-height: 1;
2330
- text-align: center;
2331
- white-space: nowrap;
2332
- }
2333
-
2334
- .obfx-wrapper .badge:not([data-badge])::after,
2335
- .obfx-wrapper .badge[data-badge=""]::after {
2336
- width: 0.6rem;
2337
- min-width: 0.6rem;
2338
- height: 0.6rem;
2339
- padding: 0;
2340
- }
2341
-
2342
- .obfx-wrapper .badge.btn::after {
2343
- position: absolute;
2344
- top: 0;
2345
- right: 0;
2346
- -webkit-transform: translate(50%, -50%);
2347
- -ms-transform: translate(50%, -50%);
2348
- transform: translate(50%, -50%);
2349
- }
2350
-
2351
- .obfx-wrapper .badge.avatar::after {
2352
- position: absolute;
2353
- z-index: 100;
2354
- top: 14.64%;
2355
- right: 14.64%;
2356
- -webkit-transform: translate(50%, -50%);
2357
- -ms-transform: translate(50%, -50%);
2358
- transform: translate(50%, -50%);
2359
- }
2360
-
2361
- .obfx-wrapper .badge.avatar-xs::after {
2362
- width: 0.8rem;
2363
- min-width: 0.8rem;
2364
- height: 0.8rem;
2365
- padding: 0;
2366
- content: "";
2367
- }
2368
-
2369
- .obfx-wrapper .bar {
2370
- display: -webkit-box;
2371
- display: flex;
2372
- display: -ms-flexbox;
2373
- display: -webkit-flex;
2374
- width: 100%;
2375
- height: 1.6rem;
2376
- border-radius: 0.2rem;
2377
- background: #f0f1f4;
2378
-
2379
- -webkit-flex-wrap: nowrap;
2380
- -ms-flex-wrap: nowrap;
2381
- flex-wrap: nowrap;
2382
- }
2383
-
2384
- .obfx-wrapper .bar.bar-sm {
2385
- height: 0.4rem;
2386
- }
2387
-
2388
- .obfx-wrapper .bar .bar-item {
2389
- display: block;
2390
- position: relative;
2391
- width: 0;
2392
- height: 100%;
2393
- padding: 0.2rem 0;
2394
- color: #fff;
2395
- background: #5764c6;
2396
- font-size: 1.2rem;
2397
- line-height: 1;
2398
- text-align: center;
2399
-
2400
- -ms-flex-negative: 0;
2401
- -webkit-flex-shrink: 0;
2402
- flex-shrink: 0;
2403
- }
2404
-
2405
- .obfx-wrapper .bar .bar-item:first-child {
2406
- border-top-left-radius: 0.2rem;
2407
- border-bottom-left-radius: 0.2rem;
2408
- }
2409
-
2410
- .obfx-wrapper .bar .bar-item:last-child {
2411
- border-top-right-radius: 0.2rem;
2412
- border-bottom-right-radius: 0.2rem;
2413
-
2414
- -ms-flex-negative: 1;
2415
- -webkit-flex-shrink: 1;
2416
- flex-shrink: 1;
2417
- }
2418
-
2419
- .obfx-wrapper .bar-slider {
2420
- position: relative;
2421
- height: 0.2rem;
2422
- margin: 1rem 0;
2423
- }
2424
-
2425
- .obfx-wrapper .bar-slider .bar-item {
2426
- position: absolute;
2427
- left: 0;
2428
- padding: 0;
2429
- }
2430
-
2431
- .obfx-wrapper .bar-slider .bar-item:not(:last-child):first-child {
2432
- z-index: 1;
2433
- background: #f0f1f4;
2434
- }
2435
-
2436
- .obfx-wrapper .bar-slider .bar-slider-btn {
2437
- position: absolute;
2438
- top: 50%;
2439
- right: 0;
2440
- width: 1.2rem;
2441
- height: 1.2rem;
2442
- padding: 0;
2443
- border: 0;
2444
- border-radius: 50%;
2445
- background: #5764c6;
2446
- -webkit-transform: translate(50%, -50%);
2447
- -ms-transform: translate(50%, -50%);
2448
- transform: translate(50%, -50%);
2449
- }
2450
-
2451
- .obfx-wrapper .bar-slider .bar-slider-btn:active {
2452
- box-shadow: 0 0 0 0.2rem #5764c6;
2453
- }
2454
-
2455
- .obfx-wrapper .card {
2456
- display: block;
2457
- border: 0.1rem solid #f0f1f4;
2458
- border-radius: 0.2rem;
2459
- background: #fff;
2460
- }
2461
-
2462
- .obfx-wrapper .card .card-header,
2463
- .obfx-wrapper .card .card-body,
2464
- .obfx-wrapper .card .card-footer {
2465
- padding: 1.5rem;
2466
- padding-bottom: 0;
2467
- }
2468
-
2469
- .obfx-wrapper .card .card-header:last-child,
2470
- .obfx-wrapper .card .card-body:last-child,
2471
- .obfx-wrapper .card .card-footer:last-child {
2472
- padding-bottom: 1.5rem;
2473
- }
2474
-
2475
- .obfx-wrapper .card .card-image {
2476
- padding-top: 1.5rem;
2477
- }
2478
-
2479
- .obfx-wrapper .card .card-image:first-child {
2480
- padding-top: 0;
2481
- }
2482
-
2483
- .obfx-wrapper .card .card-image:first-child img {
2484
- border-top-left-radius: 0.2rem;
2485
- border-top-right-radius: 0.2rem;
2486
- }
2487
-
2488
- .obfx-wrapper .card .card-image:last-child img {
2489
- border-bottom-right-radius: 0.2rem;
2490
- border-bottom-left-radius: 0.2rem;
2491
- }
2492
-
2493
- .obfx-wrapper .card .card-title {
2494
- font-size: 2rem;
2495
- }
2496
-
2497
- .obfx-wrapper .card .card-subtitle {
2498
- color: #bbc1cd;
2499
- font-size: 1.2rem;
2500
- }
2501
-
2502
- .obfx-wrapper .chip {
2503
- display: -ms-inline-flexbox;
2504
- display: -webkit-inline-box;
2505
- display: inline-flex;
2506
- display: -webkit-inline-flex;
2507
- max-width: 100%;
2508
- height: 2.8rem;
2509
- margin: 0 0.1rem 0.1rem 0;
2510
- padding: 0.1rem 0.8rem;
2511
- border-radius: 0.2rem;
2512
- color: #727e96;
2513
- background: #f0f1f4;
2514
- vertical-align: middle;
2515
- text-decoration: none;
2516
-
2517
- -webkit-align-items: center;
2518
- align-items: center;
2519
- -webkit-box-align: center;
2520
- -ms-flex-align: center;
2521
- }
2522
-
2523
- .obfx-wrapper .chip.active {
2524
- color: #fff;
2525
- background: #5764c6;
2526
- }
2527
-
2528
- .obfx-wrapper .chip .avatar {
2529
- margin-right: 0.4rem;
2530
- margin-left: -0.4rem;
2531
- }
2532
-
2533
- .obfx-wrapper .dropdown {
2534
- display: inline-block;
2535
- position: relative;
2536
- }
2537
-
2538
- .obfx-wrapper .dropdown .menu {
2539
- display: none;
2540
- position: absolute;
2541
- top: 100%;
2542
- left: 0;
2543
- -webkit-animation: slide-down 0.2s ease 1;
2544
- animation: slide-down 0.2s ease 1;
2545
- }
2546
-
2547
- .obfx-wrapper .dropdown.dropdown-right .menu {
2548
- right: 0;
2549
- left: auto;
2550
- }
2551
-
2552
- .obfx-wrapper .dropdown.active .menu,
2553
- .obfx-wrapper .dropdown .dropdown-toggle:focus + .menu,
2554
- .obfx-wrapper .dropdown .menu:hover {
2555
- display: block;
2556
- }
2557
-
2558
- .obfx-wrapper .dropdown .btn-group .dropdown-toggle:nth-last-child(2) {
2559
- border-top-right-radius: 0.2rem;
2560
- border-bottom-right-radius: 0.2rem;
2561
- }
2562
-
2563
- .obfx-wrapper .menu {
2564
- z-index: 100;
2565
- min-width: 18rem;
2566
- margin: 0;
2567
- padding: 1rem;
2568
- border-radius: 0.2rem;
2569
- background: #fff;
2570
- box-shadow: 0 0.1rem 0.4rem rgba(69, 77, 93, 0.3);
2571
- list-style: none;
2572
- -webkit-transform: translateY(0.5rem);
2573
- -ms-transform: translateY(0.5rem);
2574
- transform: translateY(0.5rem);
2575
- }
2576
-
2577
- .obfx-wrapper .menu .menu-item {
2578
- margin-top: 0;
2579
- padding: 0 0.8rem;
2580
- text-decoration: none;
2581
- -webkit-user-select: none;
2582
- -moz-user-select: none;
2583
- -ms-user-select: none;
2584
- user-select: none;
2585
- }
2586
-
2587
- .obfx-wrapper .menu .menu-item > a {
2588
- display: block;
2589
- margin: 0 -0.8rem;
2590
- padding: 0.6rem 0.8rem;
2591
- border-radius: 0.2rem;
2592
- color: inherit;
2593
- text-decoration: none;
2594
- }
2595
-
2596
- .obfx-wrapper .menu .menu-item > a:focus,
2597
- .obfx-wrapper .menu .menu-item > a:hover {
2598
- color: #5764c6;
2599
- }
2600
-
2601
- .obfx-wrapper .menu .menu-item > a:active,
2602
- .obfx-wrapper .menu .menu-item > a.active {
2603
- color: #5764c6;
2604
- background: #fbfbfe;
2605
- }
2606
-
2607
- .obfx-wrapper .menu .menu-badge {
2608
- float: right;
2609
- padding: 0.6rem 0;
2610
- }
2611
-
2612
- .obfx-wrapper .menu .menu-badge .btn {
2613
- margin-top: -0.2rem;
2614
- }
2615
-
2616
- .obfx-wrapper .modal {
2617
- display: none;
2618
- overflow: hidden;
2619
- position: fixed;
2620
- top: 0;
2621
- right: 0;
2622
- bottom: 0;
2623
- left: 0;
2624
- padding: 1rem;
2625
- opacity: 0;
2626
-
2627
- -webkit-align-items: center;
2628
- align-items: center;
2629
- -webkit-box-align: center;
2630
- -webkit-box-pack: center;
2631
- -ms-flex-align: center;
2632
- -ms-flex-pack: center;
2633
- -webkit-justify-content: center;
2634
- justify-content: center;
2635
- }
2636
-
2637
- .obfx-wrapper .modal:target,
2638
- .obfx-wrapper .modal.active {
2639
- display: -webkit-box;
2640
- display: flex;
2641
- display: -ms-flexbox;
2642
- display: -webkit-flex;
2643
- z-index: 400;
2644
- opacity: 1;
2645
- }
2646
-
2647
- .obfx-wrapper .modal:target .modal-overlay,
2648
- .obfx-wrapper .modal.active .modal-overlay {
2649
- display: block;
2650
- position: absolute;
2651
- top: 0;
2652
- right: 0;
2653
- bottom: 0;
2654
- left: 0;
2655
- background: rgba(69, 77, 93, 0.5);
2656
- cursor: default;
2657
- }
2658
-
2659
- .obfx-wrapper .modal:target .modal-container,
2660
- .obfx-wrapper .modal.active .modal-container {
2661
- z-index: 1;
2662
- max-width: 64rem;
2663
- -webkit-animation: slide-down 0.2s ease 1;
2664
- animation: slide-down 0.2s ease 1;
2665
- }
2666
-
2667
- .obfx-wrapper .modal.modal-sm .modal-container {
2668
- max-width: 32rem;
2669
- }
2670
-
2671
- .obfx-wrapper .modal-container {
2672
- display: block;
2673
- padding: 1rem 0.8rem;
2674
- border-radius: 0.2rem;
2675
- background: #fff;
2676
- box-shadow: 0 0.4rem 1rem rgba(69, 77, 93, 0.3);
2677
- text-align: left;
2678
- }
2679
-
2680
- .obfx-wrapper .modal-container .modal-header {
2681
- padding: 1.5rem;
2682
- }
2683
-
2684
- .obfx-wrapper .modal-container .modal-header .modal-title {
2685
- margin: 0;
2686
- font-size: 1.6rem;
2687
- }
2688
-
2689
- .obfx-wrapper .modal-container .modal-body {
2690
- overflow-y: auto;
2691
- position: relative;
2692
- max-height: 50vh;
2693
- padding: 1.5rem;
2694
- }
2695
-
2696
- .obfx-wrapper .modal-container .modal-footer {
2697
- padding: 1.5rem;
2698
- text-align: right;
2699
- }
2700
-
2701
- .obfx-wrapper .breadcrumb,
2702
- .obfx-wrapper .tab,
2703
- .obfx-wrapper .pagination,
2704
- .obfx-wrapper .nav {
2705
- margin: 0.5rem 0;
2706
- list-style: none;
2707
- }
2708
-
2709
- .obfx-wrapper .breadcrumb {
2710
- padding: 1.2rem;
2711
- }
2712
-
2713
- .obfx-wrapper .breadcrumb .breadcrumb-item {
2714
- display: inline-block;
2715
- margin: 0;
2716
- }
2717
-
2718
- .obfx-wrapper .breadcrumb .breadcrumb-item:last-child {
2719
- color: #acb3c2;
2720
- }
2721
-
2722
- .obfx-wrapper .breadcrumb .breadcrumb-item:not(:first-child)::before {
2723
- padding: 0 0.4rem;
2724
- color: #e7e9ed;
2725
- content: "/";
2726
- }
2727
-
2728
- .obfx-wrapper .tab {
2729
- display: -webkit-box;
2730
- display: flex;
2731
- display: -ms-flexbox;
2732
- display: -webkit-flex;
2733
-
2734
- -webkit-align-items: center;
2735
- align-items: center;
2736
- -webkit-box-align: center;
2737
- -ms-flex-align: center;
2738
- -webkit-flex-wrap: wrap;
2739
- -ms-flex-wrap: wrap;
2740
- flex-wrap: wrap;
2741
- }
2742
-
2743
- .obfx-wrapper .tab .tab-item {
2744
- margin-top: 0;
2745
- }
2746
-
2747
- .obfx-wrapper .tab .tab-item.tab-action {
2748
- text-align: right;
2749
-
2750
- -webkit-box-flex: 1;
2751
- -webkit-flex: 1 0 auto;
2752
- -ms-flex: 1 0 auto;
2753
- flex: 1 0 auto;
2754
- }
2755
-
2756
- .obfx-wrapper .tab .tab-item a {
2757
- display: block;
2758
- margin-top: 0;
2759
- padding: 0.6rem 1.2rem 0.4rem 1.2rem;
2760
- border-bottom: 0.2rem solid transparent;
2761
- color: inherit;
2762
- text-decoration: none;
2763
- }
2764
-
2765
- .obfx-wrapper .tab .tab-item a:focus,
2766
- .obfx-wrapper .tab .tab-item a:hover {
2767
- color: #5764c6;
2768
- }
2769
-
2770
- .obfx-wrapper .tab .tab-item.active a,
2771
- .obfx-wrapper .tab .tab-item a.active {
2772
- border-bottom-color: #5764c6;
2773
- color: #5764c6;
2774
- }
2775
-
2776
- .obfx-wrapper .tab.tab-block .tab-item {
2777
- text-align: center;
2778
-
2779
- -webkit-box-flex: 1;
2780
- -webkit-flex: 1 0 0;
2781
- -ms-flex: 1 0 0;
2782
- flex: 1 0 0;
2783
- }
2784
-
2785
- .obfx-wrapper .tab.tab-block .tab-item .badge[data-badge]::after {
2786
- position: absolute;
2787
- top: -0.4rem;
2788
- right: -0.4rem;
2789
- -webkit-transform: translate(0, 0);
2790
- -ms-transform: translate(0, 0);
2791
- transform: translate(0, 0);
2792
- }
2793
-
2794
- .obfx-wrapper .tab:not(.tab-block) .badge {
2795
- padding-right: 0.2rem;
2796
- }
2797
-
2798
- .obfx-wrapper .pagination {
2799
- display: -webkit-box;
2800
- display: flex;
2801
- display: -ms-flexbox;
2802
- display: -webkit-flex;
2803
- }
2804
-
2805
- .obfx-wrapper .pagination .page-item {
2806
- margin: 1rem 0.1rem;
2807
- }
2808
-
2809
- .obfx-wrapper .pagination .page-item span {
2810
- display: inline-block;
2811
- padding: 0.6rem 0.4rem;
2812
- }
2813
-
2814
- .obfx-wrapper .pagination .page-item a {
2815
- display: inline-block;
2816
- padding: 0.6rem 0.8rem;
2817
- border-radius: 0.2rem;
2818
- color: #727e96;
2819
- text-decoration: none;
2820
- }
2821
-
2822
- .obfx-wrapper .pagination .page-item a:focus,
2823
- .obfx-wrapper .pagination .page-item a:hover {
2824
- color: #5764c6;
2825
- }
2826
-
2827
- .obfx-wrapper .pagination .page-item a[disabled],
2828
- .obfx-wrapper .pagination .page-item a.disabled {
2829
- opacity: 0.5;
2830
- cursor: default;
2831
- pointer-events: none;
2832
- }
2833
-
2834
- .obfx-wrapper .pagination .page-item.active a {
2835
- color: #fff;
2836
- background: #5764c6;
2837
- }
2838
-
2839
- .obfx-wrapper .pagination .page-item.page-prev,
2840
- .obfx-wrapper .pagination .page-item.page-next {
2841
- -webkit-box-flex: 1;
2842
- -webkit-flex: 1 0 50%;
2843
- -ms-flex: 1 0 50%;
2844
- flex: 1 0 50%;
2845
- }
2846
-
2847
- .obfx-wrapper .pagination .page-item.page-next {
2848
- text-align: right;
2849
- }
2850
-
2851
- .obfx-wrapper .pagination .page-item .page-item-title {
2852
- margin: 0;
2853
- }
2854
-
2855
- .obfx-wrapper .pagination .page-item .page-item-subtitle {
2856
- margin: 0;
2857
- opacity: 0.5;
2858
- }
2859
-
2860
- .obfx-wrapper .nav {
2861
- display: -webkit-box;
2862
- display: flex;
2863
- display: -ms-flexbox;
2864
- display: -webkit-flex;
2865
- flex-direction: column;
2866
-
2867
- -webkit-box-direction: normal;
2868
- -webkit-box-orient: vertical;
2869
- -webkit-flex-direction: column;
2870
- -ms-flex-direction: column;
2871
- }
2872
-
2873
- .obfx-wrapper .nav .nav-item a {
2874
- padding: 0.6rem 0.8rem;
2875
- color: #727e96;
2876
- text-decoration: none;
2877
- }
2878
-
2879
- .obfx-wrapper .nav .nav-item a:focus,
2880
- .obfx-wrapper .nav .nav-item a:hover {
2881
- color: #5764c6;
2882
- }
2883
-
2884
- .obfx-wrapper .nav .nav-item.active > a {
2885
- font-weight: bold;
2886
- }
2887
-
2888
- .obfx-wrapper .nav .nav-item.active > a:focus,
2889
- .obfx-wrapper .nav .nav-item.active > a:hover {
2890
- color: #5764c6;
2891
- }
2892
-
2893
- .obfx-wrapper .nav .nav {
2894
- margin-bottom: 1rem;
2895
- margin-left: 2rem;
2896
- }
2897
-
2898
- .obfx-wrapper .nav .nav a {
2899
- color: #acb3c2;
2900
- }
2901
-
2902
- .obfx-wrapper .popover {
2903
- display: inline-block;
2904
- position: relative;
2905
- }
2906
-
2907
- .obfx-wrapper .popover .popover-container {
2908
- position: absolute;
2909
- z-index: 400;
2910
- top: 0;
2911
- left: 50%;
2912
- width: 32rem;
2913
- padding: 1rem;
2914
- opacity: 0;
2915
- content: attr(data-tooltip);
2916
- -webkit-transition: -webkit-transform 0.2s ease;
2917
- transition: transform 0.2s ease, -webkit-transform 0.2s ease;
2918
- transition: transform 0.2s ease;
2919
- transition: -webkit-transform 0.2s ease;
2920
- -webkit-transform: translate(-50%, -50%) scale(0);
2921
- -ms-transform: translate(-50%, -50%) scale(0);
2922
- transform: translate(-50%, -50%) scale(0);
2923
- }
2924
-
2925
- .obfx-wrapper .popover :focus + .popover-container,
2926
- .obfx-wrapper .popover:hover .popover-container,
2927
- .obfx-wrapper .popover .popover-container:hover {
2928
- display: block;
2929
- opacity: 1;
2930
- -webkit-transform: translate(-50%, -100%) scale(1);
2931
- -ms-transform: translate(-50%, -100%) scale(1);
2932
- transform: translate(-50%, -100%) scale(1);
2933
- }
2934
-
2935
- .obfx-wrapper .popover.popover-right .popover-container {
2936
- top: 50%;
2937
- left: 100%;
2938
- }
2939
-
2940
- .obfx-wrapper .popover.popover-right :focus + .popover-container,
2941
- .obfx-wrapper .popover.popover-right:hover .popover-container,
2942
- .obfx-wrapper .popover.popover-right .popover-container:hover {
2943
- -webkit-transform: translate(0, -50%) scale(1);
2944
- -ms-transform: translate(0, -50%) scale(1);
2945
- transform: translate(0, -50%) scale(1);
2946
- }
2947
-
2948
- .obfx-wrapper .popover.popover-bottom .popover-container {
2949
- top: 100%;
2950
- left: 50%;
2951
- }
2952
-
2953
- .obfx-wrapper .popover.popover-bottom :focus + .popover-container,
2954
- .obfx-wrapper .popover.popover-bottom:hover .popover-container,
2955
- .obfx-wrapper .popover.popover-bottom .popover-container:hover {
2956
- -webkit-transform: translate(-50%, 0) scale(1);
2957
- -ms-transform: translate(-50%, 0) scale(1);
2958
- transform: translate(-50%, 0) scale(1);
2959
- }
2960
-
2961
- .obfx-wrapper .popover.popover-left .popover-container {
2962
- top: 50%;
2963
- left: 0;
2964
- }
2965
-
2966
- .obfx-wrapper .popover.popover-left :focus + .popover-container,
2967
- .obfx-wrapper .popover.popover-left:hover .popover-container,
2968
- .obfx-wrapper .popover.popover-left .popover-container:hover {
2969
- -webkit-transform: translate(-100%, -50%) scale(1);
2970
- -ms-transform: translate(-100%, -50%) scale(1);
2971
- transform: translate(-100%, -50%) scale(1);
2972
- }
2973
-
2974
- .obfx-wrapper .popover .card {
2975
- border: 0;
2976
- box-shadow: 0 0.4rem 1rem rgba(69, 77, 93, 0.3);
2977
- }
2978
-
2979
- .obfx-wrapper .step {
2980
- display: -webkit-box;
2981
- display: flex;
2982
- display: -ms-flexbox;
2983
- display: -webkit-flex;
2984
- width: 100%;
2985
- margin: 0.5rem 0;
2986
- list-style: none;
2987
-
2988
- -webkit-flex-wrap: nowrap;
2989
- -ms-flex-wrap: nowrap;
2990
- flex-wrap: nowrap;
2991
- }
2992
-
2993
- .obfx-wrapper .step .step-item {
2994
- position: relative;
2995
- min-height: 2rem;
2996
- margin-top: 0;
2997
- text-align: center;
2998
-
2999
- -webkit-box-flex: 1;
3000
- -webkit-flex: 1 1 0;
3001
- -ms-flex: 1 1 0;
3002
- flex: 1 1 0;
3003
- }
3004
-
3005
- .obfx-wrapper .step .step-item:not(:first-child)::before {
3006
- position: absolute;
3007
- top: 0.9rem;
3008
- left: -50%;
3009
- width: 100%;
3010
- height: 0.2rem;
3011
- background: #5764c6;
3012
- content: "";
3013
- }
3014
-
3015
- .obfx-wrapper .step .step-item a {
3016
- display: inline-block;
3017
- padding: 2rem 1rem 0;
3018
- color: #acb3c2;
3019
- text-decoration: none;
3020
- }
3021
-
3022
- .obfx-wrapper .step .step-item a::before {
3023
- display: block;
3024
- position: absolute;
3025
- z-index: 1;
3026
- top: 0.4rem;
3027
- left: 50%;
3028
- width: 1.2rem;
3029
- height: 1.2rem;
3030
- border: 0.2rem solid #fff;
3031
- border-radius: 50%;
3032
- background: #5764c6;
3033
- content: "";
3034
- -webkit-transform: translateX(-50%);
3035
- -ms-transform: translateX(-50%);
3036
- transform: translateX(-50%);
3037
- }
3038
-
3039
- .obfx-wrapper .step .step-item.active a::before {
3040
- border: 0.2rem solid #5764c6;
3041
- background: #fff;
3042
- }
3043
-
3044
- .obfx-wrapper .step .step-item.active ~ .step-item::before {
3045
- background: #f0f1f4;
3046
- }
3047
-
3048
- .obfx-wrapper .step .step-item.active ~ .step-item a::before {
3049
- background: #e7e9ed;
3050
- }
3051
-
3052
- .obfx-wrapper .tile {
3053
- display: -webkit-box;
3054
- display: flex;
3055
- display: -ms-flexbox;
3056
- display: -webkit-flex;
3057
- position: relative;
3058
- -webkit-align-content: space-between;
3059
- align-content: space-between;
3060
- -webkit-align-items: center;
3061
- align-items: center;
3062
- -webkit-box-align: start;
3063
- -ms-flex-align: start;
3064
- -ms-flex-line-pack: justify;
3065
- }
3066
-
3067
- .obfx-wrapper .tile .tile-icon .dashicons{
3068
- line-height: 20px;
3069
- }
3070
- .obfx-wrapper .tile .tile-icon,
3071
- .obfx-wrapper .tile .tile-action {
3072
- -webkit-box-flex: 0;
3073
- -webkit-flex: 0 0 auto;
3074
- -ms-flex: 0 0 auto;
3075
- flex: 0 0 auto;
3076
- }
3077
-
3078
- .obfx-wrapper .tile .dashicons {
3079
- transition: none;
3080
- line-height: 1;
3081
- }
3082
-
3083
- .obfx-wrapper .tile .tile-content {
3084
- -webkit-box-flex: 1;
3085
- -webkit-flex: 1 1 auto;
3086
- -ms-flex: 1 1 auto;
3087
- flex: 1 1 auto;
3088
- }
3089
-
3090
- .obfx-wrapper .tile .tile-content:not(:first-child) {
3091
- padding-left: 1rem;
3092
- }
3093
-
3094
- .obfx-wrapper .tile .tile-content:not(:last-child) {
3095
- padding-right: 1rem;
3096
- }
3097
-
3098
- .obfx-wrapper .tile .tile-title {
3099
- line-height: 2rem;
3100
- color: #3B49AF;
3101
- font-size: 1.3em;
3102
- font-weight: 600;
3103
- }
3104
-
3105
- .obfx-wrapper .tile .tile-subtitle {
3106
- color: #bbc1cd;
3107
- line-height: 2rem;
3108
- color: #50595E;
3109
- font-size: 14px;
3110
- }
3111
-
3112
- .obfx-wrapper .tile .notice {
3113
- display: inline-block;
3114
- }
3115
-
3116
- .obfx-wrapper .tile.tile-centered {
3117
- -webkit-align-items: center;
3118
- align-items: center;
3119
- -webkit-box-align: center;
3120
- -ms-flex-align: center;
3121
- }
3122
-
3123
- .obfx-wrapper .tile.tile-centered .tile-content {
3124
- overflow: hidden;
3125
- }
3126
-
3127
- .obfx-wrapper .tile.tile-centered .tile-title,
3128
- .obfx-wrapper .tile.tile-centered .tile-subtitle {
3129
- overflow: hidden;
3130
- margin-bottom: 0;
3131
- white-space: nowrap;
3132
- text-overflow: ellipsis;
3133
- }
3134
-
3135
- .obfx-wrapper .toast {
3136
- display: block;
3137
- width: 100%;
3138
- padding: 1rem;
3139
- border: 0.1rem solid #454d5d;
3140
- border-color: #454d5d;
3141
- border-radius: 0.2rem;
3142
- color: #fff;
3143
- background: rgba(69, 77, 93, 0.9);
3144
- }
3145
-
3146
- .obfx-wrapper .toast.toast-primary {
3147
- border-color: #5764c6;
3148
- background: rgba(87, 100, 198, 0.9);
3149
- }
3150
-
3151
- .obfx-wrapper .toast.toast-success {
3152
- border-color: #32b643;
3153
- background: rgba(50, 182, 67, 0.9);
3154
- }
3155
-
3156
- .obfx-wrapper .toast.toast-warning {
3157
- border-color: #ffb700;
3158
- background: rgba(255, 183, 0, 0.9);
3159
- }
3160
-
3161
- .obfx-wrapper .toast.toast-error {
3162
- border-color: #e85600;
3163
- background: rgba(232, 86, 0, 0.9);
3164
- }
3165
-
3166
- .obfx-wrapper .toast a {
3167
- color: #fff;
3168
- text-decoration: underline;
3169
- }
3170
-
3171
- .obfx-wrapper .toast a:focus,
3172
- .obfx-wrapper .toast a:hover,
3173
- .obfx-wrapper .toast a:active,
3174
- .obfx-wrapper .toast a.active {
3175
- opacity: 0.75;
3176
- }
3177
-
3178
- .obfx-wrapper .tooltip {
3179
- position: relative;
3180
- }
3181
-
3182
- .obfx-wrapper .tooltip::after {
3183
- display: block;
3184
- overflow: hidden;
3185
- position: absolute;
3186
- z-index: 200;
3187
- bottom: 100%;
3188
- left: 50%;
3189
- max-width: 32rem;
3190
- padding: 0.4rem 0.8rem;
3191
- border-radius: 0.2rem;
3192
- opacity: 0;
3193
- color: #fff;
3194
- background: rgba(69, 77, 93, 0.9);
3195
- font-size: 1.2rem;
3196
- white-space: nowrap;
3197
- text-overflow: ellipsis;
3198
- content: attr(data-tooltip);
3199
- -webkit-transition: all 0.2s ease;
3200
- transition: all 0.2s ease;
3201
- -webkit-transform: translate(-50%, 1rem);
3202
- -ms-transform: translate(-50%, 1rem);
3203
- transform: translate(-50%, 1rem);
3204
- pointer-events: none;
3205
- }
3206
-
3207
- .obfx-wrapper .tooltip:focus::after,
3208
- .obfx-wrapper .tooltip:hover::after {
3209
- opacity: 1;
3210
- -webkit-transform: translate(-50%, -0.5rem);
3211
- -ms-transform: translate(-50%, -0.5rem);
3212
- transform: translate(-50%, -0.5rem);
3213
- }
3214
-
3215
- .obfx-wrapper .tooltip[disabled],
3216
- .obfx-wrapper .tooltip.disabled {
3217
- pointer-events: auto;
3218
- }
3219
-
3220
- .obfx-wrapper .tooltip.tooltip-right::after {
3221
- bottom: 50%;
3222
- left: 100%;
3223
- -webkit-transform: translate(-1rem, 50%);
3224
- -ms-transform: translate(-1rem, 50%);
3225
- transform: translate(-1rem, 50%);
3226
- }
3227
-
3228
- .obfx-wrapper .tooltip.tooltip-right:focus::after,
3229
- .obfx-wrapper .tooltip.tooltip-right:hover::after {
3230
- -webkit-transform: translate(0.5rem, 50%);
3231
- -ms-transform: translate(0.5rem, 50%);
3232
- transform: translate(0.5rem, 50%);
3233
- }
3234
-
3235
- .obfx-wrapper .tooltip.tooltip-bottom::after {
3236
- top: 100%;
3237
- bottom: auto;
3238
- -webkit-transform: translate(-50%, -1rem);
3239
- -ms-transform: translate(-50%, -1rem);
3240
- transform: translate(-50%, -1rem);
3241
- }
3242
-
3243
- .obfx-wrapper .tooltip.tooltip-bottom:focus::after,
3244
- .obfx-wrapper .tooltip.tooltip-bottom:hover::after {
3245
- -webkit-transform: translate(-50%, 0.5rem);
3246
- -ms-transform: translate(-50%, 0.5rem);
3247
- transform: translate(-50%, 0.5rem);
3248
- }
3249
-
3250
- .obfx-wrapper .tooltip.tooltip-left::after {
3251
- right: 100%;
3252
- bottom: 50%;
3253
- left: auto;
3254
- -webkit-transform: translate(1rem, 50%);
3255
- -ms-transform: translate(1rem, 50%);
3256
- transform: translate(1rem, 50%);
3257
- }
3258
-
3259
- .obfx-wrapper .tooltip.tooltip-left:focus::after,
3260
- .obfx-wrapper .tooltip.tooltip-left:hover::after {
3261
- -webkit-transform: translate(-0.5rem, 50%);
3262
- -ms-transform: translate(-0.5rem, 50%);
3263
- transform: translate(-0.5rem, 50%);
3264
- }
3265
-
3266
- @-webkit-keyframes loading {
3267
- 0% {
3268
- -webkit-transform: rotate(0deg);
3269
- transform: rotate(0deg);
3270
- }
3271
-
3272
- 100% {
3273
- -webkit-transform: rotate(360deg);
3274
- transform: rotate(360deg);
3275
- }
3276
- }
3277
-
3278
- @keyframes loading {
3279
- 0% {
3280
- -webkit-transform: rotate(0deg);
3281
- transform: rotate(0deg);
3282
- }
3283
-
3284
- 100% {
3285
- -webkit-transform: rotate(360deg);
3286
- transform: rotate(360deg);
3287
- }
3288
- }
3289
-
3290
- @-webkit-keyframes slide-down {
3291
- 0% {
3292
- opacity: 0;
3293
- -webkit-transform: translateY(-3rem);
3294
- transform: translateY(-3rem);
3295
- }
3296
-
3297
- 100% {
3298
- opacity: 1;
3299
- -webkit-transform: translateY(0);
3300
- transform: translateY(0);
3301
- }
3302
- }
3303
-
3304
- @keyframes slide-down {
3305
- 0% {
3306
- opacity: 0;
3307
- -webkit-transform: translateY(-3rem);
3308
- transform: translateY(-3rem);
3309
- }
3310
-
3311
- 100% {
3312
- opacity: 1;
3313
- -webkit-transform: translateY(0);
3314
- transform: translateY(0);
3315
- }
3316
- }
3317
-
3318
- .obfx-wrapper .divider,
3319
- .obfx-wrapper .divider-vert {
3320
- display: block;
3321
- position: relative;
3322
- }
3323
-
3324
- .obfx-wrapper .divider[data-content]::after,
3325
- .obfx-wrapper .divider-vert[data-content]::after {
3326
- display: inline-block;
3327
- padding: 0 0.8rem;
3328
- color: #e7e9ed;
3329
- background: #fff;
3330
- font-size: 1.2rem;
3331
- content: attr(data-content);
3332
- -webkit-transform: translateY(-1.1rem);
3333
- -ms-transform: translateY(-1.1rem);
3334
- transform: translateY(-1.1rem);
3335
- }
3336
-
3337
- .obfx-wrapper .divider {
3338
- height: 0.1rem;
3339
- margin: 1rem 0;
3340
- border-top: 0.1rem solid #f0f1f4;
3341
- }
3342
-
3343
- .obfx-wrapper .divider-vert {
3344
- display: block;
3345
- padding: 1rem;
3346
- }
3347
-
3348
- .obfx-wrapper .divider-vert::before {
3349
- display: block;
3350
- position: absolute;
3351
- top: 1rem;
3352
- bottom: 1rem;
3353
- left: 50%;
3354
- border-left: 0.1rem solid #f0f1f4;
3355
- content: "";
3356
- -webkit-transform: translateX(-50%);
3357
- -ms-transform: translateX(-50%);
3358
- transform: translateX(-50%);
3359
- }
3360
-
3361
- .obfx-wrapper .divider-vert[data-content]::after {
3362
- position: absolute;
3363
- top: 50%;
3364
- left: 50%;
3365
- padding: 0.4rem 0;
3366
- -webkit-transform: translate(-50%, -50%);
3367
- -ms-transform: translate(-50%, -50%);
3368
- transform: translate(-50%, -50%);
3369
- }
3370
-
3371
- .obfx-wrapper .loading {
3372
- position: relative;
3373
- min-height: 1.6rem;
3374
- color: transparent !important;
3375
- pointer-events: none;
3376
- }
3377
-
3378
- .obfx-wrapper .loading::after {
3379
- display: block;
3380
- position: absolute;
3381
- z-index: 1;
3382
- top: 50%;
3383
- left: 50%;
3384
- width: 1.6rem;
3385
- height: 1.6rem;
3386
- margin-top: -0.8rem;
3387
- margin-left: -0.8rem;
3388
- border: 0.2rem solid #5764c6;
3389
- border-top-color: transparent;
3390
- border-right-color: transparent;
3391
- border-radius: 0.8rem;
3392
- content: "";
3393
- -webkit-animation: loading 500ms infinite linear;
3394
- animation: loading 500ms infinite linear;
3395
- }
3396
-
3397
- .obfx-wrapper .form-switch.activated span.inactive,
3398
- .obfx-wrapper .form-switch i.dashicons.dashicons-yes {
3399
- display: none;
3400
- }
3401
-
3402
- .obfx-wrapper .form-switch.activated i.dashicons.dashicons-yes {
3403
- display: block;
3404
- color: #2faa3f;
3405
- }
3406
-
3407
- .obfx-wrapper .clearfix::after,
3408
- .obfx-wrapper .container::after {
3409
- display: table;
3410
- clear: both;
3411
- content: "";
3412
- }
3413
-
3414
- .obfx-wrapper .float-left {
3415
- float: left !important;
3416
- }
3417
-
3418
- .obfx-wrapper .float-right {
3419
- float: right !important;
3420
- }
3421
-
3422
- .obfx-wrapper .rel {
3423
- position: relative;
3424
- }
3425
-
3426
- .obfx-wrapper .abs {
3427
- position: absolute;
3428
- }
3429
-
3430
- .obfx-wrapper .fixed {
3431
- position: fixed;
3432
- }
3433
-
3434
- .obfx-wrapper .centered {
3435
- display: block;
3436
- float: none;
3437
- margin-right: auto;
3438
- margin-left: auto;
3439
- }
3440
-
3441
- .obfx-wrapper .mt-10 {
3442
- margin-top: 1rem;
3443
- }
3444
-
3445
- .obfx-wrapper .mr-10 {
3446
- margin-right: 1rem;
3447
- }
3448
-
3449
- .obfx-wrapper .mb-10 {
3450
- margin-bottom: 1rem;
3451
- }
3452
-
3453
- .obfx-wrapper .ml-10 {
3454
- margin-left: 1rem;
3455
- }
3456
-
3457
- .obfx-wrapper .mt-5 {
3458
- margin-top: 0.5rem;
3459
- }
3460
-
3461
- .obfx-wrapper .mr-5 {
3462
- margin-right: 0.5rem;
3463
- }
3464
-
3465
- .obfx-wrapper .mb-5 {
3466
- margin-bottom: 0.5rem;
3467
- }
3468
-
3469
- .obfx-wrapper .ml-5 {
3470
- margin-left: 0.5rem;
3471
- }
3472
-
3473
- .obfx-wrapper .pt-10 {
3474
- padding-top: 1rem;
3475
- }
3476
-
3477
- .obfx-wrapper .pr-10 {
3478
- padding-right: 1rem;
3479
- }
3480
-
3481
- .obfx-wrapper .pb-10 {
3482
- padding-bottom: 1rem;
3483
- }
3484
-
3485
- .obfx-wrapper .pl-10 {
3486
- padding-left: 1rem;
3487
- }
3488
-
3489
- .obfx-wrapper .pt-5 {
3490
- padding-top: 0.5rem;
3491
- }
3492
-
3493
- .obfx-wrapper .pr-5 {
3494
- padding-right: 0.5rem;
3495
- }
3496
-
3497
- .obfx-wrapper .pb-5 {
3498
- padding-bottom: 0.5rem;
3499
- }
3500
-
3501
- .obfx-wrapper .pl-5 {
3502
- padding-left: 0.5rem;
3503
- }
3504
-
3505
- .obfx-wrapper .block {
3506
- display: block;
3507
- }
3508
-
3509
- .obfx-wrapper .inline {
3510
- display: inline;
3511
- }
3512
-
3513
- .obfx-wrapper .inline-block {
3514
- display: inline-block;
3515
- }
3516
-
3517
- .obfx-wrapper .flex {
3518
- display: -webkit-box;
3519
- display: flex;
3520
- display: -ms-flexbox;
3521
- display: -webkit-flex;
3522
- }
3523
-
3524
- .obfx-wrapper .inline-flex {
3525
- display: -webkit-inline-box;
3526
- display: inline-flex;
3527
- display: -ms-inline-flexbox;
3528
- display: -webkit-inline-flex;
3529
- }
3530
-
3531
- .obfx-wrapper .hide {
3532
- display: none !important;
3533
- }
3534
-
3535
- .obfx-wrapper .visible {
3536
- visibility: visible;
3537
- }
3538
-
3539
- .obfx-wrapper .invisible {
3540
- visibility: hidden;
3541
- }
3542
-
3543
- .obfx-wrapper .text-hide {
3544
- border: 0;
3545
- color: transparent;
3546
- background: transparent;
3547
- text-shadow: none;
3548
- font-size: 0;
3549
- line-height: 0;
3550
- }
3551
-
3552
- .obfx-wrapper .text-assistive {
3553
- overflow: hidden;
3554
- clip: rect(0, 0, 0, 0);
3555
- position: absolute;
3556
- width: 0.1rem;
3557
- height: 0.1rem;
3558
- margin: -0.1rem;
3559
- padding: 0;
3560
- border: 0;
3561
- }
3562
-
3563
- .obfx-wrapper .text-left {
3564
- text-align: left;
3565
- }
3566
-
3567
- .obfx-wrapper .text-right {
3568
- text-align: right;
3569
- }
3570
-
3571
- .obfx-wrapper .text-center {
3572
- text-align: center;
3573
- }
3574
-
3575
- .obfx-wrapper .text-justify {
3576
- text-align: justify;
3577
- }
3578
-
3579
- .obfx-wrapper .text-lowercase {
3580
- text-transform: lowercase;
3581
- }
3582
-
3583
- .obfx-wrapper .text-uppercase {
3584
- text-transform: uppercase;
3585
- }
3586
-
3587
- .obfx-wrapper .text-capitalize {
3588
- text-transform: capitalize;
3589
- }
3590
-
3591
- .obfx-wrapper .text-normal {
3592
- font-weight: normal;
3593
- }
3594
-
3595
- .obfx-wrapper .text-bold {
3596
- font-weight: bold;
3597
- }
3598
-
3599
- .obfx-wrapper .text-italic {
3600
- font-style: italic;
3601
- }
3602
-
3603
- .obfx-wrapper .text-large {
3604
- font-size: 1.2em;
3605
- }
3606
-
3607
- .obfx-wrapper .text-ellipsis {
3608
- overflow: hidden;
3609
- white-space: nowrap;
3610
- text-overflow: ellipsis;
3611
- }
3612
-
3613
- .obfx-wrapper .text-clip {
3614
- overflow: hidden;
3615
- white-space: nowrap;
3616
- text-overflow: clip;
3617
- }
3618
-
3619
- .obfx-wrapper .text-break {
3620
- word-wrap: break-word;
3621
- word-break: break-word;
3622
- -webkit-hyphens: auto;
3623
- hyphens: auto;
3624
-
3625
- -ms-hyphens: auto;
3626
- }
3627
-
3628
- .obfx-wrapper .hand {
3629
- cursor: pointer;
3630
- }
3631
-
3632
- .obfx-wrapper .shadow-0 {
3633
- box-shadow: 0 0 0.2rem rgba(69, 77, 93, 0.3);
3634
- }
3635
-
3636
- .obfx-wrapper .shadow-1 {
3637
- box-shadow: 0 0.1rem 0.4rem rgba(69, 77, 93, 0.3);
3638
- }
3639
-
3640
- .obfx-wrapper .shadow-2 {
3641
- box-shadow: 0 0.2rem 0.6rem rgba(69, 77, 93, 0.3);
3642
- }
3643
-
3644
- .obfx-wrapper .shadow-3 {
3645
- box-shadow: 0 0.3rem 0.8rem rgba(69, 77, 93, 0.3);
3646
- }
3647
-
3648
- .obfx-wrapper .shadow-4 {
3649
- box-shadow: 0 0.4rem 1rem rgba(69, 77, 93, 0.3);
3650
- }
3651
-
3652
- .obfx-wrapper .rounded {
3653
- border-radius: 0.2rem;
3654
- }
3655
-
3656
- .obfx-wrapper .circle {
3657
- border-radius: 50%;
3658
- }
3659
-
3660
- .obfx-wrapper .panel .btn-expand.active {
3661
- -webkit-transition: transform 0.5s ease;
3662
- -webkit-transition: -webkit-transform 0.5s ease;
3663
- transition: -webkit-transform 0.5s ease;
3664
- transition: transform 0.5s ease;
3665
- transition: transform 0.5s ease, -webkit-transform 0.5s ease;
3666
- -webkit-transform: rotate(180deg);
3667
- -ms-transform: rotate(180deg);
3668
- transform: rotate(180deg);
3669
- }
3670
-
3671
- .obfx-wrapper .panel.options .obfx-module-form.active {
3672
- display: block;
3673
- }
3674
-
3675
- .obfx-wrapper .panel.options .obfx-module-form {
3676
- display: none;
3677
- }
3678
-
3679
- .obfx-wrapper .panel.options.active {
3680
- max-height: 3000px;
3681
- }
3682
-
3683
- .obfx-wrapper .panel.options {
3684
- overflow: hidden;
3685
- max-height: 90px;
3686
- -webkit-transition: max-height 0.3s ease-out;
3687
- transition: max-height 0.3s ease-out;
3688
- }
3689
-
3690
- /** TEMPORARY FIX FOR SOCIAL SHARING STYLE **/
3691
-
3692
- #obfx-mod-social-sharing .form-group.inline-setting {
3693
- display: inline-block;
3694
- }
3695
-
3696
- #obfx-mod-social-sharing .form-group.inline-setting.network-toggle {
3697
- min-width: 300px;
3698
- }
3699
-
3700
- #obfx-mod-social-sharing .form-group.inline-setting.last .form-label {
3701
- display: none;
3702
- }
3703
-
3704
- #obfx-mod-social-sharing .show {
3705
- opacity: 1;
3706
- -webkit-transition: all 0.3s ease;
3707
- transition: all 0.3s ease;
3708
- }
3709
-
3710
- #obfx-mod-social-sharing .show.obfxHiddenOption {
3711
- opacity: 0;
3712
- cursor: default;
3713
- }
3714
-
3715
- .obfx-row {
3716
- margin-bottom: 10px;
3717
- border-bottom: 1px solid #eee;
3718
- }
3719
-
3720
- .obfx-google {
3721
- overflow: hidden;
3722
- position: relative;
3723
- top: -2px;
3724
- width: 16px;
3725
- max-width: 20px;
3726
- margin-right: 5px;
3727
- font-size: 25px;
3728
- }
3729
-
3730
- @media ( max-width: 600px ) {
3731
- #obfx-mod-social-sharing .obfx-row .form-label {
3732
- margin-bottom: 20px;
3733
- font-weight: 600;
3734
- }
3735
-
3736
- #obfx-mod-social-sharing .obfx-row .show .form-label {
3737
- display: none;
3738
- }
3739
-
3740
- #obfx-mod-social-sharing .form-group.inline-setting.network-toggle {
3741
- display: block;
3742
- }
3743
-
3744
- .obfx-row {
3745
- padding: 10px 0;
3746
- }
3747
- }
3748
-
3749
- .obfx-wrapper p.obfx-beta-module {
3750
- color: #ca4a1f;
3751
- font-size: 80%;
3752
- line-height: 1.8rem;
3753
- text-align: center;
3754
- }
3755
- a.obfx-no-link:hover,
3756
- a.obfx-no-link{
3757
- color:#bbc1cd;
3758
- }
3759
- .obfx-tryout-message{
3760
- right: -15px;
3761
- font-size: 90%;
3762
- top: -9px;
3763
- position: absolute;
3764
- background: #5764c6;
3765
- padding: 5px;
3766
- border-bottom-left-radius: 10px;
3767
- }
3768
- .obfx-tile-image-cdn .tile-action{
3769
- margin-top: 35px;
3770
- }
3771
- .obfx-tryout-message a:hover,
3772
- .obfx-tryout-message a{
3773
- color: #fff;
3774
- text-decoration: none;
3775
- }
3776
- .obfx-title-new{
3777
- color:#2faa3f;
3778
- font-weight: bold;
3779
- }
3780
- .obfx-title-deprecated{
3781
- color:#ca4a1f;
3782
- font-weight: bold;
3783
- }
3784
- #obfx-mod-image-cdn sup.obfx-title-deprecated{
3785
- font-size:50%;
3786
- }
3787
- .obfx-img-logout {
3788
- position: relative;
3789
- top: -15px;
3790
- }
3791
-
3792
- #obfx-register-service {
3793
- position: absolute;
3794
- left: 270px;
3795
- }
3796
-
3797
- .obfx-loggedin-show {
3798
- display: none;
3799
- }
3800
-
3801
- .obfx-img-logged-in.obfx-loggedin-hide {
3802
- display: none;
3803
- }
3804
-
3805
- .obfx-img-logged-in.obfx-loggedin-show {
3806
- display: block;
3807
- }
3808
-
3809
- .obfx-img-cdn-replacer-switch {
3810
- width: 70%;
3811
- }
3812
-
3813
- .obfx-sf-feedback-notice {
3814
- width: 100%;
3815
- margin-bottom: 10px;
3816
- text-align: center;
3817
- }
3818
-
3819
- .obfx-full-page-container{
3820
- display: flex;
3821
- width: 100%;
3822
- }
3823
- #obfx-modules-wrapper{
3824
- flex:1;
3825
- }
3826
- .obfx-sidebar.obfx-wrapper .panel .panel-header{
3827
- padding:3px;
3828
- }
3829
- .obfx-sidebar{
3830
- padding:7px;
3831
- width: 250px;
3832
- }
3833
- .obfx-wrapper .panel .panel-title{
3834
- text-align: left;
3835
- }
3836
- ul.obfx-menu-tabs{
3837
- border-bottom: 1px solid #f0f1f4;
3838
- padding-left: 0;
3839
- margin-left: 0;
3840
- }
3841
-
3842
-
3843
- .obfx-menu-tabs li:hover a,
3844
- .obfx-menu-tabs li.obfx-tab-active a{
3845
-
3846
- color: #f0f1f4;
3847
- text-decoration: none;
3848
- transition: all 0.2 ease;
3849
- }
3850
- .obfx-menu-tabs li:hover,
3851
- .obfx-menu-tabs li.obfx-tab-active {
3852
-
3853
- background: #5764c6;
3854
- color: #f0f1f4;
3855
- border-top-left-radius: 5px;
3856
- border-top-right-radius: 5px;
3857
- }
3858
-
3859
- .obfx-menu-tabs li:last-child{
3860
- border:none;
3861
- }
3862
- .obfx-menu-tabs li a {
3863
- font-size: 1.75rem;
3864
- font-weight: 500;
3865
- }
3866
- .obfx-menu-tabs li{
3867
- border-top-left-radius: 5px;
3868
- border-top-right-radius: 5px;
3869
- margin-bottom: 0;
3870
- height: 38px;
3871
- padding: 4px 32px;
3872
- padding-bottom: 0;
3873
- width: auto;
3874
- display: inline-block;
3875
- list-style: none;
3876
- }
3877
-
3878
- .obfx-recommended .button-primary{
3879
- background: #5764c6;
3880
- text-decoration: none;
3881
- padding: 10px 40px;
3882
- line-height: 15px;
3883
- box-shadow: none;
3884
- text-shadow: none;
3885
- display: inline;
3886
- }
3887
-
3888
- .obfx-recommended .button-primary:hover,
3889
- .obfx-recommended .button-primary:active,
3890
- .obfx-recommended .button-primary:focus {
3891
- background: #fff;
3892
- border-color: #5764c6;
3893
- color: #5764c6;
3894
- font-weight: 500;
3895
- text-decoration: none;
3896
- transition: 0.3s;
3897
- }
3898
-
3899
- .obfx-recommended .button-primary.updating-message:before {
3900
- color: #fff;
3901
- margin: 0;
3902
- vertical-align: middle;
3903
- margin-right: 5px;
3904
- padding: 0;
3905
- }
3906
-
3907
- .obfx-recommended .button-primary span.dashicons {
3908
- vertical-align: middle;
3909
- margin-right: 5px;
3910
- }
3911
-
3912
- .obfx-recommended .button-primary:hover span.dashicons,
3913
- .obfx-recommended .button-primary.updating-message:hover:before,
3914
- .obfx-recommended .button-primary:active span.dashicons,
3915
- .obfx-recommended .button-primary.updating-message:active:before,
3916
- .obfx-recommended .button-primary:focus span.dashicons,
3917
- .obfx-recommended .button-primary.updating-message:focus:before{
3918
- color: #5764c6;
3919
- }
3920
-
3921
- .wp-core-ui .button-primary:hover {
3922
- text-shadow: none;
3923
- }
3924
-
3925
- .obfx-recommended .tile-title{
3926
- padding-top:15px;
3927
- margin-bottom: 0px;
3928
- }
3929
- .obfx-recommended .obfx-icon-recommended{
3930
-
3931
- padding:10px;
3932
- }
3933
- .obfx-recommended img{
3934
- width:50px;
3935
- border-radius: 10px;
3936
- }
3937
- .obfx-recommended-title .dashicons.dashicons-editor-help{
3938
- float:right;
3939
- cursor: pointer;
3940
- }
3941
- .obfx-recommended-title{
3942
-
3943
- font-size: 1.5rem;
3944
- text-align: left;
3945
- padding: 14px;
3946
- color: #3b49af;
3947
- }
3948
- p.obfx-recommended-disclosure{
3949
- text-align: right;
3950
- }
3951
- .obfx-recommended-title-wrapper .obfx-recommended-disclosure{
3952
- float:right;
3953
- padding:14px;
3954
- padding-top:0px;
3955
- }
3956
- .obfx-recommended-title-wrapper .obfx-recommended-title{
3957
- float:left;
3958
- padding-top:0px;
3959
- min-width: 250px;
3960
- }
3961
- .obfx-recommended-title-wrapper{
3962
- padding-bottom: 20px;
3963
- margin-left:16px;
3964
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
core/assets/js/orbit-fox-admin.js DELETED
@@ -1,238 +0,0 @@
1
- /**
2
- * The admin-specific functionality of the plugin.
3
- *
4
- * @link https://themeisle.com
5
- * @since 1.0.0
6
- *
7
- * @package Orbit_Fox
8
- * @subpackage Orbit_Fox/admin/js
9
- */
10
-
11
- var obfx_admin = function ( $ ) {
12
- 'use strict';
13
- /**
14
- * All of the code for your admin-facing JavaScript source
15
- * should reside in this file.
16
- *
17
- * Note: It has been assumed you will write jQuery code here, so the
18
- * $ function reference has been prepared for usage within the scope
19
- * of this function.
20
- *
21
- * This enables you to define handlers, for when the DOM is ready:
22
- *
23
- * $(function() {
24
- *
25
- * });
26
- *
27
- * When the window is loaded:
28
- *
29
- * $( window ).load(function() {
30
- *
31
- * });
32
- *
33
- * ...and/or other possibilities.
34
- *
35
- * Ideally, it is not considered best practise to attach more than a
36
- * single DOM-ready or window-load handler for a particular page.
37
- * Although scripts in the WordPress core, Plugins and Themes may be
38
- * practising this, we should strive to set a better example in our own work.
39
- */
40
- $(
41
- function () {
42
- // if ( $( '#toplevel_page_jetpack' ).length ) {
43
- // var obfx_menu = $( '#toplevel_page_obfx_menu' ).clone().wrap( '<p/>' ).parent().html();
44
- // $( '#toplevel_page_obfx_menu' ).remove();
45
- // $( '#toplevel_page_jetpack' ).before( obfx_menu );
46
- // }
47
- }
48
- );
49
-
50
- $(
51
- function () {
52
- // Scroll to module if url hash.
53
- $( document ).ready(
54
- function() {
55
- var hash = $( '#' + window.location.hash.substr( 1 ) );
56
- hash.find( '.btn-expand' ).click();
57
- scrollToAnchor( hash );
58
- }
59
- );
60
-
61
- $( '.obfx-mod-switch' ).on(
62
- 'click', function () {
63
- var switch_ref = $( this );
64
- var checked = switch_ref.is( ':checked' );
65
- var name = switch_ref.attr( 'name' );
66
- var noance = switch_ref.val();
67
- var formSwitch = $( switch_ref ).parent();
68
- $( formSwitch ).addClass( 'loading' ).removeClass( 'activated' );
69
- if ( $( this ).hasClass( 'obfx-mod-confirm-intent' ) ) {
70
- var modal = $( '.modal#' + name );
71
- }
72
-
73
- var post_data = {
74
- noance: noance,
75
- name: name,
76
- checked: checked
77
- };
78
- var json_data = JSON.stringify( post_data );
79
-
80
- var ajax_data = {
81
- 'action': 'obfx_update_module_active_status',
82
- 'data': json_data
83
- };
84
-
85
- $.post(
86
- 'admin-ajax.php', ajax_data, function ( response ) {
87
- formSwitch.removeClass( 'loading' );
88
- if ( response.type === 'success' ) {
89
- var modulePanel = $( '#obfx-mod-' + name );
90
- if ( checked ) {
91
- formSwitch.addClass( 'activated' );
92
- $( modulePanel ).find( 'fieldset' ).removeAttr( 'disabled' );
93
- $( modulePanel ).show();
94
- if ( modal ) {
95
- modal.addClass( 'active' );
96
- } else {
97
- $( modulePanel ).find( '.btn-expand' ).click();
98
- scrollToAnchor( modulePanel );
99
- }
100
- } else {
101
- $( modulePanel ).hide();
102
- $( modulePanel ).find( 'fieldset' ).attr( 'disabled', true );
103
- }
104
- } else {
105
- switch_ref.attr( 'checked', ! switch_ref.attr( 'checked' ) );
106
- }
107
- }, 'json'
108
- );
109
- }
110
- );
111
-
112
- function scrollToAnchor(anchor_id){
113
- if ( anchor_id.length ) {
114
- $( 'html,body' ).animate( { scrollTop: anchor_id.offset().top }, 'slow' );
115
- }
116
- }
117
-
118
- $( '.accept-confirm-intent, .close-confirm-intent' ).on(
119
- 'click', function () {
120
- var modal = $( this ).closest( '.modal' );
121
- modal.removeClass( 'active' );
122
- var switch_ref = modal.prev().find( 'input' );
123
- var name = switch_ref.attr( 'name' );
124
- var optionsPanel = $( '#obfx-mod-' + name );
125
- optionsPanel.find( '.btn-expand' ).click();
126
- scrollToAnchor( optionsPanel );
127
- optionsPanel.find( '.form-input:first-of-type' ).focus();
128
-
129
- }
130
- );
131
-
132
- $( '.close-confirm-intent' ).on(
133
- 'click', function () {
134
- var modal = $( this ).closest( '.modal' );
135
- modal.removeClass( 'active' );
136
- }
137
- );
138
-
139
- $( '.obfx-toast-dismiss' ).on(
140
- 'click', function () {
141
- $( this ).closest( '.obfx-mod-toast' ).slideUp(
142
- 400, function () {
143
- $( this ).removeClass( 'toast-success' );
144
- $( this ).removeClass( 'toast-error' );
145
- $( this ).removeClass( 'toast-warning' );
146
- }
147
- );
148
- }
149
- );
150
-
151
- $( '.btn-expand' ).on(
152
- 'click', function () {
153
- if ( $( this ).hasClass( 'active' ) ) {
154
- $( this ).removeClass( 'active' );
155
- $( this ).closest( '.panel-header' ).siblings( '.obfx-module-form' ).removeClass( 'active' ).parent().removeClass('active');
156
-
157
- } else {
158
- $( this ).addClass( 'active' );
159
- $( this ).closest( '.panel-header' ).siblings( '.obfx-module-form' ).addClass( 'active' ).parent().addClass( 'active' );
160
- }
161
- }
162
- );
163
-
164
- $( '.obfx-module-form' ).on(
165
- 'submit reset', function ( e ) {
166
- e.preventDefault();
167
- return false;
168
- }
169
- );
170
-
171
- $( '.obfx-module-form' ).on(
172
- 'keyup change', 'input, select, textarea', function () {
173
- $( this ).closest( 'form' ).find( '[class*="obfx-mod-btn"]:disabled' ).removeAttr( 'disabled' );
174
- }
175
- );
176
-
177
- $( '.obfx-mod-btn-cancel' ).on(
178
- 'click', function () {
179
- $( this ).closest( 'form' ).trigger( 'reset' );
180
- $( this ).closest( 'form' ).find( '[class*="obfx-mod-btn"]' ).attr( 'disabled', true );
181
- }
182
- );
183
-
184
- $( '.obfx-mod-btn-save' ).on(
185
- 'click', function () {
186
- var module_form = $( this ).closest( 'form' );
187
- module_form.find( '[class*="obfx-mod-btn"]' ).attr( 'disabled', true );
188
- module_form.find( '.obfx-mod-btn-save' ).addClass( 'loading' );
189
- module_form.find( $( 'input:checkbox:not(:checked)' ) ).each(
190
- function () {
191
- var input = $( '<input />' );
192
- input.attr( 'type', 'hidden' );
193
- input.attr( 'name', $( this ).attr( 'name' ) );
194
- input.attr( 'value', '0' );
195
- var form = $( this )[ 0 ].form;
196
- $( form ).append( input );
197
- }
198
- );
199
- var form_data = module_form.serializeArray();
200
- var maped_array = {};
201
- $.each(
202
- form_data, function ( i, elem ) {
203
- maped_array[ elem.name ] = elem.value;
204
- }
205
- );
206
-
207
- form_data = JSON.stringify( maped_array );
208
-
209
- var ajax_data = {
210
- 'action': 'obfx_update_module_options',
211
- 'data': form_data
212
- };
213
-
214
- $.post(
215
- 'admin-ajax.php', ajax_data, function ( response ) {
216
- module_form.find( '.obfx-mod-btn-save' ).removeClass( 'loading' );
217
- if ( response.type ) {
218
- module_form.closest( '.panel' ).find( '.obfx-mod-toast' ).addClass( 'toast-' + response.type );
219
- module_form.closest( '.panel' ).find( '.obfx-mod-toast span' ).html( response.message );
220
- module_form.closest( '.panel' ).find( '.obfx-mod-toast' ).show();
221
- setTimeout(
222
- function () {
223
- module_form.closest( '.panel' ).find( '.obfx-toast-dismiss' ).trigger( 'click' );
224
- }, 2000
225
- );
226
- }
227
- }, 'json'
228
- );
229
-
230
- }
231
- );
232
-
233
- }
234
- );
235
-
236
- };
237
-
238
- obfx_admin( jQuery );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
core/assets/js/plugin-install.js DELETED
@@ -1,97 +0,0 @@
1
- /**
2
- * Remove activate button and replace with activation in progress button.
3
- */
4
-
5
- /* global obfxPluginInstall */
6
- /* global console */
7
-
8
- jQuery( document ).ready(
9
- function ( $ ) {
10
- $.pluginInstall = {
11
- 'init': function () {
12
- this.handleInstall();
13
- this.handleActivate();
14
- },
15
-
16
- 'handleInstall': function () {
17
- var self = this;
18
- $( 'body' ).on( 'click', '.obfx-install-plugin', function ( e ) {
19
- e.preventDefault();
20
- var button = $( this );
21
- if ( button.hasClass('no-click') ){
22
- return false;
23
- }
24
- $('.obfx-install-plugin').addClass( 'no-click' );
25
- var slug = button.attr( 'data-slug' );
26
- var url = button.attr( 'href' );
27
- var redirect = $( button ).attr( 'data-redirect' );
28
- button.text( obfxPluginInstall.installing );
29
- button.addClass( 'updating-message' );
30
- wp.updates.installPlugin(
31
- {
32
- slug: slug,
33
- success: function () {
34
- button.text( obfxPluginInstall.activating + '...' );
35
- self.activatePlugin( url, redirect );
36
- }
37
- }
38
- );
39
- } );
40
- },
41
-
42
- 'activatePlugin': function ( url, redirect ) {
43
- if ( typeof url === 'undefined' || !url ) {
44
- return;
45
- }
46
- jQuery.ajax(
47
- {
48
- async: true,
49
- type: 'GET',
50
- url: url,
51
- success: function () {
52
- // Reload the page.
53
- if ( typeof(redirect) !== 'undefined' && redirect !== '' ) {
54
- window.location.replace( redirect );
55
- } else {
56
- location.reload();
57
- }
58
- },
59
- error: function ( jqXHR, exception ) {
60
- var msg = '';
61
- if ( jqXHR.status === 0 ) {
62
- msg = 'Not connect.\n Verify Network.';
63
- } else if ( jqXHR.status === 404 ) {
64
- msg = 'Requested page not found. [404]';
65
- } else if ( jqXHR.status === 500 ) {
66
- msg = 'Internal Server Error [500].';
67
- } else if ( exception === 'parsererror' ) {
68
- msg = 'Requested JSON parse failed.';
69
- } else if ( exception === 'timeout' ) {
70
- msg = 'Time out error.';
71
- } else if ( exception === 'abort' ) {
72
- msg = 'Ajax request aborted.';
73
- } else {
74
- msg = 'Uncaught Error.\n' + jqXHR.responseText;
75
- }
76
- console.log( msg );
77
- },
78
- }
79
- );
80
- },
81
-
82
- 'handleActivate': function () {
83
- var self = this;
84
- $( 'body' ).on( 'click', '.activate-now', function ( e ) {
85
- e.preventDefault();
86
- var button = $( this );
87
- var url = button.attr( 'href' );
88
- var redirect = button.attr( 'data-redirect' );
89
- button.addClass( 'updating-message' );
90
- button.text( obfxPluginInstall.activating + '...' );
91
- self.activatePlugin( url, redirect );
92
- } );
93
- },
94
- };
95
- $.pluginInstall.init();
96
- }
97
- );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
core/includes/class-orbit-fox.php CHANGED
@@ -69,7 +69,7 @@ class Orbit_Fox {
69
 
70
  $this->plugin_name = 'orbit-fox';
71
 
72
- $this->version = '2.10.7';
73
 
74
  $this->load_dependencies();
75
  $this->set_locale();
69
 
70
  $this->plugin_name = 'orbit-fox';
71
 
72
+ $this->version = '2.10.8';
73
 
74
  $this->load_dependencies();
75
  $this->set_locale();
dashboard/assets/orbit-fox.png ADDED
Binary file
dashboard/build/dashboard.asset.php ADDED
@@ -0,0 +1 @@
 
1
+ <?php return array('dependencies' => array('lodash', 'wp-components', 'wp-element', 'wp-i18n', 'wp-polyfill'), 'version' => '4627f15be4de6e4ab0d2ae0f2666c8fc');
dashboard/build/dashboard.js ADDED
@@ -0,0 +1 @@
 
1
+ (window.webpackJsonp_themeisle_companion=window.webpackJsonp_themeisle_companion||[]).push([[1],{6:function(e,t,n){}}]),function(e){function t(t){for(var a,o,l=t[0],r=t[1],i=t[2],d=0,m=[];d<l.length;d++)o=l[d],Object.prototype.hasOwnProperty.call(c,o)&&c[o]&&m.push(c[o][0]),c[o]=0;for(a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a]);for(u&&u(t);m.length;)m.shift()();return s.push.apply(s,i||[]),n()}function n(){for(var e,t=0;t<s.length;t++){for(var n=s[t],a=!0,l=1;l<n.length;l++){var r=n[l];0!==c[r]&&(a=!1)}a&&(s.splice(t--,1),e=o(o.s=n[0]))}return e}var a={},c={0:0},s=[];function o(t){if(a[t])return a[t].exports;var n=a[t]={i:t,l:!1,exports:{}};return e[t].call(n.exports,n,n.exports,o),n.l=!0,n.exports}o.m=e,o.c=a,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)o.d(n,a,function(t){return e[t]}.bind(null,a));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="";var l=window.webpackJsonp_themeisle_companion=window.webpackJsonp_themeisle_companion||[],r=l.push.bind(l);l.push=t,l=l.slice();for(var i=0;i<l.length;i++)t(l[i]);var u=r;s.push([7,1]),n()}([function(e,t){e.exports=window.wp.element},function(e,t){e.exports=window.wp.i18n},function(e,t){e.exports=window.wp.components},function(e,t,n){var a;!function(){"use strict";var n={}.hasOwnProperty;function c(){for(var e=[],t=0;t<arguments.length;t++){var a=arguments[t];if(a){var s=typeof a;if("string"===s||"number"===s)e.push(a);else if(Array.isArray(a)){if(a.length){var o=c.apply(null,a);o&&e.push(o)}}else if("object"===s)if(a.toString===Object.prototype.toString)for(var l in a)n.call(a,l)&&a[l]&&e.push(l);else e.push(a.toString())}}return e.join(" ")}e.exports?(c.default=c,e.exports=c):void 0===(a=function(){return c}.apply(t,[]))||(e.exports=a)}()},function(e,t,n){"use strict";var a=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==a)return a;throw new Error("unable to locate global object")}();e.exports=t=a.fetch,a.fetch&&(t.default=a.fetch.bind(a)),t.Headers=a.Headers,t.Request=a.Request,t.Response=a.Response},function(e,t){e.exports=window.lodash},,function(e,t,n){"use strict";n.r(t);var a=n(0);n(6);const c=Object(a.createContext)(),s=Object(a.createContext)(),o=Object(a.createContext)();var l=n(4),r=n.n(l);const i=async(e,t=!1,n={},a=!1,c="POST")=>{const s={method:c,headers:{Accept:"application/json","Content-Type":a?"application/x-www-form-urlencoded":"application/json","x-wp-nonce":obfxDash.nonce}};return"POST"===c&&(s.body=a?n:JSON.stringify(n)),await r()(e,s).then(e=>t?e:e.json())};var u=n(3),d=n.n(u),m=n(5),b=n(2),p=n(1);const{options:O,root:j,setSettingsRoute:v}=obfxDash;var h=({slug:e})=>{const{modulesData:t,setModulesData:n}=Object(a.useContext)(c),{setToast:s}=Object(a.useContext)(o),[l,r]=Object(a.useState)(!1),[u,h]=Object(a.useState)(!1),f=t.module_settings[e]||{},[g,E]=Object(a.useState)({...f}),_=Object(a.createElement)(b.Dashicon,{size:18,icon:"update",className:"is-loading"}),y=(e,t)=>{const n=g;n[e]=t,E({...n})};return Object(a.createElement)("div",{className:d()(["module-settings",l?"open":"closed"])},Object(a.createElement)("button",{"aria-expanded":l,className:"accordion-header",onClick:()=>r(!l)},Object(a.createElement)("div",{className:"accordion-title"}," Settings "),Object(a.createElement)(b.Dashicon,{icon:l?"arrow-up-alt2":"arrow-down-alt2"})),l&&Object(a.createElement)("div",{className:d()(["accordion-content",u?"loading":""])},(()=>{const t=[];for(let n=0;n<O[e].length;n++){let c=O[e][n];if(c.title&&c.label&&t.push(Object(a.createElement)("p",{className:"title"}," ",c.title," ")),c.hasOwnProperty("before_wrap")){const o=[],l="1"===g[c.id]||!g[c.id]&&"1"===c.default;for(;o.push(P(c,g,y,s)),!c.hasOwnProperty("after_wrap");)c=O[e][++n];const r=d()(["settings-row",l&&"active"]);t.push(Object(a.createElement)("div",{className:r}," ",o," "))}else if("checkbox"!==c.type)t.push(P(c,g,y,s));else{const o=[];for(;"checkbox"===c.type;)o.push(P(c,g,y,s)),c=O[e][++n];t.push(Object(a.createElement)("div",{className:"checkboxes-row"}," ",o," "))}}return t})(),Object(a.createElement)("div",{className:"buttons-container"},Object(a.createElement)(b.Button,{isSecondary:!0,className:"obfx-button",onClick:()=>r(!1)},Object(p.__)("Close","themeisle-companion")),Object(a.createElement)(b.Button,{isPrimary:!0,disabled:Object(m.isEqual)(g,f),className:"obfx-button",onClick:()=>{h(!0),i(j+v,!1,{slug:e,value:g}).then(a=>{if("success"!==a.type)return E({...f}),h(!1),void s(Object(p.__)("Could not update options. Please try again.","themeisle-companion"));t.module_settings[e]={...g},n({...t}),h(!1),s(Object(p.__)("Options updated successfully.","themeisle-companion"))})}},u?_:Object(p.__)("Save","themeisle-companion")))))};const{root:f,toggleStateRoute:g,options:E}=obfxDash;var _=({slug:e,details:t})=>{const n=t.refresh_after_enabled,s=t.active_default,[l,r]=Object(a.useState)(!1),{modulesData:u,setModulesData:d}=Object(a.useContext)(c),{setToast:m}=Object(a.useContext)(o),O=u.module_status;return Object(a.createElement)("div",{className:"module-card"},Object(a.createElement)("div",{className:"module-card-header"},Object(a.createElement)("h3",{className:"title"},t.name),Object(a.createElement)("div",{className:"toggle-wrap"},l&&Object(a.createElement)(b.Dashicon,{size:18,icon:"update",className:"is-loading"}),Object(a.createElement)(b.ToggleControl,{checked:O[e]&&void 0!==O[e].active?O[e].active:s,onChange:a=>{r(!0),i(f+g,!1,{slug:e,value:a}).then(c=>{((a,c)=>{if("success"!==a.type)return r(!1),void m(Object(p.__)("Could not activate module. Please try again.","themeisle-companion"));n&&window.location.reload(),O[e]||(O[e]={}),O[e].active=c,d(u),r(!1),m((c?Object(p.__)("Module activated","themeisle-companion"):Object(p.__)("Module deactivated","themeisle-companion"))+` (${t.name})`)})(c,a)})}}))),Object(a.createElement)("div",{className:"module-card-content"},(e=>{const t=[];for(;e.indexOf("<a")>=0;){const n=e.indexOf("<a"),c=e.indexOf("</a>");t.push(e.slice(0,n));const s=e.indexOf('href="')+'href="'.length,o=e.indexOf('"',s),l=e.slice(s,o),r=e.slice(e.indexOf(">",n)+1,c);t.push(Object(a.renderToString)(Object(a.createElement)(b.ExternalLink,{href:l},r))),e=e.slice(c+"</a>".length)}return t.push(e),Object(a.createElement)("p",{className:"description",dangerouslySetInnerHTML:{__html:t.join(" ")}})})(t.description)),O[e]&&O[e].active&&E[e].length>0&&Object(a.createElement)(h,{slug:e}))};const{modules:y,data:w}=obfxDash;var x=()=>{const[e,t]=Object(a.useState)(""===w?{module_status:{},module_settings:{}}:{...w});return e.module_settings||t({...e,module_settings:{}}),e.module_status||t({...e,module_status:{}}),Object(a.createElement)(c.Provider,{value:{modulesData:e,setModulesData:t}},Object(a.createElement)("div",{className:"modules-container"},Object.entries(y).map(([e,t])=>Object(a.createElement)(_,{slug:e,details:t,key:e}))))};var N=({slug:e,data:t})=>{const{banner:n,name:c,description:l,version:r,author:u}=t,{pluginsData:m,setPluginsData:O}=Object(a.useContext)(s),{setToast:j}=Object(a.useContext)(o),[v,h]=Object(a.useState)(!1),f=m[e].action,g=t=>{m[e].action=t,O(m)},E=Object(p.__)("Something went wrong. Please try again.","themeisle-companion"),_={install:{static:Object(p.__)("Install","neve"),progress:Object(p.__)("Installing","neve")},activate:{static:Object(p.__)("Activate","neve"),progress:Object(p.__)("Activating","neve")},deactivate:{static:Object(p.__)("Deactivate","neve"),progress:Object(p.__)("Deactivating","neve")}};return Object(a.createElement)("div",{className:d()(["card","plugin",e])},Object(a.createElement)("div",{className:"card-header"},Object(a.createElement)("img",{src:n,alt:Object(p.__)("Banner Image","name")})),Object(a.createElement)("div",{className:"card-body"},Object(a.createElement)("h3",{className:"card-title"},c),Object(a.createElement)("p",{className:"card-description"},l)),Object(a.createElement)("div",{className:"card-footer"},Object(a.createElement)("div",{className:"plugin-data"},Object(a.createElement)("span",{className:"version"},"v",r)," |"," ",Object(a.createElement)("span",{className:"author"},u)),Object(a.createElement)(b.Button,{className:"plugin-action",isPrimary:["install","activate"].includes(f),isSecondary:"deactivate"===f,disabled:v,onClick:()=>{var n;h(!0),"install"!==f?(n=t[f],!0,i(n,!0,{},"GET")).then(e=>{if(!e.ok)return h(!1),void j(E);g("activate"===f?"deactivate":"activate"),h(!1)}):(e=>new Promise(t=>{wp.updates.ajax("install-plugin",{slug:e,success:()=>{t({success:!0})},error:()=>{t({success:!1})}})}))(e).then(e=>{if(!e.success)return h(!1),void j(E);g("activate"),h(!1)})}},!v&&_[f].static,v&&Object(a.createElement)("span",{style:{display:"flex",alignItems:"center"}},Object(a.createElement)(b.Dashicon,{icon:"update"}),_[f].progress+"..."))))},C=()=>{const{plugins:e}=obfxDash,[t,n]=Object(a.useState)(e);return e?Object(a.createElement)(s.Provider,{value:{pluginsData:t,setPluginsData:n}},Object(a.createElement)("div",{className:"plugins-grid"},Object.keys(e).map(t=>Object(a.createElement)(N,{key:t,slug:t,data:e[t]})))):null};const S={modules:{label:Object(p.__)("Available Modules","themeisle-companion"),render:()=>Object(a.createElement)(x,null)},plugins:{label:Object(p.__)("Recommended Plugins","themeisle-companion"),render:()=>Object(a.createElement)(C,null)}},k=e=>{const t=document.createElement("textarea");return t.innerHTML=e,t.value},P=(e,t,n,c)=>{const s=void 0!==t[e.id]?t[e.id]:e.default;switch(e.type){case"checkbox":return Object(a.createElement)(b.CheckboxControl,{label:e.label,checked:"1"===s,onChange:t=>n(e.id,t?"1":"0")});case"radio":return Object(a.createElement)(b.RadioControl,{label:e.title,options:e.options.map((e,t)=>({label:e,value:t})),selected:parseInt(s),onChange:t=>n(e.id,t)});case"toggle":return Object(a.createElement)(b.ToggleControl,{label:Object(a.createElement)("div",{dangerouslySetInnerHTML:{__html:e.label}}),checked:"1"===s,onChange:t=>n(e.id,t?"1":"0")});case"select":return Object(a.createElement)("div",{className:"select-wrap"},Object(a.createElement)(b.SelectControl,{label:e.title,value:s,options:Object.entries(e.options).map(([e,t])=>({value:e,label:t})),onChange:t=>n(e.id,t)}));case"text":return Object(a.createElement)(b.TextControl,{label:e.title,value:k(s),onChange:t=>n(e.id,t)});case"link":const t="analytics_accounts_unregister"===e.id;return Object(a.createElement)("div",{className:"select-wrap"},Object(a.createElement)(b.Button,{isPrimary:!t,isDestructive:t,href:e.url?e.url:null,onClick:t&&(()=>{((e,t)=>{var n;(n=e,"deactivate=unregister",i(n,!1,"deactivate=unregister",!0)).then(e=>{!1!==e?window.location.reload():t(Object(p.__)("Could not unregister the site. Please try again.","themeisle-companion"))})})(e.unregisterURL,c)})},Object(a.createElement)("div",{dangerouslySetInnerHTML:{__html:e.text}})))}};var T=({activeTab:e,setActiveTab:t})=>Object(a.createElement)("header",null,Object(a.createElement)("div",{className:"container"},Object(a.createElement)("div",{className:"top"},Object(a.createElement)("img",{src:obfxDash.path+"assets/orbit-fox.png",alt:"logo"}),Object(a.createElement)("h1",null,"Orbit Fox")),Object(a.createElement)("nav",{className:"navigation"},Object.keys(S).map((n,c)=>Object(a.createElement)("li",{key:"tab"+c,className:n===e?"active":""},Object(a.createElement)("a",{href:"#"+n,onClick:()=>t(n)},S[n].label)))))),D=()=>{const{toast:e,setToast:t}=Object(a.useContext)(o);Object(a.useEffect)(()=>{setTimeout(()=>{t(null)},3e3)},[]);const n={opacity:null===e?0:1};return Object(a.createElement)("div",{style:n},Object(a.createElement)(b.Snackbar,{className:"dash-notice"},e))},M=()=>{const e=(()=>{let e=window.location.hash;return"string"!=typeof window.location.hash?null:(e=e.substring(1),Object.keys(S).includes(e)?e:null)})(),[t,n]=Object(a.useState)(e||"modules"),[c,s]=Object(a.useState)();return Object(a.createElement)(o.Provider,{value:{toast:c,setToast:s}},Object(a.createElement)(T,{activeTab:t,setActiveTab:n}),Object(a.createElement)("div",{className:"container"},S[t].render()),c&&Object(a.createElement)(D,null))};Object(a.render)(Object(a.createElement)(()=>Object(a.createElement)(M,null),null),document.getElementById("obfx-dash"))}]);
dashboard/build/style-dashboard.css ADDED
@@ -0,0 +1 @@
 
1
+ #obfx-dash{--wp-admin-theme-color: #5a65b0;--wp-admin-theme-color-darker-10: #464f91;--wp-admin-theme-color-darker-20: #353c6f}#obfx-dash .module-settings .accordion-content .components-radio-control__input[type=radio]:checked:before{width:1px;height:1px}#obfx-dash .css-bmkl3j-Container{width:unset}#wpcontent{padding-left:0 !important}.ob-overflow-off{overflow:hidden !important}#obfx-dash .container{padding:0 20px;max-width:1300px;margin-left:auto;margin-right:auto}#obfx-dash .dash-notice{position:fixed;bottom:30px;margin-left:30px}@-webkit-keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}#obfx-dash header{background-color:#fff;border-bottom:1px solid #e1e1e1}#obfx-dash header .top{padding:65px 0 50px 0;display:flex}#obfx-dash header .top img{max-height:100%}#obfx-dash header .top h1{font-size:45px;margin-left:10px;color:inherit}#obfx-dash header .navigation{display:flex;list-style:none;text-decoration:none;font-weight:600;line-height:1.5;padding-bottom:20px;flex-wrap:nowrap;font-size:19px}#obfx-dash header .navigation li{margin-right:50px}#obfx-dash header .navigation li a{color:inherit;text-decoration:none;box-shadow:none}#obfx-dash header .navigation li.active{color:#5a65b0 !important}#obfx-dash .modules-container{padding-top:20px;display:flex;flex-direction:column;row-gap:20px}#obfx-dash .module-card{background-color:#fff;border:1px solid #e1e1e1;box-shadow:0 1px 1px rgba(0,0,0,.04)}#obfx-dash .module-card .module-card-header{padding:20px;border-bottom:1px solid #e1e1e1;display:flex;position:relative}#obfx-dash .module-card .module-card-header .title{margin:0;font-size:18px;line-height:1.5;color:inherit}#obfx-dash .module-card .module-card-header .toggle-wrap{margin-left:auto;display:flex;align-items:center}#obfx-dash .module-card .module-card-header .toggle-wrap .dashicon{-webkit-animation-name:spin;animation-name:spin;-webkit-animation-duration:2000ms;animation-duration:2000ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear}#obfx-dash .module-card .module-card-header .toggle-wrap div{margin-bottom:0;margin-left:5px}#obfx-dash .module-card .module-card-header .toggle-wrap span{margin-right:0}#obfx-dash .module-card .module-card-content{padding:20px}#obfx-dash .module-card .module-card-content .description{margin:0;font-size:15px;color:#616161}#obfx-dash .module-settings{border-top:1px solid #e1e1e1}#obfx-dash .module-settings.open .accordion-header .accordion-title{color:#3c434a}#obfx-dash .module-settings .accordion-header{padding:15px 20px;background-color:#fff;outline:none;border:none;width:100%;display:flex;cursor:pointer}#obfx-dash .module-settings .accordion-header .accordion-title{margin-right:auto;font-size:15px;font-weight:600;color:#5a65b0;transition-duration:.25s;transition-timing-function:ease-out}#obfx-dash .module-settings .accordion-header .dashicon{margin-left:auto;color:#646d82}#obfx-dash .module-settings .accordion-content{padding:15px 20px;display:flex;flex-direction:column;row-gap:15px}#obfx-dash .module-settings .accordion-content .title{margin:0}#obfx-dash .module-settings .accordion-content .checkboxes-row{display:flex;-moz-column-gap:30px;column-gap:30px}#obfx-dash .module-settings .accordion-content .select-wrap{display:flex;flex-direction:row}#obfx-dash .module-settings .accordion-content .obfx-google{margin-right:10px}#obfx-dash .module-settings .accordion-content .settings-row{display:flex;-moz-column-gap:70px;column-gap:70px}#obfx-dash .module-settings .accordion-content .settings-row>*{transition-duration:.1s;transition-timing-function:ease}#obfx-dash .module-settings .accordion-content .settings-row>:not(:first-child){opacity:0;pointer-events:none}#obfx-dash .module-settings .accordion-content .settings-row.active>:not(:first-child){opacity:1;pointer-events:auto}#obfx-dash .module-settings .accordion-content .settings-row>:first-child{width:150px}#obfx-dash .module-settings .accordion-content.loading{opacity:.75}#obfx-dash .module-settings .accordion-content .buttons-container{margin-left:auto;display:flex;-moz-column-gap:10px;column-gap:10px;justify-content:flex-end;position:relative}#obfx-dash .module-settings .accordion-content .buttons-container .obfx-button{width:60px;justify-content:center}#obfx-dash .module-settings .accordion-content .buttons-container .obfx-button .dashicon{-webkit-animation-name:spin;animation-name:spin;-webkit-animation-duration:2000ms;animation-duration:2000ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear}#obfx-dash .plugins-grid{display:-ms-grid;display:grid;grid-template-columns:repeat(auto-fit, minmax(360px, 1fr));-moz-column-gap:30px;column-gap:30px;row-gap:20px}#obfx-dash .card.plugin{padding:0;max-width:100%;display:flex;flex-direction:column;border:1px solid #e1e1e1}#obfx-dash .card.plugin .card-header img{width:100%;max-width:100%;border-bottom:1px solid #e1e1e1}#obfx-dash .card.plugin .card-body{padding:20px}#obfx-dash .card.plugin .card-body .card-title{margin:0 0 20px;line-height:150%}#obfx-dash .card.plugin .card-footer{border-top:1px solid #e1e1e1;padding:20px 15px 20px 20px;display:flex;align-items:center;margin-top:auto;position:relative}#obfx-dash .card.plugin .card-footer .plugin-data{font-size:14px;color:#616161;display:flex;align-items:center}#obfx-dash .card.plugin .version{margin-right:5px}#obfx-dash .card.plugin .author{margin-left:5px;max-width:200px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#obfx-dash .card.plugin .plugin-action{margin-left:auto}#obfx-dash .card.plugin .plugin-action .dashicon{margin-right:5px;-webkit-animation-name:spin;animation-name:spin;-webkit-animation-duration:2000ms;animation-duration:2000ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;animation-timing-function:linear}
dashboard/src/components/App.js ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import '../style.scss';
2
+ import Header from './Header';
3
+ import Snackbar from './Snackbar';
4
+ import { DashboardContext } from './DashboardContext';
5
+ import { useState } from '@wordpress/element';
6
+ import { tabs, getTabHash } from '../utils/common';
7
+
8
+ const App = () => {
9
+ const hash = getTabHash();
10
+ const [activeTab, setActiveTab] = useState(hash ? hash : 'modules');
11
+ const [toast, setToast] = useState();
12
+
13
+ return (
14
+ <DashboardContext.Provider value={{ toast, setToast }}>
15
+ <Header activeTab={activeTab} setActiveTab={setActiveTab} />
16
+ <div className="container">{tabs[activeTab].render()}</div>
17
+ {toast && <Snackbar />}
18
+ </DashboardContext.Provider>
19
+ );
20
+ };
21
+
22
+ export default App;
dashboard/src/components/AvailableModules.js ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* global obfxDash */
2
+ import ModuleCard from './ModuleCard';
3
+ import { ModulesContext } from './DashboardContext';
4
+ import { useState } from '@wordpress/element';
5
+
6
+ const { modules, data } = obfxDash;
7
+
8
+ const AvailableModules = () => {
9
+ const [modulesData, setModulesData] = useState(
10
+ data === '' ? { module_status: {}, module_settings: {} } : { ...data }
11
+ );
12
+
13
+ if (!modulesData.module_settings) {
14
+ setModulesData({ ...modulesData, module_settings: {} });
15
+ }
16
+
17
+ if (!modulesData.module_status) {
18
+ setModulesData({ ...modulesData, module_status: {} });
19
+ }
20
+
21
+ const renderModules = () => {
22
+ return Object.entries(modules).map(([slug, details]) => {
23
+ return <ModuleCard slug={slug} details={details} key={slug} />;
24
+ });
25
+ };
26
+
27
+ return (
28
+ <ModulesContext.Provider value={{ modulesData, setModulesData }}>
29
+ <div className="modules-container">{renderModules()}</div>
30
+ </ModulesContext.Provider>
31
+ );
32
+ };
33
+
34
+ export default AvailableModules;
dashboard/src/components/DashboardContext.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ import { createContext } from '@wordpress/element';
2
+
3
+ export const ModulesContext = createContext();
4
+ export const PluginsContext = createContext();
5
+ export const DashboardContext = createContext();
dashboard/src/components/Header.js ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* global obfxDash */
2
+ import { tabs } from '../utils/common';
3
+
4
+ const Header = ({ activeTab, setActiveTab }) => {
5
+ const renderHead = () => {
6
+ return (
7
+ <div className="top">
8
+ <img src={obfxDash.path + 'assets/orbit-fox.png'} alt="logo" />
9
+ <h1>Orbit Fox</h1>
10
+ </div>
11
+ );
12
+ };
13
+
14
+ const renderNavbar = () => {
15
+ return (
16
+ <nav className="navigation">
17
+ {Object.keys(tabs).map((tab, index) => {
18
+ return (
19
+ <li
20
+ key={'tab' + index}
21
+ className={tab === activeTab ? 'active' : ''}
22
+ >
23
+ <a
24
+ href={'#' + tab}
25
+ onClick={() => setActiveTab(tab)}
26
+ >
27
+ {tabs[tab].label}
28
+ </a>
29
+ </li>
30
+ );
31
+ })}
32
+ </nav>
33
+ );
34
+ };
35
+
36
+ return (
37
+ <header>
38
+ <div className="container">
39
+ {renderHead()}
40
+ {renderNavbar()}
41
+ </div>
42
+ </header>
43
+ );
44
+ };
45
+
46
+ export default Header;
dashboard/src/components/ModuleCard.js ADDED
@@ -0,0 +1,128 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* global obfxDash */
2
+ import { DashboardContext, ModulesContext } from './DashboardContext';
3
+ import ModuleSettings from './ModuleSettings';
4
+ import { requestData } from '../utils/rest';
5
+
6
+ import { Dashicon, ExternalLink, ToggleControl } from '@wordpress/components';
7
+ import { renderToString, useContext, useState } from '@wordpress/element';
8
+ import { __ } from '@wordpress/i18n';
9
+
10
+ const { root, toggleStateRoute, options } = obfxDash;
11
+
12
+ const ModuleCard = ({ slug, details }) => {
13
+ const refreshAfterEnabled = details.refresh_after_enabled;
14
+ const activeDefault = details.active_default;
15
+ const [loading, setLoading] = useState(false);
16
+ const { modulesData, setModulesData } = useContext(ModulesContext);
17
+ const { setToast } = useContext(DashboardContext);
18
+ const moduleStatus = modulesData.module_status;
19
+
20
+ const updateModuleStatus = (value) => {
21
+ setLoading(true);
22
+
23
+ const dataToSend = { slug, value };
24
+ requestData(root + toggleStateRoute, false, dataToSend).then((r) => {
25
+ toggleStatusCallback(r, value);
26
+ });
27
+ };
28
+
29
+ const toggleStatusCallback = (r, value) => {
30
+ if (r.type !== 'success') {
31
+ setLoading(false);
32
+ setToast(
33
+ __(
34
+ 'Could not activate module. Please try again.',
35
+ 'themeisle-companion'
36
+ )
37
+ );
38
+ return;
39
+ }
40
+
41
+ if (refreshAfterEnabled) {
42
+ window.location.reload();
43
+ }
44
+
45
+ if (!moduleStatus[slug]) {
46
+ moduleStatus[slug] = {};
47
+ }
48
+
49
+ moduleStatus[slug].active = value;
50
+ setModulesData(modulesData);
51
+ setLoading(false);
52
+ setToast(
53
+ (value
54
+ ? __('Module activated', 'themeisle-companion')
55
+ : __('Module deactivated', 'themeisle-companion')) +
56
+ ` (${details.name})`
57
+ );
58
+ };
59
+
60
+ const renderDescription = (description) => {
61
+ const elements = [];
62
+ while (description.indexOf('<a') >= 0) {
63
+ const start = description.indexOf('<a');
64
+ const end = description.indexOf('</a>');
65
+
66
+ elements.push(description.slice(0, start));
67
+
68
+ const hrefStart = description.indexOf('href="') + 'href="'.length;
69
+ const hrefEnd = description.indexOf('"', hrefStart);
70
+ const href = description.slice(hrefStart, hrefEnd);
71
+
72
+ const anchorText = description.slice(
73
+ description.indexOf('>', start) + 1,
74
+ end
75
+ );
76
+
77
+ elements.push(
78
+ renderToString(
79
+ <ExternalLink href={href}>{anchorText}</ExternalLink>
80
+ )
81
+ );
82
+
83
+ description = description.slice(end + '</a>'.length);
84
+ }
85
+
86
+ elements.push(description);
87
+ return (
88
+ <p
89
+ className="description"
90
+ dangerouslySetInnerHTML={{ __html: elements.join(' ') }}
91
+ />
92
+ );
93
+ };
94
+
95
+ return (
96
+ <div className="module-card">
97
+ <div className="module-card-header">
98
+ <h3 className="title">{details.name}</h3>
99
+ <div className="toggle-wrap">
100
+ {loading && (
101
+ <Dashicon
102
+ size={18}
103
+ icon="update"
104
+ className="is-loading"
105
+ />
106
+ )}
107
+ <ToggleControl
108
+ checked={
109
+ moduleStatus[slug] &&
110
+ moduleStatus[slug].active !== undefined
111
+ ? moduleStatus[slug].active
112
+ : activeDefault
113
+ }
114
+ onChange={updateModuleStatus}
115
+ />
116
+ </div>
117
+ </div>
118
+ <div className="module-card-content">
119
+ {renderDescription(details.description)}
120
+ </div>
121
+ {moduleStatus[slug] &&
122
+ moduleStatus[slug].active &&
123
+ options[slug].length > 0 && <ModuleSettings slug={slug} />}
124
+ </div>
125
+ );
126
+ };
127
+
128
+ export default ModuleCard;
dashboard/src/components/ModuleSettings.js ADDED
@@ -0,0 +1,164 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* global obfxDash */
2
+ import { DashboardContext, ModulesContext } from './DashboardContext';
3
+ import { renderOption } from '../utils/common';
4
+ import { requestData } from '../utils/rest';
5
+
6
+ import classnames from 'classnames';
7
+ import { isEqual } from 'lodash';
8
+
9
+ import { Dashicon, Button } from '@wordpress/components';
10
+ import { useContext, useState } from '@wordpress/element';
11
+ import { __ } from '@wordpress/i18n';
12
+
13
+ const { options, root, setSettingsRoute } = obfxDash;
14
+
15
+ const ModuleSettings = ({ slug }) => {
16
+ const { modulesData, setModulesData } = useContext(ModulesContext);
17
+ const { setToast } = useContext(DashboardContext);
18
+ const [open, setOpen] = useState(false);
19
+ const [loading, setLoading] = useState(false);
20
+ const moduleSettings = modulesData.module_settings[slug] || {};
21
+ const [tempData, setTempData] = useState({
22
+ ...moduleSettings,
23
+ });
24
+
25
+ const loadingIcon = (
26
+ <Dashicon size={18} icon="update" className="is-loading" />
27
+ );
28
+
29
+ const changeOption = (name, newValue) => {
30
+ const newTemp = tempData;
31
+ newTemp[name] = newValue;
32
+ setTempData({ ...newTemp });
33
+ };
34
+
35
+ const sendData = () => {
36
+ setLoading(true);
37
+
38
+ const dataToSend = {
39
+ slug,
40
+ value: tempData,
41
+ };
42
+
43
+ requestData(root + setSettingsRoute, false, dataToSend).then((r) => {
44
+ if (r.type !== 'success') {
45
+ setTempData({ ...moduleSettings });
46
+ setLoading(false);
47
+ setToast(
48
+ __(
49
+ 'Could not update options. Please try again.',
50
+ 'themeisle-companion'
51
+ )
52
+ );
53
+ return;
54
+ }
55
+
56
+ modulesData.module_settings[slug] = { ...tempData };
57
+ setModulesData({ ...modulesData });
58
+ setLoading(false);
59
+ setToast(
60
+ __('Options updated successfully.', 'themeisle-companion')
61
+ );
62
+ });
63
+ };
64
+
65
+ const getContent = () => {
66
+ const content = [];
67
+
68
+ for (let i = 0; i < options[slug].length; i++) {
69
+ let element = options[slug][i];
70
+ if (element.title && element.label) {
71
+ content.push(<p className="title"> {element.title} </p>);
72
+ }
73
+
74
+ if (element.hasOwnProperty('before_wrap')) {
75
+ const row = [];
76
+ const active =
77
+ tempData[element.id] === '1' ||
78
+ (!tempData[element.id] && element.default === '1');
79
+
80
+ while (true) {
81
+ row.push(
82
+ renderOption(element, tempData, changeOption, setToast)
83
+ );
84
+ if (element.hasOwnProperty('after_wrap')) break;
85
+ element = options[slug][++i];
86
+ }
87
+
88
+ const classes = classnames([
89
+ 'settings-row',
90
+ active && 'active',
91
+ ]);
92
+ content.push(<div className={classes}> {row} </div>);
93
+ continue;
94
+ }
95
+
96
+ if (element.type === 'checkbox') {
97
+ const row = [];
98
+ while (element.type === 'checkbox') {
99
+ row.push(
100
+ renderOption(element, tempData, changeOption, setToast)
101
+ );
102
+ element = options[slug][++i];
103
+ }
104
+ content.push(<div className="checkboxes-row"> {row} </div>);
105
+ continue;
106
+ }
107
+
108
+ content.push(
109
+ renderOption(element, tempData, changeOption, setToast)
110
+ );
111
+ }
112
+
113
+ return content;
114
+ };
115
+
116
+ return (
117
+ <div
118
+ className={classnames([
119
+ 'module-settings',
120
+ open ? 'open' : 'closed',
121
+ ])}
122
+ >
123
+ <button
124
+ aria-expanded={open}
125
+ className="accordion-header"
126
+ onClick={() => setOpen(!open)}
127
+ >
128
+ <div className="accordion-title"> Settings </div>
129
+ <Dashicon icon={open ? 'arrow-up-alt2' : 'arrow-down-alt2'} />
130
+ </button>
131
+ {open && (
132
+ <div
133
+ className={classnames([
134
+ 'accordion-content',
135
+ loading ? 'loading' : '',
136
+ ])}
137
+ >
138
+ {getContent()}
139
+ <div className="buttons-container">
140
+ <Button
141
+ isSecondary
142
+ className="obfx-button"
143
+ onClick={() => setOpen(false)}
144
+ >
145
+ {__('Close', 'themeisle-companion')}
146
+ </Button>
147
+ <Button
148
+ isPrimary
149
+ disabled={isEqual(tempData, moduleSettings)}
150
+ className="obfx-button"
151
+ onClick={sendData}
152
+ >
153
+ {loading
154
+ ? loadingIcon
155
+ : __('Save', 'themeisle-companion')}
156
+ </Button>
157
+ </div>
158
+ </div>
159
+ )}
160
+ </div>
161
+ );
162
+ };
163
+
164
+ export default ModuleSettings;
dashboard/src/components/PluginCard.js ADDED
@@ -0,0 +1,121 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { DashboardContext, PluginsContext } from './DashboardContext';
2
+ import { get } from '../utils/rest';
3
+ import classnames from 'classnames';
4
+
5
+ import { Button, Dashicon } from '@wordpress/components';
6
+ import { useContext, useState } from '@wordpress/element';
7
+ import { __ } from '@wordpress/i18n';
8
+
9
+ const PluginCard = ({ slug, data }) => {
10
+ const { banner, name, description, version, author } = data;
11
+ const { pluginsData, setPluginsData } = useContext(PluginsContext);
12
+ const { setToast } = useContext(DashboardContext);
13
+ const [inProgress, setInProgress] = useState(false);
14
+ const pluginState = pluginsData[slug].action;
15
+
16
+ const setPluginState = (newStatus) => {
17
+ pluginsData[slug].action = newStatus;
18
+ setPluginsData(pluginsData);
19
+ };
20
+
21
+ const errorMessage = __(
22
+ 'Something went wrong. Please try again.',
23
+ 'themeisle-companion'
24
+ );
25
+
26
+ const stringMap = {
27
+ install: {
28
+ static: __('Install', 'neve'),
29
+ progress: __('Installing', 'neve'),
30
+ },
31
+ activate: {
32
+ static: __('Activate', 'neve'),
33
+ progress: __('Activating', 'neve'),
34
+ },
35
+ deactivate: {
36
+ static: __('Deactivate', 'neve'),
37
+ progress: __('Deactivating', 'neve'),
38
+ },
39
+ };
40
+
41
+ const handleActionButton = () => {
42
+ setInProgress(true);
43
+ if ('install' === pluginState) {
44
+ installPlugin(slug).then((r) => {
45
+ if (!r.success) {
46
+ setInProgress(false);
47
+ setToast(errorMessage);
48
+ return;
49
+ }
50
+ setPluginState('activate');
51
+ setInProgress(false);
52
+ });
53
+ return;
54
+ }
55
+
56
+ get(data[pluginState], true).then((r) => {
57
+ if (!r.ok) {
58
+ setInProgress(false);
59
+ setToast(errorMessage);
60
+ return;
61
+ }
62
+
63
+ if ('activate' === pluginState) {
64
+ setPluginState('deactivate');
65
+ } else {
66
+ setPluginState('activate');
67
+ }
68
+
69
+ setInProgress(false);
70
+ });
71
+ };
72
+
73
+ return (
74
+ <div className={classnames(['card', 'plugin', slug])}>
75
+ <div className="card-header">
76
+ <img src={banner} alt={__('Banner Image', 'name')} />
77
+ </div>
78
+ <div className="card-body">
79
+ <h3 className="card-title">{name}</h3>
80
+ <p className="card-description">{description}</p>
81
+ </div>
82
+ <div className="card-footer">
83
+ <div className="plugin-data">
84
+ <span className="version">v{version}</span> |{' '}
85
+ <span className="author">{author}</span>
86
+ </div>
87
+ <Button
88
+ className="plugin-action"
89
+ isPrimary={['install', 'activate'].includes(pluginState)}
90
+ isSecondary={pluginState === 'deactivate'}
91
+ disabled={inProgress}
92
+ onClick={handleActionButton}
93
+ >
94
+ {!inProgress && stringMap[pluginState].static}
95
+ {inProgress && (
96
+ <span style={{ display: 'flex', alignItems: 'center' }}>
97
+ <Dashicon icon="update" />
98
+ {stringMap[pluginState].progress + '...'}
99
+ </span>
100
+ )}
101
+ </Button>
102
+ </div>
103
+ </div>
104
+ );
105
+ };
106
+
107
+ const installPlugin = (slug) => {
108
+ return new Promise((resolve) => {
109
+ wp.updates.ajax('install-plugin', {
110
+ slug,
111
+ success: () => {
112
+ resolve({ success: true });
113
+ },
114
+ error: () => {
115
+ resolve({ success: false });
116
+ },
117
+ });
118
+ });
119
+ };
120
+
121
+ export default PluginCard;
dashboard/src/components/RecommendedPlugins.js ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* global obfxDash */
2
+ import { PluginsContext } from './DashboardContext';
3
+ import PluginCard from './PluginCard';
4
+ import { useState } from '@wordpress/element';
5
+
6
+ const RecommendedPlugins = () => {
7
+ const { plugins } = obfxDash;
8
+ const [pluginsData, setPluginsData] = useState(plugins);
9
+
10
+ if (!plugins) {
11
+ return null;
12
+ }
13
+
14
+ return (
15
+ <PluginsContext.Provider value={{ pluginsData, setPluginsData }}>
16
+ <div className="plugins-grid">
17
+ {Object.keys(plugins).map((slug) => {
18
+ return (
19
+ <PluginCard
20
+ key={slug}
21
+ slug={slug}
22
+ data={plugins[slug]}
23
+ />
24
+ );
25
+ })}
26
+ </div>
27
+ </PluginsContext.Provider>
28
+ );
29
+ };
30
+
31
+ export default RecommendedPlugins;
dashboard/src/components/Snackbar.js ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { DashboardContext } from './DashboardContext';
2
+
3
+ import { Snackbar } from '@wordpress/components';
4
+ import { useContext, useEffect } from '@wordpress/element';
5
+
6
+ const SnackbarComponent = () => {
7
+ const { toast, setToast } = useContext(DashboardContext);
8
+ useEffect(() => {
9
+ setTimeout(() => {
10
+ setToast(null);
11
+ }, 3000);
12
+ }, []);
13
+
14
+ const style = {
15
+ opacity: null === toast ? 0 : 1,
16
+ };
17
+
18
+ return (
19
+ <div style={style}>
20
+ <Snackbar className="dash-notice">{toast}</Snackbar>
21
+ </div>
22
+ );
23
+ };
24
+
25
+ export default SnackbarComponent;
dashboard/src/dashboard.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ import App from './components/App';
2
+ import { render } from '@wordpress/element';
3
+
4
+ const Root = () => <App />;
5
+ render(<Root />, document.getElementById('obfx-dash'));
dashboard/src/scss/_core-overrides.scss ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #obfx-dash {
2
+ --wp-admin-theme-color: #{ $obfx-purple };
3
+ --wp-admin-theme-color-darker-10: #{ darken( $obfx-purple, 10% ) };
4
+ --wp-admin-theme-color-darker-20: #{ darken( $obfx-purple, 20% ) };
5
+
6
+ .module-settings .accordion-content .components-radio-control__input[type=radio]:checked:before {
7
+ width: 1px;
8
+ height: 1px;
9
+ }
10
+
11
+ .css-bmkl3j-Container {
12
+ width: unset;
13
+ }
14
+ }
15
+
16
+ #wpcontent {
17
+ padding-left: 0 !important;
18
+ }
19
+
20
+ .ob-overflow-off {
21
+ overflow: hidden !important;
22
+ }
dashboard/src/scss/_general.scss ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .container {
2
+ padding: 0 20px;
3
+ max-width: 1300px;
4
+ margin-left: auto;
5
+ margin-right: auto;
6
+ }
7
+
8
+ .dash-notice {
9
+ position: fixed;
10
+ bottom: 30px;
11
+ margin-left: 30px;
12
+ }
13
+
14
+ @keyframes spin {
15
+ from {
16
+ transform:rotate(0deg);
17
+ }
18
+ to {
19
+ transform:rotate(360deg);
20
+ }
21
+ }
22
+
dashboard/src/scss/_vars.scss ADDED
@@ -0,0 +1,2 @@
 
 
1
+ $obfx-purple: #5a65b0;
2
+ $border-grey: #e1e1e1;
dashboard/src/scss/components/_available-modules.scss ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ .modules-container {
2
+ padding-top: 20px;
3
+ display: flex;
4
+ flex-direction: column;
5
+ row-gap: 20px;
6
+ }
dashboard/src/scss/components/_header.scss ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "../vars";
2
+
3
+ header {
4
+ background-color: #fff;
5
+ border-bottom: 1px solid #e1e1e1;
6
+
7
+ .top {
8
+ padding: 65px 0 50px 0;
9
+ display: flex;
10
+
11
+ img {
12
+ max-height: 100%;
13
+ }
14
+
15
+ h1 {
16
+ font-size: 45px;
17
+ margin-left: 10px;
18
+ color: inherit;
19
+ }
20
+ }
21
+
22
+ .navigation {
23
+ display: flex;
24
+ list-style: none;
25
+ text-decoration: none;
26
+ font-weight: 600;
27
+ line-height: 1.5;
28
+ padding-bottom: 20px;
29
+ flex-wrap: nowrap;
30
+ font-size: 19px;
31
+
32
+ li {
33
+ margin-right: 50px;
34
+
35
+ a {
36
+ color: inherit;
37
+ text-decoration: none;
38
+ box-shadow: none;
39
+ }
40
+
41
+ &.active {
42
+ color: $obfx-purple !important;
43
+ }
44
+ }
45
+ }
46
+ }
dashboard/src/scss/components/_module-card.scss ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .module-card {
2
+ background-color: #fff;
3
+ border: 1px solid $border-grey;
4
+ box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
5
+
6
+ .module-card-header {
7
+ padding: 20px;
8
+ border-bottom: 1px solid $border-grey;
9
+ display: flex;
10
+ position: relative;
11
+
12
+ .title {
13
+ margin: 0;
14
+ font-size: 18px;
15
+ line-height: 1.5;
16
+ color: inherit;
17
+ }
18
+
19
+ .toggle-wrap {
20
+ margin-left: auto;
21
+ display: flex;
22
+ align-items: center;
23
+
24
+ .dashicon {
25
+ animation-name: spin;
26
+ animation-duration: 2000ms;
27
+ animation-iteration-count: infinite;
28
+ animation-timing-function: linear;
29
+ }
30
+
31
+ div {
32
+ margin-bottom: 0;
33
+ margin-left: 5px;
34
+ }
35
+
36
+ span {
37
+ margin-right: 0;
38
+ }
39
+ }
40
+ }
41
+
42
+ .module-card-content {
43
+ padding: 20px;
44
+
45
+ .description {
46
+ margin: 0;
47
+ font-size: 15px;
48
+ color: #616161;
49
+ }
50
+ }
51
+ }
dashboard/src/scss/components/_module-settings.scss ADDED
@@ -0,0 +1,104 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .module-settings {
2
+ border-top: 1px solid #e1e1e1;
3
+
4
+ &.open .accordion-header .accordion-title {
5
+ color: #3c434a;
6
+ }
7
+
8
+ .accordion-header {
9
+ padding: 15px 20px;
10
+ background-color: #fff;
11
+ outline: none;
12
+ border: none;
13
+ width: 100%;
14
+ display: flex;
15
+ cursor: pointer;
16
+
17
+ .accordion-title {
18
+ margin-right: auto;
19
+ font-size: 15px;
20
+ font-weight: 600;
21
+ color: $obfx-purple;
22
+ transition-duration: .25s;
23
+ transition-timing-function: ease-out;
24
+ }
25
+
26
+ .dashicon {
27
+ margin-left: auto;
28
+ color: #646D82;
29
+ }
30
+ }
31
+
32
+ .accordion-content {
33
+ padding: 15px 20px;
34
+ display: flex;
35
+ flex-direction: column;
36
+ row-gap: 15px;
37
+
38
+ .title {
39
+ margin: 0;
40
+ }
41
+
42
+ .checkboxes-row {
43
+ display: flex;
44
+ column-gap: 30px;
45
+ }
46
+
47
+ .select-wrap {
48
+ display: flex;
49
+ flex-direction: row;
50
+ }
51
+
52
+ .obfx-google {
53
+ margin-right: 10px;
54
+ }
55
+
56
+ .settings-row {
57
+ display: flex;
58
+ column-gap: 70px;
59
+
60
+ > * {
61
+ transition-duration: .1s;
62
+ transition-timing-function: ease;
63
+ }
64
+
65
+ > :not(:first-child) {
66
+ opacity: 0;
67
+ pointer-events: none;
68
+ }
69
+
70
+ &.active > :not(:first-child) {
71
+ opacity: 1;
72
+ pointer-events: auto;
73
+ }
74
+
75
+ > :first-child {
76
+ width: 150px;
77
+ }
78
+ }
79
+
80
+ &.loading {
81
+ opacity: .75;
82
+ }
83
+
84
+ .buttons-container {
85
+ margin-left: auto;
86
+ display: flex;
87
+ column-gap: 10px;
88
+ justify-content: flex-end;
89
+ position: relative;
90
+
91
+ .obfx-button {
92
+ width: 60px;
93
+ justify-content: center;
94
+
95
+ .dashicon {
96
+ animation-name: spin;
97
+ animation-duration: 2000ms;
98
+ animation-iteration-count: infinite;
99
+ animation-timing-function: linear;
100
+ }
101
+ }
102
+ }
103
+ }
104
+ }
dashboard/src/scss/components/_plugin-card.scss ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .card.plugin {
2
+ padding: 0;
3
+ max-width: 100%;
4
+ display: flex;
5
+ flex-direction: column;
6
+ border: 1px solid $border-grey;
7
+
8
+ .card-header {
9
+ img {
10
+ width: 100%;
11
+ max-width: 100%;
12
+ border-bottom: 1px solid $border-grey;
13
+ }
14
+ }
15
+
16
+ .card-body {
17
+ padding: 20px;
18
+
19
+ .card-title {
20
+ margin: 0 0 20px;
21
+ line-height: 150%;
22
+ }
23
+ }
24
+
25
+ .card-footer {
26
+ border-top: 1px solid $border-grey;
27
+ padding: 20px 15px 20px 20px;
28
+ display: flex;
29
+ align-items: center;
30
+ margin-top: auto;
31
+ position: relative;
32
+
33
+ .plugin-data {
34
+ font-size: 14px;
35
+ color: #616161;
36
+ display: flex;
37
+ align-items: center;
38
+ }
39
+ }
40
+
41
+ .version {
42
+ margin-right: 5px;
43
+ }
44
+
45
+ .author {
46
+ margin-left: 5px;
47
+ max-width: 200px;
48
+ overflow: hidden;
49
+ white-space: nowrap;
50
+ text-overflow: ellipsis;
51
+ }
52
+
53
+ .plugin-action {
54
+ margin-left: auto;
55
+ .dashicon {
56
+ margin-right: 5px;
57
+ animation-name: spin;
58
+ animation-duration: 2000ms;
59
+ animation-iteration-count: infinite;
60
+ animation-timing-function: linear;
61
+ }
62
+ }
63
+ }
dashboard/src/scss/components/_recommended-plugins.scss ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ .plugins-grid {
2
+ display: grid;
3
+ grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
4
+ column-gap: 30px;
5
+ row-gap: 20px;
6
+ }
dashboard/src/style.scss ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @import "scss/vars";
2
+ @import "scss/core-overrides";
3
+
4
+ #obfx-dash {
5
+ @import "scss/general";
6
+ @import "scss/components/header";
7
+ @import "scss/components/available-modules";
8
+ @import "scss/components/module-card";
9
+ @import "scss/components/module-settings";
10
+ @import "scss/components/recommended-plugins";
11
+ @import "scss/components/plugin-card";
12
+ }
dashboard/src/utils/common.js ADDED
@@ -0,0 +1,160 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import AvailableModules from '../components/AvailableModules';
2
+ import RecommendedPlugins from '../components/RecommendedPlugins';
3
+ import { post } from './rest';
4
+
5
+ import {
6
+ Button,
7
+ CheckboxControl,
8
+ RadioControl,
9
+ SelectControl,
10
+ TextControl,
11
+ ToggleControl,
12
+ } from '@wordpress/components';
13
+ import { __ } from '@wordpress/i18n';
14
+
15
+ export const tabs = {
16
+ modules: {
17
+ label: __('Available Modules', 'themeisle-companion'),
18
+ render: () => <AvailableModules />,
19
+ },
20
+ plugins: {
21
+ label: __('Recommended Plugins', 'themeisle-companion'),
22
+ render: () => <RecommendedPlugins />,
23
+ },
24
+ };
25
+
26
+ export const getTabHash = () => {
27
+ let hash = window.location.hash;
28
+
29
+ if ('string' !== typeof window.location.hash) {
30
+ return null;
31
+ }
32
+
33
+ hash = hash.substring(1);
34
+
35
+ if (!Object.keys(tabs).includes(hash)) {
36
+ return null;
37
+ }
38
+
39
+ return hash;
40
+ };
41
+
42
+ const unregister = (url, setToast) => {
43
+ post(url, 'deactivate=unregister').then((r) => {
44
+ if (r === false) {
45
+ setToast(
46
+ __(
47
+ 'Could not unregister the site. Please try again.',
48
+ 'themeisle-companion'
49
+ )
50
+ );
51
+ return;
52
+ }
53
+ window.location.reload();
54
+ });
55
+ };
56
+
57
+ /**
58
+ * Decodes a html encoded string while preserving tags
59
+ *
60
+ * @param {string} html encoded string
61
+ * @return {string} decoded string
62
+ */
63
+ const decodeHtml = (html) => {
64
+ const txt = document.createElement('textarea');
65
+ txt.innerHTML = html;
66
+ return txt.value;
67
+ };
68
+
69
+ export const renderOption = (setting, tempData, changeOption, setToast) => {
70
+ const selectedValue =
71
+ tempData[setting.id] !== undefined
72
+ ? tempData[setting.id]
73
+ : setting.default;
74
+
75
+ switch (setting.type) {
76
+ case 'checkbox':
77
+ return (
78
+ <CheckboxControl
79
+ label={setting.label}
80
+ checked={selectedValue === '1'}
81
+ onChange={(newValue) =>
82
+ changeOption(setting.id, newValue ? '1' : '0')
83
+ }
84
+ />
85
+ );
86
+ case 'radio':
87
+ return (
88
+ <RadioControl
89
+ label={setting.title}
90
+ options={setting.options.map((label, value) => {
91
+ return { label, value };
92
+ })}
93
+ selected={parseInt(selectedValue)}
94
+ onChange={(newValue) => changeOption(setting.id, newValue)}
95
+ />
96
+ );
97
+ case 'toggle':
98
+ return (
99
+ <ToggleControl
100
+ label={
101
+ <div
102
+ dangerouslySetInnerHTML={{
103
+ __html: setting.label,
104
+ }}
105
+ />
106
+ }
107
+ checked={selectedValue === '1'}
108
+ onChange={(newValue) =>
109
+ changeOption(setting.id, newValue ? '1' : '0')
110
+ }
111
+ />
112
+ );
113
+ case 'select':
114
+ return (
115
+ <div className="select-wrap">
116
+ <SelectControl
117
+ label={setting.title}
118
+ value={selectedValue}
119
+ options={Object.entries(setting.options).map(
120
+ ([value, label]) => {
121
+ return { value, label };
122
+ }
123
+ )}
124
+ onChange={(newValue) =>
125
+ changeOption(setting.id, newValue)
126
+ }
127
+ />
128
+ </div>
129
+ );
130
+ case 'text':
131
+ return (
132
+ <TextControl
133
+ label={setting.title}
134
+ value={decodeHtml(selectedValue)}
135
+ onChange={(newValue) => changeOption(setting.id, newValue)}
136
+ />
137
+ );
138
+ case 'link':
139
+ const isUnregister = setting.id === 'analytics_accounts_unregister';
140
+ return (
141
+ <div className="select-wrap">
142
+ <Button
143
+ isPrimary={!isUnregister}
144
+ isDestructive={isUnregister}
145
+ href={setting.url ? setting.url : null}
146
+ onClick={
147
+ isUnregister &&
148
+ (() => {
149
+ unregister(setting.unregisterURL, setToast);
150
+ })
151
+ }
152
+ >
153
+ <div
154
+ dangerouslySetInnerHTML={{ __html: setting.text }}
155
+ />
156
+ </Button>
157
+ </div>
158
+ );
159
+ }
160
+ };
dashboard/src/utils/rest.js ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* global obfxDash */
2
+ import fetch from 'node-fetch';
3
+
4
+ export const requestData = async (
5
+ route,
6
+ simple = false,
7
+ data = {},
8
+ urlEncoded = false,
9
+ method = 'POST'
10
+ ) => {
11
+ const options = {
12
+ method,
13
+ headers: {
14
+ Accept: 'application/json',
15
+ 'Content-Type': urlEncoded
16
+ ? 'application/x-www-form-urlencoded'
17
+ : 'application/json',
18
+ 'x-wp-nonce': obfxDash.nonce,
19
+ },
20
+ };
21
+
22
+ if ('POST' === method) {
23
+ options.body = urlEncoded ? data : JSON.stringify(data);
24
+ }
25
+
26
+ return await fetch(route, options).then((response) => {
27
+ return simple ? response : response.json();
28
+ });
29
+ };
30
+
31
+ export const get = (route, simple) => {
32
+ return requestData(route, simple, {}, 'GET');
33
+ };
34
+
35
+ export const post = (route, data) => {
36
+ return requestData(route, false, data, true);
37
+ };
languages/themeisle-companion.pot CHANGED
@@ -2,10 +2,10 @@
2
  # This file is distributed under the GPL-2.0+.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Orbit Fox Companion 2.10.7\n"
6
  "Report-Msgid-Bugs-To: "
7
  "https://github.com/Codeinwp/themeisle-companion/issues\n"
8
- "POT-Creation-Date: 2021-08-02 13:00:35+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=utf-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
@@ -55,32 +55,36 @@ msgstr ""
55
  msgid "50"
56
  msgstr ""
57
 
58
- #: core/app/class-orbit-fox-admin.php:117
59
- msgid "Activating "
60
  msgstr ""
61
 
62
- #: core/app/class-orbit-fox-admin.php:118
63
- msgid "Installing ... "
64
  msgstr ""
65
 
66
- #: core/app/class-orbit-fox-admin.php:138
67
- #: core/app/class-orbit-fox-admin.php:139 core/app/views/modules-page.php:45
 
 
 
 
68
  msgid "Orbit Fox"
69
  msgstr ""
70
 
71
- #: core/app/class-orbit-fox-admin.php:149
72
  msgid "Orbit Fox General Options"
73
  msgstr ""
74
 
75
- #: core/app/class-orbit-fox-admin.php:149
76
  msgid "General Settings"
77
  msgstr ""
78
 
79
- #: core/app/class-orbit-fox-admin.php:178
80
  msgid "opens in a new tab"
81
  msgstr ""
82
 
83
- #: core/app/class-orbit-fox-admin.php:188
84
  #. translators: %1$s first alternative url, %2$s second alternative url, %3$s
85
  #. third alternative url.
86
  msgid ""
@@ -90,77 +94,29 @@ msgid ""
90
  "provide more options/integrations and faster checks."
91
  msgstr ""
92
 
93
- #: core/app/class-orbit-fox-admin.php:219
94
  #. translators: Go to url.
95
  msgid ""
96
  "You have activated Orbit Fox plugin! Go to the %s to get started with the "
97
  "extra features."
98
  msgstr ""
99
 
100
- #: core/app/class-orbit-fox-admin.php:219
101
  msgid "Dashboard Page"
102
  msgstr ""
103
 
104
- #: core/app/class-orbit-fox-admin.php:271
105
- #: core/app/class-orbit-fox-admin.php:379
106
- msgid "Could not process the request!"
107
- msgstr ""
108
-
109
- #: core/app/class-orbit-fox-admin.php:296
110
  msgid "No module found! No data was updated."
111
  msgstr ""
112
 
113
- #: core/app/class-orbit-fox-admin.php:302
114
  msgid "Something went wrong, data might not be saved!"
115
  msgstr ""
116
 
117
- #: core/app/class-orbit-fox-admin.php:306
118
  msgid "Options updated, successfully!"
119
  msgstr ""
120
 
121
- #: core/app/class-orbit-fox-admin.php:404
122
- msgid "No module found!"
123
- msgstr ""
124
-
125
- #: core/app/class-orbit-fox-admin.php:408
126
- msgid "Something went wrong, can not change module status!"
127
- msgstr ""
128
-
129
- #: core/app/class-orbit-fox-admin.php:413
130
- msgid "Module status changed!"
131
- msgstr ""
132
-
133
- #: core/app/class-orbit-fox-admin.php:531
134
- msgid "No modules found."
135
- msgstr ""
136
-
137
- #: core/app/class-orbit-fox-admin.php:532
138
- msgid "Please contact support for more help."
139
- msgstr ""
140
-
141
- #: core/app/class-orbit-fox-admin.php:539
142
- msgid "No active modules."
143
- msgstr ""
144
-
145
- #: core/app/class-orbit-fox-admin.php:540
146
- msgid "Activate a module using the toggles above."
147
- msgstr ""
148
-
149
- #: core/app/class-orbit-fox-plugin-install.php:160
150
- #: vendor/codeinwp/templates-directory/class-page-templates-directory.php:457
151
- msgid "Install and activate"
152
- msgstr ""
153
-
154
- #: core/app/class-orbit-fox-plugin-install.php:164
155
- #: core/app/views/partials/module-tile-tpl.php:67
156
- #: vendor/codeinwp/templates-directory/class-page-templates-directory.php:468
157
- msgid "Activate"
158
- msgstr ""
159
-
160
- #: core/app/class-orbit-fox-plugin-install.php:179
161
- msgid "Deactivate"
162
- msgstr ""
163
-
164
  #: core/app/helpers/class-orbit-fox-render-helper.php:123
165
  msgid "No option found for provided type"
166
  msgstr ""
@@ -209,6 +165,11 @@ msgstr ""
209
  msgid "Got it!"
210
  msgstr ""
211
 
 
 
 
 
 
212
  #: core/app/views/partials/module-tile-tpl.php:72
213
  msgid "Beta module"
214
  msgstr ""
@@ -1951,7 +1912,7 @@ msgid "Author details"
1951
  msgstr ""
1952
 
1953
  #: obfx_modules/companion-legacy/init.php:67
1954
- msgid "%s enhancements "
1955
  msgstr ""
1956
 
1957
  #: obfx_modules/companion-legacy/init.php:68
@@ -2103,15 +2064,15 @@ msgstr ""
2103
  msgid "A module to integrate Google Analytics into your site easily."
2104
  msgstr ""
2105
 
2106
- #: obfx_modules/google-analytics/init.php:259
2107
  msgid "Authenticate with Google"
2108
  msgstr ""
2109
 
2110
- #: obfx_modules/google-analytics/init.php:264
2111
  msgid "Select a tracking code"
2112
  msgstr ""
2113
 
2114
- #: obfx_modules/google-analytics/init.php:291
2115
  msgid "Unregister Site"
2116
  msgstr ""
2117
 
@@ -2385,7 +2346,7 @@ msgid ""
2385
  "templates that you can import straight into your website."
2386
  msgstr ""
2387
 
2388
- #: obfx_modules/template-directory/init.php:101
2389
  #: vendor/codeinwp/templates-directory/views/template-directory-page-tpl.php:20
2390
  msgid "Orbit Fox Template Directory"
2391
  msgstr ""
@@ -3487,6 +3448,10 @@ msgstr ""
3487
  msgid "Template Directory"
3488
  msgstr ""
3489
 
 
 
 
 
3490
  #: vendor/codeinwp/templates-directory/views/template-directory-page-tpl.php:21
3491
  msgid "Sync Templates"
3492
  msgstr ""
2
  # This file is distributed under the GPL-2.0+.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Orbit Fox Companion 2.10.8\n"
6
  "Report-Msgid-Bugs-To: "
7
  "https://github.com/Codeinwp/themeisle-companion/issues\n"
8
+ "POT-Creation-Date: 2021-09-29 10:37:43+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=utf-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
55
  msgid "50"
56
  msgstr ""
57
 
58
+ #: core/app/class-orbit-fox-admin.php:104
59
+ msgid "Bad request!"
60
  msgstr ""
61
 
62
+ #: core/app/class-orbit-fox-admin.php:113
63
+ msgid "Module not found!"
64
  msgstr ""
65
 
66
+ #: core/app/class-orbit-fox-admin.php:134
67
+ msgid "Data unchanged!"
68
+ msgstr ""
69
+
70
+ #: core/app/class-orbit-fox-admin.php:253
71
+ #: core/app/class-orbit-fox-admin.php:254 core/app/views/modules-page.php:45
72
  msgid "Orbit Fox"
73
  msgstr ""
74
 
75
+ #: core/app/class-orbit-fox-admin.php:264
76
  msgid "Orbit Fox General Options"
77
  msgstr ""
78
 
79
+ #: core/app/class-orbit-fox-admin.php:264
80
  msgid "General Settings"
81
  msgstr ""
82
 
83
+ #: core/app/class-orbit-fox-admin.php:293
84
  msgid "opens in a new tab"
85
  msgstr ""
86
 
87
+ #: core/app/class-orbit-fox-admin.php:303
88
  #. translators: %1$s first alternative url, %2$s second alternative url, %3$s
89
  #. third alternative url.
90
  msgid ""
94
  "provide more options/integrations and faster checks."
95
  msgstr ""
96
 
97
+ #: core/app/class-orbit-fox-admin.php:334
98
  #. translators: Go to url.
99
  msgid ""
100
  "You have activated Orbit Fox plugin! Go to the %s to get started with the "
101
  "extra features."
102
  msgstr ""
103
 
104
+ #: core/app/class-orbit-fox-admin.php:334
105
  msgid "Dashboard Page"
106
  msgstr ""
107
 
108
+ #: core/app/class-orbit-fox-admin.php:390
 
 
 
 
 
109
  msgid "No module found! No data was updated."
110
  msgstr ""
111
 
112
+ #: core/app/class-orbit-fox-admin.php:396
113
  msgid "Something went wrong, data might not be saved!"
114
  msgstr ""
115
 
116
+ #: core/app/class-orbit-fox-admin.php:400
117
  msgid "Options updated, successfully!"
118
  msgstr ""
119
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
120
  #: core/app/helpers/class-orbit-fox-render-helper.php:123
121
  msgid "No option found for provided type"
122
  msgstr ""
165
  msgid "Got it!"
166
  msgstr ""
167
 
168
+ #: core/app/views/partials/module-tile-tpl.php:67
169
+ #: vendor/codeinwp/templates-directory/class-page-templates-directory.php:468
170
+ msgid "Activate"
171
+ msgstr ""
172
+
173
  #: core/app/views/partials/module-tile-tpl.php:72
174
  msgid "Beta module"
175
  msgstr ""
1912
  msgstr ""
1913
 
1914
  #: obfx_modules/companion-legacy/init.php:67
1915
+ msgid "%s enhancements"
1916
  msgstr ""
1917
 
1918
  #: obfx_modules/companion-legacy/init.php:68
2064
  msgid "A module to integrate Google Analytics into your site easily."
2065
  msgstr ""
2066
 
2067
+ #: obfx_modules/google-analytics/init.php:233
2068
  msgid "Authenticate with Google"
2069
  msgstr ""
2070
 
2071
+ #: obfx_modules/google-analytics/init.php:238
2072
  msgid "Select a tracking code"
2073
  msgstr ""
2074
 
2075
+ #: obfx_modules/google-analytics/init.php:266
2076
  msgid "Unregister Site"
2077
  msgstr ""
2078
 
2346
  "templates that you can import straight into your website."
2347
  msgstr ""
2348
 
2349
+ #: obfx_modules/template-directory/init.php:102
2350
  #: vendor/codeinwp/templates-directory/views/template-directory-page-tpl.php:20
2351
  msgid "Orbit Fox Template Directory"
2352
  msgstr ""
3448
  msgid "Template Directory"
3449
  msgstr ""
3450
 
3451
+ #: vendor/codeinwp/templates-directory/class-page-templates-directory.php:457
3452
+ msgid "Install and activate"
3453
+ msgstr ""
3454
+
3455
  #: vendor/codeinwp/templates-directory/views/template-directory-page-tpl.php:21
3456
  msgid "Sync Templates"
3457
  msgstr ""
obfx_modules/companion-legacy/init.php CHANGED
@@ -64,7 +64,7 @@ class Companion_Legacy_OBFX_Module extends Orbit_Fox_Module_Abstract {
64
  $theme_name = 'Shop Isle';
65
  }
66
 
67
- $this->name = sprintf( __( '%s enhancements ', 'themeisle-companion' ), $theme_name );
68
  $this->description = sprintf( __( 'Module containing frontpage improvements for %s theme.', 'themeisle-companion' ), $theme_name );
69
  }
70
 
@@ -193,7 +193,7 @@ class Companion_Legacy_OBFX_Module extends Orbit_Fox_Module_Abstract {
193
  if ( ! empty( $new_slider->image_url ) || ! empty( $new_slider->text ) || ! empty( $new_slider->subtext ) || ! empty( $new_slider->link ) ) {
194
  $new_slider_encode = json_encode( array( $new_slider ) );
195
  set_theme_mod( 'shop_isle_slider', $new_slider_encode );
196
- }
197
  } else {
198
 
199
  set_theme_mod( $shop_isle_mod_k, $shop_isle_mod_v );
@@ -244,7 +244,7 @@ class Companion_Legacy_OBFX_Module extends Orbit_Fox_Module_Abstract {
244
 
245
  /**
246
  * Wrapper method for themeisle_hestia_top_bar_default_alignment function call.
247
- *
248
  * @since 2.1.1
249
  * @access public
250
  */
@@ -269,6 +269,11 @@ class Companion_Legacy_OBFX_Module extends Orbit_Fox_Module_Abstract {
269
  * @access public
270
  */
271
  public function hestia_set_front_page() {
 
 
 
 
 
272
  themeisle_hestia_set_frontpage();
273
  }
274
 
@@ -294,8 +299,6 @@ class Companion_Legacy_OBFX_Module extends Orbit_Fox_Module_Abstract {
294
  $this->loader->add_action( 'widgets_init', $this, 'zerif_register_widgets' );
295
  }
296
 
297
-
298
-
299
  if ( $this->is_hestia() ) {
300
  $this->loader->add_action( 'after_setup_theme', $this, 'hestia_require' );
301
  $this->loader->add_action( 'after_setup_theme', $this, 'hestia_fix_duplicate_widgets' );
64
  $theme_name = 'Shop Isle';
65
  }
66
 
67
+ $this->name = sprintf( __( '%s enhancements', 'themeisle-companion' ), $theme_name );
68
  $this->description = sprintf( __( 'Module containing frontpage improvements for %s theme.', 'themeisle-companion' ), $theme_name );
69
  }
70
 
193
  if ( ! empty( $new_slider->image_url ) || ! empty( $new_slider->text ) || ! empty( $new_slider->subtext ) || ! empty( $new_slider->link ) ) {
194
  $new_slider_encode = json_encode( array( $new_slider ) );
195
  set_theme_mod( 'shop_isle_slider', $new_slider_encode );
196
+ }
197
  } else {
198
 
199
  set_theme_mod( $shop_isle_mod_k, $shop_isle_mod_v );
244
 
245
  /**
246
  * Wrapper method for themeisle_hestia_top_bar_default_alignment function call.
247
+ *
248
  * @since 2.1.1
249
  * @access public
250
  */
269
  * @access public
270
  */
271
  public function hestia_set_front_page() {
272
+ $front_page = get_option( 'page_on_front' );
273
+ $blog_page = get_option( 'page_for_posts' );
274
+ if ( ! empty( $front_page ) || ! empty( $blog_page ) ) {
275
+ return;
276
+ }
277
  themeisle_hestia_set_frontpage();
278
  }
279
 
299
  $this->loader->add_action( 'widgets_init', $this, 'zerif_register_widgets' );
300
  }
301
 
 
 
302
  if ( $this->is_hestia() ) {
303
  $this->loader->add_action( 'after_setup_theme', $this, 'hestia_require' );
304
  $this->loader->add_action( 'after_setup_theme', $this, 'hestia_fix_duplicate_widgets' );
obfx_modules/custom-fonts/init.php CHANGED
@@ -27,9 +27,10 @@ class Custom_Fonts_OBFX_Module extends Orbit_Fox_Module_Abstract {
27
  */
28
  public function __construct() {
29
  parent::__construct();
30
- $this->name = __( 'Custom fonts', 'themeisle-companion' );
31
- $this->description = __( 'Upload custom fonts and use them anywhere on your site.', 'themeisle-companion' );
32
- $this->active_default = false;
 
33
  }
34
 
35
  /**
27
  */
28
  public function __construct() {
29
  parent::__construct();
30
+ $this->name = __( 'Custom fonts', 'themeisle-companion' );
31
+ $this->description = __( 'Upload custom fonts and use them anywhere on your site.', 'themeisle-companion' );
32
+ $this->active_default = false;
33
+ $this->refresh_after_enabled = true;
34
  }
35
 
36
  /**
obfx_modules/google-analytics/init.php CHANGED
@@ -93,7 +93,6 @@ class Google_Analytics_OBFX_Module extends Orbit_Fox_Module_Abstract {
93
  */
94
  public function hooks() {
95
  $this->loader->add_action( 'rest_api_init', $this, 'register_endpoints' );
96
- $this->loader->add_action( 'admin_enqueue_scripts', $this, 'enqueue_analytics_scripts' );
97
  $this->loader->add_action( 'wp_head', $this, 'output_analytics_code', 0 );
98
  }
99
 
@@ -181,31 +180,6 @@ class Google_Analytics_OBFX_Module extends Orbit_Fox_Module_Abstract {
181
  return array();
182
  }
183
 
184
- /**
185
- * Enqueue JavaScript that requires localization.
186
- */
187
- public function enqueue_analytics_scripts() {
188
- $current_screen = get_current_screen();
189
- if ( ! isset( $current_screen->id ) ) {
190
- return array();
191
- }
192
- if ( $current_screen->id != 'toplevel_page_obfx_companion' ) {
193
- return array();
194
- }
195
-
196
- $script_handle = $this->slug . '-script';
197
- wp_register_script( $script_handle, plugin_dir_url( $this->get_dir() ) . $this->slug . '/js/script.js', array( 'jquery' ), $this->version, true );
198
- wp_localize_script(
199
- $script_handle,
200
- 'obfxAnalyticsObj',
201
- array(
202
- 'url' => $this->get_endpoint_url( '/obfx-analytics' ),
203
- 'nonce' => wp_create_nonce( 'wp_rest' ),
204
- )
205
- );
206
- wp_enqueue_script( $script_handle );
207
- }
208
-
209
  /**
210
  * Returns rest endpoint url.
211
  *
@@ -281,15 +255,17 @@ class Google_Analytics_OBFX_Module extends Orbit_Fox_Module_Abstract {
281
  'type' => 'select',
282
  'options' => $options,
283
  'default' => '-',
 
284
  ),
285
  array(
286
- 'id' => 'analytics_accounts_unregister',
287
- 'name' => 'analytics_accounts_unregister',
288
- 'type' => 'link',
289
- 'link-class' => 'btn btn-sm',
290
- 'link-id' => 'unregister-analytics',
291
- 'text' => '<i class="dashicons dashicons-no"></i>' . __( 'Unregister Site', 'themeisle-companion' ),
292
- 'url' => '',
 
293
  ),
294
  );
295
  }
93
  */
94
  public function hooks() {
95
  $this->loader->add_action( 'rest_api_init', $this, 'register_endpoints' );
 
96
  $this->loader->add_action( 'wp_head', $this, 'output_analytics_code', 0 );
97
  }
98
 
180
  return array();
181
  }
182
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
183
  /**
184
  * Returns rest endpoint url.
185
  *
255
  'type' => 'select',
256
  'options' => $options,
257
  'default' => '-',
258
+ 'title' => 'Tracking code',
259
  ),
260
  array(
261
+ 'id' => 'analytics_accounts_unregister',
262
+ 'name' => 'analytics_accounts_unregister',
263
+ 'type' => 'link',
264
+ 'link-class' => 'btn btn-sm',
265
+ 'link-id' => 'unregister-analytics',
266
+ 'text' => '<i class="dashicons dashicons-no"></i>' . __( 'Unregister Site', 'themeisle-companion' ),
267
+ 'url' => '',
268
+ 'unregisterURL' => $this->get_endpoint_url( '/obfx-analytics' ),
269
  ),
270
  );
271
  }
obfx_modules/google-analytics/js/script.js DELETED
@@ -1,49 +0,0 @@
1
- /* global obfxAnalyticsObj, console */
2
-
3
- /**
4
- * Analytics Module Admin Script
5
- *
6
- * This handles the analytics interaction.
7
- *
8
- * @since 1.0.0
9
- * @package obfx_modules/google-analytics/js
10
- *
11
- * @author ThemeIsle
12
- */
13
-
14
- var obfx_analytics = function ( $ ) {
15
- 'use strict';
16
-
17
- $(
18
- function () {
19
- $( '#unregister-analytics' ).on(
20
- 'click', function ( event ) {
21
- event.preventDefault();
22
- $.ajax(
23
- {
24
- url: obfxAnalyticsObj.url,
25
- beforeSend: function ( xhr ) {
26
- $( '#unregister-analytics' ).addClass( 'loading' );
27
- xhr.setRequestHeader( 'X-WP-Nonce', obfxAnalyticsObj.nonce );
28
- },
29
- data: {
30
- deactivate: 'unregister'
31
- },
32
- type: 'POST',
33
- error: function ( error ) {
34
- console.error( error );
35
- },
36
- complete: function () {
37
- $( '#unregister-analytics' ).removeClass( 'loading' );
38
- location.reload();
39
- }
40
- }, 'json'
41
- );
42
- return false;
43
- }
44
- );
45
- }
46
- );
47
- };
48
-
49
- obfx_analytics( jQuery );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
obfx_modules/gutenberg-blocks/init.php CHANGED
@@ -27,12 +27,12 @@ class Gutenberg_Blocks_OBFX_Module extends Orbit_Fox_Module_Abstract {
27
  /*
28
  * translators: %1$s Start anchor tag, %2$s End anchor tag
29
  */
30
- $this->description = sprintf( __( 'A set of awesome Gutenberg Blocks provided by %1$sOtter\'s%2$s plugin!', 'themeisle-companion' ), '<span class="dashicons dashicons-external"></span><a target="_blank" href="https://wordpress.org/plugins/otter-blocks/">', '</a>' );
31
  $this->description .= '<p class="notice notice-warning">' .
32
  /*
33
  * translators: %s Otter plugin link
34
  */
35
- sprintf( __( 'This module will soon be removed form Orbit Fox. To keep the content you created with this module, please install %s', 'themeisle-companion' ), '<span class="dashicons dashicons-external"></span><a target="_blank" href="https://wordpress.org/plugins/otter-blocks/">Gutenberg Blocks and Template Library by Otter</a>.' )
36
  . '</p>';
37
 
38
  if ( $this->check_new_user( 'obfx_remove_gtb_blocks' ) === false ) {
27
  /*
28
  * translators: %1$s Start anchor tag, %2$s End anchor tag
29
  */
30
+ $this->description = sprintf( __( 'A set of awesome Gutenberg Blocks provided by %1$sOtter\'s%2$s plugin!', 'themeisle-companion' ), '<a target="_blank" href="https://wordpress.org/plugins/otter-blocks/">', '</a>' );
31
  $this->description .= '<p class="notice notice-warning">' .
32
  /*
33
  * translators: %s Otter plugin link
34
  */
35
+ sprintf( __( 'This module will soon be removed form Orbit Fox. To keep the content you created with this module, please install %s', 'themeisle-companion' ), '<a target="_blank" href="https://wordpress.org/plugins/otter-blocks/">Gutenberg Blocks and Template Library by Otter</a>.' )
36
  . '</p>';
37
 
38
  if ( $this->check_new_user( 'obfx_remove_gtb_blocks' ) === false ) {
obfx_modules/mystock-import/js/script.js CHANGED
@@ -1,2 +1,61 @@
1
- /*! For license information please see script.js.LICENSE.txt */
2
- (()=>{var t={9742:(t,e)=>{"use strict";e.byteLength=function(t){var e=u(t),r=e[0],o=e[1];return 3*(r+o)/4-o},e.toByteArray=function(t){var e,r,i=u(t),s=i[0],a=i[1],p=new n(function(t,e,r){return 3*(e+r)/4-r}(0,s,a)),c=0,h=a>0?s-4:s;for(r=0;r<h;r+=4)e=o[t.charCodeAt(r)]<<18|o[t.charCodeAt(r+1)]<<12|o[t.charCodeAt(r+2)]<<6|o[t.charCodeAt(r+3)],p[c++]=e>>16&255,p[c++]=e>>8&255,p[c++]=255&e;return 2===a&&(e=o[t.charCodeAt(r)]<<2|o[t.charCodeAt(r+1)]>>4,p[c++]=255&e),1===a&&(e=o[t.charCodeAt(r)]<<10|o[t.charCodeAt(r+1)]<<4|o[t.charCodeAt(r+2)]>>2,p[c++]=e>>8&255,p[c++]=255&e),p},e.fromByteArray=function(t){for(var e,o=t.length,n=o%3,i=[],s=16383,a=0,u=o-n;a<u;a+=s)i.push(p(t,a,a+s>u?u:a+s));return 1===n?(e=t[o-1],i.push(r[e>>2]+r[e<<4&63]+"==")):2===n&&(e=(t[o-2]<<8)+t[o-1],i.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),i.join("")};for(var r=[],o=[],n="undefined"!=typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,a=i.length;s<a;++s)r[s]=i[s],o[i.charCodeAt(s)]=s;function u(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function p(t,e,o){for(var n,i,s=[],a=e;a<o;a+=3)n=(t[a]<<16&16711680)+(t[a+1]<<8&65280)+(255&t[a+2]),s.push(r[(i=n)>>18&63]+r[i>>12&63]+r[i>>6&63]+r[63&i]);return s.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},8764:(t,e,r)=>{"use strict";const o=r(9742),n=r(645),i="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=u,e.SlowBuffer=function(t){return+t!=t&&(t=0),u.alloc(+t)},e.INSPECT_MAX_BYTES=50;const s=2147483647;function a(t){if(t>s)throw new RangeError('The value "'+t+'" is invalid for option "size"');const e=new Uint8Array(t);return Object.setPrototypeOf(e,u.prototype),e}function u(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return h(t)}return p(t,e,r)}function p(t,e,r){if("string"==typeof t)return function(t,e){if("string"==typeof e&&""!==e||(e="utf8"),!u.isEncoding(e))throw new TypeError("Unknown encoding: "+e);const r=0|y(t,e);let o=a(r);const n=o.write(t,e);return n!==r&&(o=o.slice(0,n)),o}(t,e);if(ArrayBuffer.isView(t))return function(t){if(K(t,Uint8Array)){const e=new Uint8Array(t);return f(e.buffer,e.byteOffset,e.byteLength)}return l(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(K(t,ArrayBuffer)||t&&K(t.buffer,ArrayBuffer))return f(t,e,r);if("undefined"!=typeof SharedArrayBuffer&&(K(t,SharedArrayBuffer)||t&&K(t.buffer,SharedArrayBuffer)))return f(t,e,r);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');const o=t.valueOf&&t.valueOf();if(null!=o&&o!==t)return u.from(o,e,r);const n=function(t){if(u.isBuffer(t)){const e=0|d(t.length),r=a(e);return 0===r.length||t.copy(r,0,0,e),r}return void 0!==t.length?"number"!=typeof t.length||W(t.length)?a(0):l(t):"Buffer"===t.type&&Array.isArray(t.data)?l(t.data):void 0}(t);if(n)return n;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return u.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function c(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function h(t){return c(t),a(t<0?0:0|d(t))}function l(t){const e=t.length<0?0:0|d(t.length),r=a(e);for(let o=0;o<e;o+=1)r[o]=255&t[o];return r}function f(t,e,r){if(e<0||t.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(t.byteLength<e+(r||0))throw new RangeError('"length" is outside of buffer bounds');let o;return o=void 0===e&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,e):new Uint8Array(t,e,r),Object.setPrototypeOf(o,u.prototype),o}function d(t){if(t>=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|t}function y(t,e){if(u.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||K(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);const r=t.length,o=arguments.length>2&&!0===arguments[2];if(!o&&0===r)return 0;let n=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return X(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return Y(t).length;default:if(n)return o?-1:X(t).length;e=(""+e).toLowerCase(),n=!0}}function g(t,e,r){let o=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return k(this,e,r);case"utf8":case"utf-8":return P(this,e,r);case"ascii":return D(this,e,r);case"latin1":case"binary":return C(this,e,r);case"base64":return I(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,e,r);default:if(o)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),o=!0}}function m(t,e,r){const o=t[e];t[e]=t[r],t[r]=o}function _(t,e,r,o,n){if(0===t.length)return-1;if("string"==typeof r?(o=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),W(r=+r)&&(r=n?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(n)return-1;r=t.length-1}else if(r<0){if(!n)return-1;r=0}if("string"==typeof e&&(e=u.from(e,o)),u.isBuffer(e))return 0===e.length?-1:w(t,e,r,o,n);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?n?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):w(t,[e],r,o,n);throw new TypeError("val must be string, number or Buffer")}function w(t,e,r,o,n){let i,s=1,a=t.length,u=e.length;if(void 0!==o&&("ucs2"===(o=String(o).toLowerCase())||"ucs-2"===o||"utf16le"===o||"utf-16le"===o)){if(t.length<2||e.length<2)return-1;s=2,a/=2,u/=2,r/=2}function p(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(n){let o=-1;for(i=r;i<a;i++)if(p(t,i)===p(e,-1===o?0:i-o)){if(-1===o&&(o=i),i-o+1===u)return o*s}else-1!==o&&(i-=i-o),o=-1}else for(r+u>a&&(r=a-u),i=r;i>=0;i--){let r=!0;for(let o=0;o<u;o++)if(p(t,i+o)!==p(e,o)){r=!1;break}if(r)return i}return-1}function T(t,e,r,o){r=Number(r)||0;const n=t.length-r;o?(o=Number(o))>n&&(o=n):o=n;const i=e.length;let s;for(o>i/2&&(o=i/2),s=0;s<o;++s){const o=parseInt(e.substr(2*s,2),16);if(W(o))return s;t[r+s]=o}return s}function b(t,e,r,o){return $(X(e,t.length-r),t,r,o)}function E(t,e,r,o){return $(function(t){const e=[];for(let r=0;r<t.length;++r)e.push(255&t.charCodeAt(r));return e}(e),t,r,o)}function v(t,e,r,o){return $(Y(e),t,r,o)}function O(t,e,r,o){return $(function(t,e){let r,o,n;const i=[];for(let s=0;s<t.length&&!((e-=2)<0);++s)r=t.charCodeAt(s),o=r>>8,n=r%256,i.push(n),i.push(o);return i}(e,t.length-r),t,r,o)}function I(t,e,r){return 0===e&&r===t.length?o.fromByteArray(t):o.fromByteArray(t.slice(e,r))}function P(t,e,r){r=Math.min(t.length,r);const o=[];let n=e;for(;n<r;){const e=t[n];let i=null,s=e>239?4:e>223?3:e>191?2:1;if(n+s<=r){let r,o,a,u;switch(s){case 1:e<128&&(i=e);break;case 2:r=t[n+1],128==(192&r)&&(u=(31&e)<<6|63&r,u>127&&(i=u));break;case 3:r=t[n+1],o=t[n+2],128==(192&r)&&128==(192&o)&&(u=(15&e)<<12|(63&r)<<6|63&o,u>2047&&(u<55296||u>57343)&&(i=u));break;case 4:r=t[n+1],o=t[n+2],a=t[n+3],128==(192&r)&&128==(192&o)&&128==(192&a)&&(u=(15&e)<<18|(63&r)<<12|(63&o)<<6|63&a,u>65535&&u<1114112&&(i=u))}}null===i?(i=65533,s=1):i>65535&&(i-=65536,o.push(i>>>10&1023|55296),i=56320|1023&i),o.push(i),n+=s}return function(t){const e=t.length;if(e<=N)return String.fromCharCode.apply(String,t);let r="",o=0;for(;o<e;)r+=String.fromCharCode.apply(String,t.slice(o,o+=N));return r}(o)}e.kMaxLength=s,u.TYPED_ARRAY_SUPPORT=function(){try{const t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),42===t.foo()}catch(t){return!1}}(),u.TYPED_ARRAY_SUPPORT||"undefined"==typeof console||"function"!=typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(u.prototype,"parent",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.buffer}}),Object.defineProperty(u.prototype,"offset",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.byteOffset}}),u.poolSize=8192,u.from=function(t,e,r){return p(t,e,r)},Object.setPrototypeOf(u.prototype,Uint8Array.prototype),Object.setPrototypeOf(u,Uint8Array),u.alloc=function(t,e,r){return function(t,e,r){return c(t),t<=0?a(t):void 0!==e?"string"==typeof r?a(t).fill(e,r):a(t).fill(e):a(t)}(t,e,r)},u.allocUnsafe=function(t){return h(t)},u.allocUnsafeSlow=function(t){return h(t)},u.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==u.prototype},u.compare=function(t,e){if(K(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),K(e,Uint8Array)&&(e=u.from(e,e.offset,e.byteLength)),!u.isBuffer(t)||!u.isBuffer(e))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;let r=t.length,o=e.length;for(let n=0,i=Math.min(r,o);n<i;++n)if(t[n]!==e[n]){r=t[n],o=e[n];break}return r<o?-1:o<r?1:0},u.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u.alloc(0);let r;if(void 0===e)for(e=0,r=0;r<t.length;++r)e+=t[r].length;const o=u.allocUnsafe(e);let n=0;for(r=0;r<t.length;++r){let e=t[r];if(K(e,Uint8Array))n+e.length>o.length?(u.isBuffer(e)||(e=u.from(e)),e.copy(o,n)):Uint8Array.prototype.set.call(o,e,n);else{if(!u.isBuffer(e))throw new TypeError('"list" argument must be an Array of Buffers');e.copy(o,n)}n+=e.length}return o},u.byteLength=y,u.prototype._isBuffer=!0,u.prototype.swap16=function(){const t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let e=0;e<t;e+=2)m(this,e,e+1);return this},u.prototype.swap32=function(){const t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let e=0;e<t;e+=4)m(this,e,e+3),m(this,e+1,e+2);return this},u.prototype.swap64=function(){const t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let e=0;e<t;e+=8)m(this,e,e+7),m(this,e+1,e+6),m(this,e+2,e+5),m(this,e+3,e+4);return this},u.prototype.toString=function(){const t=this.length;return 0===t?"":0===arguments.length?P(this,0,t):g.apply(this,arguments)},u.prototype.toLocaleString=u.prototype.toString,u.prototype.equals=function(t){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){let t="";const r=e.INSPECT_MAX_BYTES;return t=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(t+=" ... "),"<Buffer "+t+">"},i&&(u.prototype[i]=u.prototype.inspect),u.prototype.compare=function(t,e,r,o,n){if(K(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),!u.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===o&&(o=0),void 0===n&&(n=this.length),e<0||r>t.length||o<0||n>this.length)throw new RangeError("out of range index");if(o>=n&&e>=r)return 0;if(o>=n)return-1;if(e>=r)return 1;if(this===t)return 0;let i=(n>>>=0)-(o>>>=0),s=(r>>>=0)-(e>>>=0);const a=Math.min(i,s),p=this.slice(o,n),c=t.slice(e,r);for(let t=0;t<a;++t)if(p[t]!==c[t]){i=p[t],s=c[t];break}return i<s?-1:s<i?1:0},u.prototype.includes=function(t,e,r){return-1!==this.indexOf(t,e,r)},u.prototype.indexOf=function(t,e,r){return _(this,t,e,r,!0)},u.prototype.lastIndexOf=function(t,e,r){return _(this,t,e,r,!1)},u.prototype.write=function(t,e,r,o){if(void 0===e)o="utf8",r=this.length,e=0;else if(void 0===r&&"string"==typeof e)o=e,r=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e>>>=0,isFinite(r)?(r>>>=0,void 0===o&&(o="utf8")):(o=r,r=void 0)}const n=this.length-e;if((void 0===r||r>n)&&(r=n),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");o||(o="utf8");let i=!1;for(;;)switch(o){case"hex":return T(this,t,e,r);case"utf8":case"utf-8":return b(this,t,e,r);case"ascii":case"latin1":case"binary":return E(this,t,e,r);case"base64":return v(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,t,e,r);default:if(i)throw new TypeError("Unknown encoding: "+o);o=(""+o).toLowerCase(),i=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const N=4096;function D(t,e,r){let o="";r=Math.min(t.length,r);for(let n=e;n<r;++n)o+=String.fromCharCode(127&t[n]);return o}function C(t,e,r){let o="";r=Math.min(t.length,r);for(let n=e;n<r;++n)o+=String.fromCharCode(t[n]);return o}function k(t,e,r){const o=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>o)&&(r=o);let n="";for(let o=e;o<r;++o)n+=Q[t[o]];return n}function x(t,e,r){const o=t.slice(e,r);let n="";for(let t=0;t<o.length-1;t+=2)n+=String.fromCharCode(o[t]+256*o[t+1]);return n}function A(t,e,r){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>r)throw new RangeError("Trying to access beyond buffer length")}function S(t,e,r,o,n,i){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>n||e<i)throw new RangeError('"value" argument is out of bounds');if(r+o>t.length)throw new RangeError("Index out of range")}function L(t,e,r,o,n){q(e,o,n,t,r,7);let i=Number(e&BigInt(4294967295));t[r++]=i,i>>=8,t[r++]=i,i>>=8,t[r++]=i,i>>=8,t[r++]=i;let s=Number(e>>BigInt(32)&BigInt(4294967295));return t[r++]=s,s>>=8,t[r++]=s,s>>=8,t[r++]=s,s>>=8,t[r++]=s,r}function R(t,e,r,o,n){q(e,o,n,t,r,7);let i=Number(e&BigInt(4294967295));t[r+7]=i,i>>=8,t[r+6]=i,i>>=8,t[r+5]=i,i>>=8,t[r+4]=i;let s=Number(e>>BigInt(32)&BigInt(4294967295));return t[r+3]=s,s>>=8,t[r+2]=s,s>>=8,t[r+1]=s,s>>=8,t[r]=s,r+8}function B(t,e,r,o,n,i){if(r+o>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function F(t,e,r,o,i){return e=+e,r>>>=0,i||B(t,0,r,4),n.write(t,e,r,o,23,4),r+4}function j(t,e,r,o,i){return e=+e,r>>>=0,i||B(t,0,r,8),n.write(t,e,r,o,52,8),r+8}u.prototype.slice=function(t,e){const r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e<t&&(e=t);const o=this.subarray(t,e);return Object.setPrototypeOf(o,u.prototype),o},u.prototype.readUintLE=u.prototype.readUIntLE=function(t,e,r){t>>>=0,e>>>=0,r||A(t,e,this.length);let o=this[t],n=1,i=0;for(;++i<e&&(n*=256);)o+=this[t+i]*n;return o},u.prototype.readUintBE=u.prototype.readUIntBE=function(t,e,r){t>>>=0,e>>>=0,r||A(t,e,this.length);let o=this[t+--e],n=1;for(;e>0&&(n*=256);)o+=this[t+--e]*n;return o},u.prototype.readUint8=u.prototype.readUInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),this[t]},u.prototype.readUint16LE=u.prototype.readUInt16LE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUint16BE=u.prototype.readUInt16BE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUint32LE=u.prototype.readUInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUint32BE=u.prototype.readUInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readBigUInt64LE=Z((function(t){V(t>>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const o=e+256*this[++t]+65536*this[++t]+this[++t]*2**24,n=this[++t]+256*this[++t]+65536*this[++t]+r*2**24;return BigInt(o)+(BigInt(n)<<BigInt(32))})),u.prototype.readBigUInt64BE=Z((function(t){V(t>>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const o=e*2**24+65536*this[++t]+256*this[++t]+this[++t],n=this[++t]*2**24+65536*this[++t]+256*this[++t]+r;return(BigInt(o)<<BigInt(32))+BigInt(n)})),u.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||A(t,e,this.length);let o=this[t],n=1,i=0;for(;++i<e&&(n*=256);)o+=this[t+i]*n;return n*=128,o>=n&&(o-=Math.pow(2,8*e)),o},u.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||A(t,e,this.length);let o=e,n=1,i=this[t+--o];for(;o>0&&(n*=256);)i+=this[t+--o]*n;return n*=128,i>=n&&(i-=Math.pow(2,8*e)),i},u.prototype.readInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){t>>>=0,e||A(t,2,this.length);const r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(t,e){t>>>=0,e||A(t,2,this.length);const r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readBigInt64LE=Z((function(t){V(t>>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const o=this[t+4]+256*this[t+5]+65536*this[t+6]+(r<<24);return(BigInt(o)<<BigInt(32))+BigInt(e+256*this[++t]+65536*this[++t]+this[++t]*2**24)})),u.prototype.readBigInt64BE=Z((function(t){V(t>>>=0,"offset");const e=this[t],r=this[t+7];void 0!==e&&void 0!==r||z(t,this.length-8);const o=(e<<24)+65536*this[++t]+256*this[++t]+this[++t];return(BigInt(o)<<BigInt(32))+BigInt(this[++t]*2**24+65536*this[++t]+256*this[++t]+r)})),u.prototype.readFloatLE=function(t,e){return t>>>=0,e||A(t,4,this.length),n.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return t>>>=0,e||A(t,4,this.length),n.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return t>>>=0,e||A(t,8,this.length),n.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return t>>>=0,e||A(t,8,this.length),n.read(this,t,!1,52,8)},u.prototype.writeUintLE=u.prototype.writeUIntLE=function(t,e,r,o){t=+t,e>>>=0,r>>>=0,o||S(this,t,e,r,Math.pow(2,8*r)-1,0);let n=1,i=0;for(this[e]=255&t;++i<r&&(n*=256);)this[e+i]=t/n&255;return e+r},u.prototype.writeUintBE=u.prototype.writeUIntBE=function(t,e,r,o){t=+t,e>>>=0,r>>>=0,o||S(this,t,e,r,Math.pow(2,8*r)-1,0);let n=r-1,i=1;for(this[e+n]=255&t;--n>=0&&(i*=256);)this[e+n]=t/i&255;return e+r},u.prototype.writeUint8=u.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,1,255,0),this[e]=255&t,e+1},u.prototype.writeUint16LE=u.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeUint16BE=u.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeUint32LE=u.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},u.prototype.writeUint32BE=u.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigUInt64LE=Z((function(t,e=0){return L(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeBigUInt64BE=Z((function(t,e=0){return R(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeIntLE=function(t,e,r,o){if(t=+t,e>>>=0,!o){const o=Math.pow(2,8*r-1);S(this,t,e,r,o-1,-o)}let n=0,i=1,s=0;for(this[e]=255&t;++n<r&&(i*=256);)t<0&&0===s&&0!==this[e+n-1]&&(s=1),this[e+n]=(t/i>>0)-s&255;return e+r},u.prototype.writeIntBE=function(t,e,r,o){if(t=+t,e>>>=0,!o){const o=Math.pow(2,8*r-1);S(this,t,e,r,o-1,-o)}let n=r-1,i=1,s=0;for(this[e+n]=255&t;--n>=0&&(i*=256);)t<0&&0===s&&0!==this[e+n+1]&&(s=1),this[e+n]=(t/i>>0)-s&255;return e+r},u.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},u.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||S(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigInt64LE=Z((function(t,e=0){return L(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeBigInt64BE=Z((function(t,e=0){return R(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeFloatLE=function(t,e,r){return F(this,t,e,!0,r)},u.prototype.writeFloatBE=function(t,e,r){return F(this,t,e,!1,r)},u.prototype.writeDoubleLE=function(t,e,r){return j(this,t,e,!0,r)},u.prototype.writeDoubleBE=function(t,e,r){return j(this,t,e,!1,r)},u.prototype.copy=function(t,e,r,o){if(!u.isBuffer(t))throw new TypeError("argument should be a Buffer");if(r||(r=0),o||0===o||(o=this.length),e>=t.length&&(e=t.length),e||(e=0),o>0&&o<r&&(o=r),o===r)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("Index out of range");if(o<0)throw new RangeError("sourceEnd out of bounds");o>this.length&&(o=this.length),t.length-e<o-r&&(o=t.length-e+r);const n=o-r;return this===t&&"function"==typeof Uint8Array.prototype.copyWithin?this.copyWithin(e,r,o):Uint8Array.prototype.set.call(t,this.subarray(r,o),e),n},u.prototype.fill=function(t,e,r,o){if("string"==typeof t){if("string"==typeof e?(o=e,e=0,r=this.length):"string"==typeof r&&(o=r,r=this.length),void 0!==o&&"string"!=typeof o)throw new TypeError("encoding must be a string");if("string"==typeof o&&!u.isEncoding(o))throw new TypeError("Unknown encoding: "+o);if(1===t.length){const e=t.charCodeAt(0);("utf8"===o&&e<128||"latin1"===o)&&(t=e)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(e<0||this.length<e||this.length<r)throw new RangeError("Out of range index");if(r<=e)return this;let n;if(e>>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(n=e;n<r;++n)this[n]=t;else{const i=u.isBuffer(t)?t:u.from(t,o),s=i.length;if(0===s)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(n=0;n<r-e;++n)this[n+e]=i[n%s]}return this};const M={};function G(t,e,r){M[t]=class extends r{constructor(){super(),Object.defineProperty(this,"message",{value:e.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${t}]`,this.stack,delete this.name}get code(){return t}set code(t){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:t,writable:!0})}toString(){return`${this.name} [${t}]: ${this.message}`}}}function U(t){let e="",r=t.length;const o="-"===t[0]?1:0;for(;r>=o+4;r-=3)e=`_${t.slice(r-3,r)}${e}`;return`${t.slice(0,r)}${e}`}function q(t,e,r,o,n,i){if(t>r||t<e){const o="bigint"==typeof e?"n":"";let n;throw n=i>3?0===e||e===BigInt(0)?`>= 0${o} and < 2${o} ** ${8*(i+1)}${o}`:`>= -(2${o} ** ${8*(i+1)-1}${o}) and < 2 ** ${8*(i+1)-1}${o}`:`>= ${e}${o} and <= ${r}${o}`,new M.ERR_OUT_OF_RANGE("value",n,t)}!function(t,e,r){V(e,"offset"),void 0!==t[e]&&void 0!==t[e+r]||z(e,t.length-(r+1))}(o,n,i)}function V(t,e){if("number"!=typeof t)throw new M.ERR_INVALID_ARG_TYPE(e,"number",t)}function z(t,e,r){if(Math.floor(t)!==t)throw V(t,r),new M.ERR_OUT_OF_RANGE(r||"offset","an integer",t);if(e<0)throw new M.ERR_BUFFER_OUT_OF_BOUNDS;throw new M.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${e}`,t)}G("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?`${t} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),G("ERR_INVALID_ARG_TYPE",(function(t,e){return`The "${t}" argument must be of type number. Received type ${typeof e}`}),TypeError),G("ERR_OUT_OF_RANGE",(function(t,e,r){let o=`The value of "${t}" is out of range.`,n=r;return Number.isInteger(r)&&Math.abs(r)>2**32?n=U(String(r)):"bigint"==typeof r&&(n=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(n=U(n)),n+="n"),o+=` It must be ${e}. Received ${n}`,o}),RangeError);const H=/[^+/0-9A-Za-z-_]/g;function X(t,e){let r;e=e||1/0;const o=t.length;let n=null;const i=[];for(let s=0;s<o;++s){if(r=t.charCodeAt(s),r>55295&&r<57344){if(!n){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(s+1===o){(e-=3)>-1&&i.push(239,191,189);continue}n=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),n=r;continue}r=65536+(n-55296<<10|r-56320)}else n&&(e-=3)>-1&&i.push(239,191,189);if(n=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function Y(t){return o.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(H,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function $(t,e,r,o){let n;for(n=0;n<o&&!(n+r>=e.length||n>=t.length);++n)e[n+r]=t[n];return n}function K(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function W(t){return t!=t}const Q=function(){const t="0123456789abcdef",e=new Array(256);for(let r=0;r<16;++r){const o=16*r;for(let n=0;n<16;++n)e[o+n]=t[r]+t[n]}return e}();function Z(t){return"undefined"==typeof BigInt?J:t}function J(){throw new Error("BigInt not supported")}},8767:t=>{function e(t){if(t)return function(t){for(var r in e.prototype)t[r]=e.prototype[r];return t}(t)}t.exports=e,e.prototype.on=e.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this},e.prototype.once=function(t,e){function r(){this.off(t,r),e.apply(this,arguments)}return r.fn=e,this.on(t,r),this},e.prototype.off=e.prototype.removeListener=e.prototype.removeAllListeners=e.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r,o=this._callbacks["$"+t];if(!o)return this;if(1==arguments.length)return delete this._callbacks["$"+t],this;for(var n=0;n<o.length;n++)if((r=o[n])===e||r.fn===e){o.splice(n,1);break}return 0===o.length&&delete this._callbacks["$"+t],this},e.prototype.emit=function(t){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),r=this._callbacks["$"+t],o=1;o<arguments.length;o++)e[o-1]=arguments[o];if(r){o=0;for(var n=(r=r.slice(0)).length;o<n;++o)r[o].apply(this,e)}return this},e.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks["$"+t]||[]},e.prototype.hasListeners=function(t){return!!this.listeners(t).length}},624:t=>{function e(t){if(t)return function(t){for(var r in e.prototype)t[r]=e.prototype[r];return t}(t)}t.exports=e,e.prototype.on=e.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},e.prototype.once=function(t,e){var r=this;function o(){r.off(t,o),e.apply(this,arguments)}return this._callbacks=this._callbacks||{},o.fn=e,this.on(t,o),this},e.prototype.off=e.prototype.removeListener=e.prototype.removeAllListeners=e.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r,o=this._callbacks[t];if(!o)return this;if(1==arguments.length)return delete this._callbacks[t],this;for(var n=0;n<o.length;n++)if((r=o[n])===e||r.fn===e){o.splice(n,1);break}return this},e.prototype.emit=function(t){this._callbacks=this._callbacks||{};var e=[].slice.call(arguments,1),r=this._callbacks[t];if(r)for(var o=0,n=(r=r.slice(0)).length;o<n;++o)r[o].apply(this,e);return this},e.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},e.prototype.hasListeners=function(t){return!!this.listeners(t).length}},7187:t=>{"use strict";var e,r="object"==typeof Reflect?Reflect:null,o=r&&"function"==typeof r.apply?r.apply:function(t,e,r){return Function.prototype.apply.call(t,e,r)};e=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var n=Number.isNaN||function(t){return t!=t};function i(){i.init.call(this)}t.exports=i,t.exports.once=function(t,e){return new Promise((function(r,o){function n(r){t.removeListener(e,i),o(r)}function i(){"function"==typeof t.removeListener&&t.removeListener("error",n),r([].slice.call(arguments))}y(t,e,i,{once:!0}),"error"!==e&&function(t,e,r){"function"==typeof t.on&&y(t,"error",e,{once:!0})}(t,n)}))},i.EventEmitter=i,i.prototype._events=void 0,i.prototype._eventsCount=0,i.prototype._maxListeners=void 0;var s=10;function a(t){if("function"!=typeof t)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}function u(t){return void 0===t._maxListeners?i.defaultMaxListeners:t._maxListeners}function p(t,e,r,o){var n,i,s,p;if(a(r),void 0===(i=t._events)?(i=t._events=Object.create(null),t._eventsCount=0):(void 0!==i.newListener&&(t.emit("newListener",e,r.listener?r.listener:r),i=t._events),s=i[e]),void 0===s)s=i[e]=r,++t._eventsCount;else if("function"==typeof s?s=i[e]=o?[r,s]:[s,r]:o?s.unshift(r):s.push(r),(n=u(t))>0&&s.length>n&&!s.warned){s.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=t,c.type=e,c.count=s.length,p=c,console&&console.warn&&console.warn(p)}return t}function c(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(t,e,r){var o={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},n=c.bind(o);return n.listener=r,o.wrapFn=n,n}function l(t,e,r){var o=t._events;if(void 0===o)return[];var n=o[e];return void 0===n?[]:"function"==typeof n?r?[n.listener||n]:[n]:r?function(t){for(var e=new Array(t.length),r=0;r<e.length;++r)e[r]=t[r].listener||t[r];return e}(n):d(n,n.length)}function f(t){var e=this._events;if(void 0!==e){var r=e[t];if("function"==typeof r)return 1;if(void 0!==r)return r.length}return 0}function d(t,e){for(var r=new Array(e),o=0;o<e;++o)r[o]=t[o];return r}function y(t,e,r,o){if("function"==typeof t.on)o.once?t.once(e,r):t.on(e,r);else{if("function"!=typeof t.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t);t.addEventListener(e,(function n(i){o.once&&t.removeEventListener(e,n),r(i)}))}}Object.defineProperty(i,"defaultMaxListeners",{enumerable:!0,get:function(){return s},set:function(t){if("number"!=typeof t||t<0||n(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");s=t}}),i.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},i.prototype.setMaxListeners=function(t){if("number"!=typeof t||t<0||n(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this},i.prototype.getMaxListeners=function(){return u(this)},i.prototype.emit=function(t){for(var e=[],r=1;r<arguments.length;r++)e.push(arguments[r]);var n="error"===t,i=this._events;if(void 0!==i)n=n&&void 0===i.error;else if(!n)return!1;if(n){var s;if(e.length>0&&(s=e[0]),s instanceof Error)throw s;var a=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw a.context=s,a}var u=i[t];if(void 0===u)return!1;if("function"==typeof u)o(u,this,e);else{var p=u.length,c=d(u,p);for(r=0;r<p;++r)o(c[r],this,e)}return!0},i.prototype.addListener=function(t,e){return p(this,t,e,!1)},i.prototype.on=i.prototype.addListener,i.prototype.prependListener=function(t,e){return p(this,t,e,!0)},i.prototype.once=function(t,e){return a(e),this.on(t,h(this,t,e)),this},i.prototype.prependOnceListener=function(t,e){return a(e),this.prependListener(t,h(this,t,e)),this},i.prototype.removeListener=function(t,e){var r,o,n,i,s;if(a(e),void 0===(o=this._events))return this;if(void 0===(r=o[t]))return this;if(r===e||r.listener===e)0==--this._eventsCount?this._events=Object.create(null):(delete o[t],o.removeListener&&this.emit("removeListener",t,r.listener||e));else if("function"!=typeof r){for(n=-1,i=r.length-1;i>=0;i--)if(r[i]===e||r[i].listener===e){s=r[i].listener,n=i;break}if(n<0)return this;0===n?r.shift():function(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}(r,n),1===r.length&&(o[t]=r[0]),void 0!==o.removeListener&&this.emit("removeListener",t,s||e)}return this},i.prototype.off=i.prototype.removeListener,i.prototype.removeAllListeners=function(t){var e,r,o;if(void 0===(r=this._events))return this;if(void 0===r.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==r[t]&&(0==--this._eventsCount?this._events=Object.create(null):delete r[t]),this;if(0===arguments.length){var n,i=Object.keys(r);for(o=0;o<i.length;++o)"removeListener"!==(n=i[o])&&this.removeAllListeners(n);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(e=r[t]))this.removeListener(t,e);else if(void 0!==e)for(o=e.length-1;o>=0;o--)this.removeListener(t,e[o]);return this},i.prototype.listeners=function(t){return l(this,t,!0)},i.prototype.rawListeners=function(t){return l(this,t,!1)},i.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):f.call(t,e)},i.prototype.listenerCount=f,i.prototype.eventNames=function(){return this._eventsCount>0?e(this._events):[]}},5513:(t,e,r)=>{(e=t.exports=r(3112)).OAuth=r(5517),e.Feeds=r(4769),e.Upload=r(9772),e.Replace=r(9377)},2369:(t,e,r)=>{var o=r(569),n=r(7673).parse;function i(t,e){o.Request.call(this,t,e),this.params={}}i.prototype=Object.create(o.Request.prototype),i.prototype.query=function(t){return"string"==typeof t?Object.assign(this.params,n(t)):Object.assign(this.params,t),o.Request.prototype.query.call(this,t)},i.prototype.field=function(t,e){return"string"==typeof t?this.params[t]=e:Object.assign(this.params,t),o.Request.prototype.field.call(this,t,e)},i.prototype.param=function(t){switch(this.method){case"POST":return this.field.call(this,t);default:return this.query.call(this,t)}},e=t.exports=function(t,r){return"function"==typeof r?new e.Request("GET",t).end(r):1===arguments.length?new e.Request("GET",t):new e.Request(t,r)},Object.assign(e,o),e.Request=i},6329:t=>{t.exports=function(t,e){if(e)if(t=t||{},"string"==typeof e){if(!t.hasOwnProperty(e))throw new Error('Missing required argument "'+e+'"')}else if(0===e.filter((function(e){return t.hasOwnProperty(e)})).length)throw new Error('Missing required argument, you must provide one of the following: "'+e.join('", "')+'"')}},4893:t=>{function e(t){var e,r=t.body;if(r&&"fail"===r.stat)throw(e=new Error(r.message)).stat=r.stat,e.code=r.code,e;return t.status>=200&&t.status<300}t.exports=function(t){t.query({format:"json"}),t.query({nojsoncallback:1}),t.type("text/plain"),t.ok(e)}},4205:(t,e,r)=>{var o=r(5055);function n(t,e){t.text="",t.setEncoding("utf8"),t.on("data",(function(e){t.text+=e})),t.on("end",(function(){o.parseString(t.text,{mergeAttrs:!0,explicitArray:!1,explicitRoot:!1,explicitCharkey:!0,charkey:"_content"},(function(t,r){if(t)return e(new SyntaxError(t.message),r);"fail"===r.stat&&r.err&&((t=new Error(r.err.msg)).stat=r.stat,t.code=r.err.code),e(t,r)}))}))}t.exports=function(t){t.parse(n)}},4769:(t,e,r)=>{var o=r(2369),n=r(6329);function i(t){if(!(this instanceof i))return new i(t);this._args=Object.assign({format:"json",nojsoncallback:1},t)}i.prototype._=function(t,e){return o("GET","https://www.flickr.com/services/feeds/"+t+".gne").query(this._args).query(e)},i.prototype.publicPhotos=function(t){return this._("photos_public",t)},i.prototype.friendsPhotos=function(t){return n(t,"user_id"),this._("photos_friends",t)},i.prototype.favePhotos=function(t){return n(t,["id","nsid"]),this._("photos_faves",t)},i.prototype.groupDiscussions=function(t){return n(t,"id"),this._("groups_discuss",t)},i.prototype.groupPool=function(t){return n(t,"id"),this._("groups_pool",t)},i.prototype.forum=function(t){return this._("forums",t)},i.prototype.recentActivity=function(t){return n(t,"user_id"),this._("activity",t)},i.prototype.recentComments=function(t){return n(t,"user_id"),this._("photos_comments",t)},t.exports=i},5517:t=>{function e(){throw new Error("OAuth 1.0 is not supported in the browser")}e.createPlugin=e,t.exports=e},9377:(t,e,r)=>{var o=r(2369).Request,n=r(4205);function i(t,e,r,s){if(!(this instanceof i))return new i(t,e,r,s);if(o.call(this,"POST","https://up.flickr.com/services/replace"),"function"!=typeof t)throw new Error('Missing required argument "auth"');if(void 0===e)throw new Error('Missing required argument "photoID"');void 0===s&&(s={}),this.attach("photo",r),this.field("photo_id",e),this.field(s),this.use(n),this.use(t)}i.prototype=Object.create(o.prototype),t.exports=i},3112:(t,e,r)=>{var o=r(2369),n=r(6329),i=r(4893);function s(t,e){if(!(this instanceof s))return new s(t);this.activity._=this.auth._=this.auth.oauth._=this.blogs._=this.cameras._=this.collections._=this.commons._=this.contacts._=this.favorites._=this.galleries._=this.groups._=this.groups.discuss._=this.groups.discuss.replies._=this.groups.discuss.topics._=this.groups.members._=this.groups.pools._=this.interestingness._=this.machinetags._=this.panda._=this.people._=this.photos._=this.photos.comments._=this.photos.geo._=this.photos.licenses._=this.photos.notes._=this.photos.people._=this.photos.suggestions._=this.photos.transform._=this.photos.upload._=this.photosets._=this.photosets.comments._=this.places._=this.prefs._=this.profile._=this.push._=this.reflection._=this.stats._=this.tags._=this.test._=this.testimonials._=this.urls._=this._=function(t,e){var r,n;if("string"==typeof t&&(n=t,t=function(t){return t.query({api_key:n})}),"function"!=typeof t)throw new Error('Missing required argument "auth"');return r=(e=e||{}).host||"api.flickr.com",e.port&&(r+=":"+e.port),function(e,n,s){return void 0===s&&(s={}),s.extras&&(s.extras=function(t){if(!("string"==typeof t||Array.isArray(t)||t instanceof Set))throw new Error('Invalid type for argument "extras"');if("string"==typeof t&&(t=t.split(",")),Array.isArray(t)&&(t=new Set(t)),t instanceof Set)return Array.from(t).join(",")}(s.extras)),o(e,"https://"+r+"/services/rest").query({method:n}).query(s).use(i).use(t)}}(t,e)}s.prototype.activity={},s.prototype.activity.userComments=function(t){return this._("GET","flickr.activity.userComments",t)},s.prototype.activity.userPhotos=function(t){return this._("GET","flickr.activity.userPhotos",t)},s.prototype.auth={},s.prototype.auth.checkToken=function(t){return n(t,"auth_token"),this._("GET","flickr.auth.checkToken",t)},s.prototype.auth.getFrob=function(t){return this._("GET","flickr.auth.getFrob",t)},s.prototype.auth.getFullToken=function(t){return n(t,"mini_token"),this._("GET","flickr.auth.getFullToken",t)},s.prototype.auth.getToken=function(t){return n(t,"frob"),this._("GET","flickr.auth.getToken",t)},s.prototype.auth.oauth={},s.prototype.auth.oauth.checkToken=function(t){return n(t,"oauth_token"),this._("GET","flickr.auth.oauth.checkToken",t)},s.prototype.auth.oauth.getAccessToken=function(t){return this._("GET","flickr.auth.oauth.getAccessToken",t)},s.prototype.blogs={},s.prototype.blogs.getList=function(t){return this._("GET","flickr.blogs.getList",t)},s.prototype.blogs.getServices=function(t){return this._("GET","flickr.blogs.getServices",t)},s.prototype.blogs.postPhoto=function(t){return n(t,"photo_id"),n(t,"title"),n(t,"description"),this._("POST","flickr.blogs.postPhoto",t)},s.prototype.cameras={},s.prototype.cameras.getBrandModels=function(t){return n(t,"brand"),this._("GET","flickr.cameras.getBrandModels",t)},s.prototype.cameras.getBrands=function(t){return this._("GET","flickr.cameras.getBrands",t)},s.prototype.collections={},s.prototype.collections.getInfo=function(t){return n(t,"collection_id"),this._("GET","flickr.collections.getInfo",t)},s.prototype.collections.getTree=function(t){return this._("GET","flickr.collections.getTree",t)},s.prototype.commons={},s.prototype.commons.getInstitutions=function(t){return this._("GET","flickr.commons.getInstitutions",t)},s.prototype.contacts={},s.prototype.contacts.getList=function(t){return this._("GET","flickr.contacts.getList",t)},s.prototype.contacts.getListRecentlyUploaded=function(t){return this._("GET","flickr.contacts.getListRecentlyUploaded",t)},s.prototype.contacts.getPublicList=function(t){return n(t,"user_id"),this._("GET","flickr.contacts.getPublicList",t)},s.prototype.contacts.getTaggingSuggestions=function(t){return this._("GET","flickr.contacts.getTaggingSuggestions",t)},s.prototype.favorites={},s.prototype.favorites.add=function(t){return n(t,"photo_id"),this._("POST","flickr.favorites.add",t)},s.prototype.favorites.getContext=function(t){return n(t,"photo_id"),n(t,"user_id"),this._("GET","flickr.favorites.getContext",t)},s.prototype.favorites.getList=function(t){return this._("GET","flickr.favorites.getList",t)},s.prototype.favorites.getPublicList=function(t){return n(t,"user_id"),this._("GET","flickr.favorites.getPublicList",t)},s.prototype.favorites.remove=function(t){return n(t,"photo_id"),this._("POST","flickr.favorites.remove",t)},s.prototype.galleries={},s.prototype.galleries.addPhoto=function(t){return n(t,"gallery_id"),n(t,"photo_id"),this._("POST","flickr.galleries.addPhoto",t)},s.prototype.galleries.create=function(t){return n(t,"title"),n(t,"description"),this._("POST","flickr.galleries.create",t)},s.prototype.galleries.editMeta=function(t){return n(t,"gallery_id"),n(t,"title"),this._("POST","flickr.galleries.editMeta",t)},s.prototype.galleries.editPhoto=function(t){return n(t,"gallery_id"),n(t,"photo_id"),n(t,"comment"),this._("POST","flickr.galleries.editPhoto",t)},s.prototype.galleries.editPhotos=function(t){return n(t,"gallery_id"),n(t,"primary_photo_id"),n(t,"photo_ids"),this._("POST","flickr.galleries.editPhotos",t)},s.prototype.galleries.getInfo=function(t){return n(t,"gallery_id"),this._("GET","flickr.galleries.getInfo",t)},s.prototype.galleries.getList=function(t){return n(t,"user_id"),this._("GET","flickr.galleries.getList",t)},s.prototype.galleries.getListForPhoto=function(t){return n(t,"photo_id"),this._("GET","flickr.galleries.getListForPhoto",t)},s.prototype.galleries.getPhotos=function(t){return n(t,"gallery_id"),this._("GET","flickr.galleries.getPhotos",t)},s.prototype.groups={},s.prototype.groups.browse=function(t){return this._("GET","flickr.groups.browse",t)},s.prototype.groups.getInfo=function(t){return n(t,"group_id"),this._("GET","flickr.groups.getInfo",t)},s.prototype.groups.join=function(t){return n(t,"group_id"),this._("POST","flickr.groups.join",t)},s.prototype.groups.joinRequest=function(t){return n(t,"group_id"),n(t,"message"),n(t,"accept_rules"),this._("POST","flickr.groups.joinRequest",t)},s.prototype.groups.leave=function(t){return n(t,"group_id"),this._("POST","flickr.groups.leave",t)},s.prototype.groups.search=function(t){return n(t,"text"),this._("GET","flickr.groups.search",t)},s.prototype.groups.discuss={},s.prototype.groups.discuss.replies={},s.prototype.groups.discuss.replies.add=function(t){return n(t,"group_id"),n(t,"topic_id"),n(t,"message"),this._("POST","flickr.groups.discuss.replies.add",t)},s.prototype.groups.discuss.replies.delete=function(t){return n(t,"group_id"),n(t,"topic_id"),n(t,"reply_id"),this._("POST","flickr.groups.discuss.replies.delete",t)},s.prototype.groups.discuss.replies.edit=function(t){return n(t,"group_id"),n(t,"topic_id"),n(t,"reply_id"),n(t,"message"),this._("POST","flickr.groups.discuss.replies.edit",t)},s.prototype.groups.discuss.replies.getInfo=function(t){return n(t,"group_id"),n(t,"topic_id"),n(t,"reply_id"),this._("GET","flickr.groups.discuss.replies.getInfo",t)},s.prototype.groups.discuss.replies.getList=function(t){return n(t,"group_id"),n(t,"topic_id"),n(t,"per_page"),this._("GET","flickr.groups.discuss.replies.getList",t)},s.prototype.groups.discuss.topics={},s.prototype.groups.discuss.topics.add=function(t){return n(t,"group_id"),n(t,"subject"),n(t,"message"),this._("POST","flickr.groups.discuss.topics.add",t)},s.prototype.groups.discuss.topics.getInfo=function(t){return n(t,"group_id"),n(t,"topic_id"),this._("GET","flickr.groups.discuss.topics.getInfo",t)},s.prototype.groups.discuss.topics.getList=function(t){return n(t,"group_id"),this._("GET","flickr.groups.discuss.topics.getList",t)},s.prototype.groups.members={},s.prototype.groups.members.getList=function(t){return n(t,"group_id"),this._("GET","flickr.groups.members.getList",t)},s.prototype.groups.pools={},s.prototype.groups.pools.add=function(t){return n(t,"photo_id"),n(t,"group_id"),this._("POST","flickr.groups.pools.add",t)},s.prototype.groups.pools.getContext=function(t){return n(t,"photo_id"),n(t,"group_id"),this._("GET","flickr.groups.pools.getContext",t)},s.prototype.groups.pools.getGroups=function(t){return this._("GET","flickr.groups.pools.getGroups",t)},s.prototype.groups.pools.getPhotos=function(t){return n(t,"group_id"),this._("GET","flickr.groups.pools.getPhotos",t)},s.prototype.groups.pools.remove=function(t){return n(t,"photo_id"),n(t,"group_id"),this._("POST","flickr.groups.pools.remove",t)},s.prototype.interestingness={},s.prototype.interestingness.getList=function(t){return this._("GET","flickr.interestingness.getList",t)},s.prototype.machinetags={},s.prototype.machinetags.getNamespaces=function(t){return this._("GET","flickr.machinetags.getNamespaces",t)},s.prototype.machinetags.getPairs=function(t){return this._("GET","flickr.machinetags.getPairs",t)},s.prototype.machinetags.getPredicates=function(t){return this._("GET","flickr.machinetags.getPredicates",t)},s.prototype.machinetags.getRecentValues=function(t){return this._("GET","flickr.machinetags.getRecentValues",t)},s.prototype.machinetags.getValues=function(t){return n(t,"namespace"),n(t,"predicate"),this._("GET","flickr.machinetags.getValues",t)},s.prototype.panda={},s.prototype.panda.getList=function(t){return this._("GET","flickr.panda.getList",t)},s.prototype.panda.getPhotos=function(t){return n(t,"panda_name"),this._("GET","flickr.panda.getPhotos",t)},s.prototype.people={},s.prototype.people.findByEmail=function(t){return n(t,"find_email"),this._("GET","flickr.people.findByEmail",t)},s.prototype.people.findByUsername=function(t){return n(t,"username"),this._("GET","flickr.people.findByUsername",t)},s.prototype.people.getGroups=function(t){return n(t,"user_id"),this._("GET","flickr.people.getGroups",t)},s.prototype.people.getInfo=function(t){return n(t,"user_id"),this._("GET","flickr.people.getInfo",t)},s.prototype.people.getLimits=function(t){return this._("GET","flickr.people.getLimits",t)},s.prototype.people.getPhotos=function(t){return n(t,"user_id"),this._("GET","flickr.people.getPhotos",t)},s.prototype.people.getPhotosOf=function(t){return n(t,"user_id"),this._("GET","flickr.people.getPhotosOf",t)},s.prototype.people.getPublicGroups=function(t){return n(t,"user_id"),this._("GET","flickr.people.getPublicGroups",t)},s.prototype.people.getPublicPhotos=function(t){return n(t,"user_id"),this._("GET","flickr.people.getPublicPhotos",t)},s.prototype.people.getUploadStatus=function(t){return this._("GET","flickr.people.getUploadStatus",t)},s.prototype.photos={},s.prototype.photos.addTags=function(t){return n(t,"photo_id"),n(t,"tags"),this._("POST","flickr.photos.addTags",t)},s.prototype.photos.delete=function(t){return n(t,"photo_id"),this._("POST","flickr.photos.delete",t)},s.prototype.photos.getAllContexts=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.getAllContexts",t)},s.prototype.photos.getContactsPhotos=function(t){return this._("GET","flickr.photos.getContactsPhotos",t)},s.prototype.photos.getContactsPublicPhotos=function(t){return n(t,"user_id"),this._("GET","flickr.photos.getContactsPublicPhotos",t)},s.prototype.photos.getContext=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.getContext",t)},s.prototype.photos.getCounts=function(t){return this._("GET","flickr.photos.getCounts",t)},s.prototype.photos.getExif=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.getExif",t)},s.prototype.photos.getFavorites=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.getFavorites",t)},s.prototype.photos.getInfo=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.getInfo",t)},s.prototype.photos.getNotInSet=function(t){return this._("GET","flickr.photos.getNotInSet",t)},s.prototype.photos.getPerms=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.getPerms",t)},s.prototype.photos.getPopular=function(t){return this._("GET","flickr.photos.getPopular",t)},s.prototype.photos.getRecent=function(t){return this._("GET","flickr.photos.getRecent",t)},s.prototype.photos.getSizes=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.getSizes",t)},s.prototype.photos.getUntagged=function(t){return this._("GET","flickr.photos.getUntagged",t)},s.prototype.photos.getWithGeoData=function(t){return this._("GET","flickr.photos.getWithGeoData",t)},s.prototype.photos.getWithoutGeoData=function(t){return this._("GET","flickr.photos.getWithoutGeoData",t)},s.prototype.photos.recentlyUpdated=function(t){return n(t,"min_date"),this._("GET","flickr.photos.recentlyUpdated",t)},s.prototype.photos.removeTag=function(t){return n(t,"tag_id"),this._("POST","flickr.photos.removeTag",t)},s.prototype.photos.search=function(t){return this._("GET","flickr.photos.search",t)},s.prototype.photos.setContentType=function(t){return n(t,"photo_id"),n(t,"content_type"),this._("POST","flickr.photos.setContentType",t)},s.prototype.photos.setDates=function(t){return n(t,"photo_id"),this._("POST","flickr.photos.setDates",t)},s.prototype.photos.setMeta=function(t){return n(t,"photo_id"),this._("POST","flickr.photos.setMeta",t)},s.prototype.photos.setPerms=function(t){return n(t,"photo_id"),n(t,"is_public"),n(t,"is_friend"),n(t,"is_family"),this._("POST","flickr.photos.setPerms",t)},s.prototype.photos.setSafetyLevel=function(t){return n(t,"photo_id"),this._("POST","flickr.photos.setSafetyLevel",t)},s.prototype.photos.setTags=function(t){return n(t,"photo_id"),n(t,"tags"),this._("POST","flickr.photos.setTags",t)},s.prototype.photos.comments={},s.prototype.photos.comments.addComment=function(t){return n(t,"photo_id"),n(t,"comment_text"),this._("POST","flickr.photos.comments.addComment",t)},s.prototype.photos.comments.deleteComment=function(t){return n(t,"comment_id"),this._("POST","flickr.photos.comments.deleteComment",t)},s.prototype.photos.comments.editComment=function(t){return n(t,"comment_id"),n(t,"comment_text"),this._("POST","flickr.photos.comments.editComment",t)},s.prototype.photos.comments.getList=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.comments.getList",t)},s.prototype.photos.comments.getRecentForContacts=function(t){return this._("GET","flickr.photos.comments.getRecentForContacts",t)},s.prototype.photos.geo={},s.prototype.photos.geo.batchCorrectLocation=function(t){return n(t,"lat"),n(t,"lon"),n(t,"accuracy"),this._("POST","flickr.photos.geo.batchCorrectLocation",t)},s.prototype.photos.geo.correctLocation=function(t){return n(t,"photo_id"),n(t,"foursquare_id"),this._("POST","flickr.photos.geo.correctLocation",t)},s.prototype.photos.geo.getLocation=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.geo.getLocation",t)},s.prototype.photos.geo.getPerms=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.geo.getPerms",t)},s.prototype.photos.geo.photosForLocation=function(t){return n(t,"lat"),n(t,"lon"),this._("GET","flickr.photos.geo.photosForLocation",t)},s.prototype.photos.geo.removeLocation=function(t){return n(t,"photo_id"),this._("POST","flickr.photos.geo.removeLocation",t)},s.prototype.photos.geo.setContext=function(t){return n(t,"photo_id"),n(t,"context"),this._("POST","flickr.photos.geo.setContext",t)},s.prototype.photos.geo.setLocation=function(t){return n(t,"photo_id"),n(t,"lat"),n(t,"lon"),this._("POST","flickr.photos.geo.setLocation",t)},s.prototype.photos.geo.setPerms=function(t){return n(t,"is_public"),n(t,"is_contact"),n(t,"is_friend"),n(t,"is_family"),n(t,"photo_id"),this._("POST","flickr.photos.geo.setPerms",t)},s.prototype.photos.licenses={},s.prototype.photos.licenses.getInfo=function(t){return this._("GET","flickr.photos.licenses.getInfo",t)},s.prototype.photos.licenses.setLicense=function(t){return n(t,"photo_id"),n(t,"license_id"),this._("POST","flickr.photos.licenses.setLicense",t)},s.prototype.photos.notes={},s.prototype.photos.notes.add=function(t){return n(t,"photo_id"),n(t,"note_x"),n(t,"note_y"),n(t,"note_w"),n(t,"note_h"),n(t,"note_text"),this._("POST","flickr.photos.notes.add",t)},s.prototype.photos.notes.delete=function(t){return n(t,"note_id"),this._("POST","flickr.photos.notes.delete",t)},s.prototype.photos.notes.edit=function(t){return n(t,"note_id"),n(t,"note_x"),n(t,"note_y"),n(t,"note_w"),n(t,"note_h"),n(t,"note_text"),this._("POST","flickr.photos.notes.edit",t)},s.prototype.photos.people={},s.prototype.photos.people.add=function(t){return n(t,"photo_id"),n(t,"user_id"),this._("POST","flickr.photos.people.add",t)},s.prototype.photos.people.delete=function(t){return n(t,"photo_id"),n(t,"user_id"),this._("POST","flickr.photos.people.delete",t)},s.prototype.photos.people.deleteCoords=function(t){return n(t,"photo_id"),n(t,"user_id"),this._("POST","flickr.photos.people.deleteCoords",t)},s.prototype.photos.people.editCoords=function(t){return n(t,"photo_id"),n(t,"user_id"),n(t,"person_x"),n(t,"person_y"),n(t,"person_w"),n(t,"person_h"),this._("POST","flickr.photos.people.editCoords",t)},s.prototype.photos.people.getList=function(t){return n(t,"photo_id"),this._("GET","flickr.photos.people.getList",t)},s.prototype.photos.suggestions={},s.prototype.photos.suggestions.approveSuggestion=function(t){return n(t,"suggestion_id"),this._("POST","flickr.photos.suggestions.approveSuggestion",t)},s.prototype.photos.suggestions.getList=function(t){return this._("GET","flickr.photos.suggestions.getList",t)},s.prototype.photos.suggestions.rejectSuggestion=function(t){return n(t,"suggestion_id"),this._("POST","flickr.photos.suggestions.rejectSuggestion",t)},s.prototype.photos.suggestions.removeSuggestion=function(t){return n(t,"suggestion_id"),this._("POST","flickr.photos.suggestions.removeSuggestion",t)},s.prototype.photos.suggestions.suggestLocation=function(t){return n(t,"photo_id"),n(t,"lat"),n(t,"lon"),this._("POST","flickr.photos.suggestions.suggestLocation",t)},s.prototype.photos.transform={},s.prototype.photos.transform.rotate=function(t){return n(t,"photo_id"),n(t,"degrees"),this._("POST","flickr.photos.transform.rotate",t)},s.prototype.photos.upload={},s.prototype.photos.upload.checkTickets=function(t){return n(t,"tickets"),this._("GET","flickr.photos.upload.checkTickets",t)},s.prototype.photosets={},s.prototype.photosets.addPhoto=function(t){return n(t,"photoset_id"),n(t,"photo_id"),this._("POST","flickr.photosets.addPhoto",t)},s.prototype.photosets.create=function(t){return n(t,"title"),n(t,"primary_photo_id"),this._("POST","flickr.photosets.create",t)},s.prototype.photosets.delete=function(t){return n(t,"photoset_id"),this._("POST","flickr.photosets.delete",t)},s.prototype.photosets.editMeta=function(t){return n(t,"photoset_id"),n(t,"title"),this._("POST","flickr.photosets.editMeta",t)},s.prototype.photosets.editPhotos=function(t){return n(t,"photoset_id"),n(t,"primary_photo_id"),n(t,"photo_ids"),this._("POST","flickr.photosets.editPhotos",t)},s.prototype.photosets.getContext=function(t){return n(t,"photo_id"),n(t,"photoset_id"),this._("GET","flickr.photosets.getContext",t)},s.prototype.photosets.getInfo=function(t){return n(t,"photoset_id"),n(t,"user_id"),this._("GET","flickr.photosets.getInfo",t)},s.prototype.photosets.getList=function(t){return this._("GET","flickr.photosets.getList",t)},s.prototype.photosets.getPhotos=function(t){return n(t,"photoset_id"),n(t,"user_id"),this._("GET","flickr.photosets.getPhotos",t)},s.prototype.photosets.orderSets=function(t){return n(t,"photoset_ids"),this._("POST","flickr.photosets.orderSets",t)},s.prototype.photosets.removePhoto=function(t){return n(t,"photoset_id"),n(t,"photo_id"),this._("POST","flickr.photosets.removePhoto",t)},s.prototype.photosets.removePhotos=function(t){return n(t,"photoset_id"),n(t,"photo_ids"),this._("POST","flickr.photosets.removePhotos",t)},s.prototype.photosets.reorderPhotos=function(t){return n(t,"photoset_id"),n(t,"photo_ids"),this._("POST","flickr.photosets.reorderPhotos",t)},s.prototype.photosets.setPrimaryPhoto=function(t){return n(t,"photoset_id"),n(t,"photo_id"),this._("POST","flickr.photosets.setPrimaryPhoto",t)},s.prototype.photosets.comments={},s.prototype.photosets.comments.addComment=function(t){return n(t,"photoset_id"),n(t,"comment_text"),this._("POST","flickr.photosets.comments.addComment",t)},s.prototype.photosets.comments.deleteComment=function(t){return n(t,"comment_id"),this._("POST","flickr.photosets.comments.deleteComment",t)},s.prototype.photosets.comments.editComment=function(t){return n(t,"comment_id"),n(t,"comment_text"),this._("POST","flickr.photosets.comments.editComment",t)},s.prototype.photosets.comments.getList=function(t){return n(t,"photoset_id"),this._("GET","flickr.photosets.comments.getList",t)},s.prototype.places={},s.prototype.places.find=function(t){return n(t,"query"),this._("GET","flickr.places.find",t)},s.prototype.places.findByLatLon=function(t){return n(t,"lat"),n(t,"lon"),this._("GET","flickr.places.findByLatLon",t)},s.prototype.places.getChildrenWithPhotosPublic=function(t){return this._("GET","flickr.places.getChildrenWithPhotosPublic",t)},s.prototype.places.getInfo=function(t){return this._("GET","flickr.places.getInfo",t)},s.prototype.places.getInfoByUrl=function(t){return n(t,"url"),this._("GET","flickr.places.getInfoByUrl",t)},s.prototype.places.getPlaceTypes=function(t){return this._("GET","flickr.places.getPlaceTypes",t)},s.prototype.places.getShapeHistory=function(t){return this._("GET","flickr.places.getShapeHistory",t)},s.prototype.places.getTopPlacesList=function(t){return n(t,"place_type_id"),this._("GET","flickr.places.getTopPlacesList",t)},s.prototype.places.placesForBoundingBox=function(t){return n(t,"bbox"),this._("GET","flickr.places.placesForBoundingBox",t)},s.prototype.places.placesForContacts=function(t){return this._("GET","flickr.places.placesForContacts",t)},s.prototype.places.placesForTags=function(t){return n(t,"place_type_id"),this._("GET","flickr.places.placesForTags",t)},s.prototype.places.placesForUser=function(t){return this._("GET","flickr.places.placesForUser",t)},s.prototype.places.resolvePlaceId=function(t){return n(t,"place_id"),this._("GET","flickr.places.resolvePlaceId",t)},s.prototype.places.resolvePlaceURL=function(t){return n(t,"url"),this._("GET","flickr.places.resolvePlaceURL",t)},s.prototype.places.tagsForPlace=function(t){return this._("GET","flickr.places.tagsForPlace",t)},s.prototype.prefs={},s.prototype.prefs.getContentType=function(t){return this._("GET","flickr.prefs.getContentType",t)},s.prototype.prefs.getGeoPerms=function(t){return this._("GET","flickr.prefs.getGeoPerms",t)},s.prototype.prefs.getHidden=function(t){return this._("GET","flickr.prefs.getHidden",t)},s.prototype.prefs.getPrivacy=function(t){return this._("GET","flickr.prefs.getPrivacy",t)},s.prototype.prefs.getSafetyLevel=function(t){return this._("GET","flickr.prefs.getSafetyLevel",t)},s.prototype.profile={},s.prototype.profile.getProfile=function(t){return n(t,"user_id"),this._("GET","flickr.profile.getProfile",t)},s.prototype.push={},s.prototype.push.getSubscriptions=function(t){return this._("GET","flickr.push.getSubscriptions",t)},s.prototype.push.getTopics=function(t){return this._("GET","flickr.push.getTopics",t)},s.prototype.push.subscribe=function(t){return n(t,"topic"),n(t,"callback"),n(t,"verify"),this._("GET","flickr.push.subscribe",t)},s.prototype.push.unsubscribe=function(t){return n(t,"topic"),n(t,"callback"),n(t,"verify"),this._("GET","flickr.push.unsubscribe",t)},s.prototype.reflection={},s.prototype.reflection.getMethodInfo=function(t){return n(t,"method_name"),this._("GET","flickr.reflection.getMethodInfo",t)},s.prototype.reflection.getMethods=function(t){return this._("GET","flickr.reflection.getMethods",t)},s.prototype.stats={},s.prototype.stats.getCSVFiles=function(t){return this._("GET","flickr.stats.getCSVFiles",t)},s.prototype.stats.getCollectionDomains=function(t){return n(t,"date"),this._("GET","flickr.stats.getCollectionDomains",t)},s.prototype.stats.getCollectionReferrers=function(t){return n(t,"date"),n(t,"domain"),this._("GET","flickr.stats.getCollectionReferrers",t)},s.prototype.stats.getCollectionStats=function(t){return n(t,"date"),n(t,"collection_id"),this._("GET","flickr.stats.getCollectionStats",t)},s.prototype.stats.getPhotoDomains=function(t){return n(t,"date"),this._("GET","flickr.stats.getPhotoDomains",t)},s.prototype.stats.getPhotoReferrers=function(t){return n(t,"date"),n(t,"domain"),this._("GET","flickr.stats.getPhotoReferrers",t)},s.prototype.stats.getPhotoStats=function(t){return n(t,"date"),n(t,"photo_id"),this._("GET","flickr.stats.getPhotoStats",t)},s.prototype.stats.getPhotosetDomains=function(t){return n(t,"date"),this._("GET","flickr.stats.getPhotosetDomains",t)},s.prototype.stats.getPhotosetReferrers=function(t){return n(t,"date"),n(t,"domain"),this._("GET","flickr.stats.getPhotosetReferrers",t)},s.prototype.stats.getPhotosetStats=function(t){return n(t,"date"),n(t,"photoset_id"),this._("GET","flickr.stats.getPhotosetStats",t)},s.prototype.stats.getPhotostreamDomains=function(t){return n(t,"date"),this._("GET","flickr.stats.getPhotostreamDomains",t)},s.prototype.stats.getPhotostreamReferrers=function(t){return n(t,"date"),n(t,"domain"),this._("GET","flickr.stats.getPhotostreamReferrers",t)},s.prototype.stats.getPhotostreamStats=function(t){return n(t,"date"),this._("GET","flickr.stats.getPhotostreamStats",t)},s.prototype.stats.getPopularPhotos=function(t){return this._("GET","flickr.stats.getPopularPhotos",t)},s.prototype.stats.getTotalViews=function(t){return this._("GET","flickr.stats.getTotalViews",t)},s.prototype.tags={},s.prototype.tags.getClusterPhotos=function(t){return n(t,"tag"),n(t,"cluster_id"),this._("GET","flickr.tags.getClusterPhotos",t)},s.prototype.tags.getClusters=function(t){return n(t,"tag"),this._("GET","flickr.tags.getClusters",t)},s.prototype.tags.getHotList=function(t){return this._("GET","flickr.tags.getHotList",t)},s.prototype.tags.getListPhoto=function(t){return n(t,"photo_id"),this._("GET","flickr.tags.getListPhoto",t)},s.prototype.tags.getListUser=function(t){return this._("GET","flickr.tags.getListUser",t)},s.prototype.tags.getListUserPopular=function(t){return this._("GET","flickr.tags.getListUserPopular",t)},s.prototype.tags.getListUserRaw=function(t){return this._("GET","flickr.tags.getListUserRaw",t)},s.prototype.tags.getMostFrequentlyUsed=function(t){return this._("GET","flickr.tags.getMostFrequentlyUsed",t)},s.prototype.tags.getRelated=function(t){return n(t,"tag"),this._("GET","flickr.tags.getRelated",t)},s.prototype.test={},s.prototype.test.echo=function(t){return this._("GET","flickr.test.echo",t)},s.prototype.test.login=function(t){return this._("GET","flickr.test.login",t)},s.prototype.test.null=function(t){return this._("GET","flickr.test.null",t)},s.prototype.testimonials={},s.prototype.testimonials.addTestimonial=function(t){return n(t,"user_id"),n(t,"testimonial_text"),this._("POST","flickr.testimonials.addTestimonial",t)},s.prototype.testimonials.approveTestimonial=function(t){return n(t,"testimonial_id"),this._("POST","flickr.testimonials.approveTestimonial",t)},s.prototype.testimonials.deleteTestimonial=function(t){return n(t,"testimonial_id"),this._("POST","flickr.testimonials.deleteTestimonial",t)},s.prototype.testimonials.editTestimonial=function(t){return n(t,"user_id"),n(t,"testimonial_id"),n(t,"testimonial_text"),this._("POST","flickr.testimonials.editTestimonial",t)},s.prototype.testimonials.getAllTestimonialsAbout=function(t){return this._("GET","flickr.testimonials.getAllTestimonialsAbout",t)},s.prototype.testimonials.getAllTestimonialsAboutBy=function(t){return n(t,"user_id"),this._("GET","flickr.testimonials.getAllTestimonialsAboutBy",t)},s.prototype.testimonials.getAllTestimonialsBy=function(t){return this._("GET","flickr.testimonials.getAllTestimonialsBy",t)},s.prototype.testimonials.getPendingTestimonialsAbout=function(t){return this._("GET","flickr.testimonials.getPendingTestimonialsAbout",t)},s.prototype.testimonials.getPendingTestimonialsAboutBy=function(t){return n(t,"user_id"),this._("GET","flickr.testimonials.getPendingTestimonialsAboutBy",t)},s.prototype.testimonials.getPendingTestimonialsBy=function(t){return this._("GET","flickr.testimonials.getPendingTestimonialsBy",t)},s.prototype.testimonials.getTestimonialsAbout=function(t){return n(t,"user_id"),this._("GET","flickr.testimonials.getTestimonialsAbout",t)},s.prototype.testimonials.getTestimonialsAboutBy=function(t){return n(t,"user_id"),this._("GET","flickr.testimonials.getTestimonialsAboutBy",t)},s.prototype.testimonials.getTestimonialsBy=function(t){return n(t,"user_id"),this._("GET","flickr.testimonials.getTestimonialsBy",t)},s.prototype.urls={},s.prototype.urls.getGroup=function(t){return n(t,"group_id"),this._("GET","flickr.urls.getGroup",t)},s.prototype.urls.getUserPhotos=function(t){return this._("GET","flickr.urls.getUserPhotos",t)},s.prototype.urls.getUserProfile=function(t){return this._("GET","flickr.urls.getUserProfile",t)},s.prototype.urls.lookupGallery=function(t){return n(t,"url"),this._("GET","flickr.urls.lookupGallery",t)},s.prototype.urls.lookupGroup=function(t){return n(t,"url"),this._("GET","flickr.urls.lookupGroup",t)},s.prototype.urls.lookupUser=function(t){return n(t,"url"),this._("GET","flickr.urls.lookupUser",t)},t.exports=s},9772:(t,e,r)=>{var o=r(2369).Request,n=r(4205);function i(t,e,r){if(!(this instanceof i))return new i(t,e,r);if(o.call(this,"POST","https://up.flickr.com/services/upload"),"function"!=typeof t)throw new Error('Missing required argument "auth"');void 0===r&&(r={});let s=Buffer.isBuffer(e)?"flickr-sdk.jpg":void 0;this.attach("photo",e,s),this.field(r),this.use(n),this.use(t)}i.prototype=Object.create(o.prototype),t.exports=i},645:(t,e)=>{e.read=function(t,e,r,o,n){var i,s,a=8*n-o-1,u=(1<<a)-1,p=u>>1,c=-7,h=r?n-1:0,l=r?-1:1,f=t[e+h];for(h+=l,i=f&(1<<-c)-1,f>>=-c,c+=a;c>0;i=256*i+t[e+h],h+=l,c-=8);for(s=i&(1<<-c)-1,i>>=-c,c+=o;c>0;s=256*s+t[e+h],h+=l,c-=8);if(0===i)i=1-p;else{if(i===u)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,o),i-=p}return(f?-1:1)*s*Math.pow(2,i-o)},e.write=function(t,e,r,o,n,i){var s,a,u,p=8*i-n-1,c=(1<<p)-1,h=c>>1,l=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,f=o?0:i-1,d=o?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=c):(s=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-s))<1&&(s--,u*=2),(e+=s+h>=1?l/u:l*Math.pow(2,1-h))*u>=2&&(s++,u/=2),s+h>=c?(a=0,s=c):s+h>=1?(a=(e*u-1)*Math.pow(2,n),s+=h):(a=e*Math.pow(2,h-1)*Math.pow(2,n),s=0));n>=8;t[r+f]=255&a,f+=d,a/=256,n-=8);for(s=s<<n|a,p+=n;p>0;t[r+f]=255&s,f+=d,s/=256,p-=8);t[r+f-d]|=128*y}},2587:t=>{"use strict";function e(t,e){return Object.prototype.hasOwnProperty.call(t,e)}t.exports=function(t,r,o,n){r=r||"&",o=o||"=";var i={};if("string"!=typeof t||0===t.length)return i;var s=/\+/g;t=t.split(r);var a=1e3;n&&"number"==typeof n.maxKeys&&(a=n.maxKeys);var u=t.length;a>0&&u>a&&(u=a);for(var p=0;p<u;++p){var c,h,l,f,d=t[p].replace(s,"%20"),y=d.indexOf(o);y>=0?(c=d.substr(0,y),h=d.substr(y+1)):(c=d,h=""),l=decodeURIComponent(c),f=decodeURIComponent(h),e(i,l)?Array.isArray(i[l])?i[l].push(f):i[l]=[i[l],f]:i[l]=f}return i}},2361:t=>{"use strict";var e=function(t){switch(typeof t){case"string":return t;case"boolean":return t?"true":"false";case"number":return isFinite(t)?t:"";default:return""}};t.exports=function(t,r,o,n){return r=r||"&",o=o||"=",null===t&&(t=void 0),"object"==typeof t?Object.keys(t).map((function(n){var i=encodeURIComponent(e(n))+o;return Array.isArray(t[n])?t[n].map((function(t){return i+encodeURIComponent(e(t))})).join(r):i+encodeURIComponent(e(t[n]))})).filter(Boolean).join(r):n?encodeURIComponent(e(n))+o+encodeURIComponent(e(t)):""}},7673:(t,e,r)=>{"use strict";e.parse=r(2587),r(2361)},6099:(t,e,r)=>{!function(t){t.parser=function(t,e){return new n(t,e)},t.SAXParser=n,t.SAXStream=s,t.createStream=function(t,e){return new s(t,e)},t.MAX_BUFFER_LENGTH=65536;var e,o=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];function n(e,r){if(!(this instanceof n))return new n(e,r);var i=this;!function(t){for(var e=0,r=o.length;e<r;e++)t[o[e]]=""}(i),i.q=i.c="",i.bufferCheckPosition=t.MAX_BUFFER_LENGTH,i.opt=r||{},i.opt.lowercase=i.opt.lowercase||i.opt.lowercasetags,i.looseCase=i.opt.lowercase?"toLowerCase":"toUpperCase",i.tags=[],i.closed=i.closedRoot=i.sawRoot=!1,i.tag=i.error=null,i.strict=!!e,i.noscript=!(!e&&!i.opt.noscript),i.state=E.BEGIN,i.strictEntities=i.opt.strictEntities,i.ENTITIES=i.strictEntities?Object.create(t.XML_ENTITIES):Object.create(t.ENTITIES),i.attribList=[],i.opt.xmlns&&(i.ns=Object.create(p)),i.trackPosition=!1!==i.opt.position,i.trackPosition&&(i.position=i.line=i.column=0),O(i,"onready")}t.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"],Object.create||(Object.create=function(t){function e(){}return e.prototype=t,new e}),Object.keys||(Object.keys=function(t){var e=[];for(var r in t)t.hasOwnProperty(r)&&e.push(r);return e}),n.prototype={end:function(){C(this)},write:function(e){var r=this;if(this.error)throw this.error;if(r.closed)return D(r,"Cannot write after close. Assign an onready handler.");if(null===e)return C(r);"object"==typeof e&&(e=e.toString());for(var n=0,i="";i=j(e,n++),r.c=i,i;)switch(r.trackPosition&&(r.position++,"\n"===i?(r.line++,r.column=0):r.column++),r.state){case E.BEGIN:if(r.state=E.BEGIN_WHITESPACE,"\ufeff"===i)continue;F(r,i);continue;case E.BEGIN_WHITESPACE:F(r,i);continue;case E.TEXT:if(r.sawRoot&&!r.closedRoot){for(var s=n-1;i&&"<"!==i&&"&"!==i;)(i=j(e,n++))&&r.trackPosition&&(r.position++,"\n"===i?(r.line++,r.column=0):r.column++);r.textNode+=e.substring(s,n-1)}"<"!==i||r.sawRoot&&r.closedRoot&&!r.strict?(d(i)||r.sawRoot&&!r.closedRoot||k(r,"Text data outside of root node."),"&"===i?r.state=E.TEXT_ENTITY:r.textNode+=i):(r.state=E.OPEN_WAKA,r.startTagPosition=r.position);continue;case E.SCRIPT:"<"===i?r.state=E.SCRIPT_ENDING:r.script+=i;continue;case E.SCRIPT_ENDING:"/"===i?r.state=E.CLOSE_TAG:(r.script+="<"+i,r.state=E.SCRIPT);continue;case E.OPEN_WAKA:if("!"===i)r.state=E.SGML_DECL,r.sgmlDecl="";else if(d(i));else if(m(c,i))r.state=E.OPEN_TAG,r.tagName=i;else if("/"===i)r.state=E.CLOSE_TAG,r.tagName="";else if("?"===i)r.state=E.PROC_INST,r.procInstName=r.procInstBody="";else{if(k(r,"Unencoded <"),r.startTagPosition+1<r.position){var a=r.position-r.startTagPosition;i=new Array(a).join(" ")+i}r.textNode+="<"+i,r.state=E.TEXT}continue;case E.SGML_DECL:"[CDATA["===(r.sgmlDecl+i).toUpperCase()?(I(r,"onopencdata"),r.state=E.CDATA,r.sgmlDecl="",r.cdata=""):r.sgmlDecl+i==="--"?(r.state=E.COMMENT,r.comment="",r.sgmlDecl=""):"DOCTYPE"===(r.sgmlDecl+i).toUpperCase()?(r.state=E.DOCTYPE,(r.doctype||r.sawRoot)&&k(r,"Inappropriately located doctype declaration"),r.doctype="",r.sgmlDecl=""):">"===i?(I(r,"onsgmldeclaration",r.sgmlDecl),r.sgmlDecl="",r.state=E.TEXT):y(i)?(r.state=E.SGML_DECL_QUOTED,r.sgmlDecl+=i):r.sgmlDecl+=i;continue;case E.SGML_DECL_QUOTED:i===r.q&&(r.state=E.SGML_DECL,r.q=""),r.sgmlDecl+=i;continue;case E.DOCTYPE:">"===i?(r.state=E.TEXT,I(r,"ondoctype",r.doctype),r.doctype=!0):(r.doctype+=i,"["===i?r.state=E.DOCTYPE_DTD:y(i)&&(r.state=E.DOCTYPE_QUOTED,r.q=i));continue;case E.DOCTYPE_QUOTED:r.doctype+=i,i===r.q&&(r.q="",r.state=E.DOCTYPE);continue;case E.DOCTYPE_DTD:r.doctype+=i,"]"===i?r.state=E.DOCTYPE:y(i)&&(r.state=E.DOCTYPE_DTD_QUOTED,r.q=i);continue;case E.DOCTYPE_DTD_QUOTED:r.doctype+=i,i===r.q&&(r.state=E.DOCTYPE_DTD,r.q="");continue;case E.COMMENT:"-"===i?r.state=E.COMMENT_ENDING:r.comment+=i;continue;case E.COMMENT_ENDING:"-"===i?(r.state=E.COMMENT_ENDED,r.comment=N(r.opt,r.comment),r.comment&&I(r,"oncomment",r.comment),r.comment=""):(r.comment+="-"+i,r.state=E.COMMENT);continue;case E.COMMENT_ENDED:">"!==i?(k(r,"Malformed comment"),r.comment+="--"+i,r.state=E.COMMENT):r.state=E.TEXT;continue;case E.CDATA:"]"===i?r.state=E.CDATA_ENDING:r.cdata+=i;continue;case E.CDATA_ENDING:"]"===i?r.state=E.CDATA_ENDING_2:(r.cdata+="]"+i,r.state=E.CDATA);continue;case E.CDATA_ENDING_2:">"===i?(r.cdata&&I(r,"oncdata",r.cdata),I(r,"onclosecdata"),r.cdata="",r.state=E.TEXT):"]"===i?r.cdata+="]":(r.cdata+="]]"+i,r.state=E.CDATA);continue;case E.PROC_INST:"?"===i?r.state=E.PROC_INST_ENDING:d(i)?r.state=E.PROC_INST_BODY:r.procInstName+=i;continue;case E.PROC_INST_BODY:if(!r.procInstBody&&d(i))continue;"?"===i?r.state=E.PROC_INST_ENDING:r.procInstBody+=i;continue;case E.PROC_INST_ENDING:">"===i?(I(r,"onprocessinginstruction",{name:r.procInstName,body:r.procInstBody}),r.procInstName=r.procInstBody="",r.state=E.TEXT):(r.procInstBody+="?"+i,r.state=E.PROC_INST_BODY);continue;case E.OPEN_TAG:m(h,i)?r.tagName+=i:(x(r),">"===i?L(r):"/"===i?r.state=E.OPEN_TAG_SLASH:(d(i)||k(r,"Invalid character in tag name"),r.state=E.ATTRIB));continue;case E.OPEN_TAG_SLASH:">"===i?(L(r,!0),R(r)):(k(r,"Forward-slash in opening tag not followed by >"),r.state=E.ATTRIB);continue;case E.ATTRIB:if(d(i))continue;">"===i?L(r):"/"===i?r.state=E.OPEN_TAG_SLASH:m(c,i)?(r.attribName=i,r.attribValue="",r.state=E.ATTRIB_NAME):k(r,"Invalid attribute name");continue;case E.ATTRIB_NAME:"="===i?r.state=E.ATTRIB_VALUE:">"===i?(k(r,"Attribute without value"),r.attribValue=r.attribName,S(r),L(r)):d(i)?r.state=E.ATTRIB_NAME_SAW_WHITE:m(h,i)?r.attribName+=i:k(r,"Invalid attribute name");continue;case E.ATTRIB_NAME_SAW_WHITE:if("="===i)r.state=E.ATTRIB_VALUE;else{if(d(i))continue;k(r,"Attribute without value"),r.tag.attributes[r.attribName]="",r.attribValue="",I(r,"onattribute",{name:r.attribName,value:""}),r.attribName="",">"===i?L(r):m(c,i)?(r.attribName=i,r.state=E.ATTRIB_NAME):(k(r,"Invalid attribute name"),r.state=E.ATTRIB)}continue;case E.ATTRIB_VALUE:if(d(i))continue;y(i)?(r.q=i,r.state=E.ATTRIB_VALUE_QUOTED):(k(r,"Unquoted attribute value"),r.state=E.ATTRIB_VALUE_UNQUOTED,r.attribValue=i);continue;case E.ATTRIB_VALUE_QUOTED:if(i!==r.q){"&"===i?r.state=E.ATTRIB_VALUE_ENTITY_Q:r.attribValue+=i;continue}S(r),r.q="",r.state=E.ATTRIB_VALUE_CLOSED;continue;case E.ATTRIB_VALUE_CLOSED:d(i)?r.state=E.ATTRIB:">"===i?L(r):"/"===i?r.state=E.OPEN_TAG_SLASH:m(c,i)?(k(r,"No whitespace between attributes"),r.attribName=i,r.attribValue="",r.state=E.ATTRIB_NAME):k(r,"Invalid attribute name");continue;case E.ATTRIB_VALUE_UNQUOTED:if(!g(i)){"&"===i?r.state=E.ATTRIB_VALUE_ENTITY_U:r.attribValue+=i;continue}S(r),">"===i?L(r):r.state=E.ATTRIB;continue;case E.CLOSE_TAG:if(r.tagName)">"===i?R(r):m(h,i)?r.tagName+=i:r.script?(r.script+="</"+r.tagName,r.tagName="",r.state=E.SCRIPT):(d(i)||k(r,"Invalid tagname in closing tag"),r.state=E.CLOSE_TAG_SAW_WHITE);else{if(d(i))continue;_(c,i)?r.script?(r.script+="</"+i,r.state=E.SCRIPT):k(r,"Invalid tagname in closing tag."):r.tagName=i}continue;case E.CLOSE_TAG_SAW_WHITE:if(d(i))continue;">"===i?R(r):k(r,"Invalid characters in closing tag");continue;case E.TEXT_ENTITY:case E.ATTRIB_VALUE_ENTITY_Q:case E.ATTRIB_VALUE_ENTITY_U:var u,p;switch(r.state){case E.TEXT_ENTITY:u=E.TEXT,p="textNode";break;case E.ATTRIB_VALUE_ENTITY_Q:u=E.ATTRIB_VALUE_QUOTED,p="attribValue";break;case E.ATTRIB_VALUE_ENTITY_U:u=E.ATTRIB_VALUE_UNQUOTED,p="attribValue"}";"===i?(r[p]+=B(r),r.entity="",r.state=u):m(r.entity.length?f:l,i)?r.entity+=i:(k(r,"Invalid character in entity name"),r[p]+="&"+r.entity+i,r.entity="",r.state=u);continue;default:throw new Error(r,"Unknown state: "+r.state)}return r.position>=r.bufferCheckPosition&&function(e){for(var r=Math.max(t.MAX_BUFFER_LENGTH,10),n=0,i=0,s=o.length;i<s;i++){var a=e[o[i]].length;if(a>r)switch(o[i]){case"textNode":P(e);break;case"cdata":I(e,"oncdata",e.cdata),e.cdata="";break;case"script":I(e,"onscript",e.script),e.script="";break;default:D(e,"Max buffer length exceeded: "+o[i])}n=Math.max(n,a)}var u=t.MAX_BUFFER_LENGTH-n;e.bufferCheckPosition=u+e.position}(r),r},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){var t;P(t=this),""!==t.cdata&&(I(t,"oncdata",t.cdata),t.cdata=""),""!==t.script&&(I(t,"onscript",t.script),t.script="")}};try{e=r(3086).Stream}catch(t){e=function(){}}var i=t.EVENTS.filter((function(t){return"error"!==t&&"end"!==t}));function s(t,r){if(!(this instanceof s))return new s(t,r);e.apply(this),this._parser=new n(t,r),this.writable=!0,this.readable=!0;var o=this;this._parser.onend=function(){o.emit("end")},this._parser.onerror=function(t){o.emit("error",t),o._parser.error=null},this._decoder=null,i.forEach((function(t){Object.defineProperty(o,"on"+t,{get:function(){return o._parser["on"+t]},set:function(e){if(!e)return o.removeAllListeners(t),o._parser["on"+t]=e,e;o.on(t,e)},enumerable:!0,configurable:!1})}))}s.prototype=Object.create(e.prototype,{constructor:{value:s}}),s.prototype.write=function(t){if("function"==typeof Buffer&&"function"==typeof Buffer.isBuffer&&Buffer.isBuffer(t)){if(!this._decoder){var e=r(2553).s;this._decoder=new e("utf8")}t=this._decoder.write(t)}return this._parser.write(t.toString()),this.emit("data",t),!0},s.prototype.end=function(t){return t&&t.length&&this.write(t),this._parser.end(),!0},s.prototype.on=function(t,r){var o=this;return o._parser["on"+t]||-1===i.indexOf(t)||(o._parser["on"+t]=function(){var e=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);e.splice(0,0,t),o.emit.apply(o,e)}),e.prototype.on.call(o,t,r)};var a="http://www.w3.org/XML/1998/namespace",u="http://www.w3.org/2000/xmlns/",p={xml:a,xmlns:u},c=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,h=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,l=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,f=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function d(t){return" "===t||"\n"===t||"\r"===t||"\t"===t}function y(t){return'"'===t||"'"===t}function g(t){return">"===t||d(t)}function m(t,e){return t.test(e)}function _(t,e){return!m(t,e)}var w,T,b,E=0;for(var v in t.STATE={BEGIN:E++,BEGIN_WHITESPACE:E++,TEXT:E++,TEXT_ENTITY:E++,OPEN_WAKA:E++,SGML_DECL:E++,SGML_DECL_QUOTED:E++,DOCTYPE:E++,DOCTYPE_QUOTED:E++,DOCTYPE_DTD:E++,DOCTYPE_DTD_QUOTED:E++,COMMENT_STARTING:E++,COMMENT:E++,COMMENT_ENDING:E++,COMMENT_ENDED:E++,CDATA:E++,CDATA_ENDING:E++,CDATA_ENDING_2:E++,PROC_INST:E++,PROC_INST_BODY:E++,PROC_INST_ENDING:E++,OPEN_TAG:E++,OPEN_TAG_SLASH:E++,ATTRIB:E++,ATTRIB_NAME:E++,ATTRIB_NAME_SAW_WHITE:E++,ATTRIB_VALUE:E++,ATTRIB_VALUE_QUOTED:E++,ATTRIB_VALUE_CLOSED:E++,ATTRIB_VALUE_UNQUOTED:E++,ATTRIB_VALUE_ENTITY_Q:E++,ATTRIB_VALUE_ENTITY_U:E++,CLOSE_TAG:E++,CLOSE_TAG_SAW_WHITE:E++,SCRIPT:E++,SCRIPT_ENDING:E++},t.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},t.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(t.ENTITIES).forEach((function(e){var r=t.ENTITIES[e],o="number"==typeof r?String.fromCharCode(r):r;t.ENTITIES[e]=o})),t.STATE)t.STATE[t.STATE[v]]=v;function O(t,e,r){t[e]&&t[e](r)}function I(t,e,r){t.textNode&&P(t),O(t,e,r)}function P(t){t.textNode=N(t.opt,t.textNode),t.textNode&&O(t,"ontext",t.textNode),t.textNode=""}function N(t,e){return t.trim&&(e=e.trim()),t.normalize&&(e=e.replace(/\s+/g," ")),e}function D(t,e){return P(t),t.trackPosition&&(e+="\nLine: "+t.line+"\nColumn: "+t.column+"\nChar: "+t.c),e=new Error(e),t.error=e,O(t,"onerror",e),t}function C(t){return t.sawRoot&&!t.closedRoot&&k(t,"Unclosed root tag"),t.state!==E.BEGIN&&t.state!==E.BEGIN_WHITESPACE&&t.state!==E.TEXT&&D(t,"Unexpected end"),P(t),t.c="",t.closed=!0,O(t,"onend"),n.call(t,t.strict,t.opt),t}function k(t,e){if("object"!=typeof t||!(t instanceof n))throw new Error("bad call to strictFail");t.strict&&D(t,e)}function x(t){t.strict||(t.tagName=t.tagName[t.looseCase]());var e=t.tags[t.tags.length-1]||t,r=t.tag={name:t.tagName,attributes:{}};t.opt.xmlns&&(r.ns=e.ns),t.attribList.length=0,I(t,"onopentagstart",r)}function A(t,e){var r=t.indexOf(":")<0?["",t]:t.split(":"),o=r[0],n=r[1];return e&&"xmlns"===t&&(o="xmlns",n=""),{prefix:o,local:n}}function S(t){if(t.strict||(t.attribName=t.attribName[t.looseCase]()),-1!==t.attribList.indexOf(t.attribName)||t.tag.attributes.hasOwnProperty(t.attribName))t.attribName=t.attribValue="";else{if(t.opt.xmlns){var e=A(t.attribName,!0),r=e.prefix,o=e.local;if("xmlns"===r)if("xml"===o&&t.attribValue!==a)k(t,"xml: prefix must be bound to "+a+"\nActual: "+t.attribValue);else if("xmlns"===o&&t.attribValue!==u)k(t,"xmlns: prefix must be bound to "+u+"\nActual: "+t.attribValue);else{var n=t.tag,i=t.tags[t.tags.length-1]||t;n.ns===i.ns&&(n.ns=Object.create(i.ns)),n.ns[o]=t.attribValue}t.attribList.push([t.attribName,t.attribValue])}else t.tag.attributes[t.attribName]=t.attribValue,I(t,"onattribute",{name:t.attribName,value:t.attribValue});t.attribName=t.attribValue=""}}function L(t,e){if(t.opt.xmlns){var r=t.tag,o=A(t.tagName);r.prefix=o.prefix,r.local=o.local,r.uri=r.ns[o.prefix]||"",r.prefix&&!r.uri&&(k(t,"Unbound namespace prefix: "+JSON.stringify(t.tagName)),r.uri=o.prefix);var n=t.tags[t.tags.length-1]||t;r.ns&&n.ns!==r.ns&&Object.keys(r.ns).forEach((function(e){I(t,"onopennamespace",{prefix:e,uri:r.ns[e]})}));for(var i=0,s=t.attribList.length;i<s;i++){var a=t.attribList[i],u=a[0],p=a[1],c=A(u,!0),h=c.prefix,l=c.local,f=""===h?"":r.ns[h]||"",d={name:u,value:p,prefix:h,local:l,uri:f};h&&"xmlns"!==h&&!f&&(k(t,"Unbound namespace prefix: "+JSON.stringify(h)),d.uri=h),t.tag.attributes[u]=d,I(t,"onattribute",d)}t.attribList.length=0}t.tag.isSelfClosing=!!e,t.sawRoot=!0,t.tags.push(t.tag),I(t,"onopentag",t.tag),e||(t.noscript||"script"!==t.tagName.toLowerCase()?t.state=E.TEXT:t.state=E.SCRIPT,t.tag=null,t.tagName=""),t.attribName=t.attribValue="",t.attribList.length=0}function R(t){if(!t.tagName)return k(t,"Weird empty close tag."),t.textNode+="</>",void(t.state=E.TEXT);if(t.script){if("script"!==t.tagName)return t.script+="</"+t.tagName+">",t.tagName="",void(t.state=E.SCRIPT);I(t,"onscript",t.script),t.script=""}var e=t.tags.length,r=t.tagName;t.strict||(r=r[t.looseCase]());for(var o=r;e--&&t.tags[e].name!==o;)k(t,"Unexpected close tag");if(e<0)return k(t,"Unmatched closing tag: "+t.tagName),t.textNode+="</"+t.tagName+">",void(t.state=E.TEXT);t.tagName=r;for(var n=t.tags.length;n-- >e;){var i=t.tag=t.tags.pop();t.tagName=t.tag.name,I(t,"onclosetag",t.tagName);var s={};for(var a in i.ns)s[a]=i.ns[a];var u=t.tags[t.tags.length-1]||t;t.opt.xmlns&&i.ns!==u.ns&&Object.keys(i.ns).forEach((function(e){var r=i.ns[e];I(t,"onclosenamespace",{prefix:e,uri:r})}))}0===e&&(t.closedRoot=!0),t.tagName=t.attribValue=t.attribName="",t.attribList.length=0,t.state=E.TEXT}function B(t){var e,r=t.entity,o=r.toLowerCase(),n="";return t.ENTITIES[r]?t.ENTITIES[r]:t.ENTITIES[o]?t.ENTITIES[o]:("#"===(r=o).charAt(0)&&("x"===r.charAt(1)?(r=r.slice(2),n=(e=parseInt(r,16)).toString(16)):(r=r.slice(1),n=(e=parseInt(r,10)).toString(10))),r=r.replace(/^0+/,""),isNaN(e)||n.toLowerCase()!==r?(k(t,"Invalid character entity"),"&"+t.entity+";"):String.fromCodePoint(e))}function F(t,e){"<"===e?(t.state=E.OPEN_WAKA,t.startTagPosition=t.position):d(e)||(k(t,"Non-whitespace before first tag."),t.textNode=e,t.state=E.TEXT)}function j(t,e){var r="";return e<t.length&&(r=t.charAt(e)),r}E=t.STATE,String.fromCodePoint||(w=String.fromCharCode,T=Math.floor,b=function(){var t,e,r=16384,o=[],n=-1,i=arguments.length;if(!i)return"";for(var s="";++n<i;){var a=Number(arguments[n]);if(!isFinite(a)||a<0||a>1114111||T(a)!==a)throw RangeError("Invalid code point: "+a);a<=65535?o.push(a):(t=55296+((a-=65536)>>10),e=a%1024+56320,o.push(t,e)),(n+1===i||o.length>r)&&(s+=w.apply(null,o),o.length=0)}return s},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:b,configurable:!0,writable:!0}):String.fromCodePoint=b)}(e)},3086:(t,e,r)=>{var o=r(624);function n(){o.call(this)}n.prototype=new o,t.exports=n,n.Stream=n,n.prototype.pipe=function(t,e){var r=this;function o(e){t.writable&&!1===t.write(e)&&r.pause&&r.pause()}function n(){r.readable&&r.resume&&r.resume()}r.on("data",o),t.on("drain",n),t._isStdio||e&&!1===e.end||(r.on("end",s),r.on("close",a));var i=!1;function s(){i||(i=!0,t.end())}function a(){i||(i=!0,"function"==typeof t.destroy&&t.destroy())}function u(t){if(p(),!this.hasListeners("error"))throw t}function p(){r.off("data",o),t.off("drain",n),r.off("end",s),r.off("close",a),r.off("error",u),t.off("error",u),r.off("end",p),r.off("close",p),t.off("end",p),t.off("close",p)}return r.on("error",u),t.on("error",u),r.on("end",p),r.on("close",p),t.on("end",p),t.on("close",p),t.emit("pipe",r),t}},2553:(t,e,r)=>{"use strict";var o=r(396).Buffer,n=o.isEncoding||function(t){switch((t=""+t)&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function i(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!=typeof e&&(o.isEncoding===n||!n(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=u,this.end=p,e=4;break;case"utf8":this.fillLast=a,e=4;break;case"base64":this.text=c,this.end=h,e=3;break;default:return this.write=l,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=o.allocUnsafe(e)}function s(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function u(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var o=r.charCodeAt(r.length-1);if(o>=55296&&o<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function p(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function c(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function h(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function l(t){return t.toString(this.encoding)}function f(t){return t&&t.length?this.write(t):""}e.s=i,i.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<t.length?e?e+this.text(t,r):this.text(t,r):e||""},i.prototype.end=function(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"�":e},i.prototype.text=function(t,e){var r=function(t,e,r){var o=e.length-1;if(o<r)return 0;var n=s(e[o]);return n>=0?(n>0&&(t.lastNeed=n-1),n):--o<r||-2===n?0:(n=s(e[o]))>=0?(n>0&&(t.lastNeed=n-2),n):--o<r||-2===n?0:(n=s(e[o]))>=0?(n>0&&(2===n?n=0:t.lastNeed=n-3),n):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var o=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,o),t.toString("utf8",e,o)},i.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},396:(t,e,r)=>{var o=r(8764),n=o.Buffer;function i(t,e){for(var r in t)e[r]=t[r]}function s(t,e,r){return n(t,e,r)}n.from&&n.alloc&&n.allocUnsafe&&n.allocUnsafeSlow?t.exports=o:(i(o,e),e.Buffer=s),i(n,s),s.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return n(t,e,r)},s.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var o=n(t);return void 0!==e?"string"==typeof r?o.fill(e,r):o.fill(e):o.fill(0),o},s.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n(t)},s.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return o.SlowBuffer(t)}},7903:t=>{function e(){this._defaults=[]}["use","on","once","set","query","type","accept","auth","withCredentials","sortQuery","retry","ok","redirects","timeout","buffer","serialize","parse","ca","key","pfx","cert"].forEach((function(t){e.prototype[t]=function(){return this._defaults.push({fn:t,arguments}),this}})),e.prototype._setDefaults=function(t){this._defaults.forEach((function(e){t[e.fn].apply(t,e.arguments)}))},t.exports=e},569:function(t,e,r){var o;"undefined"!=typeof window?o=window:"undefined"!=typeof self?o=self:(console.warn("Using browser-only version of superagent in non-browser environment"),o=this);var n=r(8767),i=r(8899),s=r(4960),a=r(1097),u=r(7903);function p(){}var c=e=t.exports=function(t,r){return"function"==typeof r?new e.Request("GET",t).end(r):1==arguments.length?new e.Request("GET",t):new e.Request(t,r)};e.Request=m,c.getXHR=function(){if(!(!o.XMLHttpRequest||o.location&&"file:"==o.location.protocol&&o.ActiveXObject))return new XMLHttpRequest;try{return new ActiveXObject("Microsoft.XMLHTTP")}catch(t){}try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(t){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(t){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(t){}throw Error("Browser-only version of superagent could not find XHR")};var h="".trim?function(t){return t.trim()}:function(t){return t.replace(/(^\s*|\s*$)/g,"")};function l(t){if(!s(t))return t;var e=[];for(var r in t)f(e,r,t[r]);return e.join("&")}function f(t,e,r){if(null!=r)if(Array.isArray(r))r.forEach((function(r){f(t,e,r)}));else if(s(r))for(var o in r)f(t,e+"["+o+"]",r[o]);else t.push(encodeURIComponent(e)+"="+encodeURIComponent(r));else null===r&&t.push(encodeURIComponent(e))}function d(t){for(var e,r,o={},n=t.split("&"),i=0,s=n.length;i<s;++i)-1==(r=(e=n[i]).indexOf("="))?o[decodeURIComponent(e)]="":o[decodeURIComponent(e.slice(0,r))]=decodeURIComponent(e.slice(r+1));return o}function y(t){return/[\/+]json($|[^-\w])/.test(t)}function g(t){this.req=t,this.xhr=this.req.xhr,this.text="HEAD"!=this.req.method&&(""===this.xhr.responseType||"text"===this.xhr.responseType)||void 0===this.xhr.responseType?this.xhr.responseText:null,this.statusText=this.req.xhr.statusText;var e=this.xhr.status;1223===e&&(e=204),this._setStatusProperties(e),this.header=this.headers=function(t){for(var e,r,o,n,i=t.split(/\r?\n/),s={},a=0,u=i.length;a<u;++a)-1!==(e=(r=i[a]).indexOf(":"))&&(o=r.slice(0,e).toLowerCase(),n=h(r.slice(e+1)),s[o]=n);return s}(this.xhr.getAllResponseHeaders()),this.header["content-type"]=this.xhr.getResponseHeader("content-type"),this._setHeaderProperties(this.header),null===this.text&&t._responseType?this.body=this.xhr.response:this.body="HEAD"!=this.req.method?this._parseBody(this.text?this.text:this.xhr.response):null}function m(t,e){var r=this;this._query=this._query||[],this.method=t,this.url=e,this.header={},this._header={},this.on("end",(function(){var t,e=null,o=null;try{o=new g(r)}catch(t){return(e=new Error("Parser is unable to parse the response")).parse=!0,e.original=t,r.xhr?(e.rawResponse=void 0===r.xhr.responseType?r.xhr.responseText:r.xhr.response,e.status=r.xhr.status?r.xhr.status:null,e.statusCode=e.status):(e.rawResponse=null,e.status=null),r.callback(e)}r.emit("response",o);try{r._isResponseOK(o)||(t=new Error(o.statusText||"Unsuccessful HTTP response"))}catch(e){t=e}t?(t.original=e,t.response=o,t.status=o.status,r.callback(t,o)):r.callback(null,o)}))}function _(t,e,r){var o=c("DELETE",t);return"function"==typeof e&&(r=e,e=null),e&&o.send(e),r&&o.end(r),o}c.serializeObject=l,c.parseString=d,c.types={html:"text/html",json:"application/json",xml:"text/xml",urlencoded:"application/x-www-form-urlencoded",form:"application/x-www-form-urlencoded","form-data":"application/x-www-form-urlencoded"},c.serialize={"application/x-www-form-urlencoded":l,"application/json":JSON.stringify},c.parse={"application/x-www-form-urlencoded":d,"application/json":JSON.parse},a(g.prototype),g.prototype._parseBody=function(t){var e=c.parse[this.type];return this.req._parser?this.req._parser(this,t):(!e&&y(this.type)&&(e=c.parse["application/json"]),e&&t&&(t.length||t instanceof Object)?e(t):null)},g.prototype.toError=function(){var t=this.req,e=t.method,r=t.url,o="cannot "+e+" "+r+" ("+this.status+")",n=new Error(o);return n.status=this.status,n.method=e,n.url=r,n},c.Response=g,n(m.prototype),i(m.prototype),m.prototype.type=function(t){return this.set("Content-Type",c.types[t]||t),this},m.prototype.accept=function(t){return this.set("Accept",c.types[t]||t),this},m.prototype.auth=function(t,e,r){1===arguments.length&&(e=""),"object"==typeof e&&null!==e&&(r=e,e=""),r||(r={type:"function"==typeof btoa?"basic":"auto"});var o=function(t){if("function"==typeof btoa)return btoa(t);throw new Error("Cannot use basic auth, btoa is not a function")};return this._auth(t,e,r,o)},m.prototype.query=function(t){return"string"!=typeof t&&(t=l(t)),t&&this._query.push(t),this},m.prototype.attach=function(t,e,r){if(e){if(this._data)throw Error("superagent can't mix .send() and .attach()");this._getFormData().append(t,e,r||e.name)}return this},m.prototype._getFormData=function(){return this._formData||(this._formData=new o.FormData),this._formData},m.prototype.callback=function(t,e){if(this._shouldRetry(t,e))return this._retry();var r=this._callback;this.clearTimeout(),t&&(this._maxRetries&&(t.retries=this._retries-1),this.emit("error",t)),r(t,e)},m.prototype.crossDomainError=function(){var t=new Error("Request has been terminated\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.");t.crossDomain=!0,t.status=this.status,t.method=this.method,t.url=this.url,this.callback(t)},m.prototype.buffer=m.prototype.ca=m.prototype.agent=function(){return console.warn("This is not supported in browser version of superagent"),this},m.prototype.pipe=m.prototype.write=function(){throw Error("Streaming is not supported in browser version of superagent")},m.prototype._isHost=function(t){return t&&"object"==typeof t&&!Array.isArray(t)&&"[object Object]"!==Object.prototype.toString.call(t)},m.prototype.end=function(t){return this._endCalled&&console.warn("Warning: .end() was called twice. This is not supported in superagent"),this._endCalled=!0,this._callback=t||p,this._finalizeQueryString(),this._end()},m.prototype._end=function(){var t=this,e=this.xhr=c.getXHR(),r=this._formData||this._data;this._setTimeouts(),e.onreadystatechange=function(){var r=e.readyState;if(r>=2&&t._responseTimeoutTimer&&clearTimeout(t._responseTimeoutTimer),4==r){var o;try{o=e.status}catch(t){o=0}if(!o){if(t.timedout||t._aborted)return;return t.crossDomainError()}t.emit("end")}};var o=function(e,r){r.total>0&&(r.percent=r.loaded/r.total*100),r.direction=e,t.emit("progress",r)};if(this.hasListeners("progress"))try{e.onprogress=o.bind(null,"download"),e.upload&&(e.upload.onprogress=o.bind(null,"upload"))}catch(t){}try{this.username&&this.password?e.open(this.method,this.url,!0,this.username,this.password):e.open(this.method,this.url,!0)}catch(t){return this.callback(t)}if(this._withCredentials&&(e.withCredentials=!0),!this._formData&&"GET"!=this.method&&"HEAD"!=this.method&&"string"!=typeof r&&!this._isHost(r)){var n=this._header["content-type"],i=this._serializer||c.serialize[n?n.split(";")[0]:""];!i&&y(n)&&(i=c.serialize["application/json"]),i&&(r=i(r))}for(var s in this.header)null!=this.header[s]&&this.header.hasOwnProperty(s)&&e.setRequestHeader(s,this.header[s]);return this._responseType&&(e.responseType=this._responseType),this.emit("request",this),e.send(void 0!==r?r:null),this},c.agent=function(){return new u},["GET","POST","OPTIONS","PATCH","PUT","DELETE"].forEach((function(t){u.prototype[t.toLowerCase()]=function(e,r){var o=new c.Request(t,e);return this._setDefaults(o),r&&o.end(r),o}})),u.prototype.del=u.prototype.delete,c.get=function(t,e,r){var o=c("GET",t);return"function"==typeof e&&(r=e,e=null),e&&o.query(e),r&&o.end(r),o},c.head=function(t,e,r){var o=c("HEAD",t);return"function"==typeof e&&(r=e,e=null),e&&o.query(e),r&&o.end(r),o},c.options=function(t,e,r){var o=c("OPTIONS",t);return"function"==typeof e&&(r=e,e=null),e&&o.send(e),r&&o.end(r),o},c.del=_,c.delete=_,c.patch=function(t,e,r){var o=c("PATCH",t);return"function"==typeof e&&(r=e,e=null),e&&o.send(e),r&&o.end(r),o},c.post=function(t,e,r){var o=c("POST",t);return"function"==typeof e&&(r=e,e=null),e&&o.send(e),r&&o.end(r),o},c.put=function(t,e,r){var o=c("PUT",t);return"function"==typeof e&&(r=e,e=null),e&&o.send(e),r&&o.end(r),o}},4960:t=>{"use strict";t.exports=function(t){return null!==t&&"object"==typeof t}},8899:(t,e,r)=>{"use strict";var o=r(4960);function n(t){if(t)return function(t){for(var e in n.prototype)t[e]=n.prototype[e];return t}(t)}t.exports=n,n.prototype.clearTimeout=function(){return clearTimeout(this._timer),clearTimeout(this._responseTimeoutTimer),delete this._timer,delete this._responseTimeoutTimer,this},n.prototype.parse=function(t){return this._parser=t,this},n.prototype.responseType=function(t){return this._responseType=t,this},n.prototype.serialize=function(t){return this._serializer=t,this},n.prototype.timeout=function(t){if(!t||"object"!=typeof t)return this._timeout=t,this._responseTimeout=0,this;for(var e in t)switch(e){case"deadline":this._timeout=t.deadline;break;case"response":this._responseTimeout=t.response;break;default:console.warn("Unknown timeout option",e)}return this},n.prototype.retry=function(t,e){return 0!==arguments.length&&!0!==t||(t=1),t<=0&&(t=0),this._maxRetries=t,this._retries=0,this._retryCallback=e,this};var i=["ECONNRESET","ETIMEDOUT","EADDRINFO","ESOCKETTIMEDOUT"];n.prototype._shouldRetry=function(t,e){if(!this._maxRetries||this._retries++>=this._maxRetries)return!1;if(this._retryCallback)try{var r=this._retryCallback(t,e);if(!0===r)return!0;if(!1===r)return!1}catch(t){console.error(t)}if(e&&e.status&&e.status>=500&&501!=e.status)return!0;if(t){if(t.code&&~i.indexOf(t.code))return!0;if(t.timeout&&"ECONNABORTED"==t.code)return!0;if(t.crossDomain)return!0}return!1},n.prototype._retry=function(){return this.clearTimeout(),this.req&&(this.req=null,this.req=this.request()),this._aborted=!1,this.timedout=!1,this._end()},n.prototype.then=function(t,e){if(!this._fullfilledPromise){var r=this;this._endCalled&&console.warn("Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises"),this._fullfilledPromise=new Promise((function(t,e){r.end((function(r,o){r?e(r):t(o)}))}))}return this._fullfilledPromise.then(t,e)},n.prototype.catch=function(t){return this.then(void 0,t)},n.prototype.use=function(t){return t(this),this},n.prototype.ok=function(t){if("function"!=typeof t)throw Error("Callback required");return this._okCallback=t,this},n.prototype._isResponseOK=function(t){return!!t&&(this._okCallback?this._okCallback(t):t.status>=200&&t.status<300)},n.prototype.get=function(t){return this._header[t.toLowerCase()]},n.prototype.getHeader=n.prototype.get,n.prototype.set=function(t,e){if(o(t)){for(var r in t)this.set(r,t[r]);return this}return this._header[t.toLowerCase()]=e,this.header[t]=e,this},n.prototype.unset=function(t){return delete this._header[t.toLowerCase()],delete this.header[t],this},n.prototype.field=function(t,e){if(null==t)throw new Error(".field(name, val) name can not be empty");if(this._data&&console.error(".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()"),o(t)){for(var r in t)this.field(r,t[r]);return this}if(Array.isArray(e)){for(var n in e)this.field(t,e[n]);return this}if(null==e)throw new Error(".field(name, val) val can not be empty");return"boolean"==typeof e&&(e=""+e),this._getFormData().append(t,e),this},n.prototype.abort=function(){return this._aborted||(this._aborted=!0,this.xhr&&this.xhr.abort(),this.req&&this.req.abort(),this.clearTimeout(),this.emit("abort")),this},n.prototype._auth=function(t,e,r,o){switch(r.type){case"basic":this.set("Authorization","Basic "+o(t+":"+e));break;case"auto":this.username=t,this.password=e;break;case"bearer":this.set("Authorization","Bearer "+t)}return this},n.prototype.withCredentials=function(t){return null==t&&(t=!0),this._withCredentials=t,this},n.prototype.redirects=function(t){return this._maxRedirects=t,this},n.prototype.maxResponseSize=function(t){if("number"!=typeof t)throw TypeError("Invalid argument");return this._maxResponseSize=t,this},n.prototype.toJSON=function(){return{method:this.method,url:this.url,data:this._data,headers:this._header}},n.prototype.send=function(t){var e=o(t),r=this._header["content-type"];if(this._formData&&console.error(".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()"),e&&!this._data)Array.isArray(t)?this._data=[]:this._isHost(t)||(this._data={});else if(t&&this._data&&this._isHost(this._data))throw Error("Can't merge these send calls");if(e&&o(this._data))for(var n in t)this._data[n]=t[n];else"string"==typeof t?(r||this.type("form"),r=this._header["content-type"],this._data="application/x-www-form-urlencoded"==r?this._data?this._data+"&"+t:t:(this._data||"")+t):this._data=t;return!e||this._isHost(t)||r||this.type("json"),this},n.prototype.sortQuery=function(t){return this._sort=void 0===t||t,this},n.prototype._finalizeQueryString=function(){var t=this._query.join("&");if(t&&(this.url+=(this.url.indexOf("?")>=0?"&":"?")+t),this._query.length=0,this._sort){var e=this.url.indexOf("?");if(e>=0){var r=this.url.substring(e+1).split("&");"function"==typeof this._sort?r.sort(this._sort):r.sort(),this.url=this.url.substring(0,e)+"?"+r.join("&")}}},n.prototype._appendQueryString=function(){console.trace("Unsupported")},n.prototype._timeoutError=function(t,e,r){if(!this._aborted){var o=new Error(t+e+"ms exceeded");o.timeout=e,o.code="ECONNABORTED",o.errno=r,this.timedout=!0,this.abort(),this.callback(o)}},n.prototype._setTimeouts=function(){var t=this;this._timeout&&!this._timer&&(this._timer=setTimeout((function(){t._timeoutError("Timeout of ",t._timeout,"ETIME")}),this._timeout)),this._responseTimeout&&!this._responseTimeoutTimer&&(this._responseTimeoutTimer=setTimeout((function(){t._timeoutError("Response timeout of ",t._responseTimeout,"ETIMEDOUT")}),this._responseTimeout))}},1097:(t,e,r)=>{"use strict";var o=r(4506);function n(t){if(t)return function(t){for(var e in n.prototype)t[e]=n.prototype[e];return t}(t)}t.exports=n,n.prototype.get=function(t){return this.header[t.toLowerCase()]},n.prototype._setHeaderProperties=function(t){var e=t["content-type"]||"";this.type=o.type(e);var r=o.params(e);for(var n in r)this[n]=r[n];this.links={};try{t.link&&(this.links=o.parseLinks(t.link))}catch(t){}},n.prototype._setStatusProperties=function(t){var e=t/100|0;this.status=this.statusCode=t,this.statusType=e,this.info=1==e,this.ok=2==e,this.redirect=3==e,this.clientError=4==e,this.serverError=5==e,this.error=(4==e||5==e)&&this.toError(),this.created=201==t,this.accepted=202==t,this.noContent=204==t,this.badRequest=400==t,this.unauthorized=401==t,this.notAcceptable=406==t,this.forbidden=403==t,this.notFound=404==t,this.unprocessableEntity=422==t}},4506:(t,e)=>{"use strict";e.type=function(t){return t.split(/ *; */).shift()},e.params=function(t){return t.split(/ *; */).reduce((function(t,e){var r=e.split(/ *= */),o=r.shift(),n=r.shift();return o&&n&&(t[o]=n),t}),{})},e.parseLinks=function(t){return t.split(/ *, */).reduce((function(t,e){var r=e.split(/ *; */),o=r[0].slice(1,-1);return t[r[1].split(/ *= */)[1].slice(1,-1)]=o,t}),{})},e.cleanHeader=function(t,e){return delete t["content-type"],delete t["content-length"],delete t["transfer-encoding"],delete t.host,e&&(delete t.authorization,delete t.cookie),t}},5663:(t,e)=>{var r={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5};for(var o in r)"millisecond"===o?r.ms=r[o]:r[o.charAt(0)]=r[o],r[o+"s"]=r[o];function n(t){this.count=0;var e=function(t){var e=t.match(i);return e&&r[e[2]]?e.slice(1):null}(t);e&&(this.time=Number(e[0])*r[e[1]],this.type=e[1])}n.prototype.do=function(t){this.time&&(this.interval=setInterval((function(){e.count++,t.call(e)}),this.time));var e=this;return this},n.prototype.stop=function(){return this.interval&&(clearInterval(this.interval),delete this.interval),this};var i=/^\s*(\d+(?:\.\d+)?)\s*([a-z]+)\s*$/},306:function(t,e){(function(){"use strict";e.stripBOM=function(t){return"\ufeff"===t[0]?t.substring(1):t}}).call(this)},4096:function(t,e,r){(function(){"use strict";var t,o,n,i,s,a={}.hasOwnProperty;t=r(5532),o=r(8381).defaults,i=function(t){return"string"==typeof t&&(t.indexOf("&")>=0||t.indexOf(">")>=0||t.indexOf("<")>=0)},s=function(t){return"<![CDATA["+n(t)+"]]>"},n=function(t){return t.replace("]]>","]]]]><![CDATA[>")},e.Builder=function(){function e(t){var e,r,n;for(e in this.options={},r=o[.2])a.call(r,e)&&(n=r[e],this.options[e]=n);for(e in t)a.call(t,e)&&(n=t[e],this.options[e]=n)}return e.prototype.buildObject=function(e){var r,n,u,p,c,h;return r=this.options.attrkey,n=this.options.charkey,1===Object.keys(e).length&&this.options.rootName===o[.2].rootName?e=e[c=Object.keys(e)[0]]:c=this.options.rootName,h=this,u=function(t,e){var o,p,c,l,f,d;if("object"!=typeof e)h.options.cdata&&i(e)?t.raw(s(e)):t.txt(e);else if(Array.isArray(e)){for(l in e)if(a.call(e,l))for(f in p=e[l])c=p[f],t=u(t.ele(f),c).up()}else for(f in e)if(a.call(e,f))if(p=e[f],f===r){if("object"==typeof p)for(o in p)d=p[o],t=t.att(o,d)}else if(f===n)t=h.options.cdata&&i(p)?t.raw(s(p)):t.txt(p);else if(Array.isArray(p))for(l in p)a.call(p,l)&&(t="string"==typeof(c=p[l])?h.options.cdata&&i(c)?t.ele(f).raw(s(c)).up():t.ele(f,c).up():u(t.ele(f),c).up());else"object"==typeof p?t=u(t.ele(f),p).up():"string"==typeof p&&h.options.cdata&&i(p)?t=t.ele(f).raw(s(p)).up():(null==p&&(p=""),t=t.ele(f,p.toString()).up());return t},p=t.create(c,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars}),u(p,e).end(this.options.renderOpts)},e}()}).call(this)},8381:function(t,e){(function(){e.defaults={.1:{explicitCharkey:!1,trim:!0,normalize:!0,normalizeTags:!1,attrkey:"@",charkey:"#",explicitArray:!1,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!1,validator:null,xmlns:!1,explicitChildren:!1,childkey:"@@",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},.2:{explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:"$",charkey:"_",explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:null,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:null,renderOpts:{pretty:!0,indent:" ",newline:"\n"},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1}}}).call(this)},9082:function(t,e,r){(function(){"use strict";var t,o,n,i,s,a,u,p,c=function(t,e){return function(){return t.apply(e,arguments)}},h={}.hasOwnProperty;u=r(6099),n=r(7187),t=r(306),a=r(7526),p=r(5663).setImmediate,o=r(8381).defaults,i=function(t){return"object"==typeof t&&null!=t&&0===Object.keys(t).length},s=function(t,e,r){var o,n;for(o=0,n=t.length;o<n;o++)e=(0,t[o])(e,r);return e},e.Parser=function(r){function n(t){var r,n,i;if(this.parseStringPromise=c(this.parseStringPromise,this),this.parseString=c(this.parseString,this),this.reset=c(this.reset,this),this.assignOrPush=c(this.assignOrPush,this),this.processAsync=c(this.processAsync,this),!(this instanceof e.Parser))return new e.Parser(t);for(r in this.options={},n=o[.2])h.call(n,r)&&(i=n[r],this.options[r]=i);for(r in t)h.call(t,r)&&(i=t[r],this.options[r]=i);this.options.xmlns&&(this.options.xmlnskey=this.options.attrkey+"ns"),this.options.normalizeTags&&(this.options.tagNameProcessors||(this.options.tagNameProcessors=[]),this.options.tagNameProcessors.unshift(a.normalize)),this.reset()}return function(t,e){for(var r in e)h.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(n,r),n.prototype.processAsync=function(){var t,e;try{return this.remaining.length<=this.options.chunkSize?(t=this.remaining,this.remaining="",this.saxParser=this.saxParser.write(t),this.saxParser.close()):(t=this.remaining.substr(0,this.options.chunkSize),this.remaining=this.remaining.substr(this.options.chunkSize,this.remaining.length),this.saxParser=this.saxParser.write(t),p(this.processAsync))}catch(t){if(e=t,!this.saxParser.errThrown)return this.saxParser.errThrown=!0,this.emit(e)}},n.prototype.assignOrPush=function(t,e,r){return e in t?(t[e]instanceof Array||(t[e]=[t[e]]),t[e].push(r)):this.options.explicitArray?t[e]=[r]:t[e]=r},n.prototype.reset=function(){var t,e,r,o,n;return this.removeAllListeners(),this.saxParser=u.parser(this.options.strict,{trim:!1,normalize:!1,xmlns:this.options.xmlns}),this.saxParser.errThrown=!1,this.saxParser.onerror=(n=this,function(t){if(n.saxParser.resume(),!n.saxParser.errThrown)return n.saxParser.errThrown=!0,n.emit("error",t)}),this.saxParser.onend=function(t){return function(){if(!t.saxParser.ended)return t.saxParser.ended=!0,t.emit("end",t.resultObject)}}(this),this.saxParser.ended=!1,this.EXPLICIT_CHARKEY=this.options.explicitCharkey,this.resultObject=null,o=[],t=this.options.attrkey,e=this.options.charkey,this.saxParser.onopentag=function(r){return function(n){var i,a,u,p,c;if((u={})[e]="",!r.options.ignoreAttrs)for(i in c=n.attributes)h.call(c,i)&&(t in u||r.options.mergeAttrs||(u[t]={}),a=r.options.attrValueProcessors?s(r.options.attrValueProcessors,n.attributes[i],i):n.attributes[i],p=r.options.attrNameProcessors?s(r.options.attrNameProcessors,i):i,r.options.mergeAttrs?r.assignOrPush(u,p,a):u[t][p]=a);return u["#name"]=r.options.tagNameProcessors?s(r.options.tagNameProcessors,n.name):n.name,r.options.xmlns&&(u[r.options.xmlnskey]={uri:n.uri,local:n.local}),o.push(u)}}(this),this.saxParser.onclosetag=function(t){return function(){var r,n,a,u,p,c,l,f,d,y;if(c=o.pop(),p=c["#name"],t.options.explicitChildren&&t.options.preserveChildrenOrder||delete c["#name"],!0===c.cdata&&(r=c.cdata,delete c.cdata),d=o[o.length-1],c[e].match(/^\s*$/)&&!r?(n=c[e],delete c[e]):(t.options.trim&&(c[e]=c[e].trim()),t.options.normalize&&(c[e]=c[e].replace(/\s{2,}/g," ").trim()),c[e]=t.options.valueProcessors?s(t.options.valueProcessors,c[e],p):c[e],1===Object.keys(c).length&&e in c&&!t.EXPLICIT_CHARKEY&&(c=c[e])),i(c)&&(c=""!==t.options.emptyTag?t.options.emptyTag:n),null!=t.options.validator&&(y="/"+function(){var t,e,r;for(r=[],t=0,e=o.length;t<e;t++)u=o[t],r.push(u["#name"]);return r}().concat(p).join("/"),function(){var e;try{c=t.options.validator(y,d&&d[p],c)}catch(r){return e=r,t.emit("error",e)}}()),t.options.explicitChildren&&!t.options.mergeAttrs&&"object"==typeof c)if(t.options.preserveChildrenOrder){if(d){for(a in d[t.options.childkey]=d[t.options.childkey]||[],l={},c)h.call(c,a)&&(l[a]=c[a]);d[t.options.childkey].push(l),delete c["#name"],1===Object.keys(c).length&&e in c&&!t.EXPLICIT_CHARKEY&&(c=c[e])}}else u={},t.options.attrkey in c&&(u[t.options.attrkey]=c[t.options.attrkey],delete c[t.options.attrkey]),!t.options.charsAsChildren&&t.options.charkey in c&&(u[t.options.charkey]=c[t.options.charkey],delete c[t.options.charkey]),Object.getOwnPropertyNames(c).length>0&&(u[t.options.childkey]=c),c=u;return o.length>0?t.assignOrPush(d,p,c):(t.options.explicitRoot&&(f=c,(c={})[p]=f),t.resultObject=c,t.saxParser.ended=!0,t.emit("end",t.resultObject))}}(this),r=function(t){return function(r){var n,i;if(i=o[o.length-1])return i[e]+=r,t.options.explicitChildren&&t.options.preserveChildrenOrder&&t.options.charsAsChildren&&(t.options.includeWhiteChars||""!==r.replace(/\\n/g,"").trim())&&(i[t.options.childkey]=i[t.options.childkey]||[],(n={"#name":"__text__"})[e]=r,t.options.normalize&&(n[e]=n[e].replace(/\s{2,}/g," ").trim()),i[t.options.childkey].push(n)),i}}(this),this.saxParser.ontext=r,this.saxParser.oncdata=function(t){var e;if(e=r(t))return e.cdata=!0}},n.prototype.parseString=function(e,r){var o;null!=r&&"function"==typeof r&&(this.on("end",(function(t){return this.reset(),r(null,t)})),this.on("error",(function(t){return this.reset(),r(t)})));try{return""===(e=e.toString()).trim()?(this.emit("end",null),!0):(e=t.stripBOM(e),this.options.async?(this.remaining=e,p(this.processAsync),this.saxParser):this.saxParser.write(e).close())}catch(t){if(o=t,!this.saxParser.errThrown&&!this.saxParser.ended)return this.emit("error",o),this.saxParser.errThrown=!0;if(this.saxParser.ended)throw o}},n.prototype.parseStringPromise=function(t){return new Promise((e=this,function(r,o){return e.parseString(t,(function(t,e){return t?o(t):r(e)}))}));var e},n}(n),e.parseString=function(t,r,o){var n,i;return null!=o?("function"==typeof o&&(n=o),"object"==typeof r&&(i=r)):("function"==typeof r&&(n=r),i={}),new e.Parser(i).parseString(t,n)},e.parseStringPromise=function(t,r){var o;return"object"==typeof r&&(o=r),new e.Parser(o).parseStringPromise(t)}}).call(this)},7526:function(t,e){(function(){"use strict";var t;t=new RegExp(/(?!xmlns)^.*:/),e.normalize=function(t){return t.toLowerCase()},e.firstCharLowerCase=function(t){return t.charAt(0).toLowerCase()+t.slice(1)},e.stripPrefix=function(e){return e.replace(t,"")},e.parseNumbers=function(t){return isNaN(t)||(t=t%1==0?parseInt(t,10):parseFloat(t)),t},e.parseBooleans=function(t){return/^(?:true|false)$/i.test(t)&&(t="true"===t.toLowerCase()),t}}).call(this)},5055:function(t,e,r){(function(){"use strict";var t,o,n,i,s={}.hasOwnProperty;o=r(8381),t=r(4096),n=r(9082),i=r(7526),e.defaults=o.defaults,e.processors=i,e.ValidationError=function(t){function e(t){this.message=t}return function(t,e){for(var r in e)s.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(e,Error),e}(),e.Builder=t.Builder,e.Parser=n.Parser,e.parseString=n.parseString,e.parseStringPromise=n.parseStringPromise}).call(this)},7557:function(t){(function(){t.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(this)},9335:function(t){(function(){t.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(this)},8369:function(t){(function(){var e,r,o,n,i,s,a,u=[].slice,p={}.hasOwnProperty;e=function(){var t,e,r,o,n,s;if(s=arguments[0],n=2<=arguments.length?u.call(arguments,1):[],i(Object.assign))Object.assign.apply(null,arguments);else for(t=0,r=n.length;t<r;t++)if(null!=(o=n[t]))for(e in o)p.call(o,e)&&(s[e]=o[e]);return s},i=function(t){return!!t&&"[object Function]"===Object.prototype.toString.call(t)},s=function(t){var e;return!!t&&("function"==(e=typeof t)||"object"===e)},o=function(t){return i(Array.isArray)?Array.isArray(t):"[object Array]"===Object.prototype.toString.call(t)},n=function(t){var e;if(o(t))return!t.length;for(e in t)if(p.call(t,e))return!1;return!0},a=function(t){var e,r;return s(t)&&(r=Object.getPrototypeOf(t))&&(e=r.constructor)&&"function"==typeof e&&e instanceof e&&Function.prototype.toString.call(e)===Function.prototype.toString.call(Object)},r=function(t){return i(t.valueOf)?t.valueOf():t},t.exports.assign=e,t.exports.isFunction=i,t.exports.isObject=s,t.exports.isArray=o,t.exports.isEmpty=n,t.exports.isPlainObject=a,t.exports.getValue=r}).call(this)},594:function(t){(function(){t.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(this)},2750:function(t,e,r){(function(){var e;e=r(9335),r(2026),t.exports=function(){function t(t,r,o){if(this.parent=t,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),null==r)throw new Error("Missing attribute name. "+this.debugInfo(r));this.name=this.stringify.name(r),this.value=this.stringify.attValue(o),this.type=e.Attribute,this.isId=!1,this.schemaTypeInfo=null}return Object.defineProperty(t.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(t.prototype,"ownerElement",{get:function(){return this.parent}}),Object.defineProperty(t.prototype,"textContent",{get:function(){return this.value},set:function(t){return this.value=t||""}}),Object.defineProperty(t.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(t.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(t.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(t.prototype,"specified",{get:function(){return!0}}),t.prototype.clone=function(){return Object.create(this)},t.prototype.toString=function(t){return this.options.writer.attribute(this,this.options.writer.filterOptions(t))},t.prototype.debugInfo=function(t){return null==(t=t||this.name)?"parent: <"+this.parent.name+">":"attribute: {"+t+"}, parent: <"+this.parent.name+">"},t.prototype.isEqualNode=function(t){return t.namespaceURI===this.namespaceURI&&t.prefix===this.prefix&&t.localName===this.localName&&t.value===this.value},t}()}).call(this)},6170:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;e=r(9335),o=r(6488),t.exports=function(t){function r(t,o){if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=e.CData,this.value=this.stringify.cdata(o)}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.cdata(this,this.options.writer.filterOptions(t))},r}(o)}).call(this)},6488:function(t,e,r){(function(){var e,o={}.hasOwnProperty;e=r(2026),t.exports=function(t){function e(t){e.__super__.constructor.call(this,t),this.value=""}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(e,t),Object.defineProperty(e.prototype,"data",{get:function(){return this.value},set:function(t){return this.value=t||""}}),Object.defineProperty(e.prototype,"length",{get:function(){return this.value.length}}),Object.defineProperty(e.prototype,"textContent",{get:function(){return this.value},set:function(t){return this.value=t||""}}),e.prototype.clone=function(){return Object.create(this)},e.prototype.substringData=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.appendData=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.insertData=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.deleteData=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.replaceData=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isEqualNode=function(t){return!!e.__super__.isEqualNode.apply(this,arguments).isEqualNode(t)&&t.data===this.data},e}(e)}).call(this)},2096:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;e=r(9335),o=r(6488),t.exports=function(t){function r(t,o){if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=e.Comment,this.value=this.stringify.comment(o)}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.comment(this,this.options.writer.filterOptions(t))},r}(o)}).call(this)},383:function(t,e,r){(function(){var e,o;e=r(3933),o=r(6210),t.exports=function(){function t(){this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new e,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=Object.create(this.defaultParams)}return Object.defineProperty(t.prototype,"parameterNames",{get:function(){return new o(Object.keys(this.defaultParams))}}),t.prototype.getParameter=function(t){return this.params.hasOwnProperty(t)?this.params[t]:null},t.prototype.canSetParameter=function(t,e){return!0},t.prototype.setParameter=function(t,e){return null!=e?this.params[t]=e:delete this.params[t]},t}()}).call(this)},3933:function(t){(function(){t.exports=function(){function t(){}return t.prototype.handleError=function(t){throw new Error(t)},t}()}).call(this)},1770:function(t){(function(){t.exports=function(){function t(){}return t.prototype.hasFeature=function(t,e){return!0},t.prototype.createDocumentType=function(t,e,r){throw new Error("This DOM method is not implemented.")},t.prototype.createDocument=function(t,e,r){throw new Error("This DOM method is not implemented.")},t.prototype.createHTMLDocument=function(t){throw new Error("This DOM method is not implemented.")},t.prototype.getFeature=function(t,e){throw new Error("This DOM method is not implemented.")},t}()}).call(this)},6210:function(t){(function(){t.exports=function(){function t(t){this.arr=t||[]}return Object.defineProperty(t.prototype,"length",{get:function(){return this.arr.length}}),t.prototype.item=function(t){return this.arr[t]||null},t.prototype.contains=function(t){return-1!==this.arr.indexOf(t)},t}()}).call(this)},1179:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;o=r(2026),e=r(9335),t.exports=function(t){function r(t,o,n,i,s,a){if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing DTD element name. "+this.debugInfo());if(null==n)throw new Error("Missing DTD attribute name. "+this.debugInfo(o));if(!i)throw new Error("Missing DTD attribute type. "+this.debugInfo(o));if(!s)throw new Error("Missing DTD attribute default. "+this.debugInfo(o));if(0!==s.indexOf("#")&&(s="#"+s),!s.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(o));if(a&&!s.match(/^(#FIXED|#DEFAULT)$/))throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(o));this.elementName=this.stringify.name(o),this.type=e.AttributeDeclaration,this.attributeName=this.stringify.name(n),this.attributeType=this.stringify.dtdAttType(i),a&&(this.defaultValue=this.stringify.dtdAttDefault(a)),this.defaultValueType=s}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.toString=function(t){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(t))},r}(o)}).call(this)},6347:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;o=r(2026),e=r(9335),t.exports=function(t){function r(t,o,n){if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing DTD element name. "+this.debugInfo());n||(n="(#PCDATA)"),Array.isArray(n)&&(n="("+n.join(",")+")"),this.name=this.stringify.name(o),this.type=e.ElementDeclaration,this.value=this.stringify.dtdElementValue(n)}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.toString=function(t){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(t))},r}(o)}).call(this)},9078:function(t,e,r){(function(){var e,o,n,i={}.hasOwnProperty;n=r(8369).isObject,o=r(2026),e=r(9335),t.exports=function(t){function r(t,o,i,s){if(r.__super__.constructor.call(this,t),null==i)throw new Error("Missing DTD entity name. "+this.debugInfo(i));if(null==s)throw new Error("Missing DTD entity value. "+this.debugInfo(i));if(this.pe=!!o,this.name=this.stringify.name(i),this.type=e.EntityDeclaration,n(s)){if(!s.pubID&&!s.sysID)throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(i));if(s.pubID&&!s.sysID)throw new Error("System identifier is required for a public external entity. "+this.debugInfo(i));if(this.internal=!1,null!=s.pubID&&(this.pubID=this.stringify.dtdPubID(s.pubID)),null!=s.sysID&&(this.sysID=this.stringify.dtdSysID(s.sysID)),null!=s.nData&&(this.nData=this.stringify.dtdNData(s.nData)),this.pe&&this.nData)throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(i))}else this.value=this.stringify.dtdEntityValue(s),this.internal=!0}return function(t,e){for(var r in e)i.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(r.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(r.prototype,"notationName",{get:function(){return this.nData||null}}),Object.defineProperty(r.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(r.prototype,"xmlEncoding",{get:function(){return null}}),Object.defineProperty(r.prototype,"xmlVersion",{get:function(){return null}}),r.prototype.toString=function(t){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(t))},r}(o)}).call(this)},4777:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;o=r(2026),e=r(9335),t.exports=function(t){function r(t,o,n){if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing DTD notation name. "+this.debugInfo(o));if(!n.pubID&&!n.sysID)throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(o));this.name=this.stringify.name(o),this.type=e.NotationDeclaration,null!=n.pubID&&(this.pubID=this.stringify.dtdPubID(n.pubID)),null!=n.sysID&&(this.sysID=this.stringify.dtdSysID(n.sysID))}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(r.prototype,"systemId",{get:function(){return this.sysID}}),r.prototype.toString=function(t){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(t))},r}(o)}).call(this)},9077:function(t,e,r){(function(){var e,o,n,i={}.hasOwnProperty;n=r(8369).isObject,o=r(2026),e=r(9335),t.exports=function(t){function r(t,o,i,s){var a;r.__super__.constructor.call(this,t),n(o)&&(o=(a=o).version,i=a.encoding,s=a.standalone),o||(o="1.0"),this.type=e.Declaration,this.version=this.stringify.xmlVersion(o),null!=i&&(this.encoding=this.stringify.xmlEncoding(i)),null!=s&&(this.standalone=this.stringify.xmlStandalone(s))}return function(t,e){for(var r in e)i.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.toString=function(t){return this.options.writer.declaration(this,this.options.writer.filterOptions(t))},r}(o)}).call(this)},6544:function(t,e,r){(function(){var e,o,n,i,s,a,u,p,c={}.hasOwnProperty;p=r(8369).isObject,u=r(2026),e=r(9335),o=r(1179),i=r(9078),n=r(6347),s=r(4777),a=r(663),t.exports=function(t){function r(t,o,n){var i,s,a,u,c,h;if(r.__super__.constructor.call(this,t),this.type=e.DocType,t.children)for(s=0,a=(u=t.children).length;s<a;s++)if((i=u[s]).type===e.Element){this.name=i.name;break}this.documentObject=t,p(o)&&(o=(c=o).pubID,n=c.sysID),null==n&&(n=(h=[o,n])[0],o=h[1]),null!=o&&(this.pubID=this.stringify.dtdPubID(o)),null!=n&&(this.sysID=this.stringify.dtdSysID(n))}return function(t,e){for(var r in e)c.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"entities",{get:function(){var t,r,o,n,i;for(n={},r=0,o=(i=this.children).length;r<o;r++)(t=i[r]).type!==e.EntityDeclaration||t.pe||(n[t.name]=t);return new a(n)}}),Object.defineProperty(r.prototype,"notations",{get:function(){var t,r,o,n,i;for(n={},r=0,o=(i=this.children).length;r<o;r++)(t=i[r]).type===e.NotationDeclaration&&(n[t.name]=t);return new a(n)}}),Object.defineProperty(r.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(r.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(r.prototype,"internalSubset",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),r.prototype.element=function(t,e){var r;return r=new n(this,t,e),this.children.push(r),this},r.prototype.attList=function(t,e,r,n,i){var s;return s=new o(this,t,e,r,n,i),this.children.push(s),this},r.prototype.entity=function(t,e){var r;return r=new i(this,!1,t,e),this.children.push(r),this},r.prototype.pEntity=function(t,e){var r;return r=new i(this,!0,t,e),this.children.push(r),this},r.prototype.notation=function(t,e){var r;return r=new s(this,t,e),this.children.push(r),this},r.prototype.toString=function(t){return this.options.writer.docType(this,this.options.writer.filterOptions(t))},r.prototype.ele=function(t,e){return this.element(t,e)},r.prototype.att=function(t,e,r,o,n){return this.attList(t,e,r,o,n)},r.prototype.ent=function(t,e){return this.entity(t,e)},r.prototype.pent=function(t,e){return this.pEntity(t,e)},r.prototype.not=function(t,e){return this.notation(t,e)},r.prototype.up=function(){return this.root()||this.documentObject},r.prototype.isEqualNode=function(t){return!!r.__super__.isEqualNode.apply(this,arguments).isEqualNode(t)&&t.name===this.name&&t.publicId===this.publicId&&t.systemId===this.systemId},r}(u)}).call(this)},6934:function(t,e,r){(function(){var e,o,n,i,s,a,u,p={}.hasOwnProperty;u=r(8369).isPlainObject,n=r(1770),o=r(383),i=r(2026),e=r(9335),a=r(5549),s=r(6434),t.exports=function(t){function r(t){r.__super__.constructor.call(this,null),this.name="#document",this.type=e.Document,this.documentURI=null,this.domConfig=new o,t||(t={}),t.writer||(t.writer=new s),this.options=t,this.stringify=new a(t)}return function(t,e){for(var r in e)p.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"implementation",{value:new n}),Object.defineProperty(r.prototype,"doctype",{get:function(){var t,r,o,n;for(r=0,o=(n=this.children).length;r<o;r++)if((t=n[r]).type===e.DocType)return t;return null}}),Object.defineProperty(r.prototype,"documentElement",{get:function(){return this.rootObject||null}}),Object.defineProperty(r.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(r.prototype,"strictErrorChecking",{get:function(){return!1}}),Object.defineProperty(r.prototype,"xmlEncoding",{get:function(){return 0!==this.children.length&&this.children[0].type===e.Declaration?this.children[0].encoding:null}}),Object.defineProperty(r.prototype,"xmlStandalone",{get:function(){return 0!==this.children.length&&this.children[0].type===e.Declaration&&"yes"===this.children[0].standalone}}),Object.defineProperty(r.prototype,"xmlVersion",{get:function(){return 0!==this.children.length&&this.children[0].type===e.Declaration?this.children[0].version:"1.0"}}),Object.defineProperty(r.prototype,"URL",{get:function(){return this.documentURI}}),Object.defineProperty(r.prototype,"origin",{get:function(){return null}}),Object.defineProperty(r.prototype,"compatMode",{get:function(){return null}}),Object.defineProperty(r.prototype,"characterSet",{get:function(){return null}}),Object.defineProperty(r.prototype,"contentType",{get:function(){return null}}),r.prototype.end=function(t){var e;return e={},t?u(t)&&(e=t,t=this.options.writer):t=this.options.writer,t.document(this,t.filterOptions(e))},r.prototype.toString=function(t){return this.options.writer.document(this,this.options.writer.filterOptions(t))},r.prototype.createElement=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createDocumentFragment=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createTextNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createComment=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createCDATASection=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createProcessingInstruction=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createAttribute=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createEntityReference=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.importNode=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createElementNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createAttributeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagNameNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementById=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.adoptNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.normalizeDocument=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.renameNode=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByClassName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createEvent=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createRange=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createNodeIterator=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createTreeWalker=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r}(i)}).call(this)},9227:function(t,e,r){(function(){var e,o,n,i,s,a,u,p,c,h,l,f,d,y,g,m,_,w,T,b,E,v,O,I={}.hasOwnProperty;O=r(8369),E=O.isObject,b=O.isFunction,v=O.isPlainObject,T=O.getValue,e=r(9335),f=r(6934),d=r(2161),i=r(6170),s=r(2096),g=r(9406),w=r(3595),y=r(9181),h=r(9077),l=r(6544),a=r(1179),p=r(9078),u=r(6347),c=r(4777),n=r(2750),_=r(5549),m=r(6434),o=r(594),t.exports=function(){function t(t,r,o){var n;this.name="?xml",this.type=e.Document,t||(t={}),n={},t.writer?v(t.writer)&&(n=t.writer,t.writer=new m):t.writer=new m,this.options=t,this.writer=t.writer,this.writerOptions=this.writer.filterOptions(n),this.stringify=new _(t),this.onDataCallback=r||function(){},this.onEndCallback=o||function(){},this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}return t.prototype.createChildNode=function(t){var r,o,n,i,s,a,u,p;switch(t.type){case e.CData:this.cdata(t.value);break;case e.Comment:this.comment(t.value);break;case e.Element:for(o in n={},u=t.attribs)I.call(u,o)&&(r=u[o],n[o]=r.value);this.node(t.name,n);break;case e.Dummy:this.dummy();break;case e.Raw:this.raw(t.value);break;case e.Text:this.text(t.value);break;case e.ProcessingInstruction:this.instruction(t.target,t.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+t.constructor.name)}for(s=0,a=(p=t.children).length;s<a;s++)i=p[s],this.createChildNode(i),i.type===e.Element&&this.up();return this},t.prototype.dummy=function(){return this},t.prototype.node=function(t,e,r){var o;if(null==t)throw new Error("Missing node name.");if(this.root&&-1===this.currentLevel)throw new Error("Document can only have one root node. "+this.debugInfo(t));return this.openCurrent(),t=T(t),null==e&&(e={}),e=T(e),E(e)||(r=(o=[e,r])[0],e=o[1]),this.currentNode=new d(this,t,e),this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,null!=r&&this.text(r),this},t.prototype.element=function(t,r,o){var n,i,s,a,u,p;if(this.currentNode&&this.currentNode.type===e.DocType)this.dtdElement.apply(this,arguments);else if(Array.isArray(t)||E(t)||b(t))for(a=this.options.noValidation,this.options.noValidation=!0,(p=new f(this.options).element("TEMP_ROOT")).element(t),this.options.noValidation=a,i=0,s=(u=p.children).length;i<s;i++)n=u[i],this.createChildNode(n),n.type===e.Element&&this.up();else this.node(t,r,o);return this},t.prototype.attribute=function(t,e){var r,o;if(!this.currentNode||this.currentNode.children)throw new Error("att() can only be used immediately after an ele() call in callback mode. "+this.debugInfo(t));if(null!=t&&(t=T(t)),E(t))for(r in t)I.call(t,r)&&(o=t[r],this.attribute(r,o));else b(e)&&(e=e.apply()),this.options.keepNullAttributes&&null==e?this.currentNode.attribs[t]=new n(this,t,""):null!=e&&(this.currentNode.attribs[t]=new n(this,t,e));return this},t.prototype.text=function(t){var e;return this.openCurrent(),e=new w(this,t),this.onData(this.writer.text(e,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.cdata=function(t){var e;return this.openCurrent(),e=new i(this,t),this.onData(this.writer.cdata(e,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.comment=function(t){var e;return this.openCurrent(),e=new s(this,t),this.onData(this.writer.comment(e,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.raw=function(t){var e;return this.openCurrent(),e=new g(this,t),this.onData(this.writer.raw(e,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.instruction=function(t,e){var r,o,n,i,s;if(this.openCurrent(),null!=t&&(t=T(t)),null!=e&&(e=T(e)),Array.isArray(t))for(r=0,i=t.length;r<i;r++)o=t[r],this.instruction(o);else if(E(t))for(o in t)I.call(t,o)&&(n=t[o],this.instruction(o,n));else b(e)&&(e=e.apply()),s=new y(this,t,e),this.onData(this.writer.processingInstruction(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this},t.prototype.declaration=function(t,e,r){var o;if(this.openCurrent(),this.documentStarted)throw new Error("declaration() must be the first node.");return o=new h(this,t,e,r),this.onData(this.writer.declaration(o,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.doctype=function(t,e,r){if(this.openCurrent(),null==t)throw new Error("Missing root node name.");if(this.root)throw new Error("dtd() must come before the root node.");return this.currentNode=new l(this,e,r),this.currentNode.rootNodeName=t,this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,this},t.prototype.dtdElement=function(t,e){var r;return this.openCurrent(),r=new u(this,t,e),this.onData(this.writer.dtdElement(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.attList=function(t,e,r,o,n){var i;return this.openCurrent(),i=new a(this,t,e,r,o,n),this.onData(this.writer.dtdAttList(i,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.entity=function(t,e){var r;return this.openCurrent(),r=new p(this,!1,t,e),this.onData(this.writer.dtdEntity(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.pEntity=function(t,e){var r;return this.openCurrent(),r=new p(this,!0,t,e),this.onData(this.writer.dtdEntity(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.notation=function(t,e){var r;return this.openCurrent(),r=new c(this,t,e),this.onData(this.writer.dtdNotation(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.up=function(){if(this.currentLevel<0)throw new Error("The document node has no parent.");return this.currentNode?(this.currentNode.children?this.closeNode(this.currentNode):this.openNode(this.currentNode),this.currentNode=null):this.closeNode(this.openTags[this.currentLevel]),delete this.openTags[this.currentLevel],this.currentLevel--,this},t.prototype.end=function(){for(;this.currentLevel>=0;)this.up();return this.onEnd()},t.prototype.openCurrent=function(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)},t.prototype.openNode=function(t){var r,n,i,s;if(!t.isOpen){if(this.root||0!==this.currentLevel||t.type!==e.Element||(this.root=t),n="",t.type===e.Element){for(i in this.writerOptions.state=o.OpenTag,n=this.writer.indent(t,this.writerOptions,this.currentLevel)+"<"+t.name,s=t.attribs)I.call(s,i)&&(r=s[i],n+=this.writer.attribute(r,this.writerOptions,this.currentLevel));n+=(t.children?">":"/>")+this.writer.endline(t,this.writerOptions,this.currentLevel),this.writerOptions.state=o.InsideTag}else this.writerOptions.state=o.OpenTag,n=this.writer.indent(t,this.writerOptions,this.currentLevel)+"<!DOCTYPE "+t.rootNodeName,t.pubID&&t.sysID?n+=' PUBLIC "'+t.pubID+'" "'+t.sysID+'"':t.sysID&&(n+=' SYSTEM "'+t.sysID+'"'),t.children?(n+=" [",this.writerOptions.state=o.InsideTag):(this.writerOptions.state=o.CloseTag,n+=">"),n+=this.writer.endline(t,this.writerOptions,this.currentLevel);return this.onData(n,this.currentLevel),t.isOpen=!0}},t.prototype.closeNode=function(t){var r;if(!t.isClosed)return"",this.writerOptions.state=o.CloseTag,r=t.type===e.Element?this.writer.indent(t,this.writerOptions,this.currentLevel)+"</"+t.name+">"+this.writer.endline(t,this.writerOptions,this.currentLevel):this.writer.indent(t,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(t,this.writerOptions,this.currentLevel),this.writerOptions.state=o.None,this.onData(r,this.currentLevel),t.isClosed=!0},t.prototype.onData=function(t,e){return this.documentStarted=!0,this.onDataCallback(t,e+1)},t.prototype.onEnd=function(){return this.documentCompleted=!0,this.onEndCallback()},t.prototype.debugInfo=function(t){return null==t?"":"node: <"+t+">"},t.prototype.ele=function(){return this.element.apply(this,arguments)},t.prototype.nod=function(t,e,r){return this.node(t,e,r)},t.prototype.txt=function(t){return this.text(t)},t.prototype.dat=function(t){return this.cdata(t)},t.prototype.com=function(t){return this.comment(t)},t.prototype.ins=function(t,e){return this.instruction(t,e)},t.prototype.dec=function(t,e,r){return this.declaration(t,e,r)},t.prototype.dtd=function(t,e,r){return this.doctype(t,e,r)},t.prototype.e=function(t,e,r){return this.element(t,e,r)},t.prototype.n=function(t,e,r){return this.node(t,e,r)},t.prototype.t=function(t){return this.text(t)},t.prototype.d=function(t){return this.cdata(t)},t.prototype.c=function(t){return this.comment(t)},t.prototype.r=function(t){return this.raw(t)},t.prototype.i=function(t,e){return this.instruction(t,e)},t.prototype.att=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},t.prototype.a=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},t.prototype.ent=function(t,e){return this.entity(t,e)},t.prototype.pent=function(t,e){return this.pEntity(t,e)},t.prototype.not=function(t,e){return this.notation(t,e)},t}()}).call(this)},8833:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;o=r(2026),e=r(9335),t.exports=function(t){function r(t){r.__super__.constructor.call(this,t),this.type=e.Dummy}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return""},r}(o)}).call(this)},2161:function(t,e,r){(function(){var e,o,n,i,s,a,u,p,c={}.hasOwnProperty;p=r(8369),u=p.isObject,a=p.isFunction,s=p.getValue,i=r(2026),e=r(9335),o=r(2750),n=r(663),t.exports=function(t){function r(t,o,n){var i,s,a,u;if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(o),this.type=e.Element,this.attribs={},this.schemaTypeInfo=null,null!=n&&this.attribute(n),t.type===e.Document&&(this.isRoot=!0,this.documentObject=t,t.rootObject=this,t.children))for(s=0,a=(u=t.children).length;s<a;s++)if((i=u[s]).type===e.DocType){i.name=this.name;break}}return function(t,e){for(var r in e)c.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"tagName",{get:function(){return this.name}}),Object.defineProperty(r.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(r.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(r.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(r.prototype,"id",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(r.prototype,"className",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(r.prototype,"classList",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(r.prototype,"attributes",{get:function(){return this.attributeMap&&this.attributeMap.nodes||(this.attributeMap=new n(this.attribs)),this.attributeMap}}),r.prototype.clone=function(){var t,e,r,o;for(e in(r=Object.create(this)).isRoot&&(r.documentObject=null),r.attribs={},o=this.attribs)c.call(o,e)&&(t=o[e],r.attribs[e]=t.clone());return r.children=[],this.children.forEach((function(t){var e;return(e=t.clone()).parent=r,r.children.push(e)})),r},r.prototype.attribute=function(t,e){var r,n;if(null!=t&&(t=s(t)),u(t))for(r in t)c.call(t,r)&&(n=t[r],this.attribute(r,n));else a(e)&&(e=e.apply()),this.options.keepNullAttributes&&null==e?this.attribs[t]=new o(this,t,""):null!=e&&(this.attribs[t]=new o(this,t,e));return this},r.prototype.removeAttribute=function(t){var e,r,o;if(null==t)throw new Error("Missing attribute name. "+this.debugInfo());if(t=s(t),Array.isArray(t))for(r=0,o=t.length;r<o;r++)e=t[r],delete this.attribs[e];else delete this.attribs[t];return this},r.prototype.toString=function(t){return this.options.writer.element(this,this.options.writer.filterOptions(t))},r.prototype.att=function(t,e){return this.attribute(t,e)},r.prototype.a=function(t,e){return this.attribute(t,e)},r.prototype.getAttribute=function(t){return this.attribs.hasOwnProperty(t)?this.attribs[t].value:null},r.prototype.setAttribute=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getAttributeNode=function(t){return this.attribs.hasOwnProperty(t)?this.attribs[t]:null},r.prototype.setAttributeNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.removeAttributeNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getAttributeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.setAttributeNS=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.removeAttributeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getAttributeNodeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.setAttributeNodeNS=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagNameNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.hasAttribute=function(t){return this.attribs.hasOwnProperty(t)},r.prototype.hasAttributeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.setIdAttribute=function(t,e){return this.attribs.hasOwnProperty(t)?this.attribs[t].isId:e},r.prototype.setIdAttributeNS=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.setIdAttributeNode=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagNameNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByClassName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.isEqualNode=function(t){var e,o,n;if(!r.__super__.isEqualNode.apply(this,arguments).isEqualNode(t))return!1;if(t.namespaceURI!==this.namespaceURI)return!1;if(t.prefix!==this.prefix)return!1;if(t.localName!==this.localName)return!1;if(t.attribs.length!==this.attribs.length)return!1;for(e=o=0,n=this.attribs.length-1;0<=n?o<=n:o>=n;e=0<=n?++o:--o)if(!this.attribs[e].isEqualNode(t.attribs[e]))return!1;return!0},r}(i)}).call(this)},663:function(t){(function(){t.exports=function(){function t(t){this.nodes=t}return Object.defineProperty(t.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.getNamedItem=function(t){return this.nodes[t]},t.prototype.setNamedItem=function(t){var e;return e=this.nodes[t.nodeName],this.nodes[t.nodeName]=t,e||null},t.prototype.removeNamedItem=function(t){var e;return e=this.nodes[t],delete this.nodes[t],e||null},t.prototype.item=function(t){return this.nodes[Object.keys(this.nodes)[t]]||null},t.prototype.getNamedItemNS=function(t,e){throw new Error("This DOM method is not implemented.")},t.prototype.setNamedItemNS=function(t){throw new Error("This DOM method is not implemented.")},t.prototype.removeNamedItemNS=function(t,e){throw new Error("This DOM method is not implemented.")},t}()}).call(this)},2026:function(t,e,r){(function(){var e,o,n,i,s,a,u,p,c,h,l,f,d,y,g,m,_,w={}.hasOwnProperty;_=r(8369),m=_.isObject,g=_.isFunction,y=_.isEmpty,d=_.getValue,p=null,n=null,i=null,s=null,a=null,l=null,f=null,h=null,u=null,o=null,c=null,e=null,t.exports=function(){function t(t){this.parent=t,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,p||(p=r(2161),n=r(6170),i=r(2096),s=r(9077),a=r(6544),l=r(9406),f=r(3595),h=r(9181),u=r(8833),o=r(9335),c=r(2390),r(663),e=r(7557))}return Object.defineProperty(t.prototype,"nodeName",{get:function(){return this.name}}),Object.defineProperty(t.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(t.prototype,"nodeValue",{get:function(){return this.value}}),Object.defineProperty(t.prototype,"parentNode",{get:function(){return this.parent}}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.childNodeList&&this.childNodeList.nodes||(this.childNodeList=new c(this.children)),this.childNodeList}}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this.children[0]||null}}),Object.defineProperty(t.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}}),Object.defineProperty(t.prototype,"previousSibling",{get:function(){var t;return t=this.parent.children.indexOf(this),this.parent.children[t-1]||null}}),Object.defineProperty(t.prototype,"nextSibling",{get:function(){var t;return t=this.parent.children.indexOf(this),this.parent.children[t+1]||null}}),Object.defineProperty(t.prototype,"ownerDocument",{get:function(){return this.document()||null}}),Object.defineProperty(t.prototype,"textContent",{get:function(){var t,e,r,n,i;if(this.nodeType===o.Element||this.nodeType===o.DocumentFragment){for(i="",e=0,r=(n=this.children).length;e<r;e++)(t=n[e]).textContent&&(i+=t.textContent);return i}return null},set:function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),t.prototype.setParent=function(t){var e,r,o,n,i;for(this.parent=t,t&&(this.options=t.options,this.stringify=t.stringify),i=[],r=0,o=(n=this.children).length;r<o;r++)e=n[r],i.push(e.setParent(this));return i},t.prototype.element=function(t,e,r){var o,n,i,s,a,u,p,c,h,l,f;if(u=null,null===e&&null==r&&(e=(h=[{},null])[0],r=h[1]),null==e&&(e={}),e=d(e),m(e)||(r=(l=[e,r])[0],e=l[1]),null!=t&&(t=d(t)),Array.isArray(t))for(i=0,p=t.length;i<p;i++)n=t[i],u=this.element(n);else if(g(t))u=this.element(t.apply());else if(m(t)){for(a in t)if(w.call(t,a))if(f=t[a],g(f)&&(f=f.apply()),!this.options.ignoreDecorators&&this.stringify.convertAttKey&&0===a.indexOf(this.stringify.convertAttKey))u=this.attribute(a.substr(this.stringify.convertAttKey.length),f);else if(!this.options.separateArrayItems&&Array.isArray(f)&&y(f))u=this.dummy();else if(m(f)&&y(f))u=this.element(a);else if(this.options.keepNullNodes||null!=f)if(!this.options.separateArrayItems&&Array.isArray(f))for(s=0,c=f.length;s<c;s++)n=f[s],(o={})[a]=n,u=this.element(o);else m(f)?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===a.indexOf(this.stringify.convertTextKey)?u=this.element(f):(u=this.element(a)).element(f):u=this.element(a,f);else u=this.dummy()}else u=this.options.keepNullNodes||null!==r?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===t.indexOf(this.stringify.convertTextKey)?this.text(r):!this.options.ignoreDecorators&&this.stringify.convertCDataKey&&0===t.indexOf(this.stringify.convertCDataKey)?this.cdata(r):!this.options.ignoreDecorators&&this.stringify.convertCommentKey&&0===t.indexOf(this.stringify.convertCommentKey)?this.comment(r):!this.options.ignoreDecorators&&this.stringify.convertRawKey&&0===t.indexOf(this.stringify.convertRawKey)?this.raw(r):!this.options.ignoreDecorators&&this.stringify.convertPIKey&&0===t.indexOf(this.stringify.convertPIKey)?this.instruction(t.substr(this.stringify.convertPIKey.length),r):this.node(t,e,r):this.dummy();if(null==u)throw new Error("Could not create any elements with: "+t+". "+this.debugInfo());return u},t.prototype.insertBefore=function(t,e,r){var o,n,i,s,a;if(null!=t?t.type:void 0)return s=e,(i=t).setParent(this),s?(n=children.indexOf(s),a=children.splice(n),children.push(i),Array.prototype.push.apply(children,a)):children.push(i),i;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(t));return n=this.parent.children.indexOf(this),a=this.parent.children.splice(n),o=this.parent.element(t,e,r),Array.prototype.push.apply(this.parent.children,a),o},t.prototype.insertAfter=function(t,e,r){var o,n,i;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(t));return n=this.parent.children.indexOf(this),i=this.parent.children.splice(n+1),o=this.parent.element(t,e,r),Array.prototype.push.apply(this.parent.children,i),o},t.prototype.remove=function(){var t;if(this.isRoot)throw new Error("Cannot remove the root element. "+this.debugInfo());return t=this.parent.children.indexOf(this),[].splice.apply(this.parent.children,[t,t-t+1].concat([])),this.parent},t.prototype.node=function(t,e,r){var o,n;return null!=t&&(t=d(t)),e||(e={}),e=d(e),m(e)||(r=(n=[e,r])[0],e=n[1]),o=new p(this,t,e),null!=r&&o.text(r),this.children.push(o),o},t.prototype.text=function(t){var e;return m(t)&&this.element(t),e=new f(this,t),this.children.push(e),this},t.prototype.cdata=function(t){var e;return e=new n(this,t),this.children.push(e),this},t.prototype.comment=function(t){var e;return e=new i(this,t),this.children.push(e),this},t.prototype.commentBefore=function(t){var e,r;return e=this.parent.children.indexOf(this),r=this.parent.children.splice(e),this.parent.comment(t),Array.prototype.push.apply(this.parent.children,r),this},t.prototype.commentAfter=function(t){var e,r;return e=this.parent.children.indexOf(this),r=this.parent.children.splice(e+1),this.parent.comment(t),Array.prototype.push.apply(this.parent.children,r),this},t.prototype.raw=function(t){var e;return e=new l(this,t),this.children.push(e),this},t.prototype.dummy=function(){return new u(this)},t.prototype.instruction=function(t,e){var r,o,n,i,s;if(null!=t&&(t=d(t)),null!=e&&(e=d(e)),Array.isArray(t))for(i=0,s=t.length;i<s;i++)r=t[i],this.instruction(r);else if(m(t))for(r in t)w.call(t,r)&&(o=t[r],this.instruction(r,o));else g(e)&&(e=e.apply()),n=new h(this,t,e),this.children.push(n);return this},t.prototype.instructionBefore=function(t,e){var r,o;return r=this.parent.children.indexOf(this),o=this.parent.children.splice(r),this.parent.instruction(t,e),Array.prototype.push.apply(this.parent.children,o),this},t.prototype.instructionAfter=function(t,e){var r,o;return r=this.parent.children.indexOf(this),o=this.parent.children.splice(r+1),this.parent.instruction(t,e),Array.prototype.push.apply(this.parent.children,o),this},t.prototype.declaration=function(t,e,r){var n,i;return n=this.document(),i=new s(n,t,e,r),0===n.children.length?n.children.unshift(i):n.children[0].type===o.Declaration?n.children[0]=i:n.children.unshift(i),n.root()||n},t.prototype.dtd=function(t,e){var r,n,i,s,u,p,c,h,l;for(r=this.document(),n=new a(r,t,e),i=s=0,p=(h=r.children).length;s<p;i=++s)if(h[i].type===o.DocType)return r.children[i]=n,n;for(i=u=0,c=(l=r.children).length;u<c;i=++u)if(l[i].isRoot)return r.children.splice(i,0,n),n;return r.children.push(n),n},t.prototype.up=function(){if(this.isRoot)throw new Error("The root node has no parent. Use doc() if you need to get the document object.");return this.parent},t.prototype.root=function(){var t;for(t=this;t;){if(t.type===o.Document)return t.rootObject;if(t.isRoot)return t;t=t.parent}},t.prototype.document=function(){var t;for(t=this;t;){if(t.type===o.Document)return t;t=t.parent}},t.prototype.end=function(t){return this.document().end(t)},t.prototype.prev=function(){var t;if((t=this.parent.children.indexOf(this))<1)throw new Error("Already at the first node. "+this.debugInfo());return this.parent.children[t-1]},t.prototype.next=function(){var t;if(-1===(t=this.parent.children.indexOf(this))||t===this.parent.children.length-1)throw new Error("Already at the last node. "+this.debugInfo());return this.parent.children[t+1]},t.prototype.importDocument=function(t){var e;return(e=t.root().clone()).parent=this,e.isRoot=!1,this.children.push(e),this},t.prototype.debugInfo=function(t){var e,r;return null!=(t=t||this.name)||(null!=(e=this.parent)?e.name:void 0)?null==t?"parent: <"+this.parent.name+">":(null!=(r=this.parent)?r.name:void 0)?"node: <"+t+">, parent: <"+this.parent.name+">":"node: <"+t+">":""},t.prototype.ele=function(t,e,r){return this.element(t,e,r)},t.prototype.nod=function(t,e,r){return this.node(t,e,r)},t.prototype.txt=function(t){return this.text(t)},t.prototype.dat=function(t){return this.cdata(t)},t.prototype.com=function(t){return this.comment(t)},t.prototype.ins=function(t,e){return this.instruction(t,e)},t.prototype.doc=function(){return this.document()},t.prototype.dec=function(t,e,r){return this.declaration(t,e,r)},t.prototype.e=function(t,e,r){return this.element(t,e,r)},t.prototype.n=function(t,e,r){return this.node(t,e,r)},t.prototype.t=function(t){return this.text(t)},t.prototype.d=function(t){return this.cdata(t)},t.prototype.c=function(t){return this.comment(t)},t.prototype.r=function(t){return this.raw(t)},t.prototype.i=function(t,e){return this.instruction(t,e)},t.prototype.u=function(){return this.up()},t.prototype.importXMLBuilder=function(t){return this.importDocument(t)},t.prototype.replaceChild=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.removeChild=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.appendChild=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.hasChildNodes=function(){return 0!==this.children.length},t.prototype.cloneNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.normalize=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.isSupported=function(t,e){return!0},t.prototype.hasAttributes=function(){return 0!==this.attribs.length},t.prototype.compareDocumentPosition=function(t){var r,o;return(r=this)===t?0:this.document()!==t.document()?(o=e.Disconnected|e.ImplementationSpecific,Math.random()<.5?o|=e.Preceding:o|=e.Following,o):r.isAncestor(t)?e.Contains|e.Preceding:r.isDescendant(t)?e.Contains|e.Following:r.isPreceding(t)?e.Preceding:e.Following},t.prototype.isSameNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.lookupPrefix=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.isDefaultNamespace=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.lookupNamespaceURI=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.isEqualNode=function(t){var e,r,o;if(t.nodeType!==this.nodeType)return!1;if(t.children.length!==this.children.length)return!1;for(e=r=0,o=this.children.length-1;0<=o?r<=o:r>=o;e=0<=o?++r:--r)if(!this.children[e].isEqualNode(t.children[e]))return!1;return!0},t.prototype.getFeature=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.setUserData=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.getUserData=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.contains=function(t){return!!t&&(t===this||this.isDescendant(t))},t.prototype.isDescendant=function(t){var e,r,o,n;for(r=0,o=(n=this.children).length;r<o;r++){if(t===(e=n[r]))return!0;if(e.isDescendant(t))return!0}return!1},t.prototype.isAncestor=function(t){return t.isDescendant(this)},t.prototype.isPreceding=function(t){var e,r;return e=this.treePosition(t),r=this.treePosition(this),-1!==e&&-1!==r&&e<r},t.prototype.isFollowing=function(t){var e,r;return e=this.treePosition(t),r=this.treePosition(this),-1!==e&&-1!==r&&e>r},t.prototype.treePosition=function(t){var e,r;return r=0,e=!1,this.foreachTreeNode(this.document(),(function(o){if(r++,!e&&o===t)return e=!0})),e?r:-1},t.prototype.foreachTreeNode=function(t,e){var r,o,n,i,s;for(t||(t=this.document()),o=0,n=(i=t.children).length;o<n;o++){if(s=e(r=i[o]))return s;if(s=this.foreachTreeNode(r,e))return s}},t}()}).call(this)},2390:function(t){(function(){t.exports=function(){function t(t){this.nodes=t}return Object.defineProperty(t.prototype,"length",{get:function(){return this.nodes.length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.item=function(t){return this.nodes[t]||null},t}()}).call(this)},9181:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;e=r(9335),o=r(6488),t.exports=function(t){function r(t,o,n){if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing instruction target. "+this.debugInfo());this.type=e.ProcessingInstruction,this.target=this.stringify.insTarget(o),this.name=this.target,n&&(this.value=this.stringify.insValue(n))}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(t))},r.prototype.isEqualNode=function(t){return!!r.__super__.isEqualNode.apply(this,arguments).isEqualNode(t)&&t.target===this.target},r}(o)}).call(this)},9406:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;e=r(9335),o=r(2026),t.exports=function(t){function r(t,o){if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing raw text. "+this.debugInfo());this.type=e.Raw,this.value=this.stringify.raw(o)}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.raw(this,this.options.writer.filterOptions(t))},r}(o)}).call(this)},1996:function(t,e,r){(function(){var e,o,n,i={}.hasOwnProperty;e=r(9335),n=r(751),o=r(594),t.exports=function(t){function r(t,e){this.stream=t,r.__super__.constructor.call(this,e)}return function(t,e){for(var r in e)i.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),r.prototype.endline=function(t,e,n){return t.isLastRootNode&&e.state===o.CloseTag?"":r.__super__.endline.call(this,t,e,n)},r.prototype.document=function(t,e){var r,o,n,i,s,a,u,p,c;for(o=n=0,s=(u=t.children).length;n<s;o=++n)(r=u[o]).isLastRootNode=o===t.children.length-1;for(e=this.filterOptions(e),c=[],i=0,a=(p=t.children).length;i<a;i++)r=p[i],c.push(this.writeChildNode(r,e,0));return c},r.prototype.attribute=function(t,e,o){return this.stream.write(r.__super__.attribute.call(this,t,e,o))},r.prototype.cdata=function(t,e,o){return this.stream.write(r.__super__.cdata.call(this,t,e,o))},r.prototype.comment=function(t,e,o){return this.stream.write(r.__super__.comment.call(this,t,e,o))},r.prototype.declaration=function(t,e,o){return this.stream.write(r.__super__.declaration.call(this,t,e,o))},r.prototype.docType=function(t,e,r){var n,i,s,a;if(r||(r=0),this.openNode(t,e,r),e.state=o.OpenTag,this.stream.write(this.indent(t,e,r)),this.stream.write("<!DOCTYPE "+t.root().name),t.pubID&&t.sysID?this.stream.write(' PUBLIC "'+t.pubID+'" "'+t.sysID+'"'):t.sysID&&this.stream.write(' SYSTEM "'+t.sysID+'"'),t.children.length>0){for(this.stream.write(" ["),this.stream.write(this.endline(t,e,r)),e.state=o.InsideTag,i=0,s=(a=t.children).length;i<s;i++)n=a[i],this.writeChildNode(n,e,r+1);e.state=o.CloseTag,this.stream.write("]")}return e.state=o.CloseTag,this.stream.write(e.spaceBeforeSlash+">"),this.stream.write(this.endline(t,e,r)),e.state=o.None,this.closeNode(t,e,r)},r.prototype.element=function(t,r,n){var s,a,u,p,c,h,l,f,d;for(l in n||(n=0),this.openNode(t,r,n),r.state=o.OpenTag,this.stream.write(this.indent(t,r,n)+"<"+t.name),f=t.attribs)i.call(f,l)&&(s=f[l],this.attribute(s,r,n));if(p=0===(u=t.children.length)?null:t.children[0],0===u||t.children.every((function(t){return(t.type===e.Text||t.type===e.Raw)&&""===t.value})))r.allowEmpty?(this.stream.write(">"),r.state=o.CloseTag,this.stream.write("</"+t.name+">")):(r.state=o.CloseTag,this.stream.write(r.spaceBeforeSlash+"/>"));else if(!r.pretty||1!==u||p.type!==e.Text&&p.type!==e.Raw||null==p.value){for(this.stream.write(">"+this.endline(t,r,n)),r.state=o.InsideTag,c=0,h=(d=t.children).length;c<h;c++)a=d[c],this.writeChildNode(a,r,n+1);r.state=o.CloseTag,this.stream.write(this.indent(t,r,n)+"</"+t.name+">")}else this.stream.write(">"),r.state=o.InsideTag,r.suppressPrettyCount++,this.writeChildNode(p,r,n+1),r.suppressPrettyCount--,r.state=o.CloseTag,this.stream.write("</"+t.name+">");return this.stream.write(this.endline(t,r,n)),r.state=o.None,this.closeNode(t,r,n)},r.prototype.processingInstruction=function(t,e,o){return this.stream.write(r.__super__.processingInstruction.call(this,t,e,o))},r.prototype.raw=function(t,e,o){return this.stream.write(r.__super__.raw.call(this,t,e,o))},r.prototype.text=function(t,e,o){return this.stream.write(r.__super__.text.call(this,t,e,o))},r.prototype.dtdAttList=function(t,e,o){return this.stream.write(r.__super__.dtdAttList.call(this,t,e,o))},r.prototype.dtdElement=function(t,e,o){return this.stream.write(r.__super__.dtdElement.call(this,t,e,o))},r.prototype.dtdEntity=function(t,e,o){return this.stream.write(r.__super__.dtdEntity.call(this,t,e,o))},r.prototype.dtdNotation=function(t,e,o){return this.stream.write(r.__super__.dtdNotation.call(this,t,e,o))},r}(n)}).call(this)},6434:function(t,e,r){(function(){var e,o={}.hasOwnProperty;e=r(751),t.exports=function(t){function e(t){e.__super__.constructor.call(this,t)}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(e,t),e.prototype.document=function(t,e){var r,o,n,i,s;for(e=this.filterOptions(e),i="",o=0,n=(s=t.children).length;o<n;o++)r=s[o],i+=this.writeChildNode(r,e,0);return e.pretty&&i.slice(-e.newline.length)===e.newline&&(i=i.slice(0,-e.newline.length)),i},e}(e)}).call(this)},5549:function(t){(function(){var e=function(t,e){return function(){return t.apply(e,arguments)}},r={}.hasOwnProperty;t.exports=function(){function t(t){var o,n,i;for(o in this.assertLegalName=e(this.assertLegalName,this),this.assertLegalChar=e(this.assertLegalChar,this),t||(t={}),this.options=t,this.options.version||(this.options.version="1.0"),n=t.stringify||{})r.call(n,o)&&(i=n[o],this[o]=i)}return t.prototype.name=function(t){return this.options.noValidation?t:this.assertLegalName(""+t||"")},t.prototype.text=function(t){return this.options.noValidation?t:this.assertLegalChar(this.textEscape(""+t||""))},t.prototype.cdata=function(t){return this.options.noValidation?t:(t=(t=""+t||"").replace("]]>","]]]]><![CDATA[>"),this.assertLegalChar(t))},t.prototype.comment=function(t){if(this.options.noValidation)return t;if((t=""+t||"").match(/--/))throw new Error("Comment text cannot contain double-hypen: "+t);return this.assertLegalChar(t)},t.prototype.raw=function(t){return this.options.noValidation?t:""+t||""},t.prototype.attValue=function(t){return this.options.noValidation?t:this.assertLegalChar(this.attEscape(t=""+t||""))},t.prototype.insTarget=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.insValue=function(t){if(this.options.noValidation)return t;if((t=""+t||"").match(/\?>/))throw new Error("Invalid processing instruction value: "+t);return this.assertLegalChar(t)},t.prototype.xmlVersion=function(t){if(this.options.noValidation)return t;if(!(t=""+t||"").match(/1\.[0-9]+/))throw new Error("Invalid version number: "+t);return t},t.prototype.xmlEncoding=function(t){if(this.options.noValidation)return t;if(!(t=""+t||"").match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw new Error("Invalid encoding: "+t);return this.assertLegalChar(t)},t.prototype.xmlStandalone=function(t){return this.options.noValidation?t:t?"yes":"no"},t.prototype.dtdPubID=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdSysID=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdElementValue=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdAttType=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdAttDefault=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdEntityValue=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdNData=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.convertAttKey="@",t.prototype.convertPIKey="?",t.prototype.convertTextKey="#text",t.prototype.convertCDataKey="#cdata",t.prototype.convertCommentKey="#comment",t.prototype.convertRawKey="#raw",t.prototype.assertLegalChar=function(t){var e,r;if(this.options.noValidation)return t;if(e="","1.0"===this.options.version){if(e=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,r=t.match(e))throw new Error("Invalid character in string: "+t+" at index "+r.index)}else if("1.1"===this.options.version&&(e=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,r=t.match(e)))throw new Error("Invalid character in string: "+t+" at index "+r.index);return t},t.prototype.assertLegalName=function(t){var e;if(this.options.noValidation)return t;if(this.assertLegalChar(t),e=/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/,!t.match(e))throw new Error("Invalid character in name");return t},t.prototype.textEscape=function(t){var e;return this.options.noValidation?t:(e=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,t.replace(e,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\r/g,"&#xD;"))},t.prototype.attEscape=function(t){var e;return this.options.noValidation?t:(e=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,t.replace(e,"&amp;").replace(/</g,"&lt;").replace(/"/g,"&quot;").replace(/\t/g,"&#x9;").replace(/\n/g,"&#xA;").replace(/\r/g,"&#xD;"))},t}()}).call(this)},3595:function(t,e,r){(function(){var e,o,n={}.hasOwnProperty;e=r(9335),o=r(6488),t.exports=function(t){function r(t,o){if(r.__super__.constructor.call(this,t),null==o)throw new Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=e.Text,this.value=this.stringify.text(o)}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(r.prototype,"wholeText",{get:function(){var t,e,r;for(r="",e=this.previousSibling;e;)r=e.data+r,e=e.previousSibling;for(r+=this.data,t=this.nextSibling;t;)r+=t.data,t=t.nextSibling;return r}}),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.text(this,this.options.writer.filterOptions(t))},r.prototype.splitText=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.replaceWholeText=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r}(o)}).call(this)},751:function(t,e,r){(function(){var e,o,n,i={}.hasOwnProperty;n=r(8369).assign,e=r(9335),r(9077),r(6544),r(6170),r(2096),r(2161),r(9406),r(3595),r(9181),r(8833),r(1179),r(6347),r(9078),r(4777),o=r(594),t.exports=function(){function t(t){var e,r,o;for(e in t||(t={}),this.options=t,r=t.writer||{})i.call(r,e)&&(o=r[e],this["_"+e]=this[e],this[e]=o)}return t.prototype.filterOptions=function(t){var e,r,i,s,a,u,p,c;return t||(t={}),t=n({},this.options,t),(e={writer:this}).pretty=t.pretty||!1,e.allowEmpty=t.allowEmpty||!1,e.indent=null!=(r=t.indent)?r:" ",e.newline=null!=(i=t.newline)?i:"\n",e.offset=null!=(s=t.offset)?s:0,e.dontPrettyTextNodes=null!=(a=null!=(u=t.dontPrettyTextNodes)?u:t.dontprettytextnodes)?a:0,e.spaceBeforeSlash=null!=(p=null!=(c=t.spaceBeforeSlash)?c:t.spacebeforeslash)?p:"",!0===e.spaceBeforeSlash&&(e.spaceBeforeSlash=" "),e.suppressPrettyCount=0,e.user={},e.state=o.None,e},t.prototype.indent=function(t,e,r){var o;return!e.pretty||e.suppressPrettyCount?"":e.pretty&&(o=(r||0)+e.offset+1)>0?new Array(o).join(e.indent):""},t.prototype.endline=function(t,e,r){return!e.pretty||e.suppressPrettyCount?"":e.newline},t.prototype.attribute=function(t,e,r){var o;return this.openAttribute(t,e,r),o=" "+t.name+'="'+t.value+'"',this.closeAttribute(t,e,r),o},t.prototype.cdata=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r)+"<![CDATA[",e.state=o.InsideTag,n+=t.value,e.state=o.CloseTag,n+="]]>"+this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.comment=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r)+"\x3c!-- ",e.state=o.InsideTag,n+=t.value,e.state=o.CloseTag,n+=" --\x3e"+this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.declaration=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r)+"<?xml",e.state=o.InsideTag,n+=' version="'+t.version+'"',null!=t.encoding&&(n+=' encoding="'+t.encoding+'"'),null!=t.standalone&&(n+=' standalone="'+t.standalone+'"'),e.state=o.CloseTag,n+=e.spaceBeforeSlash+"?>",n+=this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.docType=function(t,e,r){var n,i,s,a,u;if(r||(r=0),this.openNode(t,e,r),e.state=o.OpenTag,a=this.indent(t,e,r),a+="<!DOCTYPE "+t.root().name,t.pubID&&t.sysID?a+=' PUBLIC "'+t.pubID+'" "'+t.sysID+'"':t.sysID&&(a+=' SYSTEM "'+t.sysID+'"'),t.children.length>0){for(a+=" [",a+=this.endline(t,e,r),e.state=o.InsideTag,i=0,s=(u=t.children).length;i<s;i++)n=u[i],a+=this.writeChildNode(n,e,r+1);e.state=o.CloseTag,a+="]"}return e.state=o.CloseTag,a+=e.spaceBeforeSlash+">",a+=this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),a},t.prototype.element=function(t,r,n){var s,a,u,p,c,h,l,f,d,y,g,m,_,w;for(d in n||(n=0),y=!1,g="",this.openNode(t,r,n),r.state=o.OpenTag,g+=this.indent(t,r,n)+"<"+t.name,m=t.attribs)i.call(m,d)&&(s=m[d],g+=this.attribute(s,r,n));if(p=0===(u=t.children.length)?null:t.children[0],0===u||t.children.every((function(t){return(t.type===e.Text||t.type===e.Raw)&&""===t.value})))r.allowEmpty?(g+=">",r.state=o.CloseTag,g+="</"+t.name+">"+this.endline(t,r,n)):(r.state=o.CloseTag,g+=r.spaceBeforeSlash+"/>"+this.endline(t,r,n));else if(!r.pretty||1!==u||p.type!==e.Text&&p.type!==e.Raw||null==p.value){if(r.dontPrettyTextNodes)for(c=0,l=(_=t.children).length;c<l;c++)if(((a=_[c]).type===e.Text||a.type===e.Raw)&&null!=a.value){r.suppressPrettyCount++,y=!0;break}for(g+=">"+this.endline(t,r,n),r.state=o.InsideTag,h=0,f=(w=t.children).length;h<f;h++)a=w[h],g+=this.writeChildNode(a,r,n+1);r.state=o.CloseTag,g+=this.indent(t,r,n)+"</"+t.name+">",y&&r.suppressPrettyCount--,g+=this.endline(t,r,n),r.state=o.None}else g+=">",r.state=o.InsideTag,r.suppressPrettyCount++,y=!0,g+=this.writeChildNode(p,r,n+1),r.suppressPrettyCount--,y=!1,r.state=o.CloseTag,g+="</"+t.name+">"+this.endline(t,r,n);return this.closeNode(t,r,n),g},t.prototype.writeChildNode=function(t,r,o){switch(t.type){case e.CData:return this.cdata(t,r,o);case e.Comment:return this.comment(t,r,o);case e.Element:return this.element(t,r,o);case e.Raw:return this.raw(t,r,o);case e.Text:return this.text(t,r,o);case e.ProcessingInstruction:return this.processingInstruction(t,r,o);case e.Dummy:return"";case e.Declaration:return this.declaration(t,r,o);case e.DocType:return this.docType(t,r,o);case e.AttributeDeclaration:return this.dtdAttList(t,r,o);case e.ElementDeclaration:return this.dtdElement(t,r,o);case e.EntityDeclaration:return this.dtdEntity(t,r,o);case e.NotationDeclaration:return this.dtdNotation(t,r,o);default:throw new Error("Unknown XML node type: "+t.constructor.name)}},t.prototype.processingInstruction=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r)+"<?",e.state=o.InsideTag,n+=t.target,t.value&&(n+=" "+t.value),e.state=o.CloseTag,n+=e.spaceBeforeSlash+"?>",n+=this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.raw=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r),e.state=o.InsideTag,n+=t.value,e.state=o.CloseTag,n+=this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.text=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r),e.state=o.InsideTag,n+=t.value,e.state=o.CloseTag,n+=this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.dtdAttList=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r)+"<!ATTLIST",e.state=o.InsideTag,n+=" "+t.elementName+" "+t.attributeName+" "+t.attributeType,"#DEFAULT"!==t.defaultValueType&&(n+=" "+t.defaultValueType),t.defaultValue&&(n+=' "'+t.defaultValue+'"'),e.state=o.CloseTag,n+=e.spaceBeforeSlash+">"+this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.dtdElement=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r)+"<!ELEMENT",e.state=o.InsideTag,n+=" "+t.name+" "+t.value,e.state=o.CloseTag,n+=e.spaceBeforeSlash+">"+this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.dtdEntity=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r)+"<!ENTITY",e.state=o.InsideTag,t.pe&&(n+=" %"),n+=" "+t.name,t.value?n+=' "'+t.value+'"':(t.pubID&&t.sysID?n+=' PUBLIC "'+t.pubID+'" "'+t.sysID+'"':t.sysID&&(n+=' SYSTEM "'+t.sysID+'"'),t.nData&&(n+=" NDATA "+t.nData)),e.state=o.CloseTag,n+=e.spaceBeforeSlash+">"+this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.dtdNotation=function(t,e,r){var n;return this.openNode(t,e,r),e.state=o.OpenTag,n=this.indent(t,e,r)+"<!NOTATION",e.state=o.InsideTag,n+=" "+t.name,t.pubID&&t.sysID?n+=' PUBLIC "'+t.pubID+'" "'+t.sysID+'"':t.pubID?n+=' PUBLIC "'+t.pubID+'"':t.sysID&&(n+=' SYSTEM "'+t.sysID+'"'),e.state=o.CloseTag,n+=e.spaceBeforeSlash+">"+this.endline(t,e,r),e.state=o.None,this.closeNode(t,e,r),n},t.prototype.openNode=function(t,e,r){},t.prototype.closeNode=function(t,e,r){},t.prototype.openAttribute=function(t,e,r){},t.prototype.closeAttribute=function(t,e,r){},t}()}).call(this)},5532:function(t,e,r){(function(){var e,o,n,i,s,a,u,p,c,h;h=r(8369),p=h.assign,c=h.isFunction,n=r(1770),i=r(6934),s=r(9227),u=r(6434),a=r(1996),e=r(9335),o=r(594),t.exports.create=function(t,e,r,o){var n,s;if(null==t)throw new Error("Root element needs a name.");return o=p({},e,r,o),s=(n=new i(o)).element(t),o.headless||(n.declaration(o),null==o.pubID&&null==o.sysID||n.dtd(o)),s},t.exports.begin=function(t,e,r){var o;return c(t)&&(e=(o=[t,e])[0],r=o[1],t={}),e?new s(t,e,r):new i(t)},t.exports.stringWriter=function(t){return new u(t)},t.exports.streamWriter=function(t,e){return new a(t,e)},t.exports.implementation=new n,t.exports.nodeType=e,t.exports.writerState=o}).call(this)}},e={};function r(o){var n=e[o];if(void 0!==n)return n.exports;var i=e[o]={exports:{}};return t[o].call(i.exports,i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var o in e)r.o(e,o)&&!r.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),(()=>{"use strict";var t=r(5513),e=r.n(t);function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function n(t,e){for(var r=0;r<e.length;r++){var o=e[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function i(t,e){return(i=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function s(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var u=wp.element,p=u.Component,c=u.createRef,h=wp.i18n.__,l=wp.components.Snackbar,f=wp.data.dispatch("core/notices").createNotice,d=function(t){l&&f("info",t,{isDismissible:!0,type:"snackbar"})};const y=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&i(t,e)}(l,t);var e,r,o,u,p=(o=l,u=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=a(o);if(u){var r=a(this).constructor;t=Reflect.construct(e,arguments,r)}else t=e.apply(this,arguments);return s(this,t)});function l(t){var e;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,l),(e=p.call(this,t)).img=e.props.result.url_m,e.fullSize=e.props.result.url_l,e.imgTitle=e.props.result.title,e.setAsFeaturedImage=!1,e.insertIntoPost=!1,e.inProgress=!1,e.SetFeaturedImage=e.props.SetFeaturedImage,e.InsertImage=e.props.InsertImage,e.noticeRef=c(),e.imageRef=c(),e.photoContainerRef=c(),e.state={attachmentId:""},e}return e=l,(r=[{key:"uploadPhoto",value:function(t){t.preventDefault();var e=this,r=t.currentTarget,o=r.parentElement.parentElement.parentElement.parentElement.parentElement,n=this.noticeRef.current,i=this.imageRef.current;if(r.classList.contains("download")&&""!==this.state.attachmentId)return!1;if(i.classList.add("uploading"),o.classList.add("in-progress"),n.innerHTML=h("Downloading Image...","themeisle-companion"),this.inProgress=!0,""!==this.state.attachmentId)return this.doPhotoAction(r,o,this.state.attachmentId),!0;if(void 0===this.fullSize)return e.uploadError(r,o,h("Error! Empty image.","themeisle-companion")),!1;var s=new FormData;s.append("action","handle-request-"+mystock_import.slug),s.append("url",this.fullSize),s.append("security",mystock_import.nonce),wp.apiFetch({url:mystock_import.ajaxurl,method:"POST",body:s}).then((function(t){t&&!0===t.success&&t.data.attachment.id?(e.doPhotoAction(r,o,t.data.attachment.id),e.setState({attachmentId:t.data.attachment.id})):e.uploadError(r,o,t.data.msg)})).catch((function(){e.uploadError(r,o,h("There was an error. Please try again.","themeisle-companion"))}))}},{key:"doPhotoAction",value:function(t,e,r){this.uploadComplete(t,e,r),this.setAsFeaturedImage&&(this.SetFeaturedImage(r),this.setAsFeaturedImage=!1),this.insertIntoPost&&(this.InsertImage(this.fullSize,this.imgTitle),this.insertIntoPost=!1)}},{key:"uploadError",value:function(t,e,r){var o=this.imageRef.current;o.classList.remove("uploading"),o.classList.add("errors"),this.photoContainerRef.current.classList.remove("in-progress"),t.parentNode.parentNode.classList.add("disabled"),setTimeout((function(){o.classList.remove("errors"),t.parentNode.parentNode.classList.remove("disabled")}),3e3,t,e),d(r),this.inProgress=!1,console.warn(r)}},{key:"uploadComplete",value:function(t,e,r){this.setState({attachmentId:r});var o=this.imageRef.current;o.classList.remove("uploading"),o.classList.add("success"),e.classList.remove("in-progress"),e.classList.add("uploaded","done"),t.parentNode.parentNode.classList.add("disabled"),setTimeout((function(){o.classList.remove("success"),e.classList.remove("uploaded"),t.parentNode.parentNode.classList.remove("disabled")}),3e3,t,e),this.inProgress=!1,t.classList.contains("download")&&d(h("Image was added to Media Library.","themeisle-companion")),t.classList.contains("set-featured")&&d(h("Image was set as featured image.","themeisle-companion")),t.classList.contains("insert")&&d(h("Image was inserted in post content.","themeisle-companion"))}},{key:"setFeaturedImageClick",value:function(t){if(!t.currentTarget)return!1;this.setAsFeaturedImage=!0,this.uploadPhoto(t)}},{key:"insertImageIntoPost",value:function(t){if(!t.currentTarget)return!1;this.insertIntoPost=!0,this.uploadPhoto(t)}},{key:"render",value:function(){var t=this;return React.createElement("article",{className:"photo",ref:this.photoContainerRef},React.createElement("div",{className:"photo--wrap"},React.createElement("div",{className:"img-wrap"},React.createElement("a",{className:"upload",href:"#",ref:this.imageRef},React.createElement("img",{src:this.img,alt:this.imgTitle}),React.createElement("div",{className:"status"})),React.createElement("div",{ref:this.noticeRef,className:"notice-msg"}),React.createElement("div",{className:"user-controls"},React.createElement("div",{className:"photo-options"},React.createElement("a",{className:"download fade",href:"#",onClick:function(e){return t.uploadPhoto(e)},title:h("Add to Media Library","themeisle-companion")},React.createElement("span",{className:"dashicons dashicons-download"})),React.createElement("a",{className:"set-featured fade",href:"#",onClick:function(e){return t.setFeaturedImageClick(e)},title:h("Set as featured image","themeisle-companion")},React.createElement("span",{className:"dashicons dashicons-format-image"})),React.createElement("a",{className:"insert fade",href:"#",onClick:function(e){return t.insertImageIntoPost(e)},title:h("Insert into post","themeisle-companion")},React.createElement("span",{className:"dashicons dashicons-plus"})))))))}}])&&n(e.prototype,r),l}(p);function g(t){return(g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function m(t,e){for(var r=0;r<e.length;r++){var o=e[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function _(t,e){return(_=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function w(t,e){return!e||"object"!==g(e)&&"function"!=typeof e?T(t):e}function T(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function b(t){return(b=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var E=wp.components.Spinner,v=wp.element,O=v.Component,I=v.createRef,P=wp.i18n.__;const N=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&_(t,e)}(a,t);var r,o,n,i,s=(n=a,i=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}(),function(){var t,e=b(n);if(i){var r=b(this).constructor;t=Reflect.construct(e,arguments,r)}else t=e.apply(this,arguments);return w(this,t)});function a(t){var r;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,a),(r=s.call(this,t)).apiKey=mystock_import.api_key,r.userId=mystock_import.user_id,r.perPage=mystock_import.per_page,r.flickr=new(e())(r.apiKey),r.results=r.props.results?r.props.results:[],r.state={results:r.results},r.isSearch=!1,r.search_term="",r.nothingFound=!1,r.isLoading=!1,r.isDone=!1,r.page=r.props.page,r.SetFeaturedImage=r.props.SetFeaturedImage?r.props.SetFeaturedImage.bind(T(r)):"",r.InsertImage=r.props.InsertImage?r.props.InsertImage.bind(T(r)):"",r.errorRef=I(),r.searchRef=I(),r}return r=a,(o=[{key:"test",value:function(){var t=this,e=this.errorRef.current;this.flickr.test.echo(this.apiKey).then((function(r){(r.statusCode<200||r.statusCode>=400)&&t.renderTestError(e)}))}},{key:"renderTestError",value:function(t){t.classList.add("active"),t.innerHTML=P("There was an error accessing the server. Please try again later. If you still receive this error, contact the support team.","themeisle-companion")}},{key:"getPhotos",value:function(){var t=this;if(this.page=parseInt(this.page)+1,this.isLoading=!0,this.isSearch)this.doSearch(this.search_term,!0);else{var e={api_key:this.apiKey,user_id:this.userId,per_page:this.perPage,extras:"url_m, url_l",page:this.page};this.flickr.people.getPublicPhotos(e).then((function(e){var r=e.body.photos.photo;r.map((function(e){t.results.push(e)})),t.checkTotalResults(r.length),t.setState({results:t.results})})).catch((function(e){console.log(e),t.isLoading=!1}))}}},{key:"checkTotalResults",value:function(t){this.isDone=t<this.perPage}},{key:"search",value:function(t){t.preventDefault();var e=this.searchRef.current,r=e.value;r.length>2?(e.classList.add("searching"),this.search_term=r,this.nothingFound=!1,this.isSearch=!0,this.page=0,this.doSearch(this.search_term)):e.focus()}},{key:"doSearch",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this;this.page=parseInt(this.page)+1;var o=this.searchRef.current;!0!==e&&(r.results=[],r.setState({results:[]}));var n={api_key:this.apiKey,user_id:this.userId,text:this.search_term,per_page:this.perPage,extras:"url_m, url_l",page:this.page};this.flickr.photos.search(n).then((function(t){var e=t.body.photos.photo;0===e.length&&(r.nothingFound=!0),0===e.length&&!1===r.append&&(r.nothingFound=!0),e.map((function(t){r.results.push(t)})),r.checkTotalResults(e.length),r.setState({results:r.results}),o.classList.remove("searching")})).catch((function(t){console.log(t),r.isLoading=!1}))}},{key:"resetSearch",value:function(){var t=this.searchRef.current;this.isSearch=!1,this.page=0,this.results=[],t.value="",this.getPhotos()}},{key:"componentDidMount",value:function(){this.test(),this.page=0,this.getPhotos()}},{key:"render",value:function(){var t=this,e="",r="";return this.isDone||(e=React.createElement("div",{className:"load-more-wrap"},React.createElement("button",{type:"button",className:"button",onClick:function(){return t.getPhotos()}},P("Load More Images","themeisle-companion")))),0!==this.results.length||this.nothingFound||(r=React.createElement("div",{className:"loading-wrap"},React.createElement("h3",null,P("Loading images...","themeisle-companion")),React.createElement(E,null))),React.createElement("div",{id:"photo-listing"},React.createElement("div",{className:"search-field",id:"search-bar"},React.createElement("form",{onSubmit:function(e){return t.search(e)},autoComplete:"off"},React.createElement("input",{ref:this.searchRef,type:"text",id:"photo-search",placeholder:P("Search","themeisle-companion")}),React.createElement("button",{type:"submit",id:"photo-search-submit"},React.createElement("span",{className:"dashicons dashicons-search"})),React.createElement("button",{id:"clear-search",onClick:function(e){return t.resetSearch()}},React.createElement("span",{className:"dashicons dashicons-no"})))),React.createElement("div",{ref:this.errorRef,className:"error-messaging"}),React.createElement("div",{id:"msp-photos"},r,this.state.results.map((function(e,r){return React.createElement(y,{result:e,key:e.id+r,SetFeaturedImage:t.SetFeaturedImage,InsertImage:t.InsertImage})}))),React.createElement("div",{className:!0===this.nothingFound&&this.isSearch?"no-results show":"no-results",title:this.props.title},React.createElement("h3",null,P("Sorry, nothing matched your query.","themeisle-companion")," "),React.createElement("p",null,P("Please try with another word.","themeisle-companion")," ")),e)}}])&&m(r.prototype,o),a}(O);var D=wp.data.dispatch;const C=function(t){if(null===t)return!1;D("core/editor").editPost({featured_media:t})};var k=wp.blocks.createBlock,x=wp.data.dispatch,A=(x("core/block-editor")||x("core/editor")).insertBlocks;const S=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(""===t)return!1;var r=k("core/image",{url:t,alt:e});A(r)};var L=wp.element.Fragment,R=wp.editPost,B=R.PluginSidebar,F=R.PluginSidebarMoreMenuItem,j=wp.i18n.__;var M=wp.plugins.registerPlugin,G=wp.components.Icon;M("mystock-images",{icon:React.createElement(G,{icon:"camera"}),render:function(){return React.createElement(L,null,React.createElement(F,{target:"mystock-sidebar"},j("MyStockPhotos","themeisle-companion")),React.createElement(B,{name:"mystock-sidebar",title:j("MyStockPhotos","themeisle-companion")},React.createElement("div",{className:"mystock-img-container"},React.createElement(N,{page:1,SetFeaturedImage:C,InsertImage:S}))))}})})()})();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ !function(t){var e={};function r(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)r.d(n,o,function(e){return t[e]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=91)}([function(t,e){(function(){t.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(this)},function(t,e,r){(function(){var e,n,o,i,s,a,u,c,h,p,l,f,d,y,g,m,_,w={}.hasOwnProperty;_=r(2),m=_.isObject,g=_.isFunction,y=_.isEmpty,d=_.getValue,c=null,o=null,i=null,s=null,a=null,l=null,f=null,p=null,u=null,n=null,h=null,e=null,t.exports=function(){function t(t){this.parent=t,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,c||(c=r(16),o=r(18),i=r(19),s=r(20),a=r(21),l=r(26),f=r(27),p=r(28),u=r(40),n=r(0),h=r(72),r(17),e=r(73))}return Object.defineProperty(t.prototype,"nodeName",{get:function(){return this.name}}),Object.defineProperty(t.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(t.prototype,"nodeValue",{get:function(){return this.value}}),Object.defineProperty(t.prototype,"parentNode",{get:function(){return this.parent}}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.childNodeList&&this.childNodeList.nodes||(this.childNodeList=new h(this.children)),this.childNodeList}}),Object.defineProperty(t.prototype,"firstChild",{get:function(){return this.children[0]||null}}),Object.defineProperty(t.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}}),Object.defineProperty(t.prototype,"previousSibling",{get:function(){var t;return t=this.parent.children.indexOf(this),this.parent.children[t-1]||null}}),Object.defineProperty(t.prototype,"nextSibling",{get:function(){var t;return t=this.parent.children.indexOf(this),this.parent.children[t+1]||null}}),Object.defineProperty(t.prototype,"ownerDocument",{get:function(){return this.document()||null}}),Object.defineProperty(t.prototype,"textContent",{get:function(){var t,e,r,o,i;if(this.nodeType===n.Element||this.nodeType===n.DocumentFragment){for(i="",e=0,r=(o=this.children).length;e<r;e++)(t=o[e]).textContent&&(i+=t.textContent);return i}return null},set:function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),t.prototype.setParent=function(t){var e,r,n,o,i;for(this.parent=t,t&&(this.options=t.options,this.stringify=t.stringify),i=[],r=0,n=(o=this.children).length;r<n;r++)e=o[r],i.push(e.setParent(this));return i},t.prototype.element=function(t,e,r){var n,o,i,s,a,u,c,h,p,l,f;if(u=null,null===e&&null==r&&(e=(p=[{},null])[0],r=p[1]),null==e&&(e={}),e=d(e),m(e)||(r=(l=[e,r])[0],e=l[1]),null!=t&&(t=d(t)),Array.isArray(t))for(i=0,c=t.length;i<c;i++)o=t[i],u=this.element(o);else if(g(t))u=this.element(t.apply());else if(m(t)){for(a in t)if(w.call(t,a))if(f=t[a],g(f)&&(f=f.apply()),!this.options.ignoreDecorators&&this.stringify.convertAttKey&&0===a.indexOf(this.stringify.convertAttKey))u=this.attribute(a.substr(this.stringify.convertAttKey.length),f);else if(!this.options.separateArrayItems&&Array.isArray(f)&&y(f))u=this.dummy();else if(m(f)&&y(f))u=this.element(a);else if(this.options.keepNullNodes||null!=f)if(!this.options.separateArrayItems&&Array.isArray(f))for(s=0,h=f.length;s<h;s++)o=f[s],(n={})[a]=o,u=this.element(n);else m(f)?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===a.indexOf(this.stringify.convertTextKey)?u=this.element(f):(u=this.element(a)).element(f):u=this.element(a,f);else u=this.dummy()}else u=this.options.keepNullNodes||null!==r?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===t.indexOf(this.stringify.convertTextKey)?this.text(r):!this.options.ignoreDecorators&&this.stringify.convertCDataKey&&0===t.indexOf(this.stringify.convertCDataKey)?this.cdata(r):!this.options.ignoreDecorators&&this.stringify.convertCommentKey&&0===t.indexOf(this.stringify.convertCommentKey)?this.comment(r):!this.options.ignoreDecorators&&this.stringify.convertRawKey&&0===t.indexOf(this.stringify.convertRawKey)?this.raw(r):!this.options.ignoreDecorators&&this.stringify.convertPIKey&&0===t.indexOf(this.stringify.convertPIKey)?this.instruction(t.substr(this.stringify.convertPIKey.length),r):this.node(t,e,r):this.dummy();if(null==u)throw new Error("Could not create any elements with: "+t+". "+this.debugInfo());return u},t.prototype.insertBefore=function(t,e,r){var n,o,i,s,a;if(null!=t?t.type:void 0)return s=e,(i=t).setParent(this),s?(o=children.indexOf(s),a=children.splice(o),children.push(i),Array.prototype.push.apply(children,a)):children.push(i),i;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(t));return o=this.parent.children.indexOf(this),a=this.parent.children.splice(o),n=this.parent.element(t,e,r),Array.prototype.push.apply(this.parent.children,a),n},t.prototype.insertAfter=function(t,e,r){var n,o,i;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(t));return o=this.parent.children.indexOf(this),i=this.parent.children.splice(o+1),n=this.parent.element(t,e,r),Array.prototype.push.apply(this.parent.children,i),n},t.prototype.remove=function(){var t;if(this.isRoot)throw new Error("Cannot remove the root element. "+this.debugInfo());return t=this.parent.children.indexOf(this),[].splice.apply(this.parent.children,[t,t-t+1].concat([])),this.parent},t.prototype.node=function(t,e,r){var n,o;return null!=t&&(t=d(t)),e||(e={}),e=d(e),m(e)||(r=(o=[e,r])[0],e=o[1]),n=new c(this,t,e),null!=r&&n.text(r),this.children.push(n),n},t.prototype.text=function(t){var e;return m(t)&&this.element(t),e=new f(this,t),this.children.push(e),this},t.prototype.cdata=function(t){var e;return e=new o(this,t),this.children.push(e),this},t.prototype.comment=function(t){var e;return e=new i(this,t),this.children.push(e),this},t.prototype.commentBefore=function(t){var e,r;return e=this.parent.children.indexOf(this),r=this.parent.children.splice(e),this.parent.comment(t),Array.prototype.push.apply(this.parent.children,r),this},t.prototype.commentAfter=function(t){var e,r;return e=this.parent.children.indexOf(this),r=this.parent.children.splice(e+1),this.parent.comment(t),Array.prototype.push.apply(this.parent.children,r),this},t.prototype.raw=function(t){var e;return e=new l(this,t),this.children.push(e),this},t.prototype.dummy=function(){return new u(this)},t.prototype.instruction=function(t,e){var r,n,o,i,s;if(null!=t&&(t=d(t)),null!=e&&(e=d(e)),Array.isArray(t))for(i=0,s=t.length;i<s;i++)r=t[i],this.instruction(r);else if(m(t))for(r in t)w.call(t,r)&&(n=t[r],this.instruction(r,n));else g(e)&&(e=e.apply()),o=new p(this,t,e),this.children.push(o);return this},t.prototype.instructionBefore=function(t,e){var r,n;return r=this.parent.children.indexOf(this),n=this.parent.children.splice(r),this.parent.instruction(t,e),Array.prototype.push.apply(this.parent.children,n),this},t.prototype.instructionAfter=function(t,e){var r,n;return r=this.parent.children.indexOf(this),n=this.parent.children.splice(r+1),this.parent.instruction(t,e),Array.prototype.push.apply(this.parent.children,n),this},t.prototype.declaration=function(t,e,r){var o,i;return o=this.document(),i=new s(o,t,e,r),0===o.children.length?o.children.unshift(i):o.children[0].type===n.Declaration?o.children[0]=i:o.children.unshift(i),o.root()||o},t.prototype.dtd=function(t,e){var r,o,i,s,u,c,h,p,l;for(r=this.document(),o=new a(r,t,e),i=s=0,c=(p=r.children).length;s<c;i=++s)if(p[i].type===n.DocType)return r.children[i]=o,o;for(i=u=0,h=(l=r.children).length;u<h;i=++u)if(l[i].isRoot)return r.children.splice(i,0,o),o;return r.children.push(o),o},t.prototype.up=function(){if(this.isRoot)throw new Error("The root node has no parent. Use doc() if you need to get the document object.");return this.parent},t.prototype.root=function(){var t;for(t=this;t;){if(t.type===n.Document)return t.rootObject;if(t.isRoot)return t;t=t.parent}},t.prototype.document=function(){var t;for(t=this;t;){if(t.type===n.Document)return t;t=t.parent}},t.prototype.end=function(t){return this.document().end(t)},t.prototype.prev=function(){var t;if((t=this.parent.children.indexOf(this))<1)throw new Error("Already at the first node. "+this.debugInfo());return this.parent.children[t-1]},t.prototype.next=function(){var t;if(-1===(t=this.parent.children.indexOf(this))||t===this.parent.children.length-1)throw new Error("Already at the last node. "+this.debugInfo());return this.parent.children[t+1]},t.prototype.importDocument=function(t){var e;return(e=t.root().clone()).parent=this,e.isRoot=!1,this.children.push(e),this},t.prototype.debugInfo=function(t){var e,r;return null!=(t=t||this.name)||(null!=(e=this.parent)?e.name:void 0)?null==t?"parent: <"+this.parent.name+">":(null!=(r=this.parent)?r.name:void 0)?"node: <"+t+">, parent: <"+this.parent.name+">":"node: <"+t+">":""},t.prototype.ele=function(t,e,r){return this.element(t,e,r)},t.prototype.nod=function(t,e,r){return this.node(t,e,r)},t.prototype.txt=function(t){return this.text(t)},t.prototype.dat=function(t){return this.cdata(t)},t.prototype.com=function(t){return this.comment(t)},t.prototype.ins=function(t,e){return this.instruction(t,e)},t.prototype.doc=function(){return this.document()},t.prototype.dec=function(t,e,r){return this.declaration(t,e,r)},t.prototype.e=function(t,e,r){return this.element(t,e,r)},t.prototype.n=function(t,e,r){return this.node(t,e,r)},t.prototype.t=function(t){return this.text(t)},t.prototype.d=function(t){return this.cdata(t)},t.prototype.c=function(t){return this.comment(t)},t.prototype.r=function(t){return this.raw(t)},t.prototype.i=function(t,e){return this.instruction(t,e)},t.prototype.u=function(){return this.up()},t.prototype.importXMLBuilder=function(t){return this.importDocument(t)},t.prototype.replaceChild=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.removeChild=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.appendChild=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.hasChildNodes=function(){return 0!==this.children.length},t.prototype.cloneNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.normalize=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.isSupported=function(t,e){return!0},t.prototype.hasAttributes=function(){return 0!==this.attribs.length},t.prototype.compareDocumentPosition=function(t){var r;return this,this===t?0:this.document()!==t.document()?(r=e.Disconnected|e.ImplementationSpecific,Math.random()<.5?r|=e.Preceding:r|=e.Following,r):this.isAncestor(t)?e.Contains|e.Preceding:this.isDescendant(t)?e.Contains|e.Following:this.isPreceding(t)?e.Preceding:e.Following},t.prototype.isSameNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.lookupPrefix=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.isDefaultNamespace=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.lookupNamespaceURI=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.isEqualNode=function(t){var e,r,n;if(t.nodeType!==this.nodeType)return!1;if(t.children.length!==this.children.length)return!1;for(e=r=0,n=this.children.length-1;0<=n?r<=n:r>=n;e=0<=n?++r:--r)if(!this.children[e].isEqualNode(t.children[e]))return!1;return!0},t.prototype.getFeature=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.setUserData=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.getUserData=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},t.prototype.contains=function(t){return!!t&&(t===this||this.isDescendant(t))},t.prototype.isDescendant=function(t){var e,r,n,o;for(r=0,n=(o=this.children).length;r<n;r++){if(t===(e=o[r]))return!0;if(e.isDescendant(t))return!0}return!1},t.prototype.isAncestor=function(t){return t.isDescendant(this)},t.prototype.isPreceding=function(t){var e,r;return e=this.treePosition(t),r=this.treePosition(this),-1!==e&&-1!==r&&e<r},t.prototype.isFollowing=function(t){var e,r;return e=this.treePosition(t),r=this.treePosition(this),-1!==e&&-1!==r&&e>r},t.prototype.treePosition=function(t){var e,r;return r=0,e=!1,this.foreachTreeNode(this.document(),(function(n){if(r++,!e&&n===t)return e=!0})),e?r:-1},t.prototype.foreachTreeNode=function(t,e){var r,n,o,i,s;for(t||(t=this.document()),n=0,o=(i=t.children).length;n<o;n++){if(s=e(r=i[n]))return s;if(s=this.foreachTreeNode(r,e))return s}},t}()}).call(this)},function(t,e){(function(){var e,r,n,o,i,s,a,u=[].slice,c={}.hasOwnProperty;e=function(){var t,e,r,n,o,s;if(s=arguments[0],o=2<=arguments.length?u.call(arguments,1):[],i(Object.assign))Object.assign.apply(null,arguments);else for(t=0,r=o.length;t<r;t++)if(null!=(n=o[t]))for(e in n)c.call(n,e)&&(s[e]=n[e]);return s},i=function(t){return!!t&&"[object Function]"===Object.prototype.toString.call(t)},s=function(t){var e;return!!t&&("function"==(e=typeof t)||"object"===e)},n=function(t){return i(Array.isArray)?Array.isArray(t):"[object Array]"===Object.prototype.toString.call(t)},o=function(t){var e;if(n(t))return!t.length;for(e in t)if(c.call(t,e))return!1;return!0},a=function(t){var e,r;return s(t)&&(r=Object.getPrototypeOf(t))&&(e=r.constructor)&&"function"==typeof e&&e instanceof e&&Function.prototype.toString.call(e)===Function.prototype.toString.call(Object)},r=function(t){return i(t.valueOf)?t.valueOf():t},t.exports.assign=e,t.exports.isFunction=i,t.exports.isObject=s,t.exports.isArray=n,t.exports.isEmpty=o,t.exports.isPlainObject=a,t.exports.getValue=r}).call(this)},function(t,e,r){"use strict";var n=r(13),o=Object.keys||function(t){var e=[];for(var r in t)e.push(r);return e};t.exports=p;var i=Object.create(r(6));i.inherits=r(5);var s=r(43),a=r(31);i.inherits(p,s);for(var u=o(a.prototype),c=0;c<u.length;c++){var h=u[c];p.prototype[h]||(p.prototype[h]=a.prototype[h])}function p(t){if(!(this instanceof p))return new p(t);s.call(this,t),a.call(this,t),t&&!1===t.readable&&(this.readable=!1),t&&!1===t.writable&&(this.writable=!1),this.allowHalfOpen=!0,t&&!1===t.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",l)}function l(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(t){t.end()}Object.defineProperty(p.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(p.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(t){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=t,this._writableState.destroyed=t)}}),p.prototype._destroy=function(t,e){this.push(null),this.end(),n.nextTick(e,t)}},function(t,e){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(t){"object"==typeof window&&(r=window)}t.exports=r},function(t,e){"function"==typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}}},function(t,e,r){(function(t){function r(t){return Object.prototype.toString.call(t)}e.isArray=function(t){return Array.isArray?Array.isArray(t):"[object Array]"===r(t)},e.isBoolean=function(t){return"boolean"==typeof t},e.isNull=function(t){return null===t},e.isNullOrUndefined=function(t){return null==t},e.isNumber=function(t){return"number"==typeof t},e.isString=function(t){return"string"==typeof t},e.isSymbol=function(t){return"symbol"==typeof t},e.isUndefined=function(t){return void 0===t},e.isRegExp=function(t){return"[object RegExp]"===r(t)},e.isObject=function(t){return"object"==typeof t&&null!==t},e.isDate=function(t){return"[object Date]"===r(t)},e.isError=function(t){return"[object Error]"===r(t)||t instanceof Error},e.isFunction=function(t){return"function"==typeof t},e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},e.isBuffer=t.isBuffer}).call(this,r(8).Buffer)},function(t,e,r){
2
+ /*!
3
+ * Copyright 2019 SmugMug, Inc.
4
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
5
+ */
6
+ var n=r(51),o=r(57).parse;function i(t,e){n.Request.call(this,t,e),this.params={}}i.prototype=Object.create(n.Request.prototype),i.prototype.query=function(t){return"string"==typeof t?Object.assign(this.params,o(t)):Object.assign(this.params,t),n.Request.prototype.query.call(this,t)},i.prototype.field=function(t,e){return"string"==typeof t?this.params[t]=e:Object.assign(this.params,t),n.Request.prototype.field.call(this,t,e)},i.prototype.param=function(t){switch(this.method){case"POST":return this.field.call(this,t);default:return this.query.call(this,t)}},e=t.exports=function(t,r){return"function"==typeof r?new e.Request("GET",t).end(r):1===arguments.length?new e.Request("GET",t):new e.Request(t,r)},Object.assign(e,n),e.Request=i},function(t,e,r){"use strict";(function(t){
7
+ /*!
8
+ * The buffer module from node.js, for the browser.
9
+ *
10
+ * @author Feross Aboukhadijeh <http://feross.org>
11
+ * @license MIT
12
+ */
13
+ var n=r(64),o=r(65),i=r(35);function s(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function a(t,e){if(s()<e)throw new RangeError("Invalid typed array length");return u.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(e)).__proto__=u.prototype:(null===t&&(t=new u(e)),t.length=e),t}function u(t,e,r){if(!(u.TYPED_ARRAY_SUPPORT||this instanceof u))return new u(t,e,r);if("number"==typeof t){if("string"==typeof e)throw new Error("If encoding is specified then the first argument must be a string");return p(this,t)}return c(this,t,e,r)}function c(t,e,r,n){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?function(t,e,r,n){if(e.byteLength,r<0||e.byteLength<r)throw new RangeError("'offset' is out of bounds");if(e.byteLength<r+(n||0))throw new RangeError("'length' is out of bounds");e=void 0===r&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,r):new Uint8Array(e,r,n);u.TYPED_ARRAY_SUPPORT?(t=e).__proto__=u.prototype:t=l(t,e);return t}(t,e,r,n):"string"==typeof e?function(t,e,r){"string"==typeof r&&""!==r||(r="utf8");if(!u.isEncoding(r))throw new TypeError('"encoding" must be a valid string encoding');var n=0|d(e,r),o=(t=a(t,n)).write(e,r);o!==n&&(t=t.slice(0,o));return t}(t,e,r):function(t,e){if(u.isBuffer(e)){var r=0|f(e.length);return 0===(t=a(t,r)).length||e.copy(t,0,0,r),t}if(e){if("undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!=typeof e.length||(n=e.length)!=n?a(t,0):l(t,e);if("Buffer"===e.type&&i(e.data))return l(t,e.data)}var n;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(t,e)}function h(t){if("number"!=typeof t)throw new TypeError('"size" argument must be a number');if(t<0)throw new RangeError('"size" argument must not be negative')}function p(t,e){if(h(e),t=a(t,e<0?0:0|f(e)),!u.TYPED_ARRAY_SUPPORT)for(var r=0;r<e;++r)t[r]=0;return t}function l(t,e){var r=e.length<0?0:0|f(e.length);t=a(t,r);for(var n=0;n<r;n+=1)t[n]=255&e[n];return t}function f(t){if(t>=s())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s().toString(16)+" bytes");return 0|t}function d(t,e){if(u.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":case void 0:return G(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return U(t).length;default:if(n)return G(t).length;e=(""+e).toLowerCase(),n=!0}}function y(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return k(this,e,r);case"utf8":case"utf-8":return I(this,e,r);case"ascii":return D(this,e,r);case"latin1":case"binary":return S(this,e,r);case"base64":return O(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function g(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function m(t,e,r,n,o){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,isNaN(r)&&(r=o?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(o)return-1;r=t.length-1}else if(r<0){if(!o)return-1;r=0}if("string"==typeof e&&(e=u.from(e,n)),u.isBuffer(e))return 0===e.length?-1:_(t,e,r,n,o);if("number"==typeof e)return e&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):_(t,[e],r,n,o);throw new TypeError("val must be string, number or Buffer")}function _(t,e,r,n,o){var i,s=1,a=t.length,u=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,a/=2,u/=2,r/=2}function c(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(o){var h=-1;for(i=r;i<a;i++)if(c(t,i)===c(e,-1===h?0:i-h)){if(-1===h&&(h=i),i-h+1===u)return h*s}else-1!==h&&(i-=i-h),h=-1}else for(r+u>a&&(r=a-u),i=r;i>=0;i--){for(var p=!0,l=0;l<u;l++)if(c(t,i+l)!==c(e,l)){p=!1;break}if(p)return i}return-1}function w(t,e,r,n){r=Number(r)||0;var o=t.length-r;n?(n=Number(n))>o&&(n=o):n=o;var i=e.length;if(i%2!=0)throw new TypeError("Invalid hex string");n>i/2&&(n=i/2);for(var s=0;s<n;++s){var a=parseInt(e.substr(2*s,2),16);if(isNaN(a))return s;t[r+s]=a}return s}function b(t,e,r,n){return q(G(e,t.length-r),t,r,n)}function v(t,e,r,n){return q(function(t){for(var e=[],r=0;r<t.length;++r)e.push(255&t.charCodeAt(r));return e}(e),t,r,n)}function T(t,e,r,n){return v(t,e,r,n)}function E(t,e,r,n){return q(U(e),t,r,n)}function P(t,e,r,n){return q(function(t,e){for(var r,n,o,i=[],s=0;s<t.length&&!((e-=2)<0);++s)r=t.charCodeAt(s),n=r>>8,o=r%256,i.push(o),i.push(n);return i}(e,t.length-r),t,r,n)}function O(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function I(t,e,r){r=Math.min(t.length,r);for(var n=[],o=e;o<r;){var i,s,a,u,c=t[o],h=null,p=c>239?4:c>223?3:c>191?2:1;if(o+p<=r)switch(p){case 1:c<128&&(h=c);break;case 2:128==(192&(i=t[o+1]))&&(u=(31&c)<<6|63&i)>127&&(h=u);break;case 3:i=t[o+1],s=t[o+2],128==(192&i)&&128==(192&s)&&(u=(15&c)<<12|(63&i)<<6|63&s)>2047&&(u<55296||u>57343)&&(h=u);break;case 4:i=t[o+1],s=t[o+2],a=t[o+3],128==(192&i)&&128==(192&s)&&128==(192&a)&&(u=(15&c)<<18|(63&i)<<12|(63&s)<<6|63&a)>65535&&u<1114112&&(h=u)}null===h?(h=65533,p=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),o+=p}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);var r="",n=0;for(;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=4096));return r}(n)}e.Buffer=u,e.SlowBuffer=function(t){+t!=t&&(t=0);return u.alloc(+t)},e.INSPECT_MAX_BYTES=50,u.TYPED_ARRAY_SUPPORT=void 0!==t.TYPED_ARRAY_SUPPORT?t.TYPED_ARRAY_SUPPORT:function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&"function"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(t){return!1}}(),e.kMaxLength=s(),u.poolSize=8192,u._augment=function(t){return t.__proto__=u.prototype,t},u.from=function(t,e,r){return c(null,t,e,r)},u.TYPED_ARRAY_SUPPORT&&(u.prototype.__proto__=Uint8Array.prototype,u.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&u[Symbol.species]===u&&Object.defineProperty(u,Symbol.species,{value:null,configurable:!0})),u.alloc=function(t,e,r){return function(t,e,r,n){return h(e),e<=0?a(t,e):void 0!==r?"string"==typeof n?a(t,e).fill(r,n):a(t,e).fill(r):a(t,e)}(null,t,e,r)},u.allocUnsafe=function(t){return p(null,t)},u.allocUnsafeSlow=function(t){return p(null,t)},u.isBuffer=function(t){return!(null==t||!t._isBuffer)},u.compare=function(t,e){if(!u.isBuffer(t)||!u.isBuffer(e))throw new TypeError("Arguments must be Buffers");if(t===e)return 0;for(var r=t.length,n=e.length,o=0,i=Math.min(r,n);o<i;++o)if(t[o]!==e[o]){r=t[o],n=e[o];break}return r<n?-1:n<r?1:0},u.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(t,e){if(!i(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u.alloc(0);var r;if(void 0===e)for(e=0,r=0;r<t.length;++r)e+=t[r].length;var n=u.allocUnsafe(e),o=0;for(r=0;r<t.length;++r){var s=t[r];if(!u.isBuffer(s))throw new TypeError('"list" argument must be an Array of Buffers');s.copy(n,o),o+=s.length}return n},u.byteLength=d,u.prototype._isBuffer=!0,u.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<t;e+=2)g(this,e,e+1);return this},u.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<t;e+=4)g(this,e,e+3),g(this,e+1,e+2);return this},u.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<t;e+=8)g(this,e,e+7),g(this,e+1,e+6),g(this,e+2,e+5),g(this,e+3,e+4);return this},u.prototype.toString=function(){var t=0|this.length;return 0===t?"":0===arguments.length?I(this,0,t):y.apply(this,arguments)},u.prototype.equals=function(t){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){var t="",r=e.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString("hex",0,r).match(/.{2}/g).join(" "),this.length>r&&(t+=" ... ")),"<Buffer "+t+">"},u.prototype.compare=function(t,e,r,n,o){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),e<0||r>t.length||n<0||o>this.length)throw new RangeError("out of range index");if(n>=o&&e>=r)return 0;if(n>=o)return-1;if(e>=r)return 1;if(this===t)return 0;for(var i=(o>>>=0)-(n>>>=0),s=(r>>>=0)-(e>>>=0),a=Math.min(i,s),c=this.slice(n,o),h=t.slice(e,r),p=0;p<a;++p)if(c[p]!==h[p]){i=c[p],s=h[p];break}return i<s?-1:s<i?1:0},u.prototype.includes=function(t,e,r){return-1!==this.indexOf(t,e,r)},u.prototype.indexOf=function(t,e,r){return m(this,t,e,r,!0)},u.prototype.lastIndexOf=function(t,e,r){return m(this,t,e,r,!1)},u.prototype.write=function(t,e,r,n){if(void 0===e)n="utf8",r=this.length,e=0;else if(void 0===r&&"string"==typeof e)n=e,r=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e|=0,isFinite(r)?(r|=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var o=this.length-e;if((void 0===r||r>o)&&(r=o),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var i=!1;;)switch(n){case"hex":return w(this,t,e,r);case"utf8":case"utf-8":return b(this,t,e,r);case"ascii":return v(this,t,e,r);case"latin1":case"binary":return T(this,t,e,r);case"base64":return E(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return P(this,t,e,r);default:if(i)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),i=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function D(t,e,r){var n="";r=Math.min(t.length,r);for(var o=e;o<r;++o)n+=String.fromCharCode(127&t[o]);return n}function S(t,e,r){var n="";r=Math.min(t.length,r);for(var o=e;o<r;++o)n+=String.fromCharCode(t[o]);return n}function k(t,e,r){var n=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>n)&&(r=n);for(var o="",i=e;i<r;++i)o+=B(t[i]);return o}function x(t,e,r){for(var n=t.slice(e,r),o="",i=0;i<n.length;i+=2)o+=String.fromCharCode(n[i]+256*n[i+1]);return o}function C(t,e,r){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>r)throw new RangeError("Trying to access beyond buffer length")}function N(t,e,r,n,o,i){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>o||e<i)throw new RangeError('"value" argument is out of bounds');if(r+n>t.length)throw new RangeError("Index out of range")}function A(t,e,r,n){e<0&&(e=65535+e+1);for(var o=0,i=Math.min(t.length-r,2);o<i;++o)t[r+o]=(e&255<<8*(n?o:1-o))>>>8*(n?o:1-o)}function R(t,e,r,n){e<0&&(e=4294967295+e+1);for(var o=0,i=Math.min(t.length-r,4);o<i;++o)t[r+o]=e>>>8*(n?o:3-o)&255}function L(t,e,r,n,o,i){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function M(t,e,r,n,i){return i||L(t,0,r,4),o.write(t,e,r,n,23,4),r+4}function j(t,e,r,n,i){return i||L(t,0,r,8),o.write(t,e,r,n,52,8),r+8}u.prototype.slice=function(t,e){var r,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t),u.TYPED_ARRAY_SUPPORT)(r=this.subarray(t,e)).__proto__=u.prototype;else{var o=e-t;r=new u(o,void 0);for(var i=0;i<o;++i)r[i]=this[i+t]}return r},u.prototype.readUIntLE=function(t,e,r){t|=0,e|=0,r||C(t,e,this.length);for(var n=this[t],o=1,i=0;++i<e&&(o*=256);)n+=this[t+i]*o;return n},u.prototype.readUIntBE=function(t,e,r){t|=0,e|=0,r||C(t,e,this.length);for(var n=this[t+--e],o=1;e>0&&(o*=256);)n+=this[t+--e]*o;return n},u.prototype.readUInt8=function(t,e){return e||C(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,e){return e||C(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,e){return e||C(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,e){return e||C(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUInt32BE=function(t,e){return e||C(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,e,r){t|=0,e|=0,r||C(t,e,this.length);for(var n=this[t],o=1,i=0;++i<e&&(o*=256);)n+=this[t+i]*o;return n>=(o*=128)&&(n-=Math.pow(2,8*e)),n},u.prototype.readIntBE=function(t,e,r){t|=0,e|=0,r||C(t,e,this.length);for(var n=e,o=1,i=this[t+--n];n>0&&(o*=256);)i+=this[t+--n]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*e)),i},u.prototype.readInt8=function(t,e){return e||C(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){e||C(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt16BE=function(t,e){e||C(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},u.prototype.readInt32LE=function(t,e){return e||C(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return e||C(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,e){return e||C(t,4,this.length),o.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return e||C(t,4,this.length),o.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return e||C(t,8,this.length),o.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return e||C(t,8,this.length),o.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,e,r,n){(t=+t,e|=0,r|=0,n)||N(this,t,e,r,Math.pow(2,8*r)-1,0);var o=1,i=0;for(this[e]=255&t;++i<r&&(o*=256);)this[e+i]=t/o&255;return e+r},u.prototype.writeUIntBE=function(t,e,r,n){(t=+t,e|=0,r|=0,n)||N(this,t,e,r,Math.pow(2,8*r)-1,0);var o=r-1,i=1;for(this[e+o]=255&t;--o>=0&&(i*=256);)this[e+o]=t/i&255;return e+r},u.prototype.writeUInt8=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},u.prototype.writeUInt16LE=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):A(this,t,e,!0),e+2},u.prototype.writeUInt16BE=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):A(this,t,e,!1),e+2},u.prototype.writeUInt32LE=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):R(this,t,e,!0),e+4},u.prototype.writeUInt32BE=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):R(this,t,e,!1),e+4},u.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e|=0,!n){var o=Math.pow(2,8*r-1);N(this,t,e,r,o-1,-o)}var i=0,s=1,a=0;for(this[e]=255&t;++i<r&&(s*=256);)t<0&&0===a&&0!==this[e+i-1]&&(a=1),this[e+i]=(t/s>>0)-a&255;return e+r},u.prototype.writeIntBE=function(t,e,r,n){if(t=+t,e|=0,!n){var o=Math.pow(2,8*r-1);N(this,t,e,r,o-1,-o)}var i=r-1,s=1,a=0;for(this[e+i]=255&t;--i>=0&&(s*=256);)t<0&&0===a&&0!==this[e+i+1]&&(a=1),this[e+i]=(t/s>>0)-a&255;return e+r},u.prototype.writeInt8=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):A(this,t,e,!0),e+2},u.prototype.writeInt16BE=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):A(this,t,e,!1),e+2},u.prototype.writeInt32LE=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):R(this,t,e,!0),e+4},u.prototype.writeInt32BE=function(t,e,r){return t=+t,e|=0,r||N(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):R(this,t,e,!1),e+4},u.prototype.writeFloatLE=function(t,e,r){return M(this,t,e,!0,r)},u.prototype.writeFloatBE=function(t,e,r){return M(this,t,e,!1,r)},u.prototype.writeDoubleLE=function(t,e,r){return j(this,t,e,!0,r)},u.prototype.writeDoubleBE=function(t,e,r){return j(this,t,e,!1,r)},u.prototype.copy=function(t,e,r,n){if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n<r&&(n=r),n===r)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=this.length)throw new RangeError("sourceStart out of bounds");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e<n-r&&(n=t.length-e+r);var o,i=n-r;if(this===t&&r<e&&e<n)for(o=i-1;o>=0;--o)t[o+e]=this[o+r];else if(i<1e3||!u.TYPED_ARRAY_SUPPORT)for(o=0;o<i;++o)t[o+e]=this[o+r];else Uint8Array.prototype.set.call(t,this.subarray(r,r+i),e);return i},u.prototype.fill=function(t,e,r,n){if("string"==typeof t){if("string"==typeof e?(n=e,e=0,r=this.length):"string"==typeof r&&(n=r,r=this.length),1===t.length){var o=t.charCodeAt(0);o<256&&(t=o)}if(void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!u.isEncoding(n))throw new TypeError("Unknown encoding: "+n)}else"number"==typeof t&&(t&=255);if(e<0||this.length<e||this.length<r)throw new RangeError("Out of range index");if(r<=e)return this;var i;if(e>>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(i=e;i<r;++i)this[i]=t;else{var s=u.isBuffer(t)?t:G(new u(t,n).toString()),a=s.length;for(i=0;i<r-e;++i)this[i+e]=s[i%a]}return this};var F=/[^+\/0-9A-Za-z-_]/g;function B(t){return t<16?"0"+t.toString(16):t.toString(16)}function G(t,e){var r;e=e||1/0;for(var n=t.length,o=null,i=[],s=0;s<n;++s){if((r=t.charCodeAt(s))>55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&i.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&i.push(239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;i.push(r)}else if(r<2048){if((e-=2)<0)break;i.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;i.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return i}function U(t){return n.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(F,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function q(t,e,r,n){for(var o=0;o<n&&!(o+r>=e.length||o>=t.length);++o)e[o+r]=t[o];return o}}).call(this,r(4))},function(t,e,r){(function(){var e,n={}.hasOwnProperty;e=r(1),t.exports=function(t){function e(t){e.__super__.constructor.call(this,t),this.value=""}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(e,t),Object.defineProperty(e.prototype,"data",{get:function(){return this.value},set:function(t){return this.value=t||""}}),Object.defineProperty(e.prototype,"length",{get:function(){return this.value.length}}),Object.defineProperty(e.prototype,"textContent",{get:function(){return this.value},set:function(t){return this.value=t||""}}),e.prototype.clone=function(){return Object.create(this)},e.prototype.substringData=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.appendData=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.insertData=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.deleteData=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.replaceData=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isEqualNode=function(t){return!!e.__super__.isEqualNode.apply(this,arguments).isEqualNode(t)&&t.data===this.data},e}(e)}).call(this)},function(t,e){(function(){t.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(this)},function(t,e,r){"use strict";var n,o="object"==typeof Reflect?Reflect:null,i=o&&"function"==typeof o.apply?o.apply:function(t,e,r){return Function.prototype.apply.call(t,e,r)};n=o&&"function"==typeof o.ownKeys?o.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var s=Number.isNaN||function(t){return t!=t};function a(){a.init.call(this)}t.exports=a,t.exports.once=function(t,e){return new Promise((function(r,n){function o(r){t.removeListener(e,i),n(r)}function i(){"function"==typeof t.removeListener&&t.removeListener("error",o),r([].slice.call(arguments))}m(t,e,i,{once:!0}),"error"!==e&&function(t,e,r){"function"==typeof t.on&&m(t,"error",e,r)}(t,o,{once:!0})}))},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var u=10;function c(t){if("function"!=typeof t)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}function h(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function p(t,e,r,n){var o,i,s,a;if(c(r),void 0===(i=t._events)?(i=t._events=Object.create(null),t._eventsCount=0):(void 0!==i.newListener&&(t.emit("newListener",e,r.listener?r.listener:r),i=t._events),s=i[e]),void 0===s)s=i[e]=r,++t._eventsCount;else if("function"==typeof s?s=i[e]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),(o=h(t))>0&&s.length>o&&!s.warned){s.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=t,u.type=e,u.count=s.length,a=u,console&&console.warn&&console.warn(a)}return t}function l(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(t,e,r){var n={fired:!1,wrapFn:void 0,target:t,type:e,listener:r},o=l.bind(n);return o.listener=r,n.wrapFn=o,o}function d(t,e,r){var n=t._events;if(void 0===n)return[];var o=n[e];return void 0===o?[]:"function"==typeof o?r?[o.listener||o]:[o]:r?function(t){for(var e=new Array(t.length),r=0;r<e.length;++r)e[r]=t[r].listener||t[r];return e}(o):g(o,o.length)}function y(t){var e=this._events;if(void 0!==e){var r=e[t];if("function"==typeof r)return 1;if(void 0!==r)return r.length}return 0}function g(t,e){for(var r=new Array(e),n=0;n<e;++n)r[n]=t[n];return r}function m(t,e,r,n){if("function"==typeof t.on)n.once?t.once(e,r):t.on(e,r);else{if("function"!=typeof t.addEventListener)throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof t);t.addEventListener(e,(function o(i){n.once&&t.removeEventListener(e,o),r(i)}))}}Object.defineProperty(a,"defaultMaxListeners",{enumerable:!0,get:function(){return u},set:function(t){if("number"!=typeof t||t<0||s(t))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+t+".");u=t}}),a.init=function(){void 0!==this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},a.prototype.setMaxListeners=function(t){if("number"!=typeof t||t<0||s(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this},a.prototype.getMaxListeners=function(){return h(this)},a.prototype.emit=function(t){for(var e=[],r=1;r<arguments.length;r++)e.push(arguments[r]);var n="error"===t,o=this._events;if(void 0!==o)n=n&&void 0===o.error;else if(!n)return!1;if(n){var s;if(e.length>0&&(s=e[0]),s instanceof Error)throw s;var a=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw a.context=s,a}var u=o[t];if(void 0===u)return!1;if("function"==typeof u)i(u,this,e);else{var c=u.length,h=g(u,c);for(r=0;r<c;++r)i(h[r],this,e)}return!0},a.prototype.addListener=function(t,e){return p(this,t,e,!1)},a.prototype.on=a.prototype.addListener,a.prototype.prependListener=function(t,e){return p(this,t,e,!0)},a.prototype.once=function(t,e){return c(e),this.on(t,f(this,t,e)),this},a.prototype.prependOnceListener=function(t,e){return c(e),this.prependListener(t,f(this,t,e)),this},a.prototype.removeListener=function(t,e){var r,n,o,i,s;if(c(e),void 0===(n=this._events))return this;if(void 0===(r=n[t]))return this;if(r===e||r.listener===e)0==--this._eventsCount?this._events=Object.create(null):(delete n[t],n.removeListener&&this.emit("removeListener",t,r.listener||e));else if("function"!=typeof r){for(o=-1,i=r.length-1;i>=0;i--)if(r[i]===e||r[i].listener===e){s=r[i].listener,o=i;break}if(o<0)return this;0===o?r.shift():function(t,e){for(;e+1<t.length;e++)t[e]=t[e+1];t.pop()}(r,o),1===r.length&&(n[t]=r[0]),void 0!==n.removeListener&&this.emit("removeListener",t,s||e)}return this},a.prototype.off=a.prototype.removeListener,a.prototype.removeAllListeners=function(t){var e,r,n;if(void 0===(r=this._events))return this;if(void 0===r.removeListener)return 0===arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==r[t]&&(0==--this._eventsCount?this._events=Object.create(null):delete r[t]),this;if(0===arguments.length){var o,i=Object.keys(r);for(n=0;n<i.length;++n)"removeListener"!==(o=i[n])&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(e=r[t]))this.removeListener(t,e);else if(void 0!==e)for(n=e.length-1;n>=0;n--)this.removeListener(t,e[n]);return this},a.prototype.listeners=function(t){return d(this,t,!0)},a.prototype.rawListeners=function(t){return d(this,t,!1)},a.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):y.call(t,e)},a.prototype.listenerCount=y,a.prototype.eventNames=function(){return this._eventsCount>0?n(this._events):[]}},function(t,e){var r,n,o=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function s(){throw new Error("clearTimeout has not been defined")}function a(t){if(r===setTimeout)return setTimeout(t,0);if((r===i||!r)&&setTimeout)return r=setTimeout,setTimeout(t,0);try{return r(t,0)}catch(e){try{return r.call(null,t,0)}catch(e){return r.call(this,t,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:i}catch(t){r=i}try{n="function"==typeof clearTimeout?clearTimeout:s}catch(t){n=s}}();var u,c=[],h=!1,p=-1;function l(){h&&u&&(h=!1,u.length?c=u.concat(c):p=-1,c.length&&f())}function f(){if(!h){var t=a(l);h=!0;for(var e=c.length;e;){for(u=c,c=[];++p<e;)u&&u[p].run();p=-1,e=c.length}u=null,h=!1,function(t){if(n===clearTimeout)return clearTimeout(t);if((n===s||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(t);try{n(t)}catch(e){try{return n.call(null,t)}catch(e){return n.call(this,t)}}}(t)}}function d(t,e){this.fun=t,this.array=e}function y(){}o.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];c.push(new d(t,e)),1!==c.length||h||a(f)},d.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=y,o.addListener=y,o.once=y,o.off=y,o.removeListener=y,o.removeAllListeners=y,o.emit=y,o.prependListener=y,o.prependOnceListener=y,o.listeners=function(t){return[]},o.binding=function(t){throw new Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(t){throw new Error("process.chdir is not supported")},o.umask=function(){return 0}},function(t,e,r){"use strict";(function(e){void 0===e||!e.version||0===e.version.indexOf("v0.")||0===e.version.indexOf("v1.")&&0!==e.version.indexOf("v1.8.")?t.exports={nextTick:function(t,r,n,o){if("function"!=typeof t)throw new TypeError('"callback" argument must be a function');var i,s,a=arguments.length;switch(a){case 0:case 1:return e.nextTick(t);case 2:return e.nextTick((function(){t.call(null,r)}));case 3:return e.nextTick((function(){t.call(null,r,n)}));case 4:return e.nextTick((function(){t.call(null,r,n,o)}));default:for(i=new Array(a-1),s=0;s<i.length;)i[s++]=arguments[s];return e.nextTick((function(){t.apply(null,i)}))}}}:t.exports=e}).call(this,r(12))},function(t,e,r){var n=r(8),o=n.Buffer;function i(t,e){for(var r in t)e[r]=t[r]}function s(t,e,r){return o(t,e,r)}o.from&&o.alloc&&o.allocUnsafe&&o.allocUnsafeSlow?t.exports=n:(i(n,e),e.Buffer=s),i(o,s),s.from=function(t,e,r){if("number"==typeof t)throw new TypeError("Argument must not be a number");return o(t,e,r)},s.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError("Argument must be a number");var n=o(t);return void 0!==e?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n},s.allocUnsafe=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return o(t)},s.allocUnsafeSlow=function(t){if("number"!=typeof t)throw new TypeError("Argument must be a number");return n.SlowBuffer(t)}},function(t,e){(function(){e.defaults={.1:{explicitCharkey:!1,trim:!0,normalize:!0,normalizeTags:!1,attrkey:"@",charkey:"#",explicitArray:!1,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!1,validator:null,xmlns:!1,explicitChildren:!1,childkey:"@@",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},.2:{explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:"$",charkey:"_",explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:null,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:null,renderOpts:{pretty:!0,indent:" ",newline:"\n"},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1}}}).call(this)},function(t,e,r){(function(){var e,n,o,i,s,a,u,c,h={}.hasOwnProperty;c=r(2),u=c.isObject,a=c.isFunction,s=c.getValue,i=r(1),e=r(0),n=r(39),o=r(17),t.exports=function(t){function r(t,n,o){var i,s,a,u;if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(n),this.type=e.Element,this.attribs={},this.schemaTypeInfo=null,null!=o&&this.attribute(o),t.type===e.Document&&(this.isRoot=!0,this.documentObject=t,t.rootObject=this,t.children))for(s=0,a=(u=t.children).length;s<a;s++)if((i=u[s]).type===e.DocType){i.name=this.name;break}}return function(t,e){for(var r in e)h.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"tagName",{get:function(){return this.name}}),Object.defineProperty(r.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(r.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(r.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(r.prototype,"id",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(r.prototype,"className",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(r.prototype,"classList",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(r.prototype,"attributes",{get:function(){return this.attributeMap&&this.attributeMap.nodes||(this.attributeMap=new o(this.attribs)),this.attributeMap}}),r.prototype.clone=function(){var t,e,r,n;for(e in(r=Object.create(this)).isRoot&&(r.documentObject=null),r.attribs={},n=this.attribs)h.call(n,e)&&(t=n[e],r.attribs[e]=t.clone());return r.children=[],this.children.forEach((function(t){var e;return(e=t.clone()).parent=r,r.children.push(e)})),r},r.prototype.attribute=function(t,e){var r,o;if(null!=t&&(t=s(t)),u(t))for(r in t)h.call(t,r)&&(o=t[r],this.attribute(r,o));else a(e)&&(e=e.apply()),this.options.keepNullAttributes&&null==e?this.attribs[t]=new n(this,t,""):null!=e&&(this.attribs[t]=new n(this,t,e));return this},r.prototype.removeAttribute=function(t){var e,r,n;if(null==t)throw new Error("Missing attribute name. "+this.debugInfo());if(t=s(t),Array.isArray(t))for(r=0,n=t.length;r<n;r++)e=t[r],delete this.attribs[e];else delete this.attribs[t];return this},r.prototype.toString=function(t){return this.options.writer.element(this,this.options.writer.filterOptions(t))},r.prototype.att=function(t,e){return this.attribute(t,e)},r.prototype.a=function(t,e){return this.attribute(t,e)},r.prototype.getAttribute=function(t){return this.attribs.hasOwnProperty(t)?this.attribs[t].value:null},r.prototype.setAttribute=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getAttributeNode=function(t){return this.attribs.hasOwnProperty(t)?this.attribs[t]:null},r.prototype.setAttributeNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.removeAttributeNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getAttributeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.setAttributeNS=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.removeAttributeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getAttributeNodeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.setAttributeNodeNS=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagNameNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.hasAttribute=function(t){return this.attribs.hasOwnProperty(t)},r.prototype.hasAttributeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.setIdAttribute=function(t,e){return this.attribs.hasOwnProperty(t)?this.attribs[t].isId:e},r.prototype.setIdAttributeNS=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.setIdAttributeNode=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagNameNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByClassName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.isEqualNode=function(t){var e,n,o;if(!r.__super__.isEqualNode.apply(this,arguments).isEqualNode(t))return!1;if(t.namespaceURI!==this.namespaceURI)return!1;if(t.prefix!==this.prefix)return!1;if(t.localName!==this.localName)return!1;if(t.attribs.length!==this.attribs.length)return!1;for(e=n=0,o=this.attribs.length-1;0<=o?n<=o:n>=o;e=0<=o?++n:--n)if(!this.attribs[e].isEqualNode(t.attribs[e]))return!1;return!0},r}(i)}).call(this)},function(t,e){(function(){t.exports=function(){function t(t){this.nodes=t}return Object.defineProperty(t.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.getNamedItem=function(t){return this.nodes[t]},t.prototype.setNamedItem=function(t){var e;return e=this.nodes[t.nodeName],this.nodes[t.nodeName]=t,e||null},t.prototype.removeNamedItem=function(t){var e;return e=this.nodes[t],delete this.nodes[t],e||null},t.prototype.item=function(t){return this.nodes[Object.keys(this.nodes)[t]]||null},t.prototype.getNamedItemNS=function(t,e){throw new Error("This DOM method is not implemented.")},t.prototype.setNamedItemNS=function(t){throw new Error("This DOM method is not implemented.")},t.prototype.removeNamedItemNS=function(t,e){throw new Error("This DOM method is not implemented.")},t}()}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;e=r(0),n=r(9),t.exports=function(t){function r(t,n){if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=e.CData,this.value=this.stringify.cdata(n)}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.cdata(this,this.options.writer.filterOptions(t))},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;e=r(0),n=r(9),t.exports=function(t){function r(t,n){if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=e.Comment,this.value=this.stringify.comment(n)}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.comment(this,this.options.writer.filterOptions(t))},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o,i={}.hasOwnProperty;o=r(2).isObject,n=r(1),e=r(0),t.exports=function(t){function r(t,n,i,s){var a;r.__super__.constructor.call(this,t),o(n)&&(n=(a=n).version,i=a.encoding,s=a.standalone),n||(n="1.0"),this.type=e.Declaration,this.version=this.stringify.xmlVersion(n),null!=i&&(this.encoding=this.stringify.xmlEncoding(i)),null!=s&&(this.standalone=this.stringify.xmlStandalone(s))}return function(t,e){for(var r in e)i.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.toString=function(t){return this.options.writer.declaration(this,this.options.writer.filterOptions(t))},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o,i,s,a,u,c,h={}.hasOwnProperty;c=r(2).isObject,u=r(1),e=r(0),n=r(22),i=r(23),o=r(24),s=r(25),a=r(17),t.exports=function(t){function r(t,n,o){var i,s,a,u,h,p;if(r.__super__.constructor.call(this,t),this.type=e.DocType,t.children)for(s=0,a=(u=t.children).length;s<a;s++)if((i=u[s]).type===e.Element){this.name=i.name;break}this.documentObject=t,c(n)&&(n=(h=n).pubID,o=h.sysID),null==o&&(o=(p=[n,o])[0],n=p[1]),null!=n&&(this.pubID=this.stringify.dtdPubID(n)),null!=o&&(this.sysID=this.stringify.dtdSysID(o))}return function(t,e){for(var r in e)h.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"entities",{get:function(){var t,r,n,o,i;for(o={},r=0,n=(i=this.children).length;r<n;r++)(t=i[r]).type!==e.EntityDeclaration||t.pe||(o[t.name]=t);return new a(o)}}),Object.defineProperty(r.prototype,"notations",{get:function(){var t,r,n,o,i;for(o={},r=0,n=(i=this.children).length;r<n;r++)(t=i[r]).type===e.NotationDeclaration&&(o[t.name]=t);return new a(o)}}),Object.defineProperty(r.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(r.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(r.prototype,"internalSubset",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),r.prototype.element=function(t,e){var r;return r=new o(this,t,e),this.children.push(r),this},r.prototype.attList=function(t,e,r,o,i){var s;return s=new n(this,t,e,r,o,i),this.children.push(s),this},r.prototype.entity=function(t,e){var r;return r=new i(this,!1,t,e),this.children.push(r),this},r.prototype.pEntity=function(t,e){var r;return r=new i(this,!0,t,e),this.children.push(r),this},r.prototype.notation=function(t,e){var r;return r=new s(this,t,e),this.children.push(r),this},r.prototype.toString=function(t){return this.options.writer.docType(this,this.options.writer.filterOptions(t))},r.prototype.ele=function(t,e){return this.element(t,e)},r.prototype.att=function(t,e,r,n,o){return this.attList(t,e,r,n,o)},r.prototype.ent=function(t,e){return this.entity(t,e)},r.prototype.pent=function(t,e){return this.pEntity(t,e)},r.prototype.not=function(t,e){return this.notation(t,e)},r.prototype.up=function(){return this.root()||this.documentObject},r.prototype.isEqualNode=function(t){return!!r.__super__.isEqualNode.apply(this,arguments).isEqualNode(t)&&(t.name===this.name&&(t.publicId===this.publicId&&t.systemId===this.systemId))},r}(u)}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;n=r(1),e=r(0),t.exports=function(t){function r(t,n,o,i,s,a){if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing DTD element name. "+this.debugInfo());if(null==o)throw new Error("Missing DTD attribute name. "+this.debugInfo(n));if(!i)throw new Error("Missing DTD attribute type. "+this.debugInfo(n));if(!s)throw new Error("Missing DTD attribute default. "+this.debugInfo(n));if(0!==s.indexOf("#")&&(s="#"+s),!s.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(n));if(a&&!s.match(/^(#FIXED|#DEFAULT)$/))throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(n));this.elementName=this.stringify.name(n),this.type=e.AttributeDeclaration,this.attributeName=this.stringify.name(o),this.attributeType=this.stringify.dtdAttType(i),a&&(this.defaultValue=this.stringify.dtdAttDefault(a)),this.defaultValueType=s}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.toString=function(t){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(t))},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o,i={}.hasOwnProperty;o=r(2).isObject,n=r(1),e=r(0),t.exports=function(t){function r(t,n,i,s){if(r.__super__.constructor.call(this,t),null==i)throw new Error("Missing DTD entity name. "+this.debugInfo(i));if(null==s)throw new Error("Missing DTD entity value. "+this.debugInfo(i));if(this.pe=!!n,this.name=this.stringify.name(i),this.type=e.EntityDeclaration,o(s)){if(!s.pubID&&!s.sysID)throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(i));if(s.pubID&&!s.sysID)throw new Error("System identifier is required for a public external entity. "+this.debugInfo(i));if(this.internal=!1,null!=s.pubID&&(this.pubID=this.stringify.dtdPubID(s.pubID)),null!=s.sysID&&(this.sysID=this.stringify.dtdSysID(s.sysID)),null!=s.nData&&(this.nData=this.stringify.dtdNData(s.nData)),this.pe&&this.nData)throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(i))}else this.value=this.stringify.dtdEntityValue(s),this.internal=!0}return function(t,e){for(var r in e)i.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(r.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(r.prototype,"notationName",{get:function(){return this.nData||null}}),Object.defineProperty(r.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(r.prototype,"xmlEncoding",{get:function(){return null}}),Object.defineProperty(r.prototype,"xmlVersion",{get:function(){return null}}),r.prototype.toString=function(t){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(t))},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;n=r(1),e=r(0),t.exports=function(t){function r(t,n,o){if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing DTD element name. "+this.debugInfo());o||(o="(#PCDATA)"),Array.isArray(o)&&(o="("+o.join(",")+")"),this.name=this.stringify.name(n),this.type=e.ElementDeclaration,this.value=this.stringify.dtdElementValue(o)}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.toString=function(t){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(t))},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;n=r(1),e=r(0),t.exports=function(t){function r(t,n,o){if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing DTD notation name. "+this.debugInfo(n));if(!o.pubID&&!o.sysID)throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(n));this.name=this.stringify.name(n),this.type=e.NotationDeclaration,null!=o.pubID&&(this.pubID=this.stringify.dtdPubID(o.pubID)),null!=o.sysID&&(this.sysID=this.stringify.dtdSysID(o.sysID))}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(r.prototype,"systemId",{get:function(){return this.sysID}}),r.prototype.toString=function(t){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(t))},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;e=r(0),n=r(1),t.exports=function(t){function r(t,n){if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing raw text. "+this.debugInfo());this.type=e.Raw,this.value=this.stringify.raw(n)}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.raw(this,this.options.writer.filterOptions(t))},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;e=r(0),n=r(9),t.exports=function(t){function r(t,n){if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=e.Text,this.value=this.stringify.text(n)}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(r.prototype,"wholeText",{get:function(){var t,e,r;for(r="",e=this.previousSibling;e;)r=e.data+r,e=e.previousSibling;for(r+=this.data,t=this.nextSibling;t;)r+=t.data,t=t.nextSibling;return r}}),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.text(this,this.options.writer.filterOptions(t))},r.prototype.splitText=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.replaceWholeText=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r}(n)}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;e=r(0),n=r(9),t.exports=function(t){function r(t,n,o){if(r.__super__.constructor.call(this,t),null==n)throw new Error("Missing instruction target. "+this.debugInfo());this.type=e.ProcessingInstruction,this.target=this.stringify.insTarget(n),this.name=this.target,o&&(this.value=this.stringify.insValue(o))}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(t))},r.prototype.isEqualNode=function(t){return!!r.__super__.isEqualNode.apply(this,arguments).isEqualNode(t)&&t.target===this.target},r}(n)}).call(this)},function(t,e,r){(function(){var e,n={}.hasOwnProperty;e=r(42),t.exports=function(t){function e(t){e.__super__.constructor.call(this,t)}return function(t,e){for(var r in e)n.call(e,r)&&(t[r]=e[r]);function o(){this.constructor=t}o.prototype=e.prototype,t.prototype=new o,t.__super__=e.prototype}(e,t),e.prototype.document=function(t,e){var r,n,o,i,s;for(e=this.filterOptions(e),i="",n=0,o=(s=t.children).length;n<o;n++)r=s[n],i+=this.writeChildNode(r,e,0);return e.pretty&&i.slice(-e.newline.length)===e.newline&&(i=i.slice(0,-e.newline.length)),i},e}(e)}).call(this)},function(t,e,r){(e=t.exports=r(43)).Stream=e,e.Readable=e,e.Writable=r(31),e.Duplex=r(3),e.Transform=r(47),e.PassThrough=r(84)},function(t,e,r){"use strict";(function(e,n,o){var i=r(13);function s(t){var e=this;this.next=null,this.entry=null,this.finish=function(){!function(t,e,r){var n=t.entry;t.entry=null;for(;n;){var o=n.callback;e.pendingcb--,o(r),n=n.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}(e,t)}}t.exports=_;var a,u=!e.browser&&["v0.10","v0.9."].indexOf(e.version.slice(0,5))>-1?n:i.nextTick;_.WritableState=m;var c=Object.create(r(6));c.inherits=r(5);var h={deprecate:r(83)},p=r(44),l=r(14).Buffer,f=o.Uint8Array||function(){};var d,y=r(45);function g(){}function m(t,e){a=a||r(3),t=t||{};var n=e instanceof a;this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var o=t.highWaterMark,c=t.writableHighWaterMark,h=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:n&&(c||0===c)?c:h,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var p=!1===t.decodeStrings;this.decodeStrings=!p,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var r=t._writableState,n=r.sync,o=r.writecb;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(r),e)!function(t,e,r,n,o){--e.pendingcb,r?(i.nextTick(o,n),i.nextTick(P,t,e),t._writableState.errorEmitted=!0,t.emit("error",n)):(o(n),t._writableState.errorEmitted=!0,t.emit("error",n),P(t,e))}(t,r,n,e,o);else{var s=T(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(t,r),n?u(b,t,r,s,o):b(t,r,s,o)}}(e,t)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new s(this)}function _(t){if(a=a||r(3),!(d.call(_,this)||this instanceof a))return new _(t);this._writableState=new m(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev),"function"==typeof t.destroy&&(this._destroy=t.destroy),"function"==typeof t.final&&(this._final=t.final)),p.call(this)}function w(t,e,r,n,o,i,s){e.writelen=n,e.writecb=s,e.writing=!0,e.sync=!0,r?t._writev(o,e.onwrite):t._write(o,i,e.onwrite),e.sync=!1}function b(t,e,r,n){r||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,n(),P(t,e)}function v(t,e){e.bufferProcessing=!0;var r=e.bufferedRequest;if(t._writev&&r&&r.next){var n=e.bufferedRequestCount,o=new Array(n),i=e.corkedRequestsFree;i.entry=r;for(var a=0,u=!0;r;)o[a]=r,r.isBuf||(u=!1),r=r.next,a+=1;o.allBuffers=u,w(t,e,!0,e.length,o,"",i.finish),e.pendingcb++,e.lastBufferedRequest=null,i.next?(e.corkedRequestsFree=i.next,i.next=null):e.corkedRequestsFree=new s(e),e.bufferedRequestCount=0}else{for(;r;){var c=r.chunk,h=r.encoding,p=r.callback;if(w(t,e,!1,e.objectMode?1:c.length,c,h,p),r=r.next,e.bufferedRequestCount--,e.writing)break}null===r&&(e.lastBufferedRequest=null)}e.bufferedRequest=r,e.bufferProcessing=!1}function T(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function E(t,e){t._final((function(r){e.pendingcb--,r&&t.emit("error",r),e.prefinished=!0,t.emit("prefinish"),P(t,e)}))}function P(t,e){var r=T(e);return r&&(!function(t,e){e.prefinished||e.finalCalled||("function"==typeof t._final?(e.pendingcb++,e.finalCalled=!0,i.nextTick(E,t,e)):(e.prefinished=!0,t.emit("prefinish")))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"))),r}c.inherits(_,p),m.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(m.prototype,"buffer",{get:h.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(t){return!!d.call(this,t)||this===_&&(t&&t._writableState instanceof m)}})):d=function(t){return t instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(t,e,r){var n,o=this._writableState,s=!1,a=!o.objectMode&&(n=t,l.isBuffer(n)||n instanceof f);return a&&!l.isBuffer(t)&&(t=function(t){return l.from(t)}(t)),"function"==typeof e&&(r=e,e=null),a?e="buffer":e||(e=o.defaultEncoding),"function"!=typeof r&&(r=g),o.ended?function(t,e){var r=new Error("write after end");t.emit("error",r),i.nextTick(e,r)}(this,r):(a||function(t,e,r,n){var o=!0,s=!1;return null===r?s=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||e.objectMode||(s=new TypeError("Invalid non-string/buffer chunk")),s&&(t.emit("error",s),i.nextTick(n,s),o=!1),o}(this,o,t,r))&&(o.pendingcb++,s=function(t,e,r,n,o,i){if(!r){var s=function(t,e,r){t.objectMode||!1===t.decodeStrings||"string"!=typeof e||(e=l.from(e,r));return e}(e,n,o);n!==s&&(r=!0,o="buffer",n=s)}var a=e.objectMode?1:n.length;e.length+=a;var u=e.length<e.highWaterMark;u||(e.needDrain=!0);if(e.writing||e.corked){var c=e.lastBufferedRequest;e.lastBufferedRequest={chunk:n,encoding:o,isBuf:r,callback:i,next:null},c?c.next=e.lastBufferedRequest:e.bufferedRequest=e.lastBufferedRequest,e.bufferedRequestCount+=1}else w(t,e,!1,a,n,o,i);return u}(this,o,a,t,e,r)),s},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var t=this._writableState;t.corked&&(t.corked--,t.writing||t.corked||t.finished||t.bufferProcessing||!t.bufferedRequest||v(this,t))},_.prototype.setDefaultEncoding=function(t){if("string"==typeof t&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(t,e,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(t,e,r){var n=this._writableState;"function"==typeof t?(r=t,t=null,e=null):"function"==typeof e&&(r=e,e=null),null!=t&&this.write(t,e),n.corked&&(n.corked=1,this.uncork()),n.ending||n.finished||function(t,e,r){e.ending=!0,P(t,e),r&&(e.finished?i.nextTick(r):t.once("finish",r));e.ended=!0,t.writable=!1}(this,n,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),_.prototype.destroy=y.destroy,_.prototype._undestroy=y.undestroy,_.prototype._destroy=function(t,e){this.end(),e(t)}}).call(this,r(12),r(46).setImmediate,r(4))},function(t,e,r){"use strict";var n=r(14).Buffer,o=n.isEncoding||function(t){switch((t=""+t)&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function i(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!=typeof e&&(n.isEncoding===o||!o(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=u,this.end=c,e=4;break;case"utf8":this.fillLast=a,e=4;break;case"base64":this.text=h,this.end=p,e=3;break;default:return this.write=l,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(e)}function s(t){return t<=127?0:t>>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,r=function(t,e,r){if(128!=(192&e[0]))return t.lastNeed=0,"�";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"�";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"�"}}(this,t);return void 0!==r?r:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function u(t,e){if((t.length-e)%2==0){var r=t.toString("utf16le",e);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,r)}return e}function h(t,e){var r=(t.length-e)%3;return 0===r?t.toString("base64",e):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-r))}function p(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function l(t){return t.toString(this.encoding)}function f(t){return t&&t.length?this.write(t):""}e.StringDecoder=i,i.prototype.write=function(t){if(0===t.length)return"";var e,r;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<t.length?e?e+this.text(t,r):this.text(t,r):e||""},i.prototype.end=function(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+"�":e},i.prototype.text=function(t,e){var r=function(t,e,r){var n=e.length-1;if(n<r)return 0;var o=s(e[n]);if(o>=0)return o>0&&(t.lastNeed=o-1),o;if(--n<r||-2===o)return 0;if((o=s(e[n]))>=0)return o>0&&(t.lastNeed=o-2),o;if(--n<r||-2===o)return 0;if((o=s(e[n]))>=0)return o>0&&(2===o?o=0:t.lastNeed=o-3),o;return 0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=r;var n=t.length-(r-this.lastNeed);return t.copy(this.lastChar,0,n),t.toString("utf8",e,n)},i.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},function(t,e,r){"use strict";t.exports=function(t){return null!==t&&"object"==typeof t}},function(t,e){
14
+ /*!
15
+ * Copyright 2019 SmugMug, Inc.
16
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
17
+ */
18
+ t.exports=function(t,e){if(e)if(t=t||{},"string"==typeof e){if(!t.hasOwnProperty(e))throw new Error('Missing required argument "'+e+'"')}else if(0===e.filter((function(e){return t.hasOwnProperty(e)})).length)throw new Error('Missing required argument, you must provide one of the following: "'+e.join('", "')+'"')}},function(t,e){var r={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==r.call(t)}},function(t,e,r){
19
+ /*!
20
+ * Copyright 2019 SmugMug, Inc.
21
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
22
+ */
23
+ var n=r(66);function o(t,e){t.text="",t.setEncoding("utf8"),t.on("data",(function(e){t.text+=e})),t.on("end",(function(){n.parseString(t.text,{mergeAttrs:!0,explicitArray:!1,explicitRoot:!1,explicitCharkey:!0,charkey:"_content"},(function(t,r){if(t)return e(new SyntaxError(t.message),r);"fail"===r.stat&&r.err&&((t=new Error(r.err.msg)).stat=r.stat,t.code=r.err.code),e(t,r)}))}))}t.exports=function(t){t.parse(o)}},function(t,e){(function(){t.exports=function(){function t(){}return t.prototype.hasFeature=function(t,e){return!0},t.prototype.createDocumentType=function(t,e,r){throw new Error("This DOM method is not implemented.")},t.prototype.createDocument=function(t,e,r){throw new Error("This DOM method is not implemented.")},t.prototype.createHTMLDocument=function(t){throw new Error("This DOM method is not implemented.")},t.prototype.getFeature=function(t,e){throw new Error("This DOM method is not implemented.")},t}()}).call(this)},function(t,e,r){(function(){var e,n,o,i,s,a,u,c={}.hasOwnProperty;u=r(2).isPlainObject,o=r(37),n=r(69),i=r(1),e=r(0),a=r(41),s=r(29),t.exports=function(t){function r(t){r.__super__.constructor.call(this,null),this.name="#document",this.type=e.Document,this.documentURI=null,this.domConfig=new n,t||(t={}),t.writer||(t.writer=new s),this.options=t,this.stringify=new a(t)}return function(t,e){for(var r in e)c.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),Object.defineProperty(r.prototype,"implementation",{value:new o}),Object.defineProperty(r.prototype,"doctype",{get:function(){var t,r,n,o;for(r=0,n=(o=this.children).length;r<n;r++)if((t=o[r]).type===e.DocType)return t;return null}}),Object.defineProperty(r.prototype,"documentElement",{get:function(){return this.rootObject||null}}),Object.defineProperty(r.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(r.prototype,"strictErrorChecking",{get:function(){return!1}}),Object.defineProperty(r.prototype,"xmlEncoding",{get:function(){return 0!==this.children.length&&this.children[0].type===e.Declaration?this.children[0].encoding:null}}),Object.defineProperty(r.prototype,"xmlStandalone",{get:function(){return 0!==this.children.length&&this.children[0].type===e.Declaration&&"yes"===this.children[0].standalone}}),Object.defineProperty(r.prototype,"xmlVersion",{get:function(){return 0!==this.children.length&&this.children[0].type===e.Declaration?this.children[0].version:"1.0"}}),Object.defineProperty(r.prototype,"URL",{get:function(){return this.documentURI}}),Object.defineProperty(r.prototype,"origin",{get:function(){return null}}),Object.defineProperty(r.prototype,"compatMode",{get:function(){return null}}),Object.defineProperty(r.prototype,"characterSet",{get:function(){return null}}),Object.defineProperty(r.prototype,"contentType",{get:function(){return null}}),r.prototype.end=function(t){var e;return e={},t?u(t)&&(e=t,t=this.options.writer):t=this.options.writer,t.document(this,t.filterOptions(e))},r.prototype.toString=function(t){return this.options.writer.document(this,this.options.writer.filterOptions(t))},r.prototype.createElement=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createDocumentFragment=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createTextNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createComment=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createCDATASection=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createProcessingInstruction=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createAttribute=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createEntityReference=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.importNode=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createElementNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createAttributeNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByTagNameNS=function(t,e){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementById=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.adoptNode=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.normalizeDocument=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.renameNode=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.getElementsByClassName=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createEvent=function(t){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createRange=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createNodeIterator=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r.prototype.createTreeWalker=function(t,e,r){throw new Error("This DOM method is not implemented."+this.debugInfo())},r}(i)}).call(this)},function(t,e,r){(function(){var e;e=r(0),r(1),t.exports=function(){function t(t,r,n){if(this.parent=t,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),null==r)throw new Error("Missing attribute name. "+this.debugInfo(r));this.name=this.stringify.name(r),this.value=this.stringify.attValue(n),this.type=e.Attribute,this.isId=!1,this.schemaTypeInfo=null}return Object.defineProperty(t.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(t.prototype,"ownerElement",{get:function(){return this.parent}}),Object.defineProperty(t.prototype,"textContent",{get:function(){return this.value},set:function(t){return this.value=t||""}}),Object.defineProperty(t.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(t.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(t.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(t.prototype,"specified",{get:function(){return!0}}),t.prototype.clone=function(){return Object.create(this)},t.prototype.toString=function(t){return this.options.writer.attribute(this,this.options.writer.filterOptions(t))},t.prototype.debugInfo=function(t){return null==(t=t||this.name)?"parent: <"+this.parent.name+">":"attribute: {"+t+"}, parent: <"+this.parent.name+">"},t.prototype.isEqualNode=function(t){return t.namespaceURI===this.namespaceURI&&(t.prefix===this.prefix&&(t.localName===this.localName&&t.value===this.value))},t}()}).call(this)},function(t,e,r){(function(){var e,n,o={}.hasOwnProperty;n=r(1),e=r(0),t.exports=function(t){function r(t){r.__super__.constructor.call(this,t),this.type=e.Dummy}return function(t,e){for(var r in e)o.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.clone=function(){return Object.create(this)},r.prototype.toString=function(t){return""},r}(n)}).call(this)},function(t,e){(function(){var e=function(t,e){return function(){return t.apply(e,arguments)}},r={}.hasOwnProperty;t.exports=function(){function t(t){var n,o,i;for(n in this.assertLegalName=e(this.assertLegalName,this),this.assertLegalChar=e(this.assertLegalChar,this),t||(t={}),this.options=t,this.options.version||(this.options.version="1.0"),o=t.stringify||{})r.call(o,n)&&(i=o[n],this[n]=i)}return t.prototype.name=function(t){return this.options.noValidation?t:this.assertLegalName(""+t||"")},t.prototype.text=function(t){return this.options.noValidation?t:this.assertLegalChar(this.textEscape(""+t||""))},t.prototype.cdata=function(t){return this.options.noValidation?t:(t=(t=""+t||"").replace("]]>","]]]]><![CDATA[>"),this.assertLegalChar(t))},t.prototype.comment=function(t){if(this.options.noValidation)return t;if((t=""+t||"").match(/--/))throw new Error("Comment text cannot contain double-hypen: "+t);return this.assertLegalChar(t)},t.prototype.raw=function(t){return this.options.noValidation?t:""+t||""},t.prototype.attValue=function(t){return this.options.noValidation?t:this.assertLegalChar(this.attEscape(t=""+t||""))},t.prototype.insTarget=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.insValue=function(t){if(this.options.noValidation)return t;if((t=""+t||"").match(/\?>/))throw new Error("Invalid processing instruction value: "+t);return this.assertLegalChar(t)},t.prototype.xmlVersion=function(t){if(this.options.noValidation)return t;if(!(t=""+t||"").match(/1\.[0-9]+/))throw new Error("Invalid version number: "+t);return t},t.prototype.xmlEncoding=function(t){if(this.options.noValidation)return t;if(!(t=""+t||"").match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw new Error("Invalid encoding: "+t);return this.assertLegalChar(t)},t.prototype.xmlStandalone=function(t){return this.options.noValidation?t:t?"yes":"no"},t.prototype.dtdPubID=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdSysID=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdElementValue=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdAttType=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdAttDefault=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdEntityValue=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.dtdNData=function(t){return this.options.noValidation?t:this.assertLegalChar(""+t||"")},t.prototype.convertAttKey="@",t.prototype.convertPIKey="?",t.prototype.convertTextKey="#text",t.prototype.convertCDataKey="#cdata",t.prototype.convertCommentKey="#comment",t.prototype.convertRawKey="#raw",t.prototype.assertLegalChar=function(t){var e,r;if(this.options.noValidation)return t;if(e="","1.0"===this.options.version){if(e=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,r=t.match(e))throw new Error("Invalid character in string: "+t+" at index "+r.index)}else if("1.1"===this.options.version&&(e=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,r=t.match(e)))throw new Error("Invalid character in string: "+t+" at index "+r.index);return t},t.prototype.assertLegalName=function(t){var e;if(this.options.noValidation)return t;if(this.assertLegalChar(t),e=/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/,!t.match(e))throw new Error("Invalid character in name");return t},t.prototype.textEscape=function(t){var e;return this.options.noValidation?t:(e=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,t.replace(e,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\r/g,"&#xD;"))},t.prototype.attEscape=function(t){var e;return this.options.noValidation?t:(e=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,t.replace(e,"&amp;").replace(/</g,"&lt;").replace(/"/g,"&quot;").replace(/\t/g,"&#x9;").replace(/\n/g,"&#xA;").replace(/\r/g,"&#xD;"))},t}()}).call(this)},function(t,e,r){(function(){var e,n,o,i={}.hasOwnProperty;o=r(2).assign,e=r(0),r(20),r(21),r(18),r(19),r(16),r(26),r(27),r(28),r(40),r(22),r(24),r(23),r(25),n=r(10),t.exports=function(){function t(t){var e,r,n;for(e in t||(t={}),this.options=t,r=t.writer||{})i.call(r,e)&&(n=r[e],this["_"+e]=this[e],this[e]=n)}return t.prototype.filterOptions=function(t){var e,r,i,s,a,u,c,h;return t||(t={}),t=o({},this.options,t),(e={writer:this}).pretty=t.pretty||!1,e.allowEmpty=t.allowEmpty||!1,e.indent=null!=(r=t.indent)?r:" ",e.newline=null!=(i=t.newline)?i:"\n",e.offset=null!=(s=t.offset)?s:0,e.dontPrettyTextNodes=null!=(a=null!=(u=t.dontPrettyTextNodes)?u:t.dontprettytextnodes)?a:0,e.spaceBeforeSlash=null!=(c=null!=(h=t.spaceBeforeSlash)?h:t.spacebeforeslash)?c:"",!0===e.spaceBeforeSlash&&(e.spaceBeforeSlash=" "),e.suppressPrettyCount=0,e.user={},e.state=n.None,e},t.prototype.indent=function(t,e,r){var n;return!e.pretty||e.suppressPrettyCount?"":e.pretty&&(n=(r||0)+e.offset+1)>0?new Array(n).join(e.indent):""},t.prototype.endline=function(t,e,r){return!e.pretty||e.suppressPrettyCount?"":e.newline},t.prototype.attribute=function(t,e,r){var n;return this.openAttribute(t,e,r),n=" "+t.name+'="'+t.value+'"',this.closeAttribute(t,e,r),n},t.prototype.cdata=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r)+"<![CDATA[",e.state=n.InsideTag,o+=t.value,e.state=n.CloseTag,o+="]]>"+this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.comment=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r)+"\x3c!-- ",e.state=n.InsideTag,o+=t.value,e.state=n.CloseTag,o+=" --\x3e"+this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.declaration=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r)+"<?xml",e.state=n.InsideTag,o+=' version="'+t.version+'"',null!=t.encoding&&(o+=' encoding="'+t.encoding+'"'),null!=t.standalone&&(o+=' standalone="'+t.standalone+'"'),e.state=n.CloseTag,o+=e.spaceBeforeSlash+"?>",o+=this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.docType=function(t,e,r){var o,i,s,a,u;if(r||(r=0),this.openNode(t,e,r),e.state=n.OpenTag,a=this.indent(t,e,r),a+="<!DOCTYPE "+t.root().name,t.pubID&&t.sysID?a+=' PUBLIC "'+t.pubID+'" "'+t.sysID+'"':t.sysID&&(a+=' SYSTEM "'+t.sysID+'"'),t.children.length>0){for(a+=" [",a+=this.endline(t,e,r),e.state=n.InsideTag,i=0,s=(u=t.children).length;i<s;i++)o=u[i],a+=this.writeChildNode(o,e,r+1);e.state=n.CloseTag,a+="]"}return e.state=n.CloseTag,a+=e.spaceBeforeSlash+">",a+=this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),a},t.prototype.element=function(t,r,o){var s,a,u,c,h,p,l,f,d,y,g,m,_,w;for(d in o||(o=0),y=!1,g="",this.openNode(t,r,o),r.state=n.OpenTag,g+=this.indent(t,r,o)+"<"+t.name,m=t.attribs)i.call(m,d)&&(s=m[d],g+=this.attribute(s,r,o));if(c=0===(u=t.children.length)?null:t.children[0],0===u||t.children.every((function(t){return(t.type===e.Text||t.type===e.Raw)&&""===t.value})))r.allowEmpty?(g+=">",r.state=n.CloseTag,g+="</"+t.name+">"+this.endline(t,r,o)):(r.state=n.CloseTag,g+=r.spaceBeforeSlash+"/>"+this.endline(t,r,o));else if(!r.pretty||1!==u||c.type!==e.Text&&c.type!==e.Raw||null==c.value){if(r.dontPrettyTextNodes)for(h=0,l=(_=t.children).length;h<l;h++)if(((a=_[h]).type===e.Text||a.type===e.Raw)&&null!=a.value){r.suppressPrettyCount++,y=!0;break}for(g+=">"+this.endline(t,r,o),r.state=n.InsideTag,p=0,f=(w=t.children).length;p<f;p++)a=w[p],g+=this.writeChildNode(a,r,o+1);r.state=n.CloseTag,g+=this.indent(t,r,o)+"</"+t.name+">",y&&r.suppressPrettyCount--,g+=this.endline(t,r,o),r.state=n.None}else g+=">",r.state=n.InsideTag,r.suppressPrettyCount++,y=!0,g+=this.writeChildNode(c,r,o+1),r.suppressPrettyCount--,y=!1,r.state=n.CloseTag,g+="</"+t.name+">"+this.endline(t,r,o);return this.closeNode(t,r,o),g},t.prototype.writeChildNode=function(t,r,n){switch(t.type){case e.CData:return this.cdata(t,r,n);case e.Comment:return this.comment(t,r,n);case e.Element:return this.element(t,r,n);case e.Raw:return this.raw(t,r,n);case e.Text:return this.text(t,r,n);case e.ProcessingInstruction:return this.processingInstruction(t,r,n);case e.Dummy:return"";case e.Declaration:return this.declaration(t,r,n);case e.DocType:return this.docType(t,r,n);case e.AttributeDeclaration:return this.dtdAttList(t,r,n);case e.ElementDeclaration:return this.dtdElement(t,r,n);case e.EntityDeclaration:return this.dtdEntity(t,r,n);case e.NotationDeclaration:return this.dtdNotation(t,r,n);default:throw new Error("Unknown XML node type: "+t.constructor.name)}},t.prototype.processingInstruction=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r)+"<?",e.state=n.InsideTag,o+=t.target,t.value&&(o+=" "+t.value),e.state=n.CloseTag,o+=e.spaceBeforeSlash+"?>",o+=this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.raw=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r),e.state=n.InsideTag,o+=t.value,e.state=n.CloseTag,o+=this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.text=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r),e.state=n.InsideTag,o+=t.value,e.state=n.CloseTag,o+=this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.dtdAttList=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r)+"<!ATTLIST",e.state=n.InsideTag,o+=" "+t.elementName+" "+t.attributeName+" "+t.attributeType,"#DEFAULT"!==t.defaultValueType&&(o+=" "+t.defaultValueType),t.defaultValue&&(o+=' "'+t.defaultValue+'"'),e.state=n.CloseTag,o+=e.spaceBeforeSlash+">"+this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.dtdElement=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r)+"<!ELEMENT",e.state=n.InsideTag,o+=" "+t.name+" "+t.value,e.state=n.CloseTag,o+=e.spaceBeforeSlash+">"+this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.dtdEntity=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r)+"<!ENTITY",e.state=n.InsideTag,t.pe&&(o+=" %"),o+=" "+t.name,t.value?o+=' "'+t.value+'"':(t.pubID&&t.sysID?o+=' PUBLIC "'+t.pubID+'" "'+t.sysID+'"':t.sysID&&(o+=' SYSTEM "'+t.sysID+'"'),t.nData&&(o+=" NDATA "+t.nData)),e.state=n.CloseTag,o+=e.spaceBeforeSlash+">"+this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.dtdNotation=function(t,e,r){var o;return this.openNode(t,e,r),e.state=n.OpenTag,o=this.indent(t,e,r)+"<!NOTATION",e.state=n.InsideTag,o+=" "+t.name,t.pubID&&t.sysID?o+=' PUBLIC "'+t.pubID+'" "'+t.sysID+'"':t.pubID?o+=' PUBLIC "'+t.pubID+'"':t.sysID&&(o+=' SYSTEM "'+t.sysID+'"'),e.state=n.CloseTag,o+=e.spaceBeforeSlash+">"+this.endline(t,e,r),e.state=n.None,this.closeNode(t,e,r),o},t.prototype.openNode=function(t,e,r){},t.prototype.closeNode=function(t,e,r){},t.prototype.openAttribute=function(t,e,r){},t.prototype.closeAttribute=function(t,e,r){},t}()}).call(this)},function(t,e,r){"use strict";(function(e,n){var o=r(13);t.exports=w;var i,s=r(35);w.ReadableState=_;r(11).EventEmitter;var a=function(t,e){return t.listeners(e).length},u=r(44),c=r(14).Buffer,h=e.Uint8Array||function(){};var p=Object.create(r(6));p.inherits=r(5);var l=r(79),f=void 0;f=l&&l.debuglog?l.debuglog("stream"):function(){};var d,y=r(80),g=r(45);p.inherits(w,u);var m=["error","close","destroy","pause","resume"];function _(t,e){t=t||{};var n=e instanceof(i=i||r(3));this.objectMode=!!t.objectMode,n&&(this.objectMode=this.objectMode||!!t.readableObjectMode);var o=t.highWaterMark,s=t.readableHighWaterMark,a=this.objectMode?16:16384;this.highWaterMark=o||0===o?o:n&&(s||0===s)?s:a,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new y,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(d||(d=r(32).StringDecoder),this.decoder=new d(t.encoding),this.encoding=t.encoding)}function w(t){if(i=i||r(3),!(this instanceof w))return new w(t);this._readableState=new _(t,this),this.readable=!0,t&&("function"==typeof t.read&&(this._read=t.read),"function"==typeof t.destroy&&(this._destroy=t.destroy)),u.call(this)}function b(t,e,r,n,o){var i,s=t._readableState;null===e?(s.reading=!1,function(t,e){if(e.ended)return;if(e.decoder){var r=e.decoder.end();r&&r.length&&(e.buffer.push(r),e.length+=e.objectMode?1:r.length)}e.ended=!0,E(t)}(t,s)):(o||(i=function(t,e){var r;n=e,c.isBuffer(n)||n instanceof h||"string"==typeof e||void 0===e||t.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(s,e)),i?t.emit("error",i):s.objectMode||e&&e.length>0?("string"==typeof e||s.objectMode||Object.getPrototypeOf(e)===c.prototype||(e=function(t){return c.from(t)}(e)),n?s.endEmitted?t.emit("error",new Error("stream.unshift() after end event")):v(t,s,e,!0):s.ended?t.emit("error",new Error("stream.push() after EOF")):(s.reading=!1,s.decoder&&!r?(e=s.decoder.write(e),s.objectMode||0!==e.length?v(t,s,e,!1):O(t,s)):v(t,s,e,!1))):n||(s.reading=!1));return function(t){return!t.ended&&(t.needReadable||t.length<t.highWaterMark||0===t.length)}(s)}function v(t,e,r,n){e.flowing&&0===e.length&&!e.sync?(t.emit("data",r),t.read(0)):(e.length+=e.objectMode?1:r.length,n?e.buffer.unshift(r):e.buffer.push(r),e.needReadable&&E(t)),O(t,e)}Object.defineProperty(w.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}}),w.prototype.destroy=g.destroy,w.prototype._undestroy=g.undestroy,w.prototype._destroy=function(t,e){this.push(null),e(t)},w.prototype.push=function(t,e){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof t&&((e=e||n.defaultEncoding)!==n.encoding&&(t=c.from(t,e),e=""),r=!0),b(this,t,e,!1,r)},w.prototype.unshift=function(t){return b(this,t,null,!0,!1)},w.prototype.isPaused=function(){return!1===this._readableState.flowing},w.prototype.setEncoding=function(t){return d||(d=r(32).StringDecoder),this._readableState.decoder=new d(t),this._readableState.encoding=t,this};function T(t,e){return t<=0||0===e.length&&e.ended?0:e.objectMode?1:t!=t?e.flowing&&e.length?e.buffer.head.data.length:e.length:(t>e.highWaterMark&&(e.highWaterMark=function(t){return t>=8388608?t=8388608:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function E(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(f("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?o.nextTick(P,t):P(t))}function P(t){f("emit readable"),t.emit("readable"),k(t)}function O(t,e){e.readingMore||(e.readingMore=!0,o.nextTick(I,t,e))}function I(t,e){for(var r=e.length;!e.reading&&!e.flowing&&!e.ended&&e.length<e.highWaterMark&&(f("maybeReadMore read 0"),t.read(0),r!==e.length);)r=e.length;e.readingMore=!1}function D(t){f("readable nexttick read 0"),t.read(0)}function S(t,e){e.reading||(f("resume read 0"),t.read(0)),e.resumeScheduled=!1,e.awaitDrain=0,t.emit("resume"),k(t),e.flowing&&!e.reading&&t.read(0)}function k(t){var e=t._readableState;for(f("flow",e.flowing);e.flowing&&null!==t.read(););}function x(t,e){return 0===e.length?null:(e.objectMode?r=e.buffer.shift():!t||t>=e.length?(r=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.head.data:e.buffer.concat(e.length),e.buffer.clear()):r=function(t,e,r){var n;t<e.head.data.length?(n=e.head.data.slice(0,t),e.head.data=e.head.data.slice(t)):n=t===e.head.data.length?e.shift():r?function(t,e){var r=e.head,n=1,o=r.data;t-=o.length;for(;r=r.next;){var i=r.data,s=t>i.length?i.length:t;if(s===i.length?o+=i:o+=i.slice(0,t),0===(t-=s)){s===i.length?(++n,r.next?e.head=r.next:e.head=e.tail=null):(e.head=r,r.data=i.slice(s));break}++n}return e.length-=n,o}(t,e):function(t,e){var r=c.allocUnsafe(t),n=e.head,o=1;n.data.copy(r),t-=n.data.length;for(;n=n.next;){var i=n.data,s=t>i.length?i.length:t;if(i.copy(r,r.length-t,0,s),0===(t-=s)){s===i.length?(++o,n.next?e.head=n.next:e.head=e.tail=null):(e.head=n,n.data=i.slice(s));break}++o}return e.length-=o,r}(t,e);return n}(t,e.buffer,e.decoder),r);var r}function C(t){var e=t._readableState;if(e.length>0)throw new Error('"endReadable()" called on non-empty stream');e.endEmitted||(e.ended=!0,o.nextTick(N,e,t))}function N(t,e){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}function A(t,e){for(var r=0,n=t.length;r<n;r++)if(t[r]===e)return r;return-1}w.prototype.read=function(t){f("read",t),t=parseInt(t,10);var e=this._readableState,r=t;if(0!==t&&(e.emittedReadable=!1),0===t&&e.needReadable&&(e.length>=e.highWaterMark||e.ended))return f("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?C(this):E(this),null;if(0===(t=T(t,e))&&e.ended)return 0===e.length&&C(this),null;var n,o=e.needReadable;return f("need readable",o),(0===e.length||e.length-t<e.highWaterMark)&&f("length less than watermark",o=!0),e.ended||e.reading?f("reading or ended",o=!1):o&&(f("do read"),e.reading=!0,e.sync=!0,0===e.length&&(e.needReadable=!0),this._read(e.highWaterMark),e.sync=!1,e.reading||(t=T(r,e))),null===(n=t>0?x(t,e):null)?(e.needReadable=!0,t=0):e.length-=t,0===e.length&&(e.ended||(e.needReadable=!0),r!==t&&e.ended&&C(this)),null!==n&&this.emit("data",n),n},w.prototype._read=function(t){this.emit("error",new Error("_read() is not implemented"))},w.prototype.pipe=function(t,e){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=t;break;case 1:i.pipes=[i.pipes,t];break;default:i.pipes.push(t)}i.pipesCount+=1,f("pipe count=%d opts=%j",i.pipesCount,e);var u=(!e||!1!==e.end)&&t!==n.stdout&&t!==n.stderr?h:w;function c(e,n){f("onunpipe"),e===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,f("cleanup"),t.removeListener("close",m),t.removeListener("finish",_),t.removeListener("drain",p),t.removeListener("error",g),t.removeListener("unpipe",c),r.removeListener("end",h),r.removeListener("end",w),r.removeListener("data",y),l=!0,!i.awaitDrain||t._writableState&&!t._writableState.needDrain||p())}function h(){f("onend"),t.end()}i.endEmitted?o.nextTick(u):r.once("end",u),t.on("unpipe",c);var p=function(t){return function(){var e=t._readableState;f("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&a(t,"data")&&(e.flowing=!0,k(t))}}(r);t.on("drain",p);var l=!1;var d=!1;function y(e){f("ondata"),d=!1,!1!==t.write(e)||d||((1===i.pipesCount&&i.pipes===t||i.pipesCount>1&&-1!==A(i.pipes,t))&&!l&&(f("false write response, pause",r._readableState.awaitDrain),r._readableState.awaitDrain++,d=!0),r.pause())}function g(e){f("onerror",e),w(),t.removeListener("error",g),0===a(t,"error")&&t.emit("error",e)}function m(){t.removeListener("finish",_),w()}function _(){f("onfinish"),t.removeListener("close",m),w()}function w(){f("unpipe"),r.unpipe(t)}return r.on("data",y),function(t,e,r){if("function"==typeof t.prependListener)return t.prependListener(e,r);t._events&&t._events[e]?s(t._events[e])?t._events[e].unshift(r):t._events[e]=[r,t._events[e]]:t.on(e,r)}(t,"error",g),t.once("close",m),t.once("finish",_),t.emit("pipe",r),i.flowing||(f("pipe resume"),r.resume()),t},w.prototype.unpipe=function(t){var e=this._readableState,r={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,r)),this;if(!t){var n=e.pipes,o=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var i=0;i<o;i++)n[i].emit("unpipe",this,r);return this}var s=A(e.pipes,t);return-1===s||(e.pipes.splice(s,1),e.pipesCount-=1,1===e.pipesCount&&(e.pipes=e.pipes[0]),t.emit("unpipe",this,r)),this},w.prototype.on=function(t,e){var r=u.prototype.on.call(this,t,e);if("data"===t)!1!==this._readableState.flowing&&this.resume();else if("readable"===t){var n=this._readableState;n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.emittedReadable=!1,n.reading?n.length&&E(this):o.nextTick(D,this))}return r},w.prototype.addListener=w.prototype.on,w.prototype.resume=function(){var t=this._readableState;return t.flowing||(f("resume"),t.flowing=!0,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,o.nextTick(S,t,e))}(this,t)),this},w.prototype.pause=function(){return f("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(f("pause"),this._readableState.flowing=!1,this.emit("pause")),this},w.prototype.wrap=function(t){var e=this,r=this._readableState,n=!1;for(var o in t.on("end",(function(){if(f("wrapped end"),r.decoder&&!r.ended){var t=r.decoder.end();t&&t.length&&e.push(t)}e.push(null)})),t.on("data",(function(o){(f("wrapped data"),r.decoder&&(o=r.decoder.write(o)),r.objectMode&&null==o)||(r.objectMode||o&&o.length)&&(e.push(o)||(n=!0,t.pause()))})),t)void 0===this[o]&&"function"==typeof t[o]&&(this[o]=function(e){return function(){return t[e].apply(t,arguments)}}(o));for(var i=0;i<m.length;i++)t.on(m[i],this.emit.bind(this,m[i]));return this._read=function(e){f("wrapped _read",e),n&&(n=!1,t.resume())},this},Object.defineProperty(w.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),w._fromList=x}).call(this,r(4),r(12))},function(t,e,r){t.exports=r(11).EventEmitter},function(t,e,r){"use strict";var n=r(13);function o(t,e){t.emit("error",e)}t.exports={destroy:function(t,e){var r=this,i=this._readableState&&this._readableState.destroyed,s=this._writableState&&this._writableState.destroyed;return i||s?(e?e(t):!t||this._writableState&&this._writableState.errorEmitted||n.nextTick(o,this,t),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(t||null,(function(t){!e&&t?(n.nextTick(o,r,t),r._writableState&&(r._writableState.errorEmitted=!0)):e&&e(t)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},function(t,e,r){(function(t){var n=void 0!==t&&t||"undefined"!=typeof self&&self||window,o=Function.prototype.apply;function i(t,e){this._id=t,this._clearFn=e}e.setTimeout=function(){return new i(o.call(setTimeout,n,arguments),clearTimeout)},e.setInterval=function(){return new i(o.call(setInterval,n,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(n,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout((function(){t._onTimeout&&t._onTimeout()}),e))},r(82),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(this,r(4))},function(t,e,r){"use strict";t.exports=s;var n=r(3),o=Object.create(r(6));function i(t,e){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=e&&this.push(e),n(t);var o=this._readableState;o.reading=!1,(o.needReadable||o.length<o.highWaterMark)&&this._read(o.highWaterMark)}function s(t){if(!(this instanceof s))return new s(t);n.call(this,t),this._transformState={afterTransform:i.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,t&&("function"==typeof t.transform&&(this._transform=t.transform),"function"==typeof t.flush&&(this._flush=t.flush)),this.on("prefinish",a)}function a(){var t=this;"function"==typeof this._flush?this._flush((function(e,r){u(t,e,r)})):u(this,null,null)}function u(t,e,r){if(e)return t.emit("error",e);if(null!=r&&t.push(r),t._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(t._transformState.transforming)throw new Error("Calling transform done when still transforming");return t.push(null)}o.inherits=r(5),o.inherits(s,n),s.prototype.push=function(t,e){return this._transformState.needTransform=!1,n.prototype.push.call(this,t,e)},s.prototype._transform=function(t,e,r){throw new Error("_transform() is not implemented")},s.prototype._write=function(t,e,r){var n=this._transformState;if(n.writecb=r,n.writechunk=t,n.writeencoding=e,!n.transforming){var o=this._readableState;(n.needTransform||o.needReadable||o.length<o.highWaterMark)&&this._read(o.highWaterMark)}},s.prototype._read=function(t){var e=this._transformState;null!==e.writechunk&&e.writecb&&!e.transforming?(e.transforming=!0,this._transform(e.writechunk,e.writeencoding,e.afterTransform)):e.needTransform=!0},s.prototype._destroy=function(t,e){var r=this;n.prototype._destroy.call(this,t,(function(t){e(t),r.emit("close")}))}},function(t,e){(function(){"use strict";var t;t=new RegExp(/(?!xmlns)^.*:/),e.normalize=function(t){return t.toLowerCase()},e.firstCharLowerCase=function(t){return t.charAt(0).toLowerCase()+t.slice(1)},e.stripPrefix=function(e){return e.replace(t,"")},e.parseNumbers=function(t){return isNaN(t)||(t=t%1==0?parseInt(t,10):parseFloat(t)),t},e.parseBooleans=function(t){return/^(?:true|false)$/i.test(t)&&(t="true"===t.toLowerCase()),t}}).call(this)},function(t,e,r){
24
+ /*!
25
+ * Copyright 2019 SmugMug, Inc.
26
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
27
+ */
28
+ (e=t.exports=r(50)).OAuth=r(61),e.Feeds=r(62),e.Upload=r(63),e.Replace=r(90)},function(t,e,r){
29
+ /*!
30
+ * Copyright 2019 SmugMug, Inc.
31
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
32
+ */
33
+ var n=r(7),o=r(34),i=r(60);function s(t,e){var r,o;if("string"==typeof t&&(o=t,t=function(t){return t.query({api_key:o})}),"function"!=typeof t)throw new Error('Missing required argument "auth"');return r=(e=e||{}).host||"api.flickr.com",e.port&&(r+=":"+e.port),function(e,o,s){return void 0===s&&(s={}),s.extras&&(s.extras=function(t){if(!("string"==typeof t||Array.isArray(t)||t instanceof Set))throw new Error('Invalid type for argument "extras"');if("string"==typeof t&&(t=t.split(",")),Array.isArray(t)&&(t=new Set(t)),t instanceof Set)return Array.from(t).join(",")}(s.extras)),n(e,"https://"+r+"/services/rest").query({method:o}).query(s).use(i).use(t)}}function a(t,e){if(!(this instanceof a))return new a(t);this.activity._=this.auth._=this.auth.oauth._=this.blogs._=this.cameras._=this.collections._=this.commons._=this.contacts._=this.favorites._=this.galleries._=this.groups._=this.groups.discuss._=this.groups.discuss.replies._=this.groups.discuss.topics._=this.groups.members._=this.groups.pools._=this.interestingness._=this.machinetags._=this.panda._=this.people._=this.photos._=this.photos.comments._=this.photos.geo._=this.photos.licenses._=this.photos.notes._=this.photos.people._=this.photos.suggestions._=this.photos.transform._=this.photos.upload._=this.photosets._=this.photosets.comments._=this.places._=this.prefs._=this.profile._=this.push._=this.reflection._=this.stats._=this.tags._=this.test._=this.testimonials._=this.urls._=this._=s(t,e)}a.prototype.activity={},a.prototype.activity.userComments=function(t){return this._("GET","flickr.activity.userComments",t)},a.prototype.activity.userPhotos=function(t){return this._("GET","flickr.activity.userPhotos",t)},a.prototype.auth={},a.prototype.auth.checkToken=function(t){return o(t,"auth_token"),this._("GET","flickr.auth.checkToken",t)},a.prototype.auth.getFrob=function(t){return this._("GET","flickr.auth.getFrob",t)},a.prototype.auth.getFullToken=function(t){return o(t,"mini_token"),this._("GET","flickr.auth.getFullToken",t)},a.prototype.auth.getToken=function(t){return o(t,"frob"),this._("GET","flickr.auth.getToken",t)},a.prototype.auth.oauth={},a.prototype.auth.oauth.checkToken=function(t){return o(t,"oauth_token"),this._("GET","flickr.auth.oauth.checkToken",t)},a.prototype.auth.oauth.getAccessToken=function(t){return this._("GET","flickr.auth.oauth.getAccessToken",t)},a.prototype.blogs={},a.prototype.blogs.getList=function(t){return this._("GET","flickr.blogs.getList",t)},a.prototype.blogs.getServices=function(t){return this._("GET","flickr.blogs.getServices",t)},a.prototype.blogs.postPhoto=function(t){return o(t,"photo_id"),o(t,"title"),o(t,"description"),this._("POST","flickr.blogs.postPhoto",t)},a.prototype.cameras={},a.prototype.cameras.getBrandModels=function(t){return o(t,"brand"),this._("GET","flickr.cameras.getBrandModels",t)},a.prototype.cameras.getBrands=function(t){return this._("GET","flickr.cameras.getBrands",t)},a.prototype.collections={},a.prototype.collections.getInfo=function(t){return o(t,"collection_id"),this._("GET","flickr.collections.getInfo",t)},a.prototype.collections.getTree=function(t){return this._("GET","flickr.collections.getTree",t)},a.prototype.commons={},a.prototype.commons.getInstitutions=function(t){return this._("GET","flickr.commons.getInstitutions",t)},a.prototype.contacts={},a.prototype.contacts.getList=function(t){return this._("GET","flickr.contacts.getList",t)},a.prototype.contacts.getListRecentlyUploaded=function(t){return this._("GET","flickr.contacts.getListRecentlyUploaded",t)},a.prototype.contacts.getPublicList=function(t){return o(t,"user_id"),this._("GET","flickr.contacts.getPublicList",t)},a.prototype.contacts.getTaggingSuggestions=function(t){return this._("GET","flickr.contacts.getTaggingSuggestions",t)},a.prototype.favorites={},a.prototype.favorites.add=function(t){return o(t,"photo_id"),this._("POST","flickr.favorites.add",t)},a.prototype.favorites.getContext=function(t){return o(t,"photo_id"),o(t,"user_id"),this._("GET","flickr.favorites.getContext",t)},a.prototype.favorites.getList=function(t){return this._("GET","flickr.favorites.getList",t)},a.prototype.favorites.getPublicList=function(t){return o(t,"user_id"),this._("GET","flickr.favorites.getPublicList",t)},a.prototype.favorites.remove=function(t){return o(t,"photo_id"),this._("POST","flickr.favorites.remove",t)},a.prototype.galleries={},a.prototype.galleries.addPhoto=function(t){return o(t,"gallery_id"),o(t,"photo_id"),this._("POST","flickr.galleries.addPhoto",t)},a.prototype.galleries.create=function(t){return o(t,"title"),o(t,"description"),this._("POST","flickr.galleries.create",t)},a.prototype.galleries.editMeta=function(t){return o(t,"gallery_id"),o(t,"title"),this._("POST","flickr.galleries.editMeta",t)},a.prototype.galleries.editPhoto=function(t){return o(t,"gallery_id"),o(t,"photo_id"),o(t,"comment"),this._("POST","flickr.galleries.editPhoto",t)},a.prototype.galleries.editPhotos=function(t){return o(t,"gallery_id"),o(t,"primary_photo_id"),o(t,"photo_ids"),this._("POST","flickr.galleries.editPhotos",t)},a.prototype.galleries.getInfo=function(t){return o(t,"gallery_id"),this._("GET","flickr.galleries.getInfo",t)},a.prototype.galleries.getList=function(t){return o(t,"user_id"),this._("GET","flickr.galleries.getList",t)},a.prototype.galleries.getListForPhoto=function(t){return o(t,"photo_id"),this._("GET","flickr.galleries.getListForPhoto",t)},a.prototype.galleries.getPhotos=function(t){return o(t,"gallery_id"),this._("GET","flickr.galleries.getPhotos",t)},a.prototype.groups={},a.prototype.groups.browse=function(t){return this._("GET","flickr.groups.browse",t)},a.prototype.groups.getInfo=function(t){return o(t,"group_id"),this._("GET","flickr.groups.getInfo",t)},a.prototype.groups.join=function(t){return o(t,"group_id"),this._("POST","flickr.groups.join",t)},a.prototype.groups.joinRequest=function(t){return o(t,"group_id"),o(t,"message"),o(t,"accept_rules"),this._("POST","flickr.groups.joinRequest",t)},a.prototype.groups.leave=function(t){return o(t,"group_id"),this._("POST","flickr.groups.leave",t)},a.prototype.groups.search=function(t){return o(t,"text"),this._("GET","flickr.groups.search",t)},a.prototype.groups.discuss={},a.prototype.groups.discuss.replies={},a.prototype.groups.discuss.replies.add=function(t){return o(t,"group_id"),o(t,"topic_id"),o(t,"message"),this._("POST","flickr.groups.discuss.replies.add",t)},a.prototype.groups.discuss.replies.delete=function(t){return o(t,"group_id"),o(t,"topic_id"),o(t,"reply_id"),this._("POST","flickr.groups.discuss.replies.delete",t)},a.prototype.groups.discuss.replies.edit=function(t){return o(t,"group_id"),o(t,"topic_id"),o(t,"reply_id"),o(t,"message"),this._("POST","flickr.groups.discuss.replies.edit",t)},a.prototype.groups.discuss.replies.getInfo=function(t){return o(t,"group_id"),o(t,"topic_id"),o(t,"reply_id"),this._("GET","flickr.groups.discuss.replies.getInfo",t)},a.prototype.groups.discuss.replies.getList=function(t){return o(t,"group_id"),o(t,"topic_id"),o(t,"per_page"),this._("GET","flickr.groups.discuss.replies.getList",t)},a.prototype.groups.discuss.topics={},a.prototype.groups.discuss.topics.add=function(t){return o(t,"group_id"),o(t,"subject"),o(t,"message"),this._("POST","flickr.groups.discuss.topics.add",t)},a.prototype.groups.discuss.topics.getInfo=function(t){return o(t,"group_id"),o(t,"topic_id"),this._("GET","flickr.groups.discuss.topics.getInfo",t)},a.prototype.groups.discuss.topics.getList=function(t){return o(t,"group_id"),this._("GET","flickr.groups.discuss.topics.getList",t)},a.prototype.groups.members={},a.prototype.groups.members.getList=function(t){return o(t,"group_id"),this._("GET","flickr.groups.members.getList",t)},a.prototype.groups.pools={},a.prototype.groups.pools.add=function(t){return o(t,"photo_id"),o(t,"group_id"),this._("POST","flickr.groups.pools.add",t)},a.prototype.groups.pools.getContext=function(t){return o(t,"photo_id"),o(t,"group_id"),this._("GET","flickr.groups.pools.getContext",t)},a.prototype.groups.pools.getGroups=function(t){return this._("GET","flickr.groups.pools.getGroups",t)},a.prototype.groups.pools.getPhotos=function(t){return o(t,"group_id"),this._("GET","flickr.groups.pools.getPhotos",t)},a.prototype.groups.pools.remove=function(t){return o(t,"photo_id"),o(t,"group_id"),this._("POST","flickr.groups.pools.remove",t)},a.prototype.interestingness={},a.prototype.interestingness.getList=function(t){return this._("GET","flickr.interestingness.getList",t)},a.prototype.machinetags={},a.prototype.machinetags.getNamespaces=function(t){return this._("GET","flickr.machinetags.getNamespaces",t)},a.prototype.machinetags.getPairs=function(t){return this._("GET","flickr.machinetags.getPairs",t)},a.prototype.machinetags.getPredicates=function(t){return this._("GET","flickr.machinetags.getPredicates",t)},a.prototype.machinetags.getRecentValues=function(t){return this._("GET","flickr.machinetags.getRecentValues",t)},a.prototype.machinetags.getValues=function(t){return o(t,"namespace"),o(t,"predicate"),this._("GET","flickr.machinetags.getValues",t)},a.prototype.panda={},a.prototype.panda.getList=function(t){return this._("GET","flickr.panda.getList",t)},a.prototype.panda.getPhotos=function(t){return o(t,"panda_name"),this._("GET","flickr.panda.getPhotos",t)},a.prototype.people={},a.prototype.people.findByEmail=function(t){return o(t,"find_email"),this._("GET","flickr.people.findByEmail",t)},a.prototype.people.findByUsername=function(t){return o(t,"username"),this._("GET","flickr.people.findByUsername",t)},a.prototype.people.getGroups=function(t){return o(t,"user_id"),this._("GET","flickr.people.getGroups",t)},a.prototype.people.getInfo=function(t){return o(t,"user_id"),this._("GET","flickr.people.getInfo",t)},a.prototype.people.getLimits=function(t){return this._("GET","flickr.people.getLimits",t)},a.prototype.people.getPhotos=function(t){return o(t,"user_id"),this._("GET","flickr.people.getPhotos",t)},a.prototype.people.getPhotosOf=function(t){return o(t,"user_id"),this._("GET","flickr.people.getPhotosOf",t)},a.prototype.people.getPublicGroups=function(t){return o(t,"user_id"),this._("GET","flickr.people.getPublicGroups",t)},a.prototype.people.getPublicPhotos=function(t){return o(t,"user_id"),this._("GET","flickr.people.getPublicPhotos",t)},a.prototype.people.getUploadStatus=function(t){return this._("GET","flickr.people.getUploadStatus",t)},a.prototype.photos={},a.prototype.photos.addTags=function(t){return o(t,"photo_id"),o(t,"tags"),this._("POST","flickr.photos.addTags",t)},a.prototype.photos.delete=function(t){return o(t,"photo_id"),this._("POST","flickr.photos.delete",t)},a.prototype.photos.getAllContexts=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.getAllContexts",t)},a.prototype.photos.getContactsPhotos=function(t){return this._("GET","flickr.photos.getContactsPhotos",t)},a.prototype.photos.getContactsPublicPhotos=function(t){return o(t,"user_id"),this._("GET","flickr.photos.getContactsPublicPhotos",t)},a.prototype.photos.getContext=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.getContext",t)},a.prototype.photos.getCounts=function(t){return this._("GET","flickr.photos.getCounts",t)},a.prototype.photos.getExif=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.getExif",t)},a.prototype.photos.getFavorites=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.getFavorites",t)},a.prototype.photos.getInfo=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.getInfo",t)},a.prototype.photos.getNotInSet=function(t){return this._("GET","flickr.photos.getNotInSet",t)},a.prototype.photos.getPerms=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.getPerms",t)},a.prototype.photos.getPopular=function(t){return this._("GET","flickr.photos.getPopular",t)},a.prototype.photos.getRecent=function(t){return this._("GET","flickr.photos.getRecent",t)},a.prototype.photos.getSizes=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.getSizes",t)},a.prototype.photos.getUntagged=function(t){return this._("GET","flickr.photos.getUntagged",t)},a.prototype.photos.getWithGeoData=function(t){return this._("GET","flickr.photos.getWithGeoData",t)},a.prototype.photos.getWithoutGeoData=function(t){return this._("GET","flickr.photos.getWithoutGeoData",t)},a.prototype.photos.recentlyUpdated=function(t){return o(t,"min_date"),this._("GET","flickr.photos.recentlyUpdated",t)},a.prototype.photos.removeTag=function(t){return o(t,"tag_id"),this._("POST","flickr.photos.removeTag",t)},a.prototype.photos.search=function(t){return this._("GET","flickr.photos.search",t)},a.prototype.photos.setContentType=function(t){return o(t,"photo_id"),o(t,"content_type"),this._("POST","flickr.photos.setContentType",t)},a.prototype.photos.setDates=function(t){return o(t,"photo_id"),this._("POST","flickr.photos.setDates",t)},a.prototype.photos.setMeta=function(t){return o(t,"photo_id"),this._("POST","flickr.photos.setMeta",t)},a.prototype.photos.setPerms=function(t){return o(t,"photo_id"),o(t,"is_public"),o(t,"is_friend"),o(t,"is_family"),this._("POST","flickr.photos.setPerms",t)},a.prototype.photos.setSafetyLevel=function(t){return o(t,"photo_id"),this._("POST","flickr.photos.setSafetyLevel",t)},a.prototype.photos.setTags=function(t){return o(t,"photo_id"),o(t,"tags"),this._("POST","flickr.photos.setTags",t)},a.prototype.photos.comments={},a.prototype.photos.comments.addComment=function(t){return o(t,"photo_id"),o(t,"comment_text"),this._("POST","flickr.photos.comments.addComment",t)},a.prototype.photos.comments.deleteComment=function(t){return o(t,"comment_id"),this._("POST","flickr.photos.comments.deleteComment",t)},a.prototype.photos.comments.editComment=function(t){return o(t,"comment_id"),o(t,"comment_text"),this._("POST","flickr.photos.comments.editComment",t)},a.prototype.photos.comments.getList=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.comments.getList",t)},a.prototype.photos.comments.getRecentForContacts=function(t){return this._("GET","flickr.photos.comments.getRecentForContacts",t)},a.prototype.photos.geo={},a.prototype.photos.geo.batchCorrectLocation=function(t){return o(t,"lat"),o(t,"lon"),o(t,"accuracy"),this._("POST","flickr.photos.geo.batchCorrectLocation",t)},a.prototype.photos.geo.correctLocation=function(t){return o(t,"photo_id"),o(t,"foursquare_id"),this._("POST","flickr.photos.geo.correctLocation",t)},a.prototype.photos.geo.getLocation=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.geo.getLocation",t)},a.prototype.photos.geo.getPerms=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.geo.getPerms",t)},a.prototype.photos.geo.photosForLocation=function(t){return o(t,"lat"),o(t,"lon"),this._("GET","flickr.photos.geo.photosForLocation",t)},a.prototype.photos.geo.removeLocation=function(t){return o(t,"photo_id"),this._("POST","flickr.photos.geo.removeLocation",t)},a.prototype.photos.geo.setContext=function(t){return o(t,"photo_id"),o(t,"context"),this._("POST","flickr.photos.geo.setContext",t)},a.prototype.photos.geo.setLocation=function(t){return o(t,"photo_id"),o(t,"lat"),o(t,"lon"),this._("POST","flickr.photos.geo.setLocation",t)},a.prototype.photos.geo.setPerms=function(t){return o(t,"is_public"),o(t,"is_contact"),o(t,"is_friend"),o(t,"is_family"),o(t,"photo_id"),this._("POST","flickr.photos.geo.setPerms",t)},a.prototype.photos.licenses={},a.prototype.photos.licenses.getInfo=function(t){return this._("GET","flickr.photos.licenses.getInfo",t)},a.prototype.photos.licenses.setLicense=function(t){return o(t,"photo_id"),o(t,"license_id"),this._("POST","flickr.photos.licenses.setLicense",t)},a.prototype.photos.notes={},a.prototype.photos.notes.add=function(t){return o(t,"photo_id"),o(t,"note_x"),o(t,"note_y"),o(t,"note_w"),o(t,"note_h"),o(t,"note_text"),this._("POST","flickr.photos.notes.add",t)},a.prototype.photos.notes.delete=function(t){return o(t,"note_id"),this._("POST","flickr.photos.notes.delete",t)},a.prototype.photos.notes.edit=function(t){return o(t,"note_id"),o(t,"note_x"),o(t,"note_y"),o(t,"note_w"),o(t,"note_h"),o(t,"note_text"),this._("POST","flickr.photos.notes.edit",t)},a.prototype.photos.people={},a.prototype.photos.people.add=function(t){return o(t,"photo_id"),o(t,"user_id"),this._("POST","flickr.photos.people.add",t)},a.prototype.photos.people.delete=function(t){return o(t,"photo_id"),o(t,"user_id"),this._("POST","flickr.photos.people.delete",t)},a.prototype.photos.people.deleteCoords=function(t){return o(t,"photo_id"),o(t,"user_id"),this._("POST","flickr.photos.people.deleteCoords",t)},a.prototype.photos.people.editCoords=function(t){return o(t,"photo_id"),o(t,"user_id"),o(t,"person_x"),o(t,"person_y"),o(t,"person_w"),o(t,"person_h"),this._("POST","flickr.photos.people.editCoords",t)},a.prototype.photos.people.getList=function(t){return o(t,"photo_id"),this._("GET","flickr.photos.people.getList",t)},a.prototype.photos.suggestions={},a.prototype.photos.suggestions.approveSuggestion=function(t){return o(t,"suggestion_id"),this._("POST","flickr.photos.suggestions.approveSuggestion",t)},a.prototype.photos.suggestions.getList=function(t){return this._("GET","flickr.photos.suggestions.getList",t)},a.prototype.photos.suggestions.rejectSuggestion=function(t){return o(t,"suggestion_id"),this._("POST","flickr.photos.suggestions.rejectSuggestion",t)},a.prototype.photos.suggestions.removeSuggestion=function(t){return o(t,"suggestion_id"),this._("POST","flickr.photos.suggestions.removeSuggestion",t)},a.prototype.photos.suggestions.suggestLocation=function(t){return o(t,"photo_id"),o(t,"lat"),o(t,"lon"),this._("POST","flickr.photos.suggestions.suggestLocation",t)},a.prototype.photos.transform={},a.prototype.photos.transform.rotate=function(t){return o(t,"photo_id"),o(t,"degrees"),this._("POST","flickr.photos.transform.rotate",t)},a.prototype.photos.upload={},a.prototype.photos.upload.checkTickets=function(t){return o(t,"tickets"),this._("GET","flickr.photos.upload.checkTickets",t)},a.prototype.photosets={},a.prototype.photosets.addPhoto=function(t){return o(t,"photoset_id"),o(t,"photo_id"),this._("POST","flickr.photosets.addPhoto",t)},a.prototype.photosets.create=function(t){return o(t,"title"),o(t,"primary_photo_id"),this._("POST","flickr.photosets.create",t)},a.prototype.photosets.delete=function(t){return o(t,"photoset_id"),this._("POST","flickr.photosets.delete",t)},a.prototype.photosets.editMeta=function(t){return o(t,"photoset_id"),o(t,"title"),this._("POST","flickr.photosets.editMeta",t)},a.prototype.photosets.editPhotos=function(t){return o(t,"photoset_id"),o(t,"primary_photo_id"),o(t,"photo_ids"),this._("POST","flickr.photosets.editPhotos",t)},a.prototype.photosets.getContext=function(t){return o(t,"photo_id"),o(t,"photoset_id"),this._("GET","flickr.photosets.getContext",t)},a.prototype.photosets.getInfo=function(t){return o(t,"photoset_id"),o(t,"user_id"),this._("GET","flickr.photosets.getInfo",t)},a.prototype.photosets.getList=function(t){return this._("GET","flickr.photosets.getList",t)},a.prototype.photosets.getPhotos=function(t){return o(t,"photoset_id"),o(t,"user_id"),this._("GET","flickr.photosets.getPhotos",t)},a.prototype.photosets.orderSets=function(t){return o(t,"photoset_ids"),this._("POST","flickr.photosets.orderSets",t)},a.prototype.photosets.removePhoto=function(t){return o(t,"photoset_id"),o(t,"photo_id"),this._("POST","flickr.photosets.removePhoto",t)},a.prototype.photosets.removePhotos=function(t){return o(t,"photoset_id"),o(t,"photo_ids"),this._("POST","flickr.photosets.removePhotos",t)},a.prototype.photosets.reorderPhotos=function(t){return o(t,"photoset_id"),o(t,"photo_ids"),this._("POST","flickr.photosets.reorderPhotos",t)},a.prototype.photosets.setPrimaryPhoto=function(t){return o(t,"photoset_id"),o(t,"photo_id"),this._("POST","flickr.photosets.setPrimaryPhoto",t)},a.prototype.photosets.comments={},a.prototype.photosets.comments.addComment=function(t){return o(t,"photoset_id"),o(t,"comment_text"),this._("POST","flickr.photosets.comments.addComment",t)},a.prototype.photosets.comments.deleteComment=function(t){return o(t,"comment_id"),this._("POST","flickr.photosets.comments.deleteComment",t)},a.prototype.photosets.comments.editComment=function(t){return o(t,"comment_id"),o(t,"comment_text"),this._("POST","flickr.photosets.comments.editComment",t)},a.prototype.photosets.comments.getList=function(t){return o(t,"photoset_id"),this._("GET","flickr.photosets.comments.getList",t)},a.prototype.places={},a.prototype.places.find=function(t){return o(t,"query"),this._("GET","flickr.places.find",t)},a.prototype.places.findByLatLon=function(t){return o(t,"lat"),o(t,"lon"),this._("GET","flickr.places.findByLatLon",t)},a.prototype.places.getChildrenWithPhotosPublic=function(t){return this._("GET","flickr.places.getChildrenWithPhotosPublic",t)},a.prototype.places.getInfo=function(t){return this._("GET","flickr.places.getInfo",t)},a.prototype.places.getInfoByUrl=function(t){return o(t,"url"),this._("GET","flickr.places.getInfoByUrl",t)},a.prototype.places.getPlaceTypes=function(t){return this._("GET","flickr.places.getPlaceTypes",t)},a.prototype.places.getShapeHistory=function(t){return this._("GET","flickr.places.getShapeHistory",t)},a.prototype.places.getTopPlacesList=function(t){return o(t,"place_type_id"),this._("GET","flickr.places.getTopPlacesList",t)},a.prototype.places.placesForBoundingBox=function(t){return o(t,"bbox"),this._("GET","flickr.places.placesForBoundingBox",t)},a.prototype.places.placesForContacts=function(t){return this._("GET","flickr.places.placesForContacts",t)},a.prototype.places.placesForTags=function(t){return o(t,"place_type_id"),this._("GET","flickr.places.placesForTags",t)},a.prototype.places.placesForUser=function(t){return this._("GET","flickr.places.placesForUser",t)},a.prototype.places.resolvePlaceId=function(t){return o(t,"place_id"),this._("GET","flickr.places.resolvePlaceId",t)},a.prototype.places.resolvePlaceURL=function(t){return o(t,"url"),this._("GET","flickr.places.resolvePlaceURL",t)},a.prototype.places.tagsForPlace=function(t){return this._("GET","flickr.places.tagsForPlace",t)},a.prototype.prefs={},a.prototype.prefs.getContentType=function(t){return this._("GET","flickr.prefs.getContentType",t)},a.prototype.prefs.getGeoPerms=function(t){return this._("GET","flickr.prefs.getGeoPerms",t)},a.prototype.prefs.getHidden=function(t){return this._("GET","flickr.prefs.getHidden",t)},a.prototype.prefs.getPrivacy=function(t){return this._("GET","flickr.prefs.getPrivacy",t)},a.prototype.prefs.getSafetyLevel=function(t){return this._("GET","flickr.prefs.getSafetyLevel",t)},a.prototype.profile={},a.prototype.profile.getProfile=function(t){return o(t,"user_id"),this._("GET","flickr.profile.getProfile",t)},a.prototype.push={},a.prototype.push.getSubscriptions=function(t){return this._("GET","flickr.push.getSubscriptions",t)},a.prototype.push.getTopics=function(t){return this._("GET","flickr.push.getTopics",t)},a.prototype.push.subscribe=function(t){return o(t,"topic"),o(t,"callback"),o(t,"verify"),this._("GET","flickr.push.subscribe",t)},a.prototype.push.unsubscribe=function(t){return o(t,"topic"),o(t,"callback"),o(t,"verify"),this._("GET","flickr.push.unsubscribe",t)},a.prototype.reflection={},a.prototype.reflection.getMethodInfo=function(t){return o(t,"method_name"),this._("GET","flickr.reflection.getMethodInfo",t)},a.prototype.reflection.getMethods=function(t){return this._("GET","flickr.reflection.getMethods",t)},a.prototype.stats={},a.prototype.stats.getCSVFiles=function(t){return this._("GET","flickr.stats.getCSVFiles",t)},a.prototype.stats.getCollectionDomains=function(t){return o(t,"date"),this._("GET","flickr.stats.getCollectionDomains",t)},a.prototype.stats.getCollectionReferrers=function(t){return o(t,"date"),o(t,"domain"),this._("GET","flickr.stats.getCollectionReferrers",t)},a.prototype.stats.getCollectionStats=function(t){return o(t,"date"),o(t,"collection_id"),this._("GET","flickr.stats.getCollectionStats",t)},a.prototype.stats.getPhotoDomains=function(t){return o(t,"date"),this._("GET","flickr.stats.getPhotoDomains",t)},a.prototype.stats.getPhotoReferrers=function(t){return o(t,"date"),o(t,"domain"),this._("GET","flickr.stats.getPhotoReferrers",t)},a.prototype.stats.getPhotoStats=function(t){return o(t,"date"),o(t,"photo_id"),this._("GET","flickr.stats.getPhotoStats",t)},a.prototype.stats.getPhotosetDomains=function(t){return o(t,"date"),this._("GET","flickr.stats.getPhotosetDomains",t)},a.prototype.stats.getPhotosetReferrers=function(t){return o(t,"date"),o(t,"domain"),this._("GET","flickr.stats.getPhotosetReferrers",t)},a.prototype.stats.getPhotosetStats=function(t){return o(t,"date"),o(t,"photoset_id"),this._("GET","flickr.stats.getPhotosetStats",t)},a.prototype.stats.getPhotostreamDomains=function(t){return o(t,"date"),this._("GET","flickr.stats.getPhotostreamDomains",t)},a.prototype.stats.getPhotostreamReferrers=function(t){return o(t,"date"),o(t,"domain"),this._("GET","flickr.stats.getPhotostreamReferrers",t)},a.prototype.stats.getPhotostreamStats=function(t){return o(t,"date"),this._("GET","flickr.stats.getPhotostreamStats",t)},a.prototype.stats.getPopularPhotos=function(t){return this._("GET","flickr.stats.getPopularPhotos",t)},a.prototype.stats.getTotalViews=function(t){return this._("GET","flickr.stats.getTotalViews",t)},a.prototype.tags={},a.prototype.tags.getClusterPhotos=function(t){return o(t,"tag"),o(t,"cluster_id"),this._("GET","flickr.tags.getClusterPhotos",t)},a.prototype.tags.getClusters=function(t){return o(t,"tag"),this._("GET","flickr.tags.getClusters",t)},a.prototype.tags.getHotList=function(t){return this._("GET","flickr.tags.getHotList",t)},a.prototype.tags.getListPhoto=function(t){return o(t,"photo_id"),this._("GET","flickr.tags.getListPhoto",t)},a.prototype.tags.getListUser=function(t){return this._("GET","flickr.tags.getListUser",t)},a.prototype.tags.getListUserPopular=function(t){return this._("GET","flickr.tags.getListUserPopular",t)},a.prototype.tags.getListUserRaw=function(t){return this._("GET","flickr.tags.getListUserRaw",t)},a.prototype.tags.getMostFrequentlyUsed=function(t){return this._("GET","flickr.tags.getMostFrequentlyUsed",t)},a.prototype.tags.getRelated=function(t){return o(t,"tag"),this._("GET","flickr.tags.getRelated",t)},a.prototype.test={},a.prototype.test.echo=function(t){return this._("GET","flickr.test.echo",t)},a.prototype.test.login=function(t){return this._("GET","flickr.test.login",t)},a.prototype.test.null=function(t){return this._("GET","flickr.test.null",t)},a.prototype.testimonials={},a.prototype.testimonials.addTestimonial=function(t){return o(t,"user_id"),o(t,"testimonial_text"),this._("POST","flickr.testimonials.addTestimonial",t)},a.prototype.testimonials.approveTestimonial=function(t){return o(t,"testimonial_id"),this._("POST","flickr.testimonials.approveTestimonial",t)},a.prototype.testimonials.deleteTestimonial=function(t){return o(t,"testimonial_id"),this._("POST","flickr.testimonials.deleteTestimonial",t)},a.prototype.testimonials.editTestimonial=function(t){return o(t,"user_id"),o(t,"testimonial_id"),o(t,"testimonial_text"),this._("POST","flickr.testimonials.editTestimonial",t)},a.prototype.testimonials.getAllTestimonialsAbout=function(t){return this._("GET","flickr.testimonials.getAllTestimonialsAbout",t)},a.prototype.testimonials.getAllTestimonialsAboutBy=function(t){return o(t,"user_id"),this._("GET","flickr.testimonials.getAllTestimonialsAboutBy",t)},a.prototype.testimonials.getAllTestimonialsBy=function(t){return this._("GET","flickr.testimonials.getAllTestimonialsBy",t)},a.prototype.testimonials.getPendingTestimonialsAbout=function(t){return this._("GET","flickr.testimonials.getPendingTestimonialsAbout",t)},a.prototype.testimonials.getPendingTestimonialsAboutBy=function(t){return o(t,"user_id"),this._("GET","flickr.testimonials.getPendingTestimonialsAboutBy",t)},a.prototype.testimonials.getPendingTestimonialsBy=function(t){return this._("GET","flickr.testimonials.getPendingTestimonialsBy",t)},a.prototype.testimonials.getTestimonialsAbout=function(t){return o(t,"user_id"),this._("GET","flickr.testimonials.getTestimonialsAbout",t)},a.prototype.testimonials.getTestimonialsAboutBy=function(t){return o(t,"user_id"),this._("GET","flickr.testimonials.getTestimonialsAboutBy",t)},a.prototype.testimonials.getTestimonialsBy=function(t){return o(t,"user_id"),this._("GET","flickr.testimonials.getTestimonialsBy",t)},a.prototype.urls={},a.prototype.urls.getGroup=function(t){return o(t,"group_id"),this._("GET","flickr.urls.getGroup",t)},a.prototype.urls.getUserPhotos=function(t){return this._("GET","flickr.urls.getUserPhotos",t)},a.prototype.urls.getUserProfile=function(t){return this._("GET","flickr.urls.getUserProfile",t)},a.prototype.urls.lookupGallery=function(t){return o(t,"url"),this._("GET","flickr.urls.lookupGallery",t)},a.prototype.urls.lookupGroup=function(t){return o(t,"url"),this._("GET","flickr.urls.lookupGroup",t)},a.prototype.urls.lookupUser=function(t){return o(t,"url"),this._("GET","flickr.urls.lookupUser",t)},t.exports=a},function(t,e,r){var n;"undefined"!=typeof window?n=window:"undefined"!=typeof self?n=self:(console.warn("Using browser-only version of superagent in non-browser environment"),n=this);var o=r(52),i=r(53),s=r(33),a=r(54),u=r(56);function c(){}var h=e=t.exports=function(t,r){return"function"==typeof r?new e.Request("GET",t).end(r):1==arguments.length?new e.Request("GET",t):new e.Request(t,r)};e.Request=m,h.getXHR=function(){if(!(!n.XMLHttpRequest||n.location&&"file:"==n.location.protocol&&n.ActiveXObject))return new XMLHttpRequest;try{return new ActiveXObject("Microsoft.XMLHTTP")}catch(t){}try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(t){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(t){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(t){}throw Error("Browser-only version of superagent could not find XHR")};var p="".trim?function(t){return t.trim()}:function(t){return t.replace(/(^\s*|\s*$)/g,"")};function l(t){if(!s(t))return t;var e=[];for(var r in t)f(e,r,t[r]);return e.join("&")}function f(t,e,r){if(null!=r)if(Array.isArray(r))r.forEach((function(r){f(t,e,r)}));else if(s(r))for(var n in r)f(t,e+"["+n+"]",r[n]);else t.push(encodeURIComponent(e)+"="+encodeURIComponent(r));else null===r&&t.push(encodeURIComponent(e))}function d(t){for(var e,r,n={},o=t.split("&"),i=0,s=o.length;i<s;++i)-1==(r=(e=o[i]).indexOf("="))?n[decodeURIComponent(e)]="":n[decodeURIComponent(e.slice(0,r))]=decodeURIComponent(e.slice(r+1));return n}function y(t){return/[\/+]json($|[^-\w])/.test(t)}function g(t){this.req=t,this.xhr=this.req.xhr,this.text="HEAD"!=this.req.method&&(""===this.xhr.responseType||"text"===this.xhr.responseType)||void 0===this.xhr.responseType?this.xhr.responseText:null,this.statusText=this.req.xhr.statusText;var e=this.xhr.status;1223===e&&(e=204),this._setStatusProperties(e),this.header=this.headers=function(t){for(var e,r,n,o,i=t.split(/\r?\n/),s={},a=0,u=i.length;a<u;++a)-1!==(e=(r=i[a]).indexOf(":"))&&(n=r.slice(0,e).toLowerCase(),o=p(r.slice(e+1)),s[n]=o);return s}(this.xhr.getAllResponseHeaders()),this.header["content-type"]=this.xhr.getResponseHeader("content-type"),this._setHeaderProperties(this.header),null===this.text&&t._responseType?this.body=this.xhr.response:this.body="HEAD"!=this.req.method?this._parseBody(this.text?this.text:this.xhr.response):null}function m(t,e){var r=this;this._query=this._query||[],this.method=t,this.url=e,this.header={},this._header={},this.on("end",(function(){var t,e=null,n=null;try{n=new g(r)}catch(t){return(e=new Error("Parser is unable to parse the response")).parse=!0,e.original=t,r.xhr?(e.rawResponse=void 0===r.xhr.responseType?r.xhr.responseText:r.xhr.response,e.status=r.xhr.status?r.xhr.status:null,e.statusCode=e.status):(e.rawResponse=null,e.status=null),r.callback(e)}r.emit("response",n);try{r._isResponseOK(n)||(t=new Error(n.statusText||"Unsuccessful HTTP response"))}catch(e){t=e}t?(t.original=e,t.response=n,t.status=n.status,r.callback(t,n)):r.callback(null,n)}))}function _(t,e,r){var n=h("DELETE",t);return"function"==typeof e&&(r=e,e=null),e&&n.send(e),r&&n.end(r),n}h.serializeObject=l,h.parseString=d,h.types={html:"text/html",json:"application/json",xml:"text/xml",urlencoded:"application/x-www-form-urlencoded",form:"application/x-www-form-urlencoded","form-data":"application/x-www-form-urlencoded"},h.serialize={"application/x-www-form-urlencoded":l,"application/json":JSON.stringify},h.parse={"application/x-www-form-urlencoded":d,"application/json":JSON.parse},a(g.prototype),g.prototype._parseBody=function(t){var e=h.parse[this.type];return this.req._parser?this.req._parser(this,t):(!e&&y(this.type)&&(e=h.parse["application/json"]),e&&t&&(t.length||t instanceof Object)?e(t):null)},g.prototype.toError=function(){var t=this.req,e=t.method,r=t.url,n="cannot "+e+" "+r+" ("+this.status+")",o=new Error(n);return o.status=this.status,o.method=e,o.url=r,o},h.Response=g,o(m.prototype),i(m.prototype),m.prototype.type=function(t){return this.set("Content-Type",h.types[t]||t),this},m.prototype.accept=function(t){return this.set("Accept",h.types[t]||t),this},m.prototype.auth=function(t,e,r){1===arguments.length&&(e=""),"object"==typeof e&&null!==e&&(r=e,e=""),r||(r={type:"function"==typeof btoa?"basic":"auto"});var n=function(t){if("function"==typeof btoa)return btoa(t);throw new Error("Cannot use basic auth, btoa is not a function")};return this._auth(t,e,r,n)},m.prototype.query=function(t){return"string"!=typeof t&&(t=l(t)),t&&this._query.push(t),this},m.prototype.attach=function(t,e,r){if(e){if(this._data)throw Error("superagent can't mix .send() and .attach()");this._getFormData().append(t,e,r||e.name)}return this},m.prototype._getFormData=function(){return this._formData||(this._formData=new n.FormData),this._formData},m.prototype.callback=function(t,e){if(this._shouldRetry(t,e))return this._retry();var r=this._callback;this.clearTimeout(),t&&(this._maxRetries&&(t.retries=this._retries-1),this.emit("error",t)),r(t,e)},m.prototype.crossDomainError=function(){var t=new Error("Request has been terminated\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.");t.crossDomain=!0,t.status=this.status,t.method=this.method,t.url=this.url,this.callback(t)},m.prototype.buffer=m.prototype.ca=m.prototype.agent=function(){return console.warn("This is not supported in browser version of superagent"),this},m.prototype.pipe=m.prototype.write=function(){throw Error("Streaming is not supported in browser version of superagent")},m.prototype._isHost=function(t){return t&&"object"==typeof t&&!Array.isArray(t)&&"[object Object]"!==Object.prototype.toString.call(t)},m.prototype.end=function(t){return this._endCalled&&console.warn("Warning: .end() was called twice. This is not supported in superagent"),this._endCalled=!0,this._callback=t||c,this._finalizeQueryString(),this._end()},m.prototype._end=function(){var t=this,e=this.xhr=h.getXHR(),r=this._formData||this._data;this._setTimeouts(),e.onreadystatechange=function(){var r=e.readyState;if(r>=2&&t._responseTimeoutTimer&&clearTimeout(t._responseTimeoutTimer),4==r){var n;try{n=e.status}catch(t){n=0}if(!n){if(t.timedout||t._aborted)return;return t.crossDomainError()}t.emit("end")}};var n=function(e,r){r.total>0&&(r.percent=r.loaded/r.total*100),r.direction=e,t.emit("progress",r)};if(this.hasListeners("progress"))try{e.onprogress=n.bind(null,"download"),e.upload&&(e.upload.onprogress=n.bind(null,"upload"))}catch(t){}try{this.username&&this.password?e.open(this.method,this.url,!0,this.username,this.password):e.open(this.method,this.url,!0)}catch(t){return this.callback(t)}if(this._withCredentials&&(e.withCredentials=!0),!this._formData&&"GET"!=this.method&&"HEAD"!=this.method&&"string"!=typeof r&&!this._isHost(r)){var o=this._header["content-type"],i=this._serializer||h.serialize[o?o.split(";")[0]:""];!i&&y(o)&&(i=h.serialize["application/json"]),i&&(r=i(r))}for(var s in this.header)null!=this.header[s]&&this.header.hasOwnProperty(s)&&e.setRequestHeader(s,this.header[s]);return this._responseType&&(e.responseType=this._responseType),this.emit("request",this),e.send(void 0!==r?r:null),this},h.agent=function(){return new u},["GET","POST","OPTIONS","PATCH","PUT","DELETE"].forEach((function(t){u.prototype[t.toLowerCase()]=function(e,r){var n=new h.Request(t,e);return this._setDefaults(n),r&&n.end(r),n}})),u.prototype.del=u.prototype.delete,h.get=function(t,e,r){var n=h("GET",t);return"function"==typeof e&&(r=e,e=null),e&&n.query(e),r&&n.end(r),n},h.head=function(t,e,r){var n=h("HEAD",t);return"function"==typeof e&&(r=e,e=null),e&&n.query(e),r&&n.end(r),n},h.options=function(t,e,r){var n=h("OPTIONS",t);return"function"==typeof e&&(r=e,e=null),e&&n.send(e),r&&n.end(r),n},h.del=_,h.delete=_,h.patch=function(t,e,r){var n=h("PATCH",t);return"function"==typeof e&&(r=e,e=null),e&&n.send(e),r&&n.end(r),n},h.post=function(t,e,r){var n=h("POST",t);return"function"==typeof e&&(r=e,e=null),e&&n.send(e),r&&n.end(r),n},h.put=function(t,e,r){var n=h("PUT",t);return"function"==typeof e&&(r=e,e=null),e&&n.send(e),r&&n.end(r),n}},function(t,e,r){function n(t){if(t)return function(t){for(var e in n.prototype)t[e]=n.prototype[e];return t}(t)}t.exports=n,n.prototype.on=n.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this},n.prototype.once=function(t,e){function r(){this.off(t,r),e.apply(this,arguments)}return r.fn=e,this.on(t,r),this},n.prototype.off=n.prototype.removeListener=n.prototype.removeAllListeners=n.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r,n=this._callbacks["$"+t];if(!n)return this;if(1==arguments.length)return delete this._callbacks["$"+t],this;for(var o=0;o<n.length;o++)if((r=n[o])===e||r.fn===e){n.splice(o,1);break}return 0===n.length&&delete this._callbacks["$"+t],this},n.prototype.emit=function(t){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),r=this._callbacks["$"+t],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(r){n=0;for(var o=(r=r.slice(0)).length;n<o;++n)r[n].apply(this,e)}return this},n.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks["$"+t]||[]},n.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e,r){"use strict";var n=r(33);function o(t){if(t)return function(t){for(var e in o.prototype)t[e]=o.prototype[e];return t}(t)}t.exports=o,o.prototype.clearTimeout=function(){return clearTimeout(this._timer),clearTimeout(this._responseTimeoutTimer),delete this._timer,delete this._responseTimeoutTimer,this},o.prototype.parse=function(t){return this._parser=t,this},o.prototype.responseType=function(t){return this._responseType=t,this},o.prototype.serialize=function(t){return this._serializer=t,this},o.prototype.timeout=function(t){if(!t||"object"!=typeof t)return this._timeout=t,this._responseTimeout=0,this;for(var e in t)switch(e){case"deadline":this._timeout=t.deadline;break;case"response":this._responseTimeout=t.response;break;default:console.warn("Unknown timeout option",e)}return this},o.prototype.retry=function(t,e){return 0!==arguments.length&&!0!==t||(t=1),t<=0&&(t=0),this._maxRetries=t,this._retries=0,this._retryCallback=e,this};var i=["ECONNRESET","ETIMEDOUT","EADDRINFO","ESOCKETTIMEDOUT"];o.prototype._shouldRetry=function(t,e){if(!this._maxRetries||this._retries++>=this._maxRetries)return!1;if(this._retryCallback)try{var r=this._retryCallback(t,e);if(!0===r)return!0;if(!1===r)return!1}catch(t){console.error(t)}if(e&&e.status&&e.status>=500&&501!=e.status)return!0;if(t){if(t.code&&~i.indexOf(t.code))return!0;if(t.timeout&&"ECONNABORTED"==t.code)return!0;if(t.crossDomain)return!0}return!1},o.prototype._retry=function(){return this.clearTimeout(),this.req&&(this.req=null,this.req=this.request()),this._aborted=!1,this.timedout=!1,this._end()},o.prototype.then=function(t,e){if(!this._fullfilledPromise){var r=this;this._endCalled&&console.warn("Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises"),this._fullfilledPromise=new Promise((function(t,e){r.end((function(r,n){r?e(r):t(n)}))}))}return this._fullfilledPromise.then(t,e)},o.prototype.catch=function(t){return this.then(void 0,t)},o.prototype.use=function(t){return t(this),this},o.prototype.ok=function(t){if("function"!=typeof t)throw Error("Callback required");return this._okCallback=t,this},o.prototype._isResponseOK=function(t){return!!t&&(this._okCallback?this._okCallback(t):t.status>=200&&t.status<300)},o.prototype.get=function(t){return this._header[t.toLowerCase()]},o.prototype.getHeader=o.prototype.get,o.prototype.set=function(t,e){if(n(t)){for(var r in t)this.set(r,t[r]);return this}return this._header[t.toLowerCase()]=e,this.header[t]=e,this},o.prototype.unset=function(t){return delete this._header[t.toLowerCase()],delete this.header[t],this},o.prototype.field=function(t,e){if(null==t)throw new Error(".field(name, val) name can not be empty");if(this._data&&console.error(".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()"),n(t)){for(var r in t)this.field(r,t[r]);return this}if(Array.isArray(e)){for(var o in e)this.field(t,e[o]);return this}if(null==e)throw new Error(".field(name, val) val can not be empty");return"boolean"==typeof e&&(e=""+e),this._getFormData().append(t,e),this},o.prototype.abort=function(){return this._aborted||(this._aborted=!0,this.xhr&&this.xhr.abort(),this.req&&this.req.abort(),this.clearTimeout(),this.emit("abort")),this},o.prototype._auth=function(t,e,r,n){switch(r.type){case"basic":this.set("Authorization","Basic "+n(t+":"+e));break;case"auto":this.username=t,this.password=e;break;case"bearer":this.set("Authorization","Bearer "+t)}return this},o.prototype.withCredentials=function(t){return null==t&&(t=!0),this._withCredentials=t,this},o.prototype.redirects=function(t){return this._maxRedirects=t,this},o.prototype.maxResponseSize=function(t){if("number"!=typeof t)throw TypeError("Invalid argument");return this._maxResponseSize=t,this},o.prototype.toJSON=function(){return{method:this.method,url:this.url,data:this._data,headers:this._header}},o.prototype.send=function(t){var e=n(t),r=this._header["content-type"];if(this._formData&&console.error(".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()"),e&&!this._data)Array.isArray(t)?this._data=[]:this._isHost(t)||(this._data={});else if(t&&this._data&&this._isHost(this._data))throw Error("Can't merge these send calls");if(e&&n(this._data))for(var o in t)this._data[o]=t[o];else"string"==typeof t?(r||this.type("form"),r=this._header["content-type"],this._data="application/x-www-form-urlencoded"==r?this._data?this._data+"&"+t:t:(this._data||"")+t):this._data=t;return!e||this._isHost(t)||r||this.type("json"),this},o.prototype.sortQuery=function(t){return this._sort=void 0===t||t,this},o.prototype._finalizeQueryString=function(){var t=this._query.join("&");if(t&&(this.url+=(this.url.indexOf("?")>=0?"&":"?")+t),this._query.length=0,this._sort){var e=this.url.indexOf("?");if(e>=0){var r=this.url.substring(e+1).split("&");"function"==typeof this._sort?r.sort(this._sort):r.sort(),this.url=this.url.substring(0,e)+"?"+r.join("&")}}},o.prototype._appendQueryString=function(){console.trace("Unsupported")},o.prototype._timeoutError=function(t,e,r){if(!this._aborted){var n=new Error(t+e+"ms exceeded");n.timeout=e,n.code="ECONNABORTED",n.errno=r,this.timedout=!0,this.abort(),this.callback(n)}},o.prototype._setTimeouts=function(){var t=this;this._timeout&&!this._timer&&(this._timer=setTimeout((function(){t._timeoutError("Timeout of ",t._timeout,"ETIME")}),this._timeout)),this._responseTimeout&&!this._responseTimeoutTimer&&(this._responseTimeoutTimer=setTimeout((function(){t._timeoutError("Response timeout of ",t._responseTimeout,"ETIMEDOUT")}),this._responseTimeout))}},function(t,e,r){"use strict";var n=r(55);function o(t){if(t)return function(t){for(var e in o.prototype)t[e]=o.prototype[e];return t}(t)}t.exports=o,o.prototype.get=function(t){return this.header[t.toLowerCase()]},o.prototype._setHeaderProperties=function(t){var e=t["content-type"]||"";this.type=n.type(e);var r=n.params(e);for(var o in r)this[o]=r[o];this.links={};try{t.link&&(this.links=n.parseLinks(t.link))}catch(t){}},o.prototype._setStatusProperties=function(t){var e=t/100|0;this.status=this.statusCode=t,this.statusType=e,this.info=1==e,this.ok=2==e,this.redirect=3==e,this.clientError=4==e,this.serverError=5==e,this.error=(4==e||5==e)&&this.toError(),this.created=201==t,this.accepted=202==t,this.noContent=204==t,this.badRequest=400==t,this.unauthorized=401==t,this.notAcceptable=406==t,this.forbidden=403==t,this.notFound=404==t,this.unprocessableEntity=422==t}},function(t,e,r){"use strict";e.type=function(t){return t.split(/ *; */).shift()},e.params=function(t){return t.split(/ *; */).reduce((function(t,e){var r=e.split(/ *= */),n=r.shift(),o=r.shift();return n&&o&&(t[n]=o),t}),{})},e.parseLinks=function(t){return t.split(/ *, */).reduce((function(t,e){var r=e.split(/ *; */),n=r[0].slice(1,-1);return t[r[1].split(/ *= */)[1].slice(1,-1)]=n,t}),{})},e.cleanHeader=function(t,e){return delete t["content-type"],delete t["content-length"],delete t["transfer-encoding"],delete t.host,e&&(delete t.authorization,delete t.cookie),t}},function(t,e){function r(){this._defaults=[]}["use","on","once","set","query","type","accept","auth","withCredentials","sortQuery","retry","ok","redirects","timeout","buffer","serialize","parse","ca","key","pfx","cert"].forEach((function(t){r.prototype[t]=function(){return this._defaults.push({fn:t,arguments:arguments}),this}})),r.prototype._setDefaults=function(t){this._defaults.forEach((function(e){t[e.fn].apply(t,e.arguments)}))},t.exports=r},function(t,e,r){"use strict";e.decode=e.parse=r(58),e.encode=e.stringify=r(59)},function(t,e,r){"use strict";function n(t,e){return Object.prototype.hasOwnProperty.call(t,e)}t.exports=function(t,e,r,i){e=e||"&",r=r||"=";var s={};if("string"!=typeof t||0===t.length)return s;var a=/\+/g;t=t.split(e);var u=1e3;i&&"number"==typeof i.maxKeys&&(u=i.maxKeys);var c=t.length;u>0&&c>u&&(c=u);for(var h=0;h<c;++h){var p,l,f,d,y=t[h].replace(a,"%20"),g=y.indexOf(r);g>=0?(p=y.substr(0,g),l=y.substr(g+1)):(p=y,l=""),f=decodeURIComponent(p),d=decodeURIComponent(l),n(s,f)?o(s[f])?s[f].push(d):s[f]=[s[f],d]:s[f]=d}return s};var o=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)}},function(t,e,r){"use strict";var n=function(t){switch(typeof t){case"string":return t;case"boolean":return t?"true":"false";case"number":return isFinite(t)?t:"";default:return""}};t.exports=function(t,e,r,a){return e=e||"&",r=r||"=",null===t&&(t=void 0),"object"==typeof t?i(s(t),(function(s){var a=encodeURIComponent(n(s))+r;return o(t[s])?i(t[s],(function(t){return a+encodeURIComponent(n(t))})).join(e):a+encodeURIComponent(n(t[s]))})).join(e):a?encodeURIComponent(n(a))+r+encodeURIComponent(n(t)):""};var o=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)};function i(t,e){if(t.map)return t.map(e);for(var r=[],n=0;n<t.length;n++)r.push(e(t[n],n));return r}var s=Object.keys||function(t){var e=[];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.push(r);return e}},function(t,e){
34
+ /*!
35
+ * Copyright 2019 SmugMug, Inc.
36
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
37
+ */
38
+ function r(t){var e,r=t.body;if(r&&"fail"===r.stat)throw(e=new Error(r.message)).stat=r.stat,e.code=r.code,e;return t.status>=200&&t.status<300}t.exports=function(t){t.query({format:"json"}),t.query({nojsoncallback:1}),t.type("text/plain"),t.ok(r)}},function(t,e){
39
+ /*!
40
+ * Copyright 2019 SmugMug, Inc.
41
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
42
+ */
43
+ function r(){throw new Error("OAuth 1.0 is not supported in the browser")}r.createPlugin=r,t.exports=r},function(t,e,r){
44
+ /*!
45
+ * Copyright 2019 SmugMug, Inc.
46
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
47
+ */
48
+ var n=r(7),o=r(34);function i(t){if(!(this instanceof i))return new i(t);this._args=Object.assign({format:"json",nojsoncallback:1},t)}i.prototype._=function(t,e){return n("GET","https://www.flickr.com/services/feeds/"+t+".gne").query(this._args).query(e)},i.prototype.publicPhotos=function(t){return this._("photos_public",t)},i.prototype.friendsPhotos=function(t){return o(t,"user_id"),this._("photos_friends",t)},i.prototype.favePhotos=function(t){return o(t,["id","nsid"]),this._("photos_faves",t)},i.prototype.groupDiscussions=function(t){return o(t,"id"),this._("groups_discuss",t)},i.prototype.groupPool=function(t){return o(t,"id"),this._("groups_pool",t)},i.prototype.forum=function(t){return this._("forums",t)},i.prototype.recentActivity=function(t){return o(t,"user_id"),this._("activity",t)},i.prototype.recentComments=function(t){return o(t,"user_id"),this._("photos_comments",t)},t.exports=i},function(t,e,r){(function(e){
49
+ /*!
50
+ * Copyright 2019 SmugMug, Inc.
51
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
52
+ */
53
+ var n=r(7).Request,o=r(36);function i(t,r,s){if(!(this instanceof i))return new i(t,r,s);if(n.call(this,"POST","https://up.flickr.com/services/upload"),"function"!=typeof t)throw new Error('Missing required argument "auth"');void 0===s&&(s={});let a=e.isBuffer(r)?"flickr-sdk.jpg":void 0;this.attach("photo",r,a),this.field(s),this.use(o),this.use(t)}i.prototype=Object.create(n.prototype),t.exports=i}).call(this,r(8).Buffer)},function(t,e,r){"use strict";e.byteLength=function(t){var e=c(t),r=e[0],n=e[1];return 3*(r+n)/4-n},e.toByteArray=function(t){var e,r,n=c(t),s=n[0],a=n[1],u=new i(function(t,e,r){return 3*(e+r)/4-r}(0,s,a)),h=0,p=a>0?s-4:s;for(r=0;r<p;r+=4)e=o[t.charCodeAt(r)]<<18|o[t.charCodeAt(r+1)]<<12|o[t.charCodeAt(r+2)]<<6|o[t.charCodeAt(r+3)],u[h++]=e>>16&255,u[h++]=e>>8&255,u[h++]=255&e;2===a&&(e=o[t.charCodeAt(r)]<<2|o[t.charCodeAt(r+1)]>>4,u[h++]=255&e);1===a&&(e=o[t.charCodeAt(r)]<<10|o[t.charCodeAt(r+1)]<<4|o[t.charCodeAt(r+2)]>>2,u[h++]=e>>8&255,u[h++]=255&e);return u},e.fromByteArray=function(t){for(var e,r=t.length,o=r%3,i=[],s=0,a=r-o;s<a;s+=16383)i.push(h(t,s,s+16383>a?a:s+16383));1===o?(e=t[r-1],i.push(n[e>>2]+n[e<<4&63]+"==")):2===o&&(e=(t[r-2]<<8)+t[r-1],i.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"="));return i.join("")};for(var n=[],o=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,u=s.length;a<u;++a)n[a]=s[a],o[s.charCodeAt(a)]=a;function c(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function h(t,e,r){for(var o,i,s=[],a=e;a<r;a+=3)o=(t[a]<<16&16711680)+(t[a+1]<<8&65280)+(255&t[a+2]),s.push(n[(i=o)>>18&63]+n[i>>12&63]+n[i>>6&63]+n[63&i]);return s.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},function(t,e){
54
+ /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
55
+ e.read=function(t,e,r,n,o){var i,s,a=8*o-n-1,u=(1<<a)-1,c=u>>1,h=-7,p=r?o-1:0,l=r?-1:1,f=t[e+p];for(p+=l,i=f&(1<<-h)-1,f>>=-h,h+=a;h>0;i=256*i+t[e+p],p+=l,h-=8);for(s=i&(1<<-h)-1,i>>=-h,h+=n;h>0;s=256*s+t[e+p],p+=l,h-=8);if(0===i)i=1-c;else{if(i===u)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,n),i-=c}return(f?-1:1)*s*Math.pow(2,i-n)},e.write=function(t,e,r,n,o,i){var s,a,u,c=8*i-o-1,h=(1<<c)-1,p=h>>1,l=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:i-1,d=n?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=h):(s=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-s))<1&&(s--,u*=2),(e+=s+p>=1?l/u:l*Math.pow(2,1-p))*u>=2&&(s++,u/=2),s+p>=h?(a=0,s=h):s+p>=1?(a=(e*u-1)*Math.pow(2,o),s+=p):(a=e*Math.pow(2,p-1)*Math.pow(2,o),s=0));o>=8;t[r+f]=255&a,f+=d,a/=256,o-=8);for(s=s<<o|a,c+=o;c>0;t[r+f]=255&s,f+=d,s/=256,c-=8);t[r+f-d]|=128*y}},function(t,e,r){(function(){"use strict";var t,n,o,i,s={}.hasOwnProperty;n=r(15),t=r(67),o=r(76),i=r(48),e.defaults=n.defaults,e.processors=i,e.ValidationError=function(t){function e(t){this.message=t}return function(t,e){for(var r in e)s.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(e,Error),e}(),e.Builder=t.Builder,e.Parser=o.Parser,e.parseString=o.parseString,e.parseStringPromise=o.parseStringPromise}).call(this)},function(t,e,r){(function(){"use strict";var t,n,o,i,s,a={}.hasOwnProperty;t=r(68),n=r(15).defaults,i=function(t){return"string"==typeof t&&(t.indexOf("&")>=0||t.indexOf(">")>=0||t.indexOf("<")>=0)},s=function(t){return"<![CDATA["+o(t)+"]]>"},o=function(t){return t.replace("]]>","]]]]><![CDATA[>")},e.Builder=function(){function e(t){var e,r,o;for(e in this.options={},r=n[.2])a.call(r,e)&&(o=r[e],this.options[e]=o);for(e in t)a.call(t,e)&&(o=t[e],this.options[e]=o)}return e.prototype.buildObject=function(e){var r,o,u,c,h,p;return r=this.options.attrkey,o=this.options.charkey,1===Object.keys(e).length&&this.options.rootName===n[.2].rootName?e=e[h=Object.keys(e)[0]]:h=this.options.rootName,p=this,u=function(t,e){var n,c,h,l,f,d;if("object"!=typeof e)p.options.cdata&&i(e)?t.raw(s(e)):t.txt(e);else if(Array.isArray(e)){for(l in e)if(a.call(e,l))for(f in c=e[l])h=c[f],t=u(t.ele(f),h).up()}else for(f in e)if(a.call(e,f))if(c=e[f],f===r){if("object"==typeof c)for(n in c)d=c[n],t=t.att(n,d)}else if(f===o)t=p.options.cdata&&i(c)?t.raw(s(c)):t.txt(c);else if(Array.isArray(c))for(l in c)a.call(c,l)&&(t="string"==typeof(h=c[l])?p.options.cdata&&i(h)?t.ele(f).raw(s(h)).up():t.ele(f,h).up():u(t.ele(f),h).up());else"object"==typeof c?t=u(t.ele(f),c).up():"string"==typeof c&&p.options.cdata&&i(c)?t=t.ele(f).raw(s(c)).up():(null==c&&(c=""),t=t.ele(f,c.toString()).up());return t},c=t.create(h,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars}),u(c,e).end(this.options.renderOpts)},e}()}).call(this)},function(t,e,r){(function(){var e,n,o,i,s,a,u,c,h,p;p=r(2),c=p.assign,h=p.isFunction,o=r(37),i=r(38),s=r(74),u=r(29),a=r(75),e=r(0),n=r(10),t.exports.create=function(t,e,r,n){var o,s;if(null==t)throw new Error("Root element needs a name.");return n=c({},e,r,n),s=(o=new i(n)).element(t),n.headless||(o.declaration(n),null==n.pubID&&null==n.sysID||o.dtd(n)),s},t.exports.begin=function(t,e,r){var n;return h(t)&&(e=(n=[t,e])[0],r=n[1],t={}),e?new s(t,e,r):new i(t)},t.exports.stringWriter=function(t){return new u(t)},t.exports.streamWriter=function(t,e){return new a(t,e)},t.exports.implementation=new o,t.exports.nodeType=e,t.exports.writerState=n}).call(this)},function(t,e,r){(function(){var e,n;e=r(70),n=r(71),t.exports=function(){function t(){this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new e,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=Object.create(this.defaultParams)}return Object.defineProperty(t.prototype,"parameterNames",{get:function(){return new n(Object.keys(this.defaultParams))}}),t.prototype.getParameter=function(t){return this.params.hasOwnProperty(t)?this.params[t]:null},t.prototype.canSetParameter=function(t,e){return!0},t.prototype.setParameter=function(t,e){return null!=e?this.params[t]=e:delete this.params[t]},t}()}).call(this)},function(t,e){(function(){t.exports=function(){function t(){}return t.prototype.handleError=function(t){throw new Error(t)},t}()}).call(this)},function(t,e){(function(){t.exports=function(){function t(t){this.arr=t||[]}return Object.defineProperty(t.prototype,"length",{get:function(){return this.arr.length}}),t.prototype.item=function(t){return this.arr[t]||null},t.prototype.contains=function(t){return-1!==this.arr.indexOf(t)},t}()}).call(this)},function(t,e){(function(){t.exports=function(){function t(t){this.nodes=t}return Object.defineProperty(t.prototype,"length",{get:function(){return this.nodes.length||0}}),t.prototype.clone=function(){return this.nodes=null},t.prototype.item=function(t){return this.nodes[t]||null},t}()}).call(this)},function(t,e){(function(){t.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(this)},function(t,e,r){(function(){var e,n,o,i,s,a,u,c,h,p,l,f,d,y,g,m,_,w,b,v,T,E,P,O={}.hasOwnProperty;P=r(2),T=P.isObject,v=P.isFunction,E=P.isPlainObject,b=P.getValue,e=r(0),f=r(38),d=r(16),i=r(18),s=r(19),g=r(26),w=r(27),y=r(28),p=r(20),l=r(21),a=r(22),c=r(23),u=r(24),h=r(25),o=r(39),_=r(41),m=r(29),n=r(10),t.exports=function(){function t(t,r,n){var o;this.name="?xml",this.type=e.Document,t||(t={}),o={},t.writer?E(t.writer)&&(o=t.writer,t.writer=new m):t.writer=new m,this.options=t,this.writer=t.writer,this.writerOptions=this.writer.filterOptions(o),this.stringify=new _(t),this.onDataCallback=r||function(){},this.onEndCallback=n||function(){},this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}return t.prototype.createChildNode=function(t){var r,n,o,i,s,a,u,c;switch(t.type){case e.CData:this.cdata(t.value);break;case e.Comment:this.comment(t.value);break;case e.Element:for(n in o={},u=t.attribs)O.call(u,n)&&(r=u[n],o[n]=r.value);this.node(t.name,o);break;case e.Dummy:this.dummy();break;case e.Raw:this.raw(t.value);break;case e.Text:this.text(t.value);break;case e.ProcessingInstruction:this.instruction(t.target,t.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+t.constructor.name)}for(s=0,a=(c=t.children).length;s<a;s++)i=c[s],this.createChildNode(i),i.type===e.Element&&this.up();return this},t.prototype.dummy=function(){return this},t.prototype.node=function(t,e,r){var n;if(null==t)throw new Error("Missing node name.");if(this.root&&-1===this.currentLevel)throw new Error("Document can only have one root node. "+this.debugInfo(t));return this.openCurrent(),t=b(t),null==e&&(e={}),e=b(e),T(e)||(r=(n=[e,r])[0],e=n[1]),this.currentNode=new d(this,t,e),this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,null!=r&&this.text(r),this},t.prototype.element=function(t,r,n){var o,i,s,a,u,c;if(this.currentNode&&this.currentNode.type===e.DocType)this.dtdElement.apply(this,arguments);else if(Array.isArray(t)||T(t)||v(t))for(a=this.options.noValidation,this.options.noValidation=!0,(c=new f(this.options).element("TEMP_ROOT")).element(t),this.options.noValidation=a,i=0,s=(u=c.children).length;i<s;i++)o=u[i],this.createChildNode(o),o.type===e.Element&&this.up();else this.node(t,r,n);return this},t.prototype.attribute=function(t,e){var r,n;if(!this.currentNode||this.currentNode.children)throw new Error("att() can only be used immediately after an ele() call in callback mode. "+this.debugInfo(t));if(null!=t&&(t=b(t)),T(t))for(r in t)O.call(t,r)&&(n=t[r],this.attribute(r,n));else v(e)&&(e=e.apply()),this.options.keepNullAttributes&&null==e?this.currentNode.attribs[t]=new o(this,t,""):null!=e&&(this.currentNode.attribs[t]=new o(this,t,e));return this},t.prototype.text=function(t){var e;return this.openCurrent(),e=new w(this,t),this.onData(this.writer.text(e,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.cdata=function(t){var e;return this.openCurrent(),e=new i(this,t),this.onData(this.writer.cdata(e,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.comment=function(t){var e;return this.openCurrent(),e=new s(this,t),this.onData(this.writer.comment(e,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.raw=function(t){var e;return this.openCurrent(),e=new g(this,t),this.onData(this.writer.raw(e,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.instruction=function(t,e){var r,n,o,i,s;if(this.openCurrent(),null!=t&&(t=b(t)),null!=e&&(e=b(e)),Array.isArray(t))for(r=0,i=t.length;r<i;r++)n=t[r],this.instruction(n);else if(T(t))for(n in t)O.call(t,n)&&(o=t[n],this.instruction(n,o));else v(e)&&(e=e.apply()),s=new y(this,t,e),this.onData(this.writer.processingInstruction(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this},t.prototype.declaration=function(t,e,r){var n;if(this.openCurrent(),this.documentStarted)throw new Error("declaration() must be the first node.");return n=new p(this,t,e,r),this.onData(this.writer.declaration(n,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.doctype=function(t,e,r){if(this.openCurrent(),null==t)throw new Error("Missing root node name.");if(this.root)throw new Error("dtd() must come before the root node.");return this.currentNode=new l(this,e,r),this.currentNode.rootNodeName=t,this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,this},t.prototype.dtdElement=function(t,e){var r;return this.openCurrent(),r=new u(this,t,e),this.onData(this.writer.dtdElement(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.attList=function(t,e,r,n,o){var i;return this.openCurrent(),i=new a(this,t,e,r,n,o),this.onData(this.writer.dtdAttList(i,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.entity=function(t,e){var r;return this.openCurrent(),r=new c(this,!1,t,e),this.onData(this.writer.dtdEntity(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.pEntity=function(t,e){var r;return this.openCurrent(),r=new c(this,!0,t,e),this.onData(this.writer.dtdEntity(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.notation=function(t,e){var r;return this.openCurrent(),r=new h(this,t,e),this.onData(this.writer.dtdNotation(r,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},t.prototype.up=function(){if(this.currentLevel<0)throw new Error("The document node has no parent.");return this.currentNode?(this.currentNode.children?this.closeNode(this.currentNode):this.openNode(this.currentNode),this.currentNode=null):this.closeNode(this.openTags[this.currentLevel]),delete this.openTags[this.currentLevel],this.currentLevel--,this},t.prototype.end=function(){for(;this.currentLevel>=0;)this.up();return this.onEnd()},t.prototype.openCurrent=function(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)},t.prototype.openNode=function(t){var r,o,i,s;if(!t.isOpen){if(this.root||0!==this.currentLevel||t.type!==e.Element||(this.root=t),o="",t.type===e.Element){for(i in this.writerOptions.state=n.OpenTag,o=this.writer.indent(t,this.writerOptions,this.currentLevel)+"<"+t.name,s=t.attribs)O.call(s,i)&&(r=s[i],o+=this.writer.attribute(r,this.writerOptions,this.currentLevel));o+=(t.children?">":"/>")+this.writer.endline(t,this.writerOptions,this.currentLevel),this.writerOptions.state=n.InsideTag}else this.writerOptions.state=n.OpenTag,o=this.writer.indent(t,this.writerOptions,this.currentLevel)+"<!DOCTYPE "+t.rootNodeName,t.pubID&&t.sysID?o+=' PUBLIC "'+t.pubID+'" "'+t.sysID+'"':t.sysID&&(o+=' SYSTEM "'+t.sysID+'"'),t.children?(o+=" [",this.writerOptions.state=n.InsideTag):(this.writerOptions.state=n.CloseTag,o+=">"),o+=this.writer.endline(t,this.writerOptions,this.currentLevel);return this.onData(o,this.currentLevel),t.isOpen=!0}},t.prototype.closeNode=function(t){var r;if(!t.isClosed)return r="",this.writerOptions.state=n.CloseTag,r=t.type===e.Element?this.writer.indent(t,this.writerOptions,this.currentLevel)+"</"+t.name+">"+this.writer.endline(t,this.writerOptions,this.currentLevel):this.writer.indent(t,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(t,this.writerOptions,this.currentLevel),this.writerOptions.state=n.None,this.onData(r,this.currentLevel),t.isClosed=!0},t.prototype.onData=function(t,e){return this.documentStarted=!0,this.onDataCallback(t,e+1)},t.prototype.onEnd=function(){return this.documentCompleted=!0,this.onEndCallback()},t.prototype.debugInfo=function(t){return null==t?"":"node: <"+t+">"},t.prototype.ele=function(){return this.element.apply(this,arguments)},t.prototype.nod=function(t,e,r){return this.node(t,e,r)},t.prototype.txt=function(t){return this.text(t)},t.prototype.dat=function(t){return this.cdata(t)},t.prototype.com=function(t){return this.comment(t)},t.prototype.ins=function(t,e){return this.instruction(t,e)},t.prototype.dec=function(t,e,r){return this.declaration(t,e,r)},t.prototype.dtd=function(t,e,r){return this.doctype(t,e,r)},t.prototype.e=function(t,e,r){return this.element(t,e,r)},t.prototype.n=function(t,e,r){return this.node(t,e,r)},t.prototype.t=function(t){return this.text(t)},t.prototype.d=function(t){return this.cdata(t)},t.prototype.c=function(t){return this.comment(t)},t.prototype.r=function(t){return this.raw(t)},t.prototype.i=function(t,e){return this.instruction(t,e)},t.prototype.att=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},t.prototype.a=function(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},t.prototype.ent=function(t,e){return this.entity(t,e)},t.prototype.pent=function(t,e){return this.pEntity(t,e)},t.prototype.not=function(t,e){return this.notation(t,e)},t}()}).call(this)},function(t,e,r){(function(){var e,n,o,i={}.hasOwnProperty;e=r(0),o=r(42),n=r(10),t.exports=function(t){function r(t,e){this.stream=t,r.__super__.constructor.call(this,e)}return function(t,e){for(var r in e)i.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(r,t),r.prototype.endline=function(t,e,o){return t.isLastRootNode&&e.state===n.CloseTag?"":r.__super__.endline.call(this,t,e,o)},r.prototype.document=function(t,e){var r,n,o,i,s,a,u,c,h;for(n=o=0,s=(u=t.children).length;o<s;n=++o)(r=u[n]).isLastRootNode=n===t.children.length-1;for(e=this.filterOptions(e),h=[],i=0,a=(c=t.children).length;i<a;i++)r=c[i],h.push(this.writeChildNode(r,e,0));return h},r.prototype.attribute=function(t,e,n){return this.stream.write(r.__super__.attribute.call(this,t,e,n))},r.prototype.cdata=function(t,e,n){return this.stream.write(r.__super__.cdata.call(this,t,e,n))},r.prototype.comment=function(t,e,n){return this.stream.write(r.__super__.comment.call(this,t,e,n))},r.prototype.declaration=function(t,e,n){return this.stream.write(r.__super__.declaration.call(this,t,e,n))},r.prototype.docType=function(t,e,r){var o,i,s,a;if(r||(r=0),this.openNode(t,e,r),e.state=n.OpenTag,this.stream.write(this.indent(t,e,r)),this.stream.write("<!DOCTYPE "+t.root().name),t.pubID&&t.sysID?this.stream.write(' PUBLIC "'+t.pubID+'" "'+t.sysID+'"'):t.sysID&&this.stream.write(' SYSTEM "'+t.sysID+'"'),t.children.length>0){for(this.stream.write(" ["),this.stream.write(this.endline(t,e,r)),e.state=n.InsideTag,i=0,s=(a=t.children).length;i<s;i++)o=a[i],this.writeChildNode(o,e,r+1);e.state=n.CloseTag,this.stream.write("]")}return e.state=n.CloseTag,this.stream.write(e.spaceBeforeSlash+">"),this.stream.write(this.endline(t,e,r)),e.state=n.None,this.closeNode(t,e,r)},r.prototype.element=function(t,r,o){var s,a,u,c,h,p,l,f,d;for(l in o||(o=0),this.openNode(t,r,o),r.state=n.OpenTag,this.stream.write(this.indent(t,r,o)+"<"+t.name),f=t.attribs)i.call(f,l)&&(s=f[l],this.attribute(s,r,o));if(c=0===(u=t.children.length)?null:t.children[0],0===u||t.children.every((function(t){return(t.type===e.Text||t.type===e.Raw)&&""===t.value})))r.allowEmpty?(this.stream.write(">"),r.state=n.CloseTag,this.stream.write("</"+t.name+">")):(r.state=n.CloseTag,this.stream.write(r.spaceBeforeSlash+"/>"));else if(!r.pretty||1!==u||c.type!==e.Text&&c.type!==e.Raw||null==c.value){for(this.stream.write(">"+this.endline(t,r,o)),r.state=n.InsideTag,h=0,p=(d=t.children).length;h<p;h++)a=d[h],this.writeChildNode(a,r,o+1);r.state=n.CloseTag,this.stream.write(this.indent(t,r,o)+"</"+t.name+">")}else this.stream.write(">"),r.state=n.InsideTag,r.suppressPrettyCount++,!0,this.writeChildNode(c,r,o+1),r.suppressPrettyCount--,!1,r.state=n.CloseTag,this.stream.write("</"+t.name+">");return this.stream.write(this.endline(t,r,o)),r.state=n.None,this.closeNode(t,r,o)},r.prototype.processingInstruction=function(t,e,n){return this.stream.write(r.__super__.processingInstruction.call(this,t,e,n))},r.prototype.raw=function(t,e,n){return this.stream.write(r.__super__.raw.call(this,t,e,n))},r.prototype.text=function(t,e,n){return this.stream.write(r.__super__.text.call(this,t,e,n))},r.prototype.dtdAttList=function(t,e,n){return this.stream.write(r.__super__.dtdAttList.call(this,t,e,n))},r.prototype.dtdElement=function(t,e,n){return this.stream.write(r.__super__.dtdElement.call(this,t,e,n))},r.prototype.dtdEntity=function(t,e,n){return this.stream.write(r.__super__.dtdEntity.call(this,t,e,n))},r.prototype.dtdNotation=function(t,e,n){return this.stream.write(r.__super__.dtdNotation.call(this,t,e,n))},r}(o)}).call(this)},function(t,e,r){(function(){"use strict";var t,n,o,i,s,a,u,c,h=function(t,e){return function(){return t.apply(e,arguments)}},p={}.hasOwnProperty;u=r(77),o=r(11),t=r(89),a=r(48),c=r(46).setImmediate,n=r(15).defaults,i=function(t){return"object"==typeof t&&null!=t&&0===Object.keys(t).length},s=function(t,e,r){var n,o;for(n=0,o=t.length;n<o;n++)e=(0,t[n])(e,r);return e},e.Parser=function(r){function o(t){var r,o,i;if(this.parseStringPromise=h(this.parseStringPromise,this),this.parseString=h(this.parseString,this),this.reset=h(this.reset,this),this.assignOrPush=h(this.assignOrPush,this),this.processAsync=h(this.processAsync,this),!(this instanceof e.Parser))return new e.Parser(t);for(r in this.options={},o=n[.2])p.call(o,r)&&(i=o[r],this.options[r]=i);for(r in t)p.call(t,r)&&(i=t[r],this.options[r]=i);this.options.xmlns&&(this.options.xmlnskey=this.options.attrkey+"ns"),this.options.normalizeTags&&(this.options.tagNameProcessors||(this.options.tagNameProcessors=[]),this.options.tagNameProcessors.unshift(a.normalize)),this.reset()}return function(t,e){for(var r in e)p.call(e,r)&&(t[r]=e[r]);function n(){this.constructor=t}n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype}(o,r),o.prototype.processAsync=function(){var t,e;try{return this.remaining.length<=this.options.chunkSize?(t=this.remaining,this.remaining="",this.saxParser=this.saxParser.write(t),this.saxParser.close()):(t=this.remaining.substr(0,this.options.chunkSize),this.remaining=this.remaining.substr(this.options.chunkSize,this.remaining.length),this.saxParser=this.saxParser.write(t),c(this.processAsync))}catch(t){if(e=t,!this.saxParser.errThrown)return this.saxParser.errThrown=!0,this.emit(e)}},o.prototype.assignOrPush=function(t,e,r){return e in t?(t[e]instanceof Array||(t[e]=[t[e]]),t[e].push(r)):this.options.explicitArray?t[e]=[r]:t[e]=r},o.prototype.reset=function(){var t,e,r,n,o;return this.removeAllListeners(),this.saxParser=u.parser(this.options.strict,{trim:!1,normalize:!1,xmlns:this.options.xmlns}),this.saxParser.errThrown=!1,this.saxParser.onerror=(o=this,function(t){if(o.saxParser.resume(),!o.saxParser.errThrown)return o.saxParser.errThrown=!0,o.emit("error",t)}),this.saxParser.onend=function(t){return function(){if(!t.saxParser.ended)return t.saxParser.ended=!0,t.emit("end",t.resultObject)}}(this),this.saxParser.ended=!1,this.EXPLICIT_CHARKEY=this.options.explicitCharkey,this.resultObject=null,n=[],t=this.options.attrkey,e=this.options.charkey,this.saxParser.onopentag=function(r){return function(o){var i,a,u,c,h;if((u={})[e]="",!r.options.ignoreAttrs)for(i in h=o.attributes)p.call(h,i)&&(t in u||r.options.mergeAttrs||(u[t]={}),a=r.options.attrValueProcessors?s(r.options.attrValueProcessors,o.attributes[i],i):o.attributes[i],c=r.options.attrNameProcessors?s(r.options.attrNameProcessors,i):i,r.options.mergeAttrs?r.assignOrPush(u,c,a):u[t][c]=a);return u["#name"]=r.options.tagNameProcessors?s(r.options.tagNameProcessors,o.name):o.name,r.options.xmlns&&(u[r.options.xmlnskey]={uri:o.uri,local:o.local}),n.push(u)}}(this),this.saxParser.onclosetag=function(t){return function(){var r,o,a,u,c,h,l,f,d,y;if(h=n.pop(),c=h["#name"],t.options.explicitChildren&&t.options.preserveChildrenOrder||delete h["#name"],!0===h.cdata&&(r=h.cdata,delete h.cdata),d=n[n.length-1],h[e].match(/^\s*$/)&&!r?(o=h[e],delete h[e]):(t.options.trim&&(h[e]=h[e].trim()),t.options.normalize&&(h[e]=h[e].replace(/\s{2,}/g," ").trim()),h[e]=t.options.valueProcessors?s(t.options.valueProcessors,h[e],c):h[e],1===Object.keys(h).length&&e in h&&!t.EXPLICIT_CHARKEY&&(h=h[e])),i(h)&&(h=""!==t.options.emptyTag?t.options.emptyTag:o),null!=t.options.validator&&(y="/"+function(){var t,e,r;for(r=[],t=0,e=n.length;t<e;t++)u=n[t],r.push(u["#name"]);return r}().concat(c).join("/"),function(){var e;try{h=t.options.validator(y,d&&d[c],h)}catch(r){return e=r,t.emit("error",e)}}()),t.options.explicitChildren&&!t.options.mergeAttrs&&"object"==typeof h)if(t.options.preserveChildrenOrder){if(d){for(a in d[t.options.childkey]=d[t.options.childkey]||[],l={},h)p.call(h,a)&&(l[a]=h[a]);d[t.options.childkey].push(l),delete h["#name"],1===Object.keys(h).length&&e in h&&!t.EXPLICIT_CHARKEY&&(h=h[e])}}else u={},t.options.attrkey in h&&(u[t.options.attrkey]=h[t.options.attrkey],delete h[t.options.attrkey]),!t.options.charsAsChildren&&t.options.charkey in h&&(u[t.options.charkey]=h[t.options.charkey],delete h[t.options.charkey]),Object.getOwnPropertyNames(h).length>0&&(u[t.options.childkey]=h),h=u;return n.length>0?t.assignOrPush(d,c,h):(t.options.explicitRoot&&(f=h,(h={})[c]=f),t.resultObject=h,t.saxParser.ended=!0,t.emit("end",t.resultObject))}}(this),r=function(t){return function(r){var o,i;if(i=n[n.length-1])return i[e]+=r,t.options.explicitChildren&&t.options.preserveChildrenOrder&&t.options.charsAsChildren&&(t.options.includeWhiteChars||""!==r.replace(/\\n/g,"").trim())&&(i[t.options.childkey]=i[t.options.childkey]||[],(o={"#name":"__text__"})[e]=r,t.options.normalize&&(o[e]=o[e].replace(/\s{2,}/g," ").trim()),i[t.options.childkey].push(o)),i}}(this),this.saxParser.ontext=r,this.saxParser.oncdata=function(t){var e;if(e=r(t))return e.cdata=!0}},o.prototype.parseString=function(e,r){var n;null!=r&&"function"==typeof r&&(this.on("end",(function(t){return this.reset(),r(null,t)})),this.on("error",(function(t){return this.reset(),r(t)})));try{return""===(e=e.toString()).trim()?(this.emit("end",null),!0):(e=t.stripBOM(e),this.options.async?(this.remaining=e,c(this.processAsync),this.saxParser):this.saxParser.write(e).close())}catch(t){if(n=t,!this.saxParser.errThrown&&!this.saxParser.ended)return this.emit("error",n),this.saxParser.errThrown=!0;if(this.saxParser.ended)throw n}},o.prototype.parseStringPromise=function(t){return new Promise((e=this,function(r,n){return e.parseString(t,(function(t,e){return t?n(t):r(e)}))}));var e},o}(o),e.parseString=function(t,r,n){var o,i;return null!=n?("function"==typeof n&&(o=n),"object"==typeof r&&(i=r)):("function"==typeof r&&(o=r),i={}),new e.Parser(i).parseString(t,o)},e.parseStringPromise=function(t,r){var n;return"object"==typeof r&&(n=r),new e.Parser(n).parseStringPromise(t)}}).call(this)},function(t,e,r){(function(t){!function(e){e.parser=function(t,e){return new i(t,e)},e.SAXParser=i,e.SAXStream=a,e.createStream=function(t,e){return new a(t,e)},e.MAX_BUFFER_LENGTH=65536;var n,o=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];function i(t,r){if(!(this instanceof i))return new i(t,r);!function(t){for(var e=0,r=o.length;e<r;e++)t[o[e]]=""}(this),this.q=this.c="",this.bufferCheckPosition=e.MAX_BUFFER_LENGTH,this.opt=r||{},this.opt.lowercase=this.opt.lowercase||this.opt.lowercasetags,this.looseCase=this.opt.lowercase?"toLowerCase":"toUpperCase",this.tags=[],this.closed=this.closedRoot=this.sawRoot=!1,this.tag=this.error=null,this.strict=!!t,this.noscript=!(!t&&!this.opt.noscript),this.state=T.BEGIN,this.strictEntities=this.opt.strictEntities,this.ENTITIES=this.strictEntities?Object.create(e.XML_ENTITIES):Object.create(e.ENTITIES),this.attribList=[],this.opt.xmlns&&(this.ns=Object.create(c)),this.trackPosition=!1!==this.opt.position,this.trackPosition&&(this.position=this.line=this.column=0),P(this,"onready")}e.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"],Object.create||(Object.create=function(t){function e(){}return e.prototype=t,new e}),Object.keys||(Object.keys=function(t){var e=[];for(var r in t)t.hasOwnProperty(r)&&e.push(r);return e}),i.prototype={end:function(){k(this)},write:function(t){if(this.error)throw this.error;if(this.closed)return S(this,"Cannot write after close. Assign an onready handler.");if(null===t)return k(this);"object"==typeof t&&(t=t.toString());var r=0,n="";for(;n=F(t,r++),this.c=n,n;)switch(this.trackPosition&&(this.position++,"\n"===n?(this.line++,this.column=0):this.column++),this.state){case T.BEGIN:if(this.state=T.BEGIN_WHITESPACE,"\ufeff"===n)continue;j(this,n);continue;case T.BEGIN_WHITESPACE:j(this,n);continue;case T.TEXT:if(this.sawRoot&&!this.closedRoot){for(var i=r-1;n&&"<"!==n&&"&"!==n;)(n=F(t,r++))&&this.trackPosition&&(this.position++,"\n"===n?(this.line++,this.column=0):this.column++);this.textNode+=t.substring(i,r-1)}"<"!==n||this.sawRoot&&this.closedRoot&&!this.strict?(d(n)||this.sawRoot&&!this.closedRoot||x(this,"Text data outside of root node."),"&"===n?this.state=T.TEXT_ENTITY:this.textNode+=n):(this.state=T.OPEN_WAKA,this.startTagPosition=this.position);continue;case T.SCRIPT:"<"===n?this.state=T.SCRIPT_ENDING:this.script+=n;continue;case T.SCRIPT_ENDING:"/"===n?this.state=T.CLOSE_TAG:(this.script+="<"+n,this.state=T.SCRIPT);continue;case T.OPEN_WAKA:if("!"===n)this.state=T.SGML_DECL,this.sgmlDecl="";else if(d(n));else if(m(h,n))this.state=T.OPEN_TAG,this.tagName=n;else if("/"===n)this.state=T.CLOSE_TAG,this.tagName="";else if("?"===n)this.state=T.PROC_INST,this.procInstName=this.procInstBody="";else{if(x(this,"Unencoded <"),this.startTagPosition+1<this.position){var s=this.position-this.startTagPosition;n=new Array(s).join(" ")+n}this.textNode+="<"+n,this.state=T.TEXT}continue;case T.SGML_DECL:"[CDATA["===(this.sgmlDecl+n).toUpperCase()?(O(this,"onopencdata"),this.state=T.CDATA,this.sgmlDecl="",this.cdata=""):this.sgmlDecl+n==="--"?(this.state=T.COMMENT,this.comment="",this.sgmlDecl=""):"DOCTYPE"===(this.sgmlDecl+n).toUpperCase()?(this.state=T.DOCTYPE,(this.doctype||this.sawRoot)&&x(this,"Inappropriately located doctype declaration"),this.doctype="",this.sgmlDecl=""):">"===n?(O(this,"onsgmldeclaration",this.sgmlDecl),this.sgmlDecl="",this.state=T.TEXT):y(n)?(this.state=T.SGML_DECL_QUOTED,this.sgmlDecl+=n):this.sgmlDecl+=n;continue;case T.SGML_DECL_QUOTED:n===this.q&&(this.state=T.SGML_DECL,this.q=""),this.sgmlDecl+=n;continue;case T.DOCTYPE:">"===n?(this.state=T.TEXT,O(this,"ondoctype",this.doctype),this.doctype=!0):(this.doctype+=n,"["===n?this.state=T.DOCTYPE_DTD:y(n)&&(this.state=T.DOCTYPE_QUOTED,this.q=n));continue;case T.DOCTYPE_QUOTED:this.doctype+=n,n===this.q&&(this.q="",this.state=T.DOCTYPE);continue;case T.DOCTYPE_DTD:this.doctype+=n,"]"===n?this.state=T.DOCTYPE:y(n)&&(this.state=T.DOCTYPE_DTD_QUOTED,this.q=n);continue;case T.DOCTYPE_DTD_QUOTED:this.doctype+=n,n===this.q&&(this.state=T.DOCTYPE_DTD,this.q="");continue;case T.COMMENT:"-"===n?this.state=T.COMMENT_ENDING:this.comment+=n;continue;case T.COMMENT_ENDING:"-"===n?(this.state=T.COMMENT_ENDED,this.comment=D(this.opt,this.comment),this.comment&&O(this,"oncomment",this.comment),this.comment=""):(this.comment+="-"+n,this.state=T.COMMENT);continue;case T.COMMENT_ENDED:">"!==n?(x(this,"Malformed comment"),this.comment+="--"+n,this.state=T.COMMENT):this.state=T.TEXT;continue;case T.CDATA:"]"===n?this.state=T.CDATA_ENDING:this.cdata+=n;continue;case T.CDATA_ENDING:"]"===n?this.state=T.CDATA_ENDING_2:(this.cdata+="]"+n,this.state=T.CDATA);continue;case T.CDATA_ENDING_2:">"===n?(this.cdata&&O(this,"oncdata",this.cdata),O(this,"onclosecdata"),this.cdata="",this.state=T.TEXT):"]"===n?this.cdata+="]":(this.cdata+="]]"+n,this.state=T.CDATA);continue;case T.PROC_INST:"?"===n?this.state=T.PROC_INST_ENDING:d(n)?this.state=T.PROC_INST_BODY:this.procInstName+=n;continue;case T.PROC_INST_BODY:if(!this.procInstBody&&d(n))continue;"?"===n?this.state=T.PROC_INST_ENDING:this.procInstBody+=n;continue;case T.PROC_INST_ENDING:">"===n?(O(this,"onprocessinginstruction",{name:this.procInstName,body:this.procInstBody}),this.procInstName=this.procInstBody="",this.state=T.TEXT):(this.procInstBody+="?"+n,this.state=T.PROC_INST_BODY);continue;case T.OPEN_TAG:m(p,n)?this.tagName+=n:(C(this),">"===n?R(this):"/"===n?this.state=T.OPEN_TAG_SLASH:(d(n)||x(this,"Invalid character in tag name"),this.state=T.ATTRIB));continue;case T.OPEN_TAG_SLASH:">"===n?(R(this,!0),L(this)):(x(this,"Forward-slash in opening tag not followed by >"),this.state=T.ATTRIB);continue;case T.ATTRIB:if(d(n))continue;">"===n?R(this):"/"===n?this.state=T.OPEN_TAG_SLASH:m(h,n)?(this.attribName=n,this.attribValue="",this.state=T.ATTRIB_NAME):x(this,"Invalid attribute name");continue;case T.ATTRIB_NAME:"="===n?this.state=T.ATTRIB_VALUE:">"===n?(x(this,"Attribute without value"),this.attribValue=this.attribName,A(this),R(this)):d(n)?this.state=T.ATTRIB_NAME_SAW_WHITE:m(p,n)?this.attribName+=n:x(this,"Invalid attribute name");continue;case T.ATTRIB_NAME_SAW_WHITE:if("="===n)this.state=T.ATTRIB_VALUE;else{if(d(n))continue;x(this,"Attribute without value"),this.tag.attributes[this.attribName]="",this.attribValue="",O(this,"onattribute",{name:this.attribName,value:""}),this.attribName="",">"===n?R(this):m(h,n)?(this.attribName=n,this.state=T.ATTRIB_NAME):(x(this,"Invalid attribute name"),this.state=T.ATTRIB)}continue;case T.ATTRIB_VALUE:if(d(n))continue;y(n)?(this.q=n,this.state=T.ATTRIB_VALUE_QUOTED):(x(this,"Unquoted attribute value"),this.state=T.ATTRIB_VALUE_UNQUOTED,this.attribValue=n);continue;case T.ATTRIB_VALUE_QUOTED:if(n!==this.q){"&"===n?this.state=T.ATTRIB_VALUE_ENTITY_Q:this.attribValue+=n;continue}A(this),this.q="",this.state=T.ATTRIB_VALUE_CLOSED;continue;case T.ATTRIB_VALUE_CLOSED:d(n)?this.state=T.ATTRIB:">"===n?R(this):"/"===n?this.state=T.OPEN_TAG_SLASH:m(h,n)?(x(this,"No whitespace between attributes"),this.attribName=n,this.attribValue="",this.state=T.ATTRIB_NAME):x(this,"Invalid attribute name");continue;case T.ATTRIB_VALUE_UNQUOTED:if(!g(n)){"&"===n?this.state=T.ATTRIB_VALUE_ENTITY_U:this.attribValue+=n;continue}A(this),">"===n?R(this):this.state=T.ATTRIB;continue;case T.CLOSE_TAG:if(this.tagName)">"===n?L(this):m(p,n)?this.tagName+=n:this.script?(this.script+="</"+this.tagName,this.tagName="",this.state=T.SCRIPT):(d(n)||x(this,"Invalid tagname in closing tag"),this.state=T.CLOSE_TAG_SAW_WHITE);else{if(d(n))continue;_(h,n)?this.script?(this.script+="</"+n,this.state=T.SCRIPT):x(this,"Invalid tagname in closing tag."):this.tagName=n}continue;case T.CLOSE_TAG_SAW_WHITE:if(d(n))continue;">"===n?L(this):x(this,"Invalid characters in closing tag");continue;case T.TEXT_ENTITY:case T.ATTRIB_VALUE_ENTITY_Q:case T.ATTRIB_VALUE_ENTITY_U:var a,u;switch(this.state){case T.TEXT_ENTITY:a=T.TEXT,u="textNode";break;case T.ATTRIB_VALUE_ENTITY_Q:a=T.ATTRIB_VALUE_QUOTED,u="attribValue";break;case T.ATTRIB_VALUE_ENTITY_U:a=T.ATTRIB_VALUE_UNQUOTED,u="attribValue"}";"===n?(this[u]+=M(this),this.entity="",this.state=a):m(this.entity.length?f:l,n)?this.entity+=n:(x(this,"Invalid character in entity name"),this[u]+="&"+this.entity+n,this.entity="",this.state=a);continue;default:throw new Error(this,"Unknown state: "+this.state)}this.position>=this.bufferCheckPosition&&function(t){for(var r=Math.max(e.MAX_BUFFER_LENGTH,10),n=0,i=0,s=o.length;i<s;i++){var a=t[o[i]].length;if(a>r)switch(o[i]){case"textNode":I(t);break;case"cdata":O(t,"oncdata",t.cdata),t.cdata="";break;case"script":O(t,"onscript",t.script),t.script="";break;default:S(t,"Max buffer length exceeded: "+o[i])}n=Math.max(n,a)}var u=e.MAX_BUFFER_LENGTH-n;t.bufferCheckPosition=u+t.position}(this);return this}
56
+ /*! http://mths.be/fromcodepoint v0.1.0 by @mathias */,resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){var t;I(t=this),""!==t.cdata&&(O(t,"oncdata",t.cdata),t.cdata=""),""!==t.script&&(O(t,"onscript",t.script),t.script="")}};try{n=r(78).Stream}catch(t){n=function(){}}var s=e.EVENTS.filter((function(t){return"error"!==t&&"end"!==t}));function a(t,e){if(!(this instanceof a))return new a(t,e);n.apply(this),this._parser=new i(t,e),this.writable=!0,this.readable=!0;var r=this;this._parser.onend=function(){r.emit("end")},this._parser.onerror=function(t){r.emit("error",t),r._parser.error=null},this._decoder=null,s.forEach((function(t){Object.defineProperty(r,"on"+t,{get:function(){return r._parser["on"+t]},set:function(e){if(!e)return r.removeAllListeners(t),r._parser["on"+t]=e,e;r.on(t,e)},enumerable:!0,configurable:!1})}))}a.prototype=Object.create(n.prototype,{constructor:{value:a}}),a.prototype.write=function(e){if("function"==typeof t&&"function"==typeof t.isBuffer&&t.isBuffer(e)){if(!this._decoder){var n=r(32).StringDecoder;this._decoder=new n("utf8")}e=this._decoder.write(e)}return this._parser.write(e.toString()),this.emit("data",e),!0},a.prototype.end=function(t){return t&&t.length&&this.write(t),this._parser.end(),!0},a.prototype.on=function(t,e){var r=this;return r._parser["on"+t]||-1===s.indexOf(t)||(r._parser["on"+t]=function(){var e=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);e.splice(0,0,t),r.emit.apply(r,e)}),n.prototype.on.call(r,t,e)};var u="http://www.w3.org/XML/1998/namespace",c={xml:u,xmlns:"http://www.w3.org/2000/xmlns/"},h=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,p=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,l=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,f=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function d(t){return" "===t||"\n"===t||"\r"===t||"\t"===t}function y(t){return'"'===t||"'"===t}function g(t){return">"===t||d(t)}function m(t,e){return t.test(e)}function _(t,e){return!m(t,e)}var w,b,v,T=0;for(var E in e.STATE={BEGIN:T++,BEGIN_WHITESPACE:T++,TEXT:T++,TEXT_ENTITY:T++,OPEN_WAKA:T++,SGML_DECL:T++,SGML_DECL_QUOTED:T++,DOCTYPE:T++,DOCTYPE_QUOTED:T++,DOCTYPE_DTD:T++,DOCTYPE_DTD_QUOTED:T++,COMMENT_STARTING:T++,COMMENT:T++,COMMENT_ENDING:T++,COMMENT_ENDED:T++,CDATA:T++,CDATA_ENDING:T++,CDATA_ENDING_2:T++,PROC_INST:T++,PROC_INST_BODY:T++,PROC_INST_ENDING:T++,OPEN_TAG:T++,OPEN_TAG_SLASH:T++,ATTRIB:T++,ATTRIB_NAME:T++,ATTRIB_NAME_SAW_WHITE:T++,ATTRIB_VALUE:T++,ATTRIB_VALUE_QUOTED:T++,ATTRIB_VALUE_CLOSED:T++,ATTRIB_VALUE_UNQUOTED:T++,ATTRIB_VALUE_ENTITY_Q:T++,ATTRIB_VALUE_ENTITY_U:T++,CLOSE_TAG:T++,CLOSE_TAG_SAW_WHITE:T++,SCRIPT:T++,SCRIPT_ENDING:T++},e.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},e.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(e.ENTITIES).forEach((function(t){var r=e.ENTITIES[t],n="number"==typeof r?String.fromCharCode(r):r;e.ENTITIES[t]=n})),e.STATE)e.STATE[e.STATE[E]]=E;function P(t,e,r){t[e]&&t[e](r)}function O(t,e,r){t.textNode&&I(t),P(t,e,r)}function I(t){t.textNode=D(t.opt,t.textNode),t.textNode&&P(t,"ontext",t.textNode),t.textNode=""}function D(t,e){return t.trim&&(e=e.trim()),t.normalize&&(e=e.replace(/\s+/g," ")),e}function S(t,e){return I(t),t.trackPosition&&(e+="\nLine: "+t.line+"\nColumn: "+t.column+"\nChar: "+t.c),e=new Error(e),t.error=e,P(t,"onerror",e),t}function k(t){return t.sawRoot&&!t.closedRoot&&x(t,"Unclosed root tag"),t.state!==T.BEGIN&&t.state!==T.BEGIN_WHITESPACE&&t.state!==T.TEXT&&S(t,"Unexpected end"),I(t),t.c="",t.closed=!0,P(t,"onend"),i.call(t,t.strict,t.opt),t}function x(t,e){if("object"!=typeof t||!(t instanceof i))throw new Error("bad call to strictFail");t.strict&&S(t,e)}function C(t){t.strict||(t.tagName=t.tagName[t.looseCase]());var e=t.tags[t.tags.length-1]||t,r=t.tag={name:t.tagName,attributes:{}};t.opt.xmlns&&(r.ns=e.ns),t.attribList.length=0,O(t,"onopentagstart",r)}function N(t,e){var r=t.indexOf(":")<0?["",t]:t.split(":"),n=r[0],o=r[1];return e&&"xmlns"===t&&(n="xmlns",o=""),{prefix:n,local:o}}function A(t){if(t.strict||(t.attribName=t.attribName[t.looseCase]()),-1!==t.attribList.indexOf(t.attribName)||t.tag.attributes.hasOwnProperty(t.attribName))t.attribName=t.attribValue="";else{if(t.opt.xmlns){var e=N(t.attribName,!0),r=e.prefix,n=e.local;if("xmlns"===r)if("xml"===n&&t.attribValue!==u)x(t,"xml: prefix must be bound to "+u+"\nActual: "+t.attribValue);else if("xmlns"===n&&"http://www.w3.org/2000/xmlns/"!==t.attribValue)x(t,"xmlns: prefix must be bound to http://www.w3.org/2000/xmlns/\nActual: "+t.attribValue);else{var o=t.tag,i=t.tags[t.tags.length-1]||t;o.ns===i.ns&&(o.ns=Object.create(i.ns)),o.ns[n]=t.attribValue}t.attribList.push([t.attribName,t.attribValue])}else t.tag.attributes[t.attribName]=t.attribValue,O(t,"onattribute",{name:t.attribName,value:t.attribValue});t.attribName=t.attribValue=""}}function R(t,e){if(t.opt.xmlns){var r=t.tag,n=N(t.tagName);r.prefix=n.prefix,r.local=n.local,r.uri=r.ns[n.prefix]||"",r.prefix&&!r.uri&&(x(t,"Unbound namespace prefix: "+JSON.stringify(t.tagName)),r.uri=n.prefix);var o=t.tags[t.tags.length-1]||t;r.ns&&o.ns!==r.ns&&Object.keys(r.ns).forEach((function(e){O(t,"onopennamespace",{prefix:e,uri:r.ns[e]})}));for(var i=0,s=t.attribList.length;i<s;i++){var a=t.attribList[i],u=a[0],c=a[1],h=N(u,!0),p=h.prefix,l=h.local,f=""===p?"":r.ns[p]||"",d={name:u,value:c,prefix:p,local:l,uri:f};p&&"xmlns"!==p&&!f&&(x(t,"Unbound namespace prefix: "+JSON.stringify(p)),d.uri=p),t.tag.attributes[u]=d,O(t,"onattribute",d)}t.attribList.length=0}t.tag.isSelfClosing=!!e,t.sawRoot=!0,t.tags.push(t.tag),O(t,"onopentag",t.tag),e||(t.noscript||"script"!==t.tagName.toLowerCase()?t.state=T.TEXT:t.state=T.SCRIPT,t.tag=null,t.tagName=""),t.attribName=t.attribValue="",t.attribList.length=0}function L(t){if(!t.tagName)return x(t,"Weird empty close tag."),t.textNode+="</>",void(t.state=T.TEXT);if(t.script){if("script"!==t.tagName)return t.script+="</"+t.tagName+">",t.tagName="",void(t.state=T.SCRIPT);O(t,"onscript",t.script),t.script=""}var e=t.tags.length,r=t.tagName;t.strict||(r=r[t.looseCase]());for(var n=r;e--;){if(t.tags[e].name===n)break;x(t,"Unexpected close tag")}if(e<0)return x(t,"Unmatched closing tag: "+t.tagName),t.textNode+="</"+t.tagName+">",void(t.state=T.TEXT);t.tagName=r;for(var o=t.tags.length;o-- >e;){var i=t.tag=t.tags.pop();t.tagName=t.tag.name,O(t,"onclosetag",t.tagName);var s={};for(var a in i.ns)s[a]=i.ns[a];var u=t.tags[t.tags.length-1]||t;t.opt.xmlns&&i.ns!==u.ns&&Object.keys(i.ns).forEach((function(e){var r=i.ns[e];O(t,"onclosenamespace",{prefix:e,uri:r})}))}0===e&&(t.closedRoot=!0),t.tagName=t.attribValue=t.attribName="",t.attribList.length=0,t.state=T.TEXT}function M(t){var e,r=t.entity,n=r.toLowerCase(),o="";return t.ENTITIES[r]?t.ENTITIES[r]:t.ENTITIES[n]?t.ENTITIES[n]:("#"===(r=n).charAt(0)&&("x"===r.charAt(1)?(r=r.slice(2),o=(e=parseInt(r,16)).toString(16)):(r=r.slice(1),o=(e=parseInt(r,10)).toString(10))),r=r.replace(/^0+/,""),isNaN(e)||o.toLowerCase()!==r?(x(t,"Invalid character entity"),"&"+t.entity+";"):String.fromCodePoint(e))}function j(t,e){"<"===e?(t.state=T.OPEN_WAKA,t.startTagPosition=t.position):d(e)||(x(t,"Non-whitespace before first tag."),t.textNode=e,t.state=T.TEXT)}function F(t,e){var r="";return e<t.length&&(r=t.charAt(e)),r}T=e.STATE,String.fromCodePoint||(w=String.fromCharCode,b=Math.floor,v=function(){var t,e,r=16384,n=[],o=-1,i=arguments.length;if(!i)return"";for(var s="";++o<i;){var a=Number(arguments[o]);if(!isFinite(a)||a<0||a>1114111||b(a)!==a)throw RangeError("Invalid code point: "+a);a<=65535?n.push(a):(t=55296+((a-=65536)>>10),e=a%1024+56320,n.push(t,e)),(o+1===i||n.length>r)&&(s+=w.apply(null,n),n.length=0)}return s},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:v,configurable:!0,writable:!0}):String.fromCodePoint=v)}(e)}).call(this,r(8).Buffer)},function(t,e,r){t.exports=o;var n=r(11).EventEmitter;function o(){n.call(this)}r(5)(o,n),o.Readable=r(30),o.Writable=r(85),o.Duplex=r(86),o.Transform=r(87),o.PassThrough=r(88),o.Stream=o,o.prototype.pipe=function(t,e){var r=this;function o(e){t.writable&&!1===t.write(e)&&r.pause&&r.pause()}function i(){r.readable&&r.resume&&r.resume()}r.on("data",o),t.on("drain",i),t._isStdio||e&&!1===e.end||(r.on("end",a),r.on("close",u));var s=!1;function a(){s||(s=!0,t.end())}function u(){s||(s=!0,"function"==typeof t.destroy&&t.destroy())}function c(t){if(h(),0===n.listenerCount(this,"error"))throw t}function h(){r.removeListener("data",o),t.removeListener("drain",i),r.removeListener("end",a),r.removeListener("close",u),r.removeListener("error",c),t.removeListener("error",c),r.removeListener("end",h),r.removeListener("close",h),t.removeListener("close",h)}return r.on("error",c),t.on("error",c),r.on("end",h),r.on("close",h),t.on("close",h),t.emit("pipe",r),t}},function(t,e){},function(t,e,r){"use strict";var n=r(14).Buffer,o=r(81);t.exports=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.head=null,this.tail=null,this.length=0}return t.prototype.push=function(t){var e={data:t,next:null};this.length>0?this.tail.next=e:this.head=e,this.tail=e,++this.length},t.prototype.unshift=function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length},t.prototype.shift=function(){if(0!==this.length){var t=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,t}},t.prototype.clear=function(){this.head=this.tail=null,this.length=0},t.prototype.join=function(t){if(0===this.length)return"";for(var e=this.head,r=""+e.data;e=e.next;)r+=t+e.data;return r},t.prototype.concat=function(t){if(0===this.length)return n.alloc(0);if(1===this.length)return this.head.data;for(var e,r,o,i=n.allocUnsafe(t>>>0),s=this.head,a=0;s;)e=s.data,r=i,o=a,e.copy(r,o),a+=s.data.length,s=s.next;return i},t}(),o&&o.inspect&&o.inspect.custom&&(t.exports.prototype[o.inspect.custom]=function(){var t=o.inspect({length:this.length});return this.constructor.name+" "+t})},function(t,e){},function(t,e,r){(function(t,e){!function(t,r){"use strict";if(!t.setImmediate){var n,o,i,s,a,u=1,c={},h=!1,p=t.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(t);l=l&&l.setTimeout?l:t,"[object process]"==={}.toString.call(t.process)?n=function(t){e.nextTick((function(){d(t)}))}:!function(){if(t.postMessage&&!t.importScripts){var e=!0,r=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=r,e}}()?t.MessageChannel?((i=new MessageChannel).port1.onmessage=function(t){d(t.data)},n=function(t){i.port2.postMessage(t)}):p&&"onreadystatechange"in p.createElement("script")?(o=p.documentElement,n=function(t){var e=p.createElement("script");e.onreadystatechange=function(){d(t),e.onreadystatechange=null,o.removeChild(e),e=null},o.appendChild(e)}):n=function(t){setTimeout(d,0,t)}:(s="setImmediate$"+Math.random()+"$",a=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(s)&&d(+e.data.slice(s.length))},t.addEventListener?t.addEventListener("message",a,!1):t.attachEvent("onmessage",a),n=function(e){t.postMessage(s+e,"*")}),l.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),r=0;r<e.length;r++)e[r]=arguments[r+1];var o={callback:t,args:e};return c[u]=o,n(u),u++},l.clearImmediate=f}function f(t){delete c[t]}function d(t){if(h)setTimeout(d,0,t);else{var e=c[t];if(e){h=!0;try{!function(t){var e=t.callback,r=t.args;switch(r.length){case 0:e();break;case 1:e(r[0]);break;case 2:e(r[0],r[1]);break;case 3:e(r[0],r[1],r[2]);break;default:e.apply(void 0,r)}}(e)}finally{f(t),h=!1}}}}}("undefined"==typeof self?void 0===t?this:t:self)}).call(this,r(4),r(12))},function(t,e,r){(function(e){function r(t){try{if(!e.localStorage)return!1}catch(t){return!1}var r=e.localStorage[t];return null!=r&&"true"===String(r).toLowerCase()}t.exports=function(t,e){if(r("noDeprecation"))return t;var n=!1;return function(){if(!n){if(r("throwDeprecation"))throw new Error(e);r("traceDeprecation")?console.trace(e):console.warn(e),n=!0}return t.apply(this,arguments)}}}).call(this,r(4))},function(t,e,r){"use strict";t.exports=i;var n=r(47),o=Object.create(r(6));function i(t){if(!(this instanceof i))return new i(t);n.call(this,t)}o.inherits=r(5),o.inherits(i,n),i.prototype._transform=function(t,e,r){r(null,t)}},function(t,e,r){t.exports=r(31)},function(t,e,r){t.exports=r(3)},function(t,e,r){t.exports=r(30).Transform},function(t,e,r){t.exports=r(30).PassThrough},function(t,e){(function(){"use strict";e.stripBOM=function(t){return"\ufeff"===t[0]?t.substring(1):t}}).call(this)},function(t,e,r){
57
+ /*!
58
+ * Copyright 2019 SmugMug, Inc.
59
+ * Licensed under the terms of the MIT license. Please see LICENSE file in the project root for terms.
60
+ */
61
+ var n=r(7).Request,o=r(36);function i(t,e,r,s){if(!(this instanceof i))return new i(t,e,r,s);if(n.call(this,"POST","https://up.flickr.com/services/replace"),"function"!=typeof t)throw new Error('Missing required argument "auth"');if(void 0===e)throw new Error('Missing required argument "photoID"');void 0===s&&(s={}),this.attach("photo",r),this.field("photo_id",e),this.field(s),this.use(o),this.use(t)}i.prototype=Object.create(n.prototype),t.exports=i},function(t,e,r){"use strict";r.r(e);var n=r(49),o=r.n(n);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function s(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function a(t,e){return(a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function u(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=h(t);if(e){var o=h(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return c(this,r)}}function c(t,e){return!e||"object"!==i(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function h(t){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var p=wp.element,l=p.Component,f=p.createRef,d=wp.i18n.__,y=wp.components.Snackbar,g=wp.data.dispatch("core/notices").createNotice,m=function(t){y&&g("info",t,{isDismissible:!0,type:"snackbar"})},_=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(i,t);var e,r,n,o=u(i);function i(t){var e;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,i),(e=o.call(this,t)).img=e.props.result.url_m,e.fullSize=e.props.result.url_l,e.imgTitle=e.props.result.title,e.setAsFeaturedImage=!1,e.insertIntoPost=!1,e.inProgress=!1,e.SetFeaturedImage=e.props.SetFeaturedImage,e.InsertImage=e.props.InsertImage,e.noticeRef=f(),e.imageRef=f(),e.photoContainerRef=f(),e.state={attachmentId:""},e}return e=i,(r=[{key:"uploadPhoto",value:function(t){t.preventDefault();var e=this,r=t.currentTarget,n=r.parentElement.parentElement.parentElement.parentElement.parentElement,o=this.noticeRef.current,i=this.imageRef.current;if(r.classList.contains("download")&&""!==this.state.attachmentId)return!1;if(i.classList.add("uploading"),n.classList.add("in-progress"),o.innerHTML=d("Downloading Image...","themeisle-companion"),this.inProgress=!0,""!==this.state.attachmentId)return this.doPhotoAction(r,n,this.state.attachmentId),!0;if(void 0===this.fullSize)return e.uploadError(r,n,d("Error! Empty image.","themeisle-companion")),!1;var s=new FormData;s.append("action","handle-request-"+mystock_import.slug),s.append("url",this.fullSize),s.append("security",mystock_import.nonce),wp.apiFetch({url:mystock_import.ajaxurl,method:"POST",body:s}).then((function(t){t&&!0===t.success&&t.data.attachment.id?(e.doPhotoAction(r,n,t.data.attachment.id),e.setState({attachmentId:t.data.attachment.id})):e.uploadError(r,n,t.data.msg)})).catch((function(){e.uploadError(r,n,d("There was an error. Please try again.","themeisle-companion"))}))}},{key:"doPhotoAction",value:function(t,e,r){this.uploadComplete(t,e,r),this.setAsFeaturedImage&&(this.SetFeaturedImage(r),this.setAsFeaturedImage=!1),this.insertIntoPost&&(this.InsertImage(this.fullSize,this.imgTitle),this.insertIntoPost=!1)}},{key:"uploadError",value:function(t,e,r){var n=this.imageRef.current;n.classList.remove("uploading"),n.classList.add("errors"),this.photoContainerRef.current.classList.remove("in-progress"),t.parentNode.parentNode.classList.add("disabled"),setTimeout((function(){n.classList.remove("errors"),t.parentNode.parentNode.classList.remove("disabled")}),3e3,t,e),m(r),this.inProgress=!1,console.warn(r)}},{key:"uploadComplete",value:function(t,e,r){this.setState({attachmentId:r});var n=this.imageRef.current;n.classList.remove("uploading"),n.classList.add("success"),e.classList.remove("in-progress"),e.classList.add("uploaded","done"),t.parentNode.parentNode.classList.add("disabled"),setTimeout((function(){n.classList.remove("success"),e.classList.remove("uploaded"),t.parentNode.parentNode.classList.remove("disabled")}),3e3,t,e),this.inProgress=!1,t.classList.contains("download")&&m(d("Image was added to Media Library.","themeisle-companion")),t.classList.contains("set-featured")&&m(d("Image was set as featured image.","themeisle-companion")),t.classList.contains("insert")&&m(d("Image was inserted in post content.","themeisle-companion"))}},{key:"setFeaturedImageClick",value:function(t){if(!t.currentTarget)return!1;this.setAsFeaturedImage=!0,this.uploadPhoto(t)}},{key:"insertImageIntoPost",value:function(t){if(!t.currentTarget)return!1;this.insertIntoPost=!0,this.uploadPhoto(t)}},{key:"render",value:function(){var t=this;return React.createElement("article",{className:"photo",ref:this.photoContainerRef},React.createElement("div",{className:"photo--wrap"},React.createElement("div",{className:"img-wrap"},React.createElement("a",{className:"upload",href:"#",ref:this.imageRef},React.createElement("img",{src:this.img,alt:this.imgTitle}),React.createElement("div",{className:"status"})),React.createElement("div",{ref:this.noticeRef,className:"notice-msg"}),React.createElement("div",{className:"user-controls"},React.createElement("div",{className:"photo-options"},React.createElement("a",{className:"download fade",href:"#",onClick:function(e){return t.uploadPhoto(e)},title:d("Add to Media Library","themeisle-companion")},React.createElement("span",{className:"dashicons dashicons-download"})),React.createElement("a",{className:"set-featured fade",href:"#",onClick:function(e){return t.setFeaturedImageClick(e)},title:d("Set as featured image","themeisle-companion")},React.createElement("span",{className:"dashicons dashicons-format-image"})),React.createElement("a",{className:"insert fade",href:"#",onClick:function(e){return t.insertImageIntoPost(e)},title:d("Insert into post","themeisle-companion")},React.createElement("span",{className:"dashicons dashicons-plus"})))))))}}])&&s(e.prototype,r),n&&s(e,n),i}(l);function w(t){return(w="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function b(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function v(t,e){return(v=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function T(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}();return function(){var r,n=O(t);if(e){var o=O(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return E(this,r)}}function E(t,e){return!e||"object"!==w(e)&&"function"!=typeof e?P(t):e}function P(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function O(t){return(O=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var I=wp.components.Spinner,D=wp.element,S=D.Component,k=D.createRef,x=wp.i18n.__,C=function(t){!function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&v(t,e)}(s,t);var e,r,n,i=T(s);function s(t){var e;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),(e=i.call(this,t)).apiKey=mystock_import.api_key,e.userId=mystock_import.user_id,e.perPage=mystock_import.per_page,e.flickr=new o.a(e.apiKey),e.results=e.props.results?e.props.results:[],e.state={results:e.results},e.isSearch=!1,e.search_term="",e.nothingFound=!1,e.isLoading=!1,e.isDone=!1,e.page=e.props.page,e.SetFeaturedImage=e.props.SetFeaturedImage?e.props.SetFeaturedImage.bind(P(e)):"",e.InsertImage=e.props.InsertImage?e.props.InsertImage.bind(P(e)):"",e.errorRef=k(),e.searchRef=k(),e}return e=s,(r=[{key:"test",value:function(){var t=this,e=this.errorRef.current;this.flickr.test.echo(this.apiKey).then((function(r){(r.statusCode<200||r.statusCode>=400)&&t.renderTestError(e)}))}},{key:"renderTestError",value:function(t){t.classList.add("active"),t.innerHTML=x("There was an error accessing the server. Please try again later. If you still receive this error, contact the support team.","themeisle-companion")}},{key:"getPhotos",value:function(){var t=this;if(this.page=parseInt(this.page)+1,this.isLoading=!0,this.isSearch)this.doSearch(this.search_term,!0);else{var e={api_key:this.apiKey,user_id:this.userId,per_page:this.perPage,extras:"url_m, url_l",page:this.page};this.flickr.people.getPublicPhotos(e).then((function(e){var r=e.body.photos.photo;r.map((function(e){t.results.push(e)})),t.checkTotalResults(r.length),t.setState({results:t.results})})).catch((function(e){console.log(e),t.isLoading=!1}))}}},{key:"checkTotalResults",value:function(t){this.isDone=t<this.perPage}},{key:"search",value:function(t){t.preventDefault();var e=this.searchRef.current,r=e.value;r.length>2?(e.classList.add("searching"),this.search_term=r,this.nothingFound=!1,this.isSearch=!0,this.page=0,this.doSearch(this.search_term)):e.focus()}},{key:"doSearch",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this;this.page=parseInt(this.page)+1;var n=this.searchRef.current;!0!==e&&(r.results=[],r.setState({results:[]}));var o={api_key:this.apiKey,user_id:this.userId,text:this.search_term,per_page:this.perPage,extras:"url_m, url_l",page:this.page};this.flickr.photos.search(o).then((function(t){var e=t.body.photos.photo;0===e.length&&(r.nothingFound=!0),0===e.length&&!1===r.append&&(r.nothingFound=!0),e.map((function(t){r.results.push(t)})),r.checkTotalResults(e.length),r.setState({results:r.results}),n.classList.remove("searching")})).catch((function(t){console.log(t),r.isLoading=!1}))}},{key:"resetSearch",value:function(){var t=this.searchRef.current;this.isSearch=!1,this.page=0,this.results=[],t.value="",this.getPhotos()}},{key:"componentDidMount",value:function(){this.test(),this.page=0,this.getPhotos()}},{key:"render",value:function(){var t=this,e="",r="";return this.isDone||(e=React.createElement("div",{className:"load-more-wrap"},React.createElement("button",{type:"button",className:"button",onClick:function(){return t.getPhotos()}},x("Load More Images","themeisle-companion")))),0!==this.results.length||this.nothingFound||(r=React.createElement("div",{className:"loading-wrap"},React.createElement("h3",null,x("Loading images...","themeisle-companion")),React.createElement(I,null))),React.createElement("div",{id:"photo-listing"},React.createElement("div",{className:"search-field",id:"search-bar"},React.createElement("form",{onSubmit:function(e){return t.search(e)},autoComplete:"off"},React.createElement("input",{ref:this.searchRef,type:"text",id:"photo-search",placeholder:x("Search","themeisle-companion")}),React.createElement("button",{type:"submit",id:"photo-search-submit"},React.createElement("span",{className:"dashicons dashicons-search"})),React.createElement("button",{id:"clear-search",onClick:function(e){return t.resetSearch()}},React.createElement("span",{className:"dashicons dashicons-no"})))),React.createElement("div",{ref:this.errorRef,className:"error-messaging"}),React.createElement("div",{id:"msp-photos"},r,this.state.results.map((function(e,r){return React.createElement(_,{result:e,key:e.id+r,SetFeaturedImage:t.SetFeaturedImage,InsertImage:t.InsertImage})}))),React.createElement("div",{className:!0===this.nothingFound&&this.isSearch?"no-results show":"no-results",title:this.props.title},React.createElement("h3",null,x("Sorry, nothing matched your query.","themeisle-companion")," "),React.createElement("p",null,x("Please try with another word.","themeisle-companion")," ")),e)}}])&&b(e.prototype,r),n&&b(e,n),s}(S),N=wp.data.dispatch,A=function(t){if(null===t)return!1;N("core/editor").editPost({featured_media:t})},R=wp.blocks.createBlock,L=wp.data.dispatch,M=(L("core/block-editor")||L("core/editor")).insertBlocks,j=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(""===t)return!1;var r=R("core/image",{url:t,alt:e});M(r)},F=wp.element.Fragment,B=wp.editPost,G=B.PluginSidebar,U=B.PluginSidebarMoreMenuItem,q=wp.i18n.__,V=function(){return React.createElement(F,null,React.createElement(U,{target:"mystock-sidebar"},q("MyStockPhotos","themeisle-companion")),React.createElement(G,{name:"mystock-sidebar",title:q("MyStockPhotos","themeisle-companion")},React.createElement("div",{className:"mystock-img-container"},React.createElement(C,{page:1,SetFeaturedImage:A,InsertImage:j}))))},Y=wp.plugins.registerPlugin,H=wp.components.Icon;Y("mystock-images",{icon:React.createElement(H,{icon:"camera"}),render:V})}]);
obfx_modules/social-sharing/css/admin.css CHANGED
@@ -1,110 +1,67 @@
1
- #obfx-mod-social-sharing .socicon-facebook {
2
  color: #3b5998;
3
  }
4
 
5
- #obfx-mod-social-sharing .socicon-twitter {
6
  color: #1da1f2;
7
  }
8
 
9
- #obfx-mod-social-sharing .socicon-pinterest {
10
  color: #bd081c;
11
  }
12
 
13
- #obfx-mod-social-sharing .socicon-linkedin {
14
  color: #0077b5;
15
  }
16
 
17
- #obfx-mod-social-sharing .socicon-tumblr {
18
  color: #35465c;
19
  }
20
 
21
- #obfx-mod-social-sharing .socicon-reddit {
22
  color: #ff4500;
23
  }
24
 
25
- #obfx-mod-social-sharing .socicon-vk {
26
  color: #45668e;
27
  }
28
 
29
- #obfx-mod-social-sharing .socicon-odnoklassniki {
30
  color: #ee8208;
31
  }
32
 
33
- #obfx-mod-social-sharing .socicon-douban {
34
  color: #228a31;
35
  }
36
 
37
- #obfx-mod-social-sharing .socicon-baidu {
38
  color: #de0f17;
39
  }
40
 
41
- #obfx-mod-social-sharing .socicon-xing {
42
  color: #026466;
43
  }
44
 
45
- #obfx-mod-social-sharing .socicon-renren {
46
  color: #227ec7;
47
  }
48
 
49
- #obfx-mod-social-sharing .socicon-weibo {
50
  color: #e6162d;
51
  }
52
 
53
- #obfx-mod-social-sharing .socicon-viber {
54
  color: #00b901;
55
  }
56
 
57
- #obfx-mod-social-sharing .socicon-whatsapp {
58
  color: #20b038;
59
  }
60
 
61
- #obfx-mod-social-sharing .socicon-mail {
62
  color: #58a9de;
63
  }
64
 
65
- #obfx-mod-social-sharing .form-group.inline-setting {
66
- display: inline-block;
67
- }
68
-
69
- #obfx-mod-social-sharing .form-group.inline-setting.network-toggle {
70
- min-width: 300px;
71
- }
72
-
73
- #obfx-mod-social-sharing .form-group.inline-setting.last .form-label {
74
- display: none;
75
- }
76
-
77
- #obfx-mod-social-sharing .show {
78
- opacity: 1;
79
- -webkit-transition: all 0.3s ease;
80
- transition: all 0.3s ease;
81
- }
82
-
83
- #obfx-mod-social-sharing .show.obfxHiddenOption {
84
- opacity: 0;
85
- cursor: default;
86
- }
87
-
88
- .obfx-row {
89
- margin-bottom: 10px;
90
- border-bottom: 1px solid #eee;
91
- }
92
-
93
- @media ( max-width: 600px ) {
94
- #obfx-mod-social-sharing .obfx-row .form-label {
95
- margin-bottom: 20px;
96
- font-weight: 600;
97
- }
98
-
99
- #obfx-mod-social-sharing .obfx-row .show .form-label {
100
- display: none;
101
- }
102
-
103
- #obfx-mod-social-sharing .form-group.inline-setting.network-toggle {
104
- display: block;
105
- }
106
-
107
- .obfx-row {
108
- padding: 10px 0;
109
- }
110
  }
1
+ #obfx-dash .socicon-facebook {
2
  color: #3b5998;
3
  }
4
 
5
+ #obfx-dash .socicon-twitter {
6
  color: #1da1f2;
7
  }
8
 
9
+ #obfx-dash .socicon-pinterest {
10
  color: #bd081c;
11
  }
12
 
13
+ #obfx-dash .socicon-linkedin {
14
  color: #0077b5;
15
  }
16
 
17
+ #obfx-dash .socicon-tumblr {
18
  color: #35465c;
19
  }
20
 
21
+ #obfx-dash .socicon-reddit {
22
  color: #ff4500;
23
  }
24
 
25
+ #obfx-dash .socicon-vk {
26
  color: #45668e;
27
  }
28
 
29
+ #obfx-dash .socicon-odnoklassniki {
30
  color: #ee8208;
31
  }
32
 
33
+ #obfx-dash .socicon-douban {
34
  color: #228a31;
35
  }
36
 
37
+ #obfx-dash .socicon-baidu {
38
  color: #de0f17;
39
  }
40
 
41
+ #obfx-dash .socicon-xing {
42
  color: #026466;
43
  }
44
 
45
+ #obfx-dash .socicon-renren {
46
  color: #227ec7;
47
  }
48
 
49
+ #obfx-dash .socicon-weibo {
50
  color: #e6162d;
51
  }
52
 
53
+ #obfx-dash .socicon-viber {
54
  color: #00b901;
55
  }
56
 
57
+ #obfx-dash .socicon-whatsapp {
58
  color: #20b038;
59
  }
60
 
61
+ #obfx-dash .socicon-mail {
62
  color: #58a9de;
63
  }
64
 
65
+ #obfx-dash .socicon-telegram {
66
+ color: #36aff3;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
67
  }
obfx_modules/social-sharing/css/public.css CHANGED
@@ -178,6 +178,11 @@
178
  background-color: #58a9de;
179
  }
180
 
 
 
 
 
 
181
  @media ( max-width: 768px ) {
182
  .obfx-sharing-side {
183
  position: fixed;
178
  background-color: #58a9de;
179
  }
180
 
181
+ .obfx-sharing-inline a.btn-telegram,
182
+ .obfx-sharing a.telegram {
183
+ background-color: #36aff3;
184
+ }
185
+
186
  @media ( max-width: 768px ) {
187
  .obfx-sharing-side {
188
  position: fixed;
obfx_modules/social-sharing/init.php CHANGED
@@ -126,6 +126,11 @@ class Social_Sharing_OBFX_Module extends Orbit_Fox_Module_Abstract {
126
  'nicename' => 'Weibo',
127
  'icon' => 'weibo',
128
  ),
 
 
 
 
 
129
  );
130
  }
131
 
@@ -282,24 +287,7 @@ class Social_Sharing_OBFX_Module extends Orbit_Fox_Module_Abstract {
282
  * @return array
283
  */
284
  public function admin_enqueue() {
285
-
286
- $current_screen = get_current_screen();
287
- if ( ! isset( $current_screen->id ) ) {
288
- return array();
289
- }
290
- if ( $current_screen->id != 'toplevel_page_obfx_companion' ) {
291
- return array();
292
- }
293
-
294
- return array(
295
- 'css' => array(
296
- 'admin' => false,
297
- 'vendor/socicon/socicon' => false,
298
- ),
299
- 'js' => array(
300
- 'admin' => array( 'jquery' ),
301
- ),
302
- );
303
  }
304
 
305
  /**
126
  'nicename' => 'Weibo',
127
  'icon' => 'weibo',
128
  ),
129
+ 'telegram' => array(
130
+ 'link' => 'https://t.me/share/url?url=' . $post_link . '&text=' . $post_title,
131
+ 'nicename' => 'Telegram',
132
+ 'icon' => 'telegram',
133
+ ),
134
  );
135
  }
136
 
287
  * @return array
288
  */
289
  public function admin_enqueue() {
290
+ return array();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
291
  }
292
 
293
  /**
obfx_modules/template-directory/init.php CHANGED
@@ -27,9 +27,10 @@ class Template_Directory_OBFX_Module extends Orbit_Fox_Module_Abstract {
27
  */
28
  public function __construct() {
29
  parent::__construct();
30
- $this->name = __( 'Template Directory Module', 'themeisle-companion' );
31
- $this->description = __( 'The awesome template directory is aiming to provide a wide range of templates that you can import straight into your website.', 'themeisle-companion' );
32
- $this->active_default = true;
 
33
  }
34
 
35
  /**
27
  */
28
  public function __construct() {
29
  parent::__construct();
30
+ $this->name = __( 'Template Directory Module', 'themeisle-companion' );
31
+ $this->description = __( 'The awesome template directory is aiming to provide a wide range of templates that you can import straight into your website.', 'themeisle-companion' );
32
+ $this->active_default = true;
33
+ $this->refresh_after_enabled = true;
34
  }
35
 
36
  /**
readme.md CHANGED
@@ -1,32 +1,31 @@
1
  # Orbit Fox by ThemeIsle #
2
  **Contributors:** [themeisle](https://profiles.wordpress.org/themeisle), [codeinwp](https://profiles.wordpress.org/codeinwp), [rodicaelena](https://profiles.wordpress.org/rodicaelena), [baicusandrei](https://profiles.wordpress.org/baicusandrei), [hardeepasrani](https://profiles.wordpress.org/hardeepasrani)
3
- **Tags:** widget, admin, widgets, sharing, sections, themes, stock photos, custom icons, icons, menu icons, stock, templates
4
  **Requires at least:** 4.7
5
- **Tested up to:** 5.7
6
  **Requires PHP:** 5.6
7
  **Stable tag:** trunk
8
  **License:** GPLv2 or later
9
  **License URI:** http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
- This swiss-knife plugin comes with a quality template library, menu/sharing icons, Gutenberg blocks and newly added Elementor/BeaverBuilder page builder widgets.
12
 
13
  ## Description ##
14
 
15
- Extend your theme functionality with <a href="https://orbitfox.com/" rel="nofollow">Orbit Fox</a> with various modules like Social Media Share Buttons & Icons, Uptime Monitoring, Google Analytics, custom menu-icons, one click import page templates, page builder addons and free stock featured images.
16
 
17
  https://www.youtube.com/watch?v=YHhK_twfYB8
18
 
19
  **Features:**
20
  - Privacy policy notice ( GDPR friendly )
21
- - Uptime Monitor
22
- - Google Analytics Integration
23
  - Template Directory
24
- - Gutenberg Blocks
25
  - Elementor Addons and Widgets
26
  - Beaver Builder Widgets
27
  - Sharing module
28
  - Menu icons module
29
  - Free stock photos module
 
 
30
  - More widgets and sections for Hestia Theme
31
  - More widgets and sections for Zerif Theme
32
 
@@ -49,19 +48,16 @@ This plugin extends the features of your sites by adding numerous features.
49
  - Choose from a large variety of custom icons.
50
  - No coding needed, you can leverage the power of our dropdown icons selector and choose the right icon for your menu.
51
 
52
- **Why use our uptime monitor module:**
53
- - Really easy to use, just put in your email and you will receive a message when / if your site goes down.
54
-
55
- **Why use our Google Analytics integration module:**
56
- - It's a one-click configuration.
57
- - Just sign in with your google accounts
58
-
59
  **Why use our sharing module:**
60
  - It's easy to use
61
  - Enable sharing networks right from your admin dashboard and choose on what kind of devices you would like to show them.
62
  - It’s fully customizable: You can easily optimise button location for according to the device your visitors will use.
63
  - Choose from more than 20+ social networks to share with full control for every device that your visitors use.
64
- - The sharing options can be positioned for the maximum effect according to whether the visitor is using a mobile device or desktop. Best of all they can be switched on/off from your WordPress instance.
 
 
 
 
65
 
66
  **Why use our custom Elementor addons module:**
67
  - We offer new widgets to add more value to the content you can create within Elementor page builder.
@@ -85,8 +81,10 @@ This plugin extends the features of your sites by adding numerous features.
85
  - Services Widget to easily create pricing layouts.
86
  - Post Grid Widget to easily list your Posts in a grid.
87
 
88
- **Why should I use this with Zerif/Hestia themes:**
89
- - By using it along with our themes you gain access to a lot of useful widgets like **Testimonials**, **Our Focus**, **About Us** and more other.
 
 
90
 
91
  ## Installation ##
92
 
@@ -109,6 +107,15 @@ Activating the Orbit Fox plugin is just like any other plugin. If you've uploade
109
 
110
  ## Changelog ##
111
 
 
 
 
 
 
 
 
 
 
112
  ##### [Version 2.10.7](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.6...v2.10.7) (2021-08-02)
113
 
114
  [Fix] Widgets with repeater fields are generating errors
1
  # Orbit Fox by ThemeIsle #
2
  **Contributors:** [themeisle](https://profiles.wordpress.org/themeisle), [codeinwp](https://profiles.wordpress.org/codeinwp), [rodicaelena](https://profiles.wordpress.org/rodicaelena), [baicusandrei](https://profiles.wordpress.org/baicusandrei), [hardeepasrani](https://profiles.wordpress.org/hardeepasrani)
3
+ **Tags:** widget, admin, widgets, sharing, sections, themes, stock photos, custom icons, icons, menu icons, stock, templates, header, footer, scripts, custom fonts
4
  **Requires at least:** 4.7
5
+ **Tested up to:** 5.8
6
  **Requires PHP:** 5.6
7
  **Stable tag:** trunk
8
  **License:** GPLv2 or later
9
  **License URI:** http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
+ This swiss-knife plugin comes with a quality template library, menu/sharing icons, Elementor/BeaverBuilder page builder widgets and many more.
12
 
13
  ## Description ##
14
 
15
+ Extend your theme functionality with <a href="https://orbitfox.com/" rel="nofollow">Orbit Fox</a> with various modules like Social Media Share Buttons & Icons, Custom Menu Icons, Header and Footer Scripts, one click import page templates, page builder addons and free stock featured images.
16
 
17
  https://www.youtube.com/watch?v=YHhK_twfYB8
18
 
19
  **Features:**
20
  - Privacy policy notice ( GDPR friendly )
 
 
21
  - Template Directory
 
22
  - Elementor Addons and Widgets
23
  - Beaver Builder Widgets
24
  - Sharing module
25
  - Menu icons module
26
  - Free stock photos module
27
+ - Custom fonts module
28
+ - Header and footer scripts module
29
  - More widgets and sections for Hestia Theme
30
  - More widgets and sections for Zerif Theme
31
 
48
  - Choose from a large variety of custom icons.
49
  - No coding needed, you can leverage the power of our dropdown icons selector and choose the right icon for your menu.
50
 
 
 
 
 
 
 
 
51
  **Why use our sharing module:**
52
  - It's easy to use
53
  - Enable sharing networks right from your admin dashboard and choose on what kind of devices you would like to show them.
54
  - It’s fully customizable: You can easily optimise button location for according to the device your visitors will use.
55
  - Choose from more than 20+ social networks to share with full control for every device that your visitors use.
56
+ - The sharing options can be positioned for the maximum effect according to whether the visitor is using a mobile device or desktop. Best of all they can be switched on/off from your WordPress instance.
57
+
58
+ **Why use our header and footer scripts module:**
59
+ - It allows you to add global scripts in header or footer.
60
+ - You can add a script individually to run on a single page or post.
61
 
62
  **Why use our custom Elementor addons module:**
63
  - We offer new widgets to add more value to the content you can create within Elementor page builder.
81
  - Services Widget to easily create pricing layouts.
82
  - Post Grid Widget to easily list your Posts in a grid.
83
 
84
+ **Why use our custom fonts module:**
85
+ - The free fonts from Google may not be enough to achieve the perfect design.
86
+ - It allows you to upload any font you'd like and use it on your site.
87
+ - It's fully integrated with Neve theme, all the fonst you'll add will be availabel in customizer.
88
 
89
  ## Installation ##
90
 
107
 
108
  ## Changelog ##
109
 
110
+ ##### [Version 2.10.8](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.7...v2.10.8) (2021-09-29)
111
+
112
+ - [Feat] Refactor the dashboard.
113
+ - [Feat] Add Telegram social sharing icon.
114
+ - [Fix] HomePage reverts to FrontPage if you have Orbit Fox Hestia Enhancements active and switch theme
115
+
116
+
117
+
118
+
119
  ##### [Version 2.10.7](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.6...v2.10.7) (2021-08-02)
120
 
121
  [Fix] Widgets with repeater fields are generating errors
readme.txt CHANGED
@@ -1,32 +1,31 @@
1
  === Orbit Fox by ThemeIsle ===
2
  Contributors: themeisle, codeinwp, rodicaelena, baicusandrei, hardeepasrani
3
- Tags: widget, admin, widgets, sharing, sections, themes, stock photos, custom icons, icons, menu icons, stock, templates
4
  Requires at least: 4.7
5
- Tested up to: 5.7
6
  Requires PHP: 5.6
7
  Stable tag: trunk
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
- This swiss-knife plugin comes with a quality template library, menu/sharing icons, Gutenberg blocks and newly added Elementor/BeaverBuilder page builder widgets.
12
 
13
- == Description ==
14
 
15
- Extend your theme functionality with <a href="https://orbitfox.com/" rel="nofollow">Orbit Fox</a> with various modules like Social Media Share Buttons & Icons, Uptime Monitoring, Google Analytics, custom menu-icons, one click import page templates, page builder addons and free stock featured images.
16
 
17
  https://www.youtube.com/watch?v=YHhK_twfYB8
18
 
19
  **Features:**
20
  - Privacy policy notice ( GDPR friendly )
21
- - Uptime Monitor
22
- - Google Analytics Integration
23
  - Template Directory
24
- - Gutenberg Blocks
25
  - Elementor Addons and Widgets
26
  - Beaver Builder Widgets
27
  - Sharing module
28
  - Menu icons module
29
  - Free stock photos module
 
 
30
  - More widgets and sections for Hestia Theme
31
  - More widgets and sections for Zerif Theme
32
 
@@ -36,32 +35,29 @@ OrbitFox is a user-centred plugin with an easy-to-use admin panel. One of the mo
36
 
37
  We've also built some fantastic <a href="http://themeisle.com/wordpress-themes/free/" rel="nofollow" target="_blank">free themes</a> that work well with Orbit Fox, check them out.
38
 
39
- == Frequently Asked Questions ==
40
 
41
- = How I can get support for this plugin ? =
42
 
43
  You can learn more about Orbit Fox and ask for help by <a href="https://themeisle.com/contact/" >visiting ThemeIsle website</a>.
44
 
45
- = What can I do with this plugin =
46
  This plugin extends the features of your sites by adding numerous features.
47
 
48
  **Why use our custom icons module:**
49
  - Choose from a large variety of custom icons.
50
  - No coding needed, you can leverage the power of our dropdown icons selector and choose the right icon for your menu.
51
 
52
- **Why use our uptime monitor module:**
53
- - Really easy to use, just put in your email and you will receive a message when / if your site goes down.
54
-
55
- **Why use our Google Analytics integration module:**
56
- - It's a one-click configuration.
57
- - Just sign in with your google accounts
58
-
59
  **Why use our sharing module:**
60
  - It's easy to use
61
  - Enable sharing networks right from your admin dashboard and choose on what kind of devices you would like to show them.
62
  - It’s fully customizable: You can easily optimise button location for according to the device your visitors will use.
63
  - Choose from more than 20+ social networks to share with full control for every device that your visitors use.
64
- - The sharing options can be positioned for the maximum effect according to whether the visitor is using a mobile device or desktop. Best of all they can be switched on/off from your WordPress instance.
 
 
 
 
65
 
66
  **Why use our custom Elementor addons module:**
67
  - We offer new widgets to add more value to the content you can create within Elementor page builder.
@@ -85,10 +81,12 @@ This plugin extends the features of your sites by adding numerous features.
85
  - Services Widget to easily create pricing layouts.
86
  - Post Grid Widget to easily list your Posts in a grid.
87
 
88
- **Why should I use this with Zerif/Hestia themes:**
89
- - By using it along with our themes you gain access to a lot of useful widgets like **Testimonials**, **Our Focus**, **About Us** and more other.
 
 
90
 
91
- == Installation ==
92
 
93
  Activating the Orbit Fox plugin is just like any other plugin. If you've uploaded the plugin package to your server already, skip to step 5 below:
94
 
@@ -99,7 +97,7 @@ Activating the Orbit Fox plugin is just like any other plugin. If you've uploade
99
  5. Now, you're able to use Orbit fox and setup the modules you need. These can be found on the **Orbit Fox** dashboard page
100
  6. Make the changes desired, then click the **Save changes** button at the bottom
101
 
102
- == Screenshots ==
103
 
104
  1. The OrbitFox Dashboard Page
105
  2. The Template Directory Page
@@ -109,6 +107,15 @@ Activating the Orbit Fox plugin is just like any other plugin. If you've uploade
109
 
110
  == Changelog ==
111
 
 
 
 
 
 
 
 
 
 
112
  ##### [Version 2.10.7](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.6...v2.10.7) (2021-08-02)
113
 
114
  [Fix] Widgets with repeater fields are generating errors
1
  === Orbit Fox by ThemeIsle ===
2
  Contributors: themeisle, codeinwp, rodicaelena, baicusandrei, hardeepasrani
3
+ Tags: widget, admin, widgets, sharing, sections, themes, stock photos, custom icons, icons, menu icons, stock, templates, header, footer, scripts, custom fonts
4
  Requires at least: 4.7
5
+ Tested up to: 5.8
6
  Requires PHP: 5.6
7
  Stable tag: trunk
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
+ This swiss-knife plugin comes with a quality template library, menu/sharing icons, Elementor/BeaverBuilder page builder widgets and many more.
12
 
13
+ ## Description ##
14
 
15
+ Extend your theme functionality with <a href="https://orbitfox.com/" rel="nofollow">Orbit Fox</a> with various modules like Social Media Share Buttons & Icons, Custom Menu Icons, Header and Footer Scripts, one click import page templates, page builder addons and free stock featured images.
16
 
17
  https://www.youtube.com/watch?v=YHhK_twfYB8
18
 
19
  **Features:**
20
  - Privacy policy notice ( GDPR friendly )
 
 
21
  - Template Directory
 
22
  - Elementor Addons and Widgets
23
  - Beaver Builder Widgets
24
  - Sharing module
25
  - Menu icons module
26
  - Free stock photos module
27
+ - Custom fonts module
28
+ - Header and footer scripts module
29
  - More widgets and sections for Hestia Theme
30
  - More widgets and sections for Zerif Theme
31
 
35
 
36
  We've also built some fantastic <a href="http://themeisle.com/wordpress-themes/free/" rel="nofollow" target="_blank">free themes</a> that work well with Orbit Fox, check them out.
37
 
38
+ ## Frequently Asked Questions ##
39
 
40
+ ### How I can get support for this plugin ? ###
41
 
42
  You can learn more about Orbit Fox and ask for help by <a href="https://themeisle.com/contact/" >visiting ThemeIsle website</a>.
43
 
44
+ ### What can I do with this plugin ###
45
  This plugin extends the features of your sites by adding numerous features.
46
 
47
  **Why use our custom icons module:**
48
  - Choose from a large variety of custom icons.
49
  - No coding needed, you can leverage the power of our dropdown icons selector and choose the right icon for your menu.
50
 
 
 
 
 
 
 
 
51
  **Why use our sharing module:**
52
  - It's easy to use
53
  - Enable sharing networks right from your admin dashboard and choose on what kind of devices you would like to show them.
54
  - It’s fully customizable: You can easily optimise button location for according to the device your visitors will use.
55
  - Choose from more than 20+ social networks to share with full control for every device that your visitors use.
56
+ - The sharing options can be positioned for the maximum effect according to whether the visitor is using a mobile device or desktop. Best of all they can be switched on/off from your WordPress instance.
57
+
58
+ **Why use our header and footer scripts module:**
59
+ - It allows you to add global scripts in header or footer.
60
+ - You can add a script individually to run on a single page or post.
61
 
62
  **Why use our custom Elementor addons module:**
63
  - We offer new widgets to add more value to the content you can create within Elementor page builder.
81
  - Services Widget to easily create pricing layouts.
82
  - Post Grid Widget to easily list your Posts in a grid.
83
 
84
+ **Why use our custom fonts module:**
85
+ - The free fonts from Google may not be enough to achieve the perfect design.
86
+ - It allows you to upload any font you'd like and use it on your site.
87
+ - It's fully integrated with Neve theme, all the fonst you'll add will be availabel in customizer.
88
 
89
+ ## Installation ##
90
 
91
  Activating the Orbit Fox plugin is just like any other plugin. If you've uploaded the plugin package to your server already, skip to step 5 below:
92
 
97
  5. Now, you're able to use Orbit fox and setup the modules you need. These can be found on the **Orbit Fox** dashboard page
98
  6. Make the changes desired, then click the **Save changes** button at the bottom
99
 
100
+ ## Screenshots ##
101
 
102
  1. The OrbitFox Dashboard Page
103
  2. The Template Directory Page
107
 
108
  == Changelog ==
109
 
110
+ ##### [Version 2.10.8](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.7...v2.10.8) (2021-09-29)
111
+
112
+ - [Feat] Refactor the dashboard.
113
+ - [Feat] Add Telegram social sharing icon.
114
+ - [Fix] HomePage reverts to FrontPage if you have Orbit Fox Hestia Enhancements active and switch theme
115
+
116
+
117
+
118
+
119
  ##### [Version 2.10.7](https://github.com/Codeinwp/themeisle-companion/compare/v2.10.6...v2.10.7) (2021-08-02)
120
 
121
  [Fix] Widgets with repeater fields are generating errors
themeisle-companion.php CHANGED
@@ -15,7 +15,7 @@
15
  * Plugin Name: Orbit Fox Companion
16
  * Plugin URI: https://orbitfox.com/
17
  * Description: This swiss-knife plugin comes with a quality template library, menu/sharing icons modules, Gutenberg blocks, and newly added Elementor/BeaverBuilder page builder widgets on each release.
18
- * Version: 2.10.7
19
  * Author: Themeisle
20
  * Author URI: https://orbitfox.com/
21
  * License: GPL-2.0+
15
  * Plugin Name: Orbit Fox Companion
16
  * Plugin URI: https://orbitfox.com/
17
  * Description: This swiss-knife plugin comes with a quality template library, menu/sharing icons modules, Gutenberg blocks, and newly added Elementor/BeaverBuilder page builder widgets on each release.
18
+ * Version: 2.10.8
19
  * Author: Themeisle
20
  * Author URI: https://orbitfox.com/
21
  * License: GPL-2.0+
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInitef226903ac6de2394b664a089017c745::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit3d931d18fdc1be38b42ca25f6991be9a::getLoader();
vendor/composer/ClassLoader.php CHANGED
@@ -42,30 +42,75 @@ namespace Composer\Autoload;
42
  */
43
  class ClassLoader
44
  {
 
45
  private $vendorDir;
46
 
47
  // PSR-4
 
 
 
 
48
  private $prefixLengthsPsr4 = array();
 
 
 
 
49
  private $prefixDirsPsr4 = array();
 
 
 
 
50
  private $fallbackDirsPsr4 = array();
51
 
52
  // PSR-0
 
 
 
 
53
  private $prefixesPsr0 = array();
 
 
 
 
54
  private $fallbackDirsPsr0 = array();
55
 
 
56
  private $useIncludePath = false;
 
 
 
 
 
57
  private $classMap = array();
 
 
58
  private $classMapAuthoritative = false;
 
 
 
 
 
59
  private $missingClasses = array();
 
 
60
  private $apcuPrefix;
61
 
 
 
 
62
  private static $registeredLoaders = array();
63
 
 
 
 
64
  public function __construct($vendorDir = null)
65
  {
66
  $this->vendorDir = $vendorDir;
67
  }
68
 
 
 
 
69
  public function getPrefixes()
70
  {
71
  if (!empty($this->prefixesPsr0)) {
@@ -75,28 +120,47 @@ class ClassLoader
75
  return array();
76
  }
77
 
 
 
 
 
78
  public function getPrefixesPsr4()
79
  {
80
  return $this->prefixDirsPsr4;
81
  }
82
 
 
 
 
 
83
  public function getFallbackDirs()
84
  {
85
  return $this->fallbackDirsPsr0;
86
  }
87
 
 
 
 
 
88
  public function getFallbackDirsPsr4()
89
  {
90
  return $this->fallbackDirsPsr4;
91
  }
92
 
 
 
 
 
93
  public function getClassMap()
94
  {
95
  return $this->classMap;
96
  }
97
 
98
  /**
99
- * @param array $classMap Class to filename map
 
 
 
100
  */
101
  public function addClassMap(array $classMap)
102
  {
@@ -111,9 +175,11 @@ class ClassLoader
111
  * Registers a set of PSR-0 directories for a given prefix, either
112
  * appending or prepending to the ones previously set for this prefix.
113
  *
114
- * @param string $prefix The prefix
115
- * @param array|string $paths The PSR-0 root directories
116
- * @param bool $prepend Whether to prepend the directories
 
 
117
  */
118
  public function add($prefix, $paths, $prepend = false)
119
  {
@@ -156,11 +222,13 @@ class ClassLoader
156
  * Registers a set of PSR-4 directories for a given namespace, either
157
  * appending or prepending to the ones previously set for this namespace.
158
  *
159
- * @param string $prefix The prefix/namespace, with trailing '\\'
160
- * @param array|string $paths The PSR-4 base directories
161
- * @param bool $prepend Whether to prepend the directories
162
  *
163
  * @throws \InvalidArgumentException
 
 
164
  */
165
  public function addPsr4($prefix, $paths, $prepend = false)
166
  {
@@ -204,8 +272,10 @@ class ClassLoader
204
  * Registers a set of PSR-0 directories for a given prefix,
205
  * replacing any others previously set for this prefix.
206
  *
207
- * @param string $prefix The prefix
208
- * @param array|string $paths The PSR-0 base directories
 
 
209
  */
210
  public function set($prefix, $paths)
211
  {
@@ -220,10 +290,12 @@ class ClassLoader
220
  * Registers a set of PSR-4 directories for a given namespace,
221
  * replacing any others previously set for this namespace.
222
  *
223
- * @param string $prefix The prefix/namespace, with trailing '\\'
224
- * @param array|string $paths The PSR-4 base directories
225
  *
226
  * @throws \InvalidArgumentException
 
 
227
  */
228
  public function setPsr4($prefix, $paths)
229
  {
@@ -243,6 +315,8 @@ class ClassLoader
243
  * Turns on searching the include path for class files.
244
  *
245
  * @param bool $useIncludePath
 
 
246
  */
247
  public function setUseIncludePath($useIncludePath)
248
  {
@@ -265,6 +339,8 @@ class ClassLoader
265
  * that have not been registered with the class map.
266
  *
267
  * @param bool $classMapAuthoritative
 
 
268
  */
269
  public function setClassMapAuthoritative($classMapAuthoritative)
270
  {
@@ -285,6 +361,8 @@ class ClassLoader
285
  * APCu prefix to use to cache found/not-found classes, if the extension is enabled.
286
  *
287
  * @param string|null $apcuPrefix
 
 
288
  */
289
  public function setApcuPrefix($apcuPrefix)
290
  {
@@ -305,6 +383,8 @@ class ClassLoader
305
  * Registers this instance as an autoloader.
306
  *
307
  * @param bool $prepend Whether to prepend the autoloader or not
 
 
308
  */
309
  public function register($prepend = false)
310
  {
@@ -324,6 +404,8 @@ class ClassLoader
324
 
325
  /**
326
  * Unregisters this instance as an autoloader.
 
 
327
  */
328
  public function unregister()
329
  {
@@ -403,6 +485,11 @@ class ClassLoader
403
  return self::$registeredLoaders;
404
  }
405
 
 
 
 
 
 
406
  private function findFileWithExtension($class, $ext)
407
  {
408
  // PSR-4 lookup
@@ -474,6 +561,10 @@ class ClassLoader
474
  * Scope isolated include.
475
  *
476
  * Prevents access to $this/self from included files.
 
 
 
 
477
  */
478
  function includeFile($file)
479
  {
42
  */
43
  class ClassLoader
44
  {
45
+ /** @var ?string */
46
  private $vendorDir;
47
 
48
  // PSR-4
49
+ /**
50
+ * @var array[]
51
+ * @psalm-var array<string, array<string, int>>
52
+ */
53
  private $prefixLengthsPsr4 = array();
54
+ /**
55
+ * @var array[]
56
+ * @psalm-var array<string, array<int, string>>
57
+ */
58
  private $prefixDirsPsr4 = array();
59
+ /**
60
+ * @var array[]
61
+ * @psalm-var array<string, string>
62
+ */
63
  private $fallbackDirsPsr4 = array();
64
 
65
  // PSR-0
66
+ /**
67
+ * @var array[]
68
+ * @psalm-var array<string, array<string, string[]>>
69
+ */
70
  private $prefixesPsr0 = array();
71
+ /**
72
+ * @var array[]
73
+ * @psalm-var array<string, string>
74
+ */
75
  private $fallbackDirsPsr0 = array();
76
 
77
+ /** @var bool */
78
  private $useIncludePath = false;
79
+
80
+ /**
81
+ * @var string[]
82
+ * @psalm-var array<string, string>
83
+ */
84
  private $classMap = array();
85
+
86
+ /** @var bool */
87
  private $classMapAuthoritative = false;
88
+
89
+ /**
90
+ * @var bool[]
91
+ * @psalm-var array<string, bool>
92
+ */
93
  private $missingClasses = array();
94
+
95
+ /** @var ?string */
96
  private $apcuPrefix;
97
 
98
+ /**
99
+ * @var self[]
100
+ */
101
  private static $registeredLoaders = array();
102
 
103
+ /**
104
+ * @param ?string $vendorDir
105
+ */
106
  public function __construct($vendorDir = null)
107
  {
108
  $this->vendorDir = $vendorDir;
109
  }
110
 
111
+ /**
112
+ * @return string[]
113
+ */
114
  public function getPrefixes()
115
  {
116
  if (!empty($this->prefixesPsr0)) {
120
  return array();
121
  }
122
 
123
+ /**
124
+ * @return array[]
125
+ * @psalm-return array<string, array<int, string>>
126
+ */
127
  public function getPrefixesPsr4()
128
  {
129
  return $this->prefixDirsPsr4;
130
  }
131
 
132
+ /**
133
+ * @return array[]
134
+ * @psalm-return array<string, string>
135
+ */
136
  public function getFallbackDirs()
137
  {
138
  return $this->fallbackDirsPsr0;
139
  }
140
 
141
+ /**
142
+ * @return array[]
143
+ * @psalm-return array<string, string>
144
+ */
145
  public function getFallbackDirsPsr4()
146
  {
147
  return $this->fallbackDirsPsr4;
148
  }
149
 
150
+ /**
151
+ * @return string[] Array of classname => path
152
+ * @psalm-var array<string, string>
153
+ */
154
  public function getClassMap()
155
  {
156
  return $this->classMap;
157
  }
158
 
159
  /**
160
+ * @param string[] $classMap Class to filename map
161
+ * @psalm-param array<string, string> $classMap
162
+ *
163
+ * @return void
164
  */
165
  public function addClassMap(array $classMap)
166
  {
175
  * Registers a set of PSR-0 directories for a given prefix, either
176
  * appending or prepending to the ones previously set for this prefix.
177
  *
178
+ * @param string $prefix The prefix
179
+ * @param string[]|string $paths The PSR-0 root directories
180
+ * @param bool $prepend Whether to prepend the directories
181
+ *
182
+ * @return void
183
  */
184
  public function add($prefix, $paths, $prepend = false)
185
  {
222
  * Registers a set of PSR-4 directories for a given namespace, either
223
  * appending or prepending to the ones previously set for this namespace.
224
  *
225
+ * @param string $prefix The prefix/namespace, with trailing '\\'
226
+ * @param string[]|string $paths The PSR-4 base directories
227
+ * @param bool $prepend Whether to prepend the directories
228
  *
229
  * @throws \InvalidArgumentException
230
+ *
231
+ * @return void
232
  */
233
  public function addPsr4($prefix, $paths, $prepend = false)
234
  {
272
  * Registers a set of PSR-0 directories for a given prefix,
273
  * replacing any others previously set for this prefix.
274
  *
275
+ * @param string $prefix The prefix
276
+ * @param string[]|string $paths The PSR-0 base directories
277
+ *
278
+ * @return void
279
  */
280
  public function set($prefix, $paths)
281
  {
290
  * Registers a set of PSR-4 directories for a given namespace,
291
  * replacing any others previously set for this namespace.
292
  *
293
+ * @param string $prefix The prefix/namespace, with trailing '\\'
294
+ * @param string[]|string $paths The PSR-4 base directories
295
  *
296
  * @throws \InvalidArgumentException
297
+ *
298
+ * @return void
299
  */
300
  public function setPsr4($prefix, $paths)
301
  {
315
  * Turns on searching the include path for class files.
316
  *
317
  * @param bool $useIncludePath
318
+ *
319
+ * @return void
320
  */
321
  public function setUseIncludePath($useIncludePath)
322
  {
339
  * that have not been registered with the class map.
340
  *
341
  * @param bool $classMapAuthoritative
342
+ *
343
+ * @return void
344
  */
345
  public function setClassMapAuthoritative($classMapAuthoritative)
346
  {
361
  * APCu prefix to use to cache found/not-found classes, if the extension is enabled.
362
  *
363
  * @param string|null $apcuPrefix
364
+ *
365
+ * @return void
366
  */
367
  public function setApcuPrefix($apcuPrefix)
368
  {
383
  * Registers this instance as an autoloader.
384
  *
385
  * @param bool $prepend Whether to prepend the autoloader or not
386
+ *
387
+ * @return void
388
  */
389
  public function register($prepend = false)
390
  {
404
 
405
  /**
406
  * Unregisters this instance as an autoloader.
407
+ *
408
+ * @return void
409
  */
410
  public function unregister()
411
  {
485
  return self::$registeredLoaders;
486
  }
487
 
488
+ /**
489
+ * @param string $class
490
+ * @param string $ext
491
+ * @return string|false
492
+ */
493
  private function findFileWithExtension($class, $ext)
494
  {
495
  // PSR-4 lookup
561
  * Scope isolated include.
562
  *
563
  * Prevents access to $this/self from included files.
564
+ *
565
+ * @param string $file
566
+ * @return void
567
+ * @private
568
  */
569
  function includeFile($file)
570
  {
vendor/composer/InstalledVersions.php CHANGED
@@ -20,7 +20,7 @@ use Composer\Semver\VersionParser;
20
  *
21
  * See also https://getcomposer.org/doc/07-runtime.md#installed-versions
22
  *
23
- * To require it's presence, you can require `composer-runtime-api ^2.0`
24
  */
25
  class InstalledVersions
26
  {
@@ -228,7 +228,7 @@ class InstalledVersions
228
 
229
  /**
230
  * @return array
231
- * @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}
232
  */
233
  public static function getRootPackage()
234
  {
@@ -242,7 +242,7 @@ class InstalledVersions
242
  *
243
  * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
244
  * @return array[]
245
- * @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}
246
  */
247
  public static function getRawData()
248
  {
@@ -265,7 +265,7 @@ class InstalledVersions
265
  * Returns the raw data of all installed.php which are currently loaded for custom implementations
266
  *
267
  * @return array[]
268
- * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
269
  */
270
  public static function getAllRawData()
271
  {
@@ -288,7 +288,7 @@ class InstalledVersions
288
  * @param array[] $data A vendor/composer/installed.php data set
289
  * @return void
290
  *
291
- * @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>} $data
292
  */
293
  public static function reload($data)
294
  {
@@ -298,7 +298,7 @@ class InstalledVersions
298
 
299
  /**
300
  * @return array[]
301
- * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
302
  */
303
  private static function getInstalled()
304
  {
20
  *
21
  * See also https://getcomposer.org/doc/07-runtime.md#installed-versions
22
  *
23
+ * To require its presence, you can require `composer-runtime-api ^2.0`
24
  */
25
  class InstalledVersions
26
  {
228
 
229
  /**
230
  * @return array
231
+ * @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}
232
  */
233
  public static function getRootPackage()
234
  {
242
  *
243
  * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
244
  * @return array[]
245
+ * @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}
246
  */
247
  public static function getRawData()
248
  {
265
  * Returns the raw data of all installed.php which are currently loaded for custom implementations
266
  *
267
  * @return array[]
268
+ * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
269
  */
270
  public static function getAllRawData()
271
  {
288
  * @param array[] $data A vendor/composer/installed.php data set
289
  * @return void
290
  *
291
+ * @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>} $data
292
  */
293
  public static function reload($data)
294
  {
298
 
299
  /**
300
  * @return array[]
301
+ * @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string, type: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string, type?: string}>}>
302
  */
303
  private static function getInstalled()
304
  {
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInitef226903ac6de2394b664a089017c745
6
  {
7
  private static $loader;
8
 
@@ -24,15 +24,15 @@ class ComposerAutoloaderInitef226903ac6de2394b664a089017c745
24
 
25
  require __DIR__ . '/platform_check.php';
26
 
27
- spl_autoload_register(array('ComposerAutoloaderInitef226903ac6de2394b664a089017c745', 'loadClassLoader'), true, true);
28
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
29
- spl_autoload_unregister(array('ComposerAutoloaderInitef226903ac6de2394b664a089017c745', 'loadClassLoader'));
30
 
31
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
32
  if ($useStaticLoader) {
33
  require __DIR__ . '/autoload_static.php';
34
 
35
- call_user_func(\Composer\Autoload\ComposerStaticInitef226903ac6de2394b664a089017c745::getInitializer($loader));
36
  } else {
37
  $map = require __DIR__ . '/autoload_namespaces.php';
38
  foreach ($map as $namespace => $path) {
@@ -53,19 +53,19 @@ class ComposerAutoloaderInitef226903ac6de2394b664a089017c745
53
  $loader->register(true);
54
 
55
  if ($useStaticLoader) {
56
- $includeFiles = Composer\Autoload\ComposerStaticInitef226903ac6de2394b664a089017c745::$files;
57
  } else {
58
  $includeFiles = require __DIR__ . '/autoload_files.php';
59
  }
60
  foreach ($includeFiles as $fileIdentifier => $file) {
61
- composerRequireef226903ac6de2394b664a089017c745($fileIdentifier, $file);
62
  }
63
 
64
  return $loader;
65
  }
66
  }
67
 
68
- function composerRequireef226903ac6de2394b664a089017c745($fileIdentifier, $file)
69
  {
70
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
71
  require $file;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit3d931d18fdc1be38b42ca25f6991be9a
6
  {
7
  private static $loader;
8
 
24
 
25
  require __DIR__ . '/platform_check.php';
26
 
27
+ spl_autoload_register(array('ComposerAutoloaderInit3d931d18fdc1be38b42ca25f6991be9a', 'loadClassLoader'), true, true);
28
  self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(\dirname(__FILE__)));
29
+ spl_autoload_unregister(array('ComposerAutoloaderInit3d931d18fdc1be38b42ca25f6991be9a', 'loadClassLoader'));
30
 
31
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
32
  if ($useStaticLoader) {
33
  require __DIR__ . '/autoload_static.php';
34
 
35
+ call_user_func(\Composer\Autoload\ComposerStaticInit3d931d18fdc1be38b42ca25f6991be9a::getInitializer($loader));
36
  } else {
37
  $map = require __DIR__ . '/autoload_namespaces.php';
38
  foreach ($map as $namespace => $path) {
53
  $loader->register(true);
54
 
55
  if ($useStaticLoader) {
56
+ $includeFiles = Composer\Autoload\ComposerStaticInit3d931d18fdc1be38b42ca25f6991be9a::$files;
57
  } else {
58
  $includeFiles = require __DIR__ . '/autoload_files.php';
59
  }
60
  foreach ($includeFiles as $fileIdentifier => $file) {
61
+ composerRequire3d931d18fdc1be38b42ca25f6991be9a($fileIdentifier, $file);
62
  }
63
 
64
  return $loader;
65
  }
66
  }
67
 
68
+ function composerRequire3d931d18fdc1be38b42ca25f6991be9a($fileIdentifier, $file)
69
  {
70
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
71
  require $file;
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInitef226903ac6de2394b664a089017c745
8
  {
9
  public static $files = array (
10
  '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php',
@@ -269,9 +269,9 @@ class ComposerStaticInitef226903ac6de2394b664a089017c745
269
  public static function getInitializer(ClassLoader $loader)
270
  {
271
  return \Closure::bind(function () use ($loader) {
272
- $loader->prefixLengthsPsr4 = ComposerStaticInitef226903ac6de2394b664a089017c745::$prefixLengthsPsr4;
273
- $loader->prefixDirsPsr4 = ComposerStaticInitef226903ac6de2394b664a089017c745::$prefixDirsPsr4;
274
- $loader->classMap = ComposerStaticInitef226903ac6de2394b664a089017c745::$classMap;
275
 
276
  }, null, ClassLoader::class);
277
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit3d931d18fdc1be38b42ca25f6991be9a
8
  {
9
  public static $files = array (
10
  '7b11c4dc42b3b3023073cb14e519683c' => __DIR__ . '/..' . '/ralouphie/getallheaders/src/getallheaders.php',
269
  public static function getInitializer(ClassLoader $loader)
270
  {
271
  return \Closure::bind(function () use ($loader) {
272
+ $loader->prefixLengthsPsr4 = ComposerStaticInit3d931d18fdc1be38b42ca25f6991be9a::$prefixLengthsPsr4;
273
+ $loader->prefixDirsPsr4 = ComposerStaticInit3d931d18fdc1be38b42ca25f6991be9a::$prefixDirsPsr4;
274
+ $loader->classMap = ComposerStaticInit3d931d18fdc1be38b42ca25f6991be9a::$classMap;
275
 
276
  }, null, ClassLoader::class);
277
  }
vendor/composer/installed.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php return array(
2
  'root' => array(
3
- 'pretty_version' => 'v2.10.7',
4
- 'version' => '2.10.7.0',
5
  'type' => 'wordpress-plugin',
6
  'install_path' => __DIR__ . '/../../',
7
  'aliases' => array(),
8
- 'reference' => '670208ea8ad3a00dbc5061ff59de3e96f372235f',
9
  'name' => 'codeinwp/themeisle-companion',
10
  'dev' => false,
11
  ),
@@ -62,12 +62,12 @@
62
  'dev_requirement' => false,
63
  ),
64
  'codeinwp/themeisle-companion' => array(
65
- 'pretty_version' => 'v2.10.7',
66
- 'version' => '2.10.7.0',
67
  'type' => 'wordpress-plugin',
68
  'install_path' => __DIR__ . '/../../',
69
  'aliases' => array(),
70
- 'reference' => '670208ea8ad3a00dbc5061ff59de3e96f372235f',
71
  'dev_requirement' => false,
72
  ),
73
  'codeinwp/themeisle-content-forms' => array(
1
  <?php return array(
2
  'root' => array(
3
+ 'pretty_version' => 'v2.10.8',
4
+ 'version' => '2.10.8.0',
5
  'type' => 'wordpress-plugin',
6
  'install_path' => __DIR__ . '/../../',
7
  'aliases' => array(),
8
+ 'reference' => '0585966460629e7d07575e580233b1bde5bdd8bc',
9
  'name' => 'codeinwp/themeisle-companion',
10
  'dev' => false,
11
  ),
62
  'dev_requirement' => false,
63
  ),
64
  'codeinwp/themeisle-companion' => array(
65
+ 'pretty_version' => 'v2.10.8',
66
+ 'version' => '2.10.8.0',
67
  'type' => 'wordpress-plugin',
68
  'install_path' => __DIR__ . '/../../',
69
  'aliases' => array(),
70
+ 'reference' => '0585966460629e7d07575e580233b1bde5bdd8bc',
71
  'dev_requirement' => false,
72
  ),
73
  'codeinwp/themeisle-content-forms' => array(