From 5cf05ce39f0be3f7128f6488eedbfc755cf763c3 Mon Sep 17 00:00:00 2001 From: <> Date: Thu, 21 Sep 2023 17:25:04 +0000 Subject: [PATCH] Deployed 19116a7 with MkDocs version: 1.5.3 --- .nojekyll | 0 01-the-basics/index.html | 777 ++ 02-development-environment/index.html | 1005 +++ 03-service-providers/index.html | 841 +++ 04-testing/index.html | 895 +++ 05-facades/index.html | 861 +++ 06-artisan-commands/index.html | 1254 +++ 07-configuration-files/index.html | 790 ++ 08-models-and-migrations/index.html | 1575 ++++ 09-routing/index.html | 1426 ++++ 10-events-and-listeners/index.html | 1060 +++ 11-middleware/index.html | 1072 +++ 12-mail/index.html | 875 +++ 13-jobs/index.html | 817 ++ 14-notifications/index.html | 883 +++ 15-publishing/index.html | 881 +++ 16-assets/index.html | 861 +++ 404.html | 619 ++ CNAME | 1 + assets/favicon.ico | Bin 0 -> 15406 bytes assets/images/favicon.png | Bin 0 -> 1870 bytes assets/images/social/01-the-basics.png | Bin 0 -> 57820 bytes .../social/02-development-environment.png | Bin 0 -> 54089 bytes assets/images/social/03-service-providers.png | Bin 0 -> 50329 bytes assets/images/social/04-testing.png | Bin 0 -> 42598 bytes assets/images/social/05-facades.png | Bin 0 -> 44801 bytes assets/images/social/06-artisan-commands.png | Bin 0 -> 46659 bytes .../images/social/07-configuration-files.png | Bin 0 -> 54715 bytes .../social/08-models-and-migrations.png | Bin 0 -> 56269 bytes assets/images/social/09-routing.png | Bin 0 -> 61344 bytes .../images/social/10-events-and-listeners.png | Bin 0 -> 43743 bytes assets/images/social/11-middleware.png | Bin 0 -> 46977 bytes assets/images/social/12-mail.png | Bin 0 -> 42982 bytes assets/images/social/13-jobs.png | Bin 0 -> 42001 bytes assets/images/social/14-notifications.png | Bin 0 -> 47622 bytes assets/images/social/15-publishing.png | Bin 0 -> 54697 bytes assets/images/social/16-assets.png | Bin 0 -> 49105 bytes assets/images/social/history.png | Bin 0 -> 47284 bytes assets/images/social/index.png | Bin 0 -> 43672 bytes assets/javascripts/bundle.4e0fa4ba.min.js | 29 + assets/javascripts/bundle.4e0fa4ba.min.js.map | 8 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.he.min.js | 1 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.a264c092.min.js | 42 + .../workers/search.a264c092.min.js.map | 8 + assets/logo.png | Bin 0 -> 23829 bytes assets/stylesheets/main.9f615399.min.css | 1 + assets/stylesheets/main.9f615399.min.css.map | 1 + assets/stylesheets/palette.649f08f9.min.css | 1 + .../stylesheets/palette.649f08f9.min.css.map | 1 + history/index.html | 776 ++ index.html | 832 ++ robots.txt | 6 + sitemap.xml | 93 + sitemap.xml.gz | Bin 0 -> 398 bytes 86 files changed, 25491 insertions(+) create mode 100644 .nojekyll create mode 100644 01-the-basics/index.html create mode 100644 02-development-environment/index.html create mode 100644 03-service-providers/index.html create mode 100644 04-testing/index.html create mode 100644 05-facades/index.html create mode 100644 06-artisan-commands/index.html create mode 100644 07-configuration-files/index.html create mode 100644 08-models-and-migrations/index.html create mode 100644 09-routing/index.html create mode 100644 10-events-and-listeners/index.html create mode 100644 11-middleware/index.html create mode 100644 12-mail/index.html create mode 100644 13-jobs/index.html create mode 100644 14-notifications/index.html create mode 100644 15-publishing/index.html create mode 100644 16-assets/index.html create mode 100644 404.html create mode 100644 CNAME create mode 100644 assets/favicon.ico create mode 100644 assets/images/favicon.png create mode 100644 assets/images/social/01-the-basics.png create mode 100644 assets/images/social/02-development-environment.png create mode 100644 assets/images/social/03-service-providers.png create mode 100644 assets/images/social/04-testing.png create mode 100644 assets/images/social/05-facades.png create mode 100644 assets/images/social/06-artisan-commands.png create mode 100644 assets/images/social/07-configuration-files.png create mode 100644 assets/images/social/08-models-and-migrations.png create mode 100644 assets/images/social/09-routing.png create mode 100644 assets/images/social/10-events-and-listeners.png create mode 100644 assets/images/social/11-middleware.png create mode 100644 assets/images/social/12-mail.png create mode 100644 assets/images/social/13-jobs.png create mode 100644 assets/images/social/14-notifications.png create mode 100644 assets/images/social/15-publishing.png create mode 100644 assets/images/social/16-assets.png create mode 100644 assets/images/social/history.png create mode 100644 assets/images/social/index.png create mode 100644 assets/javascripts/bundle.4e0fa4ba.min.js create mode 100644 assets/javascripts/bundle.4e0fa4ba.min.js.map create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.he.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.a264c092.min.js create mode 100644 assets/javascripts/workers/search.a264c092.min.js.map create mode 100644 assets/logo.png create mode 100644 assets/stylesheets/main.9f615399.min.css create mode 100644 assets/stylesheets/main.9f615399.min.css.map create mode 100644 assets/stylesheets/palette.649f08f9.min.css create mode 100644 assets/stylesheets/palette.649f08f9.min.css.map create mode 100644 history/index.html create mode 100644 index.html create mode 100644 robots.txt create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/01-the-basics/index.html b/01-the-basics/index.html new file mode 100644 index 0000000..bc8759a --- /dev/null +++ b/01-the-basics/index.html @@ -0,0 +1,777 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Basics of Package Development - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

The Basics

+

Autoloading

+

Composer will generate an autoload.php file in the /vendor directory after each installation or update. By including this single file, you’ll be able to access all classes provided by your installed libraries.

+

Looking at a Laravel project, you’ll see that the public/index.php file in the application root (which handles all incoming requests) requires the autoloader, which then makes all required libraries usable within the scope of your application. This includes Laravel’s first-party Illuminate components as well as any required third party packages.

+

Laravel's public/index.php file:

+
public/index.php
<?php
+
+define('LARAVEL_START', microtime(true));
+
+require __DIR__.'/../vendor/autoload.php';
+
+// additional bootstrapping methods...
+
+

Directory Structure

+

In general (and by convention), a package contains a src/ (short for “source”) folder containing all package specific logic (classes) and a composer.json file containing information about the package itself. Additionally, most packages also include a license and documentation.

+

If we look at the general directory structure of a generic package, you’ll notice how it looks quite different from a standard Laravel project.

+
- src
+- tests
+CHANGELOG.md
+README.md
+LICENSE
+composer.json
+
+

In a package, all code that would ordinarily live in the app/ directory of a Laravel application will live in the src/ directory of your package.

+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/02-development-environment/index.html b/02-development-environment/index.html new file mode 100644 index 0000000..68084cf --- /dev/null +++ b/02-development-environment/index.html @@ -0,0 +1,1005 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Development Environment - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Development Environment

+

Installing Composer

+

There's a big chance that you already have Composer installed. However, if you haven't installed Composer already, the quickest way to get up and running is by copying the script provided on the download page of Composer. By copying and pasting the provided script in your command line, the composer.phar installer will be downloaded, run, and removed again. You can verify a successful installation by running composer --version. To update Composer to the latest version, run composer self-update.

+

Package Skeleton

+

To start with developing a package, first, create an empty directory. It is not necessary to nest packages in an existing Laravel project. I would highly recommend organizing your packages separate from your (Laravel) projects for the sake of clarity.

+

For example, I store all packages in ~/packages/ and my Laravel apps live in ~/websites/.

+

Composer.json

+

Let's start by creating a composer.json file in the root of your package directory, having a minimal configuration (as shown below). Replace all details from the example with your own.

+

It is best to be consistent with naming your packages. The standard convention is to use your GitHub / Gitlab / Bitbucket / etc.` username followed by a forward-slash ("/") and then a kebab cased version of your package name.

+

An example composer.json is highlighted below.

+
composer.json
{
+  "name": "johndoe/blogpackage",
+  "description": "A demo package",
+  "type": "library",
+  "license": "MIT",
+  "authors": [
+    {
+      "name": "John Doe",
+      "email": "john@doe.com"
+    }
+  ],
+  "require": {}
+}
+
+

Alternatively, you can create your composer.json file by running composer init in your empty package directory.

+

If you're planning to publish the package, it is important to choose an appropriate package type (in our case, a "library") and license (e.g., "MIT"). Learn more about open source licenses at ChooseALicense.com.

+

Namespacing

+

Since we want to use the (conventional) src/ directory to store our code, we need to tell Composer to map the package's namespace to that specific directory when creating the autoloader (vendor/autoload.php).

+

We can register our namespace under the "psr-4" autoload key in the composer.json file as follows (replace the namespace with your own):

+
composer.json
{
+  ...,
+
+  "require": {},
+
+  "autoload": {
+    "psr-4": {
+      "JohnDoe\\BlogPackage\\": "src"
+    }
+  }
+}
+
+

PSR-4 Autoloading

+

Now, you might wonder why we needed a "psr-4" key. PSR stands for PHP Standards Recommendations devised by the PHP Framework Interoperability Group (PHP-FIG). This group of 20 members, representing a cross-section of the PHP community, proposed a series of PSR's.

+

In the list, PSR-4 represents a recommendation regarding autoloading classes from file paths, replacing the until then prevailing PSR-0 autoloading standard.

+

The significant difference between PSR-0 and PSR-4 is that PSR-4 allows to map a base directory to a particular namespace and therefore permits shorter namespaces. I think this comment on StackOverflow has a clear description of how PSR-0 and PSR-4 work.

+

PSR-0

+
"autoload": {
+    "psr-0": {
+        "Book\\": "src/",
+        "Vehicle\\": "src/"
+    }
+}
+
+
    +
  • +

    Looking for Book\History\UnitedStates in src/Book/History/UnitedStates.php

    +
  • +
  • +

    Looking for Vehicle\Air\Wings\Airplane in src/Vehicle/Air/Wings/Airplane.php

    +
  • +
+

PSR-4

+
"autoload": {
+    "psr-4": {
+        "Book\\": "src/",
+        "Vehicle\\": "src/"
+    }
+}
+
+
    +
  • +

    Looking for Book\History\UnitedStates in src/History/UnitedStates.php

    +
  • +
  • +

    Looking for Vehicle\Air\Wings\Airplane in src/Air/Wings/Airplane.php

    +
  • +
+

Importing the Package Locally

+

To help with development, you can require a local package in a local Laravel project.

+

If you have a local Laravel project, you can require your package locally by defining a custom so-called "repository" in the composer.json file of your Laravel application.

+

Add the following "repositories" key below the "scripts" section in composer.json file of your Laravel app (replace the "url" with the directory where your package lives):

+
composer.json
{
+  "scripts": { ... },
+
+  "repositories": [
+    {
+      "type": "path",
+      "url": "../../packages/blogpackage"
+    }
+  ]
+}
+
+

You can now require your local package in the Laravel application using your chosen namespace of the package. Following our example, this would be:

+
composer require johndoe/blogpackage
+
+

Note: This documentation assumes you are using Laravel 8.0. If you are using Laravel 10, the above command will throw a minimum stability constraint error. You can fix the issue by adding the version key below the name key in the composer.json file of the package.

+
composer.json
{
+  "version": "1.0.0",
+}
+
+

By default, the package is added under vendor folder as a symlink if possible. If you would like to make a physical copy instead (i.e. mirroring), add the field "symlink": false to the repository definition's options property:

+
composer.json
{
+  "scripts": { ... },
+
+  "repositories": [
+    {
+      "type": "path",
+      "url": "../../packages/blogpackage",
+      "options": {
+        "symlink": false
+      }
+    }
+  ]
+}
+
+

If you have multiple packages in the same directory and want to instruct Composer to look for all of them, you can list the package location by using a wildcard * as follows:

+
composer.json
{
+  "scripts": { ... },
+
+  "repositories": [
+    {
+      "type": "path",
+      "url": "../../packages/*"
+    }
+  ]
+}
+
+

Important: you will need to perform a composer update in your Laravel application whenever you make changes to the composer.json file of your package or any providers it registers.

+

Orchestra Testbench

+

We now have a composer.json file and an empty src/ directory. However, we don't have access to any Laravel specific functionality provided by the Illuminate components.

+

To use these components in our package, we'll require the Orchestra Testbench. Note that each version of the Laravel framework has a corresponding version of Orchestra Testbench. In this section, I'll assume we're developing a package for Laravel 8.0, which is the latest version at the moment of writing this section.

+
composer require --dev "orchestra/testbench=^6.0"
+
+

The full compatibility table of the Orchestra Testbench is shown below, taken from the original documentation.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
LaravelTestbench
10.x8.x
9.x7.x
8.x6.x
7.x5.x
6.x4.x
5.x.x3.x.x
+

With Orchestra Testbench installed, you'll find a vendor/orchestra/testbench-core directory, containing a laravel and src directory. The laravel directory resembles the structure of an actual Laravel application, and the src directory provides the Laravel helpers that involve interaction with the project's directory structure (for example, related to file manipulation).

+

Before each test, TestBench creates a testing environment including a fully booted (test) application. If we use the Orchestra TestBench's basic TestCase for our tests, the methods as provided by the CreatesApplication trait in the Orchestra\Testbench\Concerns namespace will be responsible for creating this test application. If we look at one of these methods, getBasePath(), we'll see it directly points to the laravel folder that comes with Orchestra Testbench.

+
vendor/orchestra/testbench-core/src/Concerns/CreatesApplication.php
<?php
+
+/**
+ * Get base path.
+ *
+ * @return string
+ */
+protected function getBasePath()
+{
+    return \realpath(__DIR__.'/../../laravel');
+}
+
+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/03-service-providers/index.html b/03-service-providers/index.html new file mode 100644 index 0000000..d099246 --- /dev/null +++ b/03-service-providers/index.html @@ -0,0 +1,841 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Service Providers - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Service Providers

+

An essential part of a package is its Service Provider. Before creating our own, I'll explain what service providers are about in this section first. If you are familiar with service providers, please continue to the next section.

+

As you might know, Laravel comes with a series of service providers, namely the AppServiceProvider, AuthServiceProvider, BroadcastServiceProvider, EventServiceProvider and RouteServiceProvider. These providers take care of "bootstrapping" (or "registering") application-specific services (as service container bindings), event listeners, middleware, and routes.

+

Every service provider extends the Illuminate\Support\ServiceProvider and implements a register() and a boot() method.

+

The boot() method is used to bind things in the service container. After all other service providers have been registered (i.e., all register() methods of all service providers were called, including third-party packages), Laravel will call the boot() method on all service providers.

+

In the register() method, you might register a class binding in the service container, enabling a class to be resolved from the container. However, sometimes you will need to reference another class, in which case the boot() method can be used.

+

Here is an example of how a service provider may look and which things you might implement in a register() and boot() method.

+
<?php
+
+use App\Calculator;
+use Illuminate\Support\Collection;
+use Illuminate\Support\Facades\Gate;
+use Illuminate\Support\ServiceProvider;
+
+class AppServiceProvider extends ServiceProvider
+{
+  public function register()
+  {
+    // Register a class in the service container
+    $this->app->bind('calculator', function ($app) {
+      return new Calculator();
+    });
+  }
+
+  public function boot()
+  {
+    // Register a macro, extending the Illuminate\Collection class
+    Collection::macro('rejectEmptyFields', function () {
+      return $this->reject(function ($entry) {
+        return $entry === null;
+       });
+    });
+
+    // Register an authorization policy
+    Gate::define('delete-post', function ($user, $post) {
+      return $user->is($post->author);
+    });
+  }
+}
+
+

Creating a Service Provider

+

We will create a service provider for our package, which contains specific information about our package's core. The package might use a config file, maybe some views, routes, controllers, database migrations, model factories, custom commands, etc. The service provider needs to register them. We will discuss each of these in subsequent chapters.

+

Since we've pulled in Orchestra Testbench, we can extend the Illuminate\Support\ServiceProvider and create our service provider in the src/ directory as shown (replace naming with your details):

+
src/BlogPackageServiceProvider.php
<?php
+
+namespace JohnDoe\BlogPackage;
+
+use Illuminate\Support\ServiceProvider;
+
+class BlogPackageServiceProvider extends ServiceProvider
+{
+  public function register()
+  {
+    //
+  }
+
+  public function boot()
+  {
+    //
+  }
+}
+
+

Autoloading

+

To automatically register it with a Laravel project using Laravel's package auto-discovery we add our service provider to the "extra"> "laravel"> "providers" key in our package's composer.json:

+
composer.json
{
+  ...,
+
+  "autoload": { ... },
+
+  "extra": {
+      "laravel": {
+          "providers": [
+              "JohnDoe\\BlogPackage\\BlogPackageServiceProvider"
+          ]
+      }
+  }
+}
+
+

Now, whenever someone includes our package, the service provider will be loaded, and everything we've registered will be available in the application. Now let's see what we might want to register in this service provider.

+

Important: this feature is available starting from Laravel 5.5. With version 5.4 or below, you must register your service providers manually in the providers section of the config/app.php configuration file in your laravel project.

+
config/app.php
<?php
+
+'providers' => [
+    // Other Service Providers
+
+    App\Providers\ComposerServiceProvider::class,
+],
+
+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/04-testing/index.html b/04-testing/index.html new file mode 100644 index 0000000..b4edc1c --- /dev/null +++ b/04-testing/index.html @@ -0,0 +1,895 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Testing - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Testing

+

It is essential to have proper test coverage for the package's provided code. Adding tests to our package can confirm the existing code's behavior, verify everything still works whenever adding new functionality, and ensure we can safely refactor our package with confidence at a later stage.

+

Additionally, having good code coverage can motivate potential contributors by giving them more confidence that their addition does not break something else in the package. Tests also allow other developers to understand how specific features of your package are to be used and give them confidence about your package's reliability.

+

Installing PHPUnit

+

There are many options to test behavior in PHP. However, we'll stay close to Laravel's defaults, which uses the excellent tool PHPUnit.

+

Install PHPUnit as a dev-dependency in our package:

+
composer require --dev phpunit/phpunit
+
+

Note: you might need to install a specific version if you're developing a package for an older version of Laravel. Also to install orchestra/testbench, please refer to Orchestra Testbench set up on the Development Environment page.

+

To configure PHPUnit, create a phpunit.xml file in the root directory of the package. +Then, copy the following template to use an in-memory sqlite database and enable colorful reporting.

+

phpunit.xml:

+
phpunit.xml
<?xml version="1.0" encoding="UTF-8"?>
+<phpunit
+     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+     bootstrap="vendor/autoload.php"
+     backupGlobals="false"
+     colors="true"
+     processIsolation="false"
+     stopOnFailure="false"
+     xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.1/phpunit.xsd"
+     cacheDirectory=".phpunit.cache"
+     backupStaticProperties="false"
+>
+  <coverage/>
+  <testsuites>
+    <testsuite name="Unit">
+      <directory suffix="Test.php">./tests/Unit</directory>
+    </testsuite>
+    <testsuite name="Feature">
+      <directory suffix="Test.php">./tests/Feature</directory>
+    </testsuite>
+  </testsuites>
+  <php>
+    <env name="DB_CONNECTION" value="testing"/>
+    <env name="APP_KEY" value="base64:2fl+Ktvkfl+Fuz4Qp/A75G2RTiWVA/ZoKZvp6fiiM10="/>
+  </php>
+  <source>
+    <include>
+      <directory suffix=".php">src/</directory>
+    </include>
+  </source>
+</phpunit>
+
+

Note the dummy APP_KEY in the example above. This environment variable is consumed by Laravel's encrypter, which your tests might be making use of. For most cases, the dummy value will be sufficient. However, you are free to either change this value to reflect an actual app key (of your Laravel application) or leave it off entirely if your test suite does not interact with the encrypter.

+

Directory Structure

+

To accommodate Feature and Unit tests, create a tests/ directory with a Unit and Feature subdirectory and a base TestCase.php file. The structure looks as follows:

+
- tests
+    - Feature
+    - Unit
+      TestCase.php
+
+

The TestCase.php extends \Orchestra\Testbench\TestCase (see example below) and contains tasks related to setting up our “world” before each test is executed. In the TestCase class we will implement three important set-up methods: setUp(), getEnvironmentSetUp() and getPackageProviders().

+

Let's look at these methods one by one:

+
    +
  • +

    setUp(): You might have already used this method in your tests. Often it is used when you need a certain model in all following tests. The instantiation of that model can therefore be extracted to a setUp() method which is called before each test. Within the tests, the desired model can be retrieved from the Test class instance variable. When using this method, don't forget to call the parent setUp() method (and make sure to return void).

    +
  • +
  • +

    getEnvironmentSetUp(): As suggested by Orchestra Testbench: "If you need to add something early in the application bootstrapping process, you could use the getEnvironmentSetUp() method". Therefore, I suggest it is called before the setUp() method(s).

    +
  • +
  • +

    getPackageProviders(): As the name suggests, we can load our service provider(s) within the getPackageProviders() method. We'll do that by returning an array containing all providers. For now, we'll just include the package specific package provider, but imagine that if the package uses an EventServiceProvider, we would also register it here.

    +
  • +
+
+

In a package, TestCase will inherit from the Orchestra Testbench TestCase:

+
// 'tests/TestCase.php'
+<?php
+
+namespace JohnDoe\BlogPackage\Tests;
+
+use JohnDoe\BlogPackage\BlogPackageServiceProvider;
+
+class TestCase extends \Orchestra\Testbench\TestCase
+{
+  public function setUp(): void
+  {
+    parent::setUp();
+    // additional setup
+  }
+
+  protected function getPackageProviders($app)
+  {
+    return [
+      BlogPackageServiceProvider::class,
+    ];
+  }
+
+  protected function getEnvironmentSetUp($app)
+  {
+    // perform environment setup
+  }
+}
+
+

Before we can run the PHPUnit test suite, we first need to map our testing namespace to the appropriate folder in the composer.json file under an "autoload-dev" (psr-4) key:

+
{
+  ...,
+
+  "autoload": {},
+
+  "autoload-dev": {
+    "psr-4": {
+      "JohnDoe\\BlogPackage\\Tests\\": "tests"
+    }
+  }
+}
+
+

Finally, re-render the autoload file by running composer dump-autoload.

+

Authentication

+

In some cases you might want to use Laravel's User::class to be able to use an authenticated user in your tests. +There are several approaches, as discussed in the Models related to App\User section. However, if you don't have any relationships with the User model, and only want to test authentication logic, the easiest option is to create your own User class, extending the Illuminate\Foundation\Auth\User class:

+

App/Models/User.php
<?php
+
+use Illuminate\Foundation\Auth\User as BaseUser;
+
+class User extends BaseUser
+{
+    protected $table = 'users';
+}
+
+After defining this custom User model within your package, you should execute the migrate command from the Orchestra package to create the users table in your test database:

+

<?php
+
+$this->loadLaravelMigrations(['--database' => 'testbench']);
+$this->artisan('migrate', ['--database' => 'testbench'])->run();
+
+Finally, you can use the package's User::class in your tests within the $this->actingAs() helper and send a request by an authenticated user.

+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/05-facades/index.html b/05-facades/index.html new file mode 100644 index 0000000..0da5919 --- /dev/null +++ b/05-facades/index.html @@ -0,0 +1,861 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Facades - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Facades

+

The word 'facade' refers to a "superficial appearance or illusion of something," according to Dictionary.com. In architecture, the term refers to the front of a building.

+

A facade in Laravel is a class that redirects static method calls to the dynamic methods of an underlying class. A facade's goal is to provide a memorable and expressive syntax to access an underlying class's functionality.

+

An example of a fluent API using a facade:

+
<?php
+
+MessageFactory::sentBy($user)
+    ->withTopic('Example message')
+    ->withMessage($body)
+    ->withReply($replyByFrank)
+    ->create();
+
+

How a Facade Works

+

To learn more about facades and how they work, refer to the excellent Laravel documentation.

+

Practically, it boils down to calling static methods on a Facade, which are "proxied" (redirected) to the non-static methods of an underlying class you have specified. This means that you're not actually using static methods. An example is discussed below, using a Calculator class as an example.

+

Creating a Facade

+

Let’s assume that we provide a Calculator class as part of our package and want to make this class available as a facade.

+

First create a Calculator.php file in the src/ directory. To keep things simple, the calculator provides an add(), subtract() and clear() method. All methods return the object itself allowing for a fluent API (chaining the method calls, like: ->add()->subtract()->subtract()->getResult()).

+
src/Calculator.php
<?php
+
+namespace JohnDoe\BlogPackage;
+
+class Calculator
+{
+    private $result;
+
+    public function __construct()
+    {
+        $this->result = 0;
+    }
+
+    public function add(int $value)
+    {
+        $this->result += $value;
+
+        return $this;
+    }
+
+    public function subtract(int $value)
+    {
+        $this->result -= $value;
+
+        return $this;
+    }
+
+    public function clear()
+    {
+      $this->result = 0;
+
+      return $this;
+    }
+
+    public function getResult()
+    {
+        return $this->result;
+    }
+}
+
+

In addition to this class, we’ll create the facade in a new src/Facades folder:

+
src/Facades/Calculator.php
<?php
+
+namespace JohnDoe\BlogPackage\Facades;
+
+use Illuminate\Support\Facades\Facade;
+
+class Calculator extends Facade
+{
+    protected static function getFacadeAccessor()
+    {
+        return 'calculator';
+    }
+}
+
+

Finally, we register the binding in the service container in our service provider:

+
BlogPackageServiceProvider.php
<?php
+
+public function register()
+{
+  $this->app->bind('calculator', function($app) {
+      return new Calculator();
+  });
+}
+
+

The end user can now use the Calculator facade after importing it from the appropriate namespace: use JohnDoe\BlogPackage\Facades\Calculator;. However, Laravel allows us to register an alias that can register a facade in the root namespace. We can define our alias under an “alias” key below the “providers” in the composer.json file:

+
composer.json
"extra": {
+    "laravel": {
+        "providers": [
+            "JohnDoe\\BlogPackage\\BlogPackageServiceProvider"
+        ],
+        "aliases": {
+            "Calculator": "JohnDoe\\BlogPackage\\Facades\\Calculator"
+        }
+    }
+}
+
+

Important: this feature is available starting from Laravel 5.5. With version 5.4 or below, you must register your facades manually in the aliases section of the config/app.php configuration file.

+

You can also load an alias from a Service Provider (or anywhere else) by using the AliasLoader singleton class:

+
<?php
+
+$loader = \Illuminate\Foundation\AliasLoader::getInstance();
+$loader->alias('Calculator', "JohnDoe\\BlogPackage\\Facades\\Calculator");
+
+

Our facade now no longer requires an import and can be used in projects from the root namespace:

+
<?php
+
+// Usage of the example Calculator facade
+Calculator::add(5)->subtract(3)->getResult(); // 2
+
+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/06-artisan-commands/index.html b/06-artisan-commands/index.html new file mode 100644 index 0000000..70f673c --- /dev/null +++ b/06-artisan-commands/index.html @@ -0,0 +1,1254 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Commands - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + +

Artisan Commands

+

Laravel ships with an executable artisan file, which offers a number of helpful commands through a command-line interface (CLI).

+

Via this CLI, you can access commands as php artisan migrate and php artisan make:model Post. There are a lot of things you could do with commands. Make sure to read up on the artisan console in the Laravel documentation.

+

Let's say that we want to provide an easy artisan command for our end user to publish the config file, via: php artisan blogpackage:install.

+

Creating a new Command

+

Create a new Console folder in the src/ directory and create a new file named InstallBlogPackage.php. This class will extend Laravel's Command class and provide a $signature (the command) and a $description property. In the handle() method, we specify what our command will do. In this case we provide some feedback that we're "installing" the package, and we'll call another artisan command to publish the config file. Using the File facade we can check if the configuration file already exists. If so, we'll ask if we should overwrite it or cancel publishing of the config file. Finally, we let the user know that we're done.

+
src/Console/InstallBlogPackage.php
<?php
+
+namespace JohnDoe\BlogPackage\Console;
+
+use Illuminate\Console\Command;
+use Illuminate\Support\Facades\File;
+
+class InstallBlogPackage extends Command
+{
+    protected $signature = 'blogpackage:install';
+
+    protected $description = 'Install the BlogPackage';
+
+    public function handle()
+    {
+        $this->info('Installing BlogPackage...');
+
+        $this->info('Publishing configuration...');
+
+        if (! $this->configExists('blogpackage.php')) {
+            $this->publishConfiguration();
+            $this->info('Published configuration');
+        } else {
+            if ($this->shouldOverwriteConfig()) {
+                $this->info('Overwriting configuration file...');
+                $this->publishConfiguration($force = true);
+            } else {
+                $this->info('Existing configuration was not overwritten');
+            }
+        }
+
+        $this->info('Installed BlogPackage');
+    }
+
+    private function configExists($fileName)
+    {
+        return File::exists(config_path($fileName));
+    }
+
+    private function shouldOverwriteConfig()
+    {
+        return $this->confirm(
+            'Config file already exists. Do you want to overwrite it?',
+            false
+        );
+    }
+
+    private function publishConfiguration($forcePublish = false)
+    {
+        $params = [
+            '--provider' => "JohnDoe\BlogPackage\BlogPackageServiceProvider",
+            '--tag' => "config"
+        ];
+
+        if ($forcePublish === true) {
+            $params['--force'] = true;
+        }
+
+       $this->call('vendor:publish', $params);
+    }
+}
+
+

Registering a Command in the Service Provider

+

We need to present this package functionality to the end-user, thus registering it in the package's service provider.

+

Since we only want to provide this functionality when used from the command-line we'll add it within a conditional which checks if the application instance is running in the console:

+
BlogPackageServiceProvider.php
<?php
+
+use JohnDoe\BlogPackage\Console\InstallBlogPackage;
+
+public function boot()
+{
+    // Register the command if we are using the application via the CLI
+    if ($this->app->runningInConsole()) {
+        $this->commands([
+            InstallBlogPackage::class,
+        ]);
+    }
+}
+
+

Scheduling a Command in the Service Provider

+

If you want to schedule a command from your package instead of app/Console/Kernel.php, inside your service provider, you need to wait until after the Application has booted and the Schedule instance has been defined:

+
BlogPackageServiceProvider.php
<?php
+
+use Illuminate\Console\Scheduling\Schedule;
+
+public function boot()
+{
+    // Schedule the command if we are using the application via the CLI
+    if ($this->app->runningInConsole()) {
+        $this->app->booted(function () {
+            $schedule = $this->app->make(Schedule::class);
+            $schedule->command('some:command')->everyMinute();
+        });
+    }
+}
+
+

Testing a Command

+

To test that our Command class works, let's create a new unit test called InstallBlogPackageTest.php in the Unit test folder.

+

Since we're using Orchestra Testbench, we have a config folder at config_path() containing every file a typical Laravel installation would have. (You can check where this directory lives yourself if you dd(config_path())). Therefore, we can easily assert that this directory should have our blogpackage.php config file after running our artisan command. To ensure we're starting clean, let's delete any remainder configuration file from the previous test first.

+
tests/Unit/InstallBlogPackageTest.php
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Unit;
+
+use Illuminate\Support\Facades\Artisan;
+use Illuminate\Support\Facades\File;
+use JohnDoe\BlogPackage\Tests\TestCase;
+
+class InstallBlogPackageTest extends TestCase
+{
+    /** @test */
+    function the_install_command_copies_the_configuration()
+    {
+        // make sure we're starting from a clean state
+        if (File::exists(config_path('blogpackage.php'))) {
+            unlink(config_path('blogpackage.php'));
+        }
+
+        $this->assertFalse(File::exists(config_path('blogpackage.php')));
+
+        Artisan::call('blogpackage:install');
+
+        $this->assertTrue(File::exists(config_path('blogpackage.php')));
+    }
+}
+
+

In addition to the basic test which asserts that a configuration file is present after installation, we can add several tests which assert the appropriate installation process of our package. Let's add tests for the other scenarios where the user already has a configuration with the name blogpackage.php published. We will utilize the assertions expectsQuestion, expectsOutput, doesntExpectOutput, and assertExitCode.

+
tests/Unit/InstallBlogPackageTest.php
<?php
+
+/** @test */
+public function when_a_config_file_is_present_users_can_choose_to_not_overwrite_it()
+{
+    // Given we have already have an existing config file
+    File::put(config_path('blogpackage.php'), 'test contents');
+    $this->assertTrue(File::exists(config_path('blogpackage.php')));
+
+    // When we run the install command
+    $command = $this->artisan('blogpackage:install');
+
+    // We expect a warning that our configuration file exists
+    $command->expectsConfirmation(
+        'Config file already exists. Do you want to overwrite it?',
+        // When answered with "no"
+        'no'
+    );
+
+    // We should see a message that our file was not overwritten
+    $command->expectsOutput('Existing configuration was not overwritten');
+
+    // Assert that the original contents of the config file remain
+    $this->assertEquals('test contents', file_get_contents(config_path('blogpackage.php')));
+
+    // Clean up
+    unlink(config_path('blogpackage.php'));
+}
+
+/** @test */
+public function when_a_config_file_is_present_users_can_choose_to_do_overwrite_it()
+{
+    // Given we have already have an existing config file
+    File::put(config_path('blogpackage.php'), 'test contents');
+    $this->assertTrue(File::exists(config_path('blogpackage.php')));
+
+    // When we run the install command
+    $command = $this->artisan('blogpackage:install');
+
+    // We expect a warning that our configuration file exists
+    $command->expectsConfirmation(
+        'Config file already exists. Do you want to overwrite it?',
+        // When answered with "yes"
+        'yes'
+    );
+
+    // execute the command to force override 
+    $command->execute();
+
+    $command->expectsOutput('Overwriting configuration file...');
+
+    // Assert that the original contents are overwritten
+    $this->assertEquals(
+        file_get_contents(__DIR__.'/../config/config.php'),
+        file_get_contents(config_path('blogpackage.php'))
+    );
+
+    // Clean up
+    unlink(config_path('blogpackage.php'));
+}
+
+

Hiding a Command

+

There might be cases where you'd like to exclude the command from the list of Artisan commands. You can define a $hidden property on the command class, which will not show the specific command in the list of Artisan commands. NB: you can still use the command while hidden.

+
<?php
+
+class InstallBlogPackage extends Command
+{
+    protected $hidden = true;
+
+    protected $signature = 'blogpackage:install';
+
+    protected $description = 'Install the BlogPackage';
+
+    public function handle()
+    {
+        // ...
+    }
+}
+
+

Creating a Generator Command

+

Laravel provides an easy way to create Generator Commands, i.e., commands with signatures such as php artisan make:controller. Those commands modify a general, predefined template (stub) to a specific application. For example, by automatically injecting the correct namespace.

+

To create a Generator Command, you have to extend the Illuminate\Console\GeneratorCommand class, and override the following properties and methods:

+
    +
  • protected $name: name of the command
  • +
  • protected $description: description of the command
  • +
  • protected $type: the type of class the command generates
  • +
  • protected function getStub(): method returning the path of the stub template file
  • +
  • protected function getDefaultNamespace($rootNamespace): the default namespace of the generated class
  • +
  • public function handle(): the body of the command
  • +
+

The GeneratorCommand base class provides some helper methods:

+
    +
  • getNameInput(): returns the name passed from command line execution
  • +
  • qualifyClass(string $name): returns the qualified class name for a given class name
  • +
  • getPath(string $name): returns the file path for a given name
  • +
+

Consider the following example for the php artisan make:foo MyFoo command:

+
<?php
+
+namespace JohnDoe\BlogPackage\Console;
+
+use Illuminate\Console\GeneratorCommand;
+
+class MakeFooCommand extends GeneratorCommand
+{
+    protected $name = 'make:foo';
+
+    protected $description = 'Create a new foo class';
+
+    protected $type = 'Foo';
+
+    protected function getStub()
+    {
+        return __DIR__ . '/stubs/foo.php.stub';
+    }
+
+    protected function getDefaultNamespace($rootNamespace)
+    {
+        return $rootNamespace . '\Foo';
+    }
+
+    public function handle()
+    {
+        parent::handle();
+
+        $this->doOtherOperations();
+    }
+
+    protected function doOtherOperations()
+    {
+        // Get the fully qualified class name (FQN)
+        $class = $this->qualifyClass($this->getNameInput());
+
+        // get the destination path, based on the default namespace
+        $path = $this->getPath($class);
+
+        $content = file_get_contents($path);
+
+        // Update the file content with additional data (regular expressions)
+
+        file_put_contents($path, $content);
+    }
+}
+
+

Note that the Generator Command will export the class to a directory based on the namespace specified in the getDefaultNamespace() method.

+

As with the InstallBlogPackage command, we have to register this new command in the BlogPackageServiceProvider:

+
BlogPackageServiceProvider.php
<?php
+
+use JohnDoe\BlogPackage\Console\{InstallBlogPackage, MakeFooCommand};
+
+public function boot()
+{
+  if ($this->app->runningInConsole()) {
+    // publish config file
+
+    $this->commands([
+        InstallBlogPackage::class,
+        MakeFooCommand::class, // registering the new command
+    ]);
+  }
+}
+
+

Creating a stub

+

You are free to store stubs in a different directory, but we'll store the stubs in the Console/stubs directory in this example. For our Foo class generator, the stub could look as follows:

+
stubs/foo.php.stub
<?php
+
+namespace DummyNamespace;
+
+use JohnDoe\BlogPackage\Foo;
+
+class DummyClass implements Foo
+{
+    public function myFoo()
+    {
+        // foo
+    }
+}
+
+

Note that DummyNamespace and DummyClass are placeholders, strictly defined in the GeneratorCommand base class. Laravel expects these specific names to replace them automatically with the correct values.

+

Testing Generator Commands

+

We can add a feature test for this command in the tests/Feature directory, called MakeFooCommandTest.php, which verifies that a new file is created and contains the correct contents:

+
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Feature;
+
+use Illuminate\Support\Facades\File;
+use Illuminate\Support\Facades\Artisan;
+use JohnDoe\BlogPackage\Tests\TestCase;
+
+class MakeFooCommandTest extends TestCase
+{
+    /** @test */
+    function it_creates_a_new_foo_class()
+    {
+        // destination path of the Foo class
+        $fooClass = app_path('Foo/MyFooClass.php');
+
+        // make sure we're starting from a clean state
+        if (File::exists($fooClass)) {
+            unlink($fooClass);
+        }
+
+        $this->assertFalse(File::exists($fooClass));
+
+        // Run the make command
+        Artisan::call('make:foo MyFooClass');
+
+        // Assert a new file is created
+        $this->assertTrue(File::exists($fooClass));
+
+        // Assert the file contains the right contents
+        $expectedContents = <<<CLASS
+<?php
+
+namespace App\Foo;
+
+use JohnDoe\BlogPackage\Foo;
+
+class MyFooClass implements Foo
+{
+    public function myFoo()
+    {
+        // foo
+    }
+}
+CLASS;
+
+        $this->assertEquals($expectedContents, file_get_contents($fooClass));
+    }
+}
+
+

Creating a Test-Only Command

+

There are some situations where you would like to only use a particular command for testing and not in your application itself. For example, when your package provides a Trait that Command classes can use. To test the trait, you want to use an actual command.

+

Using an actual command solely for test purposes doesn't add functionality to the package and should not be published. A viable solution is to register the Command only in the tests, by hooking into Laravel's Application::starting() method as proposed by Marcel Pociot:

+
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Feature;
+
+use JohnDoe\BlogPackage\Tests\Commands\TestCommand;
+use Illuminate\Console\Application;
+use Illuminate\Support\Facades\Artisan;
+use Orchestra\Testbench\TestCase;
+
+class TestCommandTest extends TestCase
+{
+   /** @test **/
+   public function it_does_a_certain_thing()
+   {
+        Application::starting(function ($artisan) {
+            $artisan->add(app(TestCommand::class));
+        });
+
+        // Running the command
+        Artisan::call('test-command:run');
+
+       // Assertions...
+   }
+}
+
+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/07-configuration-files/index.html b/07-configuration-files/index.html new file mode 100644 index 0000000..4d7796b --- /dev/null +++ b/07-configuration-files/index.html @@ -0,0 +1,790 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Package Configuration - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Configuration Files

+

It is quite likely that your package allows configuration by the end-user.

+

If you want to offer custom configuration options, create a new config directory in the package's root and add a file called config.php, which returns an array of options.

+
config/config.php
<?php
+
+return [
+  'posts_table' => 'posts',
+  // other options...
+];
+
+

Merging Into the Existing Configuration

+

After registering the config file in the register() method of our service provider under a specific "key" ('blogpackage' in our demo), we can access the config values from the config helper by prefixing our "key" as follows: config('blogpackage.posts_table').

+
BlogPackageServiceProvider.php
<?php
+
+public function register()
+{
+  $this->mergeConfigFrom(__DIR__.'/../config/config.php', 'blogpackage');
+}
+
+

Exporting

+

To allow users to modify the default config values, we need to provide them with the option to export the config file. We can register all "publishables" within the boot() method of the package's service provider. Since we only want to offer this functionality whenever the package is booted from the console, we'll first check if the current app runs in the console. We'll register the publishable config file under the 'config' tag (the second parameter of the $this->publishes() function call).

+
BlogPackageServiceProvider.php
<?php
+
+public function boot()
+{
+  if ($this->app->runningInConsole()) {
+
+    $this->publishes([
+      __DIR__.'/../config/config.php' => config_path('blogpackage.php'),
+    ], 'config');
+
+  }
+}
+
+

The config file can now be exported using the command listed below, creating a blogpackage.php file in the /config directory of the Laravel project using this package.

+
php artisan vendor:publish --provider="JohnDoe\BlogPackage\BlogPackageServiceProvider" --tag="config"
+
+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/08-models-and-migrations/index.html b/08-models-and-migrations/index.html new file mode 100644 index 0000000..6ce8fdf --- /dev/null +++ b/08-models-and-migrations/index.html @@ -0,0 +1,1575 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Models and Migrations - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + +

Models & Migrations

+

There are scenarios where you'll need to ship one or more Eloquent models with your package. For example, when you're developing a Blog related package that includes a Post model.

+

This chapter will cover how to provide Eloquent models within your package, including migrations, tests, and how to possibly add a relationship to the App\User model that ships with Laravel.

+

Models

+

Models in our package do not differ from models we would use in a standard Laravel application. Since we required the Orchestra Testbench, we can create a model extending the Laravel Eloquent model and save it within the src/Models directory:

+
src/Models/Post.php
<?php
+
+namespace JohnDoe\BlogPackage\Models;
+
+use Illuminate\Database\Eloquent\Factories\HasFactory;
+use Illuminate\Database\Eloquent\Model;
+
+class Post extends Model
+{
+  use HasFactory;
+
+  // Disable Laravel's mass assignment protection
+  protected $guarded = [];
+}
+
+

There are multiple ways to generate models together with a migration automatically. The straightforward approach is to use a regular Laravel application and then copy over the artisan-generated files to your package and then update the namespaces.

+

If you are looking for ways to automate the scaffolding within your package, you might install one of the following tools as a dev dependency within your package and use a CLI command to generate the scaffolds.

+ +

Migrations

+

Migrations live in the database/migrations folder in a Laravel application. In our package we mimic this file structure. Therefore, database migrations will not live in the src/ directory but in their own database/migrations folder. Our package's root directory now contains at least two folders: src/ and database/.

+

After you’ve generated a migration, copy it from your “dummy” Laravel application to the package’s database/migrations folder.

+
database/migrations/2018_08_08_100000_create_posts_table.php
<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class CreatePostsTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('posts', function (Blueprint $table) {
+            $table->id();
+            $table->timestamps();
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('posts');
+    }
+}
+
+

From this point on, there are two possible approaches to present the end-user with our migration(s). We can either publish (specific) migrations (method 1) or load all migrations from our package automatically (method 2).

+

Publishing Migrations (method 1)

+

In this approach, we register that our package “publishes” its migrations. We can do that as follows in the boot() method of our package’s service provider, employing the publishes() method, which takes two arguments:

+
    +
  1. +

    an array of file paths ("source path" => "destination path")

    +
  2. +
  3. +

    the name (“tag”) we assign to this group of related publishable assets.

    +
  4. +
+

In this approach, it is conventional to use a "stubbed" migration. This stub is exported to a real migration when the user of our package publishes the migrations. Therefore, rename any migrations to remove the timestamp and add a .stub extension. In our example migration, this would lead to: create_posts_table.php.stub.

+

Next, we can implement exporting the migration(s) as follows:

+
<?php
+
+class BlogPackageServiceProvider extends ServiceProvider
+{
+  public function boot()
+  {
+    if ($this->app->runningInConsole()) {
+      // Export the migration
+      if (! class_exists('CreatePostsTable')) {
+        $this->publishes([
+          __DIR__ . '/../database/migrations/create_posts_table.php.stub' => database_path('migrations/' . date('Y_m_d_His', time()) . '_create_posts_table.php'),
+          // you can add any number of migrations here
+        ], 'migrations');
+      }
+    }
+  }
+}
+
+

In the code listed above, we first check if the application is running in the console. Next, we'll check if the user already published the migrations. If not, we will publish the create_posts_table migration in the migrations folder in the database path, prefixed with the current date and time.

+

The migrations of this package are now publishable under the “migrations” tag via:

+
php artisan vendor:publish --provider="JohnDoe\BlogPackage\BlogPackageServiceProvider" --tag="migrations"
+
+

Loading Migrations Automatically (method 2)

+

While the method described above gives full control over which migrations are published, Laravel offers an alternative approach making use of the loadMigrationsFrom helper (see docs). By specifying a migrations directory in the package's service provider, all migrations will be executed when the end-user executes php artisan migrate from within their Laravel application.

+
<?php
+
+class BlogPackageServiceProvider extends ServiceProvider
+{
+  public function boot()
+  {
+    $this->loadMigrationsFrom(__DIR__ . '/../database/migrations');
+  }
+}
+
+

Make sure to include a proper timestamp to your migrations, otherwise, Laravel can't process them. For example: 2018_08_08_100000_example_migration.php. You can not use a stub (like in method 1) when choosing this approach.

+

Testing Models and Migrations

+

As we create an example test, we will follow some of the basics of test-driven-development (TDD) here. Whether or not you practice TDD in your typical workflow, explaining the steps here helps expose possible problems you might encounter along the way, thus making troubleshooting simpler. Let's get started:

+

Writing a Unit Test

+

Now that we’ve set up PHPunit, let’s create a unit test for our Post model in the tests/Unit directory called PostTest.php. Let's write a test that verifies a Post has a title:

+
tests/Unit/PostTest.php
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Unit;
+
+use Illuminate\Foundation\Testing\RefreshDatabase;
+use JohnDoe\BlogPackage\Tests\TestCase;
+use JohnDoe\BlogPackage\Models\Post;
+
+class PostTest extends TestCase
+{
+  use RefreshDatabase;
+
+  /** @test */
+  function a_post_has_a_title()
+  {
+    $post = Post::factory()->create(['title' => 'Fake Title']);
+    $this->assertEquals('Fake Title', $post->title);
+  }
+}
+
+

Note: we're using the RefreshDatabase trait to be sure that we start with a clean database state before every test.

+

Running the Tests

+

We can run our test suite by calling the PHPUnit binary in our vendor directory using ./vendor/bin/phpunit. However, let’s alias this to test in our composer.json file by adding a “script”:

+
composer.json
{
+  ...,
+
+  "autoload-dev": {},
+
+  "scripts": {
+    "test": "vendor/bin/phpunit",
+    "test-f": "vendor/bin/phpunit --filter"
+  }
+}
+
+

We can now run composer test to run all of our tests and composer test-f followed by a test method/class's name to run that test solely.

+

When we run composer test-f a_post_has_a_title, it leads us to the following error:

+
Error: Class 'Database\Factories\JohnDoe\BlogPackage\Models\PostFactory' not found
+
+

The abovementioned error tells us that we need to create a model factory for the Post model.

+

Creating a Model Factory

+

Let’s create a PostFactory in the database/factories folder:

+
database/factories/PostFactory.php
<?php
+
+namespace JohnDoe\BlogPackage\Database\Factories;
+
+use JohnDoe\BlogPackage\Models\Post;
+use Illuminate\Database\Eloquent\Factories\Factory;
+
+class PostFactory extends Factory
+{
+    protected $model = Post::class;
+
+    public function definition()
+    {
+        return [
+            //
+        ];
+    }
+}
+
+

As with the src folder, for our package users to be able to use our model factories, we'll need to register the database/factories folder within a namespace in our composer.json file:

+
composer.json
{
+  ...,
+  "autoload": {
+    "psr-4": {
+      "JohnDoe\\BlogPackage\\": "src",
+      "JohnDoe\\BlogPackage\\Database\\Factories\\": "database/factories"
+    }
+  },
+  ...
+}
+
+

After setting it up, don't forget to run composer dump-autoload.

+

Configuring our Model factory

+

Rerunning our tests lead to the following error:

+
Error: Class 'Database\Factories\JohnDoe\BlogPackage\Models\PostFactory' not found
+
+

The abovementioned error is caused by Laravel, which tries to resolve the Model class for our PostFactory assuming the default namespaces of a usual project (as of version 8.x, App or App\Models). +To be able to instantiate the right Model from our package with the Post::factory() method, we need to add the following method to our Post Model:

+
src/Models/Post.php
<?php
+
+protected static function newFactory()
+{
+    return \JohnDoe\BlogPackage\Database\Factories\PostFactory::new();
+}
+
+

However, the tests will still fail since we haven’t created the posts table in our in-memory SQLite database. We need to tell our tests to first perform all migrations before running the tests.

+

Let’s load the migrations in the getEnvironmentSetUp() method of our TestCase:

+
tests/TestCase.php
<?php
+
+public function getEnvironmentSetUp($app)
+{
+  // import the CreatePostsTable class from the migration
+  include_once __DIR__ . '/../database/migrations/create_posts_table.php.stub';
+
+  // run the up() method of that migration class
+  (new \CreatePostsTable)->up();
+}
+
+

Now, running the tests again will lead to the expected error of no ‘title’ column being present on the ‘posts’ table. Let’s fix that in the create_posts_table.php.stub migration:

+
database/migrations/create_posts_table.php.stub
<?php
+
+Schema::create('posts', function (Blueprint $table) {
+    $table->id();
+    $table->string('title');
+    $table->timestamps();
+});
+
+

After running the test, you should see it passing.

+

Adding Tests for Other Columns

+

Let’s add tests for the “body” and “author_id”:

+
tests/Unit/PostTest.php
<?php
+
+class PostTest extends TestCase
+{
+  use RefreshDatabase;
+
+  /** @test */
+  function a_post_has_a_title()
+  {
+    $post = Post::factory()->create(['title' => 'Fake Title']);
+    $this->assertEquals('Fake Title', $post->title);
+  }
+
+  /** @test */
+  function a_post_has_a_body()
+  {
+    $post = Post::factory()->create(['body' => 'Fake Body']);
+    $this->assertEquals('Fake Body', $post->body);
+  }
+
+  /** @test */
+  function a_post_has_an_author_id()
+  {
+    // Note that we are not assuming relations here, just that we have a column to store the 'id' of the author
+    $post = Post::factory()->create(['author_id' => 999]); // we choose an off-limits value for the author_id so it is unlikely to collide with another author_id in our tests
+    $this->assertEquals(999, $post->author_id);
+  }
+}
+
+

You can continue driving this out with TDD on your own, running the tests, exposing the next thing to implement, and testing again.

+

Eventually you’ll end up with a model factory and migration as follows:

+
database/factories/PostFactory.php
<?php
+
+namespace JohnDoe\BlogPackage\Database\Factories;
+
+use JohnDoe\BlogPackage\Models\Post;
+use Illuminate\Database\Eloquent\Factories\Factory;
+
+class PostFactory extends Factory
+{
+    protected $model = Post::class;
+
+    public function definition()
+    {
+        return [
+            'title'     => $this->faker->words(3, true),
+            'body'      => $this->faker->paragraph,
+            'author_id' => 999,
+        ];
+    }
+}
+
+

For now, we hard-coded the ‘author_id’. In the next section, we'll see how we could whip up a relationship with a User model.

+
database/migrations/create_posts_table.php.stub
<?php
+
+Schema::create('posts', function (Blueprint $table) {
+    $table->id();
+    $table->string('title');
+    $table->text('body');
+    $table->unsignedBigInteger('author_id');
+    $table->timestamps();
+});
+
+ +

Now that we have an “author_id” column on our Post model, let’s create a relationship between a Post and a User. However, we have a problem since we need a User model, but this model also comes out-of-the-box with a fresh installation of the Laravel framework…

+

We can’t just provide our own User model, since you likely want your end-user to be able to hook up the User model from their Laravel app.

+

Below, there are two options to create a relation

+

Approach 1: Fetching the User model from the Auth configuration

+

If you simply want to create a relationship between authenticated users and e.g. a Post model, the easiest option is to reference the Model that is used in the config/auth.php file. By default, this is the App\Models\User Eloquent model.

+

If you just want to target the Eloquent model that is responsible for the authentication, create a belongsToMany relationship on the Post model as follows:

+
<?php
+
+// Post model
+class Post extends Model
+{
+  public function author()
+  {
+    return $this->belongsTo(config('auth.providers.users.model'));
+  }
+}
+
+

However, what if the user of our package has an Admin and a User model and the author of a Post can be an Admin model or a User model ? In such cases, you can opt for a polymorphic relationship.

+

Approach 2: Using a Polymorphic Relationship

+

Instead of opting for a conventional one-to-many relationship (a user can have many posts, and a post belongs to a user), we’ll use a polymorphic one-to-many relationship where a Post morphs to a specific related model (not necessarily a User model).

+

Let’s compare the standard and polymorphic relationships.

+

Definition of a standard one-to-many relationship:

+
<?php
+
+// Post model
+class Post extends Model
+{
+  public function author()
+  {
+    return $this->belongsTo(User::class);
+  }
+}
+
+// User model
+class User extends Model
+{
+  public function posts()
+  {
+    return $this->hasMany(Post::class);
+  }
+}
+
+

Definition of a polymorphic one-to-many relationship:

+
<?php
+
+// Post model
+class Post extends Model
+{
+  public function author()
+  {
+    return $this->morphTo();
+  }
+}
+
+// User (or other) model
+use JohnDoe\BlogPackage\Models\Post;
+
+class Admin extends Model
+{
+  public function posts()
+  {
+    return $this->morphMany(Post::class, 'author');
+  }
+}
+
+

After adding this author() method to our Post model, we need to update our create_posts_table_migration.php.stub file to reflect our polymorphic relationship. Since we named the method “author”, Laravel expects an “author_id” and an “author_type” field. The latter contains a string of the namespaced model we refer to (for example, “App\User”).

+
<?php
+
+Schema::create('posts', function (Blueprint $table) {
+    $table->id();
+    $table->string('title');
+    $table->text('body');
+    $table->unsignedBigInteger('author_id');
+    $table->string('author_type');
+    $table->timestamps();
+});
+
+

Now, we need a way to provide our end-user with the option to allow specific models to have a relationship with our Post model. Traits offer an excellent solution for this exact purpose.

+

Providing a Trait

+

Create a Traits folder in the src/ directory and add the following HasPosts trait:

+
src/Traits/HasPosts.php
<?php
+
+namespace JohnDoe\BlogPackage\Traits;
+
+use JohnDoe\BlogPackage\Models\Post;
+
+trait HasPosts
+{
+  public function posts()
+  {
+    return $this->morphMany(Post::class, 'author');
+  }
+}
+
+

Now the end-user can add a use HasPosts statement to any of their models (likely the User model), which would automatically register the one-to-many relationship with our Post model. This allows creating new posts as follows:

+
<?php
+
+// Given we have a User model, using the HasPosts trait
+$user = User::first();
+
+// We can create a new post from the relationship
+$user->posts()->create([
+  'title' => 'Some title',
+  'body' => 'Some body',
+]);
+
+

Testing the Polymorphic Relationship

+

Of course, we want to prove that any model using our HasPost trait can create new posts and that those posts are stored correctly.

+

Therefore, we’ll create a new User model, not within the src/Models/ directory, but rather in our tests/ directory.

+

To create users within our tests we'll need to overwrite the UserFactory provided by the Orchestra Testbench package, as shown below.

+
tests/UserFactory.php
<?php
+
+namespace JohnDoe\BlogPackage\Tests;
+
+use Orchestra\Testbench\Factories\UserFactory as TestbenchUserFactory;
+
+class UserFactory extends TestbenchUserFactory
+{
+  protected $model = User::class;
+
+    /**
+     * Define the model's default state.
+     *
+     * @return array
+     */
+    public function definition()
+    {
+        return [
+            'name' => $this->faker->name,
+            'email' => $this->faker->unique()->safeEmail,
+            'email_verified_at' => now(),
+            'password' => bcrypt('password'),
+            'remember_token' => \Illuminate\Support\Str::random(10),
+        ];
+    }
+}
+
+

In the User model we’ll use the same traits available on the User model that ships with a standard Laravel project to stay close to a real-world scenario. Also, we use our own HasPosts trait and UserFactory:

+
tests/User.php
<?php
+
+namespace JohnDoe\BlogPackage\Tests;
+
+use Illuminate\Auth\Authenticatable;
+use Illuminate\Database\Eloquent\Model;
+use Illuminate\Foundation\Auth\Access\Authorizable;
+use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract;
+use Illuminate\Contracts\Auth\Access\Authorizable as AuthorizableContract;
+use Illuminate\Database\Eloquent\Factories\HasFactory;
+use JohnDoe\BlogPackage\Traits\HasPosts;
+
+class User extends Model implements AuthorizableContract, AuthenticatableContract
+{
+    use HasPosts, Authorizable, Authenticatable, HasFactory;
+
+    protected $guarded = [];
+
+    protected $table = 'users';
+
+    protected static function newFactory()
+    {
+        return UserFactory::new();
+    }
+}
+
+

Now that we have a User model, we also need to add a new migration (the standard users table migration that ships with Laravel) to our database/migrations as create_users_table.php.stub:

+
database/migrations/create_users_table.php.stub
<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class CreateUsersTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('users', function (Blueprint $table) {
+            $table->id();
+            $table->string('name');
+            $table->string('email')->unique();
+            $table->timestamp('email_verified_at')->nullable();
+            $table->string('password');
+            $table->rememberToken();
+            $table->timestamps();
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('users');
+    }
+}
+
+

Also load the migration at the beginning of our tests, by including the migration and performing its up() method in our TestCase:

+
tests/TestCase.php
<?php
+
+public function getEnvironmentSetUp($app)
+{
+    include_once __DIR__ . '/../database/migrations/create_posts_table.php.stub';
+    include_once __DIR__ . '/../database/migrations/create_users_table.php.stub';
+
+    // run the up() method (perform the migration)
+    (new \CreatePostsTable)->up();
+    (new \CreateUsersTable)->up();
+}
+
+

Updating Our Post Model Factory

+

Now that we can whip up User models with our new factory, let’s create a new User in our PostFactory and then assign it to “author_id” and “author_type”:

+
database/factories/PostFactory.php
<?php
+
+namespace JohnDoe\BlogPackage\Database\Factories;
+
+use JohnDoe\BlogPackage\Models\Post;
+use Illuminate\Database\Eloquent\Factories\Factory;
+use JohnDoe\BlogPackage\Tests\User;
+
+class PostFactory extends Factory
+{
+    /**
+     * The name of the factory's corresponding model.
+     *
+     * @var string
+     */
+    protected $model = Post::class;
+
+    /**
+     * Define the model's default state.
+     *
+     * @return array
+     */
+    public function definition()
+    {
+        $author = User::factory()->create();
+
+        return [
+            'title'     => $this->faker->words(3, true),
+            'body'      => $this->faker->paragraph,
+            'author_id' => $author->id,
+            'author_type' => get_class($author)
+        ];
+    }
+}
+
+

Next, we update the Post unit test to verify an ‘author_type’ can be specified.

+
tests/Unit/PostTest.php
<?php
+
+class PostTest extends TestCase
+{
+  // other tests...
+
+  /** @test */
+  function a_post_has_an_author_type()
+  {
+    $post = Post::factory()->create(['author_type' => 'Fake\User']);
+    $this->assertEquals('Fake\User', $post->author_type);
+  }
+}
+
+

Finally, we need to verify that our test User can create a Post and it is stored correctly.

+

Since we are not creating a new post using a call to a specific route in the application, let's store this test in the Post unit test. In the next section on “Routes & Controllers”, we’ll make a POST request to an endpoint to create a new Post model and therefore divert to a Feature test.

+

A Unit test that verifies the desired behavior between a User and a Post could look as follows:

+
tests/Unit/PostTest.php
<?php
+
+class PostTest extends TestCase
+{
+  // other tests...
+
+  /** @test */
+  function a_post_belongs_to_an_author()
+  {
+    // Given we have an author
+    $author = User::factory()->create();
+    // And this author has a Post
+    $author->posts()->create([
+        'title' => 'My first fake post',
+        'body'  => 'The body of this fake post',
+    ]);
+
+    $this->assertCount(1, Post::all());
+    $this->assertCount(1, $author->posts);
+
+    // Using tap() to alias $author->posts()->first() to $post
+    // To provide cleaner and grouped assertions
+    tap($author->posts()->first(), function ($post) use ($author) {
+        $this->assertEquals('My first fake post', $post->title);
+        $this->assertEquals('The body of this fake post', $post->body);
+        $this->assertTrue($post->author->is($author));
+    });
+  }
+}
+
+

At this stage, all of the tests should be passing.

+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/09-routing/index.html b/09-routing/index.html new file mode 100644 index 0000000..0e95c22 --- /dev/null +++ b/09-routing/index.html @@ -0,0 +1,1426 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Routing, Views and Controllers - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + +

Routing

+

Sometimes you want to expose additional routes to the end-user of your package.

+

Since we're offering a Post model, let's add some RESTful routes. To keep things simple, we're just going to implement 3 of the RESTful routes:

+
    +
  • show all posts ('index')
  • +
  • show a single post ('show')
  • +
  • store a new post ('store')
  • +
+

Controllers

+

Creating a Base Controller

+

We want to create a PostController.

+

To make use of some traits the Laravel controllers offer, we'll first create our own base controller containing these traits in a src/Http/Controllers directory (resembling Laravel's folder structure) named Controller.php:

+
src/Http/Controllers/Controller.php
<?php
+
+namespace JohnDoe\BlogPackage\Http\Controllers;
+
+use Illuminate\Foundation\Bus\DispatchesJobs;
+use Illuminate\Routing\Controller as BaseController;
+use Illuminate\Foundation\Validation\ValidatesRequests;
+use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
+
+class Controller extends BaseController
+{
+    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
+}
+
+

Creating a Controller That Extends Base Controller

+

Now, let's create a PostController in the src/Http/Controllers directory, starting first with the 'store' method:

+
src/Http/Controllers/PostController
<?php
+
+namespace JohnDoe\BlogPackage\Http\Controllers;
+
+class PostController extends Controller
+{
+    public function index()
+    {
+        //
+    }
+
+    public function show()
+    {
+        //
+    }
+
+    public function store()
+    {
+        // Let's assume we need to be authenticated
+        // to create a new post
+        if (! auth()->check()) {
+            abort (403, 'Only authenticated users can create new posts.');
+        }
+
+        request()->validate([
+            'title' => 'required',
+            'body'  => 'required',
+        ]);
+
+        // Assume the authenticated user is the post's author
+        $author = auth()->user();
+
+        $post = $author->posts()->create([
+            'title'     => request('title'),
+            'body'      => request('body'),
+        ]);
+
+        return redirect(route('posts.show', $post));
+    }
+}
+
+

Routes

+

Defining Routes

+

Now that we have a controller, create a new routes/ directory in our package's root and add a web.php file containing the three RESTful routes we've mentioned above.

+
routes/web.php
<?php
+
+use Illuminate\Support\Facades\Route;
+use JohnDoe\BlogPackage\Http\Controllers\PostController;
+
+Route::get('/posts', [PostController::class, 'index'])->name('posts.index');
+Route::get('/posts/{post}', [PostController::class, 'show'])->name('posts.show');
+Route::post('/posts', [PostController::class, 'store'])->name('posts.store');
+
+

Registering Routes in the Service Provider

+

Before we can use these routes, we need to register them in the boot() method of our Service Provider:

+
BlogPackageServiceProvider.php
<?php
+
+public function boot()
+{
+  // ... other things
+  $this->loadRoutesFrom(__DIR__.'/../routes/web.php');
+}
+
+

Configurable Route Prefix and Middleware

+

You may want to allow users to define a route prefix and middleware for the routes exposed by your package. Instead of registering the routes directly in the boot() method we'll register the routes using Route::group, passing in the dynamic configuration (prefix and middleware). Don't forget to import the corresponding Route facade.

+

The following examples use a namespace of blogpackage. Don't forget to replace this with your package's namespace.

+
BlogPackageServiceProvider.php
<?php
+
+use Illuminate\Support\Facades\Route;
+
+public function boot()
+{
+  // ... other things
+  $this->registerRoutes();
+}
+
+protected function registerRoutes()
+{
+    Route::group($this->routeConfiguration(), function () {
+        $this->loadRoutesFrom(__DIR__.'/../routes/web.php');
+    });
+}
+
+protected function routeConfiguration()
+{
+    return [
+        'prefix' => config('blogpackage.prefix'),
+        'middleware' => config('blogpackage.middleware'),
+    ];
+}
+
+

Specify a default route prefix and middleware in the package's config.php file:

+
<?php
+[
+  'prefix' => 'blogger',
+  'middleware' => ['web'], // you probably want to include 'web' here
+]
+
+

In the above default configuration, all routes defined in routes.web need to be prefixed with /blogger. In this way, collision with potentially existing routes is avoided.

+

Views

+

The 'index' and 'show' methods on the PostController need to render a view.

+

Creating the Blade View Files

+

Create a new resources/ folder at the root of our package. In that folder, create a subfolder named views. In the views folder, we'll create a posts subfolder in which we'll create two (extremely) simple templates.

+
    +
  1. resources/views/posts/index.blade.php:
  2. +
+
<h1>Showing all Posts</h1>
+
+@forelse ($posts as $post)
+    <li>{{ $post->title }}</li>
+@empty
+    <p> 'No posts yet' </p>
+@endforelse
+
+
    +
  1. resources/views/posts/show.blade.php:
  2. +
+
<h1>{{ $post->title }}</h1>
+
+<p> {{ $post->body }}</p>
+
+

Note: these templates would extend a base/master layout file in a real-world scenario.

+

Registering Views in the Service Provider

+

Now that we have some views, we need to register that we want to load any views from our resources/views directory in the boot() method of our Service Provider. Important: provide a "key" as the second argument to loadViewsFrom() as you'll need to specify this key when returning a view from a controller (see next section).

+
BlogPackageServiceProvider.php
<?php
+
+public function boot()
+{
+  // ... other things
+  $this->loadViewsFrom(__DIR__.'/../resources/views', 'blogpackage');
+}
+
+

Returning a View from the Controller

+

We can now return the views we've created from the PostController (don't forget to import our Post model).

+

Note the blogpackage:: prefix, which matches the prefix we registered in our Service Provider.

+
src/Http/Controllers/PostController.php
<?php
+
+use JohnDoe\BlogPackage\Models\Post;
+
+public function index()
+{
+    $posts = Post::all();
+
+    return view('blogpackage::posts.index', compact('posts'));
+}
+
+public function show()
+{
+    $post = Post::findOrFail(request('post'));
+
+    return view('blogpackage::posts.show', compact('post'));
+}
+
+

Customizable Views

+

Chances are that you want to be able to let the users of your package customize the views. Similar to the database migrations, the views can be published if we register them to be exported in the boot() method of our service provider using the 'views' key of the publishes() method:

+
BlogPackageServiceProvider.php
<?php
+
+if ($this->app->runningInConsole()) {
+  // Publish views
+  $this->publishes([
+    __DIR__.'/../resources/views' => resource_path('views/vendor/blogpackage'),
+  ], 'views');
+
+}
+
+

The views can then be exported by users of our package using:

+
php artisan vendor:publish --provider="JohnDoe\BlogPackage\BlogPackageServiceProvider" --tag="views"
+
+

View Components

+

Since Laravel 8, it is possible to generate Blade components using php artisan make:component MyComponent which generates a base MyComponent class and a Blade my-component.blade.php file, which receives all public properties as defined in the MyComponent class. These components can then be reused and included in any view using the component syntax: <x-my-component> and closing </x-my-component> (or the self-closing form). To learn more about Blade components, make sure to check out the Laravel documentation.

+

In addition to generating Blade components using the artisan command, it is also possible to create a my-component.blade.php component without class. These are called anonymous components and are placed in the views/components directory by convention.

+

This section will cover how to provide these type of Blade components in your package.

+

Class Based Components

+

If you want to offer class based View Components in your package, first create a new View/Components directory in the src folder. Add a new class, for example Alert.php.

+
src/View/Components/Alert.php
<?php
+
+namespace JohnDoe\BlogPackage\View\Components;
+
+use Illuminate\View\Component;
+
+class Alert extends Component
+{
+    public $message;
+
+    public function __construct($message)
+    {
+        $this->message = $message;
+    }
+
+    public function render()
+    {
+        return view('blogpackage::components.alert');
+    }
+}
+
+

Next, create a new views/components directory in the resources folder. Add a new Blade component alert.blade.php:

+
<div>
+  <p>This is an Alert</p>
+
+  <p>{{ $message }}</p>
+</div>
+
+

Next, register the component in the Service Provider by the class and provide a prefix for the components. In our example, using 'blogpackage', the alert component will become available as <x-blogpackage-alert />.

+
BlogPackageServiceProvider.php
<?php
+
+use JohnDoe\BlogPackage\View\Components\Alert;
+
+public function boot()
+{
+  // ... other things
+  $this->loadViewComponentsAs('blogpackage', [
+    Alert::class,
+  ]);
+}
+
+

Anonymous View Components

+

If your package provides anonymous components, it suffices to add the my-component.blade.php Blade component to resources/views/components directory, given that you have specified the loadViewsFrom directory in your Service Provider as "resources/views". If you don't already, add the loadViewsFrom method to your Service Provider:

+
BlogPackageServiceProvider.php
<?php
+
+public function boot()
+{
+  // ... other things
+  $this->loadViewsFrom(__DIR__.'/../resources/views', 'blogpackage');
+}
+
+

Components (in the resources/views/components folder) can now be referenced prefixed by the defined namespace above ("blogpackage"):

+
  <x-blogpackage::alert />
+
+

Customizable View Components

+

In order to let the end user of our package modify the provided Blade component(s), we first need to register the publishables into our Service Provider:

+
BlogPackageServiceProvider.php
<?php
+
+if ($this->app->runningInConsole()) {
+  // Publish view components
+  $this->publishes([
+      __DIR__.'/../src/View/Components/' => app_path('View/Components'),
+      __DIR__.'/../resources/views/components/' => resource_path('views/components'),
+  ], 'view-components');
+}
+
+

Now, it is possible to publish both files (class and Blade component) using:

+
php artisan vendor:publish --provider="JohnDoe\BlogPackage\BlogPackageServiceProvider" --tag="view-components"
+
+

Be aware that the end user needs to update the namespaces of the published component class and update the render() method to reference the Blade components of the Laravel application directly, instead of referencing the package namespace. Additionally, the Blade component no longer has to be namespaced since it was published to the Laravel application itself.

+

Testing Routes

+

Let’s verify that we can indeed create a post, show a post and show all posts with our provided routes, views, and controllers.

+

Feature Test

+

Create a new Feature test called CreatePostTest.php in the tests/Feature directory and add the following assertions to verify that authenticated users can indeed create new posts:

+
tests/Feature/CreatePostTest.php
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Feature;
+
+use Illuminate\Foundation\Testing\RefreshDatabase;
+use JohnDoe\BlogPackage\Models\Post;
+use JohnDoe\BlogPackage\Tests\TestCase;
+use JohnDoe\BlogPackage\Tests\User;
+
+class CreatePostTest extends TestCase
+{
+    use RefreshDatabase;
+
+    /** @test */
+    function authenticated_users_can_create_a_post()
+    {
+        // To make sure we don't start with a Post
+        $this->assertCount(0, Post::all());
+
+        $author = User::factory()->create();
+
+        $response = $this->actingAs($author)->post(route('posts.store'), [
+            'title' => 'My first fake title',
+            'body'  => 'My first fake body',
+        ]);
+
+        $this->assertCount(1, Post::all());
+
+        tap(Post::first(), function ($post) use ($response, $author) {
+            $this->assertEquals('My first fake title', $post->title);
+            $this->assertEquals('My first fake body', $post->body);
+            $this->assertTrue($post->author->is($author));
+            $response->assertRedirect(route('posts.show', $post));
+        });
+    }
+}
+
+

Additionally, we could verify that we require both a "title" and a "body" attribute when creating a new post:

+
tests/Feature/CreatePostTest.php
<?php
+
+/** @test */
+function a_post_requires_a_title_and_a_body()
+{
+    $author = User::factory()->create();
+
+    $this->actingAs($author)->post(route('posts.store'), [
+        'title' => '',
+        'body'  => 'Some valid body',
+    ])->assertSessionHasErrors('title');
+
+    $this->actingAs($author)->post(route('posts.store'), [
+        'title' => 'Some valid title',
+        'body'  => '',
+    ])->assertSessionHasErrors('body');
+}
+
+

Next, let's verify that unauthenticated users (or "guests") can not create new posts:

+
tests/Feature/CreatePostTest.php
<?php
+
+/** @test */
+function guests_can_not_create_posts()
+{
+    // We're starting from an unauthenticated state
+    $this->assertFalse(auth()->check());
+
+    $this->post(route('posts.store'), [
+       'title' => 'A valid title',
+       'body'  => 'A valid body',
+    ])->assertForbidden();
+}
+
+

Finally, let's verify the index route shows all posts, and the show route shows a specific post:

+
tests/Feature/CreatePostTest.php
<?php
+
+/** @test */
+function all_posts_are_shown_via_the_index_route()
+{
+    // Given we have a couple of Posts
+    Post::factory()->create([
+        'title' => 'Post number 1'
+    ]);
+    Post::factory()->create([
+        'title' => 'Post number 2'
+    ]);
+    Post::factory()->create([
+        'title' => 'Post number 3'
+    ]);
+
+    // We expect them to all show up
+    // with their title on the index route
+    $this->get(route('posts.index'))
+        ->assertSee('Post number 1')
+        ->assertSee('Post number 2')
+        ->assertSee('Post number 3')
+        ->assertDontSee('Post number 4');
+}
+
+/** @test */
+function a_single_post_is_shown_via_the_show_route()
+{
+    $post = Post::factory()->create([
+        'title' => 'The single post title',
+        'body'  => 'The single post body',
+    ]);
+
+    $this->get(route('posts.show', $post))
+        ->assertSee('The single post title')
+        ->assertSee('The single post body');
+}
+
+
+

Tip: whenever you are getting cryptic error messages from your tests, it might be helpful to disable graceful exception handling to get more insight into the error's origin. You can do so by declaring $this->withoutExceptionHandling(); at the start of your test.

+
+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/10-events-and-listeners/index.html b/10-events-and-listeners/index.html new file mode 100644 index 0000000..d589d59 --- /dev/null +++ b/10-events-and-listeners/index.html @@ -0,0 +1,1060 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Events and Listeners - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + +

Events & Listeners

+

Your package may want to offer support for hooking into Laravel's Events and Listeners.

+

Laravel's events provide a way to hook into a particular activity that took place in your application. They can be emitted/dispatched using the event() helper, which accepts an Event class as a parameter. After an event is dispatched, the handle() method of all registered Listeners will be triggered. The listeners for a certain event are defined in the application's event service provider. An event-driven approach might help to keep the code loosely coupled.

+

It is not uncommon that packages emit events upon performing a particular task. The end-user may or may not register their own listeners for an event you submit within a package. However, sometimes you might also want to listen within your package to your own events. For this, we'll need our package-specific event service provider and that's what we're looking at in this section.

+

Creating a New Event

+

First, let's emit an event whenever a new Post is created via the route we set up earlier.

+

In a new Events folder in the src/ directory, create a new PostWasCreated.php file. In the PostWasCreated event class, we'll accept the created Post in the constructor and save it to a public instance variable $post.

+
src/Events/PostWasCreated.php
<?php
+
+namespace JohnDoe\BlogPackage\Events;
+
+use Illuminate\Queue\SerializesModels;
+use Illuminate\Foundation\Events\Dispatchable;
+use JohnDoe\BlogPackage\Models\Post;
+
+class PostWasCreated
+{
+    use Dispatchable, SerializesModels;
+
+    public $post;
+
+    public function __construct(Post $post)
+    {
+        $this->post = $post;
+    }
+}
+
+

When creating a new Post in the PostController, we can now emit this event (don't forget to import it):

+
src/Http/Controllers/PostController.php
<?php
+
+use JohnDoe\BlogPackage\Events\PostWasCreated;
+
+class PostController extends Controller
+{
+  public function store()
+  {
+    // authentication and validation checks...
+
+    $post = $author->posts()->create([...]);
+
+    event(new PostWasCreated($post));
+
+    return redirect(...);
+  }
+}
+
+

Testing the Event was Emitted

+

To be sure this event is successfully fired, add a test to our CreatePostTest feature test. We can easily fake Laravel's Event facade and make assertions (see Laravel documentation on Fakes) that the event was emitted and about the passed Post model.

+
tests/Feature/CreatePostTest.php
<?php
+
+use Illuminate\Support\Facades\Event;
+use JohnDoe\BlogPackage\Events\PostWasCreated;
+use JohnDoe\BlogPackage\Models\Post;
+
+class CreatePostTest extends TestCase
+{
+  use RefreshDatabase;
+
+  // other tests
+
+  /** @test */
+  function an_event_is_emitted_when_a_new_post_is_created()
+  {
+      Event::fake();
+
+      $author = User::factory()->create();
+
+      $this->actingAs($author)->post(route('posts.store'), [
+        'title' => 'A valid title',
+        'body' => 'A valid body',
+      ]);
+
+      $post = Post::first();
+
+      Event::assertDispatched(PostWasCreated::class, function ($event) use ($post) {
+          return $event->post->id === $post->id;
+      });
+  }
+}
+
+

Now that we know that our event is fired correctly let's hook up our listener.

+

Creating a New Listener

+

After a PostWasCreated event was fired, let's modify our post's title for demonstrative purposes. In the src/ directory, create a new folder Listeners. In this folder, create a new file that describes our action: UpdatePostTitle.php:

+
src/Listeners/UpdatePostTitle.php
<?php
+
+namespace JohnDoe\BlogPackage\Listeners;
+
+use JohnDoe\BlogPackage\Events\PostWasCreated;
+
+class UpdatePostTitle
+{
+    public function handle(PostWasCreated $event)
+    {
+        $event->post->update([
+            'title' => 'New: ' . $event->post->title
+        ]);
+    }
+}
+
+

Testing the Listener

+

Although we've tested correct behavior when the Event is emitted, it is still worthwhile to have a separate test for the event's listener. If something breaks in the future, this test will lead you directly to the root of the problem: the listener.

+

In this test, we'll assert that the listener's handle() method indeed changes the title of a blog post (in our silly example) by instantiating the UpdatePostTitle listener and passing a PostWasCreated event to its handle() method:

+
tests/Feature/CreatePostTest.php
<?php
+
+/** @test */
+function a_newly_created_posts_title_will_be_changed()
+{
+    $post = Post::factory()->create([
+        'title' => 'Initial title',
+    ]);
+
+    $this->assertEquals('Initial title', $post->title);
+
+    (new UpdatePostTitle())->handle(
+        new PostWasCreated($post)
+    );
+
+    $this->assertEquals('New: ' . 'Initial title', $post->fresh()->title);
+}
+
+

Now that we have a passing test for emitting the event, and we know that our listener shows the right behavior handling the event, let's couple the two together and create a custom Event Service Provider.

+

Creating an Event Service Provider

+

Like in Laravel, our package can have multiple service providers as long as we load them in our application service provider (in the next section).

+

First, create a new folder Providers in the src/ directory. Add a file called EventServiceProvider.php and register our Event and Listener:

+
src/Providers/EventServiceProvider.php
<?php
+
+namespace JohnDoe\BlogPackage\Providers;
+
+use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
+use JohnDoe\BlogPackage\Events\PostWasCreated;
+use JohnDoe\BlogPackage\Listeners\UpdatePostTitle;
+
+class EventServiceProvider extends ServiceProvider
+{
+    protected $listen = [
+        PostWasCreated::class => [
+            UpdatePostTitle::class,
+        ]
+    ];
+
+    /**
+     * Register any events for your application.
+     *
+     * @return void
+     */
+    public function boot()
+    {
+        parent::boot();
+    }
+}
+
+

Registering the Event Service Provider

+

In our main BlogPackageServiceProvider we need to register our Event Service Provider in the register() method, as follows (don't forget to import it):

+
BlogPackageServiceProvider.php
<?php
+
+use JohnDoe\BlogPackage\Providers\EventServiceProvider;
+
+public function register()
+{
+  $this->app->register(EventServiceProvider::class);
+}
+
+

Testing the Event/Listener Cascade

+

Earlier, we faked the Event facade. But in this test, we would like to confirm that an event was fired that led to a handle method on a listener and that eventually changed the title of our Post, exactly like we'd expect. The test assertion is easy: assume that the title was changed after creating a new post. We'll add this method to the CreatePostTest feature test:

+
tests/Feature/CreatePostTest.php
<?php
+
+/** @test */
+function the_title_of_a_post_is_updated_whenever_a_post_is_created()
+{
+    $author = factory(User::class)->create();
+
+    $this->actingAs($author)->post(route('posts.store'), [
+        'title' => 'A valid title',
+        'body' => 'A valid body',
+    ]);
+
+    $post = Post::first();
+
+    $this->assertEquals('New: ' . 'A valid title', $post->title);
+}
+
+

This test is green, but what if we run the full suite?

+

Fixing the Failing Test

+

If we run the full suite with composer test, we see we have one failing test:

+
There was 1 failure:
+
+1) JohnDoe\BlogPackage\Tests\Feature\CreatePostTest::authenticated_users_can_create_a_post
+Failed asserting that two strings are equal.
+--- Expected
++++ Actual
+@@ @@
+-'My first fake title'
++'New: My first fake title'
+
+

The failing test is a regression from the Event we've introduced. There are two ways to fix this error:

+
    +
  1. change the expected title in the authenticated_users_can_create_a_post test
  2. +
  3. by faking any events before the test runs, which inhibits the actual handlers to be called
  4. +
+

It is very situational what happens to be the best option but let's go with option 2 for now.

+
tests/Feature/CreatePostTest.php
<?php
+
+/** @test */
+function authenticated_users_can_create_a_post()
+{
+    Event::fake();
+
+    $this->assertCount(0, Post::all());
+    // the rest of the test...
+
+

All tests are green, so let's move on to the next topic.

+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/11-middleware/index.html b/11-middleware/index.html new file mode 100644 index 0000000..c3fb628 --- /dev/null +++ b/11-middleware/index.html @@ -0,0 +1,1072 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Middleware - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+ +
+
+ + + +
+
+ + + + + + + + + + + + +

Middleware

+

If we look at an incoming HTTP request, this request is processed by Laravel's index.php file and sent through a series of pipelines. These include a series of ('before') middleware, where each will act on the incoming request before it eventually reaches the core of the application. A response is prepared from the application core, which is post-modified by all registered 'after' middleware before returning the response.

+

That's why middleware is excellent for authentication, verifying tokens, or applying any other check. Laravel also uses middleware to strip out empty characters from strings and encrypt cookies.

+

Creating Middleware

+

There are two types of middleware: 1) acting on the request before a response is returned ("Before Middleware"); or 2) acting on the response before returning ("After Middleware").

+

Before discussing the two types of middleware, first create a new Middleware folder in the package's src/Http directory.

+

Before Middleware

+

A before middleware performs an action on the request and then calls the next middleware in line. Generally, a Before Middleware takes the following shape:

+
<?php
+
+namespace App\Http\Middleware;
+
+use Closure;
+
+class BeforeMiddleware
+{
+    public function handle($request, Closure $next)
+    {
+        // Perform action
+
+        return $next($request);
+    }
+}
+
+

As an illustration of a before middleware, let's add a middleware that capitalizes a 'title' parameter whenever present in the request (which would be silly in a real-world application).

+

Add a file called CapitalizeTitle.php which provides a handle() method accepting both the current request and a $next action:

+
src/Http/Middleware/CapitalizeTitle.php
<?php
+
+namespace JohnDoe\BlogPackage\Http\Middleware;
+
+use Closure;
+
+class CapitalizeTitle
+{
+    public function handle($request, Closure $next)
+    {
+        if ($request->has('title')) {
+            $request->merge([
+                'title' => ucfirst($request->title)
+            ]);
+        }
+
+        return $next($request);
+    }
+}
+
+

Testing Before Middleware

+

Although we haven't registered the middleware yet, and it will not be used in the application, we want to make sure that the handle() method shows the correct behavior.

+

Add a new CapitalizeTitleMiddlewareTest.php unit test in the tests/Unit directory. In this test, we'll assert that a title parameter on a Request() will contain the capitalized string after the middleware ran its handle() method:

+
tests/Unit/CapitalizeMiddlewareTest.php
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Unit;
+
+use Illuminate\Http\Request;
+use JohnDoe\BlogPackage\Http\Middleware\CapitalizeTitle;
+use JohnDoe\BlogPackage\Tests\TestCase;
+
+class CapitalizeTitleMiddlewareTest extends TestCase
+{
+    /** @test */
+    function it_capitalizes_the_request_title()
+    {
+        // Given we have a request
+        $request = new Request();
+
+        // with  a non-capitalized 'title' parameter
+        $request->merge(['title' => 'some title']);
+
+        // when we pass the request to this middleware,
+        // it should've capitalized the title
+        (new CapitalizeTitle())->handle($request, function ($request) {
+            $this->assertEquals('Some title', $request->title);
+        });
+    }
+}
+
+

After Middleware

+

The "after middleware" acts on the response returned after passing through all other middleware layers down the chain. Next, it modifies, and returns the response. Generally, it takes the following form:

+
<?php
+
+namespace App\Http\Middleware;
+
+use Closure;
+
+class AfterMiddleware
+{
+    public function handle($request, Closure $next)
+    {
+        $response = $next($request);
+
+        // Perform action
+
+        return $response;
+    }
+}
+
+

Testing After Middleware

+

Similar to before middleware, we can unit test after middleware that operate on the Response for a given request and modify this request before it is passed down to the next layer of middleware. Given that we have an InjectHelloWorld middleware that injects the string 'Hello World' in each response, the following test would assert correct behavior:

+
tests/Unit/InjectHelloWorldMiddlewareTest.php
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Unit;
+
+use Illuminate\Http\Request;
+use JohnDoe\BlogPackage\Http\Middleware\InjectHelloWorld;
+use JohnDoe\BlogPackage\Tests\TestCase;
+
+class InjectHelloWorldMiddlewareTest extends TestCase
+{
+    /** @test */
+    function it_checks_for_a_hello_word_in_response()
+    {
+        // Given we have a request
+        $request = new Request();
+
+        // when we pass the request to this middleware,
+        // the response should contain 'Hello World'
+        $response = (new InjectHelloWorld())->handle($request, function ($request) { });
+
+        $this->assertStringContainsString('Hello World', $response);
+    }
+}
+
+

Now that we know the handle() method does its job correctly, let's look at the two options to register the middleware: globally vs. route specific.

+

Global middleware

+

Global middleware is, as the name implies, globally applied. Each request will pass through these middlewares.

+

If we want our capitalization check example to be applied globally, we can append this middleware to the Http\Kernel from our package's service provider. Make sure to import the Http Kernel contract, not the Console Kernel contract:

+
BlogPackageServiceProvider.php
<?php
+
+use Illuminate\Contracts\Http\Kernel;
+use JohnDoe\BlogPackage\Http\Middleware\CapitalizeTitle;
+
+public function boot(Kernel $kernel)
+{
+  // other things ...
+
+  $kernel->pushMiddleware(CapitalizeTitle::class);
+}
+
+

This will push our middleware into the application's array of globally registered middleware.

+

Route middleware

+

In our case, you might argue that we likely don't have a 'title' parameter on each request. Probably even only on requests that are related to creating/updating posts. On top of that, we likely only ever want to apply this middleware to requests related to our blog posts.

+

However, our example middleware will modify all requests which have a title attribute. This is probably not desired. The solution is to make the middleware route-specific.

+

Therefore, we can register an alias to this middleware in the resolved Router class, from within the boot() method of our service provider.

+

Here's how to register the capitalize alias for this middleware:

+
BlogPackageServiceProvider.php
<?php
+
+use Illuminate\Routing\Router;
+use JohnDoe\BlogPackage\Http\Middleware\CapitalizeTitle;
+
+public function boot()
+{
+  // other things ...
+
+  $router = $this->app->make(Router::class);
+  $router->aliasMiddleware('capitalize', CapitalizeTitle::class);
+}
+
+

We can apply this middleware from within our controller by requiring it from the constructor:

+
src/Http/Controllers/PostController.php
<?php
+
+class PostController extends Controller
+{
+    public function __construct()
+    {
+        $this->middleware('capitalize');
+    }
+
+    // other methods... (will use this middleware)
+}
+
+

Middleware Groups

+

Additionally, we can push our middleware to certain groups, like web or api, to make sure our middleware is applied on each route that belongs to these groups.

+

To do so, tell the router to push the middleware to a specific group (in this example, web):

+
BlogPackageServiceProvider.php
<?php
+
+use Illuminate\Contracts\Http\Kernel;
+use JohnDoe\BlogPackage\Http\Middleware\CapitalizeTitle;
+
+public function boot(Kernel $kernel)
+{
+  // other things ...
+
+  $kernel->prependMiddlewareToGroup('web', CapitalizeTitle::class); // Add it before all other middlewares
+  $kernel->appendMiddlewareToGroup('web', CapitalizeTitle::class); // Add it after all other middlewares
+}
+
+

The route middleware groups of a Laravel application are located in the App\Http\Kernel class. When applying this approach, you need to be sure that this package's users have the specific middleware group defined in their application.

+

Feature Testing Middleware

+

Regardless of whether we registered the middleware globally or route specifically, we can test that the middleware is applied when making a request.

+

Add a new test to the CreatePostTest feature test, in which we'll assume our non-capitalized title will be capitalized after the request has been made.

+
tests/Feature/CreatePostTest.php
<?php
+
+/** @test */
+function creating_a_post_will_capitalize_the_title()
+{
+    $author = User::factory()->create();
+
+    $this->actingAs($author)->post(route('posts.store'), [
+        'title' => 'some title that was not capitalized',
+        'body' => 'A valid body',
+    ]);
+
+    $post = Post::first();
+
+    // 'New: ' was added by our event listener
+    $this->assertEquals('New: Some title that was not capitalized', $post->title);
+}
+
+

With the tests returning green, we've covered adding Middleware to your package.

+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/12-mail/index.html b/12-mail/index.html new file mode 100644 index 0000000..438717c --- /dev/null +++ b/12-mail/index.html @@ -0,0 +1,875 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Mail - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Mail

+

Using e-mails in your package works very much the same as in a normal Laravel application. However, in your package, you need to make sure you are loading a views directory from your package (or the end-user's exported version of it).

+

To start sending e-mails, we need to create 1) a new mailable and 2) an e-mail template.

+

The e-mail template can be in either markdown or blade template format, as you're used to. In this example, we'll focus on writing a Blade template, however if you're using a markdown template replace the $this->view('blogpackage::mails.welcome') with a call to $this->markdown('blogpackage::mails.welcome'). Notice that we're using the namespaced view name, allowing our package users to export the views and update their contents.

+

Creating a Mailable

+

First, add a new Mail folder in the src/ directory, which will contain your mailables. Let's call it WelcomeMail.php mailable. Since we've been working with a Post model in the previous sections, let's accept that model in the constructor and assign it to a public $post property on the mailable.

+
src/Mail/WelcomeMail.php
<?php
+
+namespace JohnDoe\BlogPackage\Mail;
+
+use Illuminate\Bus\Queueable;
+use Illuminate\Mail\Mailable;
+use Illuminate\Queue\SerializesModels;
+use JohnDoe\BlogPackage\Models\Post;
+
+class WelcomeMail extends Mailable
+{
+    use Queueable, SerializesModels;
+
+    public $post;
+
+    public function __construct(Post $post)
+    {
+        $this->post = $post;
+    }
+
+    public function build()
+    {
+        return $this->view('blogpackage::emails.welcome');
+    }
+}
+
+

Registering the Views Directory

+

In the call to the mailable's view() method we've specified the string emails.welcome, which Laravel will translate to searching for a welcome.blade.php file in the emails directory in the package's registered views directory.

+

To specify a view directory, you need to add the $this->loadViews() call to your package's service provider in the boot() method. View files can be referenced by the specified namespace, in this example, 'blogpackage'. Note: if you're following along since the section about Routing, you've already done this.

+
BlogPackageServiceProvider.php
<?php
+
+public function boot()
+{
+  // ... other things
+  $this->loadViewsFrom(__DIR__.'/../resources/views', 'blogpackage');
+}
+
+

This will look for views in the resources/views directory in the root of your package.

+

Creating a Blade Mail Template

+

Create the welcome.blade.php file in the resources/views/emails directory, where the $post variable will be freely available to use in the template.

+
resources/views/emails/welcome.blade.php
<p>
+Dear reader,
+
+Post title: {{ $post->title }}
+
+-- Sent from the blogpackage
+</p>
+
+

Testing Mailing

+

To test that e-mailing works and the mail contains all the right information, Laravel's Mail facade offers a built-in fake() method which makes it easy to swap the real mailer for a mock in our tests.

+

To demonstrate how to test our e-mail, create a new WelcomeMailTest in the tests/unit directory. Next, in the test:

+
    +
  • Switch the Mail implementation for a mock using Mail::fake().
  • +
  • Create a Post using our factory (see section Models and Migrations).
  • +
  • Assert that at this stage, no e-mails are sent using assertNothingSent().
  • +
  • Send a new WelcomeMail mailable, passing in the Post model.
  • +
  • Assert that the e-mail was sent and contains the correct Post model using assertSent().
  • +
+
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Unit;
+
+use Illuminate\Support\Facades\Mail;
+use JohnDoe\BlogPackage\Mail\WelcomeMail;
+use JohnDoe\BlogPackage\Models\Post;
+use JohnDoe\BlogPackage\Tests\TestCase;
+
+class WelcomeMailTest extends TestCase
+{
+    /** @test */
+    public function it_sends_a_welcome_email()
+    {
+        Mail::fake();
+
+        $post = Post::factory()->create(['title' => 'Fake Title']);
+
+        Mail::assertNothingSent();
+
+        Mail::to('test@example.com')->send(new WelcomeMail($post));
+
+        Mail::assertSent(WelcomeMail::class, function ($mail) use ($post) {
+            return $mail->post->id === $post->id
+                && $mail->post->title === 'Fake Title';
+        });
+    }
+}
+
+

With this passing test, you can be sure that your package can now send e-mails.

+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/13-jobs/index.html b/13-jobs/index.html new file mode 100644 index 0000000..56935a4 --- /dev/null +++ b/13-jobs/index.html @@ -0,0 +1,817 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Jobs - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Jobs

+

Much like the Mail facade in the previous section, implementing Jobs in your package is very similar to the workflow you'd go through in a Laravel application.

+

Creating a Job

+

First, create a new Jobs directory in the src/ directory of your package and add a PublishPost.php file, responsible for updating the 'published_at' timestamp of a Post. The example below illustrates what the handle() method could look like:

+
<?php
+
+namespace JohnDoe\BlogPackage\Jobs;
+
+use Illuminate\Bus\Queueable;
+use Illuminate\Contracts\Queue\ShouldQueue;
+use Illuminate\Foundation\Bus\Dispatchable;
+use Illuminate\Queue\InteractsWithQueue;
+use Illuminate\Queue\SerializesModels;
+use JohnDoe\BlogPackage\Models\Post;
+
+class PublishPost implements ShouldQueue
+{
+    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
+
+    public $post;
+
+    public function __construct(Post $post)
+    {
+        $this->post = $post;
+    }
+
+    public function handle()
+    {
+        $this->post->publish();
+    }
+}
+
+

Testing Dispatching a Job

+

For this example, we have a publish() method on the Post model, which is already under test (a unit test for Post). We can easily test the expected behavior by adding a new PublishPostTest.php unit test in the tests/unit directory.

+

In this test, we can make use of the Bus facade, which offers a fake() helper to swap the real implementation with a mock. After dispatching the Job, we can assert on the Bus facade that our Job was dispatched and contains the correct Post.

+
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Unit;
+
+use Illuminate\Support\Facades\Bus;
+use JohnDoe\BlogPackage\Jobs\PublishPost;
+use JohnDoe\BlogPackage\Models\Post;
+use JohnDoe\BlogPackage\Tests\TestCase;
+
+class PublishPostTest extends TestCase
+{
+    /** @test */
+    public function it_publishes_a_post()
+    {
+        Bus::fake();
+
+        $post = Post::factory()->create();
+
+        $this->assertNull($post->published_at);
+
+        PublishPost::dispatch($post);
+
+        Bus::assertDispatched(PublishPost::class, function ($job) use ($post) {
+            return $job->post->id === $post->id;
+        });
+    }
+}
+
+

As the test passes, you can safely make use of this Job in the package.

+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/14-notifications/index.html b/14-notifications/index.html new file mode 100644 index 0000000..2d5c963 --- /dev/null +++ b/14-notifications/index.html @@ -0,0 +1,883 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Notifications - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Notifications

+

Notifications are a powerful tool in Laravel's toolbox. They provide support for sending notifications to an array of different services, including mail, SMS, Slack, or storing them in your database to show on the user's profile page, for example.

+

Creating a Notification

+

First, to start using Notifications in your package, create a Notifications directory in your package's src/ directory.

+

For this example, add a PostWasPublishedNotification.php, which notifies the author of the Post that his submission was approved.

+
<?php
+
+namespace JohnDoe\BlogPackage\Notifications;
+
+use Illuminate\Notifications\Messages\MailMessage;
+use Illuminate\Notifications\Notification;
+use JohnDoe\BlogPackage\Models\Post;
+
+class PostWasPublishedNotification extends Notification
+{
+    public $post;
+
+    public function __construct(Post $post)
+    {
+        $this->post = $post;
+    }
+
+    /**
+     * Get the notification's delivery channels.
+     *
+     * @param  mixed  $notifiable
+     * @return array
+     */
+    public function via($notifiable)
+    {
+        return ['mail'];
+    }
+
+    /**
+     * Get the mail representation of the notification.
+     *
+     * @param  mixed  $notifiable
+     * @return \Illuminate\Notifications\Messages\MailMessage
+     */
+    public function toMail($notifiable)
+    {
+        return (new MailMessage)
+            ->line("Your post '{$this->post->title}' was accepted")
+            ->action('Notification Action', url("/posts/{$this->post->id}"))
+            ->line('Thank you for using our application!');
+    }
+
+    /**
+     * Get the array representation of the notification.
+     *
+     * @param  mixed  $notifiable
+     * @return array
+     */
+    public function toArray($notifiable)
+    {
+        return [
+            //
+        ];
+    }
+}
+
+

Testing Notifications

+

In the test:

+
    +
  • Swap the Notification facade with a mock using the fake() helper.
  • +
  • Assert no notifications have been sent before calling the notify() method.
  • +
  • Notify the User model via $user->notify() (which needs to use the Notifiable trait).
  • +
  • Assert that the notification was sent and contains the correct Post model.
  • +
+
<?php
+
+namespace JohnDoe\BlogPackage\Tests\Unit;
+
+use Illuminate\Support\Facades\Notification;
+use JohnDoe\BlogPackage\Models\Post;
+use JohnDoe\BlogPackage\Notifications\PostWasPublishedNotification;
+use JohnDoe\BlogPackage\Tests\TestCase;
+use JohnDoe\BlogPackage\Tests\User;
+
+class NotifyPostWasPublishedTest extends TestCase
+{
+    /** @test */
+    public function it_can_notify_a_user_that_a_post_was_published()
+    {
+        Notification::fake();
+
+        $post = Post::factory()->create();
+
+        // the User model has the 'Notifiable' trait
+        $user = User::factory()->create();
+
+        Notification::assertNothingSent();
+
+        $user->notify(new PostWasPublishedNotification($post));
+
+        Notification::assertSentTo(
+            $user,
+            PostWasPublishedNotification::class,
+            function ($notification) use ($post) {
+                return $notification->post->id === $post->id;
+            }
+        );
+    }
+}
+
+

With the test passing, you can safely use this notification in your package.

+

Custom Notification Channels

+

Additionally, you may configure the channels for the notification to be dependent on your package's configuration file to allow your users to specify which notification channels they want to use.

+
<?php
+
+public function via($notifiable)
+{
+    return config('blogpackage.notifications.channels');
+}
+
+

Finally, add the notifications.channels sub-array entries to your configuration stub file (see the Package Configuration section).

+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/15-publishing/index.html b/15-publishing/index.html new file mode 100644 index 0000000..a95fca9 --- /dev/null +++ b/15-publishing/index.html @@ -0,0 +1,881 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Publishing a Package - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Publishing

+

Once satisfied with its functionality, you might want to share your package with a broader audience. This section will explain how to publish your package to the Packagist repository.

+

If you haven't already pushed your local git repository to a repository host (GitHub / GitLab / BitBucket / etc.), you should do so now. It is advisable to create an online repository with the same (package) name as defined in your composer.json file. Try to match these names, for example, by renaming your package to follow this convention.

+

Given the example below, consumers would be able to require the package using composer require johndoe/blogpackage and find the corresponding repository at (if using GitHub) github.com/johndoe/blogpackage.

+
composer.json
{
+  "name": "johndoe/blogpackage",
+  "description": "A demo package",
+  ...
+}
+
+

The next step is to publish the git repository of the package to Packagist.

+

Publishing on Packagist

+

To submit a package to Packagist, first create an account and then use the Submit link and specify the public repository URL to the git repository of your package.

+

Packagist will now host a so-called dev-master version of your package. Although anyone can access this package now through composer require [vendor]/[package-name], the consumer will receive the package in its current state on the master branch. This means that all changes to master immediately take effect when consumers run composer update, which might lead to breaking changes. For projects which define a minimum-stability of "stable", this means that Composer will not install your package at all.

+

To prevent introducing breaking changes, while still free to refactor our package, the convention of semantic versioning is used to discriminate between versions and thus compatibility.

+

Releasing v1.0.0

+

Releases (and thus versions) of your package are tracked through tags on the corresponding git repository. There is currently a dev-master release available through Packagist, which always points to the latest commit on the master branch of the repository. However, ideally, we would like to serve the package in a fixed state to the consumer. This is where tags come in, which point to a specific commit.

+

To release version 1.0.0 of the package, create a new tag in your git repository. If you're using GitHub, you can visit the "releases" tab and "Create a new release". Provide a "Tag version" and "Release title" of 1.0.0 targeted at the current state of the master branch (serving as a pointer to the latest commit). Additionally, you might provide information regarding this release in the description. After clicking "Publish release", Packagist will automatically update and reflect this new version. By default, consumers requiring the package without specifying a version will be served the latest tag/version/release which in this case will be 1.0.0. You'll notice when you require this package in your project, the version constraint in composer.json will be ^1.0, allowing composer update to download versions up to 1.x (allowing minor and patch releases) but not 2.x (major release, containing breaking changes). See the section below on semantic versioning for more information.

+

Releasing a New Version

+

As you make updates to your package, refer to the semantic versioning while drafting new releases. When you create a new tag in the associated git repository, Packagist will automatically be updated.

+

Semantic Versioning

+

This section will provide a short overview of how Semantic Versioning is used and applied by Composer. To get a more in-depth overview, check out semver.org.

+

A version consists of three parts: MAJOR.MINOR.PATCH. Version 1.2.3 of a package could be referred to as a package on major version 1, minor version 2, patchlevel 3.

+
    +
  • +

    Major: contains breaking changes, compared to the previous release. Consumers of our package need to make adjustments to their existing code integrating this package.

    +
  • +
  • +

    Minor: contains added functionality (e.g. new methods) which do not break existing functionality. Consumers of our package do not need to make adjustments to their existing code integrating this package.

    +
  • +
  • +

    Patchlevel: contains bug fixes, upgraded dependencies, etc. but does not contain new functionality. Consumers of our package do not need to make adjustments to their existing code integrating this package.

    +
  • +
+

Composer

+

PHP's package manager Composer uses the composer.json file to identify which packages should be installed and additionally which versions of a package are compatible with the project it belongs to. It keeps track of the versions through the package's tags on the corresponding repository.

+

From the Composer documentation:

+
+

Composer first asks the VCS to list all available tags, then creates an internal list of available versions based on these tags [...] When Composer has a complete list of available versions from your VCS, it then finds the highest version that matches all version constraints in your project (it's possible that other packages require more specific versions of the library than you do, so the version it chooses may not always be the highest available version) and it downloads a zip archive of that tag to unpack in the correct location in your vendor directory.

+
+

Version Constraints

+

Composer supports various version constraints, of which the ones using semantic versioning are the most used as most packages implement semantic versioning. There are two distinct ways to define a semantic version range:

+
    +
  • +

    Semantic version range (tilde "~"): ~1.2, translates to >=1.2 <2.0.0. All packages of version 1.x are considered valid. A more specific range ~1.2.3 translates to >=1.2.3 <1.3.0. All packages of version 1.2.x are considered valid.

    +
  • +
  • +

    Strict semantic version range (caret "^"): ^1.2.3, translates to >=1.2.3 <2.0.0. All packages of version 1.x are considered valid (since no breaking changes should be introduced while upgrading minor versions) and is, therefore, closer following the semantic versioning system compared to the "tilde" method mentioned above.

    +
  • +
+

Semantic versioning allows us to specify a broad range of compatible libraries, preventing collisions with other dependencies requiring the same library and avoiding breaking changes at the same time.

+

Alternatively, Composer allows for more strict constraints:

+
    +
  • +

    Exact version: 1.2.3, will always download 1.2.3. If other packages require a different version of this dependency, Composer will throw an error since this dependency's requirements can not be satisfied.

    +
  • +
  • +

    Defined version range (hyphen "-"): 1.0 - 2.0, translates to >=1.0.0 <2.1. All packages of version 1.x are considered valid. A more specific range could be defined in the form 1.0.0 - 1.3.0, which translates to >=1.0.0 <=1.3.0. All packages of version 1.2.x will be considered valid.

    +
  • +
+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/16-assets/index.html b/16-assets/index.html new file mode 100644 index 0000000..c53441b --- /dev/null +++ b/16-assets/index.html @@ -0,0 +1,861 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Adding assets - LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + + + + + + +

Assets

+

You'll likely want to include a CSS and javascript file when you're adding views to your package.

+

Creating an 'assets' Directory

+

If you want to use a CSS stylesheet or include a javascript file in your views, create an assets directory in the resources/ folder. Since we might include several stylesheets or javascript files, let's create two subfolders: css and js to store these files, respectively. A convention is to name the main javascript file app.js and the main stylesheet app.css.

+

Customizable Assets

+

Just like the views, we can let our users customize the assets if they want. First, we'll determine where we'll export the assets in the boot() method of our service provider under the 'assets' key in a 'blogpackage' directory in the public path of the end user's Laravel app:

+
BlogPackageServiceProvider.php
<?php
+
+if ($this->app->runningInConsole()) {
+  // Publish assets
+  $this->publishes([
+    __DIR__.'/../resources/assets' => public_path('blogpackage'),
+  ], 'assets');
+
+}
+
+

The assets can then be exported by users of our package using:

+
php artisan vendor:publish --provider="JohnDoe\BlogPackage\BlogPackageServiceProvider" --tag="assets"
+
+

Referencing Assets

+

We can reference the stylesheet and javascript file in our views as follows:

+
<script src="{{ asset('blogpackage/js/app.js') }}"></script>
+<link href="{{ asset('blogpackage/css/app.css') }}" rel="stylesheet" />
+
+

Vite config to build the package assets

+

Sometimes we want to build the assets using a bundler like Webpack or Vite.

+

The latest versions of Laravel switched from Webpack to Vite, and it would be nice to use the same bundler for the package +to support all the hot reload and dev features of Vite.

+

To do that we need to add Javascript packages using NPM.

+
    +
  1. If you don't have a package.json file already, run the npm init -y command to create one.
  2. +
  3. Install Vite and the laravel plugin npm install -D vite laravel-vite-plugin.
  4. +
  5. Create the same structure for the resources as a Laravel website.
  6. +
  7. Then create a vite.config.js
  8. +
+

vite.config.js file content

+
import { defineConfig } from 'vite';
+import laravel from 'laravel-vite-plugin';
+
+export default defineConfig({
+  plugins: [
+    laravel({
+      hotFile: 'public/vendor/blogpackage/blogpackage.hot', // Most important lines
+      buildDirectory: 'vendor/blogpackage', // Most important lines
+      input: ['resources/css/app.css', 'resources/js/app.js'],
+      refresh: true,
+    }),
+  ],
+});
+
+

package.json

+
{
+  "private": true,
+  "type": "module",
+  "scripts": {
+    "dev": "vite",
+    "build": "vite build"
+  },
+  "devDependencies": {
+    "laravel-vite-plugin": "^0.7.8",
+    "vite": "^4.3.9"
+  }
+}
+
+

Then you can use it like this in a blade template.

+
{{ Vite::useHotFile('vendor/blogpackage/blogpackage.hot')
+        ->useBuildDirectory("vendor/blogpackage")
+        ->withEntryPoints(['resources/css/app.css', 'resources/js/app.js']) }}
+
+

This will then let us use the Vite dev server in a local project when developing the package. +We can also build the assets using Vite for production.

+

For development, we will need to create a symlink of the public/vendor/blogpackage folder

+

Example of a symlink command mklink /J .\public\vendor\blogpackage .\vendor\johndoe\blogpackage\public\vendor\blogpackage

+

And start the dev server of both projects, the laravel app and the package.

+

For production, we will need to publish the assets

+

Add this to your ServiceProvider

+
$this->publishes([
+    __DIR__.'/../public/vendor/blogpackage' => public_path('vendor/blogpackage'),
+], 'assets');
+
+ + + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/404.html b/404.html new file mode 100644 index 0000000..718cb25 --- /dev/null +++ b/404.html @@ -0,0 +1,619 @@ + + + + + + + + + + + + + + + + + + + LaravelPackage.com + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+ +
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ +

404 - Not found

+ +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..cdd6abe --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +www.laravelpackage.com diff --git a/assets/favicon.ico b/assets/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..76aaaab7396233e49ff6b5dd499cc3206caca91a GIT binary patch literal 15406 zcmeHO30PIf^?&f#c|4ZKBKszSY_bS~BKsmc0YNqeMFI-qQWg~uP29ek#H4AOv`rJ6 z#Kf50n8g|sP12CXEs2^&iBX$2+L$lmzeXFt-~XHo_w@pg2Pg*nwex+$%)9r_{C+cc z?wK>^9Aq*bnOtUJA*0ewR;?$Kh0A0zH@Dv3K9(}sV{|PjsPFzHnd}1_naqctp(fO# z_c|4$Njmg!rln74yNz#XJJ%`mwc(PkOeW8FN|}2!`jK|beCR!7YFXA3Mf}HmtWU>9iPXW$%JbMJ*xs_k=v(y8Pn*Zv>yXV%N zPI&5sy4_Ii#eQbLd;-36YEE-oJriYH>Z|`iz>@or^KMVSJ_h28?ZwhSp={&!@qhdr zev7xjr{XT^(G3&otqSJPKYt1@Aj5psR0qp8KNAeGZps*Oax%jZD7x z$gM@n^Jg{Ujs#!iQTXOr_!iZI`{ceUGseJVM;A8h8Jk`9Dr&&2SH9JXI~shENAbRI z5m4R$eN(f`j76C-g+%YF)4O~P(so}Q5$=uPi#+BYxQO7YHM~ALMSML|^Xp=tyidmb z?qlNd@BLDJuW$bse`|aHBHmD?fx`UyK>YCaFTi|a5Ntx@k@e0`{q}4TQ(BHSzQ^o3 zME~Z`nDx@%;90O7rcM))eW1VYaVznYcYY1GoN5@^IAZd`yOI9J4_ep5SdU*dB^v%U z_aNg>|ECpKoP)8(7yBJ)ITZf9KX;z=3o|%T35$oXYk_>a#Nl3c?r9pFXtMO-NzKptse@8~r<8TO%A9MW3d)|c7 zGZ0o@fkfvHp{=)m1wr~Y%PXJ?upY`@N1U39tkb^$6aN>X*pR+%@X?&)j@Yr?ldhJ@+m= zqEldJ>xVhHPhrEFE^Jy0A>Z9{4LKPPL#cFxb66BiCpaN&*=Ce|&?)ec;>(Rqulvkz zgNcm;!pdq<*M3$jZpo8-;4&>5j`pD_o$~@Vw)LoS*EL^3M#@%LShynKj#5;=bzJC+ z`wT0ug{iFrLaN)KN0{RNOJ%3R)?Vv8x170-f=6G5!;~<%I?q6P$?Jr9U5(pDXRDNi zjZj+9+!a-#_T3JRW8inmSd1yb7xXU!h1uoEss=1S_^rBa3!SxcfBg(>eF8DjBN3J5 z@2D|(u3H-~B0i=SW)?Je<#ky4;W>3%ab0rBeRAK7LAd?&F9{Dp|I{-!`JU%0ebaBD z^6}Bj{Gp?JF2FY*Q-c>kY3GFa zm7Brme<_|==l9FstnSU7KL+yXJ%7n$9TVfyG|C~CO)R5y#`gR*kcayGIWaC3EOR+? zogTcE=g)yW#_Rk&kjH=gZ?=<=iB?ul`4-qosMjGA+k$K<=Tbh{m$}Z@_}=ZBn42r* zTFP%5D6Oy3*&2G34K1y&^0mHu{LJk(4ino+^wrzvt+q8f5Y_{f&&mx=y1WYOk?`bkWbV7#kGFUZ)Wlyr@6G?@D)L@B zj)1aywn24qpM8BZ##kmp>WsWhvb)J%c*&S_ShuXIVQpxd){n@2U|G25EPQ5H!IX3W zvL9VytUgS}zR{#l4QEomUq@H>w9?%l-eu$m_`@M&@9)+)-{QQBrMCGWI0inC=j=Fy zpvo3lPV@(3686?U4$NgViMNjDD4#b{P3Q?&vX%TrXNY&#h@|gx7kn0wA7vO@lgL$5Ihy$w`Af@r@Be_1MQfpS z@q*mI@EUR3*2j^#N>d2^*rubWe^C_>g@D@okhG&?SUaI6&eCf)%U>7^*&hmC>p(>P zeXt9Tf-Z4nu9TUxm{yYv=$X3iS){&lUaM_U%5S*(nDFoO(46Le+^4`0D2 zR6@SsilaU1^O}^iw0^tr&))tq>6rGgR{4=_-$BrCrjedgu)9O6pY3+zA2WSD3bWt9 zWUm6~85+Z!^v&d7?Hcku+;036qwf`bYV22Izn03<2Yw|>$CZEDtKX^paHadd)5t|! zKT`fxbH5<}WYW0u58v>ju>a}m8Bm;x0c--MA$H?-ieu~lZQeHgNw4GmBKw_dC};=l z0>cGA5c_2~yM)h#p_w`PB7=}{@AD|7SPzyb`%X?j`5Uo z9IC#w{Tx!(J^C<_VNNnIPdK|M>>QB1W-IDGID_V|x<`Q{jHjtPjWZH7WM0ZKDRgoRWR?^A;~b38*! z<98@4-VIlm8N#0C5IB|M0Cr&YscTy2i8(Ph=Ez(rOYK*J{g7>Q9FvjMdLL@v`wFcT z+n|XvU*lNsc{}%m4{w zo@`?tXuoCt(j?l?FHlTK4}S~%KJKJ={J^|27%MDcW$A&$xOKvM5V?xwhBe(-wc;Bg z=0~OSgo&jJo-wn)aXB2XGSoX2-m9?Y&-AW&!X{E2r_8qe;q2#9{#+OR7hBnvz} z;(p>WvyTgNx{;*zA5r5=`uZja4lEt?eKt2-Kvd)k+DF}BXlgEe7aa4k@-J7k&Nt6F z?<+h`rM>f5`j0e?m3?cy{yVurS7cZXsu#SE#MrfhKEN_=N`5(N_G{PUm^1I+97DzX zx&E#7-whlG`#5|3r!v`Lxm>@S{L*j?iNL()4v<{ZzF)AsEq!{Qpg);A4)UM=+Gc)JR9QMau)O=X#!i9;T z37kk-upj^(fsR36MHs_+1RCI)NNu9}lD0S{B^g8PN?Ww(5|~L#Ng*g{WsqleV}|#l zz8@ri&cTzw_h33bHI+12+kK6WN$h#n5cD8OQt`5kw6p~9H3()bUQ8OS4Q4HTQ=1Ol z_JAocz`fLbT2^{`8n~UAo=#AUOf=SOq4pYkt;XbC&f#7lb$*7=$na!mWCQ`dBQsO0 zLFBSPj*N?#u5&pf2t4XjEGH|=pPQ8xh7tpx;US5Cx_Ju;!O`ya-yF`)b%TEt5>eP1ZX~}sjjA%FJF?h7cX8=b!DZl<6%Cv z*G0uvvU+vmnpLZ2paivG-(cd*y3$hCIcsZcYOGh{$&)A6*XX&kXZd3G8m)G$Zz-LV z^GF3VAW^Mdv!)4OM8EgqRiz~*Cji;uzl2uC9^=8I84vNp;ltJ|q-*uQwGp2ma6cY7 z;`%`!9UXO@fr&Ebapfs34OmS9^u6$)bJxrucutf>`dKPKT%%*d3XlFVKunp9 zasduxjrjs>f8V=D|J=XNZp;_Zy^WgQ$9WDjgY=z@stwiEBm9u5*|34&1Na8BMjjgf3+SHcr`5~>oz1Y?SW^=K z^bTyO6>Gar#P_W2gEMwq)ot3; zREHn~U&Dp0l6YT0&k-wLwYjb?5zGK`W6S2v+K>AM(95m2C20L|3m~rN8dprPr@t)5lsk9Hu*W z?pS990s;Ez=+Rj{x7p``4>+c0G5^pYnB1^!TL=(?HLHZ+HicG{~4F1d^5Awl_2!1jICM-!9eoLhbbT^;yHcefyTAaqRcY zmuctDopPT!%k+}x%lZRKnzykr2}}XfG_ne?nRQO~?%hkzo;@RN{P6o`&mMUWBYMTe z6i8ChtjX&gXl`nvrU>jah)2iNM%JdjqoaeaU%yVn!^70x-flljp6Q5tK}5}&X8&&G zX3fpb3E(!rH=zVI_9Gjl45w@{(ITqngWFe7@9{mX;tO25Z_8 zQHEpI+FkTU#4xu>RkN>b3Tnc3UpWzPXWm#o55GKF09j^Mh~)K7{QqbO_~(@CVq! zS<8954|P8mXN2MRs86xZ&Q4EfM@JB94b=(YGuk)s&^jiSF=t3*oNK3`rD{H`yQ?d; ztE=laAUoZx5?RC8*WKOj`%LXEkgDd>&^Q4M^z`%u0rg-It=hLCVsq!Z%^6eB-OvOT zFZ28TN&cRmgU}Elrnk43)!>Z1FCPL2K$7}gwzIc48NX}#!A1BpJP?#v5wkNprhV** z?Cpalt1oH&{r!o3eSKc&ap)iz2BTn_VV`4>9M^b3;(YY}4>#ML6{~(4mH+?%07*qo IM6N<$f(jP3KmY&$ literal 0 HcmV?d00001 diff --git a/assets/images/social/01-the-basics.png b/assets/images/social/01-the-basics.png new file mode 100644 index 0000000000000000000000000000000000000000..4e421c6f6656fea0dfb9c5b263ae6a28610c675b GIT binary patch literal 57820 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 iCD%l6S{tM5j{y(lQ+t`nsHaO5}8;MlThj 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 Axc~qF literal 0 HcmV?d00001 diff --git a/assets/images/social/02-development-environment.png b/assets/images/social/02-development-environment.png new file mode 100644 index 0000000000000000000000000000000000000000..640f0e2488368a1a35adb669fc01c31a6f7c697f GIT binary patch literal 54089 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/03-service-providers.png b/assets/images/social/03-service-providers.png new file mode 100644 index 0000000000000000000000000000000000000000..24c112e2400d937f442f53ee6e86aba0fce321a1 GIT binary patch literal 50329 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 W{WeU58zr=lxi!>uRm)ZG1pN)eBcaCt literal 0 HcmV?d00001 diff --git a/assets/images/social/05-facades.png b/assets/images/social/05-facades.png new file mode 100644 index 0000000000000000000000000000000000000000..a9a7fd72fb5d82426c81b4fcc05b294063b56d7d GIT binary patch literal 44801 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/06-artisan-commands.png b/assets/images/social/06-artisan-commands.png new file mode 100644 index 0000000000000000000000000000000000000000..f4f9355c2d2eca17351d3f6fb7f234d9b3488817 GIT binary patch literal 46659 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/07-configuration-files.png b/assets/images/social/07-configuration-files.png new file mode 100644 index 0000000000000000000000000000000000000000..d88e3dd460548bd48ec6d36b5a8e418c91f000be GIT binary patch literal 54715 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 literal 0 HcmV?d00001 diff --git a/assets/images/social/08-models-and-migrations.png b/assets/images/social/08-models-and-migrations.png new file mode 100644 index 0000000000000000000000000000000000000000..32b2aed56fddcb405f528ec0f21eb642b27a83b2 GIT binary patch literal 56269 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%0DCD61!-Jx0w1<-F$^$(IdhPj zDuUOk8cW&iXkf$kih5hNYG5>~=nxxh$y|CUCB`WcXeTv92<`IOnUTcN`vQ~p(d&*) zAiW^vpIr-^!}5{Eo!tP?QPy1JJ7}NsKlANOR>=U*e&JhiF9#bS0Pu_TD# z(ahHR1qh|N1;UZukIV?DQl5x(DR{rrb<|4&~DuRx>l9hoOvK$rdeg{p|Yg zJ5RW2>}Iqmyg1B!$nVpx$hPbA5UY(Xj|@>``Qxx1A%&h_duqsW>`)C=?Q*0Ulr&b+ z_nj`w2ox_-WT}w*<76{X;;?7x-x*kY@k6KDB)h6V(1WkuWF?~)d}if4nMp=scRFHU z@{sX@LckYV`2zqx9j|H|Q$!RjU+^94N*n9d$}mC*w2bcZ|NRYuAZPueA4DJo&0`f} zdsCR3`tdPMiis(#-?OxTTsUPY4l|2wP~K))CAmhlf8KGnK3q~{gCpDFW6b1p%B`ODl))_vnLV8t3=dX{S%v5pzhCEc{r4{q*5quu_hh{ z{`;8?gH&rW`F}%-kzz7!WJ?J_FJD*N-gx7h7mWIb?j_!JU)R4&lIe(u%RD z{y*%!RX|m37d5&!-Hp;9sf2WQ3L+xiEg`L>bhm&gf`D{yQo2h7>Fx%lOX*FVXZwEd z_x=CHxjUD~3oj7&TI<=*dgh#Cjxi>e|7*POs>`8FyQ*FbzM~Z3|I@%D9yvGpO^D({ zhSC9%kLYcxeQavWW;kyGdqy#RM9{q`|>hjEh`C zpcHq1lt=B`!NQ6v1J%%W@IOn;|H%*rT~oNGR%_|W{-0w4n|+-*9JOS|5BkO6o7uwF zcd|)Q)K50SFnTt_pb|jGeHBQ}yGiry0$j7J%n+RUm2QNyr_yrn-WYETZ@@{ZCCE(u zfKRL|V6owB*GU%@2nAo}S6u(?Dn%6Le^}pPK=deqe?-)jUsxwUt!zWQhFKG?_wVC& zSn7y`INI>SD2B&*d3d3&#VMLzQZTI3hq5)jf%ee1fzsgI=%~ISEk3HyF^>N0Zg70| z2buaDlE+{#jQ}Rxov{V}&W)L87}U@^{_mN%^$S=@Joq)0L^yk+M&fjh70MzE2L-^3D}lQ@)%qCI-NVj2T5=olrjm$zbowOl0Z*Puz0SAIFP$3 ztuvh`pE#$@fkzd8f_=Q;U$_2+Je2$n$%)y^lsJ0CA<%T60gLJX9WE1}X)cqxYIj8ZEAk_+CkG ztA{E_hJpc!N<;W)2sul4&3(Z7M5Xn5^d6e%L8w9{y$GYSP2$6Bd5&p#RO_#Wj}Jw# z5S|-bLhedkXD$>18QQPuI4`j8hXhxX5gP40wNX=+1N^!lgh=4ClP#fWqo`Vy4dy>&%(0(sw2`*nOut*vRMKPl=0AneHXQV^uU@k2Q#0EuD83yJ)M4; ziSY>GT7>gU>4Uf&k#}(!zVmZsXQop5;%MF%@#Q@K`N?x(VWOgnt=?7?C8%R<*-rhP zy9Eo4nGAa7tFoxx-AF#Ht!b(6L9$P!&ZQw-?29X>XLzJsVM^uawMs+^FMAO!NOifN z)Xg{v0XD=h1fR-ml3?bfHu$9*WUu#hVYSY!T6LOD>s2vP}K?{kuvFgE(0>C3sYaSg~ zq2v8TzpFCQI8*~K>;`p*skB^ysF{N#QeM+Nge8Pha?%77NLVGHhvlnOm|l5N~UMDmFeE z0pu{nRId5m5uRlq2vutZ&42l^Ea`5xhmKK-W-CPz9PP3*DDd-3;kB160zDam^<>>E z^hT{KLzOOOiW$e9w^Z+a5NB|tS!8tK5%tlipTUw2b9t_QRMEdqcNXMAWa6aJFWU(YO@x4N6pk5{SP z0C|9nDtD!(S)fM#+PQ!fkT}eK-4ZbK`;nzQUN`YoiNH`V^x%M&(N+6?4dHfi0I6b1 z0Ot_<3OLRMuRe40VBDa=^L`|Ajl>k(n?X{4t3&+veI}v$6|;oMm~W0mNZ7q;ndUcT zboy`0IN8;>EDyMSYA#S3Yo7*qschF5?|AOiOzJk>ut$mebUjp50DD#1HKV}Hc7mz! zFx>X>W4-%y*^rEU)GKvvH}Mt?%Wo+yltLm}rU%lfQ?|+aVvV1n<6-(TM8-z%sUEHT zS^X3chG#{7!H0p|#WuDsf1MNe=;83b(&9rX?-PR{8e^kfVAS-C;$_$>TH(D~3KSm! z_KNBEf&*XK_`Dl~xpT{Rqc=s!kB6jO6gy#dmfxb2x%<>#Nft;&fz1r_cLp*|G=YR; z&!*z#wEw(gLBkV;*hI8&lpk%km_S}9&85#~uVJrI={YVuL#@*$SB=PwJ;oe7naD~b z1{(1ZzZV(j+j$gK90Ju2(0zHK$@Km+{e$lCbgjf=CLH)>a!|AYwYG3|@L;$;<&l@a zhE)E-Mc+dxu_Hgaed2dPcAII}izple(`SaX>BH00Btyb;H!^RXYu>cb>&)>W3 z#5;1@`!^HSe}iY}r$?m>w&EAio#tv3wME)co7mr%!g4MoK!O`3!pR|BiY^)OsMLbs z>?6W-59ymNLB(xult$>1%I%TcWP6{nhm`DcK0Zex{}X&A{PDXMc9u)2_hdH!1AH7UMTL8<7sxwaF~Lof{8vm&RlA85LCN zq;1skCw&g`4F5yY>l+&*QNFgvgFHt*EO(Ol{QEQrAaJthKZS${C#O8vOb_(e%iv_7 zA^-($&QQPdd*?$>gw<3>`q*F)V*POg@J!F3hj4vVbJjkGcZ}t!4kp#x7nd_XA#8G_ zy13@@&9iM@T`)FALeI^6ygTxj9b)Ekyr5Lt8Y;l5?EA89=hop< zU*oU0(|X_IpJ`zwg8k)emvdB)iUGNuoDP|9dyEOoKj8E@cFGfO!eSRGF0j){`FZ$|^!T>%^;@3up6Bfd*hFc*QwwHsmknfFSj-xwnRb&hY|fgVGJm1i%c4hhCf+y&uk0*JM`Ie*d=}pQUi&A|-sM7kQejCkd9=3LeYqbequg|u-V>d0>SrDJ*!Om>QD}f9 z-cP$3e`(qD!BgP~9)v`cUfeiDH*|iF1D7cSsU*ey@6I`5V#%d<+^~zFywrC)#9Dj_ zAe4xoDWvsQ`ySa~nZ)&g8x+u^;kA8Ip&gSuYZTd-VZt>SGNk51^Cs<7%n3*;CW!ZG z>4_|w{~{E>>BlwqK(AAS8mGQH{MKaJt09`O3jg85*IphQw6E-rnxMY#WqU*^sV^Ke zf_x0Rr=z(r$Pyl}Up`luz*XZczR&Y6g8TAZUy@ei=t@7lCo|KmB;xg#7_ueJv$s*R zxKa1cLp}kb$e1rqUH!`Tek#Jz zAT+f1Yb}=8X~CzfDig(8|%VtUV_lrUQw0 z8s~of0olVxXKh+ImK#$s`t(4@Ri)|4Uks!H2*9OErcq?>KXqf5Jh-8~Y(-Ji$?cAi z;P~L@5McS9aN<`#QUF~4>NcGO*V8r-S2^x&h8OT7>2UII_3Mrn1wI*`T4v*dDl#Fo zfhMggJvlDQY}6aZu$iKDV86gFL9_r}Tjaorzq#1BbI7C4I5_cpI^G;yR^-~+n4{;3 zP}=*5Dze4G>bD+1jyAGYdIoM;td_zT>r94i$Tog{vs>d7e}K4%ic&#PcV$N>@ViGuInV{ zUl)(mNy$zIg3R)D*|!YEgDXa8{dC-|JTQll2-VT?X&S!l?@Lx-CsJ#zRO1*eq4Qd{TVIbGyIFt zVUKmAU$sY1BlF)wF(N_?Gfq96BJ(=Hd(;e79&Zswng!1AtNb4qqv1v5tth%byQ)nE zooUCuo%inmFA-Ibi{)gmYXx**y^e@aTT&N z?n@ak4da>0{hLk@zGp!s3F-%mKqz?o0Myll?WGwd9y4ODd$Z)YjHvl{c?7_rUZ zE_hF!-+WDJT-8^>Q5@B|Dy@tQ&V@Gv3r!zdhK+zK^5pE9QdTTdHp+tMeJ#wU7 zuDOifC`qFZ{8sMZRmUHr7Kj#iJA@#vO7Dxs+gaU_)Fcd_`%>2Dzb5r=;A$sra^XMu zOq23rOTnd8?#VdHG7WLbj(C%H&4}~)+ht^Sr<9-5|86FhG#N6wgR8g;o_7`g$mD9q zns(6k2%JOWLZ&CAhO9cJgag}p+sE_?z9mO$)lm;pCH;EcuNJV`fRwU&T5W!=)nAST zSNBb|SJ!=2ue>Xo$3wX74YQtob?c+_l~*YrOHQAZsz+)*`0v=I z@wRRfb#~z1+}>&&2IB{adRa~`9e~CJ9=>@~8JaBz(H0*A=3A1zSg_jTUGEC;kvdA- zcjEWpTfV#GH8Q=w;&|mnYSWH=UraS7Kuw7yDYTu$bFK_SiLolJIySd;pOfmQYn%o; z#>Sbwa1(gcWSK~I=zzqEuL+A&ev)e`OIB@?M&)k@kxz}UG956@@!3su9FYT5{6e0mU+8ZmLk5Y( z;)p1{g|+_Z@7~OWzW`zFN~~Toz95Scf^1|$smr1tiZ%X5c5wMts?;v};tUVlDz0{= zLmMrFji|^9YbvBE#T60w=;@1byg{fd_`X$j#s;h_J>IzjWhvtm3?YrZw-u6|;WVtk zVez4(f(oH@NxSXdlYp9YpOr9o_>Jyn6HLG zE+aJ+eGJGU@it!d9_4hRLgtv20N%Dbxx|bBu|PdOSfFJu4h!AqC&H<;f;!km+oaHC znUw@wsnHXaAOS~>5+2h8l;=$)LI1l~^(r z>YehDKCMQx<`*_;Zk-B@LraBSi~SQc7pBMD*g5B1?SbA1ILoocH3fZ5$pv_!w93m9 zCptJaB*DXW>@P$RQ3xz_kaE9%-{L(N9c`@j=zka28!wKgdqde5aq@K({yv(b_KTaz z8PNcZ?kMvzx`uTWl3;S<%9EUpIl}aF;i%5$__KGBK2A7p!fr-UoP)zRLKR)?%sT!4a%*9w9oWr ztK!<%P63}+wIU|}b3&Em8*)h!2LwU1H-Vve%VRV~NSq06w`=AS1yQr#IlfxE~2 zisPJjsX@+rSV7+rXSLXIV&%{4 zcxtAGiPikSOFp56zU22j=y<6U2)s=f7CW0Ry+L|!FZPpy5tt=zrL7rV4kS(&`A7!y z5=^b8;BEC!a0YK&Wk{|jiQYB~8Zd?TZ?D6-pO*D~bS`nOSWa%~=o%Vwp*XlGBe|jM z^=!<6Qhx|GnVV|<6agGJoe%fa%Y%M$DWbj{6x^LXO?<%_ zwOpl{|8F#A1({L+I~p|6w@uux?HoF_5Adkvr=n@a@JFHPo*LVv16E7j&lfFJAF0yg zAU#I2G1iXph!+232Fs<5kv!~S#Wo}4`DksuoEo72MiaFA7^2aU>k@qTfC74bE44VmIziOH(Q8yEJbkkjK0v+TC*eZrdwtFMa_qla+>5r zgBWy9`M(B#XUptF-QvCkE(P%FSI=wLCLyClxiq>E=aYm(hKZPqcB8PRFyCnrVE`2+5D8f_(a~*^ZBFJ`GU-E+y1A@ zAl(5bpXqib-s0qH3d;wyNqZu|EX>-Il<|Kzb4yAo#mspXPt`YFv7Y9Ej8}ytHZuo@ z>^9vzFR$fA<^C|^vUJ{|*^~?JX8#8G?afNiwr+WkjIaXuJ_Gr_kEG!Khwe=No3>dY zO;h>UCB5)a_S#(s3PM_x;c;)v&F_q}wA&D?vN^s5V{gANUy!3kp&s8Gm;`%e22$MNJ z-UqJ2VSKC4)}`3qY>~B%1`;lRTrp%4pAp+82uj3Xe3h~SFUN7p=l^i`zhFf5Svy#G z7VCCl5#>?9aTccraqz3*x44%A%PCl?jG6w(m@Z#oXEbPn@6C>08~Xn!vrsMDgsx2S zwxYkmya(O?z-WKAUWqtI_BSX0nGDXLlZ@@R~l|X7i@zrAB~~ z0o9R5!ou7K)>y-dk&$pa_NgANO(dqVo?9Kr3o7G+y6;7={t2D*su%Zd_&<}kM-`p2 zXr-~@WYF+p<6Ye@r7%a-S2f)AGb}Clt?2MxpoW*Vm9x3{&~D(`Gv;Vz`_q;K9N<1r zi$T$t4mMt~A1Vj%7)5oRo0BcYMKm-JKCk`(K?_pChwC3Ds&HOjaMv8@w+hUhXD=GR zxX|EFq1s*^qF|)^GWfkk{ofQZ-P!ep3h+~Vv4!z$i{$Y*dO7f^>IhX|UYKy z;$V~S%@qLN-osQs}nt+W~M$+fUo*Em|g93pw2 zqDvo zWd^1lfQY%J*#n0<0V`c*e1Wd59^-|Z@3+Nkx{_0Tlviu>k0C%wFFv=AjDT(?jJ_-u}eMv#;Ce~?bOjpv>* zWKQaV$qMyb5kc7ytv9G+Pv+D7w32~asgL+rkmNa6mS6Q|KQD*Ew`K3tqgiL{?CY(5 z4b$o4QGr7l0j+b+c;tY`ZcOaW(@})vJkMxk1gdaiY*{Tj#P8u8S9&B%YG=Ht+^P3( zae4;CWUb5tE&WlzHYd5fs_7m%*~p9UPl5+8ZXd&XUPXWwE`V|2hLI%fRrnWYvwTYJ zEV6?VI(fjvyu8&aLnmb3tJVvt-6&%33sgN!S{A zm0g%bTo)%*3tlycO!+jZ4XVL}?Y zIqhW(V-GVyV&twwUlKNg*Lc_37yH)3-~s$CnE`WDvL}ojk95XMyL;7VdgntPmMK3Z zQX2{gY1PF{Z(Dd?BIYUt57v9QKY9vlC_IW@d@eTLv86Fw0AP9SgW5F{JF4V{yQ@jx zqEY(W+3ApjQy)%R!@cf_X;WPn_3oQepYj-lI6UrLpBwlFM8_5ixvRnR?i+x#6|}DE zTPhJ&0U2G*ze@yPt!n?9BqsJiU=-UBt3#cmw2Vo#O=Z`TqpAdE5{ZRhpbnhf+*X^m z1rz~?064=wa6%|fn$*!r;~YIc#zRj(Sn;=1{HP|?R(*8QOWiwuH06cvxA~;qlOtzi zNBUDDQL@W~fKul-gF!OUW$o>q_zw4c#hxC~G|z?bNet*TU;o_+?`oaVJ78toQCmgv zob=VhYUHmd-;z=IB8f+9%D_W1wxwh{f$AfJHt|JZ#YtfhaP-EI?2M6v1xUK{uEs4w zw7NKl*N3?aWAs{ugFpS739`od7im}NX<<|VFWpS-VWBCuVzlP!nXu0}r4=DR61CSR zj>m}ZI^Tmm@cIcavaNyLcgSTh2OemBXVqn>)CT8)b`?r=fQv*K8kr5SN;Op^o-MbU z1hK)Rj%(%MUf^>1T^S&`=+OZ`-lQhdjNq2vjD!+`_~+W@xR*XxIsfjzvThpP$-N_a zT+yM+B$?3NlMcK6rp#4AW&6n%N{At;6X)Yv2GQZRb)&735S zE*4ZR{%Hv<4^Py3){t~Pn_z~RD5^F91kQb!Y?3{6dcBfedNmx!a+>Y5bd>+UOG4Oi zeCmeJ>2|<&HZmg-)3gGH7k9cwEy1kR?RTXW>nxI=Qro705mrhYr@%0^fLeo`8*6{Iop)Ov~AdCDVG@CXbW2X7E+j+4QbgtzP^K zDCjIK_-}_t3eWbrQA#8UvO(C$!Vm|^MO&h~<`cZk?e>gMv&Y**?KnFCD2mO9Lp#54 z63a91I~#dM+RrwL@WU;UQ1i`EYr+z%83{Y|HN4>@L9{1e@&Xx>If2zTB~jsv;Z>w?~f~1d%H)d3+Tglg;W+cFy7XT z28!W!wLL1TO+0Pp26ZPg@KbrFw#6_ri%zn@+cZ(2#VfnIY)5_J>3wt{yZO{L=4$Ai z^pPduRy>ul@1jg8^Ae&%5fK6IEAq31re>*lk#@h72mx>s;l9`cA>mNRMnTfmRE7N&m3jh*!B%6lGjvzZjM=Rzc1* zW1<4vxikk3#C5(}L7?9ouSsP5aFY9gh0@sYWiZFHsumrc+2d)_vjClfeerU$jXI{@ zp>dE89%d}J;yV5&VxJiJ2V7fRK-?qK6A}_HVWVFPHcQ5zLB0Kbpk_7lvf~w9>v~!k z_aDPye~}33jAE$2iDgf6gTMxf=DzO?$;xRB9uUi)B)!sL!Gf{mF8C;PS2#UA`b|WM zcQJd^%Huvc8Phy`Vh(TyLV@wM=GQ;U)~BN#$V75b`eTcvF~0)9XK86g>Tvie7mMh# z4=_8Q#_`ApyiY5BKATj{Ek*{Gc-%WpL}`saH*gJkS75@DpW1|hEj8Hk7lOiOB z@i&!re~En4$@^Fbj*jhJ4mdVco4$_?iy>9#qTFU5a%5)QixmNaZqCnMoWI@f0VhEi zYJ(~!te_u+Fom?)wl8XKrklc~k}uhk8&om3`Nm9VzQ9&T8}fjw+-nbPa@myLLX*&6 ztHArvO{N3b!2H2y71S(5hrl^)>erjp0jRP*DuCt+&}O`;ENm|Sh2(!vr|_8 zMavtLO-~-gNAY6=hlGuEV{N4}=g5AIh(RHI^d4c!6O+JJ!sfiy+mLIvjEW2R zHM(A!@|9IqCbX-$`Tx9Pg;xI)d&-&pPk<5e|IbYP|8P*`8@EHqB2{(_(i}^)Vk`le zTmX=+rZ@aloFm2F(-A>I(_()cLuxBv{#Rx(CDTfskqX&@To|L~_4$_uiX~mUp1yV4 zEsxlT7@mXwkRMUgM@-GLj2A_v`8B|Z3ytt(LOXZfsJ1XX#JTcpZVh8FmJk)Q{Ow=R zHhaYspB*d8Gdds+&BUJ$AA%IH?8d)VtH6$tOL_mlzqGpb;~g;Hzqf2%`uoqoLOHO$ zs)g*mzXMP#uz6DlN`TbTmCKA~e@<05F8ZZ6H-XnR#@lA!RG*O8lwjsk68!g*%uuxn z7UvX$8d4ZKSGOmtkb^1Vw~eRSa@9o~sAf(PL2>^+^AW(+vjH~?iVI%j1Qb(6eiU7h z|9^bA%&JzV7`Mr!BuHcY=Pv{=*U|l6BmP})VJie?AdVTSeTO!wrIuLCi_KCqh8ywk zCpy30B6*3Rt$aq^n3q}Ju#(e|?KL5WJf3xZNI?fDj7#UVTzTS<=U%g zG+mU;p?e1VxkTN;3nAKXcYF=HOQtx{limH_(-z-0azg2!J7_ujMA+{r7s@ z2s-&B*WWe;Vc3W&ZL|3tUcqo2VzqoQVQO37zuEm`JMqvH#EXAe;Gt(PbgU0KAQ#&e zAO?Y<29jEZ>xZyC=>>-Dl{J3VzfVj8B(*Y9QZ}#(&=U75(DwJPTE4aKDiAFZx@)mfs-8|mI?+AX#!7wQ^#7Q#C6YN=zn(@`v1YEHsshU*P<4$W32*LW$PEx zigKj+cd?M7H85mtJi{Jrm8-F+OIbZ7`)KlaKZCzeF~EmVe0nU4^Sd*kix;P`wFdn^ zmJ|_4asRT31?wl(CR?uP{`0@oGQo;gnw}N>CHw{!AbbQ7e{Ao4+70=amfJ*eu}L%f zv0$7UCM}gjf@!p?)C>5*T-s7GN>U-x0olmic+@P>t_UOtG^Q+tffw6Sz4EuumH^Hm zN2cfnV-4tq)dRHdA^e>Y?ldkG`G;@J|9mbs3IT*#z*@BV@bCe@f)pq=Jfk5n99mLVRao$6A zfQ8#V+@nb%EOUo8ZZ3z&w&ghp!S8~83kW=>pHRu<+KZq9@__ab3+k{~;|XWb2%qAm zaNj6?5!`kU1F@oNGlUe+nggHgNRNRT8EfzoW2bWD5k9HkUoWW+Xt^IdmfFezigGcm-{V&IL2hMb{Qc4)V*tn^&EZpKR$$^o0p*!< zqFSBRS@+88JPM`8mE=kN9zzi1iL5C!*W&eg5{Gas#7v9DK|HEHd`DJI7WH<(FCm-N zRM3yP%lHCnsO~44KK|{ImOYwB_k|Eky2!5kl^7hNS}d9;&rcnX_~>QvJOd^l$^RB< zM*I}PbNyT(xkQgZlgSnbR&>UFpi%(JXq>KE*|fm&yQ`vZU@9{+U+g`4^`6$Dv5^xH zCy1T+a}2}}%cSMc9cIAXi`9l$g_GaEDcaH><{(I^&ekr-0$;R`uSC!V(y?Up)>H~D zzJ}Zvr5tVXn;h24)@nyC#qs<&WMgL1)y^lf8WcpG=hYr4E zg}yYqh2hz)rydeuVolCnTm*dsvGRNZluyI)2u3pKL^0dHF+KAO1%hbsXVTL?nS>78 z7b6#R#Ur>;1u%~D-oiievJR0>53D|)ZX~+5V9{+fc!OQux0}Sg-s4?rld*w?tnPz> z8NA-gN<#WsW{eH%dX?F|iCVO?mToXsN}@Ap=n;{6cIPGovBR6wv(G+F0JtKDfi?7Yuf2uBB45s z9U@c(Q9=PM)9>X~G4V(~lwiFqI;D7vud10b5g3U7p+nFl!L_#o$Tj`y$D`Etg8!;5 z_{p9`LFuuMUg>9Yl4?wkgKV^9wn-YyZTUr`X^LyKn;B0wsrlU>J-OvT_7_|99#+&G zOX%%2dq#1Rs2&GC`G{hUW^+ydyCY1URkbiG-Zy-ydSD=X7lfg*S~3;v@_3 z9d$TZCNO}fUI^-VfH6=;YJKlW+n-kfjk}P1M)CW))>f$%KgNZh1YCmqcMVKF>OUwXGd)ar=(CPN)BsR*UVL7f5h- z!qqCqa#~~14d8+!WhF?vk?v@~To~u-_$2oq)?@_VRGJ;1E?~5`@7}0D%jJHDsUa~h z*y3&P6twNyb{;{(?$WPC`a?wgPMSWTn2yo$@@UAId~xpvwtB~=Fp4u=RK)%T(hk&^ zNjlRTCDMXs!wEH@9BA1I#(_z<2ZXh%(4s)>a4!=imgvFgD3=#k{UJ?Lk=e_>t(y2r zua@~R{kI%{`xhYP0wqM-dGYNHhV{P;OKb}0wC~=apVf&Hwu3?XD1=Deu-}sW}DU`UpFZu2}i1bmM5s9D+2E#j~+gZVjMEfO*QB8&EMyimeaXRg9sW&hLC5b4|!;yQs ze#!DL%P|GFKEF+3kz1^lJYH^P@HRhFrHJ`&10Qeif`U$m;&f=Pe1)77of~woQx#lA4tu8MvLVmNY!o!fR4QWxFv%9V<2U#3Qu^k#Oaa>l0Sy}E=E#i_I*@>&jhPxzA-Au1aQrsvLBLyBTnONF z_rA-+LVSg4LhD8gYl6^%XoO2!?vK8C%?T+MX`W%P>H9!HxJt4u>s15QD>Be3JKnVz zC4?-y^IvJHBz~sPdKDCL<0!LK!$ML>GnP=RlrUUg2gbXdvMjctx08;91~;Wpj`a1z zqgl{@^HKGA7@dE`V3fxIbzF)1pKIWae(*|7Jn#n~MuPISx2j=D6`+A&y43dZt!fo& zfC0r*V^rNoYDib`O8w3Muo=_C?d<+9GGqRwGvz?^?0Umifq4h_7kw4*{Uj$&7xFwnabDy%Z1y zz_O+9n98Y>7AJISU1G7DXn$>sApN^{Xla<^^Wxn*y`(!rQ^4Go_7MgXji(gQwTZf8H`UnTmK$Aj*NTpgmhDO-$?b&PRUl2hl2@neGd*>&c4efu4lV0tnXZdWi=(GoXg)F^@UNS; z9wKia`0W{}xS1#in}{z1%@$3nLDVv5jShvCy>O2Co)0DHH2%4mEkul&M1G(PJp_{= z370>u00V6rF!`^yZaW#YEk#?|qygLT1;=+rI*zleHfB+H{f=p*Mo)&$Ov~*WARR7q z)WA<^e2T`H5U((G~wt}xK@4{g8bT< zeOc88NU?25_aPUq1;piLU%gv=L3UMz?SSa}bf|Q~*VQ*hj`t-{vGE_x_$Y*~nHh3o z1-v*wQj9wn?@w>-uPai*BlYyJLI#6B;3xIkkwiE|*I1giM9_9$4&OF3(!XRyyXT(% zkhb{(sY&~bLylI#Q~&BxD6NAFO6mQn1|sSl>rb97Yiy9czYIdW>!$L<@!0WoIWV*K z?a>_LP~Grw)H>_qIUi9ea1a8h>F9;sGE%3NR-xuU&&+b&FCf*Y`h(5nSo1TO@k-`9 zU=ap?;adYJLTN!T-_3vr%7=3&rbnWtPvEXPY3gDMM z)r04^Not%1j>J{sgXh1TAR*@Zt1n z?7CxKS{D@IYWy4{M2kFRM$V&6gYWZWVUD=CryHrPrw9qAS}3t73iYgs$}cyOV!R+E zLvBBo8Qi368KI$x#{X;AqeTjcDU}~Z6WmFY{S`Zm23t}OxW&5Q5SW_-;k)Loex&+* zhe1)@$L)=Ql=aH=Biys+Q9(ehwl{#gjK%7Y2>Fy|OPJ3gS zP8(dAZ-cg`Z-*tE*ZIxcXjIU_zF5ZkG+88f>>I}+=)6UNf#4D{_%M&en26)|}QqL5x zZRpV)t#y>Ez3@7`x@D@S>u_4RlD0dFnG^4(wyM=1&*{I^z=gk)Cl_NnokCs*zqyYE z+EKJet#>hk8U~G1A70Eyr?UsxVP59-u%ZcmqO3>PCYD4hc~_wIajN+`%8~w7lh@%l zgX`~?>yMT*U~gqEPZH+yt`%`# zmE2&Z?{68od<1zoD3FIpyvtI^R%P!#3C~8&Pj1mWu3(ik`jr&^9JYO{*#II-ZH+vi zN<0X(Qa29?F}0z8<)&OpNCi(&Us!;o$4PLaHsu$ z;r^}m$}hG3g#sWz$F=@Se+fiWFsi~>rGOCCR5uJt>*yvq+zp6*{Ka!8((N~{J(Qt> zY(a@0@lb84>gOcfg^@9UV$z1bvyp+u-D+|km}Y!+x4-C-Ox6A6?pW1Bbs;m&b5Aym5BU?)vY()bt*3P zkWUUy6guWhcvnvs?Zq|dR}W5!8rZkA{$K_m9VCF^9<&7M)#J*GfkaH|dA79C*N-Vl z6)D?Oc=$5E;t;o#&mV5xP!}cLRBux0F20%Z^SdETU@0bR&a{;>p}9XcDjru75R&1F zWo>d;N6T*Lbtf*&D0!$g=ZE~WA-PVX=rh}gMjuzRrpd>IvKrxNd~Ssv3ml|nze-eg zwkMT1RK~v}Lm&`pLe*SUB8Oj}e-=$D&60nA@%@Bre8};K)#b{7mAlllx`j&dh>atA zT|y@(_{n9L(hd9I<+I3x6p9C)li%OWzIE}364g%^_dd9M`-AYpYok`jT)(=sUOMmg zXP6_|{fRxc9Iu@nqCqn17XkCc;EGQmVJ)a*3&_8gSar%B`^0`Y6~8?A(iJvD^Kq6q zi|v&=FSNu)G(C{C_N#w<`G8oQ#KvG_qno*6+)#uqqcZAz+ABUfQ4NRh>UOg6@`MO)PVD}xouMMa7H5Y@W_;#tDsW*Df%NCtj4zc2#mfh; zg;F8fFT!bef>r}#KA3YZ*xI?sUp+F(+ZRIrlqmbI^cfd2o5rU{H`~_{tr8Lwxp>(Q z8$3BI@nuK7-2batbQEn|URF}S3Z zw-f{xkdhk8?_tEVo@am4kE^mZEu`f&6b^{daR`!d**$zcWM#S;#ENB`x8av7Dp4AB?~U( z>MB-r?}ZYVZ&|XfftRC-`gF{o{mqhP4w8QTr1#ObhSk=F-)EJ!;v4b73~RV=edK)E z*Dup*6g;_o45w-$F4MG>1FXaPtdq6X?io3Qq_KER>YU=DcJX=8pWlXffA$&Rk@cB} z>W=)r{lRpR`1G-Z0{b7O0_rJrQEH=Oxx{=N%&lD(G&l2%HO@bj<6RTM_n)}!@3H>A zgF+ygvJV2Zq((Ede*K~v(Et1vVs~{E;CJCwL*%~06uSMAXB;MeD3h!#0sHEH?Q5VM zMnPjCWa7Tn56X98TmoC7ky(IPC1c4X(lFfPk6< z<0nQ>b-Sgj++U@tw$Jc2reiR7f(W6ftdEwWLvp-R8ZF-F3bqok%^iZ}g6LDKzDJ!H zD>J~ZotsmCKPzjL6p^LGuQbm|tyljuIDy2Wr-|U8sP8tbp0fXyzUz8qR+`mpbHk6R zS%1k~+E(MzPy+)z;|GFGZ<3{F_|@yZmJ9gcW#)oaG^rOhbvcONi1ZiEg;{BD$3?Gs zIfZ{2AKUu$jFxa@BC9zE32coXX|Of)u^{ycR^@#@Sfk*(q5wxmGRNim zT&y+Y&);;CjiP{G&q5SmCd3LyUrd^2ISsWgu3jeyj5441Gj~UDXdtkpR-N)L7iSASc(AJW3So( z9=#MnJ4C@mWiC8CRR+IGvYlD&7lW9#Um5Uf25*8{#;6V?{R{ zMm#))*kK03n;c@bNk!{kpY>}$d<8cl1@HOb3k~J%Rr~Wpf@M8CQc>#ay7IGXl9#!q zRaH~xzNgGsam%b^#FvRU+od!OxV6ax8u-H^Uv8_J>QAIiRpsYB=Z_6rBp-xttT&|b zioG`Qa>yw)_|@&&XTs_>9ppJw^>v8in>Q=Cm@AIh?EU!ntIEGWlcS~N4xG=!UuNXs z#|G5x!OmXZQKNrMrI>D_ezG5B?~2De!J}6k)v4FY2H!^+rXqRR8=GVKKz7}w-e013 zHEndFqaL=*8MFJfhqZ<`oM~d+z-$xoMrQIK+1BEUwTKkWtK#>wnqD|-qy3l{4Vv_( z-j8e8Nw5ss=~qClc16dZD8gYMmgs%2Oh?#YP&q%^nw+X-epbPxLTN%ccT@*X;11g3 zFidL#=U(n^zC2zTr_vcKVNd9)vo32k6h#Y$IbdwGxw)#}DgiMwcb(vG|j`*RzLLM{^1WXN1l$++EupwjOIg zUvs7HVdb^H)3N53?y1I`*f94W*ZWUuJNyuLQLZa9qhNK<`TInZfxUxx5E3t^Q?DPh z)=Yw|j3D?;tr-!L7fwIsI;r2MBD9KHa zi=sTuf}TI=``w|>S)#)FxoanPn*r%+?qZ=f@$QG-Y8uVPd~h+9mBttGhjq;&%c*2j z@$6P{8?2wYJSgVJmm7k9m8n|Qu)Qk16Jy9-_p`%*O=;z?aGQC-~$V=hm6?Zfrq7G=Lm zhxbMOJk8r?!x_aLF>WdgYDY!uB-VxwJ!_9Pbqt&&~jnlQBFH+m>Pc<#!@yX6y>Hh6GvGCx+9u5D=R!pIz zBtuEymoY(juxRSl55~jWhrSY^yAI?^?0@SltrgG_qIi++P4#-Jk73uWati$DoJK@(%7Gy!N*pa#ZPSL1A5FhVnVd|arDf2Dmqs(| zkrby}5mprPO6L)RqU5f9zH9K235<+*S+SCP_2iO^bFs)c)i?9?iWBK8ADl;SqpS1R zMbGZZj^0zW&)WuOEwd~^a@60l!n96^PrvoV+N;JpIXd)kUyD-CFKENeuxFwRe=)L& z22&+_3rHn8c*zC~{q z=i&Ymdd*UOCKLkVWbKJb&OpV`Z-=vB!kS=kX&A>NFoih6VGuap+vT1bt3IWk3HISu z(9OxvA;Wu(r)!G_9;#n#&CL8d4d$gPd!_sy-W`_RaZDRb=%1+d&NAe$+FYxg6xd&? zS)zo8OQ2VYUs2T*TBfCyAgb>~XNtJlo1*BL!6jm>tX-$N0z!*Trt?R4)jEFCe2Zj% zd)-~byl_;{v&yW6P6t8DJH6+l0;1oVIXm^YrY`uS+20b{Ga z=9@6q54Wd8X!HiopN&>DO5>E+cHdi6N_{6U`8`rh`RVnuSotetj;v}|>A5uW0BRupqH83?$EHqw z_5J2@W>LhZ6CR!+LW-?1UFwwUJ37y`N~xuy%pduN51mF~I>sV*wj)@;eSGhL|A{Ww zHm5HXzhimm>xbGx1}NcO_*93EnOOVa2k1(Wn8M(vBfAa7+nnObPEIK60iR-3QSw*q zvXw~H0svqLmjgz8iUs>>#_Uw>FS}G*iX_vfD_ZIJIn^vX~i4^PZRMFZ9BImU)`$ z8<@f&9oO)@<>dH5s|;Kphrlw-+fq&bmT|E@#Agcw{-#}Us}`rk>h{)MBzPZOfWDdQ z?uRi>kpbIOoU@ZTzmL)#0H(fuxy{sjr7q-4L|7c*GN(qw7D!R%gH<@%K?&Y4=eX*@ z0R(pM;%vdsE-#ZMjBTa(wrEm9pb`U6o2>>kxI1r-s9)yn7JIz2wa~S(G8V7QKbOjm z6c2AOlJL43QR}(VTEzH=7vBe^eB>;l8ac49QS4N$gX~#uRyIYTcOL0XM_enh=!zd_ zJkR0#;Cbe&wJR=k6q{c1(qHYci5LIvoGM_E`9+B-*}rI7?A6k`zNxESUutRxOW2FR z%qOH8!At(bsv?aJVS9Jj@Tn_d5(T|^WwR?Vk&a%o))71{q)M#IiT4a1Q`(a|xF|+zm>k6nz9#*MG;`ZyX}kJ&6&O&A z&GGRfj47xA?;;qJ_io4GRGjzD0b#kwr$g9-S@>6*@ukLsK6e40RCM|10d*(^& zkFqGOrx_Y~Ak~+T9-$AueI_SR#`%|jyo2C}3YV^Wq}hs(f9EOFOsPxx5&~Q}S7tFs zzeC{a3|VmXkGsj1KKkL=xF9`tk(7J4E3`iiZL65+DOFCy%hxZ1(vyz)btgwj=Dc+8 zj|Q9a>!kg)Y!EYAKrZr#D(=-_mGww3UNhhrHrHgWutC+1L1K0|lqTmKKtQ((FVOnn_D+;7v7-J^msn@_YX-%dF7J#LJsa{*zHr z@nlao7cS$R4kHU0#^5bu%=mvf6wMk0$Wf*|ikBpo`_; z#<5=o;H`HVp%1{vBV9+ItlXS+TLPCxSEyU<2Pp-J$rkv>3Igh5Yf_>DDic_Hw%Shz)YyFVHW1@^-Vq*K7+rnilH1!;9 z_1X!36^#n>7X@MB&s~P)AVCtEi=*s-?a=wcW{G_@dwpU;5=2Klequy zeQ(74e)pu*y#Z1pM5klRE^m5;z;OsI^BRwa#^APU{Y`~Q8ti}RBjoo2-)uhdE7&gw&qC%P?kgZU_B^7WM%DK=Y8Td7Tvc(%otg)bqL zRokTV!T(%y;0?HD46rP8e0Kp-<@J34VFI>(1Vi!|aUJkAYzIUeAk*2$lTvrJFi-Ht zbL45;myRjUNB?~65YKdWvU;_hZ^SIG$Q#e)N1d23MJovY`B3rXK?|2Aq@aJmXqA@O z^jyPEi1n63su{%tzy9Zf{K5-S(SaV&=t>c1GqRw_Nw>Hb{Ti=2S^BV6^;g}W{|w6` z$(Y}7Wc3%%UEXNin5qBBGg7$iGeJm2tXLl(2ieZI`RSj(cJ=x}i$#NDnhXD-1_Ud= zbxm86$lp0nwXV{iT|YIY_~*g~7I0zheScZm$NslLvE$;sFy-tBsw9v%8CfSZMBPZP z^3b2<<6`<(t@qtUb5EB?k=k7w4Kh`6*5avbz}dXY~L3yZ;`IKMUf&SHyqsia!hC zzazu{4`brd2I>(ek80?rp(I`{VNKP@N~N|F1!KboME zwR!Yz-qBF|Yjgltz6czsI=gXAdZVTAsiI$gae<8vpmZqZzKwgv8UVn$ZB`U+&8(hfh6yVp1gq*el)w`$KQ_{xu_WAay#{ixyE!@S+)McbK@|&ur0jLFT^MoU0%)qhoOJBEzs)EW3h{bR{K!fpKiSb|Rl|&(jJqzpq z`eyz(EIo8H^Q0zL-tHA3FT3Sb3YWuI((P>w$o>7u70Z+3E7#4BC^h9Vzbw|zD5z&; zmGOc(ZKb7-xI;AU5suAz@8BWud!2g`?p#UW5=+{zdx@_~&~UnQ3zh4>hsq z^h(w=;Rc7c>YP+W>ofM8$!RQxkIQ7$NPSB`fm{zt#9_JIF(!Y$g=3qo&jBz&|8`G( z%ooOtCS&aSa6?T`)ws;pPxg+)3{z`Y{TYw=#Vae5ksNB$&pMcmM z`2O4J@n^u?p08YD{Q)9STk-6H;v3U=)@Zz|+|^Xl;DOF>T2hyEdH4+Sq}1`8 z$f*-{Vg9wl&TohX&nopdi_s;Gk8_{;nCC5vtgQ9&+PUmn+fw+)k24Jsf6*kPhY7k= zM9BFtmyoxbKP$%IZ03;`=h7~*Qy!5U4w&`iF-L7)H5gI<1bHBu!noN_uwswk!*=}p z)9vF_rz<}V;e?30Z9&KzemsEtK-sgHv9Xu7t|rLt-$vR)>ED7(azZ)EUybsN zjAKtCRHo(@iCaGcF!g{#tI0LkmmWn{o@wK!Q=UG{wMmY!x(iAKyPM)=en6tEO)h^% zaT~SO(67-Wf1f)dTpwIM>0Md?bvAeH5;C_F6vS~eGm}rq`k!BM13-RDRC5u<->-Tz zTVV)m3Z8Lj+$f=}0MtEXSbVN!4sKdSM<&b8`L4O~xF8qq(;l3b%Izy$jo8uSgryq< zoE;Peg=6UQS{ZnWNmCNJ=SoGxuiGPWNrOANs-pRWg1k6MW!-4z7&$?28D|e8#tlE8 zdJ5R%M3qU33$3s`&1cpqMo7CA(9(bw8~TDMxp2Vi=@VhRhjO!MK~R&^mi>6`GDh-B ziMjkFZSu$+n;TO~rA0I3LPGqWm!;ZZq)|34ebBj-gMHC1e!b`X$s1sR3l;J%1$c3^ z8KHe(<+L>U-0@$#t|#abnOoDR1aILS;19$pcQ4l|uK`~Z2lX42S7 zkjz{`&#TB4?}-${4n-;R@s^ji(7@2mcQ*sm!KpD_gnV7_cqEbK7^p`Zw0Q|rBeeOlW)9*kj;ioP)HwzHqI_;zu7@V)RmMTSG-JU3(tYKj55Ya^$aFQLLe zQmU}r5Ij*9<@Ac?F?l_Fz*Z^>x|LTHW41bN>T2EeJ{UG(UGo46sQ!(>_xcV1uO!8 zSzrL&Sof*WX<+X$n zh;v-WI2WIMKR~Fzgis=SS~*KewpW&~=A6am>#-+zEfz(<^~lbo1uwHD^i~!erb3m> z8{AvqehBlio{>5?Jc`pjrPdnkaK199|5CXWD4B#ZVhSGUHa^E2)s+bOa4OjfO};Sk zRY1&yE=Xt&=L@MPQM5*7*{vNfwBcp$sSV4N~BDtI5{}H}16nn(x=7oH;BM|;i z5B2gIsb1nuLI}**By){jmcG6kzB(8_nTBl6?Ht2Q;nwqB$dLsTYJ%Sy2^NLmVU*!J)e{Sg`f-)i zVNZ>@hw6-Fw$_~Z1in#N|53{AGY=->3Zh9a?23Q5m+^j}(F2S2d*PcQrx4t{xX;Y-dkr@W zI0Gly(y=K*2VfrI4<7a&oeHlV@mxcBsa~|+8lryj^{QO(V6~x&Q;ALyn~VAJOO9mZ zh&nC7oaf5x968baygbUB1Oz!Uyn6OCcx(uvFh-o`#86rSC#h_uWTov!1$TmcUVRn7 zHg*y(+-|p&TNt%|pGa3Bjx@YlQK7puA-nFESbql4kuoJ@FED|EKacCB4zV-5io$yWR$4>(|)0VcBXoR=TX3M^~ zYwnBLLewowxf10c{aUWgA~>;iqg6GFvcR_nT{iWD!^2ylc;X;9A0Z|{lDbAKLes2g zmf)np(Viw$i@X1AO^wWYxpKhr*1e+HTWYVhXv7sCU%*YtcF%2t%ruYCCck|{?AY-l zy3*`bLY|v$8U5()IB3ziVvIck!QvtA)r3_BsWUE+qY@P`e_opzDo`azyHP-N?00_u zZ=kDOvUIoO;W7a`W3NECb8*C1*-2#%-h1wH)?SH1G&#*X`gEW7=0o34$OtAjOW zASM~d{N+z7%imjSbnAqoeTR}Fq`G;xVYMT}qtYTvPvY<#tu$|QYhKP~+Qh^|{_$QM zh^wxpb!jZ@^tm5p_XDLJm27{En6&B4`=N!j84E?zR;965pwdkyAJR@3gJgLyF6@&T zv}j3r2s|RmEFty7paJKC9GN&+-x9lwOa^2Adyf}}!K z5Za>R3gS5#>>;+&5Wi3(RqcyyA!%FVUgo98f;|+!Eh2(YcZSmiO7uu+GRPrD2m9G{)dl({G*U@x$uDOBn!RoZ(zRp6(7)r zAHC-MS-Jg|VcOBRf!?9bwZeqRhj+WEQgd3g0Z=<+J3%+Y2ZFHqQDENI>GY4_9LG0+ zb>yA1gkBw&a&MNgcYev*4pbI^IS^M=^qg+t7rZ$|U(55fkGVB>!V1WbRq~X>ykXo^ zjpuXg&}d-O`EmL~ui8}yrD2|~ep8{zELK$)1uxs{J5z<7MrD3lLAq-Sdr;mb=leQ> z!_9nZ@NrHpY;q-!!~wV0D#AIF5!){kk}D9J^AQ0r9afZiFL~A2pmPzNX=|8-HCMaI zwa~K=Bwbybk&8k>E~++ooNj%(Zt$xA&OxT3Iazm2-(>@=yFs`leJgNpa~ks=g? zX0zqk`Pi|B0%HC(QkiG>_wOf>4Ud|(f;6_iMC9Y9_!<}7h&)y?@)Xnq4KDXA;S846ao?#!v%XgT}&|8Ko z6m5v@;GH8`t-(4WL%-#W+p*+0wN375aXTg^9yisR<;fvndRVdgCVYosNZ9E( z*y{VL>C;=Ui~@`u %Cm!9o6}$EOVI!q_Hg9K4uKz$F`Ta*RQ#VDwJNEL-d%3L) zBUV;W=O8}c`pJHT!OKy-hWoq8uaTZ! zMN=!ok3=>V=0bm8F~3aRdHjUoAFCC2vI)E4k-qhwwqgdsb7rMt;f_-`4pWELo{97F z8|?e4JG0lxV4O-agh-k1h-s0Yx^&U{$+_6_SrCXu(A(d0U5zcna~^HDwg^b)`HFlx zciFs}=DoioyKV%2xJ{=dNt2y&hy;tEDE5;)le{FQ#^RbNa_v~LzGLcrDtb4_~GKK{C&oqqxHQ9+g`R+q2 zlUd;`g*_0{n5jSsUoB*yQ?&DB7Gs?F{xePyOVUhC4;Bs!t`(hSe-QKVOW;(4(y`XH z5~En=n3Z%sGuI)!*-oBd2=mP30qEtYJ$kY&XE&P$=FOAHK^0b*>EStjlg91!evkE> zxH=Z*yb2bj7xxZgnYr#Us$+ot=s&4${nLr=Det#`yg5LRuqx`7;0z9!2}7ZN1_`i~(B6gcfhIZcGoC9)D!6yx-vQD@@A@`I{B&#lyoL1Fiqv-I zXdokZB7U!xc?KgZCMb1Bh4WUE2Aw%aPeYquTYY@gcq#%KIa!D5UJww2Kgu%}ir>do z6fv;wp$-(&*fTV|^&WetN3jkc0q*F|H}*`W{Z@fsF85f9kgZ+;U}+H5nnbi)&4`P7 ze1|ID;NM-mHB2!CJJ|g{JNPJu%FV=7q|PJ~Jz<{e0tkrSK*iRLck@B>p&pNolA54> z-v+2pklm3JuHaZDw(H;9+x=gmdjHM_QuGGJMPr^Y5x0t+1z zqHj+3%LWvIeOZ_IM#?bKkIgjZ2p)2B18ggd-BqAol0L*;B=gB_JOv3J`L4NbL~{q0 z7Ov7(JfFJ+ak_r;XJD6`Zl~Lo-(!0Xj$z4z%2uMCDy3?Ckz-mCQL@NbAY7sN2QQIQ z*}L!W)VnnXWy66e$m|ffNH^nmw1)LHr(b zW@1X@(3~>1Xz5x?>Ds(8S{P0G);NMF{@nY6IJr#MA2K4mS51w(&q6jj(B6)w-Y;7n zTXyF{X0FJL@|28;-h0PS>R?gYmO18LP0R}QPFbPMe#~ql1C9F1rf%NQ=DXfPtIbp+ z`tq`O&*Pg2bGZD#i)-)=_|3gv?GJh!Fgw{^6!l^uS90RU0G*o-z z>)dckBnEgzx}Ycd5*Fv#o#Mpu7-R>R*LqK%RD0~6zi;-X@wfjE>kAWzF>Y#`Jk-Gq zWM2B(opQ=3$Wiqr}^yLo=L04i%mG3}xMl zN}6Lq;@GaHyT0DMoD&Z6#A5`C>M9-x` z?e;hC0lkXao;b; z!ZCU)&Lo82McSysLk3}@`Lr%FO0}f4Ji|Q2W%9;q*p`I6KOJnPxgXC(JF;K_3r{|C zt1lq5uN(StM=B^(dF7sF7?X8*97tiO)I(P?%V=rioK-#Q)P4S@V!=^&XJtST#Y(&; zSKWaFnviFrpTVBcMs`kcuQ{oXdY+lij;wmHSe{Awp&F!9+l^cUYz{>W6OLD!28uv` zt5gLr`pQ&fm7m%T&cg(S%21q?K^=Wjgv|OiGX3lrFa&^tS|0xs0PhIJYt~%$RrHlk zxIV0Jp&ogW{zJFsSWKX#>^j@3O10S2{hQT0QZC)_r+PN@?ceY2=q^G@&9+X2j(hJW zk6;>AtA~k2Ak<`D>$oA)TtD$c)ls%f{Lf?qQne>=DM%}8T~msZRE89tF@dktHnuyl zSW@CrCiBfo{@F(_LzE*U0xc@{>@xO(ZI|X?A|?M|foZg8o}`X8pj`e9JnPtz?K!*; zrNW=OTKY^Te+svCxn$aNu0>Xpko{KLu6cA!e*TmHIIfl@P>PE8%i=hzS{)cLa`atm zF;BHC@Kkx`@{aH)UnCnoTI@>B9Jm1-trElvy^Mw?;iFBHJkwoRWiA;yF5j^meD9F0Z_)?ba*q65TY}$EauRuwEX{KEV2#)FipV_BU!7_JnVpx~2OP zU{#6?e$FJ6v=-oP%g35+iOh=-h#Fm5vGM+%A!C8|mJ0#CV}ypXudL2PWqg3&J(TokzUs|| zWh=t00aK0riO^jg(PibM0Gp2*M}4ikMySI*HPB~)`zqi>@J(44D92TxY!8Y415LhC zbQO1qg&EITigw0R8@BzX!-}mE5D!k%v)KZE+oU3hlkQ7>f7=rDo5E|&AgMlzoD%vt zv3jd__-Trruou;i7rSh+-GxJP#ngH&+nc}u|$2_iSBC|!R{19Y>^QE127A_^$o!}k*z?l;X zHmeENrx9oXj51?r?JgnZ7xD(^95{*;z;bm(%eW>6MIe^k0A26pj-+mJp0rB69IK_x zXgdP7#xZmK!>+)&p{&&|d=<Ydowej`arVdr5c2^;cg=YUm+!|s$bl6P8 zPEn-{G&8Ve#>klmJ9-Z$Jwr=NrWiA6uRZyG$5=74xru!j`BbkkJjCeNpIzGN?vh=y_9?S(1`3Kmu~jrq@uib z!)jLe{N51LptN}!Abd)Q6OWcAC&avZ*%@m0Z4Gq}(frr!jWO$)REZELWrrUoYi^?tGEgub6(Z*x6W}Y{1XBh6y9YdUhygfS<>}b!bS{ z`EI~!n2&P(XZ(FU{+(ozNc@`TFvxA80T&@=e=KA1I)Bwh$pHm%REnL%AhczKin1=t z5awLE10nLL_wZ51UyZuRbwD(q-So0G?6IB>K&$@L^nAT#Xt@S%=)<#0!0?5-1sDN3 zF;SN$!uW;vCtlec{$uw6E}u(2tc;&AMb&^8_k$0!a{<8>J3fJPzb{BfvJIfzEmnOm`dKr7cf+3 z{efV(>cB1~;vX(-*nq7^s*q%4Qm~>78Yym66^+3vJ+hbJ<&+0LUqLu_@pd+5{KU?# zDsp%FXZZiB=e6l+c8zKPO>?^LS?>NNdP8!euuYH-s7{Z$IG7v1i7Eix72Lgv`mOF6 zk&uZGN-avtHw@Bysu<>&)~!Glm-Q!r+k-Opy>-+Jf{?hr{Q7a$%xut3QoH@b#Js$J!#XujM7TN8iHLM1Y4D{hA(LXqg>{ifg^ER+bvuo zVr$N=dTMD=sq~qDxS(;oi0*IgV$cwn<|Q7W*+U^}jl&;wda%}2=S92WFS(M3qW0#R z^W#Y*SSd(&{X3UHOzrhJV*d{RSd#~+P1LSKvY=-v!ZF5Lvl2>c2Rve#V#nKaQxmw~ zOYLFb!fH&GhR^6?>K(P9=oP}LNbA$%kr=#;gf)8nMwUvu0;8f>nn6uHHos+9ER4^x zJ=~iD4=*>#`4~f-a#(6Dt>B@<#J7S}#wGKRLT4}yZP8V$q*=&nookSdRxEfAv-0u$Q4z_fosZEv?y_fH1 zKn0#DsaTe1y6+4`m;v6iLoMpet@Kehz=W=|=0{y4D9BlcH26hexd5#FH z(>n8OnVGwzEt5uc6=Emjyw&mwl4+KT<$1+<7|ZHiqE{#yNQZQQ;O+-`-8xYV%oxDM z;s4=h6vJM@@8z7g4Ej~d7gSGq`0G8aobyxsFYWY(!vCzD3YCn@jd9kUb#FAy@HRau z<4^`sTuIYSi13{nt06$ogd8|Q?vT!Ew-jqk+x2u|f3{O4MEpzOi+e;Zw?e5H; zSpl_sX~{>UchqEzKH zKj8#PE1FuZ_J29bar$k<{3KEn8<~4zjEfUr5doxndELV#Ky93Xs@bY6gaa9lzFp-_ zsQO?9N^~H#trk#^0^_{1<5J({zAYXne5}0lW{-mnXexbvyN78EIBEhac5L)(T={NZ zGgHbgcgM$c>@*VkOVOpt`l#MwLU#$jxCurH!1_p4;UcU(EF>_F2h^GQezAu(@@mYM zRt4qIo;!Oh;gd8qVlPwF=4&Q19uRwJOPz*?#9V>rJV^XGv{M{{>eaE4!iGr)fhi2i zJ~cL;R}%@n8DwL`2o`VO9DvPjCkpJ|ET`_GPE2%OWCmt-`E$F3kIgEY$)9#I-`!y- zZTfMiX!fPmQP&s|VEl9JX=IV0J{th1NR_Xt6H6ud!NcS1Hw7$nhwM}zxZv-Y1I*K8 z32ZD3$k9sKNZgxAC0EsqHtBO*gZoq4qJ2=UAK;W$#g@EcubgG}cuy7CsxDPMH@m7| z?|+ONU*I7SOt5bv+Rh`=#)Jbvt4ew<+*3ie=!A_fqhJ&HlTQP^3>j@oJ$C~a{H-O7 zfwQJZs<`?LF!>r(2Q}TS(;+n+fTLl)4;T$Zs>&52xn)&tdq*Il(E93fb<`T2@bUA4 z@8|bXZ)Jn5LcR=vX+gEL{JQ-cw`YqAew-}U7X2t^^SQjAvpc8ppzRDQ1LJ6`qhH#5 zza`?I^@O$Uap_ml0Dh(iNiwT`!i;{c-lb$3*{|I1+?k4O2Ahd}!vK~b4T%=2xWKjK z0?N(Ax6J(h$I60%mWGuB!N3WOft((HX%nv)&7LFu37ggx&2#7^+qH4O+&`)*Km3vy zo&-eC8JbH|^@^c7=p6uu+>y7o&bc%OLod++^nqONM6sCV=Iy6nYEm>E|x-4P~pd4WA z3K(x2wQBA+`}hk%mA~=~xVRQIoTD4vORF7~mLx*a7^QI}dg$Mnl=``5@WoY^5ax8y zPFzt@A^{FM`M-&GC2;w3-h1Oqql&QnV#Epc{gC?>cHo#3fFGN3R+RZfr{@-Px3Ghk zEt;l>Uv*XTpfo|(A_8c|&-kOZoS^TL<~cu)#_BVSo{2c#1R*VnIbW z*f(v^+_btAQ99pnA9a0W>(^uMGe5#)O)|U#2+8lV)3}{4;KM2vI^9^=OjZ3{@oMm< zDV?>RmAa0}H82XOmWeSS*Y~*J$|yeXtFVwSOm|2cSN)HE31{;J&VmjbAFyM|&d#v` zU{5TtADwNN5jhpz9J90Wozw@4gRcS)sUq?+h^FG=Sc0=Lbn?x(obb{>6Ic;)z8<{4 zi7WF)(<9wY#4~MnqO-rYI<0LsEmGyoadu4%7z_4JDdM`}mn5(qtCpbf5A(Zi>#j?2 zJ`&7KlM+Ax^mdmp?%G@v?`Mc}0dRK0x-C7=?nb*0pSM?Pr66V{Ud1=(ns3zvHy9w@NWs9cIk>Pn_B(vZ}23t zq&V9N3s~@Y$plx)dco+?yx8JjKD^@UUqi}BK?KlpzzJH~f6O@Oc@@?xmxAmBNRi!r zJB&?^?~A??=J=J0ZZWBn*m7gqC?+Nc^FhgTXsu*^TxzyIH@Rqf%zD3E9pIE-FwsL| zHC1j2#)to%HAQO;(TnA^a~t1STNb|bnuu?ODgHZOI|ye^jxy+{UE3hB=cVqw(^C#m zpO@jcqZ4}-@)U-8|Guah)NYd_H8=`zVn9f+o8a9z;b~~PmtgLIab;3~^k506S2#O3 z-C~Js*pVUK=^k7E28#c-71)$WF+@`lU+Is8687I??-qVDtxgT&Q>MLX^8dMUz>Gls zvK6#2ImWeQ%fi%P_gAe^x|#HIEk)wSmdXFn;an8IW}~i`r$Je)RdY^{aV4x1tqG`0 zh%;?jk;kE)Z+HD`SU0;U=G{;-q zH+tCX8YD7%xo0jyztnj_5TM?pt=;1c&p*apZ?pil-31 zFnr18-EOCv!2VD67@p9U%iGR8SV`snC%;#$@w7(-My`!BKXVO-Rsc4bwHi2bd!6vM zoK<5w&#pQR(TFSU+ufDj<)c3|+&t3F>y|EG8RR;@q^|~-dF*d65@W?P(h*i^_B>zh zGl$ZsL%&YL|1PangZeWQ^I>d~elM4W_$`|@p0ZP-pX0%HdT_uJv0n9!YaYcxUx{q^=yO8(KrfM3Xy= zGr+nTVX@%Bbu+w%FbiqO?9@Zs&d?B8-7sv5xVp+Qyy9fh9^D!gM_4(%yS=nI9=WCB zSW-mWRT-bofkN#1!nm1+RCb(GW-k)7>z0^C0*Jtq3VM$tzEOu_U$n0?$!4qABz=c; zf((xe_ILq=s4)fggTP4HFq2pacnw%>@9<}4k7Nn^Jr>AcA})J(4~u3f3H`n}^1xt>6JNUk%aqW0zWj=2IK^`>((uikY>c9s}Z z?&b5Rk38VCK0W+iuLP*S)Q<5=*+}&|!}FAXq_s;6em!0P2fgh6fAlgJNZfb@f31_$ zHpxVqX*%-j%aRyKOdfU`n+b~tO-+pw^J8;;!H%fvW{Pg_scuwWUh%jTLfghp%ko)^1xNvaKA{Jue9>4Q6d-ljrSBP2bjHl<-J& z`X4m$2>5*Q(33iwV)6j=H%g5CR%JE1L~GC?nFE8+4U}UfIGG?69^7_v{;|bVha&vQ ztdI*ZVjW2mdn@@t$p<1E4B^dL63N74a(9AJpGEjmg-Gq3>5wX$a7GI zqI!83y;8rg2CJFE1rSc{sLa~pCg@rr=*6#qT==yX+U9A%fS$l{b1cLwAL(%@HR<74KToJn4xuP_E-Z4vkN;@F|1vCc4c~9BCmN?r=eR=b zmKmF8@A!KyVBNN@;X{(s4m&I@&8P=-OJIQDfQjhJic|%CX$!{&=;bAWlPF4=_||Cv{)Tj-r>qz)!MY?H!d4-abK;!4qL9y9H5}W5ec2MWSLyy-U zhXwo1dp&To>(?Py#)AJ+b#juySMxP@}_5z+X zjd_jr6cGt-OQ3Zy6ytPsDNmPUeD3cDjts4=De{k2R>GXuq>^EnG#vAETJvd^O8T*7 z2lBLDgn$Hp%mrvqiQwe-PXlOQfM zxgkb-l=XVVx}mJ3i)|T-?`n#{(MKM}GkIBU1NdrE!ya63@o~55NM84+4=f6rM(p>G zQge)4<3dLTdas`96fMPkUrfQAKYC&h0}@vJ`F zrOiBHvm$Q6l<)DrS*7O;28cdm#IGbTRBsc(wVYqvp)IiE*By2eb_0F0qODvcVa>>{ z9XX6Riu>P3{ga2+Sc*tFP@=&(4u5sekd<5P(FsHV2XAJ;JrmH_ z0uGVMPy{m`sUTjaAs%<#C8VV&V%-xaRUaN1gz$htrx-9OdZ*d7&n6Am@AnuKR(F-P zj?sgSMubmkYJihKMgyK|cZXG)w)qWs5nqg>6jIxTBLTu6qIR(a0CF63R_J7;1b;V! zF!tQSlalTm{N^;G$f#Azm3qFLkn7fjJ*&nDpz?w8a9X9s=bPw5Z6G!+0z(i}vzO)4 zEi?XCZM2WZrlH^7meJtct#i0UPlZNT1FsKe5Y;g0dV3r6STsGBwO%@m*?}`Ni&B)r6|NG&1b;RXu zm$PHimC0mNqw3W>0fq%dpuL%7lm|>bu(^r!>|>RmY>xiOymd1loI?lHu(Gh*)zr?=@mq3a{@5$Cso!k39 zRu7D3W^N+<@n9s0`J(G|!cGIV6PoBHd7MlU<= z2aV5@5kscfU+@zk?3M$51v?`suk7guTs}jo`X;WxIJ{{V(uI%sGCCu8#eYxrIyEb3 ziS_8I-6kUQ=)WpfP&@y45`}0I&^F(O2C^Bj?lA~)4&;x(4N!)-^{A%;qM0UD^Sq70 zXn1jblBIsvLJfaRirJA>P_hou_A?48`0$OMdTWiFzD8+g@KES*`)>G>&q z7aD5ss>b!Z&Rr|&W;tFnDa&cPTF(nMzdC|DS0-97e*eG7X7TZ(7ZG(3WgyGx04 z_>~462UmqnR+~z>Yk~=AEwatg`f8iCi)}4Jgum6=|6N9cy;)ryD6N*5M;&8wv3n&H zS!LhLA-KpR*)SVpq>0rhmX%y&VS3-Sk|Qt-m|VuwtA-S|&N0NX^AddwY3Yj^2+GOO zz|)?dJLkcV*v>173qmetV%pkFZRtb4h)Y`*oR(f7sS zge2PZRt5|-un%Q^jb?~J;0t~KWY9m~ZSydGgYos>-~E4R3?}zkk-WFctf^1`2&tO) L^zI_m?4SH!sVk() literal 0 HcmV?d00001 diff --git a/assets/images/social/09-routing.png b/assets/images/social/09-routing.png new file mode 100644 index 0000000000000000000000000000000000000000..b8ce1894de80949df344c4866f868b338b643d95 GIT binary patch literal 61344 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 F@-MN%c546t literal 0 HcmV?d00001 diff --git a/assets/images/social/13-jobs.png b/assets/images/social/13-jobs.png new file mode 100644 index 0000000000000000000000000000000000000000..4d2c755b3fa67df87b98b14a97af381df1fdaee9 GIT binary patch literal 42001 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 Vk=XQW4MUxyS5eYbES0x-_Fw5Z9UlMy literal 0 HcmV?d00001 diff --git a/assets/images/social/15-publishing.png b/assets/images/social/15-publishing.png new file mode 100644 index 0000000000000000000000000000000000000000..3d48ca63c2d13e461dff4f3ff50ec1a9bda1329e GIT binary patch literal 54697 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

+Ld$k-1xn?FEB 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 JT=U+e{|BxHNJ#(y literal 0 HcmV?d00001 diff --git a/assets/images/social/16-assets.png b/assets/images/social/16-assets.png new file mode 100644 index 0000000000000000000000000000000000000000..88996d304e741c150909392c1d9d6953d057411f GIT binary patch literal 49105 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 Ag%Tklf{wU39)E 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⁣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 A*Z=?k literal 0 HcmV?d00001 diff --git a/assets/images/social/history.png b/assets/images/social/history.png new file mode 100644 index 0000000000000000000000000000000000000000..69cbdc293b53e8bdfcf2b36f35dea697050d150c GIT binary patch literal 47284 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 gi=Object.create;var dr=Object.defineProperty;var xi=Object.getOwnPropertyDescriptor;var yi=Object.getOwnPropertyNames,Ht=Object.getOwnPropertySymbols,Ei=Object.getPrototypeOf,hr=Object.prototype.hasOwnProperty,Xr=Object.prototype.propertyIsEnumerable;var Jr=(e,t,r)=>t in e?dr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,I=(e,t)=>{for(var r in t||(t={}))hr.call(t,r)&&Jr(e,r,t[r]);if(Ht)for(var r of Ht(t))Xr.call(t,r)&&Jr(e,r,t[r]);return e};var Zr=(e,t)=>{var r={};for(var o in e)hr.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(e!=null&&Ht)for(var o of Ht(e))t.indexOf(o)<0&&Xr.call(e,o)&&(r[o]=e[o]);return r};var br=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var wi=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of yi(t))!hr.call(e,n)&&n!==r&&dr(e,n,{get:()=>t[n],enumerable:!(o=xi(t,n))||o.enumerable});return e};var $t=(e,t,r)=>(r=e!=null?gi(Ei(e)):{},wi(t||!e||!e.__esModule?dr(r,"default",{value:e,enumerable:!0}):r,e));var to=br((vr,eo)=>{(function(e,t){typeof vr=="object"&&typeof eo!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(vr,function(){"use strict";function e(r){var o=!0,n=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(A){return!!(A&&A!==document&&A.nodeName!=="HTML"&&A.nodeName!=="BODY"&&"classList"in A&&"contains"in A.classList)}function c(A){var it=A.type,Ne=A.tagName;return!!(Ne==="INPUT"&&s[it]&&!A.readOnly||Ne==="TEXTAREA"&&!A.readOnly||A.isContentEditable)}function p(A){A.classList.contains("focus-visible")||(A.classList.add("focus-visible"),A.setAttribute("data-focus-visible-added",""))}function m(A){A.hasAttribute("data-focus-visible-added")&&(A.classList.remove("focus-visible"),A.removeAttribute("data-focus-visible-added"))}function f(A){A.metaKey||A.altKey||A.ctrlKey||(a(r.activeElement)&&p(r.activeElement),o=!0)}function u(A){o=!1}function d(A){a(A.target)&&(o||c(A.target))&&p(A.target)}function b(A){a(A.target)&&(A.target.classList.contains("focus-visible")||A.target.hasAttribute("data-focus-visible-added"))&&(n=!0,window.clearTimeout(i),i=window.setTimeout(function(){n=!1},100),m(A.target))}function _(A){document.visibilityState==="hidden"&&(n&&(o=!0),re())}function re(){document.addEventListener("mousemove",Y),document.addEventListener("mousedown",Y),document.addEventListener("mouseup",Y),document.addEventListener("pointermove",Y),document.addEventListener("pointerdown",Y),document.addEventListener("pointerup",Y),document.addEventListener("touchmove",Y),document.addEventListener("touchstart",Y),document.addEventListener("touchend",Y)}function Z(){document.removeEventListener("mousemove",Y),document.removeEventListener("mousedown",Y),document.removeEventListener("mouseup",Y),document.removeEventListener("pointermove",Y),document.removeEventListener("pointerdown",Y),document.removeEventListener("pointerup",Y),document.removeEventListener("touchmove",Y),document.removeEventListener("touchstart",Y),document.removeEventListener("touchend",Y)}function Y(A){A.target.nodeName&&A.target.nodeName.toLowerCase()==="html"||(o=!1,Z())}document.addEventListener("keydown",f,!0),document.addEventListener("mousedown",u,!0),document.addEventListener("pointerdown",u,!0),document.addEventListener("touchstart",u,!0),document.addEventListener("visibilitychange",_,!0),re(),r.addEventListener("focus",d,!0),r.addEventListener("blur",b,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var Vr=br((Mt,Dr)=>{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof Mt=="object"&&typeof Dr=="object"?Dr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mt=="object"?Mt.ClipboardJS=r():t.ClipboardJS=r()})(Mt,function(){return function(){var e={686:function(o,n,i){"use strict";i.d(n,{default:function(){return vi}});var s=i(279),a=i.n(s),c=i(370),p=i.n(c),m=i(817),f=i.n(m);function u(F){try{return document.execCommand(F)}catch(S){return!1}}var d=function(S){var y=f()(S);return u("cut"),y},b=d;function _(F){var S=document.documentElement.getAttribute("dir")==="rtl",y=document.createElement("textarea");y.style.fontSize="12pt",y.style.border="0",y.style.padding="0",y.style.margin="0",y.style.position="absolute",y.style[S?"right":"left"]="-9999px";var R=window.pageYOffset||document.documentElement.scrollTop;return y.style.top="".concat(R,"px"),y.setAttribute("readonly",""),y.value=F,y}var re=function(S,y){var R=_(S);y.container.appendChild(R);var P=f()(R);return u("copy"),R.remove(),P},Z=function(S){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},R="";return typeof S=="string"?R=re(S,y):S instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(S==null?void 0:S.type)?R=re(S.value,y):(R=f()(S),u("copy")),R},Y=Z;function A(F){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?A=function(y){return typeof y}:A=function(y){return y&&typeof Symbol=="function"&&y.constructor===Symbol&&y!==Symbol.prototype?"symbol":typeof y},A(F)}var it=function(){var S=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},y=S.action,R=y===void 0?"copy":y,P=S.container,q=S.target,Me=S.text;if(R!=="copy"&&R!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(q!==void 0)if(q&&A(q)==="object"&&q.nodeType===1){if(R==="copy"&&q.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(R==="cut"&&(q.hasAttribute("readonly")||q.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Me)return Y(Me,{container:P});if(q)return R==="cut"?b(q):Y(q,{container:P})},Ne=it;function Ie(F){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Ie=function(y){return typeof y}:Ie=function(y){return y&&typeof Symbol=="function"&&y.constructor===Symbol&&y!==Symbol.prototype?"symbol":typeof y},Ie(F)}function pi(F,S){if(!(F instanceof S))throw new TypeError("Cannot call a class as a function")}function Gr(F,S){for(var y=0;y0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof P.action=="function"?P.action:this.defaultAction,this.target=typeof P.target=="function"?P.target:this.defaultTarget,this.text=typeof P.text=="function"?P.text:this.defaultText,this.container=Ie(P.container)==="object"?P.container:document.body}},{key:"listenClick",value:function(P){var q=this;this.listener=p()(P,"click",function(Me){return q.onClick(Me)})}},{key:"onClick",value:function(P){var q=P.delegateTarget||P.currentTarget,Me=this.action(q)||"copy",kt=Ne({action:Me,container:this.container,target:this.target(q),text:this.text(q)});this.emit(kt?"success":"error",{action:Me,text:kt,trigger:q,clearSelection:function(){q&&q.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(P){return ur("action",P)}},{key:"defaultTarget",value:function(P){var q=ur("target",P);if(q)return document.querySelector(q)}},{key:"defaultText",value:function(P){return ur("text",P)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(P){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return Y(P,q)}},{key:"cut",value:function(P){return b(P)}},{key:"isSupported",value:function(){var P=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],q=typeof P=="string"?[P]:P,Me=!!document.queryCommandSupported;return q.forEach(function(kt){Me=Me&&!!document.queryCommandSupported(kt)}),Me}}]),y}(a()),vi=bi},828:function(o){var n=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,c){for(;a&&a.nodeType!==n;){if(typeof a.matches=="function"&&a.matches(c))return a;a=a.parentNode}}o.exports=s},438:function(o,n,i){var s=i(828);function a(m,f,u,d,b){var _=p.apply(this,arguments);return m.addEventListener(u,_,b),{destroy:function(){m.removeEventListener(u,_,b)}}}function c(m,f,u,d,b){return typeof m.addEventListener=="function"?a.apply(null,arguments):typeof u=="function"?a.bind(null,document).apply(null,arguments):(typeof m=="string"&&(m=document.querySelectorAll(m)),Array.prototype.map.call(m,function(_){return a(_,f,u,d,b)}))}function p(m,f,u,d){return function(b){b.delegateTarget=s(b.target,f),b.delegateTarget&&d.call(m,b)}}o.exports=c},879:function(o,n){n.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},n.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||n.node(i[0]))},n.string=function(i){return typeof i=="string"||i instanceof String},n.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(o,n,i){var s=i(879),a=i(438);function c(u,d,b){if(!u&&!d&&!b)throw new Error("Missing required arguments");if(!s.string(d))throw new TypeError("Second argument must be a String");if(!s.fn(b))throw new TypeError("Third argument must be a Function");if(s.node(u))return p(u,d,b);if(s.nodeList(u))return m(u,d,b);if(s.string(u))return f(u,d,b);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function p(u,d,b){return u.addEventListener(d,b),{destroy:function(){u.removeEventListener(d,b)}}}function m(u,d,b){return Array.prototype.forEach.call(u,function(_){_.addEventListener(d,b)}),{destroy:function(){Array.prototype.forEach.call(u,function(_){_.removeEventListener(d,b)})}}}function f(u,d,b){return a(document.body,u,d,b)}o.exports=c},817:function(o){function n(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var c=window.getSelection(),p=document.createRange();p.selectNodeContents(i),c.removeAllRanges(),c.addRange(p),s=c.toString()}return s}o.exports=n},279:function(o){function n(){}n.prototype={on:function(i,s,a){var c=this.e||(this.e={});return(c[i]||(c[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var c=this;function p(){c.off(i,p),s.apply(a,arguments)}return p._=s,this.on(i,p,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),c=0,p=a.length;for(c;c{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var _a=/["'&<>]/;Pn.exports=Aa;function Aa(e){var t=""+e,r=_a.exec(t);if(!r)return t;var o,n="",i=0,s=0;for(i=r.index;i0&&i[i.length-1])&&(p[0]===6||p[0]===2)){r=0;continue}if(p[0]===3&&(!i||p[1]>i[0]&&p[1]=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function U(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var o=r.call(e),n,i=[],s;try{for(;(t===void 0||t-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(a){s={error:a}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(s)throw s.error}}return i}function D(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,i;o1||a(u,d)})})}function a(u,d){try{c(o[u](d))}catch(b){f(i[0][3],b)}}function c(u){u.value instanceof Ze?Promise.resolve(u.value.v).then(p,m):f(i[0][2],u)}function p(u){a("next",u)}function m(u){a("throw",u)}function f(u,d){u(d),i.shift(),i.length&&a(i[0][0],i[0][1])}}function no(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Ee=="function"?Ee(e):e[Symbol.iterator](),r={},o("next"),o("throw"),o("return"),r[Symbol.asyncIterator]=function(){return this},r);function o(i){r[i]=e[i]&&function(s){return new Promise(function(a,c){s=e[i](s),n(a,c,s.done,s.value)})}}function n(i,s,a,c){Promise.resolve(c).then(function(p){i({value:p,done:a})},s)}}function C(e){return typeof e=="function"}function at(e){var t=function(o){Error.call(o),o.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var It=at(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(o,n){return n+1+") "+o.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function De(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Pe=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,o,n,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Ee(s),c=a.next();!c.done;c=a.next()){var p=c.value;p.remove(this)}}catch(_){t={error:_}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var m=this.initialTeardown;if(C(m))try{m()}catch(_){i=_ instanceof It?_.errors:[_]}var f=this._finalizers;if(f){this._finalizers=null;try{for(var u=Ee(f),d=u.next();!d.done;d=u.next()){var b=d.value;try{io(b)}catch(_){i=i!=null?i:[],_ instanceof It?i=D(D([],U(i)),U(_.errors)):i.push(_)}}}catch(_){o={error:_}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(o)throw o.error}}}if(i)throw new It(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)io(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&De(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&De(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var xr=Pe.EMPTY;function Pt(e){return e instanceof Pe||e&&"closed"in e&&C(e.remove)&&C(e.add)&&C(e.unsubscribe)}function io(e){C(e)?e():e.unsubscribe()}var Le={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var st={setTimeout:function(e,t){for(var r=[],o=2;o0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var o=this,n=this,i=n.hasError,s=n.isStopped,a=n.observers;return i||s?xr:(this.currentObservers=null,a.push(r),new Pe(function(){o.currentObservers=null,De(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var o=this,n=o.hasError,i=o.thrownError,s=o.isStopped;n?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new j;return r.source=this,r},t.create=function(r,o){return new uo(r,o)},t}(j);var uo=function(e){ie(t,e);function t(r,o){var n=e.call(this)||this;return n.destination=r,n.source=o,n}return t.prototype.next=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.next)===null||n===void 0||n.call(o,r)},t.prototype.error=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.error)===null||n===void 0||n.call(o,r)},t.prototype.complete=function(){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||o===void 0||o.call(r)},t.prototype._subscribe=function(r){var o,n;return(n=(o=this.source)===null||o===void 0?void 0:o.subscribe(r))!==null&&n!==void 0?n:xr},t}(x);var yt={now:function(){return(yt.delegate||Date).now()},delegate:void 0};var Et=function(e){ie(t,e);function t(r,o,n){r===void 0&&(r=1/0),o===void 0&&(o=1/0),n===void 0&&(n=yt);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=o,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=o===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,o),i}return t.prototype.next=function(r){var o=this,n=o.isStopped,i=o._buffer,s=o._infiniteTimeWindow,a=o._timestampProvider,c=o._windowTime;n||(i.push(r),!s&&i.push(a.now()+c)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var o=this._innerSubscribe(r),n=this,i=n._infiniteTimeWindow,s=n._buffer,a=s.slice(),c=0;c0?e.prototype.requestAsyncId.call(this,r,o,n):(r.actions.push(this),r._scheduled||(r._scheduled=mt.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,o,n){var i;if(n===void 0&&(n=0),n!=null?n>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,o,n);var s=r.actions;o!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==o&&(mt.cancelAnimationFrame(o),r._scheduled=void 0)},t}(Wt);var vo=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var o=this._scheduled;this._scheduled=void 0;var n=this.actions,i;r=r||n.shift();do if(i=r.execute(r.state,r.delay))break;while((r=n[0])&&r.id===o&&n.shift());if(this._active=!1,i){for(;(r=n[0])&&r.id===o&&n.shift();)r.unsubscribe();throw i}},t}(Ut);var Te=new vo(bo);var T=new j(function(e){return e.complete()});function Nt(e){return e&&C(e.schedule)}function Mr(e){return e[e.length-1]}function Qe(e){return C(Mr(e))?e.pop():void 0}function Oe(e){return Nt(Mr(e))?e.pop():void 0}function Dt(e,t){return typeof Mr(e)=="number"?e.pop():t}var lt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Vt(e){return C(e==null?void 0:e.then)}function zt(e){return C(e[pt])}function qt(e){return Symbol.asyncIterator&&C(e==null?void 0:e[Symbol.asyncIterator])}function Kt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function ki(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Qt=ki();function Yt(e){return C(e==null?void 0:e[Qt])}function Bt(e){return oo(this,arguments,function(){var r,o,n,i;return Rt(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,Ze(r.read())];case 3:return o=s.sent(),n=o.value,i=o.done,i?[4,Ze(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,Ze(n)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function Gt(e){return C(e==null?void 0:e.getReader)}function W(e){if(e instanceof j)return e;if(e!=null){if(zt(e))return Hi(e);if(lt(e))return $i(e);if(Vt(e))return Ri(e);if(qt(e))return go(e);if(Yt(e))return Ii(e);if(Gt(e))return Pi(e)}throw Kt(e)}function Hi(e){return new j(function(t){var r=e[pt]();if(C(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function $i(e){return new j(function(t){for(var r=0;r=2;return function(o){return o.pipe(e?L(function(n,i){return e(n,i,o)}):de,ge(1),r?He(t):Io(function(){return new Xt}))}}function Po(){for(var e=[],t=0;t=2,!0))}function le(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new x}:t,o=e.resetOnError,n=o===void 0?!0:o,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,c=a===void 0?!0:a;return function(p){var m,f,u,d=0,b=!1,_=!1,re=function(){f==null||f.unsubscribe(),f=void 0},Z=function(){re(),m=u=void 0,b=_=!1},Y=function(){var A=m;Z(),A==null||A.unsubscribe()};return g(function(A,it){d++,!_&&!b&&re();var Ne=u=u!=null?u:r();it.add(function(){d--,d===0&&!_&&!b&&(f=kr(Y,c))}),Ne.subscribe(it),!m&&d>0&&(m=new tt({next:function(Ie){return Ne.next(Ie)},error:function(Ie){_=!0,re(),f=kr(Z,n,Ie),Ne.error(Ie)},complete:function(){b=!0,re(),f=kr(Z,s),Ne.complete()}}),W(A).subscribe(m))})(p)}}function kr(e,t){for(var r=[],o=2;oe.next(document)),e}function z(e,t=document){return Array.from(t.querySelectorAll(e))}function N(e,t=document){let r=ce(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function ce(e,t=document){return t.querySelector(e)||void 0}function Re(){return document.activeElement instanceof HTMLElement&&document.activeElement||void 0}var ea=M(h(document.body,"focusin"),h(document.body,"focusout")).pipe(ke(1),V(void 0),l(()=>Re()||document.body),B(1));function er(e){return ea.pipe(l(t=>e.contains(t)),G())}function Je(e){return{x:e.offsetLeft,y:e.offsetTop}}function Uo(e){return M(h(window,"load"),h(window,"resize")).pipe(Ae(0,Te),l(()=>Je(e)),V(Je(e)))}function tr(e){return{x:e.scrollLeft,y:e.scrollTop}}function dt(e){return M(h(e,"scroll"),h(window,"resize")).pipe(Ae(0,Te),l(()=>tr(e)),V(tr(e)))}function No(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)No(e,r)}function O(e,t,...r){let o=document.createElement(e);if(t)for(let n of Object.keys(t))typeof t[n]!="undefined"&&(typeof t[n]!="boolean"?o.setAttribute(n,t[n]):o.setAttribute(n,""));for(let n of r)No(o,n);return o}function rr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function ht(e){let t=O("script",{src:e});return $(()=>(document.head.appendChild(t),M(h(t,"load"),h(t,"error").pipe(v(()=>St(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(l(()=>{}),k(()=>document.head.removeChild(t)),ge(1))))}var Do=new x,ta=$(()=>typeof ResizeObserver=="undefined"?ht("https://unpkg.com/resize-observer-polyfill"):H(void 0)).pipe(l(()=>new ResizeObserver(e=>{for(let t of e)Do.next(t)})),v(e=>M(Ve,H(e)).pipe(k(()=>e.disconnect()))),B(1));function he(e){return{width:e.offsetWidth,height:e.offsetHeight}}function xe(e){return ta.pipe(w(t=>t.observe(e)),v(t=>Do.pipe(L(({target:r})=>r===e),k(()=>t.unobserve(e)),l(()=>he(e)))),V(he(e)))}function bt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function or(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}var Vo=new x,ra=$(()=>H(new IntersectionObserver(e=>{for(let t of e)Vo.next(t)},{threshold:0}))).pipe(v(e=>M(Ve,H(e)).pipe(k(()=>e.disconnect()))),B(1));function nr(e){return ra.pipe(w(t=>t.observe(e)),v(t=>Vo.pipe(L(({target:r})=>r===e),k(()=>t.unobserve(e)),l(({isIntersecting:r})=>r))))}function zo(e,t=16){return dt(e).pipe(l(({y:r})=>{let o=he(e),n=bt(e);return r>=n.height-o.height-t}),G())}var ir={drawer:N("[data-md-toggle=drawer]"),search:N("[data-md-toggle=search]")};function qo(e){return ir[e].checked}function Ke(e,t){ir[e].checked!==t&&ir[e].click()}function We(e){let t=ir[e];return h(t,"change").pipe(l(()=>t.checked),V(t.checked))}function oa(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function na(){return M(h(window,"compositionstart").pipe(l(()=>!0)),h(window,"compositionend").pipe(l(()=>!1))).pipe(V(!1))}function Ko(){let e=h(window,"keydown").pipe(L(t=>!(t.metaKey||t.ctrlKey)),l(t=>({mode:qo("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),L(({mode:t,type:r})=>{if(t==="global"){let o=Re();if(typeof o!="undefined")return!oa(o,r)}return!0}),le());return na().pipe(v(t=>t?T:e))}function fe(){return new URL(location.href)}function ot(e){location.href=e.href}function Qo(){return new x}function Yo(){return location.hash.slice(1)}function Pr(e){let t=O("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function ia(e){return M(h(window,"hashchange"),e).pipe(l(Yo),V(Yo()),L(t=>t.length>0),B(1))}function Bo(e){return ia(e).pipe(l(t=>ce(`[id="${t}"]`)),L(t=>typeof t!="undefined"))}function Fr(e){let t=matchMedia(e);return Zt(r=>t.addListener(()=>r(t.matches))).pipe(V(t.matches))}function Go(){let e=matchMedia("print");return M(h(window,"beforeprint").pipe(l(()=>!0)),h(window,"afterprint").pipe(l(()=>!1))).pipe(V(e.matches))}function jr(e,t){return e.pipe(v(r=>r?t():T))}function ar(e,t={credentials:"same-origin"}){return me(fetch(`${e}`,t)).pipe(pe(()=>T),v(r=>r.status!==200?St(()=>new Error(r.statusText)):H(r)))}function Ue(e,t){return ar(e,t).pipe(v(r=>r.json()),B(1))}function Jo(e,t){let r=new DOMParser;return ar(e,t).pipe(v(o=>o.text()),l(o=>r.parseFromString(o,"text/xml")),B(1))}function Xo(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function Zo(){return M(h(window,"scroll",{passive:!0}),h(window,"resize",{passive:!0})).pipe(l(Xo),V(Xo()))}function en(){return{width:innerWidth,height:innerHeight}}function tn(){return h(window,"resize",{passive:!0}).pipe(l(en),V(en()))}function rn(){return Q([Zo(),tn()]).pipe(l(([e,t])=>({offset:e,size:t})),B(1))}function sr(e,{viewport$:t,header$:r}){let o=t.pipe(X("size")),n=Q([o,r]).pipe(l(()=>Je(e)));return Q([r,t,n]).pipe(l(([{height:i},{offset:s,size:a},{x:c,y:p}])=>({offset:{x:s.x-c,y:s.y-p+i},size:a})))}function aa(e){return h(e,"message",t=>t.data)}function sa(e){let t=new x;return t.subscribe(r=>e.postMessage(r)),t}function on(e,t=new Worker(e)){let r=aa(t),o=sa(t),n=new x;n.subscribe(o);let i=o.pipe(J(),ee(!0));return n.pipe(J(),qe(r.pipe(K(i))),le())}var ca=N("#__config"),vt=JSON.parse(ca.textContent);vt.base=`${new URL(vt.base,fe())}`;function ue(){return vt}function te(e){return vt.features.includes(e)}function be(e,t){return typeof t!="undefined"?vt.translations[e].replace("#",t.toString()):vt.translations[e]}function ye(e,t=document){return N(`[data-md-component=${e}]`,t)}function ne(e,t=document){return z(`[data-md-component=${e}]`,t)}function pa(e){let t=N(".md-typeset > :first-child",e);return h(t,"click",{once:!0}).pipe(l(()=>N(".md-typeset",e)),l(r=>({hash:__md_hash(r.innerHTML)})))}function nn(e){if(!te("announce.dismiss")||!e.childElementCount)return T;if(!e.hidden){let t=N(".md-typeset",e);__md_hash(t.innerHTML)===__md_get("__announce")&&(e.hidden=!0)}return $(()=>{let t=new x;return t.subscribe(({hash:r})=>{e.hidden=!0,__md_set("__announce",r)}),pa(e).pipe(w(r=>t.next(r)),k(()=>t.complete()),l(r=>I({ref:e},r)))})}function ma(e,{target$:t}){return t.pipe(l(r=>({hidden:r!==e})))}function an(e,t){let r=new x;return r.subscribe(({hidden:o})=>{e.hidden=o}),ma(e,t).pipe(w(o=>r.next(o)),k(()=>r.complete()),l(o=>I({ref:e},o)))}function la(e,t){let r=$(()=>Q([Uo(e),dt(t)])).pipe(l(([{x:o,y:n},i])=>{let{width:s,height:a}=he(e);return{x:o-i.x+s/2,y:n-i.y+a/2}}));return er(e).pipe(v(o=>r.pipe(l(n=>({active:o,offset:n})),ge(+!o||1/0))))}function sn(e,t,{target$:r}){let[o,n]=Array.from(e.children);return $(()=>{let i=new x,s=i.pipe(J(),ee(!0));return i.subscribe({next({offset:a}){e.style.setProperty("--md-tooltip-x",`${a.x}px`),e.style.setProperty("--md-tooltip-y",`${a.y}px`)},complete(){e.style.removeProperty("--md-tooltip-x"),e.style.removeProperty("--md-tooltip-y")}}),nr(e).pipe(K(s)).subscribe(a=>{e.toggleAttribute("data-md-visible",a)}),M(i.pipe(L(({active:a})=>a)),i.pipe(ke(250),L(({active:a})=>!a))).subscribe({next({active:a}){a?e.prepend(o):o.remove()},complete(){e.prepend(o)}}),i.pipe(Ae(16,Te)).subscribe(({active:a})=>{o.classList.toggle("md-tooltip--active",a)}),i.pipe(Rr(125,Te),L(()=>!!e.offsetParent),l(()=>e.offsetParent.getBoundingClientRect()),l(({x:a})=>a)).subscribe({next(a){a?e.style.setProperty("--md-tooltip-0",`${-a}px`):e.style.removeProperty("--md-tooltip-0")},complete(){e.style.removeProperty("--md-tooltip-0")}}),h(n,"click").pipe(K(s),L(a=>!(a.metaKey||a.ctrlKey))).subscribe(a=>{a.stopPropagation(),a.preventDefault()}),h(n,"mousedown").pipe(K(s),oe(i)).subscribe(([a,{active:c}])=>{var p;if(a.button!==0||a.metaKey||a.ctrlKey)a.preventDefault();else if(c){a.preventDefault();let m=e.parentElement.closest(".md-annotation");m instanceof HTMLElement?m.focus():(p=Re())==null||p.blur()}}),r.pipe(K(s),L(a=>a===o),ze(125)).subscribe(()=>e.focus()),la(e,t).pipe(w(a=>i.next(a)),k(()=>i.complete()),l(a=>I({ref:e},a)))})}function Wr(e){return O("div",{class:"md-tooltip",id:e},O("div",{class:"md-tooltip__inner md-typeset"}))}function cn(e,t){if(t=t?`${t}_annotation_${e}`:void 0,t){let r=t?`#${t}`:void 0;return O("aside",{class:"md-annotation",tabIndex:0},Wr(t),O("a",{href:r,class:"md-annotation__index",tabIndex:-1},O("span",{"data-md-annotation-id":e})))}else return O("aside",{class:"md-annotation",tabIndex:0},Wr(t),O("span",{class:"md-annotation__index",tabIndex:-1},O("span",{"data-md-annotation-id":e})))}function pn(e){return O("button",{class:"md-clipboard md-icon",title:be("clipboard.copy"),"data-clipboard-target":`#${e} > code`})}function Ur(e,t){let r=t&2,o=t&1,n=Object.keys(e.terms).filter(c=>!e.terms[c]).reduce((c,p)=>[...c,O("del",null,p)," "],[]).slice(0,-1),i=ue(),s=new URL(e.location,i.base);te("search.highlight")&&s.searchParams.set("h",Object.entries(e.terms).filter(([,c])=>c).reduce((c,[p])=>`${c} ${p}`.trim(),""));let{tags:a}=ue();return O("a",{href:`${s}`,class:"md-search-result__link",tabIndex:-1},O("article",{class:"md-search-result__article md-typeset","data-md-score":e.score.toFixed(2)},r>0&&O("div",{class:"md-search-result__icon md-icon"}),r>0&&O("h1",null,e.title),r<=0&&O("h2",null,e.title),o>0&&e.text.length>0&&e.text,e.tags&&e.tags.map(c=>{let p=a?c in a?`md-tag-icon md-tag--${a[c]}`:"md-tag-icon":"";return O("span",{class:`md-tag ${p}`},c)}),o>0&&n.length>0&&O("p",{class:"md-search-result__terms"},be("search.result.term.missing"),": ",...n)))}function mn(e){let t=e[0].score,r=[...e],o=ue(),n=r.findIndex(m=>!`${new URL(m.location,o.base)}`.includes("#")),[i]=r.splice(n,1),s=r.findIndex(m=>m.scoreUr(m,1)),...c.length?[O("details",{class:"md-search-result__more"},O("summary",{tabIndex:-1},O("div",null,c.length>0&&c.length===1?be("search.result.more.one"):be("search.result.more.other",c.length))),...c.map(m=>Ur(m,1)))]:[]];return O("li",{class:"md-search-result__item"},p)}function ln(e){return O("ul",{class:"md-source__facts"},Object.entries(e).map(([t,r])=>O("li",{class:`md-source__fact md-source__fact--${t}`},typeof r=="number"?rr(r):r)))}function Nr(e){let t=`tabbed-control tabbed-control--${e}`;return O("div",{class:t,hidden:!0},O("button",{class:"tabbed-button",tabIndex:-1,"aria-hidden":"true"}))}function fn(e){return O("div",{class:"md-typeset__scrollwrap"},O("div",{class:"md-typeset__table"},e))}function fa(e){let t=ue(),r=new URL(`../${e.version}/`,t.base);return O("li",{class:"md-version__item"},O("a",{href:`${r}`,class:"md-version__link"},e.title))}function un(e,t){return O("div",{class:"md-version"},O("button",{class:"md-version__current","aria-label":be("select.version")},t.title),O("ul",{class:"md-version__list"},e.map(fa)))}function ua(e){return e.tagName==="CODE"?z(".c, .c1, .cm",e):[e]}function da(e){let t=[];for(let r of ua(e)){let o=[],n=document.createNodeIterator(r,NodeFilter.SHOW_TEXT);for(let i=n.nextNode();i;i=n.nextNode())o.push(i);for(let i of o){let s;for(;s=/(\(\d+\))(!)?/.exec(i.textContent);){let[,a,c]=s;if(typeof c=="undefined"){let p=i.splitText(s.index);i=p.splitText(a.length),t.push(p)}else{i.textContent=a,t.push(i);break}}}}return t}function dn(e,t){t.append(...Array.from(e.childNodes))}function cr(e,t,{target$:r,print$:o}){let n=t.closest("[id]"),i=n==null?void 0:n.id,s=new Map;for(let a of da(t)){let[,c]=a.textContent.match(/\((\d+)\)/);ce(`:scope > li:nth-child(${c})`,e)&&(s.set(c,cn(c,i)),a.replaceWith(s.get(c)))}return s.size===0?T:$(()=>{let a=new x,c=a.pipe(J(),ee(!0)),p=[];for(let[m,f]of s)p.push([N(".md-typeset",f),N(`:scope > li:nth-child(${m})`,e)]);return o.pipe(K(c)).subscribe(m=>{e.hidden=!m,e.classList.toggle("md-annotation-list",m);for(let[f,u]of p)m?dn(f,u):dn(u,f)}),M(...[...s].map(([,m])=>sn(m,t,{target$:r}))).pipe(k(()=>a.complete()),le())})}function hn(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return hn(t)}}function bn(e,t){return $(()=>{let r=hn(e);return typeof r!="undefined"?cr(r,e,t):T})}var gn=$t(Vr());var ha=0;function xn(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return xn(t)}}function vn(e){return xe(e).pipe(l(({width:t})=>({scrollable:bt(e).width>t})),X("scrollable"))}function yn(e,t){let{matches:r}=matchMedia("(hover)"),o=$(()=>{let n=new x;if(n.subscribe(({scrollable:s})=>{s&&r?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}),gn.default.isSupported()&&(e.closest(".copy")||te("content.code.copy")&&!e.closest(".no-copy"))){let s=e.closest("pre");s.id=`__code_${ha++}`,s.insertBefore(pn(s.id),e)}let i=e.closest(".highlight");if(i instanceof HTMLElement){let s=xn(i);if(typeof s!="undefined"&&(i.classList.contains("annotate")||te("content.code.annotate"))){let a=cr(s,e,t);return vn(e).pipe(w(c=>n.next(c)),k(()=>n.complete()),l(c=>I({ref:e},c)),qe(xe(i).pipe(l(({width:c,height:p})=>c&&p),G(),v(c=>c?a:T))))}}return vn(e).pipe(w(s=>n.next(s)),k(()=>n.complete()),l(s=>I({ref:e},s)))});return te("content.lazy")?nr(e).pipe(L(n=>n),ge(1),v(()=>o)):o}function ba(e,{target$:t,print$:r}){let o=!0;return M(t.pipe(l(n=>n.closest("details:not([open])")),L(n=>e===n),l(()=>({action:"open",reveal:!0}))),r.pipe(L(n=>n||!o),w(()=>o=e.open),l(n=>({action:n?"open":"close"}))))}function En(e,t){return $(()=>{let r=new x;return r.subscribe(({action:o,reveal:n})=>{e.toggleAttribute("open",o==="open"),n&&e.scrollIntoView()}),ba(e,t).pipe(w(o=>r.next(o)),k(()=>r.complete()),l(o=>I({ref:e},o)))})}var wn=".node circle,.node ellipse,.node path,.node polygon,.node rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}marker{fill:var(--md-mermaid-edge-color)!important}.edgeLabel .label rect{fill:#0000}.label{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.label foreignObject{line-height:normal;overflow:visible}.label div .edgeLabel{color:var(--md-mermaid-label-fg-color)}.edgeLabel,.edgeLabel rect,.label div .edgeLabel{background-color:var(--md-mermaid-label-bg-color)}.edgeLabel,.edgeLabel rect{fill:var(--md-mermaid-label-bg-color);color:var(--md-mermaid-edge-color)}.edgePath .path,.flowchart-link{stroke:var(--md-mermaid-edge-color);stroke-width:.05rem}.edgePath .arrowheadPath{fill:var(--md-mermaid-edge-color);stroke:none}.cluster rect{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}.cluster span{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}g #flowchart-circleEnd,g #flowchart-circleStart,g #flowchart-crossEnd,g #flowchart-crossStart,g #flowchart-pointEnd,g #flowchart-pointStart{stroke:none}g.classGroup line,g.classGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.classGroup text{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.classLabel .box{fill:var(--md-mermaid-label-bg-color);background-color:var(--md-mermaid-label-bg-color);opacity:1}.classLabel .label{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.node .divider{stroke:var(--md-mermaid-node-fg-color)}.relation{stroke:var(--md-mermaid-edge-color)}.cardinality{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.cardinality text{fill:inherit!important}defs #classDiagram-compositionEnd,defs #classDiagram-compositionStart,defs #classDiagram-dependencyEnd,defs #classDiagram-dependencyStart,defs #classDiagram-extensionEnd,defs #classDiagram-extensionStart{fill:var(--md-mermaid-edge-color)!important;stroke:var(--md-mermaid-edge-color)!important}defs #classDiagram-aggregationEnd,defs #classDiagram-aggregationStart{fill:var(--md-mermaid-label-bg-color)!important;stroke:var(--md-mermaid-edge-color)!important}g.stateGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.stateGroup .state-title{fill:var(--md-mermaid-label-fg-color)!important;font-family:var(--md-mermaid-font-family)}g.stateGroup .composit{fill:var(--md-mermaid-label-bg-color)}.nodeLabel{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.node circle.state-end,.node circle.state-start,.start-state{fill:var(--md-mermaid-edge-color);stroke:none}.end-state-inner,.end-state-outer{fill:var(--md-mermaid-edge-color)}.end-state-inner,.node circle.state-end{stroke:var(--md-mermaid-label-bg-color)}.transition{stroke:var(--md-mermaid-edge-color)}[id^=state-fork] rect,[id^=state-join] rect{fill:var(--md-mermaid-edge-color)!important;stroke:none!important}.statediagram-cluster.statediagram-cluster .inner{fill:var(--md-default-bg-color)}.statediagram-cluster rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.statediagram-state rect.divider{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}defs #statediagram-barbEnd{stroke:var(--md-mermaid-edge-color)}.attributeBoxEven,.attributeBoxOdd{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityBox{fill:var(--md-mermaid-label-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityLabel{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.relationshipLabelBox{fill:var(--md-mermaid-label-bg-color);fill-opacity:1;background-color:var(--md-mermaid-label-bg-color);opacity:1}.relationshipLabel{fill:var(--md-mermaid-label-fg-color)}.relationshipLine{stroke:var(--md-mermaid-edge-color)}defs #ONE_OR_MORE_END *,defs #ONE_OR_MORE_START *,defs #ONLY_ONE_END *,defs #ONLY_ONE_START *,defs #ZERO_OR_MORE_END *,defs #ZERO_OR_MORE_START *,defs #ZERO_OR_ONE_END *,defs #ZERO_OR_ONE_START *{stroke:var(--md-mermaid-edge-color)!important}defs #ZERO_OR_MORE_END circle,defs #ZERO_OR_MORE_START circle{fill:var(--md-mermaid-label-bg-color)}.actor{fill:var(--md-mermaid-sequence-actor-bg-color);stroke:var(--md-mermaid-sequence-actor-border-color)}text.actor>tspan{fill:var(--md-mermaid-sequence-actor-fg-color);font-family:var(--md-mermaid-font-family)}line{stroke:var(--md-mermaid-sequence-actor-line-color)}.actor-man circle,.actor-man line{fill:var(--md-mermaid-sequence-actorman-bg-color);stroke:var(--md-mermaid-sequence-actorman-line-color)}.messageLine0,.messageLine1{stroke:var(--md-mermaid-sequence-message-line-color)}.note{fill:var(--md-mermaid-sequence-note-bg-color);stroke:var(--md-mermaid-sequence-note-border-color)}.loopText,.loopText>tspan,.messageText,.noteText>tspan{stroke:none;font-family:var(--md-mermaid-font-family)!important}.messageText{fill:var(--md-mermaid-sequence-message-fg-color)}.loopText,.loopText>tspan{fill:var(--md-mermaid-sequence-loop-fg-color)}.noteText>tspan{fill:var(--md-mermaid-sequence-note-fg-color)}#arrowhead path{fill:var(--md-mermaid-sequence-message-line-color);stroke:none}.loopLine{fill:var(--md-mermaid-sequence-loop-bg-color);stroke:var(--md-mermaid-sequence-loop-border-color)}.labelBox{fill:var(--md-mermaid-sequence-label-bg-color);stroke:none}.labelText,.labelText>span{fill:var(--md-mermaid-sequence-label-fg-color);font-family:var(--md-mermaid-font-family)}.sequenceNumber{fill:var(--md-mermaid-sequence-number-fg-color)}rect.rect{fill:var(--md-mermaid-sequence-box-bg-color);stroke:none}rect.rect+text.text{fill:var(--md-mermaid-sequence-box-fg-color)}defs #sequencenumber{fill:var(--md-mermaid-sequence-number-bg-color)!important}";var zr,ga=0;function xa(){return typeof mermaid=="undefined"||mermaid instanceof Element?ht("https://unpkg.com/mermaid@9.4.3/dist/mermaid.min.js"):H(void 0)}function Sn(e){return e.classList.remove("mermaid"),zr||(zr=xa().pipe(w(()=>mermaid.initialize({startOnLoad:!1,themeCSS:wn,sequence:{actorFontSize:"16px",messageFontSize:"16px",noteFontSize:"16px"}})),l(()=>{}),B(1))),zr.subscribe(()=>{e.classList.add("mermaid");let t=`__mermaid_${ga++}`,r=O("div",{class:"mermaid"}),o=e.textContent;mermaid.mermaidAPI.render(t,o,(n,i)=>{let s=r.attachShadow({mode:"closed"});s.innerHTML=n,e.replaceWith(r),i==null||i(s)})}),zr.pipe(l(()=>({ref:e})))}var Tn=O("table");function On(e){return e.replaceWith(Tn),Tn.replaceWith(fn(e)),H({ref:e})}function ya(e){let t=z(":scope > input",e),r=t.find(o=>o.checked)||t[0];return M(...t.map(o=>h(o,"change").pipe(l(()=>N(`label[for="${o.id}"]`))))).pipe(V(N(`label[for="${r.id}"]`)),l(o=>({active:o})))}function Mn(e,{viewport$:t}){let r=Nr("prev");e.append(r);let o=Nr("next");e.append(o);let n=N(".tabbed-labels",e);return $(()=>{let i=new x,s=i.pipe(J(),ee(!0));return Q([i,xe(e)]).pipe(Ae(1,Te),K(s)).subscribe({next([{active:a},c]){let p=Je(a),{width:m}=he(a);e.style.setProperty("--md-indicator-x",`${p.x}px`),e.style.setProperty("--md-indicator-width",`${m}px`);let f=tr(n);(p.xf.x+c.width)&&n.scrollTo({left:Math.max(0,p.x-16),behavior:"smooth"})},complete(){e.style.removeProperty("--md-indicator-x"),e.style.removeProperty("--md-indicator-width")}}),Q([dt(n),xe(n)]).pipe(K(s)).subscribe(([a,c])=>{let p=bt(n);r.hidden=a.x<16,o.hidden=a.x>p.width-c.width-16}),M(h(r,"click").pipe(l(()=>-1)),h(o,"click").pipe(l(()=>1))).pipe(K(s)).subscribe(a=>{let{width:c}=he(n);n.scrollBy({left:c*a,behavior:"smooth"})}),te("content.tabs.link")&&i.pipe(je(1),oe(t)).subscribe(([{active:a},{offset:c}])=>{let p=a.innerText.trim();if(a.hasAttribute("data-md-switching"))a.removeAttribute("data-md-switching");else{let m=e.offsetTop-c.y;for(let u of z("[data-tabs]"))for(let d of z(":scope > input",u)){let b=N(`label[for="${d.id}"]`);if(b!==a&&b.innerText.trim()===p){b.setAttribute("data-md-switching",""),d.click();break}}window.scrollTo({top:e.offsetTop-m});let f=__md_get("__tabs")||[];__md_set("__tabs",[...new Set([p,...f])])}}),i.pipe(K(s)).subscribe(()=>{for(let a of z("audio, video",e))a.pause()}),ya(e).pipe(w(a=>i.next(a)),k(()=>i.complete()),l(a=>I({ref:e},a)))}).pipe(rt(ae))}function Ln(e,{viewport$:t,target$:r,print$:o}){return M(...z(".annotate:not(.highlight)",e).map(n=>bn(n,{target$:r,print$:o})),...z("pre:not(.mermaid) > code",e).map(n=>yn(n,{target$:r,print$:o})),...z("pre.mermaid",e).map(n=>Sn(n)),...z("table:not([class])",e).map(n=>On(n)),...z("details",e).map(n=>En(n,{target$:r,print$:o})),...z("[data-tabs]",e).map(n=>Mn(n,{viewport$:t})))}function Ea(e,{alert$:t}){return t.pipe(v(r=>M(H(!0),H(!1).pipe(ze(2e3))).pipe(l(o=>({message:r,active:o})))))}function _n(e,t){let r=N(".md-typeset",e);return $(()=>{let o=new x;return o.subscribe(({message:n,active:i})=>{e.classList.toggle("md-dialog--active",i),r.textContent=n}),Ea(e,t).pipe(w(n=>o.next(n)),k(()=>o.complete()),l(n=>I({ref:e},n)))})}function wa({viewport$:e}){if(!te("header.autohide"))return H(!1);let t=e.pipe(l(({offset:{y:n}})=>n),Ce(2,1),l(([n,i])=>[nMath.abs(i-n.y)>100),l(([,[n]])=>n),G()),o=We("search");return Q([e,o]).pipe(l(([{offset:n},i])=>n.y>400&&!i),G(),v(n=>n?r:H(!1)),V(!1))}function An(e,t){return $(()=>Q([xe(e),wa(t)])).pipe(l(([{height:r},o])=>({height:r,hidden:o})),G((r,o)=>r.height===o.height&&r.hidden===o.hidden),B(1))}function Cn(e,{header$:t,main$:r}){return $(()=>{let o=new x,n=o.pipe(J(),ee(!0));return o.pipe(X("active"),Ge(t)).subscribe(([{active:i},{hidden:s}])=>{e.classList.toggle("md-header--shadow",i&&!s),e.hidden=s}),r.subscribe(o),t.pipe(K(n),l(i=>I({ref:e},i)))})}function Sa(e,{viewport$:t,header$:r}){return sr(e,{viewport$:t,header$:r}).pipe(l(({offset:{y:o}})=>{let{height:n}=he(e);return{active:o>=n}}),X("active"))}function kn(e,t){return $(()=>{let r=new x;r.subscribe({next({active:n}){e.classList.toggle("md-header__title--active",n)},complete(){e.classList.remove("md-header__title--active")}});let o=ce(".md-content h1");return typeof o=="undefined"?T:Sa(o,t).pipe(w(n=>r.next(n)),k(()=>r.complete()),l(n=>I({ref:e},n)))})}function Hn(e,{viewport$:t,header$:r}){let o=r.pipe(l(({height:i})=>i),G()),n=o.pipe(v(()=>xe(e).pipe(l(({height:i})=>({top:e.offsetTop,bottom:e.offsetTop+i})),X("bottom"))));return Q([o,n,t]).pipe(l(([i,{top:s,bottom:a},{offset:{y:c},size:{height:p}}])=>(p=Math.max(0,p-Math.max(0,s-c,i)-Math.max(0,p+c-a)),{offset:s-i,height:p,active:s-i<=c})),G((i,s)=>i.offset===s.offset&&i.height===s.height&&i.active===s.active))}function Ta(e){let t=__md_get("__palette")||{index:e.findIndex(r=>matchMedia(r.getAttribute("data-md-color-media")).matches)};return H(...e).pipe(se(r=>h(r,"change").pipe(l(()=>r))),V(e[Math.max(0,t.index)]),l(r=>({index:e.indexOf(r),color:{scheme:r.getAttribute("data-md-color-scheme"),primary:r.getAttribute("data-md-color-primary"),accent:r.getAttribute("data-md-color-accent")}})),B(1))}function $n(e){let t=O("meta",{name:"theme-color"});document.head.appendChild(t);let r=O("meta",{name:"color-scheme"});return document.head.appendChild(r),$(()=>{let o=new x;o.subscribe(i=>{document.body.setAttribute("data-md-color-switching","");for(let[s,a]of Object.entries(i.color))document.body.setAttribute(`data-md-color-${s}`,a);for(let s=0;s{let i=ye("header"),s=window.getComputedStyle(i);return r.content=s.colorScheme,s.backgroundColor.match(/\d+/g).map(a=>(+a).toString(16).padStart(2,"0")).join("")})).subscribe(i=>t.content=`#${i}`),o.pipe(_e(ae)).subscribe(()=>{document.body.removeAttribute("data-md-color-switching")});let n=z("input",e);return Ta(n).pipe(w(i=>o.next(i)),k(()=>o.complete()),l(i=>I({ref:e},i)))})}var qr=$t(Vr());function Oa(e){e.setAttribute("data-md-copying","");let t=e.innerText;return e.removeAttribute("data-md-copying"),t}function Rn({alert$:e}){qr.default.isSupported()&&new j(t=>{new qr.default("[data-clipboard-target], [data-clipboard-text]",{text:r=>r.getAttribute("data-clipboard-text")||Oa(N(r.getAttribute("data-clipboard-target")))}).on("success",r=>t.next(r))}).pipe(w(t=>{t.trigger.focus()}),l(()=>be("clipboard.copied"))).subscribe(e)}function Ma(e){if(e.length<2)return[""];let[t,r]=[...e].sort((n,i)=>n.length-i.length).map(n=>n.replace(/[^/]+$/,"")),o=0;if(t===r)o=t.length;else for(;t.charCodeAt(o)===r.charCodeAt(o);)o++;return e.map(n=>n.replace(t.slice(0,o),""))}function pr(e){let t=__md_get("__sitemap",sessionStorage,e);if(t)return H(t);{let r=ue();return Jo(new URL("sitemap.xml",e||r.base)).pipe(l(o=>Ma(z("loc",o).map(n=>n.textContent))),pe(()=>T),He([]),w(o=>__md_set("__sitemap",o,sessionStorage,e)))}}function In({location$:e,viewport$:t}){let r=ue();if(location.protocol==="file:")return T;let o=pr().pipe(l(p=>p.map(m=>`${new URL(m,r.base)}`))),n=h(document.body,"click").pipe(oe(o),v(([p,m])=>{if(!(p.target instanceof Element))return T;let f=p.target.closest("a");if(f===null)return T;if(f.target||p.metaKey||p.ctrlKey)return T;let u=new URL(f.href);return u.search=u.hash="",m.includes(`${u}`)?(p.preventDefault(),H(new URL(f.href))):T}),le());n.pipe(ge(1)).subscribe(()=>{let p=ce("link[rel=icon]");typeof p!="undefined"&&(p.href=p.href)}),h(window,"beforeunload").subscribe(()=>{history.scrollRestoration="auto"}),n.pipe(oe(t)).subscribe(([p,{offset:m}])=>{history.scrollRestoration="manual",history.replaceState(m,""),history.pushState(null,"",p)}),n.subscribe(e);let i=e.pipe(V(fe()),X("pathname"),je(1),v(p=>ar(p).pipe(pe(()=>(ot(p),T))))),s=new DOMParser,a=i.pipe(v(p=>p.text()),v(p=>{let m=s.parseFromString(p,"text/html");for(let u of["title","link[rel=canonical]","meta[name=author]","meta[name=description]","[data-md-component=announce]","[data-md-component=container]","[data-md-component=header-topic]","[data-md-component=outdated]","[data-md-component=logo]","[data-md-component=skip]",...te("navigation.tabs.sticky")?["[data-md-component=tabs]"]:[]]){let d=ce(u),b=ce(u,m);typeof d!="undefined"&&typeof b!="undefined"&&d.replaceWith(b)}let f=ye("container");return Fe(z("script",f)).pipe(v(u=>{let d=m.createElement("script");if(u.src){for(let b of u.getAttributeNames())d.setAttribute(b,u.getAttribute(b));return u.replaceWith(d),new j(b=>{d.onload=()=>b.complete()})}else return d.textContent=u.textContent,u.replaceWith(d),T}),J(),ee(m))}),le());return h(window,"popstate").pipe(l(fe)).subscribe(e),e.pipe(V(fe()),Ce(2,1),v(([p,m])=>p.pathname===m.pathname&&p.hash!==m.hash?H(m):T)).subscribe(p=>{var m,f;history.state!==null||!p.hash?window.scrollTo(0,(f=(m=history.state)==null?void 0:m.y)!=null?f:0):(history.scrollRestoration="auto",Pr(p.hash),history.scrollRestoration="manual")}),a.pipe(oe(e)).subscribe(([,p])=>{var m,f;history.state!==null||!p.hash?window.scrollTo(0,(f=(m=history.state)==null?void 0:m.y)!=null?f:0):Pr(p.hash)}),a.pipe(v(()=>t),X("offset"),ke(100)).subscribe(({offset:p})=>{history.replaceState(p,"")}),a}var jn=$t(Fn());function Wn(e){let t=e.separator.split("|").map(n=>n.replace(/(\(\?[!=<][^)]+\))/g,"").length===0?"\uFFFD":n).join("|"),r=new RegExp(t,"img"),o=(n,i,s)=>`${i}${s}`;return n=>{n=n.replace(/[\s*+\-:~^]+/g," ").trim();let i=new RegExp(`(^|${e.separator}|)(${n.replace(/[|\\{}()[\]^$+*?.-]/g,"\\$&").replace(r,"|")})`,"img");return s=>(0,jn.default)(s).replace(i,o).replace(/<\/mark>(\s+)]*>/img,"$1")}}function Lt(e){return e.type===1}function mr(e){return e.type===3}function Un(e,t){let r=on(e);return M(H(location.protocol!=="file:"),We("search")).pipe($e(o=>o),v(()=>t)).subscribe(({config:o,docs:n})=>r.next({type:0,data:{config:o,docs:n,options:{suggest:te("search.suggest")}}})),r}function Nn({document$:e}){let t=ue(),r=Ue(new URL("../versions.json",t.base)).pipe(pe(()=>T)),o=r.pipe(l(n=>{let[,i]=t.base.match(/([^/]+)\/?$/);return n.find(({version:s,aliases:a})=>s===i||a.includes(i))||n[0]}));r.pipe(l(n=>new Map(n.map(i=>[`${new URL(`../${i.version}/`,t.base)}`,i]))),v(n=>h(document.body,"click").pipe(L(i=>!i.metaKey&&!i.ctrlKey),oe(o),v(([i,s])=>{if(i.target instanceof Element){let a=i.target.closest("a");if(a&&!a.target&&n.has(a.href)){let c=a.href;return!i.target.closest(".md-version")&&n.get(c)===s?T:(i.preventDefault(),H(c))}}return T}),v(i=>{let{version:s}=n.get(i);return pr(new URL(i)).pipe(l(a=>{let p=fe().href.replace(t.base,"");return a.includes(p.split("#")[0])?new URL(`../${s}/${p}`,t.base):new URL(i)}))})))).subscribe(n=>ot(n)),Q([r,o]).subscribe(([n,i])=>{N(".md-header__topic").appendChild(un(n,i))}),e.pipe(v(()=>o)).subscribe(n=>{var s;let i=__md_get("__outdated",sessionStorage);if(i===null){i=!0;let a=((s=t.version)==null?void 0:s.default)||"latest";Array.isArray(a)||(a=[a]);e:for(let c of a)for(let p of n.aliases)if(new RegExp(c,"i").test(p)){i=!1;break e}__md_set("__outdated",i,sessionStorage)}if(i)for(let a of ne("outdated"))a.hidden=!1})}function ka(e,{worker$:t}){let{searchParams:r}=fe();r.has("q")&&(Ke("search",!0),e.value=r.get("q"),e.focus(),We("search").pipe($e(i=>!i)).subscribe(()=>{let i=new URL(location.href);i.searchParams.delete("q"),history.replaceState({},"",`${i}`)}));let o=er(e),n=M(t.pipe($e(Lt)),h(e,"keyup"),o).pipe(l(()=>e.value),G());return Q([n,o]).pipe(l(([i,s])=>({value:i,focus:s})),B(1))}function Dn(e,{worker$:t}){let r=new x,o=r.pipe(J(),ee(!0));Q([t.pipe($e(Lt)),r],(i,s)=>s).pipe(X("value")).subscribe(({value:i})=>t.next({type:2,data:i})),r.pipe(X("focus")).subscribe(({focus:i})=>{i&&Ke("search",i)}),h(e.form,"reset").pipe(K(o)).subscribe(()=>e.focus());let n=N("header [for=__search]");return h(n,"click").subscribe(()=>e.focus()),ka(e,{worker$:t}).pipe(w(i=>r.next(i)),k(()=>r.complete()),l(i=>I({ref:e},i)),B(1))}function Vn(e,{worker$:t,query$:r}){let o=new x,n=zo(e.parentElement).pipe(L(Boolean)),i=e.parentElement,s=N(":scope > :first-child",e),a=N(":scope > :last-child",e);We("search").subscribe(m=>a.setAttribute("role",m?"list":"presentation")),o.pipe(oe(r),Hr(t.pipe($e(Lt)))).subscribe(([{items:m},{value:f}])=>{switch(m.length){case 0:s.textContent=f.length?be("search.result.none"):be("search.result.placeholder");break;case 1:s.textContent=be("search.result.one");break;default:let u=rr(m.length);s.textContent=be("search.result.other",u)}});let c=o.pipe(w(()=>a.innerHTML=""),v(({items:m})=>M(H(...m.slice(0,10)),H(...m.slice(10)).pipe(Ce(4),Ir(n),v(([f])=>f)))),l(mn),le());return c.subscribe(m=>a.appendChild(m)),c.pipe(se(m=>{let f=ce("details",m);return typeof f=="undefined"?T:h(f,"toggle").pipe(K(o),l(()=>f))})).subscribe(m=>{m.open===!1&&m.offsetTop<=i.scrollTop&&i.scrollTo({top:m.offsetTop})}),t.pipe(L(mr),l(({data:m})=>m)).pipe(w(m=>o.next(m)),k(()=>o.complete()),l(m=>I({ref:e},m)))}function Ha(e,{query$:t}){return t.pipe(l(({value:r})=>{let o=fe();return o.hash="",r=r.replace(/\s+/g,"+").replace(/&/g,"%26").replace(/=/g,"%3D"),o.search=`q=${r}`,{url:o}}))}function zn(e,t){let r=new x,o=r.pipe(J(),ee(!0));return r.subscribe(({url:n})=>{e.setAttribute("data-clipboard-text",e.href),e.href=`${n}`}),h(e,"click").pipe(K(o)).subscribe(n=>n.preventDefault()),Ha(e,t).pipe(w(n=>r.next(n)),k(()=>r.complete()),l(n=>I({ref:e},n)))}function qn(e,{worker$:t,keyboard$:r}){let o=new x,n=ye("search-query"),i=M(h(n,"keydown"),h(n,"focus")).pipe(_e(ae),l(()=>n.value),G());return o.pipe(Ge(i),l(([{suggest:a},c])=>{let p=c.split(/([\s-]+)/);if(a!=null&&a.length&&p[p.length-1]){let m=a[a.length-1];m.startsWith(p[p.length-1])&&(p[p.length-1]=m)}else p.length=0;return p})).subscribe(a=>e.innerHTML=a.join("").replace(/\s/g," ")),r.pipe(L(({mode:a})=>a==="search")).subscribe(a=>{switch(a.type){case"ArrowRight":e.innerText.length&&n.selectionStart===n.value.length&&(n.value=e.innerText);break}}),t.pipe(L(mr),l(({data:a})=>a)).pipe(w(a=>o.next(a)),k(()=>o.complete()),l(()=>({ref:e})))}function Kn(e,{index$:t,keyboard$:r}){let o=ue();try{let n=Un(o.search,t),i=ye("search-query",e),s=ye("search-result",e);h(e,"click").pipe(L(({target:c})=>c instanceof Element&&!!c.closest("a"))).subscribe(()=>Ke("search",!1)),r.pipe(L(({mode:c})=>c==="search")).subscribe(c=>{let p=Re();switch(c.type){case"Enter":if(p===i){let m=new Map;for(let f of z(":first-child [href]",s)){let u=f.firstElementChild;m.set(f,parseFloat(u.getAttribute("data-md-score")))}if(m.size){let[[f]]=[...m].sort(([,u],[,d])=>d-u);f.click()}c.claim()}break;case"Escape":case"Tab":Ke("search",!1),i.blur();break;case"ArrowUp":case"ArrowDown":if(typeof p=="undefined")i.focus();else{let m=[i,...z(":not(details) > [href], summary, details[open] [href]",s)],f=Math.max(0,(Math.max(0,m.indexOf(p))+m.length+(c.type==="ArrowUp"?-1:1))%m.length);m[f].focus()}c.claim();break;default:i!==Re()&&i.focus()}}),r.pipe(L(({mode:c})=>c==="global")).subscribe(c=>{switch(c.type){case"f":case"s":case"/":i.focus(),i.select(),c.claim();break}});let a=Dn(i,{worker$:n});return M(a,Vn(s,{worker$:n,query$:a})).pipe(qe(...ne("search-share",e).map(c=>zn(c,{query$:a})),...ne("search-suggest",e).map(c=>qn(c,{worker$:n,keyboard$:r}))))}catch(n){return e.hidden=!0,Ve}}function Qn(e,{index$:t,location$:r}){return Q([t,r.pipe(V(fe()),L(o=>!!o.searchParams.get("h")))]).pipe(l(([o,n])=>Wn(o.config)(n.searchParams.get("h"))),l(o=>{var s;let n=new Map,i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT);for(let a=i.nextNode();a;a=i.nextNode())if((s=a.parentElement)!=null&&s.offsetHeight){let c=a.textContent,p=o(c);p.length>c.length&&n.set(a,p)}for(let[a,c]of n){let{childNodes:p}=O("span",null,c);a.replaceWith(...Array.from(p))}return{ref:e,nodes:n}}))}function $a(e,{viewport$:t,main$:r}){let o=e.closest(".md-grid"),n=o.offsetTop-o.parentElement.offsetTop;return Q([r,t]).pipe(l(([{offset:i,height:s},{offset:{y:a}}])=>(s=s+Math.min(n,Math.max(0,a-i))-n,{height:s,locked:a>=i+n})),G((i,s)=>i.height===s.height&&i.locked===s.locked))}function Kr(e,o){var n=o,{header$:t}=n,r=Zr(n,["header$"]);let i=N(".md-sidebar__scrollwrap",e),{y:s}=Je(i);return $(()=>{let a=new x,c=a.pipe(J(),ee(!0)),p=a.pipe(Ae(0,Te));return p.pipe(oe(t)).subscribe({next([{height:m},{height:f}]){i.style.height=`${m-2*s}px`,e.style.top=`${f}px`},complete(){i.style.height="",e.style.top=""}}),p.pipe($e()).subscribe(()=>{for(let m of z(".md-nav__link--active[href]",e)){let f=or(m);if(typeof f!="undefined"){let u=m.offsetTop-f.offsetTop,{height:d}=he(f);f.scrollTo({top:u-d/2})}}}),me(z("label[tabindex]",e)).pipe(se(m=>h(m,"click").pipe(l(()=>m),K(c)))).subscribe(m=>{let f=N(`[id="${m.htmlFor}"]`);N(`[aria-labelledby="${m.id}"]`).setAttribute("aria-expanded",`${f.checked}`)}),$a(e,r).pipe(w(m=>a.next(m)),k(()=>a.complete()),l(m=>I({ref:e},m)))})}function Yn(e,t){if(typeof t!="undefined"){let r=`https://api.github.com/repos/${e}/${t}`;return Tt(Ue(`${r}/releases/latest`).pipe(pe(()=>T),l(o=>({version:o.tag_name})),He({})),Ue(r).pipe(pe(()=>T),l(o=>({stars:o.stargazers_count,forks:o.forks_count})),He({}))).pipe(l(([o,n])=>I(I({},o),n)))}else{let r=`https://api.github.com/users/${e}`;return Ue(r).pipe(l(o=>({repositories:o.public_repos})),He({}))}}function Bn(e,t){let r=`https://${e}/api/v4/projects/${encodeURIComponent(t)}`;return Ue(r).pipe(pe(()=>T),l(({star_count:o,forks_count:n})=>({stars:o,forks:n})),He({}))}function Gn(e){let t=e.match(/^.+github\.com\/([^/]+)\/?([^/]+)?/i);if(t){let[,r,o]=t;return Yn(r,o)}if(t=e.match(/^.+?([^/]*gitlab[^/]+)\/(.+?)\/?$/i),t){let[,r,o]=t;return Bn(r,o)}return T}var Ra;function Ia(e){return Ra||(Ra=$(()=>{let t=__md_get("__source",sessionStorage);if(t)return H(t);if(ne("consent").length){let o=__md_get("__consent");if(!(o&&o.github))return T}return Gn(e.href).pipe(w(o=>__md_set("__source",o,sessionStorage)))}).pipe(pe(()=>T),L(t=>Object.keys(t).length>0),l(t=>({facts:t})),B(1)))}function Jn(e){let t=N(":scope > :last-child",e);return $(()=>{let r=new x;return r.subscribe(({facts:o})=>{t.appendChild(ln(o)),t.classList.add("md-source__repository--active")}),Ia(e).pipe(w(o=>r.next(o)),k(()=>r.complete()),l(o=>I({ref:e},o)))})}function Pa(e,{viewport$:t,header$:r}){return xe(document.body).pipe(v(()=>sr(e,{header$:r,viewport$:t})),l(({offset:{y:o}})=>({hidden:o>=10})),X("hidden"))}function Xn(e,t){return $(()=>{let r=new x;return r.subscribe({next({hidden:o}){e.hidden=o},complete(){e.hidden=!1}}),(te("navigation.tabs.sticky")?H({hidden:!1}):Pa(e,t)).pipe(w(o=>r.next(o)),k(()=>r.complete()),l(o=>I({ref:e},o)))})}function Fa(e,{viewport$:t,header$:r}){let o=new Map,n=z("[href^=\\#]",e);for(let a of n){let c=decodeURIComponent(a.hash.substring(1)),p=ce(`[id="${c}"]`);typeof p!="undefined"&&o.set(a,p)}let i=r.pipe(X("height"),l(({height:a})=>{let c=ye("main"),p=N(":scope > :first-child",c);return a+.8*(p.offsetTop-c.offsetTop)}),le());return xe(document.body).pipe(X("height"),v(a=>$(()=>{let c=[];return H([...o].reduce((p,[m,f])=>{for(;c.length&&o.get(c[c.length-1]).tagName>=f.tagName;)c.pop();let u=f.offsetTop;for(;!u&&f.parentElement;)f=f.parentElement,u=f.offsetTop;let d=f.offsetParent;for(;d;d=d.offsetParent)u+=d.offsetTop;return p.set([...c=[...c,m]].reverse(),u)},new Map))}).pipe(l(c=>new Map([...c].sort(([,p],[,m])=>p-m))),Ge(i),v(([c,p])=>t.pipe(Cr(([m,f],{offset:{y:u},size:d})=>{let b=u+d.height>=Math.floor(a.height);for(;f.length;){let[,_]=f[0];if(_-p=u&&!b)f=[m.pop(),...f];else break}return[m,f]},[[],[...c]]),G((m,f)=>m[0]===f[0]&&m[1]===f[1])))))).pipe(l(([a,c])=>({prev:a.map(([p])=>p),next:c.map(([p])=>p)})),V({prev:[],next:[]}),Ce(2,1),l(([a,c])=>a.prev.length{let i=new x,s=i.pipe(J(),ee(!0));if(i.subscribe(({prev:a,next:c})=>{for(let[p]of c)p.classList.remove("md-nav__link--passed"),p.classList.remove("md-nav__link--active");for(let[p,[m]]of a.entries())m.classList.add("md-nav__link--passed"),m.classList.toggle("md-nav__link--active",p===a.length-1)}),te("toc.follow")){let a=M(t.pipe(ke(1),l(()=>{})),t.pipe(ke(250),l(()=>"smooth")));i.pipe(L(({prev:c})=>c.length>0),Ge(o.pipe(_e(ae))),oe(a)).subscribe(([[{prev:c}],p])=>{let[m]=c[c.length-1];if(m.offsetHeight){let f=or(m);if(typeof f!="undefined"){let u=m.offsetTop-f.offsetTop,{height:d}=he(f);f.scrollTo({top:u-d/2,behavior:p})}}})}return te("navigation.tracking")&&t.pipe(K(s),X("offset"),ke(250),je(1),K(n.pipe(je(1))),Ot({delay:250}),oe(i)).subscribe(([,{prev:a}])=>{let c=fe(),p=a[a.length-1];if(p&&p.length){let[m]=p,{hash:f}=new URL(m.href);c.hash!==f&&(c.hash=f,history.replaceState({},"",`${c}`))}else c.hash="",history.replaceState({},"",`${c}`)}),Fa(e,{viewport$:t,header$:r}).pipe(w(a=>i.next(a)),k(()=>i.complete()),l(a=>I({ref:e},a)))})}function ja(e,{viewport$:t,main$:r,target$:o}){let n=t.pipe(l(({offset:{y:s}})=>s),Ce(2,1),l(([s,a])=>s>a&&a>0),G()),i=r.pipe(l(({active:s})=>s));return Q([i,n]).pipe(l(([s,a])=>!(s&&a)),G(),K(o.pipe(je(1))),ee(!0),Ot({delay:250}),l(s=>({hidden:s})))}function ei(e,{viewport$:t,header$:r,main$:o,target$:n}){let i=new x,s=i.pipe(J(),ee(!0));return i.subscribe({next({hidden:a}){e.hidden=a,a?(e.setAttribute("tabindex","-1"),e.blur()):e.removeAttribute("tabindex")},complete(){e.style.top="",e.hidden=!0,e.removeAttribute("tabindex")}}),r.pipe(K(s),X("height")).subscribe(({height:a})=>{e.style.top=`${a+16}px`}),h(e,"click").subscribe(a=>{a.preventDefault(),window.scrollTo({top:0})}),ja(e,{viewport$:t,main$:o,target$:n}).pipe(w(a=>i.next(a)),k(()=>i.complete()),l(a=>I({ref:e},a)))}function ti({document$:e,tablet$:t}){e.pipe(v(()=>z(".md-toggle--indeterminate")),w(r=>{r.indeterminate=!0,r.checked=!1}),se(r=>h(r,"change").pipe($r(()=>r.classList.contains("md-toggle--indeterminate")),l(()=>r))),oe(t)).subscribe(([r,o])=>{r.classList.remove("md-toggle--indeterminate"),o&&(r.checked=!1)})}function Wa(){return/(iPad|iPhone|iPod)/.test(navigator.userAgent)}function ri({document$:e}){e.pipe(v(()=>z("[data-md-scrollfix]")),w(t=>t.removeAttribute("data-md-scrollfix")),L(Wa),se(t=>h(t,"touchstart").pipe(l(()=>t)))).subscribe(t=>{let r=t.scrollTop;r===0?t.scrollTop=1:r+t.offsetHeight===t.scrollHeight&&(t.scrollTop=r-1)})}function oi({viewport$:e,tablet$:t}){Q([We("search"),t]).pipe(l(([r,o])=>r&&!o),v(r=>H(r).pipe(ze(r?400:100))),oe(e)).subscribe(([r,{offset:{y:o}}])=>{if(r)document.body.setAttribute("data-md-scrolllock",""),document.body.style.top=`-${o}px`;else{let n=-1*parseInt(document.body.style.top,10);document.body.removeAttribute("data-md-scrolllock"),document.body.style.top="",n&&window.scrollTo(0,n)}})}Object.entries||(Object.entries=function(e){let t=[];for(let r of Object.keys(e))t.push([r,e[r]]);return t});Object.values||(Object.values=function(e){let t=[];for(let r of Object.keys(e))t.push(e[r]);return t});typeof Element!="undefined"&&(Element.prototype.scrollTo||(Element.prototype.scrollTo=function(e,t){typeof e=="object"?(this.scrollLeft=e.left,this.scrollTop=e.top):(this.scrollLeft=e,this.scrollTop=t)}),Element.prototype.replaceWith||(Element.prototype.replaceWith=function(...e){let t=this.parentNode;if(t){e.length===0&&t.removeChild(this);for(let r=e.length-1;r>=0;r--){let o=e[r];typeof o=="string"?o=document.createTextNode(o):o.parentNode&&o.parentNode.removeChild(o),r?t.insertBefore(this.previousSibling,o):t.replaceChild(o,this)}}}));function Ua(){return location.protocol==="file:"?ht(`${new URL("search/search_index.js",Qr.base)}`).pipe(l(()=>__index),B(1)):Ue(new URL("search/search_index.json",Qr.base))}document.documentElement.classList.remove("no-js");document.documentElement.classList.add("js");var nt=Wo(),At=Qo(),gt=Bo(At),Yr=Ko(),Se=rn(),lr=Fr("(min-width: 960px)"),ii=Fr("(min-width: 1220px)"),ai=Go(),Qr=ue(),si=document.forms.namedItem("search")?Ua():Ve,Br=new x;Rn({alert$:Br});te("navigation.instant")&&In({location$:At,viewport$:Se}).subscribe(nt);var ni;((ni=Qr.version)==null?void 0:ni.provider)==="mike"&&Nn({document$:nt});M(At,gt).pipe(ze(125)).subscribe(()=>{Ke("drawer",!1),Ke("search",!1)});Yr.pipe(L(({mode:e})=>e==="global")).subscribe(e=>{switch(e.type){case"p":case",":let t=ce("link[rel=prev]");typeof t!="undefined"&&ot(t);break;case"n":case".":let r=ce("link[rel=next]");typeof r!="undefined"&&ot(r);break;case"Enter":let o=Re();o instanceof HTMLLabelElement&&o.click()}});ti({document$:nt,tablet$:lr});ri({document$:nt});oi({viewport$:Se,tablet$:lr});var Xe=An(ye("header"),{viewport$:Se}),_t=nt.pipe(l(()=>ye("main")),v(e=>Hn(e,{viewport$:Se,header$:Xe})),B(1)),Na=M(...ne("consent").map(e=>an(e,{target$:gt})),...ne("dialog").map(e=>_n(e,{alert$:Br})),...ne("header").map(e=>Cn(e,{viewport$:Se,header$:Xe,main$:_t})),...ne("palette").map(e=>$n(e)),...ne("search").map(e=>Kn(e,{index$:si,keyboard$:Yr})),...ne("source").map(e=>Jn(e))),Da=$(()=>M(...ne("announce").map(e=>nn(e)),...ne("content").map(e=>Ln(e,{viewport$:Se,target$:gt,print$:ai})),...ne("content").map(e=>te("search.highlight")?Qn(e,{index$:si,location$:At}):T),...ne("header-title").map(e=>kn(e,{viewport$:Se,header$:Xe})),...ne("sidebar").map(e=>e.getAttribute("data-md-type")==="navigation"?jr(ii,()=>Kr(e,{viewport$:Se,header$:Xe,main$:_t})):jr(lr,()=>Kr(e,{viewport$:Se,header$:Xe,main$:_t}))),...ne("tabs").map(e=>Xn(e,{viewport$:Se,header$:Xe})),...ne("toc").map(e=>Zn(e,{viewport$:Se,header$:Xe,main$:_t,target$:gt})),...ne("top").map(e=>ei(e,{viewport$:Se,header$:Xe,main$:_t,target$:gt})))),ci=nt.pipe(v(()=>Da),qe(Na),B(1));ci.subscribe();window.document$=nt;window.location$=At;window.target$=gt;window.keyboard$=Yr;window.viewport$=Se;window.tablet$=lr;window.screen$=ii;window.print$=ai;window.alert$=Br;window.component$=ci;})(); +//# sourceMappingURL=bundle.4e0fa4ba.min.js.map + diff --git a/assets/javascripts/bundle.4e0fa4ba.min.js.map b/assets/javascripts/bundle.4e0fa4ba.min.js.map new file mode 100644 index 0000000..b3e2c4e --- /dev/null +++ b/assets/javascripts/bundle.4e0fa4ba.min.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "sources": ["node_modules/focus-visible/dist/focus-visible.js", "node_modules/clipboard/dist/clipboard.js", "node_modules/escape-html/index.js", "src/templates/assets/javascripts/bundle.ts", "node_modules/rxjs/node_modules/tslib/tslib.es6.js", "node_modules/rxjs/src/internal/util/isFunction.ts", "node_modules/rxjs/src/internal/util/createErrorClass.ts", "node_modules/rxjs/src/internal/util/UnsubscriptionError.ts", "node_modules/rxjs/src/internal/util/arrRemove.ts", "node_modules/rxjs/src/internal/Subscription.ts", "node_modules/rxjs/src/internal/config.ts", "node_modules/rxjs/src/internal/scheduler/timeoutProvider.ts", "node_modules/rxjs/src/internal/util/reportUnhandledError.ts", "node_modules/rxjs/src/internal/util/noop.ts", "node_modules/rxjs/src/internal/NotificationFactories.ts", "node_modules/rxjs/src/internal/util/errorContext.ts", "node_modules/rxjs/src/internal/Subscriber.ts", "node_modules/rxjs/src/internal/symbol/observable.ts", "node_modules/rxjs/src/internal/util/identity.ts", "node_modules/rxjs/src/internal/util/pipe.ts", "node_modules/rxjs/src/internal/Observable.ts", "node_modules/rxjs/src/internal/util/lift.ts", "node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts", "node_modules/rxjs/src/internal/scheduler/animationFrameProvider.ts", "node_modules/rxjs/src/internal/util/ObjectUnsubscribedError.ts", "node_modules/rxjs/src/internal/Subject.ts", "node_modules/rxjs/src/internal/scheduler/dateTimestampProvider.ts", "node_modules/rxjs/src/internal/ReplaySubject.ts", "node_modules/rxjs/src/internal/scheduler/Action.ts", "node_modules/rxjs/src/internal/scheduler/intervalProvider.ts", "node_modules/rxjs/src/internal/scheduler/AsyncAction.ts", "node_modules/rxjs/src/internal/Scheduler.ts", "node_modules/rxjs/src/internal/scheduler/AsyncScheduler.ts", "node_modules/rxjs/src/internal/scheduler/async.ts", "node_modules/rxjs/src/internal/scheduler/AnimationFrameAction.ts", "node_modules/rxjs/src/internal/scheduler/AnimationFrameScheduler.ts", "node_modules/rxjs/src/internal/scheduler/animationFrame.ts", "node_modules/rxjs/src/internal/observable/empty.ts", "node_modules/rxjs/src/internal/util/isScheduler.ts", "node_modules/rxjs/src/internal/util/args.ts", "node_modules/rxjs/src/internal/util/isArrayLike.ts", "node_modules/rxjs/src/internal/util/isPromise.ts", "node_modules/rxjs/src/internal/util/isInteropObservable.ts", "node_modules/rxjs/src/internal/util/isAsyncIterable.ts", "node_modules/rxjs/src/internal/util/throwUnobservableError.ts", "node_modules/rxjs/src/internal/symbol/iterator.ts", "node_modules/rxjs/src/internal/util/isIterable.ts", "node_modules/rxjs/src/internal/util/isReadableStreamLike.ts", "node_modules/rxjs/src/internal/observable/innerFrom.ts", "node_modules/rxjs/src/internal/util/executeSchedule.ts", "node_modules/rxjs/src/internal/operators/observeOn.ts", "node_modules/rxjs/src/internal/operators/subscribeOn.ts", "node_modules/rxjs/src/internal/scheduled/scheduleObservable.ts", "node_modules/rxjs/src/internal/scheduled/schedulePromise.ts", "node_modules/rxjs/src/internal/scheduled/scheduleArray.ts", "node_modules/rxjs/src/internal/scheduled/scheduleIterable.ts", "node_modules/rxjs/src/internal/scheduled/scheduleAsyncIterable.ts", "node_modules/rxjs/src/internal/scheduled/scheduleReadableStreamLike.ts", "node_modules/rxjs/src/internal/scheduled/scheduled.ts", "node_modules/rxjs/src/internal/observable/from.ts", "node_modules/rxjs/src/internal/observable/of.ts", "node_modules/rxjs/src/internal/observable/throwError.ts", "node_modules/rxjs/src/internal/util/EmptyError.ts", "node_modules/rxjs/src/internal/util/isDate.ts", "node_modules/rxjs/src/internal/operators/map.ts", "node_modules/rxjs/src/internal/util/mapOneOrManyArgs.ts", "node_modules/rxjs/src/internal/util/argsArgArrayOrObject.ts", "node_modules/rxjs/src/internal/util/createObject.ts", "node_modules/rxjs/src/internal/observable/combineLatest.ts", "node_modules/rxjs/src/internal/operators/mergeInternals.ts", "node_modules/rxjs/src/internal/operators/mergeMap.ts", "node_modules/rxjs/src/internal/operators/mergeAll.ts", "node_modules/rxjs/src/internal/operators/concatAll.ts", "node_modules/rxjs/src/internal/observable/concat.ts", "node_modules/rxjs/src/internal/observable/defer.ts", "node_modules/rxjs/src/internal/observable/fromEvent.ts", "node_modules/rxjs/src/internal/observable/fromEventPattern.ts", "node_modules/rxjs/src/internal/observable/timer.ts", "node_modules/rxjs/src/internal/observable/merge.ts", "node_modules/rxjs/src/internal/observable/never.ts", "node_modules/rxjs/src/internal/util/argsOrArgArray.ts", "node_modules/rxjs/src/internal/operators/filter.ts", "node_modules/rxjs/src/internal/observable/zip.ts", "node_modules/rxjs/src/internal/operators/audit.ts", "node_modules/rxjs/src/internal/operators/auditTime.ts", "node_modules/rxjs/src/internal/operators/bufferCount.ts", "node_modules/rxjs/src/internal/operators/catchError.ts", "node_modules/rxjs/src/internal/operators/scanInternals.ts", "node_modules/rxjs/src/internal/operators/combineLatest.ts", "node_modules/rxjs/src/internal/operators/combineLatestWith.ts", "node_modules/rxjs/src/internal/operators/debounceTime.ts", "node_modules/rxjs/src/internal/operators/defaultIfEmpty.ts", "node_modules/rxjs/src/internal/operators/take.ts", "node_modules/rxjs/src/internal/operators/ignoreElements.ts", "node_modules/rxjs/src/internal/operators/mapTo.ts", "node_modules/rxjs/src/internal/operators/delayWhen.ts", "node_modules/rxjs/src/internal/operators/delay.ts", "node_modules/rxjs/src/internal/operators/distinctUntilChanged.ts", "node_modules/rxjs/src/internal/operators/distinctUntilKeyChanged.ts", "node_modules/rxjs/src/internal/operators/throwIfEmpty.ts", "node_modules/rxjs/src/internal/operators/endWith.ts", "node_modules/rxjs/src/internal/operators/finalize.ts", "node_modules/rxjs/src/internal/operators/first.ts", "node_modules/rxjs/src/internal/operators/merge.ts", "node_modules/rxjs/src/internal/operators/mergeWith.ts", "node_modules/rxjs/src/internal/operators/repeat.ts", "node_modules/rxjs/src/internal/operators/scan.ts", "node_modules/rxjs/src/internal/operators/share.ts", "node_modules/rxjs/src/internal/operators/shareReplay.ts", "node_modules/rxjs/src/internal/operators/skip.ts", "node_modules/rxjs/src/internal/operators/skipUntil.ts", "node_modules/rxjs/src/internal/operators/startWith.ts", "node_modules/rxjs/src/internal/operators/switchMap.ts", "node_modules/rxjs/src/internal/operators/takeUntil.ts", "node_modules/rxjs/src/internal/operators/takeWhile.ts", "node_modules/rxjs/src/internal/operators/tap.ts", "node_modules/rxjs/src/internal/operators/throttle.ts", "node_modules/rxjs/src/internal/operators/throttleTime.ts", "node_modules/rxjs/src/internal/operators/withLatestFrom.ts", "node_modules/rxjs/src/internal/operators/zip.ts", "node_modules/rxjs/src/internal/operators/zipWith.ts", "src/templates/assets/javascripts/browser/document/index.ts", "src/templates/assets/javascripts/browser/element/_/index.ts", "src/templates/assets/javascripts/browser/element/focus/index.ts", "src/templates/assets/javascripts/browser/element/offset/_/index.ts", "src/templates/assets/javascripts/browser/element/offset/content/index.ts", "src/templates/assets/javascripts/utilities/h/index.ts", "src/templates/assets/javascripts/utilities/round/index.ts", "src/templates/assets/javascripts/browser/script/index.ts", "src/templates/assets/javascripts/browser/element/size/_/index.ts", "src/templates/assets/javascripts/browser/element/size/content/index.ts", "src/templates/assets/javascripts/browser/element/visibility/index.ts", "src/templates/assets/javascripts/browser/toggle/index.ts", "src/templates/assets/javascripts/browser/keyboard/index.ts", "src/templates/assets/javascripts/browser/location/_/index.ts", "src/templates/assets/javascripts/browser/location/hash/index.ts", "src/templates/assets/javascripts/browser/media/index.ts", "src/templates/assets/javascripts/browser/request/index.ts", "src/templates/assets/javascripts/browser/viewport/offset/index.ts", "src/templates/assets/javascripts/browser/viewport/size/index.ts", "src/templates/assets/javascripts/browser/viewport/_/index.ts", "src/templates/assets/javascripts/browser/viewport/at/index.ts", "src/templates/assets/javascripts/browser/worker/index.ts", "src/templates/assets/javascripts/_/index.ts", "src/templates/assets/javascripts/components/_/index.ts", "src/templates/assets/javascripts/components/announce/index.ts", "src/templates/assets/javascripts/components/consent/index.ts", "src/templates/assets/javascripts/components/content/annotation/_/index.ts", "src/templates/assets/javascripts/templates/tooltip/index.tsx", "src/templates/assets/javascripts/templates/annotation/index.tsx", "src/templates/assets/javascripts/templates/clipboard/index.tsx", "src/templates/assets/javascripts/templates/search/index.tsx", "src/templates/assets/javascripts/templates/source/index.tsx", "src/templates/assets/javascripts/templates/tabbed/index.tsx", "src/templates/assets/javascripts/templates/table/index.tsx", "src/templates/assets/javascripts/templates/version/index.tsx", "src/templates/assets/javascripts/components/content/annotation/list/index.ts", "src/templates/assets/javascripts/components/content/annotation/block/index.ts", "src/templates/assets/javascripts/components/content/code/_/index.ts", "src/templates/assets/javascripts/components/content/details/index.ts", "src/templates/assets/javascripts/components/content/mermaid/index.css", "src/templates/assets/javascripts/components/content/mermaid/index.ts", "src/templates/assets/javascripts/components/content/table/index.ts", "src/templates/assets/javascripts/components/content/tabs/index.ts", "src/templates/assets/javascripts/components/content/_/index.ts", "src/templates/assets/javascripts/components/dialog/index.ts", "src/templates/assets/javascripts/components/header/_/index.ts", "src/templates/assets/javascripts/components/header/title/index.ts", "src/templates/assets/javascripts/components/main/index.ts", "src/templates/assets/javascripts/components/palette/index.ts", "src/templates/assets/javascripts/integrations/clipboard/index.ts", "src/templates/assets/javascripts/integrations/sitemap/index.ts", "src/templates/assets/javascripts/integrations/instant/index.ts", "src/templates/assets/javascripts/integrations/search/highlighter/index.ts", "src/templates/assets/javascripts/integrations/search/worker/message/index.ts", "src/templates/assets/javascripts/integrations/search/worker/_/index.ts", "src/templates/assets/javascripts/integrations/version/index.ts", "src/templates/assets/javascripts/components/search/query/index.ts", "src/templates/assets/javascripts/components/search/result/index.ts", "src/templates/assets/javascripts/components/search/share/index.ts", "src/templates/assets/javascripts/components/search/suggest/index.ts", "src/templates/assets/javascripts/components/search/_/index.ts", "src/templates/assets/javascripts/components/search/highlight/index.ts", "src/templates/assets/javascripts/components/sidebar/index.ts", "src/templates/assets/javascripts/components/source/facts/github/index.ts", "src/templates/assets/javascripts/components/source/facts/gitlab/index.ts", "src/templates/assets/javascripts/components/source/facts/_/index.ts", "src/templates/assets/javascripts/components/source/_/index.ts", "src/templates/assets/javascripts/components/tabs/index.ts", "src/templates/assets/javascripts/components/toc/index.ts", "src/templates/assets/javascripts/components/top/index.ts", "src/templates/assets/javascripts/patches/indeterminate/index.ts", "src/templates/assets/javascripts/patches/scrollfix/index.ts", "src/templates/assets/javascripts/patches/scrolllock/index.ts", "src/templates/assets/javascripts/polyfills/index.ts"], + "sourceRoot": "../../../..", + "sourcesContent": ["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (factory());\n}(this, (function () { 'use strict';\n\n /**\n * Applies the :focus-visible polyfill at the given scope.\n * A scope in this case is either the top-level Document or a Shadow Root.\n *\n * @param {(Document|ShadowRoot)} scope\n * @see https://github.com/WICG/focus-visible\n */\n function applyFocusVisiblePolyfill(scope) {\n var hadKeyboardEvent = true;\n var hadFocusVisibleRecently = false;\n var hadFocusVisibleRecentlyTimeout = null;\n\n var inputTypesAllowlist = {\n text: true,\n search: true,\n url: true,\n tel: true,\n email: true,\n password: true,\n number: true,\n date: true,\n month: true,\n week: true,\n time: true,\n datetime: true,\n 'datetime-local': true\n };\n\n /**\n * Helper function for legacy browsers and iframes which sometimes focus\n * elements like document, body, and non-interactive SVG.\n * @param {Element} el\n */\n function isValidFocusTarget(el) {\n if (\n el &&\n el !== document &&\n el.nodeName !== 'HTML' &&\n el.nodeName !== 'BODY' &&\n 'classList' in el &&\n 'contains' in el.classList\n ) {\n return true;\n }\n return false;\n }\n\n /**\n * Computes whether the given element should automatically trigger the\n * `focus-visible` class being added, i.e. whether it should always match\n * `:focus-visible` when focused.\n * @param {Element} el\n * @return {boolean}\n */\n function focusTriggersKeyboardModality(el) {\n var type = el.type;\n var tagName = el.tagName;\n\n if (tagName === 'INPUT' && inputTypesAllowlist[type] && !el.readOnly) {\n return true;\n }\n\n if (tagName === 'TEXTAREA' && !el.readOnly) {\n return true;\n }\n\n if (el.isContentEditable) {\n return true;\n }\n\n return false;\n }\n\n /**\n * Add the `focus-visible` class to the given element if it was not added by\n * the author.\n * @param {Element} el\n */\n function addFocusVisibleClass(el) {\n if (el.classList.contains('focus-visible')) {\n return;\n }\n el.classList.add('focus-visible');\n el.setAttribute('data-focus-visible-added', '');\n }\n\n /**\n * Remove the `focus-visible` class from the given element if it was not\n * originally added by the author.\n * @param {Element} el\n */\n function removeFocusVisibleClass(el) {\n if (!el.hasAttribute('data-focus-visible-added')) {\n return;\n }\n el.classList.remove('focus-visible');\n el.removeAttribute('data-focus-visible-added');\n }\n\n /**\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * Apply `focus-visible` to any current active element and keep track\n * of our keyboard modality state with `hadKeyboardEvent`.\n * @param {KeyboardEvent} e\n */\n function onKeyDown(e) {\n if (e.metaKey || e.altKey || e.ctrlKey) {\n return;\n }\n\n if (isValidFocusTarget(scope.activeElement)) {\n addFocusVisibleClass(scope.activeElement);\n }\n\n hadKeyboardEvent = true;\n }\n\n /**\n * If at any point a user clicks with a pointing device, ensure that we change\n * the modality away from keyboard.\n * This avoids the situation where a user presses a key on an already focused\n * element, and then clicks on a different element, focusing it with a\n * pointing device, while we still think we're in keyboard modality.\n * @param {Event} e\n */\n function onPointerDown(e) {\n hadKeyboardEvent = false;\n }\n\n /**\n * On `focus`, add the `focus-visible` class to the target if:\n * - the target received focus as a result of keyboard navigation, or\n * - the event target is an element that will likely require interaction\n * via the keyboard (e.g. a text box)\n * @param {Event} e\n */\n function onFocus(e) {\n // Prevent IE from focusing the document or HTML element.\n if (!isValidFocusTarget(e.target)) {\n return;\n }\n\n if (hadKeyboardEvent || focusTriggersKeyboardModality(e.target)) {\n addFocusVisibleClass(e.target);\n }\n }\n\n /**\n * On `blur`, remove the `focus-visible` class from the target.\n * @param {Event} e\n */\n function onBlur(e) {\n if (!isValidFocusTarget(e.target)) {\n return;\n }\n\n if (\n e.target.classList.contains('focus-visible') ||\n e.target.hasAttribute('data-focus-visible-added')\n ) {\n // To detect a tab/window switch, we look for a blur event followed\n // rapidly by a visibility change.\n // If we don't see a visibility change within 100ms, it's probably a\n // regular focus change.\n hadFocusVisibleRecently = true;\n window.clearTimeout(hadFocusVisibleRecentlyTimeout);\n hadFocusVisibleRecentlyTimeout = window.setTimeout(function() {\n hadFocusVisibleRecently = false;\n }, 100);\n removeFocusVisibleClass(e.target);\n }\n }\n\n /**\n * If the user changes tabs, keep track of whether or not the previously\n * focused element had .focus-visible.\n * @param {Event} e\n */\n function onVisibilityChange(e) {\n if (document.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n if (hadFocusVisibleRecently) {\n hadKeyboardEvent = true;\n }\n addInitialPointerMoveListeners();\n }\n }\n\n /**\n * Add a group of listeners to detect usage of any pointing devices.\n * These listeners will be added when the polyfill first loads, and anytime\n * the window is blurred, so that they are active when the window regains\n * focus.\n */\n function addInitialPointerMoveListeners() {\n document.addEventListener('mousemove', onInitialPointerMove);\n document.addEventListener('mousedown', onInitialPointerMove);\n document.addEventListener('mouseup', onInitialPointerMove);\n document.addEventListener('pointermove', onInitialPointerMove);\n document.addEventListener('pointerdown', onInitialPointerMove);\n document.addEventListener('pointerup', onInitialPointerMove);\n document.addEventListener('touchmove', onInitialPointerMove);\n document.addEventListener('touchstart', onInitialPointerMove);\n document.addEventListener('touchend', onInitialPointerMove);\n }\n\n function removeInitialPointerMoveListeners() {\n document.removeEventListener('mousemove', onInitialPointerMove);\n document.removeEventListener('mousedown', onInitialPointerMove);\n document.removeEventListener('mouseup', onInitialPointerMove);\n document.removeEventListener('pointermove', onInitialPointerMove);\n document.removeEventListener('pointerdown', onInitialPointerMove);\n document.removeEventListener('pointerup', onInitialPointerMove);\n document.removeEventListener('touchmove', onInitialPointerMove);\n document.removeEventListener('touchstart', onInitialPointerMove);\n document.removeEventListener('touchend', onInitialPointerMove);\n }\n\n /**\n * When the polfyill first loads, assume the user is in keyboard modality.\n * If any event is received from a pointing device (e.g. mouse, pointer,\n * touch), turn off keyboard modality.\n * This accounts for situations where focus enters the page from the URL bar.\n * @param {Event} e\n */\n function onInitialPointerMove(e) {\n // Work around a Safari quirk that fires a mousemove on whenever the\n // window blurs, even if you're tabbing out of the page. \u00AF\\_(\u30C4)_/\u00AF\n if (e.target.nodeName && e.target.nodeName.toLowerCase() === 'html') {\n return;\n }\n\n hadKeyboardEvent = false;\n removeInitialPointerMoveListeners();\n }\n\n // For some kinds of state, we are interested in changes at the global scope\n // only. For example, global pointer input, global key presses and global\n // visibility change should affect the state at every scope:\n document.addEventListener('keydown', onKeyDown, true);\n document.addEventListener('mousedown', onPointerDown, true);\n document.addEventListener('pointerdown', onPointerDown, true);\n document.addEventListener('touchstart', onPointerDown, true);\n document.addEventListener('visibilitychange', onVisibilityChange, true);\n\n addInitialPointerMoveListeners();\n\n // For focus and blur, we specifically care about state changes in the local\n // scope. This is because focus / blur events that originate from within a\n // shadow root are not re-dispatched from the host element if it was already\n // the active element in its own scope:\n scope.addEventListener('focus', onFocus, true);\n scope.addEventListener('blur', onBlur, true);\n\n // We detect that a node is a ShadowRoot by ensuring that it is a\n // DocumentFragment and also has a host property. This check covers native\n // implementation and polyfill implementation transparently. If we only cared\n // about the native implementation, we could just check if the scope was\n // an instance of a ShadowRoot.\n if (scope.nodeType === Node.DOCUMENT_FRAGMENT_NODE && scope.host) {\n // Since a ShadowRoot is a special kind of DocumentFragment, it does not\n // have a root element to add a class to. So, we add this attribute to the\n // host element instead:\n scope.host.setAttribute('data-js-focus-visible', '');\n } else if (scope.nodeType === Node.DOCUMENT_NODE) {\n document.documentElement.classList.add('js-focus-visible');\n document.documentElement.setAttribute('data-js-focus-visible', '');\n }\n }\n\n // It is important to wrap all references to global window and document in\n // these checks to support server-side rendering use cases\n // @see https://github.com/WICG/focus-visible/issues/199\n if (typeof window !== 'undefined' && typeof document !== 'undefined') {\n // Make the polyfill helper globally available. This can be used as a signal\n // to interested libraries that wish to coordinate with the polyfill for e.g.,\n // applying the polyfill to a shadow root:\n window.applyFocusVisiblePolyfill = applyFocusVisiblePolyfill;\n\n // Notify interested libraries of the polyfill's presence, in case the\n // polyfill was loaded lazily:\n var event;\n\n try {\n event = new CustomEvent('focus-visible-polyfill-ready');\n } catch (error) {\n // IE11 does not support using CustomEvent as a constructor directly:\n event = document.createEvent('CustomEvent');\n event.initCustomEvent('focus-visible-polyfill-ready', false, false, {});\n }\n\n window.dispatchEvent(event);\n }\n\n if (typeof document !== 'undefined') {\n // Apply the polyfill to the global document, so that no JavaScript\n // coordination is required to use the polyfill in the top-level document:\n applyFocusVisiblePolyfill(document);\n }\n\n})));\n", "/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '"';\n break;\n case 38: // &\n escape = '&';\n break;\n case 39: // '\n escape = ''';\n break;\n case 60: // <\n escape = '<';\n break;\n case 62: // >\n escape = '>';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n", "/*\n * Copyright (c) 2016-2023 Martin Donath \n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n * IN THE SOFTWARE.\n */\n\nimport \"focus-visible\"\n\nimport {\n EMPTY,\n NEVER,\n Observable,\n Subject,\n defer,\n delay,\n filter,\n map,\n merge,\n mergeWith,\n shareReplay,\n switchMap\n} from \"rxjs\"\n\nimport { configuration, feature } from \"./_\"\nimport {\n at,\n getActiveElement,\n getOptionalElement,\n requestJSON,\n setLocation,\n setToggle,\n watchDocument,\n watchKeyboard,\n watchLocation,\n watchLocationTarget,\n watchMedia,\n watchPrint,\n watchScript,\n watchViewport\n} from \"./browser\"\nimport {\n getComponentElement,\n getComponentElements,\n mountAnnounce,\n mountBackToTop,\n mountConsent,\n mountContent,\n mountDialog,\n mountHeader,\n mountHeaderTitle,\n mountPalette,\n mountSearch,\n mountSearchHiglight,\n mountSidebar,\n mountSource,\n mountTableOfContents,\n mountTabs,\n watchHeader,\n watchMain\n} from \"./components\"\nimport {\n SearchIndex,\n setupClipboardJS,\n setupInstantLoading,\n setupVersionSelector\n} from \"./integrations\"\nimport {\n patchIndeterminate,\n patchScrollfix,\n patchScrolllock\n} from \"./patches\"\nimport \"./polyfills\"\n\n/* ----------------------------------------------------------------------------\n * Functions - @todo refactor\n * ------------------------------------------------------------------------- */\n\n/**\n * Fetch search index\n *\n * @returns Search index observable\n */\nfunction fetchSearchIndex(): Observable {\n if (location.protocol === \"file:\") {\n return watchScript(\n `${new URL(\"search/search_index.js\", config.base)}`\n )\n .pipe(\n // @ts-ignore - @todo fix typings\n map(() => __index),\n shareReplay(1)\n )\n } else {\n return requestJSON(\n new URL(\"search/search_index.json\", config.base)\n )\n }\n}\n\n/* ----------------------------------------------------------------------------\n * Application\n * ------------------------------------------------------------------------- */\n\n/* Yay, JavaScript is available */\ndocument.documentElement.classList.remove(\"no-js\")\ndocument.documentElement.classList.add(\"js\")\n\n/* Set up navigation observables and subjects */\nconst document$ = watchDocument()\nconst location$ = watchLocation()\nconst target$ = watchLocationTarget(location$)\nconst keyboard$ = watchKeyboard()\n\n/* Set up media observables */\nconst viewport$ = watchViewport()\nconst tablet$ = watchMedia(\"(min-width: 960px)\")\nconst screen$ = watchMedia(\"(min-width: 1220px)\")\nconst print$ = watchPrint()\n\n/* Retrieve search index, if search is enabled */\nconst config = configuration()\nconst index$ = document.forms.namedItem(\"search\")\n ? fetchSearchIndex()\n : NEVER\n\n/* Set up Clipboard.js integration */\nconst alert$ = new Subject()\nsetupClipboardJS({ alert$ })\n\n/* Set up instant loading, if enabled */\nif (feature(\"navigation.instant\"))\n setupInstantLoading({ location$, viewport$ })\n .subscribe(document$)\n\n/* Set up version selector */\nif (config.version?.provider === \"mike\")\n setupVersionSelector({ document$ })\n\n/* Always close drawer and search on navigation */\nmerge(location$, target$)\n .pipe(\n delay(125)\n )\n .subscribe(() => {\n setToggle(\"drawer\", false)\n setToggle(\"search\", false)\n })\n\n/* Set up global keyboard handlers */\nkeyboard$\n .pipe(\n filter(({ mode }) => mode === \"global\")\n )\n .subscribe(key => {\n switch (key.type) {\n\n /* Go to previous page */\n case \"p\":\n case \",\":\n const prev = getOptionalElement(\"link[rel=prev]\")\n if (typeof prev !== \"undefined\")\n setLocation(prev)\n break\n\n /* Go to next page */\n case \"n\":\n case \".\":\n const next = getOptionalElement(\"link[rel=next]\")\n if (typeof next !== \"undefined\")\n setLocation(next)\n break\n\n /* Expand navigation, see https://bit.ly/3ZjG5io */\n case \"Enter\":\n const active = getActiveElement()\n if (active instanceof HTMLLabelElement)\n active.click()\n }\n })\n\n/* Set up patches */\npatchIndeterminate({ document$, tablet$ })\npatchScrollfix({ document$ })\npatchScrolllock({ viewport$, tablet$ })\n\n/* Set up header and main area observable */\nconst header$ = watchHeader(getComponentElement(\"header\"), { viewport$ })\nconst main$ = document$\n .pipe(\n map(() => getComponentElement(\"main\")),\n switchMap(el => watchMain(el, { viewport$, header$ })),\n shareReplay(1)\n )\n\n/* Set up control component observables */\nconst control$ = merge(\n\n /* Consent */\n ...getComponentElements(\"consent\")\n .map(el => mountConsent(el, { target$ })),\n\n /* Dialog */\n ...getComponentElements(\"dialog\")\n .map(el => mountDialog(el, { alert$ })),\n\n /* Header */\n ...getComponentElements(\"header\")\n .map(el => mountHeader(el, { viewport$, header$, main$ })),\n\n /* Color palette */\n ...getComponentElements(\"palette\")\n .map(el => mountPalette(el)),\n\n /* Search */\n ...getComponentElements(\"search\")\n .map(el => mountSearch(el, { index$, keyboard$ })),\n\n /* Repository information */\n ...getComponentElements(\"source\")\n .map(el => mountSource(el))\n)\n\n/* Set up content component observables */\nconst content$ = defer(() => merge(\n\n /* Announcement bar */\n ...getComponentElements(\"announce\")\n .map(el => mountAnnounce(el)),\n\n /* Content */\n ...getComponentElements(\"content\")\n .map(el => mountContent(el, { viewport$, target$, print$ })),\n\n /* Search highlighting */\n ...getComponentElements(\"content\")\n .map(el => feature(\"search.highlight\")\n ? mountSearchHiglight(el, { index$, location$ })\n : EMPTY\n ),\n\n /* Header title */\n ...getComponentElements(\"header-title\")\n .map(el => mountHeaderTitle(el, { viewport$, header$ })),\n\n /* Sidebar */\n ...getComponentElements(\"sidebar\")\n .map(el => el.getAttribute(\"data-md-type\") === \"navigation\"\n ? at(screen$, () => mountSidebar(el, { viewport$, header$, main$ }))\n : at(tablet$, () => mountSidebar(el, { viewport$, header$, main$ }))\n ),\n\n /* Navigation tabs */\n ...getComponentElements(\"tabs\")\n .map(el => mountTabs(el, { viewport$, header$ })),\n\n /* Table of contents */\n ...getComponentElements(\"toc\")\n .map(el => mountTableOfContents(el, {\n viewport$, header$, main$, target$\n })),\n\n /* Back-to-top button */\n ...getComponentElements(\"top\")\n .map(el => mountBackToTop(el, { viewport$, header$, main$, target$ }))\n))\n\n/* Set up component observables */\nconst component$ = document$\n .pipe(\n switchMap(() => content$),\n mergeWith(control$),\n shareReplay(1)\n )\n\n/* Subscribe to all components */\ncomponent$.subscribe()\n\n/* ----------------------------------------------------------------------------\n * Exports\n * ------------------------------------------------------------------------- */\n\nwindow.document$ = document$ /* Document observable */\nwindow.location$ = location$ /* Location subject */\nwindow.target$ = target$ /* Location target observable */\nwindow.keyboard$ = keyboard$ /* Keyboard observable */\nwindow.viewport$ = viewport$ /* Viewport observable */\nwindow.tablet$ = tablet$ /* Media tablet observable */\nwindow.screen$ = screen$ /* Media screen observable */\nwindow.print$ = print$ /* Media print observable */\nwindow.alert$ = alert$ /* Alert subject */\nwindow.component$ = component$ /* Component observable */\n", "/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n", "/**\n * Returns true if the object is a function.\n * @param value The value to check\n */\nexport function isFunction(value: any): value is (...args: any[]) => any {\n return typeof value === 'function';\n}\n", "/**\n * Used to create Error subclasses until the community moves away from ES5.\n *\n * This is because compiling from TypeScript down to ES5 has issues with subclassing Errors\n * as well as other built-in types: https://github.com/Microsoft/TypeScript/issues/12123\n *\n * @param createImpl A factory function to create the actual constructor implementation. The returned\n * function should be a named function that calls `_super` internally.\n */\nexport function createErrorClass(createImpl: (_super: any) => any): T {\n const _super = (instance: any) => {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n\n const ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n", "import { createErrorClass } from './createErrorClass';\n\nexport interface UnsubscriptionError extends Error {\n readonly errors: any[];\n}\n\nexport interface UnsubscriptionErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (errors: any[]): UnsubscriptionError;\n}\n\n/**\n * An error thrown when one or more errors have occurred during the\n * `unsubscribe` of a {@link Subscription}.\n */\nexport const UnsubscriptionError: UnsubscriptionErrorCtor = createErrorClass(\n (_super) =>\n function UnsubscriptionErrorImpl(this: any, errors: (Error | string)[]) {\n _super(this);\n this.message = errors\n ? `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}`\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n }\n);\n", "/**\n * Removes an item from an array, mutating it.\n * @param arr The array to remove the item from\n * @param item The item to remove\n */\nexport function arrRemove(arr: T[] | undefined | null, item: T) {\n if (arr) {\n const index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n", "import { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { SubscriptionLike, TeardownLogic, Unsubscribable } from './types';\nimport { arrRemove } from './util/arrRemove';\n\n/**\n * Represents a disposable resource, such as the execution of an Observable. A\n * Subscription has one important method, `unsubscribe`, that takes no argument\n * and just disposes the resource held by the subscription.\n *\n * Additionally, subscriptions may be grouped together through the `add()`\n * method, which will attach a child Subscription to the current Subscription.\n * When a Subscription is unsubscribed, all its children (and its grandchildren)\n * will be unsubscribed as well.\n *\n * @class Subscription\n */\nexport class Subscription implements SubscriptionLike {\n /** @nocollapse */\n public static EMPTY = (() => {\n const empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n\n /**\n * A flag to indicate whether this Subscription has already been unsubscribed.\n */\n public closed = false;\n\n private _parentage: Subscription[] | Subscription | null = null;\n\n /**\n * The list of registered finalizers to execute upon unsubscription. Adding and removing from this\n * list occurs in the {@link #add} and {@link #remove} methods.\n */\n private _finalizers: Exclude[] | null = null;\n\n /**\n * @param initialTeardown A function executed first as part of the finalization\n * process that is kicked off when {@link #unsubscribe} is called.\n */\n constructor(private initialTeardown?: () => void) {}\n\n /**\n * Disposes the resources held by the subscription. May, for instance, cancel\n * an ongoing Observable execution or cancel any other type of work that\n * started when the Subscription was created.\n * @return {void}\n */\n unsubscribe(): void {\n let errors: any[] | undefined;\n\n if (!this.closed) {\n this.closed = true;\n\n // Remove this from it's parents.\n const { _parentage } = this;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n for (const parent of _parentage) {\n parent.remove(this);\n }\n } else {\n _parentage.remove(this);\n }\n }\n\n const { initialTeardown: initialFinalizer } = this;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n } catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n\n const { _finalizers } = this;\n if (_finalizers) {\n this._finalizers = null;\n for (const finalizer of _finalizers) {\n try {\n execFinalizer(finalizer);\n } catch (err) {\n errors = errors ?? [];\n if (err instanceof UnsubscriptionError) {\n errors = [...errors, ...err.errors];\n } else {\n errors.push(err);\n }\n }\n }\n }\n\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n }\n\n /**\n * Adds a finalizer to this subscription, so that finalization will be unsubscribed/called\n * when this subscription is unsubscribed. If this subscription is already {@link #closed},\n * because it has already been unsubscribed, then whatever finalizer is passed to it\n * will automatically be executed (unless the finalizer itself is also a closed subscription).\n *\n * Closed Subscriptions cannot be added as finalizers to any subscription. Adding a closed\n * subscription to a any subscription will result in no operation. (A noop).\n *\n * Adding a subscription to itself, or adding `null` or `undefined` will not perform any\n * operation at all. (A noop).\n *\n * `Subscription` instances that are added to this instance will automatically remove themselves\n * if they are unsubscribed. Functions and {@link Unsubscribable} objects that you wish to remove\n * will need to be removed manually with {@link #remove}\n *\n * @param teardown The finalization logic to add to this subscription.\n */\n add(teardown: TeardownLogic): void {\n // Only add the finalizer if it's not undefined\n // and don't add a subscription to itself.\n if (teardown && teardown !== this) {\n if (this.closed) {\n // If this subscription is already closed,\n // execute whatever finalizer is handed to it automatically.\n execFinalizer(teardown);\n } else {\n if (teardown instanceof Subscription) {\n // We don't add closed subscriptions, and we don't add the same subscription\n // twice. Subscription unsubscribe is idempotent.\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = this._finalizers ?? []).push(teardown);\n }\n }\n }\n\n /**\n * Checks to see if a this subscription already has a particular parent.\n * This will signal that this subscription has already been added to the parent in question.\n * @param parent the parent to check for\n */\n private _hasParent(parent: Subscription) {\n const { _parentage } = this;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n }\n\n /**\n * Adds a parent to this subscription so it can be removed from the parent if it\n * unsubscribes on it's own.\n *\n * NOTE: THIS ASSUMES THAT {@link _hasParent} HAS ALREADY BEEN CHECKED.\n * @param parent The parent subscription to add\n */\n private _addParent(parent: Subscription) {\n const { _parentage } = this;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n }\n\n /**\n * Called on a child when it is removed via {@link #remove}.\n * @param parent The parent to remove\n */\n private _removeParent(parent: Subscription) {\n const { _parentage } = this;\n if (_parentage === parent) {\n this._parentage = null;\n } else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n }\n\n /**\n * Removes a finalizer from this subscription that was previously added with the {@link #add} method.\n *\n * Note that `Subscription` instances, when unsubscribed, will automatically remove themselves\n * from every other `Subscription` they have been added to. This means that using the `remove` method\n * is not a common thing and should be used thoughtfully.\n *\n * If you add the same finalizer instance of a function or an unsubscribable object to a `Subscription` instance\n * more than once, you will need to call `remove` the same number of times to remove all instances.\n *\n * All finalizer instances are removed to free up memory upon unsubscription.\n *\n * @param teardown The finalizer to remove from this subscription\n */\n remove(teardown: Exclude): void {\n const { _finalizers } = this;\n _finalizers && arrRemove(_finalizers, teardown);\n\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n }\n}\n\nexport const EMPTY_SUBSCRIPTION = Subscription.EMPTY;\n\nexport function isSubscription(value: any): value is Subscription {\n return (\n value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe))\n );\n}\n\nfunction execFinalizer(finalizer: Unsubscribable | (() => void)) {\n if (isFunction(finalizer)) {\n finalizer();\n } else {\n finalizer.unsubscribe();\n }\n}\n", "import { Subscriber } from './Subscriber';\nimport { ObservableNotification } from './types';\n\n/**\n * The {@link GlobalConfig} object for RxJS. It is used to configure things\n * like how to react on unhandled errors.\n */\nexport const config: GlobalConfig = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n\n/**\n * The global configuration object for RxJS, used to configure things\n * like how to react on unhandled errors. Accessible via {@link config}\n * object.\n */\nexport interface GlobalConfig {\n /**\n * A registration point for unhandled errors from RxJS. These are errors that\n * cannot were not handled by consuming code in the usual subscription path. For\n * example, if you have this configured, and you subscribe to an observable without\n * providing an error handler, errors from that subscription will end up here. This\n * will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onUnhandledError: ((err: any) => void) | null;\n\n /**\n * A registration point for notifications that cannot be sent to subscribers because they\n * have completed, errored or have been explicitly unsubscribed. By default, next, complete\n * and error notifications sent to stopped subscribers are noops. However, sometimes callers\n * might want a different behavior. For example, with sources that attempt to report errors\n * to stopped subscribers, a caller can configure RxJS to throw an unhandled error instead.\n * This will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onStoppedNotification: ((notification: ObservableNotification, subscriber: Subscriber) => void) | null;\n\n /**\n * The promise constructor used by default for {@link Observable#toPromise toPromise} and {@link Observable#forEach forEach}\n * methods.\n *\n * @deprecated As of version 8, RxJS will no longer support this sort of injection of a\n * Promise constructor. If you need a Promise implementation other than native promises,\n * please polyfill/patch Promise as you see appropriate. Will be removed in v8.\n */\n Promise?: PromiseConstructorLike;\n\n /**\n * If true, turns on synchronous error rethrowing, which is a deprecated behavior\n * in v6 and higher. This behavior enables bad patterns like wrapping a subscribe\n * call in a try/catch block. It also enables producer interference, a nasty bug\n * where a multicast can be broken for all observers by a downstream consumer with\n * an unhandled error. DO NOT USE THIS FLAG UNLESS IT'S NEEDED TO BUY TIME\n * FOR MIGRATION REASONS.\n *\n * @deprecated As of version 8, RxJS will no longer support synchronous throwing\n * of unhandled errors. All errors will be thrown on a separate call stack to prevent bad\n * behaviors described above. Will be removed in v8.\n */\n useDeprecatedSynchronousErrorHandling: boolean;\n\n /**\n * If true, enables an as-of-yet undocumented feature from v5: The ability to access\n * `unsubscribe()` via `this` context in `next` functions created in observers passed\n * to `subscribe`.\n *\n * This is being removed because the performance was severely problematic, and it could also cause\n * issues when types other than POJOs are passed to subscribe as subscribers, as they will likely have\n * their `this` context overwritten.\n *\n * @deprecated As of version 8, RxJS will no longer support altering the\n * context of next functions provided as part of an observer to Subscribe. Instead,\n * you will have access to a subscription or a signal or token that will allow you to do things like\n * unsubscribe and test closed status. Will be removed in v8.\n */\n useDeprecatedNextContext: boolean;\n}\n", "import type { TimerHandle } from './timerHandle';\ntype SetTimeoutFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearTimeoutFunction = (handle: TimerHandle) => void;\n\ninterface TimeoutProvider {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n delegate:\n | {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n }\n | undefined;\n}\n\nexport const timeoutProvider: TimeoutProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setTimeout(handler: () => void, timeout?: number, ...args) {\n const { delegate } = timeoutProvider;\n if (delegate?.setTimeout) {\n return delegate.setTimeout(handler, timeout, ...args);\n }\n return setTimeout(handler, timeout, ...args);\n },\n clearTimeout(handle) {\n const { delegate } = timeoutProvider;\n return (delegate?.clearTimeout || clearTimeout)(handle as any);\n },\n delegate: undefined,\n};\n", "import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\n\n/**\n * Handles an error on another job either with the user-configured {@link onUnhandledError},\n * or by throwing it on that new job so it can be picked up by `window.onerror`, `process.on('error')`, etc.\n *\n * This should be called whenever there is an error that is out-of-band with the subscription\n * or when an error hits a terminal boundary of the subscription and no error handler was provided.\n *\n * @param err the error to report\n */\nexport function reportUnhandledError(err: any) {\n timeoutProvider.setTimeout(() => {\n const { onUnhandledError } = config;\n if (onUnhandledError) {\n // Execute the user-configured error handler.\n onUnhandledError(err);\n } else {\n // Throw so it is picked up by the runtime's uncaught error mechanism.\n throw err;\n }\n });\n}\n", "/* tslint:disable:no-empty */\nexport function noop() { }\n", "import { CompleteNotification, NextNotification, ErrorNotification } from './types';\n\n/**\n * A completion object optimized for memory use and created to be the\n * same \"shape\" as other notifications in v8.\n * @internal\n */\nexport const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined) as CompleteNotification)();\n\n/**\n * Internal use only. Creates an optimized error notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function errorNotification(error: any): ErrorNotification {\n return createNotification('E', undefined, error) as any;\n}\n\n/**\n * Internal use only. Creates an optimized next notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function nextNotification(value: T) {\n return createNotification('N', value, undefined) as NextNotification;\n}\n\n/**\n * Ensures that all notifications created internally have the same \"shape\" in v8.\n *\n * TODO: This is only exported to support a crazy legacy test in `groupBy`.\n * @internal\n */\nexport function createNotification(kind: 'N' | 'E' | 'C', value: any, error: any) {\n return {\n kind,\n value,\n error,\n };\n}\n", "import { config } from '../config';\n\nlet context: { errorThrown: boolean; error: any } | null = null;\n\n/**\n * Handles dealing with errors for super-gross mode. Creates a context, in which\n * any synchronously thrown errors will be passed to {@link captureError}. Which\n * will record the error such that it will be rethrown after the call back is complete.\n * TODO: Remove in v8\n * @param cb An immediately executed function.\n */\nexport function errorContext(cb: () => void) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n const isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n const { errorThrown, error } = context!;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n } else {\n // This is the general non-deprecated path for everyone that\n // isn't crazy enough to use super-gross mode (useDeprecatedSynchronousErrorHandling)\n cb();\n }\n}\n\n/**\n * Captures errors only in super-gross mode.\n * @param err the error to capture\n */\nexport function captureError(err: any) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n", "import { isFunction } from './util/isFunction';\nimport { Observer, ObservableNotification } from './types';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\n\n/**\n * Implements the {@link Observer} interface and extends the\n * {@link Subscription} class. While the {@link Observer} is the public API for\n * consuming the values of an {@link Observable}, all Observers get converted to\n * a Subscriber, in order to provide Subscription-like capabilities such as\n * `unsubscribe`. Subscriber is a common type in RxJS, and crucial for\n * implementing operators, but it is rarely used as a public API.\n *\n * @class Subscriber\n */\nexport class Subscriber extends Subscription implements Observer {\n /**\n * A static factory for a Subscriber, given a (potentially partial) definition\n * of an Observer.\n * @param next The `next` callback of an Observer.\n * @param error The `error` callback of an\n * Observer.\n * @param complete The `complete` callback of an\n * Observer.\n * @return A Subscriber wrapping the (partially defined)\n * Observer represented by the given arguments.\n * @nocollapse\n * @deprecated Do not use. Will be removed in v8. There is no replacement for this\n * method, and there is no reason to be creating instances of `Subscriber` directly.\n * If you have a specific use case, please file an issue.\n */\n static create(next?: (x?: T) => void, error?: (e?: any) => void, complete?: () => void): Subscriber {\n return new SafeSubscriber(next, error, complete);\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected isStopped: boolean = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected destination: Subscriber | Observer; // this `any` is the escape hatch to erase extra type param (e.g. R)\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * There is no reason to directly create an instance of Subscriber. This type is exported for typings reasons.\n */\n constructor(destination?: Subscriber | Observer) {\n super();\n if (destination) {\n this.destination = destination;\n // Automatically chain subscriptions together here.\n // if destination is a Subscription, then it is a Subscriber.\n if (isSubscription(destination)) {\n destination.add(this);\n }\n } else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `next` from\n * the Observable, with a value. The Observable may call this method 0 or more\n * times.\n * @param {T} [value] The `next` value.\n * @return {void}\n */\n next(value?: T): void {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n } else {\n this._next(value!);\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `error` from\n * the Observable, with an attached `Error`. Notifies the Observer that\n * the Observable has experienced an error condition.\n * @param {any} [err] The `error` exception.\n * @return {void}\n */\n error(err?: any): void {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n } else {\n this.isStopped = true;\n this._error(err);\n }\n }\n\n /**\n * The {@link Observer} callback to receive a valueless notification of type\n * `complete` from the Observable. Notifies the Observer that the Observable\n * has finished sending push-based notifications.\n * @return {void}\n */\n complete(): void {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n } else {\n this.isStopped = true;\n this._complete();\n }\n }\n\n unsubscribe(): void {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null!;\n }\n }\n\n protected _next(value: T): void {\n this.destination.next(value);\n }\n\n protected _error(err: any): void {\n try {\n this.destination.error(err);\n } finally {\n this.unsubscribe();\n }\n }\n\n protected _complete(): void {\n try {\n this.destination.complete();\n } finally {\n this.unsubscribe();\n }\n }\n}\n\n/**\n * This bind is captured here because we want to be able to have\n * compatibility with monoid libraries that tend to use a method named\n * `bind`. In particular, a library called Monio requires this.\n */\nconst _bind = Function.prototype.bind;\n\nfunction bind any>(fn: Fn, thisArg: any): Fn {\n return _bind.call(fn, thisArg);\n}\n\n/**\n * Internal optimization only, DO NOT EXPOSE.\n * @internal\n */\nclass ConsumerObserver implements Observer {\n constructor(private partialObserver: Partial>) {}\n\n next(value: T): void {\n const { partialObserver } = this;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n\n error(err: any): void {\n const { partialObserver } = this;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n } catch (error) {\n handleUnhandledError(error);\n }\n } else {\n handleUnhandledError(err);\n }\n }\n\n complete(): void {\n const { partialObserver } = this;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n}\n\nexport class SafeSubscriber extends Subscriber {\n constructor(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((e?: any) => void) | null,\n complete?: (() => void) | null\n ) {\n super();\n\n let partialObserver: Partial>;\n if (isFunction(observerOrNext) || !observerOrNext) {\n // The first argument is a function, not an observer. The next\n // two arguments *could* be observers, or they could be empty.\n partialObserver = {\n next: (observerOrNext ?? undefined) as (((value: T) => void) | undefined),\n error: error ?? undefined,\n complete: complete ?? undefined,\n };\n } else {\n // The first argument is a partial observer.\n let context: any;\n if (this && config.useDeprecatedNextContext) {\n // This is a deprecated path that made `this.unsubscribe()` available in\n // next handler functions passed to subscribe. This only exists behind a flag\n // now, as it is *very* slow.\n context = Object.create(observerOrNext);\n context.unsubscribe = () => this.unsubscribe();\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context),\n };\n } else {\n // The \"normal\" path. Just use the partial observer directly.\n partialObserver = observerOrNext;\n }\n }\n\n // Wrap the partial observer to ensure it's a full observer, and\n // make sure proper error handling is accounted for.\n this.destination = new ConsumerObserver(partialObserver);\n }\n}\n\nfunction handleUnhandledError(error: any) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n } else {\n // Ideal path, we report this as an unhandled error,\n // which is thrown on a new call stack.\n reportUnhandledError(error);\n }\n}\n\n/**\n * An error handler used when no error handler was supplied\n * to the SafeSubscriber -- meaning no error handler was supplied\n * do the `subscribe` call on our observable.\n * @param err The error to handle\n */\nfunction defaultErrorHandler(err: any) {\n throw err;\n}\n\n/**\n * A handler for notifications that cannot be sent to a stopped subscriber.\n * @param notification The notification being sent\n * @param subscriber The stopped subscriber\n */\nfunction handleStoppedNotification(notification: ObservableNotification, subscriber: Subscriber) {\n const { onStoppedNotification } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\n\n/**\n * The observer used as a stub for subscriptions where the user did not\n * pass any arguments to `subscribe`. Comes with the default error handling\n * behavior.\n */\nexport const EMPTY_OBSERVER: Readonly> & { closed: true } = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n", "/**\n * Symbol.observable or a string \"@@observable\". Used for interop\n *\n * @deprecated We will no longer be exporting this symbol in upcoming versions of RxJS.\n * Instead polyfill and use Symbol.observable directly *or* use https://www.npmjs.com/package/symbol-observable\n */\nexport const observable: string | symbol = (() => (typeof Symbol === 'function' && Symbol.observable) || '@@observable')();\n", "/**\n * This function takes one parameter and just returns it. Simply put,\n * this is like `(x: T): T => x`.\n *\n * ## Examples\n *\n * This is useful in some cases when using things like `mergeMap`\n *\n * ```ts\n * import { interval, take, map, range, mergeMap, identity } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(5));\n *\n * const result$ = source$.pipe(\n * map(i => range(i)),\n * mergeMap(identity) // same as mergeMap(x => x)\n * );\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * Or when you want to selectively apply an operator\n *\n * ```ts\n * import { interval, take, identity } from 'rxjs';\n *\n * const shouldLimit = () => Math.random() < 0.5;\n *\n * const source$ = interval(1000);\n *\n * const result$ = source$.pipe(shouldLimit() ? take(5) : identity);\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * @param x Any value that is returned by this function\n * @returns The value passed as the first parameter to this function\n */\nexport function identity(x: T): T {\n return x;\n}\n", "import { identity } from './identity';\nimport { UnaryFunction } from '../types';\n\nexport function pipe(): typeof identity;\nexport function pipe(fn1: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction, fn3: UnaryFunction): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction,\n ...fns: UnaryFunction[]\n): UnaryFunction;\n\n/**\n * pipe() can be called on one or more functions, each of which can take one argument (\"UnaryFunction\")\n * and uses it to return a value.\n * It returns a function that takes one argument, passes it to the first UnaryFunction, and then\n * passes the result to the next one, passes that result to the next one, and so on. \n */\nexport function pipe(...fns: Array>): UnaryFunction {\n return pipeFromArray(fns);\n}\n\n/** @internal */\nexport function pipeFromArray(fns: Array>): UnaryFunction {\n if (fns.length === 0) {\n return identity as UnaryFunction;\n }\n\n if (fns.length === 1) {\n return fns[0];\n }\n\n return function piped(input: T): R {\n return fns.reduce((prev: any, fn: UnaryFunction) => fn(prev), input as any);\n };\n}\n", "import { Operator } from './Operator';\nimport { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription, Subscription } from './Subscription';\nimport { TeardownLogic, OperatorFunction, Subscribable, Observer } from './types';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A representation of any set of values over any amount of time. This is the most basic building block\n * of RxJS.\n *\n * @class Observable\n */\nexport class Observable implements Subscribable {\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n source: Observable | undefined;\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n operator: Operator | undefined;\n\n /**\n * @constructor\n * @param {Function} subscribe the function that is called when the Observable is\n * initially subscribed to. This function is given a Subscriber, to which new values\n * can be `next`ed, or an `error` method can be called to raise an error, or\n * `complete` can be called to notify of a successful completion.\n */\n constructor(subscribe?: (this: Observable, subscriber: Subscriber) => TeardownLogic) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n\n // HACK: Since TypeScript inherits static properties too, we have to\n // fight against TypeScript here so Subject can have a different static create signature\n /**\n * Creates a new Observable by calling the Observable constructor\n * @owner Observable\n * @method create\n * @param {Function} subscribe? the subscriber function to be passed to the Observable constructor\n * @return {Observable} a new observable\n * @nocollapse\n * @deprecated Use `new Observable()` instead. Will be removed in v8.\n */\n static create: (...args: any[]) => any = (subscribe?: (subscriber: Subscriber) => TeardownLogic) => {\n return new Observable(subscribe);\n };\n\n /**\n * Creates a new Observable, with this Observable instance as the source, and the passed\n * operator defined as the new observable's operator.\n * @method lift\n * @param operator the operator defining the operation to take on the observable\n * @return a new observable with the Operator applied\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * If you have implemented an operator using `lift`, it is recommended that you create an\n * operator by simply returning `new Observable()` directly. See \"Creating new operators from\n * scratch\" section here: https://rxjs.dev/guide/operators\n */\n lift(operator?: Operator): Observable {\n const observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n\n subscribe(observerOrNext?: Partial> | ((value: T) => void)): Subscription;\n /** @deprecated Instead of passing separate callback arguments, use an observer argument. Signatures taking separate callback arguments will be removed in v8. Details: https://rxjs.dev/deprecations/subscribe-arguments */\n subscribe(next?: ((value: T) => void) | null, error?: ((error: any) => void) | null, complete?: (() => void) | null): Subscription;\n /**\n * Invokes an execution of an Observable and registers Observer handlers for notifications it will emit.\n *\n * Use it when you have all these Observables, but still nothing is happening.\n *\n * `subscribe` is not a regular operator, but a method that calls Observable's internal `subscribe` function. It\n * might be for example a function that you passed to Observable's constructor, but most of the time it is\n * a library implementation, which defines what will be emitted by an Observable, and when it be will emitted. This means\n * that calling `subscribe` is actually the moment when Observable starts its work, not when it is created, as it is often\n * the thought.\n *\n * Apart from starting the execution of an Observable, this method allows you to listen for values\n * that an Observable emits, as well as for when it completes or errors. You can achieve this in two\n * of the following ways.\n *\n * The first way is creating an object that implements {@link Observer} interface. It should have methods\n * defined by that interface, but note that it should be just a regular JavaScript object, which you can create\n * yourself in any way you want (ES6 class, classic function constructor, object literal etc.). In particular, do\n * not attempt to use any RxJS implementation details to create Observers - you don't need them. Remember also\n * that your object does not have to implement all methods. If you find yourself creating a method that doesn't\n * do anything, you can simply omit it. Note however, if the `error` method is not provided and an error happens,\n * it will be thrown asynchronously. Errors thrown asynchronously cannot be caught using `try`/`catch`. Instead,\n * use the {@link onUnhandledError} configuration option or use a runtime handler (like `window.onerror` or\n * `process.on('error)`) to be notified of unhandled errors. Because of this, it's recommended that you provide\n * an `error` method to avoid missing thrown errors.\n *\n * The second way is to give up on Observer object altogether and simply provide callback functions in place of its methods.\n * This means you can provide three functions as arguments to `subscribe`, where the first function is equivalent\n * of a `next` method, the second of an `error` method and the third of a `complete` method. Just as in case of an Observer,\n * if you do not need to listen for something, you can omit a function by passing `undefined` or `null`,\n * since `subscribe` recognizes these functions by where they were placed in function call. When it comes\n * to the `error` function, as with an Observer, if not provided, errors emitted by an Observable will be thrown asynchronously.\n *\n * You can, however, subscribe with no parameters at all. This may be the case where you're not interested in terminal events\n * and you also handled emissions internally by using operators (e.g. using `tap`).\n *\n * Whichever style of calling `subscribe` you use, in both cases it returns a Subscription object.\n * This object allows you to call `unsubscribe` on it, which in turn will stop the work that an Observable does and will clean\n * up all resources that an Observable used. Note that cancelling a subscription will not call `complete` callback\n * provided to `subscribe` function, which is reserved for a regular completion signal that comes from an Observable.\n *\n * Remember that callbacks provided to `subscribe` are not guaranteed to be called asynchronously.\n * It is an Observable itself that decides when these functions will be called. For example {@link of}\n * by default emits all its values synchronously. Always check documentation for how given Observable\n * will behave when subscribed and if its default behavior can be modified with a `scheduler`.\n *\n * #### Examples\n *\n * Subscribe with an {@link guide/observer Observer}\n *\n * ```ts\n * import { of } from 'rxjs';\n *\n * const sumObserver = {\n * sum: 0,\n * next(value) {\n * console.log('Adding: ' + value);\n * this.sum = this.sum + value;\n * },\n * error() {\n * // We actually could just remove this method,\n * // since we do not really care about errors right now.\n * },\n * complete() {\n * console.log('Sum equals: ' + this.sum);\n * }\n * };\n *\n * of(1, 2, 3) // Synchronously emits 1, 2, 3 and then completes.\n * .subscribe(sumObserver);\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Subscribe with functions ({@link deprecations/subscribe-arguments deprecated})\n *\n * ```ts\n * import { of } from 'rxjs'\n *\n * let sum = 0;\n *\n * of(1, 2, 3).subscribe(\n * value => {\n * console.log('Adding: ' + value);\n * sum = sum + value;\n * },\n * undefined,\n * () => console.log('Sum equals: ' + sum)\n * );\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Cancel a subscription\n *\n * ```ts\n * import { interval } from 'rxjs';\n *\n * const subscription = interval(1000).subscribe({\n * next(num) {\n * console.log(num)\n * },\n * complete() {\n * // Will not be called, even when cancelling subscription.\n * console.log('completed!');\n * }\n * });\n *\n * setTimeout(() => {\n * subscription.unsubscribe();\n * console.log('unsubscribed!');\n * }, 2500);\n *\n * // Logs:\n * // 0 after 1s\n * // 1 after 2s\n * // 'unsubscribed!' after 2.5s\n * ```\n *\n * @param {Observer|Function} observerOrNext (optional) Either an observer with methods to be called,\n * or the first of three possible handlers, which is the handler for each value emitted from the subscribed\n * Observable.\n * @param {Function} error (optional) A handler for a terminal event resulting from an error. If no error handler is provided,\n * the error will be thrown asynchronously as unhandled.\n * @param {Function} complete (optional) A handler for a terminal event resulting from successful completion.\n * @return {Subscription} a subscription reference to the registered handlers\n * @method subscribe\n */\n subscribe(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((error: any) => void) | null,\n complete?: (() => void) | null\n ): Subscription {\n const subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n\n errorContext(() => {\n const { operator, source } = this;\n subscriber.add(\n operator\n ? // We're dealing with a subscription in the\n // operator chain to one of our lifted operators.\n operator.call(subscriber, source)\n : source\n ? // If `source` has a value, but `operator` does not, something that\n // had intimate knowledge of our API, like our `Subject`, must have\n // set it. We're going to just call `_subscribe` directly.\n this._subscribe(subscriber)\n : // In all other cases, we're likely wrapping a user-provided initializer\n // function, so we need to catch errors and handle them appropriately.\n this._trySubscribe(subscriber)\n );\n });\n\n return subscriber;\n }\n\n /** @internal */\n protected _trySubscribe(sink: Subscriber): TeardownLogic {\n try {\n return this._subscribe(sink);\n } catch (err) {\n // We don't need to return anything in this case,\n // because it's just going to try to `add()` to a subscription\n // above.\n sink.error(err);\n }\n }\n\n /**\n * Used as a NON-CANCELLABLE means of subscribing to an observable, for use with\n * APIs that expect promises, like `async/await`. You cannot unsubscribe from this.\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * #### Example\n *\n * ```ts\n * import { interval, take } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(4));\n *\n * async function getTotal() {\n * let total = 0;\n *\n * await source$.forEach(value => {\n * total += value;\n * console.log('observable -> ' + value);\n * });\n *\n * return total;\n * }\n *\n * getTotal().then(\n * total => console.log('Total: ' + total)\n * );\n *\n * // Expected:\n * // 'observable -> 0'\n * // 'observable -> 1'\n * // 'observable -> 2'\n * // 'observable -> 3'\n * // 'Total: 6'\n * ```\n *\n * @param next a handler for each value emitted by the observable\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n */\n forEach(next: (value: T) => void): Promise;\n\n /**\n * @param next a handler for each value emitted by the observable\n * @param promiseCtor a constructor function used to instantiate the Promise\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n * @deprecated Passing a Promise constructor will no longer be available\n * in upcoming versions of RxJS. This is because it adds weight to the library, for very\n * little benefit. If you need this functionality, it is recommended that you either\n * polyfill Promise, or you create an adapter to convert the returned native promise\n * to whatever promise implementation you wanted. Will be removed in v8.\n */\n forEach(next: (value: T) => void, promiseCtor: PromiseConstructorLike): Promise;\n\n forEach(next: (value: T) => void, promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n const subscriber = new SafeSubscriber({\n next: (value) => {\n try {\n next(value);\n } catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n this.subscribe(subscriber);\n }) as Promise;\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): TeardownLogic {\n return this.source?.subscribe(subscriber);\n }\n\n /**\n * An interop point defined by the es7-observable spec https://github.com/zenparsing/es-observable\n * @method Symbol.observable\n * @return {Observable} this instance of the observable\n */\n [Symbol_observable]() {\n return this;\n }\n\n /* tslint:disable:max-line-length */\n pipe(): Observable;\n pipe(op1: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction, op3: OperatorFunction): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction,\n ...operations: OperatorFunction[]\n ): Observable;\n /* tslint:enable:max-line-length */\n\n /**\n * Used to stitch together functional operators into a chain.\n * @method pipe\n * @return {Observable} the Observable result of all of the operators having\n * been called in the order they were passed in.\n *\n * ## Example\n *\n * ```ts\n * import { interval, filter, map, scan } from 'rxjs';\n *\n * interval(1000)\n * .pipe(\n * filter(x => x % 2 === 0),\n * map(x => x + x),\n * scan((acc, x) => acc + x)\n * )\n * .subscribe(x => console.log(x));\n * ```\n */\n pipe(...operations: OperatorFunction[]): Observable {\n return pipeFromArray(operations)(this);\n }\n\n /* tslint:disable:max-line-length */\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: typeof Promise): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: PromiseConstructorLike): Promise;\n /* tslint:enable:max-line-length */\n\n /**\n * Subscribe to this Observable and get a Promise resolving on\n * `complete` with the last emission (if any).\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * @method toPromise\n * @param [promiseCtor] a constructor function used to instantiate\n * the Promise\n * @return A Promise that resolves with the last value emit, or\n * rejects on an error. If there were no emissions, Promise\n * resolves with undefined.\n * @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise\n */\n toPromise(promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n let value: T | undefined;\n this.subscribe(\n (x: T) => (value = x),\n (err: any) => reject(err),\n () => resolve(value)\n );\n }) as Promise;\n }\n}\n\n/**\n * Decides between a passed promise constructor from consuming code,\n * A default configured promise constructor, and the native promise\n * constructor and returns it. If nothing can be found, it will throw\n * an error.\n * @param promiseCtor The optional promise constructor to passed by consuming code\n */\nfunction getPromiseCtor(promiseCtor: PromiseConstructorLike | undefined) {\n return promiseCtor ?? config.Promise ?? Promise;\n}\n\nfunction isObserver(value: any): value is Observer {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\n\nfunction isSubscriber(value: any): value is Subscriber {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n", "import { Observable } from '../Observable';\nimport { Subscriber } from '../Subscriber';\nimport { OperatorFunction } from '../types';\nimport { isFunction } from './isFunction';\n\n/**\n * Used to determine if an object is an Observable with a lift function.\n */\nexport function hasLift(source: any): source is { lift: InstanceType['lift'] } {\n return isFunction(source?.lift);\n}\n\n/**\n * Creates an `OperatorFunction`. Used to define operators throughout the library in a concise way.\n * @param init The logic to connect the liftedSource to the subscriber at the moment of subscription.\n */\nexport function operate(\n init: (liftedSource: Observable, subscriber: Subscriber) => (() => void) | void\n): OperatorFunction {\n return (source: Observable) => {\n if (hasLift(source)) {\n return source.lift(function (this: Subscriber, liftedSource: Observable) {\n try {\n return init(liftedSource, this);\n } catch (err) {\n this.error(err);\n }\n });\n }\n throw new TypeError('Unable to lift unknown Observable type');\n };\n}\n", "import { Subscriber } from '../Subscriber';\n\n/**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional teardown logic here. This will only be called on teardown if the\n * subscriber itself is not already closed. This is called after all other teardown logic is executed.\n */\nexport function createOperatorSubscriber(\n destination: Subscriber,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n onFinalize?: () => void\n): Subscriber {\n return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);\n}\n\n/**\n * A generic helper for allowing operators to be created with a Subscriber and\n * use closures to capture necessary state from the operator function itself.\n */\nexport class OperatorSubscriber extends Subscriber {\n /**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional finalization logic here. This will only be called on finalization if the\n * subscriber itself is not already closed. This is called after all other finalization logic is executed.\n * @param shouldUnsubscribe An optional check to see if an unsubscribe call should truly unsubscribe.\n * NOTE: This currently **ONLY** exists to support the strange behavior of {@link groupBy}, where unsubscription\n * to the resulting observable does not actually disconnect from the source if there are active subscriptions\n * to any grouped observable. (DO NOT EXPOSE OR USE EXTERNALLY!!!)\n */\n constructor(\n destination: Subscriber,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n private onFinalize?: () => void,\n private shouldUnsubscribe?: () => boolean\n ) {\n // It's important - for performance reasons - that all of this class's\n // members are initialized and that they are always initialized in the same\n // order. This will ensure that all OperatorSubscriber instances have the\n // same hidden class in V8. This, in turn, will help keep the number of\n // hidden classes involved in property accesses within the base class as\n // low as possible. If the number of hidden classes involved exceeds four,\n // the property accesses will become megamorphic and performance penalties\n // will be incurred - i.e. inline caches won't be used.\n //\n // The reasons for ensuring all instances have the same hidden class are\n // further discussed in this blog post from Benedikt Meurer:\n // https://benediktmeurer.de/2018/03/23/impact-of-polymorphism-on-component-based-frameworks-like-react/\n super(destination);\n this._next = onNext\n ? function (this: OperatorSubscriber, value: T) {\n try {\n onNext(value);\n } catch (err) {\n destination.error(err);\n }\n }\n : super._next;\n this._error = onError\n ? function (this: OperatorSubscriber, err: any) {\n try {\n onError(err);\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._error;\n this._complete = onComplete\n ? function (this: OperatorSubscriber) {\n try {\n onComplete();\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._complete;\n }\n\n unsubscribe() {\n if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {\n const { closed } = this;\n super.unsubscribe();\n // Execute additional teardown if we have any and we didn't already do so.\n !closed && this.onFinalize?.();\n }\n }\n}\n", "import { Subscription } from '../Subscription';\n\ninterface AnimationFrameProvider {\n schedule(callback: FrameRequestCallback): Subscription;\n requestAnimationFrame: typeof requestAnimationFrame;\n cancelAnimationFrame: typeof cancelAnimationFrame;\n delegate:\n | {\n requestAnimationFrame: typeof requestAnimationFrame;\n cancelAnimationFrame: typeof cancelAnimationFrame;\n }\n | undefined;\n}\n\nexport const animationFrameProvider: AnimationFrameProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n schedule(callback) {\n let request = requestAnimationFrame;\n let cancel: typeof cancelAnimationFrame | undefined = cancelAnimationFrame;\n const { delegate } = animationFrameProvider;\n if (delegate) {\n request = delegate.requestAnimationFrame;\n cancel = delegate.cancelAnimationFrame;\n }\n const handle = request((timestamp) => {\n // Clear the cancel function. The request has been fulfilled, so\n // attempting to cancel the request upon unsubscription would be\n // pointless.\n cancel = undefined;\n callback(timestamp);\n });\n return new Subscription(() => cancel?.(handle));\n },\n requestAnimationFrame(...args) {\n const { delegate } = animationFrameProvider;\n return (delegate?.requestAnimationFrame || requestAnimationFrame)(...args);\n },\n cancelAnimationFrame(...args) {\n const { delegate } = animationFrameProvider;\n return (delegate?.cancelAnimationFrame || cancelAnimationFrame)(...args);\n },\n delegate: undefined,\n};\n", "import { createErrorClass } from './createErrorClass';\n\nexport interface ObjectUnsubscribedError extends Error {}\n\nexport interface ObjectUnsubscribedErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (): ObjectUnsubscribedError;\n}\n\n/**\n * An error thrown when an action is invalid because the object has been\n * unsubscribed.\n *\n * @see {@link Subject}\n * @see {@link BehaviorSubject}\n *\n * @class ObjectUnsubscribedError\n */\nexport const ObjectUnsubscribedError: ObjectUnsubscribedErrorCtor = createErrorClass(\n (_super) =>\n function ObjectUnsubscribedErrorImpl(this: any) {\n _super(this);\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n }\n);\n", "import { Operator } from './Operator';\nimport { Observable } from './Observable';\nimport { Subscriber } from './Subscriber';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { Observer, SubscriptionLike, TeardownLogic } from './types';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A Subject is a special type of Observable that allows values to be\n * multicasted to many Observers. Subjects are like EventEmitters.\n *\n * Every Subject is an Observable and an Observer. You can subscribe to a\n * Subject, and you can call next to feed values as well as error and complete.\n */\nexport class Subject extends Observable implements SubscriptionLike {\n closed = false;\n\n private currentObservers: Observer[] | null = null;\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n observers: Observer[] = [];\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n isStopped = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n hasError = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n thrownError: any = null;\n\n /**\n * Creates a \"subject\" by basically gluing an observer to an observable.\n *\n * @nocollapse\n * @deprecated Recommended you do not use. Will be removed at some point in the future. Plans for replacement still under discussion.\n */\n static create: (...args: any[]) => any = (destination: Observer, source: Observable): AnonymousSubject => {\n return new AnonymousSubject(destination, source);\n };\n\n constructor() {\n // NOTE: This must be here to obscure Observable's constructor.\n super();\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n lift(operator: Operator): Observable {\n const subject = new AnonymousSubject(this, this);\n subject.operator = operator as any;\n return subject as any;\n }\n\n /** @internal */\n protected _throwIfClosed() {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n }\n\n next(value: T) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n if (!this.currentObservers) {\n this.currentObservers = Array.from(this.observers);\n }\n for (const observer of this.currentObservers) {\n observer.next(value);\n }\n }\n });\n }\n\n error(err: any) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.hasError = this.isStopped = true;\n this.thrownError = err;\n const { observers } = this;\n while (observers.length) {\n observers.shift()!.error(err);\n }\n }\n });\n }\n\n complete() {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.isStopped = true;\n const { observers } = this;\n while (observers.length) {\n observers.shift()!.complete();\n }\n }\n });\n }\n\n unsubscribe() {\n this.isStopped = this.closed = true;\n this.observers = this.currentObservers = null!;\n }\n\n get observed() {\n return this.observers?.length > 0;\n }\n\n /** @internal */\n protected _trySubscribe(subscriber: Subscriber): TeardownLogic {\n this._throwIfClosed();\n return super._trySubscribe(subscriber);\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n this._throwIfClosed();\n this._checkFinalizedStatuses(subscriber);\n return this._innerSubscribe(subscriber);\n }\n\n /** @internal */\n protected _innerSubscribe(subscriber: Subscriber) {\n const { hasError, isStopped, observers } = this;\n if (hasError || isStopped) {\n return EMPTY_SUBSCRIPTION;\n }\n this.currentObservers = null;\n observers.push(subscriber);\n return new Subscription(() => {\n this.currentObservers = null;\n arrRemove(observers, subscriber);\n });\n }\n\n /** @internal */\n protected _checkFinalizedStatuses(subscriber: Subscriber) {\n const { hasError, thrownError, isStopped } = this;\n if (hasError) {\n subscriber.error(thrownError);\n } else if (isStopped) {\n subscriber.complete();\n }\n }\n\n /**\n * Creates a new Observable with this Subject as the source. You can do this\n * to create custom Observer-side logic of the Subject and conceal it from\n * code that uses the Observable.\n * @return {Observable} Observable that the Subject casts to\n */\n asObservable(): Observable {\n const observable: any = new Observable();\n observable.source = this;\n return observable;\n }\n}\n\n/**\n * @class AnonymousSubject\n */\nexport class AnonymousSubject extends Subject {\n constructor(\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n public destination?: Observer,\n source?: Observable\n ) {\n super();\n this.source = source;\n }\n\n next(value: T) {\n this.destination?.next?.(value);\n }\n\n error(err: any) {\n this.destination?.error?.(err);\n }\n\n complete() {\n this.destination?.complete?.();\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n return this.source?.subscribe(subscriber) ?? EMPTY_SUBSCRIPTION;\n }\n}\n", "import { TimestampProvider } from '../types';\n\ninterface DateTimestampProvider extends TimestampProvider {\n delegate: TimestampProvider | undefined;\n}\n\nexport const dateTimestampProvider: DateTimestampProvider = {\n now() {\n // Use the variable rather than `this` so that the function can be called\n // without being bound to the provider.\n return (dateTimestampProvider.delegate || Date).now();\n },\n delegate: undefined,\n};\n", "import { Subject } from './Subject';\nimport { TimestampProvider } from './types';\nimport { Subscriber } from './Subscriber';\nimport { Subscription } from './Subscription';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\n\n/**\n * A variant of {@link Subject} that \"replays\" old values to new subscribers by emitting them when they first subscribe.\n *\n * `ReplaySubject` has an internal buffer that will store a specified number of values that it has observed. Like `Subject`,\n * `ReplaySubject` \"observes\" values by having them passed to its `next` method. When it observes a value, it will store that\n * value for a time determined by the configuration of the `ReplaySubject`, as passed to its constructor.\n *\n * When a new subscriber subscribes to the `ReplaySubject` instance, it will synchronously emit all values in its buffer in\n * a First-In-First-Out (FIFO) manner. The `ReplaySubject` will also complete, if it has observed completion; and it will\n * error if it has observed an error.\n *\n * There are two main configuration items to be concerned with:\n *\n * 1. `bufferSize` - This will determine how many items are stored in the buffer, defaults to infinite.\n * 2. `windowTime` - The amount of time to hold a value in the buffer before removing it from the buffer.\n *\n * Both configurations may exist simultaneously. So if you would like to buffer a maximum of 3 values, as long as the values\n * are less than 2 seconds old, you could do so with a `new ReplaySubject(3, 2000)`.\n *\n * ### Differences with BehaviorSubject\n *\n * `BehaviorSubject` is similar to `new ReplaySubject(1)`, with a couple of exceptions:\n *\n * 1. `BehaviorSubject` comes \"primed\" with a single value upon construction.\n * 2. `ReplaySubject` will replay values, even after observing an error, where `BehaviorSubject` will not.\n *\n * @see {@link Subject}\n * @see {@link BehaviorSubject}\n * @see {@link shareReplay}\n */\nexport class ReplaySubject extends Subject {\n private _buffer: (T | number)[] = [];\n private _infiniteTimeWindow = true;\n\n /**\n * @param bufferSize The size of the buffer to replay on subscription\n * @param windowTime The amount of time the buffered items will stay buffered\n * @param timestampProvider An object with a `now()` method that provides the current timestamp. This is used to\n * calculate the amount of time something has been buffered.\n */\n constructor(\n private _bufferSize = Infinity,\n private _windowTime = Infinity,\n private _timestampProvider: TimestampProvider = dateTimestampProvider\n ) {\n super();\n this._infiniteTimeWindow = _windowTime === Infinity;\n this._bufferSize = Math.max(1, _bufferSize);\n this._windowTime = Math.max(1, _windowTime);\n }\n\n next(value: T): void {\n const { isStopped, _buffer, _infiniteTimeWindow, _timestampProvider, _windowTime } = this;\n if (!isStopped) {\n _buffer.push(value);\n !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);\n }\n this._trimBuffer();\n super.next(value);\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n this._throwIfClosed();\n this._trimBuffer();\n\n const subscription = this._innerSubscribe(subscriber);\n\n const { _infiniteTimeWindow, _buffer } = this;\n // We use a copy here, so reentrant code does not mutate our array while we're\n // emitting it to a new subscriber.\n const copy = _buffer.slice();\n for (let i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) {\n subscriber.next(copy[i] as T);\n }\n\n this._checkFinalizedStatuses(subscriber);\n\n return subscription;\n }\n\n private _trimBuffer() {\n const { _bufferSize, _timestampProvider, _buffer, _infiniteTimeWindow } = this;\n // If we don't have an infinite buffer size, and we're over the length,\n // use splice to truncate the old buffer values off. Note that we have to\n // double the size for instances where we're not using an infinite time window\n // because we're storing the values and the timestamps in the same array.\n const adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;\n _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);\n\n // Now, if we're not in an infinite time window, remove all values where the time is\n // older than what is allowed.\n if (!_infiniteTimeWindow) {\n const now = _timestampProvider.now();\n let last = 0;\n // Search the array for the first timestamp that isn't expired and\n // truncate the buffer up to that point.\n for (let i = 1; i < _buffer.length && (_buffer[i] as number) <= now; i += 2) {\n last = i;\n }\n last && _buffer.splice(0, last + 1);\n }\n }\n}\n", "import { Scheduler } from '../Scheduler';\nimport { Subscription } from '../Subscription';\nimport { SchedulerAction } from '../types';\n\n/**\n * A unit of work to be executed in a `scheduler`. An action is typically\n * created from within a {@link SchedulerLike} and an RxJS user does not need to concern\n * themselves about creating and manipulating an Action.\n *\n * ```ts\n * class Action extends Subscription {\n * new (scheduler: Scheduler, work: (state?: T) => void);\n * schedule(state?: T, delay: number = 0): Subscription;\n * }\n * ```\n *\n * @class Action\n */\nexport class Action extends Subscription {\n constructor(scheduler: Scheduler, work: (this: SchedulerAction, state?: T) => void) {\n super();\n }\n /**\n * Schedules this action on its parent {@link SchedulerLike} for execution. May be passed\n * some context object, `state`. May happen at some point in the future,\n * according to the `delay` parameter, if specified.\n * @param {T} [state] Some contextual data that the `work` function uses when\n * called by the Scheduler.\n * @param {number} [delay] Time to wait before executing the work, where the\n * time unit is implicit and defined by the Scheduler.\n * @return {void}\n */\n public schedule(state?: T, delay: number = 0): Subscription {\n return this;\n }\n}\n", "import type { TimerHandle } from './timerHandle';\ntype SetIntervalFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearIntervalFunction = (handle: TimerHandle) => void;\n\ninterface IntervalProvider {\n setInterval: SetIntervalFunction;\n clearInterval: ClearIntervalFunction;\n delegate:\n | {\n setInterval: SetIntervalFunction;\n clearInterval: ClearIntervalFunction;\n }\n | undefined;\n}\n\nexport const intervalProvider: IntervalProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setInterval(handler: () => void, timeout?: number, ...args) {\n const { delegate } = intervalProvider;\n if (delegate?.setInterval) {\n return delegate.setInterval(handler, timeout, ...args);\n }\n return setInterval(handler, timeout, ...args);\n },\n clearInterval(handle) {\n const { delegate } = intervalProvider;\n return (delegate?.clearInterval || clearInterval)(handle as any);\n },\n delegate: undefined,\n};\n", "import { Action } from './Action';\nimport { SchedulerAction } from '../types';\nimport { Subscription } from '../Subscription';\nimport { AsyncScheduler } from './AsyncScheduler';\nimport { intervalProvider } from './intervalProvider';\nimport { arrRemove } from '../util/arrRemove';\nimport { TimerHandle } from './timerHandle';\n\nexport class AsyncAction extends Action {\n public id: TimerHandle | undefined;\n public state?: T;\n // @ts-ignore: Property has no initializer and is not definitely assigned\n public delay: number;\n protected pending: boolean = false;\n\n constructor(protected scheduler: AsyncScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n public schedule(state?: T, delay: number = 0): Subscription {\n if (this.closed) {\n return this;\n }\n\n // Always replace the current state with the new state.\n this.state = state;\n\n const id = this.id;\n const scheduler = this.scheduler;\n\n //\n // Important implementation note:\n //\n // Actions only execute once by default, unless rescheduled from within the\n // scheduled callback. This allows us to implement single and repeat\n // actions via the same code path, without adding API surface area, as well\n // as mimic traditional recursion but across asynchronous boundaries.\n //\n // However, JS runtimes and timers distinguish between intervals achieved by\n // serial `setTimeout` calls vs. a single `setInterval` call. An interval of\n // serial `setTimeout` calls can be individually delayed, which delays\n // scheduling the next `setTimeout`, and so on. `setInterval` attempts to\n // guarantee the interval callback will be invoked more precisely to the\n // interval period, regardless of load.\n //\n // Therefore, we use `setInterval` to schedule single and repeat actions.\n // If the action reschedules itself with the same delay, the interval is not\n // canceled. If the action doesn't reschedule, or reschedules with a\n // different delay, the interval will be canceled after scheduled callback\n // execution.\n //\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n\n // Set the pending flag indicating that this action has been scheduled, or\n // has recursively rescheduled itself.\n this.pending = true;\n\n this.delay = delay;\n // If this action has already an async Id, don't request a new one.\n this.id = this.id ?? this.requestAsyncId(scheduler, this.id, delay);\n\n return this;\n }\n\n protected requestAsyncId(scheduler: AsyncScheduler, _id?: TimerHandle, delay: number = 0): TimerHandle {\n return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);\n }\n\n protected recycleAsyncId(_scheduler: AsyncScheduler, id?: TimerHandle, delay: number | null = 0): TimerHandle | undefined {\n // If this action is rescheduled with the same delay time, don't clear the interval id.\n if (delay != null && this.delay === delay && this.pending === false) {\n return id;\n }\n // Otherwise, if the action's delay time is different from the current delay,\n // or the action has been rescheduled before it's executed, clear the interval id\n if (id != null) {\n intervalProvider.clearInterval(id);\n }\n\n return undefined;\n }\n\n /**\n * Immediately executes this action and the `work` it contains.\n * @return {any}\n */\n public execute(state: T, delay: number): any {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n\n this.pending = false;\n const error = this._execute(state, delay);\n if (error) {\n return error;\n } else if (this.pending === false && this.id != null) {\n // Dequeue if the action didn't reschedule itself. Don't call\n // unsubscribe(), because the action could reschedule later.\n // For example:\n // ```\n // scheduler.schedule(function doWork(counter) {\n // /* ... I'm a busy worker bee ... */\n // var originalAction = this;\n // /* wait 100ms before rescheduling the action */\n // setTimeout(function () {\n // originalAction.schedule(counter + 1);\n // }, 100);\n // }, 1000);\n // ```\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n }\n\n protected _execute(state: T, _delay: number): any {\n let errored: boolean = false;\n let errorValue: any;\n try {\n this.work(state);\n } catch (e) {\n errored = true;\n // HACK: Since code elsewhere is relying on the \"truthiness\" of the\n // return here, we can't have it return \"\" or 0 or false.\n // TODO: Clean this up when we refactor schedulers mid-version-8 or so.\n errorValue = e ? e : new Error('Scheduled action threw falsy error');\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n }\n\n unsubscribe() {\n if (!this.closed) {\n const { id, scheduler } = this;\n const { actions } = scheduler;\n\n this.work = this.state = this.scheduler = null!;\n this.pending = false;\n\n arrRemove(actions, this);\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n\n this.delay = null!;\n super.unsubscribe();\n }\n }\n}\n", "import { Action } from './scheduler/Action';\nimport { Subscription } from './Subscription';\nimport { SchedulerLike, SchedulerAction } from './types';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\n\n/**\n * An execution context and a data structure to order tasks and schedule their\n * execution. Provides a notion of (potentially virtual) time, through the\n * `now()` getter method.\n *\n * Each unit of work in a Scheduler is called an `Action`.\n *\n * ```ts\n * class Scheduler {\n * now(): number;\n * schedule(work, delay?, state?): Subscription;\n * }\n * ```\n *\n * @class Scheduler\n * @deprecated Scheduler is an internal implementation detail of RxJS, and\n * should not be used directly. Rather, create your own class and implement\n * {@link SchedulerLike}. Will be made internal in v8.\n */\nexport class Scheduler implements SchedulerLike {\n public static now: () => number = dateTimestampProvider.now;\n\n constructor(private schedulerActionCtor: typeof Action, now: () => number = Scheduler.now) {\n this.now = now;\n }\n\n /**\n * A getter method that returns a number representing the current time\n * (at the time this function was called) according to the scheduler's own\n * internal clock.\n * @return {number} A number that represents the current time. May or may not\n * have a relation to wall-clock time. May or may not refer to a time unit\n * (e.g. milliseconds).\n */\n public now: () => number;\n\n /**\n * Schedules a function, `work`, for execution. May happen at some point in\n * the future, according to the `delay` parameter, if specified. May be passed\n * some context object, `state`, which will be passed to the `work` function.\n *\n * The given arguments will be processed an stored as an Action object in a\n * queue of actions.\n *\n * @param {function(state: ?T): ?Subscription} work A function representing a\n * task, or some unit of work to be executed by the Scheduler.\n * @param {number} [delay] Time to wait before executing the work, where the\n * time unit is implicit and defined by the Scheduler itself.\n * @param {T} [state] Some contextual data that the `work` function uses when\n * called by the Scheduler.\n * @return {Subscription} A subscription in order to be able to unsubscribe\n * the scheduled work.\n */\n public schedule(work: (this: SchedulerAction, state?: T) => void, delay: number = 0, state?: T): Subscription {\n return new this.schedulerActionCtor(this, work).schedule(state, delay);\n }\n}\n", "import { Scheduler } from '../Scheduler';\nimport { Action } from './Action';\nimport { AsyncAction } from './AsyncAction';\nimport { TimerHandle } from './timerHandle';\n\nexport class AsyncScheduler extends Scheduler {\n public actions: Array> = [];\n /**\n * A flag to indicate whether the Scheduler is currently executing a batch of\n * queued actions.\n * @type {boolean}\n * @internal\n */\n public _active: boolean = false;\n /**\n * An internal ID used to track the latest asynchronous task such as those\n * coming from `setTimeout`, `setInterval`, `requestAnimationFrame`, and\n * others.\n * @type {any}\n * @internal\n */\n public _scheduled: TimerHandle | undefined;\n\n constructor(SchedulerAction: typeof Action, now: () => number = Scheduler.now) {\n super(SchedulerAction, now);\n }\n\n public flush(action: AsyncAction): void {\n const { actions } = this;\n\n if (this._active) {\n actions.push(action);\n return;\n }\n\n let error: any;\n this._active = true;\n\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions.shift()!)); // exhaust the scheduler queue\n\n this._active = false;\n\n if (error) {\n while ((action = actions.shift()!)) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n", "import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\n\n/**\n *\n * Async Scheduler\n *\n * Schedule task as if you used setTimeout(task, duration)\n *\n * `async` scheduler schedules tasks asynchronously, by putting them on the JavaScript\n * event loop queue. It is best used to delay tasks in time or to schedule tasks repeating\n * in intervals.\n *\n * If you just want to \"defer\" task, that is to perform it right after currently\n * executing synchronous code ends (commonly achieved by `setTimeout(deferredTask, 0)`),\n * better choice will be the {@link asapScheduler} scheduler.\n *\n * ## Examples\n * Use async scheduler to delay task\n * ```ts\n * import { asyncScheduler } from 'rxjs';\n *\n * const task = () => console.log('it works!');\n *\n * asyncScheduler.schedule(task, 2000);\n *\n * // After 2 seconds logs:\n * // \"it works!\"\n * ```\n *\n * Use async scheduler to repeat task in intervals\n * ```ts\n * import { asyncScheduler } from 'rxjs';\n *\n * function task(state) {\n * console.log(state);\n * this.schedule(state + 1, 1000); // `this` references currently executing Action,\n * // which we reschedule with new state and delay\n * }\n *\n * asyncScheduler.schedule(task, 3000, 0);\n *\n * // Logs:\n * // 0 after 3s\n * // 1 after 4s\n * // 2 after 5s\n * // 3 after 6s\n * ```\n */\n\nexport const asyncScheduler = new AsyncScheduler(AsyncAction);\n\n/**\n * @deprecated Renamed to {@link asyncScheduler}. Will be removed in v8.\n */\nexport const async = asyncScheduler;\n", "import { AsyncAction } from './AsyncAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\nimport { SchedulerAction } from '../types';\nimport { animationFrameProvider } from './animationFrameProvider';\nimport { TimerHandle } from './timerHandle';\n\nexport class AnimationFrameAction extends AsyncAction {\n constructor(protected scheduler: AnimationFrameScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n protected requestAsyncId(scheduler: AnimationFrameScheduler, id?: TimerHandle, delay: number = 0): TimerHandle {\n // If delay is greater than 0, request as an async action.\n if (delay !== null && delay > 0) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n // Push the action to the end of the scheduler queue.\n scheduler.actions.push(this);\n // If an animation frame has already been requested, don't request another\n // one. If an animation frame hasn't been requested yet, request one. Return\n // the current animation frame request id.\n return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider.requestAnimationFrame(() => scheduler.flush(undefined)));\n }\n\n protected recycleAsyncId(scheduler: AnimationFrameScheduler, id?: TimerHandle, delay: number = 0): TimerHandle | undefined {\n // If delay exists and is greater than 0, or if the delay is null (the\n // action wasn't rescheduled) but was originally scheduled as an async\n // action, then recycle as an async action.\n if (delay != null ? delay > 0 : this.delay > 0) {\n return super.recycleAsyncId(scheduler, id, delay);\n }\n // If the scheduler queue has no remaining actions with the same async id,\n // cancel the requested animation frame and set the scheduled flag to\n // undefined so the next AnimationFrameAction will request its own.\n const { actions } = scheduler;\n if (id != null && actions[actions.length - 1]?.id !== id) {\n animationFrameProvider.cancelAnimationFrame(id as number);\n scheduler._scheduled = undefined;\n }\n // Return undefined so the action knows to request a new async id if it's rescheduled.\n return undefined;\n }\n}\n", "import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\n\nexport class AnimationFrameScheduler extends AsyncScheduler {\n public flush(action?: AsyncAction): void {\n this._active = true;\n // The async id that effects a call to flush is stored in _scheduled.\n // Before executing an action, it's necessary to check the action's async\n // id to determine whether it's supposed to be executed in the current\n // flush.\n // Previous implementations of this method used a count to determine this,\n // but that was unsound, as actions that are unsubscribed - i.e. cancelled -\n // are removed from the actions array and that can shift actions that are\n // scheduled to be executed in a subsequent flush into positions at which\n // they are executed within the current flush.\n const flushId = this._scheduled;\n this._scheduled = undefined;\n\n const { actions } = this;\n let error: any;\n action = action || actions.shift()!;\n\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions[0]) && action.id === flushId && actions.shift());\n\n this._active = false;\n\n if (error) {\n while ((action = actions[0]) && action.id === flushId && actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n", "import { AnimationFrameAction } from './AnimationFrameAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\n\n/**\n *\n * Animation Frame Scheduler\n *\n * Perform task when `window.requestAnimationFrame` would fire\n *\n * When `animationFrame` scheduler is used with delay, it will fall back to {@link asyncScheduler} scheduler\n * behaviour.\n *\n * Without delay, `animationFrame` scheduler can be used to create smooth browser animations.\n * It makes sure scheduled task will happen just before next browser content repaint,\n * thus performing animations as efficiently as possible.\n *\n * ## Example\n * Schedule div height animation\n * ```ts\n * // html:

\n * import { animationFrameScheduler } from 'rxjs';\n *\n * const div = document.querySelector('div');\n *\n * animationFrameScheduler.schedule(function(height) {\n * div.style.height = height + \"px\";\n *\n * this.schedule(height + 1); // `this` references currently executing Action,\n * // which we reschedule with new state\n * }, 0, 0);\n *\n * // You will see a div element growing in height\n * ```\n */\n\nexport const animationFrameScheduler = new AnimationFrameScheduler(AnimationFrameAction);\n\n/**\n * @deprecated Renamed to {@link animationFrameScheduler}. Will be removed in v8.\n */\nexport const animationFrame = animationFrameScheduler;\n", "import { Observable } from '../Observable';\nimport { SchedulerLike } from '../types';\n\n/**\n * A simple Observable that emits no items to the Observer and immediately\n * emits a complete notification.\n *\n * Just emits 'complete', and nothing else.\n *\n * ![](empty.png)\n *\n * A simple Observable that only emits the complete notification. It can be used\n * for composing with other Observables, such as in a {@link mergeMap}.\n *\n * ## Examples\n *\n * Log complete notification\n *\n * ```ts\n * import { EMPTY } from 'rxjs';\n *\n * EMPTY.subscribe({\n * next: () => console.log('Next'),\n * complete: () => console.log('Complete!')\n * });\n *\n * // Outputs\n * // Complete!\n * ```\n *\n * Emit the number 7, then complete\n *\n * ```ts\n * import { EMPTY, startWith } from 'rxjs';\n *\n * const result = EMPTY.pipe(startWith(7));\n * result.subscribe(x => console.log(x));\n *\n * // Outputs\n * // 7\n * ```\n *\n * Map and flatten only odd numbers to the sequence `'a'`, `'b'`, `'c'`\n *\n * ```ts\n * import { interval, mergeMap, of, EMPTY } from 'rxjs';\n *\n * const interval$ = interval(1000);\n * const result = interval$.pipe(\n * mergeMap(x => x % 2 === 1 ? of('a', 'b', 'c') : EMPTY),\n * );\n * result.subscribe(x => console.log(x));\n *\n * // Results in the following to the console:\n * // x is equal to the count on the interval, e.g. (0, 1, 2, 3, ...)\n * // x will occur every 1000ms\n * // if x % 2 is equal to 1, print a, b, c (each on its own)\n * // if x % 2 is not equal to 1, nothing will be output\n * ```\n *\n * @see {@link Observable}\n * @see {@link NEVER}\n * @see {@link of}\n * @see {@link throwError}\n */\nexport const EMPTY = new Observable((subscriber) => subscriber.complete());\n\n/**\n * @param scheduler A {@link SchedulerLike} to use for scheduling\n * the emission of the complete notification.\n * @deprecated Replaced with the {@link EMPTY} constant or {@link scheduled} (e.g. `scheduled([], scheduler)`). Will be removed in v8.\n */\nexport function empty(scheduler?: SchedulerLike) {\n return scheduler ? emptyScheduled(scheduler) : EMPTY;\n}\n\nfunction emptyScheduled(scheduler: SchedulerLike) {\n return new Observable((subscriber) => scheduler.schedule(() => subscriber.complete()));\n}\n", "import { SchedulerLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport function isScheduler(value: any): value is SchedulerLike {\n return value && isFunction(value.schedule);\n}\n", "import { SchedulerLike } from '../types';\nimport { isFunction } from './isFunction';\nimport { isScheduler } from './isScheduler';\n\nfunction last(arr: T[]): T | undefined {\n return arr[arr.length - 1];\n}\n\nexport function popResultSelector(args: any[]): ((...args: unknown[]) => unknown) | undefined {\n return isFunction(last(args)) ? args.pop() : undefined;\n}\n\nexport function popScheduler(args: any[]): SchedulerLike | undefined {\n return isScheduler(last(args)) ? args.pop() : undefined;\n}\n\nexport function popNumber(args: any[], defaultValue: number): number {\n return typeof last(args) === 'number' ? args.pop()! : defaultValue;\n}\n", "export const isArrayLike = ((x: any): x is ArrayLike => x && typeof x.length === 'number' && typeof x !== 'function');", "import { isFunction } from \"./isFunction\";\n\n/**\n * Tests to see if the object is \"thennable\".\n * @param value the object to test\n */\nexport function isPromise(value: any): value is PromiseLike {\n return isFunction(value?.then);\n}\n", "import { InteropObservable } from '../types';\nimport { observable as Symbol_observable } from '../symbol/observable';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being Observable (but not necessary an Rx Observable) */\nexport function isInteropObservable(input: any): input is InteropObservable {\n return isFunction(input[Symbol_observable]);\n}\n", "import { isFunction } from './isFunction';\n\nexport function isAsyncIterable(obj: any): obj is AsyncIterable {\n return Symbol.asyncIterator && isFunction(obj?.[Symbol.asyncIterator]);\n}\n", "/**\n * Creates the TypeError to throw if an invalid object is passed to `from` or `scheduled`.\n * @param input The object that was passed.\n */\nexport function createInvalidObservableTypeError(input: any) {\n // TODO: We should create error codes that can be looked up, so this can be less verbose.\n return new TypeError(\n `You provided ${\n input !== null && typeof input === 'object' ? 'an invalid object' : `'${input}'`\n } where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`\n );\n}\n", "export function getSymbolIterator(): symbol {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator' as any;\n }\n\n return Symbol.iterator;\n}\n\nexport const iterator = getSymbolIterator();\n", "import { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being an Iterable */\nexport function isIterable(input: any): input is Iterable {\n return isFunction(input?.[Symbol_iterator]);\n}\n", "import { ReadableStreamLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport async function* readableStreamLikeToAsyncGenerator(readableStream: ReadableStreamLike): AsyncGenerator {\n const reader = readableStream.getReader();\n try {\n while (true) {\n const { value, done } = await reader.read();\n if (done) {\n return;\n }\n yield value!;\n }\n } finally {\n reader.releaseLock();\n }\n}\n\nexport function isReadableStreamLike(obj: any): obj is ReadableStreamLike {\n // We don't want to use instanceof checks because they would return\n // false for instances from another Realm, like an

-IV(bs zu0V{lZ8gRf`L~lQ@-m+idlca?Y$`m48c?p`-ensbrYCb*wo=I;SOlK_kPei>C)Qf< z0bvi7NNM{qY~`QuLB*C+$-xV_noDsSj=K?D!p0tw@iaOBjs@q~pA#U_K6EK4VBv9j zQ&nKh2not!qJZ^mkD{r05gtBK6=R2TqTUCAVw^uG&(iYh%a0Y*mZSF+1LJkYQkI&- z%Bb~F3$aABVaIWeX7Y$sdDxc>L@+XJ1=tf#t)Ch>Vj=}|vD4`Ha$~q&DBZC3X@bzF zi7pl6@leZEQN(>D;v3Ydu?zq?jD)$%-hRXIYmGiQbp9lCanc?g>3w}YM= zfkk>I`&N;)cA$l^Sv<-DMx2JJ7$&ct9=r10Dm03g)0I?iDZz!&P_tt{+d^ktwud|l zRp&an1yP~+Qc;!kt0n-!6qhg;jIAY?p~yrAy)*FfsMZ9MPkS+B!U^y#K-ODvFckk4O=1Fx+U`;iBmzFOmt}@0zF0c=`tV;aBF8OCzy^LNJr*Vmn zE2tX+UYf2Xfdt+b6w+v?urwo=_F0GX*W^>dYnztG3&tykb6VkHjiiJ11r2c8gaOBx zesk^L`$wFS%r_Zr&ylP}`fxvK4KfPK&;nOO=*uvIxk>y{Mk&bva|F=tryc;2MW&>N zqS(;%9sp=4kOo1uVDS4#84tFvK9RyWK53nPO>s>ekty8y_BFxwQTVh$QN1 zUoC$}RK;e4AQ&kI8F3G3f{j4)=fdG!BemS{)N*} z3jE=XFW)q+C-Di11vm%Sst&_``WC#n&^zUx`VUsHfDw-BQ0oS~f6fpMh~4Ge6$vHs z-Y^7Q=u&Cs6ZU^VjxWS;?gNv|{v$Ds%Cic=5#h2WKAwhMWiExd5ia(l&dxbdlm5s1 zP%DQMqhOGLM+0?({(!AJDrg~Uu`Bt=H80>CVmZ%e{X{h_*zat*!o&CMeSu0Q#Xrst z#v3>)FAwpyrj`uejU|UnP^2z@{Y&NG`}F|9(Wo`Cq4 z&kogMa;|?!8WmS#6d?G1#+LhX8!jxTd<0)3-{b>Jc`u1kIS zc@^462#OX1Isiw9lDH>)Ce1HRpGrounc75gv~{HM<0BrJTenda zGduI#uD;}XIS=^aiOC-@%v?{-Wj#dGAo@YK>G_`VXPR=m@{2DDA%w7-X)cuTd6(S#&F20CBex1@iULZMu>n z!h#4-z1?-<+o)=~e;+Xhr^2YEw$6st0lX1`V?2Z`B&RX z(0EU1{++2HIG!wn24qTWC6BFm6ZGn1Wl8?RK!8EjTVk#g4MeunhXJ@s`($`S;BpQO zBMjPzGAv^F&vjz}a15ijuS6x)ur;yTfHB!#Nrz5c2!Mvj$c7*Oh(=|4HlBgC<5?s5 zu^k#6ZN!qx7vKhJxpICt@A{Jl{+%;M;MYnGpn;-Nj)%=taUdXKFFN}q<>c2I(DyU3T_^k zjsH9xUht<9!*BDL7IaO)C!D-BKGQJObIO}Ze!d=(NnOOh?>F!Z0`DXZ%|rcnd5vX9 z5#4z{kF-R=XD+`rM(Iibqe4(*XboKo%iMegb3sbYq^Jk8TPyGf1A!q!k!v_K^v z%u}lajxW&T9V))lFCC6Z8!74!6YbZA(A@pC1@?x)@2}$0zLm2LA|>e*k2w98{7Q=< zjaBCVluxS5);)m@w1x!JU=Kt9rG9S47nB+=--r-;3vRZDG%oPQ6e4e-{CjG^KLrp} z%?&jk@wVS;ga;OuSlV_Q@Y&v%&Qc4DJ)yQZjmMj2Bqe-WU;YbAlAL^;R2Sa~{01x( zkNs}uHLO7IkSy|n<@>Ji8(KR{)y?StIifpugi%1y^Z8=}IQWsVH8@~H@Z??aC-Ydi zoMw3Tj@Sg|q2$QE7VR~VNX=m#j|mLB1wXj{J)H0r09BJ*3#%;xUmbLw#WveL5?q=M z&9O&J)!+2}#6b)nJOqAJxVoMMl7k0ofDNM*1KYx??R36~EqMCFe|` zb2DEDYPrJ90VAUocY?bq;=iZhzP0%#sxqVDLF7L5`@C~}_Qeu@mW)alfn>PxVUMIj zM%eR9h4F8tJI&rE5ezw`K8YFZ#APPEFEKRnh?LzAE6P0P7q0Hu=P#BPn;i}p1u#pu z*4yb&oezaLwg$d)r15Pzj8NmXeaJ3V!rtjZxX03;taEiN%X6!T{QJT1gQznnbGD6< zJPQfei%`EhuPQ@z$FZzpCdsmUN#WN{mIY?1B zVE8SPKrprwmaGJSQsPMe*hEWQ)WNC{1d1-x%1d9=Ppr0~Z2X^(dZ6*0^mmJq*i~P9 z;Tiie>tLNtq$U`_mXfcjg@q2j`n|bJKHWL7eUKyN z#4*WboF{0NXYzB9Og+|74L`m{EvxESRIcA8=XBFqhuJyz8_Rz63*RvUmF|fvJI)MK>e@j|6`=SE&o^gT8_wv9~_D9*>1LB~PgV1be}4IxVj@0Tp_NR0D>QuwU!t=yLA#kJc08bE zd4BUt9yseH5g5D4_z01^Q=X8P7}Gq}8RdtME_C5&HyAYCNsFGdvjW zKA$MLab$D+wf$r0F?8gI;$T{98GTUU@apFw@K`zBO{E8B=1$LoMsM*?+%vRNnDE;! z6rxV9daeCJm?g_$x)B{lWWG7L{+Qt`X2;01@$p)f_Z7OK!h!XUWp9w?}(9CJlF}~I=C7A zbX@YpKBJwqOksWL!pIx9FW=#86KOoOw18$-uXcCZeq!WEo;N`aeXnbDvfhzY?cF8W zeHUP=Y4}rTlr7%z=OTHOlXd)SB21>;rrMzG!8yw!QdIp73I&-|q1Y#+$9ZXd#Q%on zSdM3+d@N?}5uh(Vy|+~65U6hnPe^T=$qBeE9&ljENBJ`F_~97~k?gOrkr5si-5)NP z)x?(-il763B>TvTe9F~fE|;>{n|BD;H)giADLbn!et{i4CgC`Jh5F$0*xud#!_tz- z$kh8Ye++l%>qIZ8E$6Ru$BN1el_-pg8jc~F&bE_?kJc7e)7OS&PHQ8l`5e}cT+{<1 z>A9Cy&M~dkhYWi!n{)Ocm;_z~>Qt|T?q9TCF&XU=1`a(QKYlfBEmhU~>e9j9hrB~Y zSp>go#rEGXL5&do8`&zU3)KneJ=1!Kd+vsVUugB#=7r*fpfWNID0PA`$~44 z3LGS=9)TTA4RyJ@A^F~l*GWq@_sT?w_ubn+ttY?AL!EwgZ{Ur4aFf6O zt%?{-XJ!a#Sj~Ddp9+*9FKk1kYaC}6^k^$9;(e#RHi>|iC{!7XU;EMZJ?q!*h&zw1 z_|6~Zn&Th@BNnwP-e0ioPQ<8eM4b>4K^yFS{@KEjZt23y^2FZ@Q*#T&zhHiDF*H~O7Ib!mr0JCvY0f1PusU;r zEFxxCIn2s7Zk~7++k0%C&blCpKq&|N)sNn<#Tm~a5Z4%PuI)?6vjtD{Irqb}ss5j% zGr7rbMrb3$JvuW9K0;YQ-C>H`@;3NEQKUkB3;lDpbU}=i!l%RKIP;52Q6>i2ypeZ% z4pY2bDldCa=0-|NuDkc4!VhvC)w)IuQ8w*dGgHW`0tb%!InLVM*{nNK$63Kga65a> zl%4fAPjqAJjVWR?uPhUGMec(Be%%?k=f3;!!Q>qSqfev^U3?}LHcP?XdekRL$|EMNjZl#ys>|lTtj3OSb80I zDBN1W7IIE^%{??{Lb~H^DMX!tyaA<}a%Z3e7yQ&D8C;{z+O^1(ZV10|_l@=3-S8Da zmJg4Mxjc~SQ8S|I$E!%pN`W`~n@DHIYYVAM)LDN^5jg$xVO&x^-Y@uCr>pb*=I-oq zTqm}eO$X+_Z@ek`u zyE9B$RLWF~89~cl0CaDZt<F8)NptgknB9u2?9^9j3M<+8=I>f{P9c*|9SM7=>p zeHp|EQc24#k#f8r$-D7u4j$CQo~YQKFD(TJ^ZFjY;Pf|K_E97Uog<5R3fw(0GRZ{ideOr0Fp<*srzASZ!up4v94yGzF*sdezN=;cbtvq5 zKunYmePn86o-ic(GuWh=SL`#b1wL|2wbIY%dwr=keMf7zHif||$8YrS-!uy|kSxxc z2?Wks&#anbZC%#B9UD2LDTnBIIZ^T4T$;-wZJao`9_4!v2;mQQ)jX3aKU6TR-fx>- zBKu);@@^f-H%(ZTbROHFfE~_dV|=pZ$!d?e-N^f6KK-KCz^~Pe)>i6z=N4}>8yN2e zEBD#5|h|b2iUag~(U=KKAk6cbk^JZ`rHZ{;-40nk8fedfT8VA@qJ-FnAD-oP>A9 zqD}!@(d${C3BCdnD}nCuF;6w3?9#`Na*}NQe3~o7H|#&E3imbI-wv9UmmQ*0cTHq2 zAbhE3Pp0T{vGh&KP*)v~*XO$Le2den9D3Zk&Tj2Z%g$#gTnp2PPv^3Dg43#lY!?mg z3ypos7`f(E3R)k7boNsfKhh9_M`gox0pLlZkM11DpO*PlUOI0%TBKPtHz(B^>Zbc? zYT%V8Nl3D8lzsAwgtzMgM|C~*uP6xgNb#INjEwp$sW_2oSh-|RlMA;LUpaHKpqJFY zkvtmSh^NSK_luTH3wnWa{qnM+gjqQ)&FXR->f7|Y8EvfRzL=l$!51hBi_JuiPt*}+ z#*(g0Pe$qPB*kg5+6A?HF(*$c)GgCKbvAFTx^u>y!ehvo?{Eb8tzE(~O8a{EbHIBo zSS!>Wbxg*d3OG6m&s_gS0r#LoxAz>pz6~MB!P2hUxx5qJ{PQSRtEpb-rh9=oa?j=TpKg;HDrKRCeuHwS zz)kip(^rH#a2YqA7~a|cDc@qevpl+b{1;AXCd#b3E{IL!ff* zr~!JS2KPGTqwu)hHf!KH*Q0xF)JKOXOX6nI-ws#HgL7AIC^YCEVa*U-#{!(czs_=A z&LC?k)d-cIRbSpUo0D^JLnTGKFg;a)LS7cU^h^m2);03o=-(i|16RLi?QXAs^Q2kE zlhi+Vns&Ep2n_Hq>qDI?%vyDxCc&DKcG~^qSNA{$MFjoxPnp=9UJ#|@S8GYS*KIF@ zQv25Ya)A?#KR>Ymqi89ZQ4FHnRcK#;HMS;xeNe)(X358Qe*Qyjot~dpabYl5ZhaYx z9%>d5SFr=Fde4b2QVBfWSiN|*F(so`+?s;yG3;z9^>$H@$3MnF>u-eqt}`0BhSbwz z0T;b~%tCj)WLVi;b0erFpnqs~_d(8N$z8wW%rmDg2SWv<8pIlOquw;sTWExpy&Zf} zFs5h&R}qaL@+rVPi3^emq_xACidQ${_SaRx^*FdrKa#F%ym3$**R@Q*8V)QwmpbwA ze{f>2cv5!s^UuRsl0X49(4X*zpxGTEQnkHNj;tei!-{c#4e6DhJT7fZGx!3o^GEiW zMSR6p&4ER6O@0-@>(9om13q)rA!>@4-4@3~CE}&mJ26dIeLLCKdqL?NI@qrV<)j&n z0xPuovx*6fE+!=C_2BG`gdy#jEG_Pi_X{P?#&b`NAa7@#J*W`}!@VcJORm;_`&$Qe z27mK({)?2r`JB4Ed}@f*B0}&Zb>l%w+&0HmWS%!gfBlY%a(9SJgwa@qzDEGm7?yC} zgZL*pH2sR`=YRlaM~h zCg{(f;9C#3!8WTWJla{^>E7TYWlbwS=o)`8_@1_5ow6#Atc4#QL+s_GC*VEZ{d^(D z2bPu_;J1RoieH?51Zw$bSpT!M-l42|?hbu|XQ^XL&AwXiPQUWNSY|{9xBPTeD)l(F zziQu8qM+UN$TI8vQb@bp9*g&6lniIT@;%vnSB2TO8qU}J0HHv)IcwSEh7@Y|%>^0c zhPG($cIOW7AwEg>lBJ}(1k^yUPPfNgfRwVEOQjlp&f^>5G;3k>1|u>jhW7wx)g`&D zMjph>s664Gyd9_u7P;y?@E;-&@dENaa|r5}0;edtGxMbvEj;vn9d$KFem!eE0ZXwSGKMfcf0g z^0NlD{_#S)83xAmuv?O7Zjf&~+K0>}hOU{pkB?jSFvd1C(rR5WZ`C%jQm6fy282K4 z^iNumcnOr5Y^GY+*Nsi1+-VprD+tyQ-s4s^^4XrD70;1V%zKnRrpf)C1Gpb2xGxF_@?z91^u9TOZ9{Bf8d}m22c{{mua~f3#Lmd;ep+d9|oD!#2FAU{pN3^Pd*dD z0q5V>&=vnM1t3=6mm5Pm+rFbfW66Y_qcBcq*U!;k0#E05R+wk_(WaTTFR?#T%V5_? zElOS~xw%6OV0WbW(wVWY0jO5!HoyZ!6AsGAnXsJ4DpJtrb#Xr{H zs=@t#ssW^PvyX3neqA5yh_zo;N0tjW7f1W6p9sLuy%J__Y!Jh()ta54%dyKv=9H~- zYjsB%^-t=V0`P<~uQj7#8e}dXiaWi4R>I}WC2ZFC!|lO0bM=3y{Z___`$yu5!tPww z&4vpPBhq;y7Wa}ONwrT1N8S72sO`<9`U;ErnGEW_LX?w_YFicG342H|29s&nvPp^>=;R62as!&*sTc|zwF2NRz{p0?8wrHhHY;KPH*`n+n9aQ zi=@>>yt$8?&hC076m!U1qDlh*FmBwuhc_sP+u~!)#Q<;u?^|Pc5Refm&RbEhaYCxD zymTvxXDGmx58%a8U^Z;+IY!xONaAX1F`>aMl72s0Jw0C*L<##+V~)Ii`Aja1Dc?m@ zej8U>g{_4Nyp+y!Tq%+&Nht*Y4L)}@y+koJ;vVtd@PxN-W3{5}%bMvPubWzw?Kw@e zFB~egTs)NJ-H9At`DcXD8X@NLg51vsm-i38_x?&-YjU)dr{=xpY}SbwSgMOn?2pE8 zOj7P3X#(zP=MmV~YK#Bhfca9y_M-i4F-qwwdFy#m-Uhihl8Tc6r=4@ZG3s z1iKYrzj6u4_LzJ_TaozfnvdmO*6F>Lh#T(y=^AXnV^4xIbb6qy(1b1E z_(4zG2ew&^2RR`LAkuBr;a8&825_M$nN=%jrREwW<-Vl|GdFSoxd=vkwm9LH3`GPM_OyaAh#ijk}M~z>(=U;hhb3+7zga2{!JPMc1zbfORqVT)g z_j@4f)jbqM7ncPHju(onpDep1;j@V~tfCoSRhsSxJQ|%!D`t38mlAW!Ny_Gd`b)5N zEkSE}WX&<%ta#!I{;Z`Bv9>f~+gSEus3i?JtqKvw;ca=ExdTW?^IB{5mh0-bTE)~N z13fGjK3+jg;*&!?HMFgni%c%097{(Eu8*!|qs9=gsUrIO7hzuY6e<7RE$@g3DF z#~WtZ(491ehgET7vTCqqLxXQoh?VF%?Y3QpHY)jSVd<``CkR^Ae7`$z3}E zI-WZc7xTJaa&u)s!oXb@H8Y#Sw~PhTNiIiH1S-8G}QpuQY0Pj2&4HMP5_wXkD$UnN|;$U)H<&VdCT znkC^=@J%f_#0Vr|j!zkU^%?8sH3W@W^4~nB0eal8UrV@#{h%r;AG(D~tCiDc*Jo@x zJ9|*YT%$hQ%(PdlyzqJJQ6G;6Owph;N?8BWvZ__``EMK%_?Zt?Ve(~e^f@!caDn`C z?t!t2Dir!^AgMI2JYf3Fu@fU1;F=6(jol37a9U3I(h?TwW69#XJ@Y_X>@s?LG=#ZY z3%A8k4(Ns11w()#;TA(88EGZ`(lL7B#7|mS2C;7e*uO%RK0P*fn|Lutkw%gmWyq+7 z+v`0fe|E3z5Pf(K#$b=3r+At#a78IC)cv9{ozqh$E2%d@@5> z!zU(}l3p(?%K2&b_JVe${JEeJ>y9ZD_NWy3*K|N8M7*weZ~~V54(F+Vd4=yZc#b4r z<(bKHYN%s*Wh?kwbC2n%W2s5%fwy&ZY9xNGy=P8t3$(nCpS{C?NI#=tuEH`^!9yRh z|0AiF+`qBeSuY9Cntz3#AuFmn^Jb|cG^1pA9oAHlu(9<{1K^qQfo|Rvn*UnZE z%Jbxpm8$cM#Phj80J}gskp2BIqt=Ahl|)bhFm%{diZ70pj!1%sZ-ljj3ONd8X(Lp= zIL~*!dYb{v46^fd2KF_flDw-bm#UQJR=hhk?)00Jq2osASbj!26l^RD;pwW0s zso5m873SE%kc?Cj+dD!fa%v)JaUGlspve_LwGI8W^VDF3QG4~YR3Zh7;!roqFSS$w zL70@`oc1HZB+YAqxfZOgmg(4~&Le6e=&G@E7wAXWSPWpVnnP+s&0c7Z-Dgvv=%zQ zA@J-58_12d5yG5P7-U{T?5QA$DL#jio7dA$Fb%x_)KpORqM?0oVkag+#4~UA}q|v zs%`|Opg;|?Ay@*Gbdq8z-;@ZbLy^D)O~6vfzc|NdL=^7gjN|ZDPC^`jzu$EmKHc;q z&X&jy=0(dQsiOAM*PX(gm>y(wLJ=j69d}8_gyoJ?hLIF@&EP)TeAx}7AsEpj28RN+ z6nEvIhS{po2{5JLRsbGGCXE)I3X(#KdzDDJ-C{{fZn{*@Nr;z6n_}I1G!jtjx>!IO zgUV8`^Y4tp^=}yj>$JzFH3udJ@ZV3*6E*+-;lF?S?`r%T2>*?U|LzJ}ApAED{<{YM z|Bi!k;xOlxasA@Bx3=$iQJ)ivd{oLGV6@*kTs=v9@Fy>>N52eOt_Q+~;z?flz$bY> z9?Ch;8iIGK=~rxQK1D8{sEywF1lYN@5Y7f4JBA1!hngSXF)YnINATR+Vz1{m?mC-3_$wXK~QIU$O`~Mkg_lKph27b zCa&y_?MGfz3Xt$%ez$ZfOBY7v7=Q97RwBN%7_U3z=WJwOLIDuTCrTlo))}|orStnt zJ_lmX;nWrM%dX{EFn|kdAi&5#{?%nt`!+R295aG$UT{rxi+Z}01^Y(+s%}kVHV697 zFD!o~)aKlv$CfdwGJzp9^L4(%Rfc=#TXKF05H@p8)7|ZOvg`f@NNoH!yhEDw=X_$m za(sz=Vq^hVRRi;++oqXb6L&biwd9JeUD3As$$(vLNVTz8*FU=2i4jT2cVFm7?7w?4 z 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 TVvR5I!OovCJ6&dQIp%)=q(#9_ literal 0 HcmV?d00001 diff --git a/assets/images/social/10-events-and-listeners.png b/assets/images/social/10-events-and-listeners.png new file mode 100644 index 0000000000000000000000000000000000000000..9d0f56590af5c441fd7b5a8c6395644b88d0ff7d GIT binary patch literal 43743 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%0Aaz$^I7 zg|1Mo1*3)S09B1EIb;~W&!fY#34l{-to5IdCXyNHfIG-$`r{6=)qp$D4!SUh@^-gp z?cMDfvxtD}9sM`h0qU@h+0=c*2#$De`X=be0P^TcM9Xc8q;1`n&{l6EDE+|L`B%q% zXA_H8;(201E6L`rxM-ch0Eyt0YdLEx>a@Dr(15RT>nRz46goL2asIEkM4JcCQuKe|5~Bk-$gDzA zzTr>HW{FiL0G>a?Mk9(L$%fnweaQu)aE5S$n0ql49&%A%M$w;OUPg8UIp3z+U@*~~ zlLEcOwE;G8rI5~a7o6|c2LMiuKr*|$jmL0Iu&356JhX^FSp_)O4olyZ9l5)Jdj0ZN zd1v}bP|G*a#si((KF~D-U;u#n!5_Sk0&R`@5J@O*5W$3*0ENLpKT9t5Hy~J_b9_rw z9~etqj_V&|@%t}5FVLI+S6t(N?;HLjr}F>0(fI%L2iNW{C*%ez^0VldjvJ3S;9(5# zpLxq)T`aXi0&9v{+d{r+y?>1rE&1#9>(`NH55=Au$Z~8Y4n&(=uzkJJnbT zpAO4alQ�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 literal 0 HcmV?d00001 diff --git a/assets/images/social/11-middleware.png b/assets/images/social/11-middleware.png new file mode 100644 index 0000000000000000000000000000000000000000..aa4fc065095ea672a38092d8302dae1fe03914dc GIT binary patch literal 46977 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