diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index 1492202..0000000 --- a/.editorconfig +++ /dev/null @@ -1,16 +0,0 @@ -root = true - -[*] -charset = utf-8 -end_of_line = lf -insert_final_newline = true -indent_style = space -indent_size = 4 -trim_trailing_whitespace = true - -[*.md] -trim_trailing_whitespace = false - -[*.yml] -indent_style = space -indent_size = 2 diff --git a/.env.example b/.env.example deleted file mode 100644 index 9535f93..0000000 --- a/.env.example +++ /dev/null @@ -1,4 +0,0 @@ -# SITE_URL=https://example.org - -# If you want to use Torchlight.dev, enter your API token here to automatically enable it -TORCHLIGHT_TOKEN=torch_ diff --git a/.gitattributes b/.gitattributes deleted file mode 100644 index 2045778..0000000 --- a/.gitattributes +++ /dev/null @@ -1,7 +0,0 @@ -* text=auto -/.github export-ignore -.styleci.yml export-ignore -.scrutinizer.yml export-ignore -BACKERS.md export-ignore -CONTRIBUTING.md export-ignore -CHANGELOG.md export-ignore diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml deleted file mode 100644 index 54e0ad0..0000000 --- a/.github/workflows/codeql-analysis.yml +++ /dev/null @@ -1,70 +0,0 @@ -# For most projects, this workflow file will not need changing; you simply need -# to commit it to your repository. -# -# You may wish to alter this file to override the set of languages analyzed, -# or to provide custom queries or build logic. -# -# ******** NOTE ******** -# We have attempted to detect the languages in your repository. Please check -# the `language` matrix defined below to confirm you have the correct set of -# supported CodeQL languages. -# -name: "CodeQL" - -on: - push: - branches: [ master ] - pull_request: - # The branches below must be a subset of the branches above - branches: [ master ] - schedule: - - cron: '20 2 * * 1' - -jobs: - analyze: - name: Analyze - runs-on: ubuntu-latest - permissions: - actions: read - contents: read - security-events: write - - strategy: - fail-fast: false - matrix: - language: [ 'javascript' ] - # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ] - # Learn more about CodeQL language support at https://git.io/codeql-language-support - - steps: - - name: Checkout repository - uses: actions/checkout@v2 - - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v1 - with: - languages: ${{ matrix.language }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. - # queries: ./path/to/local/query, your-org/your-repo/queries@main - - # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). - # If this step fails, then you should remove it and run the build manually (see below) - - name: Autobuild - uses: github/codeql-action/autobuild@v1 - - # â„šī¸ Command-line programs to run using the OS shell. - # 📚 https://git.io/JvXDl - - # âœī¸ If the Autobuild fails above, remove it and uncomment the following three lines - # and modify them (or add more) to build your code if your project - # uses a compiled language - - #- run: | - # make bootstrap - # make release - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v1 diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml deleted file mode 100644 index cbec2f9..0000000 --- a/.github/workflows/main.yml +++ /dev/null @@ -1,33 +0,0 @@ -# This is a basic workflow to help you get started with Actions - -name: Build - -# Controls when the workflow will run -on: - # Triggers the workflow on push or pull request events but only for the master branch - push: - branches: [ master ] - pull_request: - branches: [ master ] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# A workflow run is made up of one or more jobs that can run sequentially or in parallel -jobs: - # This workflow contains a single job called "build" - build: - # The type of runner that the job will run on - runs-on: ubuntu-latest - - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - - # Runs a single command using the runners shell - - name: Deploy - uses: peaceiris/actions-gh-pages@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./_site diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml deleted file mode 100644 index 39731bf..0000000 --- a/.github/workflows/tests.yml +++ /dev/null @@ -1,21 +0,0 @@ -name: Tests - -on: - push: - branches: [ master ] - pull_request: - branches: [ master ] - -jobs: - laravel-tests: - runs-on: ubuntu-latest - - steps: - - uses: shivammathur/setup-php@15c43e89cdef867065b0213be354c2841860869e - with: - php-version: '8.0' - - uses: actions/checkout@v2 - - name: Install Dependencies - run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist - - name: Execute tests (Unit and Feature tests) via PHPUnit/Pest - run: php hyde test diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 6fee624..0000000 --- a/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -/vendor -/node_modules -/builds -/.idea -/.vscode -/.vagrant -.phpunit.result.cache -.env diff --git a/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index 2df8ff2..0000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,6 +0,0 @@ -# Changelog - -All notable changes to `Hyde` will be documented in this file. - -Once the package is tested to ensure it is stable enough for production semantic versioning (SemVer) will be used. -Until then there may be breaking changes on the Master branch. diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 9bf19ef..0000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2022 hydephp - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/LICENSE.md b/LICENSE.md deleted file mode 100644 index 761daf5..0000000 --- a/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2022 Caen De Silva - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/README.md b/README.md deleted file mode 100644 index ff0e127..0000000 --- a/README.md +++ /dev/null @@ -1,28 +0,0 @@ -# Hyde Documentation - -The Documentation Source for HydePHP Docs - Built with HydePHP of course! - -View the docs at https://hydephp.github.io/docs/ and check out the HydePHP project at https://github.com/hydephp/hyde! - -## Contributing - -The documentation Markdown pages are in the _docs/ directory. PRs are encouraged! - -## Usage - -While the main purpose of this repo is to generate the static HTML Documentation pages you can also clone it to quickstart development of your own documentation site! - -## Credits - -- [Caen De Silva](https://github.com/caendesilva) -- [All Contributors](../../contributors) - -## License - -The MIT License (MIT). Please see [License File](LICENSE.md) for more information. - -## Attributions -> Please see the respective authors' repositories for their license files - -- The Hyde core is built with [Laravel Zero](https://laravel-zero.com/) which is based on [Laravel](https://laravel.com/) -- The frontend is built with [TailwindCSS](https://tailwindcss.com/). diff --git a/SECURITY.md b/SECURITY.md deleted file mode 100644 index fe6687e..0000000 --- a/SECURITY.md +++ /dev/null @@ -1,23 +0,0 @@ -# Security Policy - -## Supported Versions - -| Version | Supported | Notes | -| ------- | ------------------ | ---- | -| 0.1.0-Pre | :warning: | Pre-release | -| 0.1.0 | :x: | Alpha-release | - -:warning: Pre-releases are not suited for production. - - - - -## Reporting a Vulnerability - -If you discover a security vulnerability within this package, please send an e-mail to the creator, Caen De Silva, via caen@desilva.se. - -All security vulnerabilities will be promptly addressed. diff --git a/_data/authors.yml b/_data/authors.yml deleted file mode 100644 index 4ec0f62..0000000 --- a/_data/authors.yml +++ /dev/null @@ -1,10 +0,0 @@ -# In this file you can declare custom authors. - -# In the default example, `mr_hyde` is the username. -# When setting the author to mr_hyde in a blog post, -# the data in the array will automatically be added. - -authors: - mr_hyde: - name: Mr Hyde - website: https://github.com/hydephp/hyde \ No newline at end of file diff --git a/_media/Screenshot 2022-03-25 222236-min.png b/_media/Screenshot 2022-03-25 222236-min.png deleted file mode 100644 index dbb3f90..0000000 Binary files a/_media/Screenshot 2022-03-25 222236-min.png and /dev/null differ diff --git a/_media/delta-compiled-vector.svg b/_media/delta-compiled-vector.svg deleted file mode 100644 index c94acd6..0000000 --- a/_media/delta-compiled-vector.svg +++ /dev/null @@ -1,168 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - hello-world.md - - - - - - --- - - title - : - Hello - World! - - - description - : - Short - post - excerpt - for - previews - and - meta - tags - - - category - : - demo - - - author - : - mr_hyde - - - date - : - 2022-03-29 - 09:16 - - --- - - ## - Write - something - awesome. - - - Lorem - markdownum - Austri - occupat - redire - sum - sponte - arcus, - - - [ - ferae - ]( - https://.aetheraet.net/lacrimissortita.html - ) - longo, - - - timuit - magnanimus - aera, - violentam. - Tractu - ter. - - - 1. - Pelopeia - et - terras - iussa - cavernas - - - 2. - Petit - ignoscite - ac - nuda - miserum - Tereus - - - 3. - Tuli - facinus - Panaque - virgo - sentire - copia - - - - - - - - - - - - - - - diff --git a/_media/mockup-blogpostexample-min.png b/_media/mockup-blogpostexample-min.png deleted file mode 100644 index 0f08c96..0000000 Binary files a/_media/mockup-blogpostexample-min.png and /dev/null differ diff --git a/_media/screely-1648242017926-min.png b/_media/screely-1648242017926-min.png deleted file mode 100644 index a012a61..0000000 Binary files a/_media/screely-1648242017926-min.png and /dev/null differ diff --git a/_media/screely-1648242979072-min.png b/_media/screely-1648242979072-min.png deleted file mode 100644 index e3f355f..0000000 Binary files a/_media/screely-1648242979072-min.png and /dev/null differ diff --git a/_media/screely-1648247108115-min.png b/_media/screely-1648247108115-min.png deleted file mode 100644 index 7515869..0000000 Binary files a/_media/screely-1648247108115-min.png and /dev/null differ diff --git a/_media/screely-1648303538589-min.png b/_media/screely-1648303538589-min.png deleted file mode 100644 index 22b62c0..0000000 Binary files a/_media/screely-1648303538589-min.png and /dev/null differ diff --git a/_media/screely-1648307127051-min.png b/_media/screely-1648307127051-min.png deleted file mode 100644 index 001e6ce..0000000 Binary files a/_media/screely-1648307127051-min.png and /dev/null differ diff --git a/_posts/creating-a-new-hyde-site-from-scratch.md b/_posts/creating-a-new-hyde-site-from-scratch.md deleted file mode 100644 index b5cc992..0000000 --- a/_posts/creating-a-new-hyde-site-from-scratch.md +++ /dev/null @@ -1,228 +0,0 @@ ---- -title: Creating a new Hyde site from scratch -description: This blog post will guide you through creating a new Hyde site, while also showcasing some neat features! -category: tutorials -author: Caen -date: 2022-03-25 20:49 ---- - -

-This blog post will guide you through creating a new Hyde site, while also showcasing some neat features! -

- -## Prerequisites -This guide assumes you have Composer and NPM installed. You also need PHP 8 or higher. -Previous command-line experience won't hurt either since we will be using the CLI a lot! I'm using Windows PowerShell here, but you can follow along with Bash as well. - -This guide will mostly be example-driven. If you have any questions, please send me a tweet! I'm [@StressedDev](https://twitter.com/StressedDev) - -## Creating a new project - -Creating a site with Hyde is easy, especially when using Composer! - -```bash -composer create-project hyde/hyde tutorial-demo -``` - -CD into the created directory using `cd tutorial demo` - -Right away you can run the build command - -```bash -php hyde build -``` - -and open the generated HTML page that is stored as `index.html` in the `_site` directory. Let's take a look! - -![Screenshot of welcome page](../media/screely-1648242017926-min.png) - -Amazing! We probably don't want to keep this welcome screen though. Let's create a blog! - -## Setting up the blog homepage - -Hyde comes with a built-in blog module. First, let's change our homepage! - -Hyde comes with a few different options to use as the index.html. The one we have right now, the default, is called 'welcome'. - -We can change our homepage using the Hyde command which will present us with a few options. We'll select the one named 'post feed'. Since we already have a homepage we need to add the --force flag to allow it to be overwritten. This is a safeguard in case you have changed the file yourself. -```bash -php hyde publish:homepage --force -``` - -We will be asked if we want to rebuild the site, let's hit 'yes' and take a look! - -![Screenshot of welcome page](../media/screely-1648242979072-min.png) - -Cool! Though it looks a bit empty. Let's create a post! - -## Creating a blog post -Blog posts are based on Markdown files with metadata (post information) specified in a special YAML called Front Matter. - -We can of course create the file manually but that is so old fashioned. Instead, let's use the interactive command to scaffold it for us! - -The command we are using is the `php hyde make:post` command, which gives asks us for input and then generates the boring stuff for us. - -Here is what the output looks like: -![Screenshot of command output](../media/Screenshot 2022-03-25 222236-min.png) - -Let's take a look at the file that was created for us! As you can see it is stored in the `_posts` directory. A slug was automatically created from the title and the date was automatically parsed from the current time. - -```markdown ---- -title: Hello World! -description: This will show up in the article excerpt and SEO meta tags -category: demo -author: Caen -date: 2022-03-25 21:20 ---- - -## Write something awesome. - -``` - -Let's rebuild the site and take a look! - -As you can see, the excerpt automatically shows up in the feed on the homepage! I also added some extra text in the Markdown section. -![Screenshot of generated homepage and blog post](../media/mockup-blogpostexample-min.png) - -## Creating a custom Markdown page - -Now that we have a nice blog post, why not try our hand at creating an about us page? - -Hyde allows the creation of simple Markdown based pages. Markdown files in the `_pages` directory are automatically compiled into static HTML. - -Let's try it! - -I'll use the command line to create the file. We need to add a block of front matter with the page title. - -```bash -touch _pages/about-us.md -``` - -and add some content - -```markdown ---- -title: About Us ---- - -# This is an example of a Markdown-based static HTML page built with Hyde - -Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod -tempor incididunt ut labore et dolore magna aliqua... -``` - -And rebuild the site: - -![Screenshot of generated Markdown page](../media/screely-1648247108115-min.png) - -If you have a keen eye, you will see that a link to the page has been added to the navigation menu! - -This is all well and good, but it's getting a bit tedious to have to go back to the terminal and rerun the build command all the time. Wouldn't it be nice if Hyde could automatically rebuild the site for us? Oh, it can? Yup, Hyde has a real-time compiler that we have to try out! - -## Auto-building on the fly with the real-time compiler - -The real-time compiler -- let's call it "RC" because A: it's shorter, and B: it sounds cool -- uses a few NPM modules, so first we should install the dependencies. Make sure you have Node and NPM installed! - -```bash -npm install -``` - -Next, we run the command to start the RC: - -```bash -npm run watch -``` - -A window in your default browser should now open up automatically. If not, just navigate to http://localhost:3000/! - -Let's go back to our blog post and change the text. Once you hit save the site will automatically rebuild and the browser window will be updated without you even having to reload! It's a bit hard to illustrate this behaviour in text, so be sure to try it out yourself! - -## Let's create a Blade Page! - -I'm getting a bit bored of the Markdown About Us page we created earlier. Let's swap it out with a page based on a Blade view! - -Creating Blade pages is similar to creating Markdown pages, but instead of saving a Markdown file in the `_posts` directory we create a file ending in .blade.php in the `resources/views/pages` directory. - -Let's create the file using the CLI. -```bash -touch resources/views/pages/about-us.blade.php -``` - -> By the way, this is the same directory where we have the index.blade.php file which is the homepage file. - -Blade files take precedence over Markdown files as they are compiled later in the build process, so if you go to the about-us.html you should see a blank page. - -When writing Blade pages you have a few options since we can utilize the full power Laravel brings us. If you want you can skip using Blade and just write pure HTML (like the welcome page), or you can use Blade templates and components (like the post feed page). I'm going to extend the default layout so Hyde can automatically inject the proper stylesheets etc. Feel free to use the code below to kickstart creating your custom Blade page! - -```blade -@extends('hyde::layouts.app') -@section('content') -@php($title = "My Custom Title") {{-- This is optional, but lets us set the page title --}} - -// Place content here - -@endsection -``` - -I'll be uploading this tutorial repo to GitHub so you can take a look at the Blade page. I'm renaming it to blade.blade.php though. - -## Document the documentation! - -Documentation is important! If a feature is not documented, it does not exist! "But writing documentation is soooo boring" you might say, and to that, I say, "not with Hyde!" - -You heard me! Writing documentation is fun again! Best of all? It is dead simple. - -The Hyde Docgen module is based on Laradocgen and automagically turns Markdown pages into documentation pages. They are what powers the Hyde documentation site! - -Creating documentation pages are a piece of cake. We start by creating a file following the format of kebab-case-version-of-the-title.md in the `_docs` directory. - -```bash -echo "# Hello World!" > _docs/hello-world.md -``` - -We can now take a look at http://localhost:3000/docs/hello-world.html where we should have a nice page waiting for us! - -The sidebar will like magic be populated with all the documentation pages. -The page titles in the sidebar are generated from the filename, and the HTML page title is inferred from the first H1 tag. - -Wanna know another cool thing? If you create a file in the `_docs` directory named index.md or readme.md a link labelled docs linking to it will be added automatically to the main navigation menu! - -And if you create an index.md file here, which is recommended, it will be not be shown as a link in the sidebar but instead, the header in the sidebar will link to it. - -> In the Hyde documentation site I am using the project readme as the index.md file - -## Adding Torchlight Syntax Highlighting - -Our documentation is cool and all that, but I want to add lots of code examples, but they look so boring without syntax highlighting... - -![Screenshot of the documentation page with no syntax highlighting](../media/screely-1648303538589-min.png) - -Hyde has built-in support for one of my favourite packages, Torchlight, which is free for open source and non-commercial projects and requires an attribution link, which Hyde injects automatically on pages that use Torchlight! - -To get started you need an API token from Torchlight which you can get for free on their website: https://torchlight.dev/ - -Once you have the token you need to set it in your dotenv file. If you don't have one you can copy the example file supplied with the project using this command (or by renaming/copying it manually) - -```bash -cp .env.example .env -``` - -Then in the .env file, add your API token like so: -```bash -TORCHLIGHT_TOKEN=torch_abcdefg123 -``` - -Adding the token makes Hyde automatically enable the Torchlight extension. - -Now when we run the build command you will notice it takes a bit longer, especially the first time, but no sweat because we got ourselves some beautiful code blocks! - -![Screenshot of the documentation page with syntax highlighting](../media/screely-1648307127051-min.png) - -## Conclusion - -I think that brings this tutorial to a close. Tweet any questions you have at me on [@StressedDev](https://twitter.com/StressedDev) - -Please share this post if you found it useful, and let me know if you want a part 2 where I dig in deeper and show how to customize your new site! - -I'll be uploading the code created in this tutorial to https://github.com/caendesilva/demo-hyde-tutorial-example-project \ No newline at end of file diff --git a/_posts/creating-a-static-html-post-using-hydephp.md b/_posts/creating-a-static-html-post-using-hydephp.md deleted file mode 100644 index 77302e9..0000000 --- a/_posts/creating-a-static-html-post-using-hydephp.md +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: Creating a static HTML post using HydePHP -description: In this tutorial, we go through the simple process of generating a static blog post -category: tutorials -author: Caen -date: 2022-03-19 16:19 ---- - -> This tutorial assumes you have already setup HydePHP. - -We will be using the make command to scaffold our file. In your favourite terminal, navigate to your project directory and run the command. - -```bash -php hyde make:post -``` - -We should now get the following output: -```bash -Creating a new post! - -Please enter the title of the post, it will be used to generate the slug. - -What is the title of the post?: -> -``` - -Let's fill in the title we want and hit enter. - -Next, we will be asked to fill in some meta information. These are not required and you can just hit return to use the defaults, though they will make the post look nice so we will add them here! - -```bash -What is the title of the post?: - > Creating a static HTML post using HydePHP - -Tip: You can just hit enter to use the defaults. - -Write a short post excerpt/description: - > In this tutorial we go through the simple process of generating a static blog post - -What is your (the authors) name?: - > Caen - -What is the primary category of the post?: - > tutorials -``` - -Next, we will be given a preview of what the post will look like. If something does not look write we can write `no` to abort. But for now, we will hit enter to use the preselected `yes` option. - -```bash -Creating a post with the following details: -Title: Creating a static HTML post using HydePHP -Description: In this tutorial, we go through the simple process of generating a static blog post -Author: Caen -Category: tutorials -Date: 2022-03-19 16:19 -Slug: creating-a-static-html-post-using-hydephp - -Do you wish to continue? (yes/no) [yes]: - > yes - -Post created! File is saved to /dev/HydeDocs/_posts/creating-a-static-html-post-using-hydephp.md -``` - -Awesome! As you can see the current date has automatically been injected using the proper format. A slug has also been generated. - -We can also use the outputted file path to open the Markdown file in our text editor. I'm using VSCode. - -This is the contents of the file. The title has also been filled in for us. -```markdown ---- -title: Creating a static HTML post using HydePHP -description: In this tutorial, we go through the simple process of generating a static blog post -category: tutorials -author: Caen -date: 2022-03-19 16:19 -slug: creating-a-static-html-post-using-hydephp ---- - -# Creating a static HTML post using HydePHP -``` - -Now that we have the file, let's fill in the post with actual content and then we can build the site! - -If this is the first time you are building the site you may need to compile the frontend assets using NPM. If you don't have NPM you can download the files from the latest GitHub release and add them to the `_site` directory. - -```bash -npm install -npm run dev -``` - -And then we build the site with -```bash -php hyde build -``` - -We can now open up the created file with is saved in `_site/posts/creating-a-static-html-post-using-hydephp.html`! diff --git a/_posts/why-static-sites.md b/_posts/why-static-sites.md deleted file mode 100644 index 55b5b9a..0000000 --- a/_posts/why-static-sites.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -title: Why static sites? -description: A quick run-down of the benefits of static websites -category: general -author: Caen -date: 2022-03-19 20:02 ---- - -

-At this point, you may be wondering: "Why use static sites?"
-Here is a rundown of my top reasons to go static. -

- -## Speed, scalability, simplicity - -With a static site, you don't need to worry about setting up databases. This makes the site so much faster as you don't need to wait for a database to process requests. By pre-compiling the sites you also don't need to waste time and processing power on server-side rendering which also speeds up your site. Furthermore, it makes your site incredibly scalable as you don't need to worry about keeping replica databases in sync. - -You can even serve the site from global CDNs on the Edge for amazing speed. - - -## Security, stability, and cost -You don't need to worry about keeping your database secure since there is no database. You can also rest easy knowing your site is stable and that you don't need to maintain a complex backend. You can also rest assured that there won't be any unexpected runtime errors that are hard to find. - -You can also use create a Git powered CMS to collaborate on Markdown posts. - -Static web hosting has become incredibly cheap, to the point where dozens of companies offer free hosting. - -## Conclusion -Are you ready to go static? Why not give HydePHP a spin! That's what this blog uses. It's stupidly simple, endlessly hackable, and in my opinion: totally awesome. - --> Dive in to the source code at [GitHub](https://github.com/hydephp/hyde) --> Check out the [documentation](docs/index.html) (built with Hyde of course) - -You can also create a new project using Composer: -```bash -composer create-project hyde/hyde -``` diff --git a/_site/404.html b/_site/404.html deleted file mode 100644 index ec00684..0000000 --- a/_site/404.html +++ /dev/null @@ -1,516 +0,0 @@ - - - - 404 - Page not found - - - - - - - - - - - - - -
-
-
-
- 404 -
- -
- -

- Sorry, the page you are looking for could not be found. -

- - - - -
-
- -
-
-
- - -
- - diff --git a/_site/gallery.html b/_site/gallery.html deleted file mode 100644 index 9893c8c..0000000 --- a/_site/gallery.html +++ /dev/null @@ -1,755 +0,0 @@ - - - - - - - - - - - - - HydePHP - - - - - - - - - - - - - - - - - - -
-

🚨 Heads up! This page is still under construction! đŸ‘ˇâ€â™‚ī¸

- See the source, and contribute, at GitHub! -
- -
-
-

- Turn Markdown into Blog Posts -

- - Write content. Not code. - -
- Code Snippet:
-
-			---
-			title: Hello World!
-			description: Short post excerpt for previews and meta tags
-			category: demo
-			author: mr_hyde
-			date: 2022-03-29 09:16
-			---
-			
-			## Write something awesome.
-			
-			Lorem markdownum Austri occupat redire sum sponte arcus,
-			[ferae](http://www.aetheraet.net/lacrimissortita.aspx) longo,
-			timuit magnanimus aera, violentam. Tractu ter.
-			
-			1. Pelopeia et terras iussa cavernas
-			2. Petit ignoscite ac nuda miserum Tereus
-			3. Tuli facinus Panaque virgo sentire copia -
-
- -
-

- Create Markdown Driven Pages -

- - With ease. Front Matter included. - - -
- screenshot.png -
-

- View source on GitHub -

-
- -
-

- Beautiful Documentation Pages -

- - All without breaking a sweat. - - -
- screenshot.png -
-

- View source on GitHub -

-
- -
-

- Fully Mobile Friendly, of course. -

- - Enjoy your site in any size of screen. - - -
-
-
-
-
- -
-
- -
-
- -
-
-
-
-
-
- -
-
-

- Clean Semantic HTML -

- - Data Rich, SEO Friendly, and Accessible. - -
-
-
-
-
- - - - - -

- _site/alice-in-wonderland.html -

-
-
-
<article id="post-article" itemscope itemtype="https://schema.org/Article">
    <meta itemprop="identifier" content="alice-in-wonderland" />
    <header role="doc-pageheader">
        <h1 itemprop="headline">
            Alice&#039;s Adventures in Wonderland
        </h1>
        <div id="byline" aria-label="About the post" role="doc-introduction">
            Posted
            <time itemprop="dateCreated datePublished" datetime="1865-11-18 18:52"
                title="1865-11-18 18:52">1865-11-18 18:52</time>
            by author
            <address itemprop="author publisher" itemscope
                itemtype="https://schema.org/Person">
                <span itemprop="name">Lewis Carroll</span>
            </address>
            in the category "novels"
        </div>
    </header>
    <div itemprop="articleBody">
        <h2>CHAPTER I. DOWN THE RABBIT-HOLE.</h2>
        <blockquote>
            <p>
                This piece of work is in the public domain and
                was made available through
                <a href="https://en.wikisource.org/wiki/">Wikisource</a>.
            </p>
        </blockquote>
        <p>
            Alice was beginning to get very tired of sitting by
            her sister on the bank, and of having nothing to do:
            once or twice she had peeped into the book her
            sister was reading, but it had no pictures or
            conversations in it, &quot;and what is the use of a
            book,&quot; thought Alice, &quot;without pictures or
            conversations?&quot;
        </p>
    </div>
</article>
-
-
- - -
- See source code and full HTML on - GitHub -
-
- - -
-
- - - - -
- - - - diff --git a/_site/index.html b/_site/index.html deleted file mode 100644 index 2d402f9..0000000 --- a/_site/index.html +++ /dev/null @@ -1,346 +0,0 @@ - - - - - - - - - - - - - HydePHP - - - - - - - - - - - - - - - - - -
-
-

- HydePHP -

-
- - Static Blog and Documentation-Aware Site - Generator built on top of the Laravel Zero Framework. - -
- -
- -
-
-

- Latest Posts -

-
- -
- - - -
-
- - -
- - - - diff --git a/_site/master/console-commands.html b/_site/master/console-commands.html deleted file mode 100644 index 5a2cc0c..0000000 --- a/_site/master/console-commands.html +++ /dev/null @@ -1,455 +0,0 @@ - - - - - - - - - - - - - HydePHP - Console Commands - - - - - - - - - - - -
- - -
-
-
-

Console Commands

-

- Hyde is based on - Laravel Zero, which is a micro-framework for console - applications. -

-

- As such, when you are not writing Markdown posts, - most of your time with Hyde will be spent using the - CLI. -

-

- To help in developing your site we have also - included a few scripts in the - package.json. -

-

Hyde Commands

-

- The main place you will interact with Hyde is with - the Hyde Console which you access by navigating to - your project directory and running the - php hyde command. If you have ever used - the Artisan Console in Laravel you will feel right - at home, the Hyde CLI is based on Artisan after all! -

-

- Let's take a quick rundown of the most common - commands you will use. -

-

- You can always run the base command - php hyde to show the list of commands: -

-
__ __ __ ___ __ _____
/ // /_ _____/ /__ / _ \/ // / _ \
/ _ / // / _ / -_) ___/ _ / ___/
/_//_/\_, /\_,_/\__/_/ /_//_/_/
/___/
 
v0.1.0-pre
 
USAGE: hyde <command> [options] [arguments]
 
build Build the static site
inspire Display an inspiring quote
 
make:post Scaffold a new Markdown blog post file
-
-

- Tip: You can always add --help to a command to - show detailed usage output -

-
-

The Build Command

-

- Maybe the most important command is the Build - command, which -- you guessed it -- builds your - static site! -

-
1php hyde build
-
-

- If you want to to prettify the output HTML you - can add the --pretty option. This - requires that you have Node and NPM installed as - it uses the Prettier NPM module. -

-
-

The Post Make Command

-

- You can of course create blog posts the old - fashioned way by just creating the files yourself, - but what's the fun in that? -

-

- Using the Make command you will be asked a series of - questions which are then used to scaffold a blog - post file. It automatically takes care of YAML Front - Matter formatting and generates a slug from the - supplied title and even adds the current date. -

-
1php hyde make:post
-
-

- Tip: To overwrite existing files, supply the - --force flag (at your own risk of course) -

-
-

The Publish Command

-

- If you are coming from Laravel, you are probably - familiar with the Artisan vendor:publish command. -

-

- Hyde has a similar command that allows you to - publish various pages. -

-

Publish Configs

-

- To publish the default configuration files (if you - mess something up, or when updating) run the - following command. You may need to supply the - --force option to overwrite existing files. -

-
1php hyde publish:config [--force]
-

Publish a Homepage

-

- Hyde comes with 3 build in homepages. On a fresh - install the page 'welcome' is installed. However, - you can use the publish command to publish another - one. You will probably need to supply the --force - option to overwrite existing files. -

-

The available homepages are:

-
    -
  • - blank: This is a blank Blade page that - simply contains the base layout -
  • -
  • - post feed: This is the view that this - documentation site uses. It contains a listing - of the latest posts and was previously the - default. -
  • -
  • - welcome: This is the current welcome - page. Unlike the other pages, the styles are - defined inline. -
  • -
-

- When publishing any of these pages they will be - saved as index.blade.php in the - resources/views/pages directory which the compiler - will use to create the index.html page. -

-

Publish the Default Views

-

- Since Hyde is based on the Laravel view system the - compiler uses Blade views and components. -

-

- Laravel actually registers two locations for the - Hyde views: your site's resources/views/vendor - directory and the directory source directory in the - Framework package. -

-

- So, when compiling a site, Laravel will first check - if a custom version of the view has been placed in - the resources/views/vendor/hyde directory by the - developer (you). Then, if the view has not been - customized, Laravel will search the Hyde framework - view directory. This makes it easy for you to - customize / override the package's views. -

-

To publish the views, use

-
1php hyde publish:views
-

- you will then be asked to select which views you - want to publish. There are 3 options: -

-
    -
  • - components: These are the reusable - components used by the framework -
  • -
  • - layouts: These are the base layouts - used by the framework -
  • -
  • - 404 page: This is a special view, - containing a beautiful Blade view from - LaravelCollective. When published, it will be compiled into - 404.html. -
  • -
-
-

- Note that when a view is updated in the - framework you will need to republish the views - to get the new changes! You can supply the - --force tag to overwrite any existing files. -

-
-

The Validate Command

-

- Hyde ships with a very useful command that runs a - series of checks to validate your setup and catch - any potential issues. -

-

- The command is php hyde validate and - gives an output similar to this -

-
$ php hyde validate
 
Running validation tests!
 
PASS CheckForPageConflictsTest
✓ check for conflicts between blade and markdown pages
 
PASS CheckThatAnIndexFileExistsTest
✓ check that an index file exists
 
WARN CheckThatDocumentationPagesHaveAnIndexPageTest
! check that documentation pages have an index page
→ Could not find an index.md file in the _docs directory!
 
PASS CheckThatFrontendAssetsExistTest
✓ check that app.css exist
✓ check that tailwind.css exist
 
 
Tests: 1 warnings, 4 passed
Time: 0.31s
 
All done!
-

NPM Commands

-

- The NPM commands are used to compile the frontend - CSS assets and to run the realtime compiler. -

-

- Make sure you have Node and NPM installed to use - these, and if it's the first time running a command, - remember to run npm install first! -

-

Commands for the frontend assets

-
    -
  • - npm run dev - - Compiles the SASS and Tailwind -
  • -
  • - npm run prod - - Compiles the SASS and Tailwind and minifies the - output. -
  • -
-

- Realtime compiler AKA Watching files for changes -

-

- Hyde has a real-time compiler that watches your - files for changes and rebuilds the site on the fly. -

-
-

- Currently, all pages are rebuilt, but in a - future update, only the affected files will be - rebuilt. -

-
-

- The real-time viewer also uses Browsersync which - starts a local web server and automatically - refreshes your pages once they are changed. -

-

To start the preview run

-
1npm run watch
-

- A browser page should automatically be opened. If - not, just navigate to - http://localhost:3000/. -

-

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
- - - -
- - diff --git a/_site/master/customization.html b/_site/master/customization.html deleted file mode 100644 index f64947f..0000000 --- a/_site/master/customization.html +++ /dev/null @@ -1,359 +0,0 @@ - - - - - - - - - - - - - HydePHP - Customizing your Site - - - - - - - - - - - -
- - -
-
-
-

Customizing your Site

-

- Hyde favours - "Convention over Configuration" - and thus comes preconfigured with sensible defaults. - However, Hyde also strives to be modular and - endlessly customizable hackable if you need it. This - page guides you through the endless options - available! -

-

Main Configuration File

-

- The main configuration file is in - config/hyde.php. The - config file - is fully documented so I recommend you take a look - to see all the options. -

-

- In this config file, you can customize the site - name, what modules to enable, and programmatically - customize the navigation menu and documentation - sidebar. -

-

Here are a few examples of the config options.

-

Modules

-

- With a concept directly inspired by - Laravel Jetstream, this setting allows you to toggle various - modules. -

-
'features' => [
Features::blogPosts(),
Features::bladePages(),
Features::markdownPages(),
// Features::documentationPages(),
],
-

Footer

-

- The footer can be customized using Markdown, and - even disabled completely. -

-
'footer' => [
'enabled' => true,
'markdown' => 'Site built with [HydePHP](https://github.com/hydephp/hyde).'
],
-

Navigation Menu & Sidebar

-

- One of my (the author's) favourite features with - Hyde is its automatic navigation menu and - documentation sidebar generator. -

-

How it works:

-

- The sidebar works by creating a list of all the - documentation pages. -

-

- The navigation menu is a bit more sophisticated, it - adds all the top-level Blade and Markdown pages. It - also adds an automatic link to the docs if there is - an index.md or - readme.md in the - _docs directory. -

-

Reordering Items

-

- Sadly, Hyde is not intelligent enough to determine - what order items should be in (blame Dr Jekyll for - this), so you will probably want to set a custom - order. -

-

- Reordering items in the documentation sidebar is as - easy as can be. In the hyde config, there is an - array just for this. When the sidebar is generated - it looks through this config array. If a slug is - found here they will get the priority according to - their position in the list. If a page does not exist - in the list they get the priority 999, which puts - them last. -

-

Let's see an example:

-
// This is the default values in the config. It puts the readme.md first in order.
'documentationPageOrder' => [
'readme', // This is the first entry, so it gets the priority 0
'installation', // This gets priority 1
'getting-started', // And this gets priority 2
// Any other pages not listed will get priority 999
]
-
-

- Navigation menu items will be ordered in the - same way in a coming update, but for now, they - can be reordered by overriding them which you - can learn in the next section. -

-
-

Adding Custom Navigation Menu Links

-
-

- Until the navigation link order is implemented, - you can use this feature to reorder navigation - menu items. -

-
-

- The links are added in the config/hyde.php file, and - the syntax for adding custom links is documented in - the config. Here are some examples: -

-
// External link
[
'title' => 'GitHub',
'destination' => 'https://github.com/hydephp/hyde',
'priority' => 1200,
],
 
// Internal link (Hyde automatically resolves relative paths)
[
'title' => 'Featured Blog Post',
'slug' => 'posts/hello-world',
// The 'priority' is not required.
]
-

Removing Items (Blacklist)

-

- Sometimes, especially if you have a lot of pages, - you may want to prevent links from showing up in the - main navigation menu. To remove items from being - automatically added, simply add the slug to the - blacklist. As you can see, the 404 page - has already been filled in for you. -

-
1'navigationMenuBlacklist' => [
2 '404'
3],
-
-

- Tip: You can publish the included 404 page using - php hyde publish:404! -

-
-

Blade Views

-

- Hyde uses the Laravel templating system called - Blade. Most parts have been extracted into - components to be customized easily. -

-
-

- Before editing Blade views you should - familiarize yourself with how they work in the - official documentation - https://laravel.com/docs/9.x/blade. -

-
-

- To edit the default component you need to publish - them first using the - hyde publish:views command. -

-

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
- - - -
- - diff --git a/_site/master/directory-structure.html b/_site/master/directory-structure.html deleted file mode 100644 index 33bc1e8..0000000 --- a/_site/master/directory-structure.html +++ /dev/null @@ -1,372 +0,0 @@ - - - - - - - - - - - - - HydePHP - Getting Started - - - - - - - - - - - -
- - -
-
-
-

Getting Started

-

- To take full advantage of the framework, it may - first be good to familiarize ourselves with the - directory structure. -

-

Tree Overview

-
├── _docs
├── _drafts
├── _pages
├── _posts
├── _site
├── config
├── resources
│ └── views
│ ├── components
│ ├── layouts
│ ├── pages
├── src
│ └── resources
│ └── sass
-

Directory Explanation

-

- It may be helpful to separate the two types of - directories we have. -

-

- First, we have the content directories, these are - prefixed with an underscore (_). -

-

- Then we have the resource directories, they contain - the HTML (Blade) templates and similar. If you are - just getting started you may not need to dig into - the second category, but they are available for you - to play around with! -

-

Let's take a look!

-

Content Directories

-

_posts

-

- This is where the blog post files are stored. Files - here support YAML front matter. -

-

- You can scaffold posts using the - php hyde make:post command with - automatically creates the front matter based on your - input selections. -

-

- A _posts directory filled with posts may look - similar to this. -

-
_posts
├── hello-world.md
├── my-first-post.md
├── diary-of-a-volunteer.md
├── benefits-of-milkshakes.md
└── a-fifth-longer-post-here.md
-

- Limitations: Currently only - top-level posts are supported. Files should use - kebab-case format and must also end in .md and - contain front matter to be recognized. -

-

_docs

-

- Hyde includes a spiritual successor of - Laradocgen -

-

- All you need to do to create a documentation page is - to place a Markdown file in this directory and run - the build command. The sidebar will automatically be - populated with the page title which is derived from - the first H1 (# Title) tag. -

-

- This documentation page is built with HydeDocs, and - you can take a look at the source code on - https://github.com/hydephp/docs - which also serves this site through GitHub Pages. -

-

- Limitations: Currently only - top-level posts are supported. Soon (hopefully) you - will be able to put files in subdirectories, or - alternatively specify a parent, to create a sidebar - with categories. -

-

- Files should use kebab-case format and must also end - in .md and contain front matter to be recognized. -

-

_pages

-

- You can also place Markdown files here and they will - be compiled into simple top-level pages. -

-

- Perfect for about pages, or terms of service policy - pages! -

-

- Limitations: Only top-level pages - are supported. Files should use kebab-case format - and must also end in .md and contain front matter to - be recognized. -

-
-

- Make sure the slug does not conflict with a - custom Blade page as Markdown pages are compiled - first and may be overwritten. -

-
-

_drafts

-

- This is a good place to store posts you are not - ready to post. Files in this directory are ignored - by Hyde. -

-

_site

-

- This is where the compiled static site is stored. - You should not edit files here as they may get - overwritten. -

-

- When publishing your site this is where you should - serve the site from. -

-

Resource Directories

-

config

-

- The config directory contains configuration files. - The most interesting one is probably - config/hyde.php where you can set the - site name! -

-

resources/views/pages

-

This is a special directory.

-

- All files here ending in .blade.php will be saved as - .html pages in the saved site. This is useful as you - can both extend the default layout, or you can write - your view fully. The latter allows for a really neat - hack which is used on this site to redirect - index.html to the documentation front page! -

-

- Limitations: Only top-level posts - are supported. Files should use kebab-case format - and must also end .blade.php. -

-
-

- Make sure the slug does not conflict with a - Markdown page as they are compiled first and - will be overwritten if your Blade page has the - same name. -

-
-

src/resources

-

- This directory contains source files for frontend - assets such as the SASS/SCSS files. -

-
 
resources
└── sass
-

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
- - - -
- - diff --git a/_site/master/getting-started.html b/_site/master/getting-started.html deleted file mode 100644 index feb5a13..0000000 --- a/_site/master/getting-started.html +++ /dev/null @@ -1,455 +0,0 @@ - - - - - - - - - - - - - HydePHP - Getting Started - - - - - - - - - - - -
- - -
-
-
-

Getting Started

-

- Now that you have installed Hyde, let's get to using - it! -

-
-

- If you have not already, now may be good to - familiarize yourself with the - Directory Structure. -

-
-

Creating content

-

- Hyde has 3 types of content generation (though you - are free to add more, submit a PR!). You can think - of them as modules if you want. -

-
    -
  • Hyde Posts - For the blogging system
  • -
  • - Hyde Docs - For generating documentation pages -
  • -
  • - Hyde Pages - For generating both simple Markdown - pages and advanced Blade ones -
  • -
-

- Let's jump in and take a closer look at each of - them! -

-

Hyde Posts

-

- This is the Blogging module. Blog Posts, or simply - Posts, are Markdown files stored in the - _posts directory. -

-

Creating posts

-

Posts can be created in one of two ways:

-
    -
  1. - You can create them manually by creating the - files, or -
  2. -
  3. - you can use the ´php hyde make:post´ command - which automatically fills in the front matter - for you. -
  4. -
-
-

- See the tutorial for further instructions on how - to use the make:post command. -

-
-

- In both cases, the markdown file should use the - kebab-case format and end in .md. When building the - static site, the post will retain the filename slug - but end in .html instead of .md. -

-

- For example: _posts/hello-world.md will - become _site/posts/hello-world.html -

-

- After creating your post run - php hyde build to build your site! You - should also look at the section dedicated to - building the site if you have not already. -

-

About Front Matter

-

- These posts use a YAML syntax called "Front - Matter" which you may be familiar with from - frameworks like Jekyll. -

-

- Each post should have a front-matter section before - the content. A front matter section begins and ends - with rows in the markdown file that consists of - three dashes (---). Between these - lines, you place key-value pairs of data which are - shown in the frontend. -

-

- Only the title is required, though you - are encouraged to add any number of the following - supported attributes as they are all displayed in - the front end. -

-

- Example of a front-matter section -

-
1---
2title: The title is the only value that is required
3description: A short description used in previews and SEO
4category: arbitrary-category-that-a,
5author: @TheMrHyde
6date: YYYY-MM-DD 16:00
7---
8 
9# Actual Markdown content is placed here
-
-

- At the moment no nested attributes are - supported. The category value does not yet - contain much functionality and is safe to omit. -

-
-
-

- Masterclass: you can add arbitrary front matter - key-value-pairs and access them using - $post->matter['foo'] in a Blade - view -

-
-

Tutorial

-

- For a full tutorial see - https://hydephp.github.io/docs/posts/creating-a-static-html-post-using-hydephp.html -

-

Deep-dive

-
-

- Deepdives take a closer look into how a feature - works behind the scenes. While not required to - know it can help to understand the - "magic" behind Hyde. -

-
-

Hyde Docs

-

- The Hyde Docs is based on Laradocgen and - automagically turns Markdown pages into - documentation pages. They are what powers this - documentation site! -

-

- Creating documentation pages are a piece of cake. - Create a file following the format of - kebab-case-version-of-the-title.md in the _docs - directory. Put any content you want in it, and run - the build command. -

-

- The sidebar will like magic be populated with all - the documentation pages. The page titles in the - sidebar are generated from the filename, and the - HTML page title is inferred from the first H1 tag. -

-
-

- Pro tip 1: Enable the - Torchlight extension to get the beautiful syntax - highlighting used here! -

-
-
-

- Pro tip 2: You can specify the - output directory for documentation pages in the - Hyde config. This site uses that feature to save - the pages in the 'master' directory for easy - version support! -

-
-

Hyde Pages using Markdown

-

- Hyde Markdown Pages are perfect for simple - content-driven pages. Some examples of this may be - "About Us" pages, or legal pages such as - "Terms of Service" and "Privacy - Policy". -

-

- The Markdown pages work similarly to Documentation - pages, but are use a simple Blade layout. To create - a Markdown page, all you need to do is create a file - ending in .md in the _pages directory. -

-

- The page title is automatically inferred from the - first # H1 heading. -

-

Hyde Pages using Blade

-

- If you want full control over a static page you can - create blade views in the pages directory - resources\views\pages, and they will be - compiled into static HTML. -

-

- Currently, only top-level pages are supported. The - filename of the generated file is based on the view - filename. For example, - resources\views\pages\custom-page.blade.php - gets saved as _site\custom-page.html. -

-

- ⚠ Warning: Files here take - precedence over files in _pages! Do not use - duplicate slugs. -

-

- Using the default layout If you - want to match the styles of the rest of your app you - can extend the default layout. -

-
1@extends('hyde::layouts.app')
2@section('content')
3 
4// Place content here
5 
6@endsection
-

- You can reference any Hyde components, or add your - own templates! You can also set the page title using -

-
1@php($title = "My Custom Title")
-

Adding Images

-

- All media files in the _media directory will get - copied to the _site/media directory upon build. To - reference an image in your Markdown, use the - following syntax To reference an image in your - Markdown, use the following syntax -

-
1![Image Alt](../media/image.png "Image Title") # Note the relative path
-

- Since most images are probably going to be in blog - posts or documentation pages you need to prepend the - ../ before the "media". - However, if you are referencing the image on a - Markdown page you should use - media/image.png for the path. -

-
-

- Nested media directories are not yet supported. -

-
-

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
- - - -
- - diff --git a/_site/master/index.html b/_site/master/index.html deleted file mode 100644 index 08bbed0..0000000 --- a/_site/master/index.html +++ /dev/null @@ -1,514 +0,0 @@ - - - - - - - - - - - - - - HydePHP - HydePHP - Static Blog Builder using Laravel Zero - - - - - - - - - - - - -
- - -
-
-
-

- HydePHP - Static Blog Builder using Laravel Zero -

-

- Latest Version on Packagist - Total Downloads - Latest Version on Packagist - Total Downloads - License - GitHub Actions - GitHub Actions -

-

⚠ Alpha Software Warning ⚠

-

- This is a very new project that has been made public - to run further tests before the initial release. - Please wait until v1.0 for production use. -

-
-

- HydePHP is a Static Site Builder focused on making - Blog posts easy and fun. Under the hood, it is - powered by Laravel Zero which is a stripped-down - version of the robust Laravel Framework. Using Blade - templates the site is intelligently compiled into - static HTML. Content is created using Markdown, - which supports YAML Front Matter. -

-

- Hyde is inspired by JekyllRB and is created for - Developers who are comfortable writing posts in - Markdown. It requires virtually no configuration out - of the box as it favours convention over - configuration. Though you can easily modify settings - in the config/hyde.php to personalize your site. You - can also directly modify the Blade views to make - them truly yours. -

-

- The frontend uses a lightweight minimalist layout - built with TailwindCSS which you can extend with the - Blade components. -

-

- Hyde is designed to be stupidly simple to get - started with, while also remaining easily hackable - and extendable. -

-

Live Demo

-

- The Hyde site (https://hydephp.github.io/docs/) is fully built with Hyde. That includes the - homepage, the blog, and the - documentation! -

-

Installation

-
-

- Full installation guide is in the documentation - at - https://hydephp.github.io/docs/ -

-
-

- The recommended method of installation is using - Composer. However, if you want to run the latest - development version you can clone the Git repo, see - the - full docs - for instructions. -

-

Using Composer (recommended)

-
1composer create-project hyde/hyde --stability=dev
2 
3cd hyde
4npm install && npm run dev
-

Requirements

-
-

- These requirements are for your local - development environment. The static HTML can be - hosted virtually anywhere, including on GitHub - Pages. Hyde uses Laravel 9 which requires PHP - >= 8.0. You should also have Composer and NPM - installed. -

-
-

Getting Started

-

- It's a breeze to get started. Simply clone the - repository, write your Markdown posts and save them - to the _posts directory and run the - php hyde build command. You can - scaffold post files using the - php hyde make:post command. -

-

Usage

-

- Hyde scans the source directories prefixed with - _underscores for Markdown files and intelligently - compiles them into static HTML using Blade - templates. The site is then saved in _docs. -

-

- Hyde is "blog and documentation aware" and - has built-in templates for both blogging and for - creating beautiful documentation pages based on - Laradocgen. Since Hyde is modular you can of course - disable the modules you don't need. -

-

- The full usage guide is in the documentation at - https://hydephp.github.io/docs/ -

-

Building the static site

-

- Then to compile the site into static HTML all you - have to do is execute the Hyde build command. -

-
1php hyde build
-

- Your site will then be saved in the _site directory, - which you can then upload to your static web host. - All links use relative paths, so you can deploy to a - subdirectory without any problems which also makes - the site work great when browsing the HTML files - locally even without a web server. -

-

- If it is the first time building the site or if you - have updated the source SCSS you also need to run - npm install && npm run dev to - build the frontend assets. -

-

Live preview

-

- Use npm run watch to watch the files - for changes and start up a local dev server on port - 3000 using Browsersync. -

-

NPM Commands

-

- See all commands in the documentation - Console Commands -

-

Hacking Hyde

-

- Hyde is designed to be easy to use and easy to - customize and hack. You can modify the source views - and SCSS, customize the Tailwind config, and you can - even create 100% custom HTML and Blade pages that - get compiled into static HTML. -

-

- While Hyde favours "convention over - configuration" there are a few config options - in the config/hyde.php file. All - settings are prefilled with sensible defaults so you - don't need to configure anything unless you want to! -

-

Extensions

-

- Hyde comes with built-in support for Torchlight - Syntax Highlighting. All you need to do is to set - your API token in your .env file and Hyde will - automatically enable the CommonMark extension. -

-
-

- Note that when using Torchlight the pages will - take longer to generate as API calls need to be - made. However, Torchlight caches the response so - this only affects the first time running the - build, or if you update the page. -

-
-

Known Issues

-

- Hyde does not automatically delete compiled HTML - files when the source files have been removed. - However, you can supply the - --clean flag to remove all content in - the _site directory when running the - build command. -

-

- Currently, only top-level custom pages are - supported. In the future, nested pages will be - supported. For example, _site/directory/page.html -

-

Changelog

-

- Please see CHANGELOG for - more information on what has changed recently. -

-

Contributing

-

- Please see - CONTRIBUTING for - details. -

-

Security

-

- If you discover any security-related issues, please - email - caen@desilva.se - instead of using the issue tracker. All - vulnerabilities will be promptly addressed. -

-

Credits

- -

License

-

- The MIT License (MIT). Please see - License File for more - information. -

-

Attributions

-
-

- Please see the respective authors' repositories - for their license files -

-
- -

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
- - - -
- - diff --git a/_site/master/installation.html b/_site/master/installation.html deleted file mode 100644 index 5387e32..0000000 --- a/_site/master/installation.html +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - - - - - - - - HydePHP - Installation Guide - - - - - - - - - - - -
- - -
-
-
-

Installation Guide

-

Installing HydePHP using Composer (recommended)

-

- The recommended method of installing Hyde is using - Composer. After the project has been created you can - scaffold a new blog post using the - make command and following the - on-screen instructions, and then compile the site - into static HTML using the - build command. -

-
composer create-project hyde/hyde example-site
 
cd example-site
 
npm install && npm run dev
 
php hyde make:post
 
php hyde build
-

- If you now take a look in the - _site directory you should see that an - index.html file, as well as a posts/hello-world.html - file, has been created! Open them up in your browser - and take a look! -

-
-

- If you are missing the stylesheet, run - npm install && npm run dev -

-
-

Installing HydePHP Git/GitHub

-

- If you want to run the latest development branch of - Hyde (not recommended for production!) you can - install it directly from Git/GitHub. -

-

Clone the repo

-

- There are two methods for creating a new project - using Git/GitHub. The first one is using the GitHub - website where you can clone the template repository - using the green button labelled "Use this - template" found at - https://github.com/hydephp/Hyde. -

-

Or if you want to use the CLI, run

-
git clone https://github.com/hydephp/hyde.git
-

Finalizing

-

- Next, navigate into the created project and install - the dependencies and build the assets. -

-
cd hyde
composer install
npm install
npm run dev
-
-

- If you are not installing from a release you may - want to set the environment to - production in the - config/app.php to hide the core - development commands you most likely will not - need unless you want to hack/contribute to the - framework itself. -

-
-

Usage

-

- After the project has been created you can scaffold - a new blog post using the make command - and following the on-screen instructions, and then - compile the site into static HTML using the - build command. -

-
php hyde make:post
 
php hyde build
-

- If you now take a look in the - _site directory you should see that an - index.html file, as well as a posts/hello-world.html - file, has been created! Open them up in your browser - and take a look! -

-

Next steps

-

- Make sure you check out the - getting started - page to learn how to use Hyde! -

-

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
- - - -
- - diff --git a/_site/media/Screenshot 2022-03-25 222236-min.png b/_site/media/Screenshot 2022-03-25 222236-min.png deleted file mode 100644 index dbb3f90..0000000 Binary files a/_site/media/Screenshot 2022-03-25 222236-min.png and /dev/null differ diff --git a/_site/media/app.css b/_site/media/app.css deleted file mode 100644 index f126155..0000000 --- a/_site/media/app.css +++ /dev/null @@ -1,111 +0,0 @@ -.torchlight-enabled pre { - border-radius: 0.25rem; - margin-top: 1rem; - margin-bottom: 1rem; - overflow-x: auto; - padding: 0; -} -.torchlight-enabled pre code.torchlight { - display: block; - min-width: -webkit-max-content; - min-width: -moz-max-content; - min-width: max-content; - padding-top: 1rem; - padding-bottom: 1rem; -} -.torchlight-enabled pre code.torchlight .line { - padding-left: 1rem; - padding-right: 1rem; -} -.torchlight-enabled pre code.torchlight .line-number, -.torchlight-enabled pre code.torchlight .summary-caret { - margin-right: 1rem; -} -#main-navigation ul { - float: right; - margin-right: 1em; -} -#main-navigation ul li { - display: inline; - margin-left: 1em; -} -#main-navigation ul a { - opacity: 0.75; -} -#main-navigation ul a:hover, -#main-navigation ul a.current { - opacity: 1; -} -#post-article { - max-width: 960px; -} -#post-article #byline { - margin-bottom: 1em; -} -#post-article #byline time, -#post-article #byline address, -#post-article #byline dl { - display: inline; -} -#post-article #byline time dt, -#post-article #byline time dd, -#post-article #byline address dt, -#post-article #byline address dd, -#post-article #byline dl dt, -#post-article #byline dl dd { - display: inline; -} -#post-article h2:first-child { - margin-top: 0; -} -#sidebar-navigation li.list-item-active a, -#mobile-navigation li.list-item-active a { - border-left: 4px solid #5956eb; - padding-left: calc(1rem - 4px); - margin-left: -1rem; - padding-top: 0.25rem; - padding-bottom: 0.25rem; - color: #5956eb; -} -@media (max-width: 360px) { - #documentation-sidebar { - width: 100%; - } -} -#documentation-content { - max-width: 100vw; -} -@media (min-width: 768px) { - #documentation-content { - max-width: calc(100vw - 20rem); - } -} -#documentation-content code { - max-width: 80vw; - overflow-x: auto; - display: inline-block; - vertical-align: top; -} -#documentation-content pre code { - display: block; - max-width: unset; -} -#sidebar-backdrop { - width: 100vw; - height: 100vh; - background: rgba(128, 128, 128, 0.5); - position: fixed; - top: 0; - left: 0; - cursor: pointer; -} -.sidebar-button-wrapper.open button.close { - display: none; -} -.sidebar-button-wrapper.closed button.open { - display: none; -} -.text-indigo-500, -.hover\:text-indigo-500:hover { - color: #5956eb; -} /*# sourceMappingURL=app.css.map */ diff --git a/_site/media/app.css.map b/_site/media/app.css.map deleted file mode 100644 index 2bac61e..0000000 --- a/_site/media/app.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["../../resources/sass/_torchlight.scss","../../resources/sass/app.scss"],"names":[],"mappings":"AAOC,wBACC,qBACA,gBACA,mBACA,gBACA,UAEA,wCACC,cACA,8BACA,2BACA,sBACA,iBACA,oBAEA,8CACC,kBACA,mBAGD,4GAEC,kBCtBH,oBACC,YACA,iBACA,uBACC,eACA,gBAED,sBACC,YACA,0DACC,UAMJ,cACC,gBACA,sBACC,kBACA,kFACC,eACA,sLACC,eAIH,6BACC,aAMA,mFACC,8BACA,8BACA,kBACA,mBACA,sBACA,cAMF,yBADD,uBAEE,YAIF,uBACI,gBACA,yBAFJ,uBAGQ,+BAGJ,4BACI,eACA,gBACA,qBACA,mBAIN,gCACC,cACA,gBAKH,kBACC,YACA,aACA,gCACA,eACA,MACA,OACA,eAKC,0CACC,aAID,2CACC,aAMH,+CACC","file":"app.css"} \ No newline at end of file diff --git a/_site/media/creating-a-new-hyde-site-from-scratch-terminal-min.png b/_site/media/creating-a-new-hyde-site-from-scratch-terminal-min.png deleted file mode 100644 index 8efd8ab..0000000 Binary files a/_site/media/creating-a-new-hyde-site-from-scratch-terminal-min.png and /dev/null differ diff --git a/_site/media/delta-compiled-vector.svg b/_site/media/delta-compiled-vector.svg deleted file mode 100644 index c94acd6..0000000 --- a/_site/media/delta-compiled-vector.svg +++ /dev/null @@ -1,168 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - hello-world.md - - - - - - --- - - title - : - Hello - World! - - - description - : - Short - post - excerpt - for - previews - and - meta - tags - - - category - : - demo - - - author - : - mr_hyde - - - date - : - 2022-03-29 - 09:16 - - --- - - ## - Write - something - awesome. - - - Lorem - markdownum - Austri - occupat - redire - sum - sponte - arcus, - - - [ - ferae - ]( - https://.aetheraet.net/lacrimissortita.html - ) - longo, - - - timuit - magnanimus - aera, - violentam. - Tractu - ter. - - - 1. - Pelopeia - et - terras - iussa - cavernas - - - 2. - Petit - ignoscite - ac - nuda - miserum - Tereus - - - 3. - Tuli - facinus - Panaque - virgo - sentire - copia - - - - - - - - - - - - - - - diff --git a/_site/media/mockup-blogpostexample-min.png b/_site/media/mockup-blogpostexample-min.png deleted file mode 100644 index 0f08c96..0000000 Binary files a/_site/media/mockup-blogpostexample-min.png and /dev/null differ diff --git a/_site/media/screely-1648242017926-min.png b/_site/media/screely-1648242017926-min.png deleted file mode 100644 index a012a61..0000000 Binary files a/_site/media/screely-1648242017926-min.png and /dev/null differ diff --git a/_site/media/screely-1648242979072-min.png b/_site/media/screely-1648242979072-min.png deleted file mode 100644 index e3f355f..0000000 Binary files a/_site/media/screely-1648242979072-min.png and /dev/null differ diff --git a/_site/media/screely-1648247108115-min.png b/_site/media/screely-1648247108115-min.png deleted file mode 100644 index 7515869..0000000 Binary files a/_site/media/screely-1648247108115-min.png and /dev/null differ diff --git a/_site/media/screely-1648303538589-min.png b/_site/media/screely-1648303538589-min.png deleted file mode 100644 index 22b62c0..0000000 Binary files a/_site/media/screely-1648303538589-min.png and /dev/null differ diff --git a/_site/media/screely-1648307127051-min.png b/_site/media/screely-1648307127051-min.png deleted file mode 100644 index 001e6ce..0000000 Binary files a/_site/media/screely-1648307127051-min.png and /dev/null differ diff --git a/_site/media/tailwind.css b/_site/media/tailwind.css deleted file mode 100644 index 6dedccb..0000000 --- a/_site/media/tailwind.css +++ /dev/null @@ -1,1366 +0,0 @@ -/*! tailwindcss v3.0.23 | MIT License | https://tailwindcss.com*/ -*, -:after, -:before { - box-sizing: border-box; - border: 0 solid #e5e7eb; -} -:after, -:before { - --tw-content: ""; -} -html { - line-height: 1.5; - -webkit-text-size-adjust: 100%; - -moz-tab-size: 4; - -o-tab-size: 4; - tab-size: 4; - font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, - Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, - Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; -} -body { - margin: 0; - line-height: inherit; -} -hr { - height: 0; - color: inherit; - border-top-width: 1px; -} -abbr:where([title]) { - -webkit-text-decoration: underline dotted; - text-decoration: underline dotted; -} -h1, -h2, -h3, -h4, -h5, -h6 { - font-size: inherit; - font-weight: inherit; -} -a { - color: inherit; - text-decoration: inherit; -} -b, -strong { - font-weight: bolder; -} -code, -kbd, -pre, -samp { - font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, - Liberation Mono, Courier New, monospace; - font-size: 1em; -} -small { - font-size: 80%; -} -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: initial; -} -sub { - bottom: -0.25em; -} -sup { - top: -0.5em; -} -table { - text-indent: 0; - border-color: inherit; - border-collapse: collapse; -} -button, -input, -optgroup, -select, -textarea { - font-family: inherit; - font-size: 100%; - line-height: inherit; - color: inherit; - margin: 0; - padding: 0; -} -button, -select { - text-transform: none; -} -[type="button"], -[type="reset"], -[type="submit"], -button { - -webkit-appearance: button; - background-color: initial; - background-image: none; -} -:-moz-focusring { - outline: auto; -} -:-moz-ui-invalid { - box-shadow: none; -} -progress { - vertical-align: initial; -} -::-webkit-inner-spin-button, -::-webkit-outer-spin-button { - height: auto; -} -[type="search"] { - -webkit-appearance: textfield; - outline-offset: -2px; -} -::-webkit-search-decoration { - -webkit-appearance: none; -} -::-webkit-file-upload-button { - -webkit-appearance: button; - font: inherit; -} -summary { - display: list-item; -} -blockquote, -dd, -dl, -figure, -h1, -h2, -h3, -h4, -h5, -h6, -hr, -p, -pre { - margin: 0; -} -fieldset { - margin: 0; -} -fieldset, -legend { - padding: 0; -} -menu, -ol, -ul { - list-style: none; - margin: 0; - padding: 0; -} -textarea { - resize: vertical; -} -input::-moz-placeholder, -textarea::-moz-placeholder { - opacity: 1; - color: #9ca3af; -} -input:-ms-input-placeholder, -textarea:-ms-input-placeholder { - opacity: 1; - color: #9ca3af; -} -input::placeholder, -textarea::placeholder { - opacity: 1; - color: #9ca3af; -} -[role="button"], -button { - cursor: pointer; -} -:disabled { - cursor: default; -} -audio, -canvas, -embed, -iframe, -img, -object, -svg, -video { - display: block; - vertical-align: middle; -} -img, -video { - max-width: 100%; - height: auto; -} -[hidden] { - display: none; -} -*, -:after, -:before { - --tw-translate-x: 0; - --tw-translate-y: 0; - --tw-rotate: 0; - --tw-skew-x: 0; - --tw-skew-y: 0; - --tw-scale-x: 1; - --tw-scale-y: 1; - --tw-pan-x: ; - --tw-pan-y: ; - --tw-pinch-zoom: ; - --tw-scroll-snap-strictness: proximity; - --tw-ordinal: ; - --tw-slashed-zero: ; - --tw-numeric-figure: ; - --tw-numeric-spacing: ; - --tw-numeric-fraction: ; - --tw-ring-inset: ; - --tw-ring-offset-width: 0px; - --tw-ring-offset-color: #fff; - --tw-ring-color: #3b82f680; - --tw-ring-offset-shadow: 0 0 #0000; - --tw-ring-shadow: 0 0 #0000; - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - --tw-blur: ; - --tw-brightness: ; - --tw-contrast: ; - --tw-grayscale: ; - --tw-hue-rotate: ; - --tw-invert: ; - --tw-saturate: ; - --tw-sepia: ; - --tw-drop-shadow: ; - --tw-backdrop-blur: ; - --tw-backdrop-brightness: ; - --tw-backdrop-contrast: ; - --tw-backdrop-grayscale: ; - --tw-backdrop-hue-rotate: ; - --tw-backdrop-invert: ; - --tw-backdrop-opacity: ; - --tw-backdrop-saturate: ; - --tw-backdrop-sepia: ; -} -.container { - width: 100%; -} -@media (min-width: 640px) { - .container { - max-width: 640px; - } -} -@media (min-width: 768px) { - .container { - max-width: 768px; - } -} -@media (min-width: 1024px) { - .container { - max-width: 1024px; - } -} -@media (min-width: 1280px) { - .container { - max-width: 1280px; - } -} -@media (min-width: 1536px) { - .container { - max-width: 1536px; - } -} -.prose { - color: var(--tw-prose-body); - max-width: 65ch; -} -.prose :where([class~="lead"]):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-lead); - font-size: 1.25em; - line-height: 1.6; - margin-top: 1.2em; - margin-bottom: 1.2em; -} -.prose :where(a):not(:where([class~="not-prose"] *)) { - color: #5956eb; - text-decoration: none; - font-weight: 500; -} -.prose :where(a):not(:where([class~="not-prose"] *)):hover { - color: #4f46e5; -} -.prose :where(strong):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-bold); - font-weight: 600; -} -.prose :where(ol):not(:where([class~="not-prose"] *)) { - list-style-type: decimal; - padding-left: 1.625em; -} -.prose :where(ol[type="A"]):not(:where([class~="not-prose"] *)) { - list-style-type: upper-alpha; -} -.prose :where(ol[type="a"]):not(:where([class~="not-prose"] *)) { - list-style-type: lower-alpha; -} -.prose :where(ol[type="A s"]):not(:where([class~="not-prose"] *)) { - list-style-type: upper-alpha; -} -.prose :where(ol[type="a s"]):not(:where([class~="not-prose"] *)) { - list-style-type: lower-alpha; -} -.prose :where(ol[type="I"]):not(:where([class~="not-prose"] *)) { - list-style-type: upper-roman; -} -.prose :where(ol[type="i"]):not(:where([class~="not-prose"] *)) { - list-style-type: lower-roman; -} -.prose :where(ol[type="I s"]):not(:where([class~="not-prose"] *)) { - list-style-type: upper-roman; -} -.prose :where(ol[type="i s"]):not(:where([class~="not-prose"] *)) { - list-style-type: lower-roman; -} -.prose :where(ol[type="1"]):not(:where([class~="not-prose"] *)) { - list-style-type: decimal; -} -.prose :where(ul):not(:where([class~="not-prose"] *)) { - list-style-type: disc; - padding-left: 1.625em; -} -.prose :where(ol > li):not(:where([class~="not-prose"] *))::marker { - font-weight: 400; - color: var(--tw-prose-counters); -} -.prose :where(ul > li):not(:where([class~="not-prose"] *))::marker { - color: var(--tw-prose-bullets); -} -.prose :where(hr):not(:where([class~="not-prose"] *)) { - border-color: var(--tw-prose-hr); - border-top-width: 1px; - margin-top: 3em; - margin-bottom: 3em; -} -.prose :where(blockquote):not(:where([class~="not-prose"] *)) { - font-weight: 500; - font-style: unset; - color: #1f2937; - border-left-width: 0.25rem; - border-left-color: #d1d5db; - quotes: "\201C""\201D""\2018""\2019"; - margin-top: 1em; - margin-bottom: 1em; - padding-left: 0.75em; - background-color: #80808020; - line-height: 1.25em; - padding-top: 0.25em; - padding-bottom: 0.25em; -} -.prose :where(blockquote):not(:where([class~="not-prose"] *)) p { - padding-right: 0.25em; - margin-top: 0.25em; - margin-bottom: 0.25em; -} -.prose :where(blockquote):not(:where([class~="not-prose"] *)) p:before { - content: unset; -} -.prose :where(blockquote):not(:where([class~="not-prose"] *)) p:after { - content: unset; -} -.prose - :where(blockquote p:first-of-type):not(:where([class~="not-prose"] - *)):before { - content: open-quote; -} -.prose - :where(blockquote p:last-of-type):not(:where([class~="not-prose"] - *)):after { - content: close-quote; -} -.prose :where(h1):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-headings); - font-weight: 800; - font-size: 2.25em; - margin-top: 0; - margin-bottom: 0.8888889em; - line-height: 1.1111111; -} -.prose :where(h1 strong):not(:where([class~="not-prose"] *)) { - font-weight: 900; -} -.prose :where(h2):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-headings); - font-weight: 700; - font-size: 1.5em; - margin-top: 1.5em; - margin-bottom: 0.75em; - line-height: 1.3333333; -} -.prose :where(h2 strong):not(:where([class~="not-prose"] *)) { - font-weight: 800; -} -.prose :where(h3):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-headings); - font-weight: 600; - font-size: 1.25em; - margin-top: 1.6em; - margin-bottom: 0.6em; - line-height: 1.6; -} -.prose :where(h3 strong):not(:where([class~="not-prose"] *)) { - font-weight: 700; -} -.prose :where(h4):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-headings); - font-weight: 600; - margin-top: 1.5em; - margin-bottom: 0.5em; - line-height: 1.5; -} -.prose :where(h4 strong):not(:where([class~="not-prose"] *)) { - font-weight: 700; -} -.prose :where(figure > *):not(:where([class~="not-prose"] *)) { - margin-top: 0; - margin-bottom: 0; -} -.prose :where(figcaption):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-captions); - font-size: 0.875em; - line-height: 1.4285714; - margin-top: 0.8571429em; -} -.prose :where(code):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-code); - font-weight: 600; - font-size: 0.875em; - font: unset; - background-color: #80808033; - padding-left: 4px; - padding-right: 4px; - margin-left: -2px; - margin-right: 1px; - border-radius: 4px; - white-space: pre; -} -.prose :where(code):not(:where([class~="not-prose"] *)):before { - content: unset; -} -.prose :where(code):not(:where([class~="not-prose"] *)):after { - content: unset; -} -.prose :where(a code):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-links); -} -.prose :where(pre):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-pre-code); - background-color: var(--tw-prose-pre-bg); - overflow-x: auto; - font-weight: 400; - font-size: 0.875em; - line-height: 1.7142857; - margin-top: 1.7142857em; - margin-bottom: 1.7142857em; - border-radius: 0.375rem; - padding: 0.8571429em 1.1428571em; -} -.prose :where(pre):not(:where([class~="not-prose"] *)) code { - font-family: Fira Code Regular, Consolas, Monospace, Courier New; -} -.prose :where(pre code):not(:where([class~="not-prose"] *)) { - background-color: initial; - border-width: 0; - border-radius: 0; - padding: 0; - font-weight: inherit; - color: inherit; - font-size: inherit; - font-family: inherit; - line-height: inherit; -} -.prose :where(pre code):not(:where([class~="not-prose"] *)):before { - content: none; -} -.prose :where(pre code):not(:where([class~="not-prose"] *)):after { - content: none; -} -.prose :where(table):not(:where([class~="not-prose"] *)) { - width: 100%; - table-layout: auto; - text-align: left; - margin-top: 2em; - margin-bottom: 2em; - font-size: 0.875em; - line-height: 1.7142857; -} -.prose :where(thead):not(:where([class~="not-prose"] *)) { - border-bottom-width: 1px; - border-bottom-color: var(--tw-prose-th-borders); -} -.prose :where(thead th):not(:where([class~="not-prose"] *)) { - color: var(--tw-prose-headings); - font-weight: 600; - vertical-align: bottom; - padding-right: 0.5714286em; - padding-bottom: 0.5714286em; - padding-left: 0.5714286em; -} -.prose :where(tbody tr):not(:where([class~="not-prose"] *)) { - border-bottom-width: 1px; - border-bottom-color: var(--tw-prose-td-borders); -} -.prose :where(tbody tr:last-child):not(:where([class~="not-prose"] *)) { - border-bottom-width: 0; -} -.prose :where(tbody td):not(:where([class~="not-prose"] *)) { - vertical-align: initial; - padding: 0.5714286em; -} -.prose { - --tw-prose-body: #374151; - --tw-prose-headings: #111827; - --tw-prose-lead: #4b5563; - --tw-prose-links: #111827; - --tw-prose-bold: #111827; - --tw-prose-counters: #6b7280; - --tw-prose-bullets: #d1d5db; - --tw-prose-hr: #e5e7eb; - --tw-prose-quotes: #111827; - --tw-prose-quote-borders: #e5e7eb; - --tw-prose-captions: #6b7280; - --tw-prose-code: #111827; - --tw-prose-pre-code: #e5e7eb; - --tw-prose-pre-bg: #1f2937; - --tw-prose-th-borders: #d1d5db; - --tw-prose-td-borders: #e5e7eb; - --tw-prose-invert-body: #d1d5db; - --tw-prose-invert-headings: #fff; - --tw-prose-invert-lead: #9ca3af; - --tw-prose-invert-links: #fff; - --tw-prose-invert-bold: #fff; - --tw-prose-invert-counters: #9ca3af; - --tw-prose-invert-bullets: #4b5563; - --tw-prose-invert-hr: #374151; - --tw-prose-invert-quotes: #f3f4f6; - --tw-prose-invert-quote-borders: #374151; - --tw-prose-invert-captions: #9ca3af; - --tw-prose-invert-code: #fff; - --tw-prose-invert-pre-code: #d1d5db; - --tw-prose-invert-pre-bg: #00000080; - --tw-prose-invert-th-borders: #4b5563; - --tw-prose-invert-td-borders: #374151; - font-size: 1rem; - line-height: 1.5em; -} -.prose :where(p):not(:where([class~="not-prose"] *)) { - margin-top: 1.25em; - margin-bottom: 1.25em; -} -.prose :where(img):not(:where([class~="not-prose"] *)) { - margin-top: 2em; - margin-bottom: 2em; -} -.prose :where(video):not(:where([class~="not-prose"] *)) { - margin-top: 2em; - margin-bottom: 2em; -} -.prose :where(figure):not(:where([class~="not-prose"] *)) { - margin-top: 2em; - margin-bottom: 2em; -} -.prose :where(h2 code):not(:where([class~="not-prose"] *)) { - font-size: 0.875em; -} -.prose :where(h3 code):not(:where([class~="not-prose"] *)) { - font-size: 0.9em; -} -.prose :where(li):not(:where([class~="not-prose"] *)) { - margin-top: 0.5em; - margin-bottom: 0.5em; -} -.prose :where(ol > li):not(:where([class~="not-prose"] *)) { - padding-left: 0.375em; -} -.prose :where(ul > li):not(:where([class~="not-prose"] *)) { - padding-left: 0.375em; -} -.prose > :where(ul > li p):not(:where([class~="not-prose"] *)) { - margin-top: 0.75em; - margin-bottom: 0.75em; -} -.prose > :where(ul > li > :first-child):not(:where([class~="not-prose"] *)) { - margin-top: 1.25em; -} -.prose > :where(ul > li > :last-child):not(:where([class~="not-prose"] *)) { - margin-bottom: 1.25em; -} -.prose > :where(ol > li > :first-child):not(:where([class~="not-prose"] *)) { - margin-top: 1.25em; -} -.prose > :where(ol > li > :last-child):not(:where([class~="not-prose"] *)) { - margin-bottom: 1.25em; -} -.prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"] *)) { - margin-top: 0.75em; - margin-bottom: 0.75em; -} -.prose :where(hr + *):not(:where([class~="not-prose"] *)) { - margin-top: 0; -} -.prose :where(h2 + *):not(:where([class~="not-prose"] *)) { - margin-top: 0; -} -.prose :where(h3 + *):not(:where([class~="not-prose"] *)) { - margin-top: 0; -} -.prose :where(h4 + *):not(:where([class~="not-prose"] *)) { - margin-top: 0; -} -.prose :where(thead th:first-child):not(:where([class~="not-prose"] *)) { - padding-left: 0; -} -.prose :where(thead th:last-child):not(:where([class~="not-prose"] *)) { - padding-right: 0; -} -.prose :where(tbody td:first-child):not(:where([class~="not-prose"] *)) { - padding-left: 0; -} -.prose :where(tbody td:last-child):not(:where([class~="not-prose"] *)) { - padding-right: 0; -} -.prose > :where(:first-child):not(:where([class~="not-prose"] *)) { - margin-top: 0; -} -.prose > :where(:last-child):not(:where([class~="not-prose"] *)) { - margin-bottom: 0; -} -.static { - position: static; -} -.fixed { - position: fixed; -} -.absolute { - position: absolute; -} -.relative { - position: relative; -} -.top-0 { - top: 0; -} -.left-0 { - left: 0; -} -.z-20 { - z-index: 20; -} -.z-30 { - z-index: 30; -} -.m-8 { - margin: 2rem; -} -.m-4 { - margin: 1rem; -} -.m-2 { - margin: 0.5rem; -} -.my-3 { - margin-top: 0.75rem; - margin-bottom: 0.75rem; -} -.mx-auto { - margin-left: auto; - margin-right: auto; -} -.my-8 { - margin-top: 2rem; - margin-bottom: 2rem; -} -.my-2 { - margin-top: 0.5rem; - margin-bottom: 0.5rem; -} -.my-4 { - margin-top: 1rem; - margin-bottom: 1rem; -} -.my-1 { - margin-top: 0.25rem; - margin-bottom: 0.25rem; -} -.my-auto { - margin-top: auto; - margin-bottom: auto; -} -.mx-3 { - margin-left: 0.75rem; - margin-right: 0.75rem; -} -.mb-8 { - margin-bottom: 2rem; -} -.mt-auto { - margin-top: auto; -} -.mt-4 { - margin-top: 1rem; -} -.mt-8 { - margin-top: 2rem; -} -.mb-4 { - margin-bottom: 1rem; -} -.mt-2 { - margin-top: 0.5rem; -} -.block { - display: block; -} -.inline { - display: inline; -} -.flex { - display: flex; -} -.table { - display: table; -} -.contents { - display: contents; -} -.list-item { - display: list-item; -} -.hidden { - display: none; -} -.h-1 { - height: 0.25rem; -} -.h-16 { - height: 4rem; -} -.h-full { - height: 100%; -} -.h-screen { - height: 100vh; -} -.min-h-screen { - min-height: 100vh; -} -.min-h-\[75vh\] { - min-height: 75vh; -} -.w-16 { - width: 4rem; -} -.w-full { - width: 100%; -} -.w-4 { - width: 1rem; -} -.w-80 { - width: 20rem; -} -.w-screen { - width: 100vw; -} -.w-64 { - width: 16rem; -} -.w-fit { - width: -webkit-fit-content; - width: -moz-fit-content; - width: fit-content; -} -.max-w-sm { - max-width: 24rem; -} -.max-w-5xl { - max-width: 64rem; -} -.max-w-screen-xl { - max-width: 1280px; -} -.max-w-3xl { - max-width: 48rem; -} -.max-w-7xl { - max-width: 80rem; -} -.max-w-xl { - max-width: 36rem; -} -.max-w-lg { - max-width: 32rem; -} -.shrink-0 { - flex-shrink: 0; -} -.cursor-pointer { - cursor: pointer; -} -.snap-x { - -ms-scroll-snap-type: x var(--tw-scroll-snap-strictness); - scroll-snap-type: x var(--tw-scroll-snap-strictness); -} -.snap-mandatory { - --tw-scroll-snap-strictness: mandatory; -} -.snap-center { - scroll-snap-align: center; -} -.flex-row { - flex-direction: row; -} -.flex-col { - flex-direction: column; -} -.flex-wrap { - flex-wrap: wrap; -} -.items-center { - align-items: center; -} -.justify-center { - justify-content: center; -} -.justify-between { - justify-content: space-between; -} -.gap-6 { - gap: 1.5rem; -} -.overflow-hidden { - overflow: hidden; -} -.overflow-x-auto { - overflow-x: auto; -} -.overflow-y-auto { - overflow-y: auto; -} -.overflow-x-hidden { - overflow-x: hidden; -} -.rounded-lg { - border-radius: 0.5rem; -} -.rounded { - border-radius: 0.25rem; -} -.border-2 { - border-width: 2px; -} -.border { - border-width: 1px; -} -.border-b { - border-bottom-width: 1px; -} -.border-t { - border-top-width: 1px; -} -.border-purple-700 { - --tw-border-opacity: 1; - border-color: rgb(126 34 206 / var(--tw-border-opacity)); -} -.bg-transparent { - background-color: initial; -} -.bg-white { - --tw-bg-opacity: 1; - background-color: rgb(255 255 255 / var(--tw-bg-opacity)); -} -.bg-slate-100 { - --tw-bg-opacity: 1; - background-color: rgb(241 245 249 / var(--tw-bg-opacity)); -} -.bg-purple-700 { - --tw-bg-opacity: 1; - background-color: rgb(126 34 206 / var(--tw-bg-opacity)); -} -.bg-gradient-to-br { - background-image: linear-gradient( - to bottom right, - var(--tw-gradient-stops) - ); -} -.bg-cover { - background-size: cover; -} -.bg-clip-text { - -webkit-background-clip: text; - background-clip: text; -} -.bg-no-repeat { - background-repeat: no-repeat; -} -.p-4 { - padding: 1rem; -} -.p-8 { - padding: 2rem; -} -.py-3 { - padding-top: 0.75rem; - padding-bottom: 0.75rem; -} -.px-6 { - padding-left: 1.5rem; - padding-right: 1.5rem; -} -.px-4 { - padding-left: 1rem; - padding-right: 1rem; -} -.py-2 { - padding-top: 0.5rem; - padding-bottom: 0.5rem; -} -.py-16 { - padding-top: 4rem; - padding-bottom: 4rem; -} -.px-3 { - padding-left: 0.75rem; - padding-right: 0.75rem; -} -.py-8 { - padding-top: 2rem; - padding-bottom: 2rem; -} -.py-4 { - padding-top: 1rem; - padding-bottom: 1rem; -} -.px-8 { - padding-left: 2rem; - padding-right: 2rem; -} -.py-12 { - padding-top: 3rem; - padding-bottom: 3rem; -} -.py-32 { - padding-top: 8rem; - padding-bottom: 8rem; -} -.pt-1 { - padding-top: 0.25rem; -} -.pb-20 { - padding-bottom: 5rem; -} -.pt-32 { - padding-top: 8rem; -} -.pb-12 { - padding-bottom: 3rem; -} -.text-left { - text-align: left; -} -.text-center { - text-align: center; -} -.font-sans { - font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, - Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, - Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; -} -.text-2xl { - font-size: 1.5rem; - line-height: 2rem; -} -.text-5xl { - font-size: 3rem; - line-height: 1; -} -.text-xl { - font-size: 1.25rem; - line-height: 1.75rem; -} -.text-6xl { - font-size: 3.75rem; - line-height: 1; -} -.text-4xl { - font-size: 2.25rem; - line-height: 2.5rem; -} -.text-3xl { - font-size: 1.875rem; - line-height: 2.25rem; -} -.text-sm { - font-size: 0.875rem; - line-height: 1.25rem; -} -.font-light { - font-weight: 300; -} -.font-bold { - font-weight: 700; -} -.font-black { - font-weight: 900; -} -.font-normal { - font-weight: 400; -} -.font-extrabold { - font-weight: 800; -} -.font-medium { - font-weight: 500; -} -.uppercase { - text-transform: uppercase; -} -.leading-normal { - line-height: 1.5; -} -.leading-7 { - line-height: 1.75rem; -} -.leading-8 { - line-height: 2rem; -} -.leading-10 { - line-height: 2.5rem; -} -.leading-relaxed { - line-height: 1.625; -} -.tracking-wide { - letter-spacing: 0.025em; -} -.tracking-tight { - letter-spacing: -0.025em; -} -.tracking-normal { - letter-spacing: 0; -} -.text-black { - --tw-text-opacity: 1; - color: rgb(0 0 0 / var(--tw-text-opacity)); -} -.text-indigo-500 { - --tw-text-opacity: 1; - color: rgb(99 102 241 / var(--tw-text-opacity)); -} -.text-slate-700 { - --tw-text-opacity: 1; - color: rgb(51 65 85 / var(--tw-text-opacity)); -} -.text-slate-800 { - --tw-text-opacity: 1; - color: rgb(30 41 59 / var(--tw-text-opacity)); -} -.text-gray-800 { - --tw-text-opacity: 1; - color: rgb(31 41 55 / var(--tw-text-opacity)); -} -.text-purple-700 { - --tw-text-opacity: 1; - color: rgb(126 34 206 / var(--tw-text-opacity)); -} -.text-white { - --tw-text-opacity: 1; - color: rgb(255 255 255 / var(--tw-text-opacity)); -} -.text-gray-100 { - --tw-text-opacity: 1; - color: rgb(243 244 246 / var(--tw-text-opacity)); -} -.text-transparent { - color: #0000; -} -.text-gray-200 { - --tw-text-opacity: 1; - color: rgb(229 231 235 / var(--tw-text-opacity)); -} -.antialiased { - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} -.opacity-75 { - opacity: 0.75; -} -.shadow-lg { - --tw-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a; - --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), - 0 4px 6px -4px var(--tw-shadow-color); -} -.shadow-2xl, -.shadow-lg { - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), - var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.shadow-2xl { - --tw-shadow: 0 25px 50px -12px #00000040; - --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color); -} -.shadow-md { - --tw-shadow: 0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a; - --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), - 0 2px 4px -2px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), - var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); -} -.outline { - outline-style: solid; -} -.drop-shadow-2xl { - --tw-drop-shadow: drop-shadow(0 25px 25px #00000026); - filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) - var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) - var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); -} -.transition { - transition-property: color, background-color, border-color, fill, stroke, - opacity, box-shadow, transform, filter, -webkit-text-decoration-color, - -webkit-backdrop-filter; - transition-property: color, background-color, border-color, - text-decoration-color, fill, stroke, opacity, box-shadow, transform, - filter, backdrop-filter; - transition-property: color, background-color, border-color, - text-decoration-color, fill, stroke, opacity, box-shadow, transform, - filter, backdrop-filter, -webkit-text-decoration-color, - -webkit-backdrop-filter; - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - transition-duration: 0.15s; -} -.duration-300 { - transition-duration: 0.3s; -} -.ease-in-out { - transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); -} -.first\:pl-8:first-child { - padding-left: 2rem; -} -.last\:pr-8:last-child { - padding-right: 2rem; -} -.hover\:bg-purple-700:hover { - --tw-bg-opacity: 1; - background-color: rgb(126 34 206 / var(--tw-bg-opacity)); -} -.hover\:bg-purple-900:hover { - --tw-bg-opacity: 1; - background-color: rgb(88 28 135 / var(--tw-bg-opacity)); -} -.hover\:text-indigo-500:hover { - --tw-text-opacity: 1; - color: rgb(99 102 241 / var(--tw-text-opacity)); -} -.hover\:text-white:hover { - --tw-text-opacity: 1; - color: rgb(255 255 255 / var(--tw-text-opacity)); -} -.hover\:underline:hover { - -webkit-text-decoration-line: underline; - text-decoration-line: underline; -} -.hover\:opacity-100:hover { - opacity: 1; -} -.focus\:outline-none:focus { - outline: 2px solid #0000; - outline-offset: 2px; -} -.focus\:ring-4:focus { - --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 - var(--tw-ring-offset-width) var(--tw-ring-offset-color); - --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 - calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color); - box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), - var(--tw-shadow, 0 0 #0000); -} -.focus\:ring-purple-900:focus { - --tw-ring-opacity: 1; - --tw-ring-color: rgb(88 28 135 / var(--tw-ring-opacity)); -} -.focus\:ring-opacity-75:focus { - --tw-ring-opacity: 0.75; -} -@media (min-width: 640px) { - .sm\:mb-0 { - margin-bottom: 0; - } - .sm\:mt-4 { - margin-top: 1rem; - } - .sm\:w-48 { - width: 12rem; - } - .sm\:leading-none { - line-height: 1; - } - .sm\:shadow-xl { - --tw-shadow: 0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a; - --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), - 0 8px 10px -6px var(--tw-shadow-color); - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), - var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - } -} -@media (min-width: 768px) { - .md\:absolute { - position: absolute; - } - .md\:left-72 { - left: 18rem; - } - .md\:my-6 { - margin-top: 1.5rem; - margin-bottom: 1.5rem; - } - .md\:mb-12 { - margin-bottom: 3rem; - } - .md\:mt-0 { - margin-top: 0; - } - .md\:mt-8 { - margin-top: 2rem; - } - .md\:inline-block { - display: inline-block; - } - .md\:flex { - display: flex; - } - .md\:hidden { - display: none; - } - .md\:min-h-screen { - min-height: 100vh; - } - .md\:w-1\/2 { - width: 50%; - } - .md\:max-w-none { - max-width: none; - } - .md\:max-w-2xl { - max-width: 42rem; - } - .md\:bg-left { - background-position: 0; - } - .md\:px-20 { - padding-left: 5rem; - padding-right: 5rem; - } - .md\:pb-0 { - padding-bottom: 0; - } - .md\:text-center { - text-align: center; - } - .md\:text-3xl { - font-size: 1.875rem; - line-height: 2.25rem; - } - .md\:text-2xl { - font-size: 1.5rem; - line-height: 2rem; - } - .md\:text-7xl { - font-size: 4.5rem; - line-height: 1; - } - .md\:text-4xl { - font-size: 2.25rem; - line-height: 2.5rem; - } - .md\:text-6xl { - font-size: 3.75rem; - line-height: 1; - } - .md\:text-5xl { - font-size: 3rem; - line-height: 1; - } - .md\:leading-10 { - line-height: 2.5rem; - } - .md\:shadow-none { - --tw-shadow: 0 0 #0000; - --tw-shadow-colored: 0 0 #0000; - box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), - var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); - } -} -@media (min-width: 1024px) { - .lg\:mt-4 { - margin-top: 1rem; - } - .lg\:mt-8 { - margin-top: 2rem; - } - .lg\:mb-12 { - margin-bottom: 3rem; - } - .lg\:min-h-screen { - min-height: 100vh; - } - .lg\:w-1\/2 { - width: 50%; - } - .lg\:flex-row { - flex-direction: row; - } - .lg\:gap-10 { - gap: 2.5rem; - } - .lg\:bg-center { - background-position: 50%; - } - .lg\:px-4 { - padding-left: 1rem; - padding-right: 1rem; - } - .lg\:pt-44 { - padding-top: 11rem; - } - .lg\:text-5xl { - font-size: 3rem; - line-height: 1; - } - .lg\:text-3xl { - font-size: 1.875rem; - line-height: 2.25rem; - } - .lg\:text-7xl { - font-size: 4.5rem; - line-height: 1; - } - .lg\:text-lg { - font-size: 1.125rem; - line-height: 1.75rem; - } -} -@media (min-width: 1280px) { - .xl\:left-80 { - left: 20rem; - } - .xl\:mb-16 { - margin-bottom: 4rem; - } -} diff --git a/_site/posts/creating-a-new-hyde-site-from-scratch.html b/_site/posts/creating-a-new-hyde-site-from-scratch.html deleted file mode 100644 index 6bb5ccc..0000000 --- a/_site/posts/creating-a-new-hyde-site-from-scratch.html +++ /dev/null @@ -1,582 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - HydePHP - Creating a new Hyde site from scratch - - - - - - - - - - - - - - - - - -
-
-
- - -
-

- Creating a new Hyde site from scratch -

-
- Posted - - by author -
- Caen -
- in the category "tutorials" -
-
-
-

- This blog post will guide you through creating a new - Hyde site, while also showcasing some neat features! -

-

Prerequisites

-

- This guide assumes you have Composer and NPM - installed. You also need PHP 8 or higher. Previous - command-line experience won't hurt either since we - will be using the CLI a lot! I'm using Windows - PowerShell here, but you can follow along with Bash - as well. -

-

- This guide will mostly be example-driven. If you - have any questions, please send me a tweet! I'm - @StressedDev -

-

Creating a new project

-

- Creating a site with Hyde is easy, especially when - using Composer! -

-
1composer create-project hyde/hyde tutorial-demo
-

- CD into the created directory using - cd tutorial demo -

-

Right away you can run the build command

-
1php hyde build
-

- and open the generated HTML page that is stored as - index.html in the - _site directory. Let's take a look! -

-

- Screenshot of welcome page -

-

- Amazing! We probably don't want to keep this welcome - screen though. Let's create a blog! -

-

Setting up the blog homepage

-

- Hyde comes with a built-in blog module. First, let's - change our homepage! -

-

- Hyde comes with a few different options to use as - the index.html. The one we have right now, the - default, is called 'welcome'. -

-

- We can change our homepage using the Hyde command - which will present us with a few options. We'll - select the one named 'post feed'. Since we already - have a homepage we need to add the --force flag to - allow it to be overwritten. This is a safeguard in - case you have changed the file yourself. -

-
1php hyde publish:homepage --force
-

- We will be asked if we want to rebuild the site, - let's hit 'yes' and take a look! -

-

- Screenshot of welcome page -

-

- Cool! Though it looks a bit empty. Let's create a - post! -

-

Creating a blog post

-

- Blog posts are based on Markdown files with metadata - (post information) specified in a special YAML - called Front Matter. -

-

- We can of course create the file manually but that - is so old fashioned. Instead, let's use the - interactive command to scaffold it for us! -

-

- The command we are using is the - php hyde make:post command, which gives - asks us for input and then generates the boring - stuff for us. -

-

- Here is what the output looks like: ![Screenshot of - command output](../media/Screenshot 2022-03-25 - 222236-min.png) -

-

- Let's take a look at the file that was created for - us! As you can see it is stored in the - _posts directory. A slug was - automatically created from the title and the date - was automatically parsed from the current time. -

-
1---
2title: Hello World!
3description: This will show up in the article excerpt and SEO meta tags
4category: demo
5author: Caen
6date: 2022-03-25 21:20
7---
8 
9## Write something awesome.
-

Let's rebuild the site and take a look!

-

- As you can see, the excerpt automatically shows up - in the feed on the homepage! I also added some extra - text in the Markdown section. - Screenshot of generated homepage and blog post -

-

Creating a custom Markdown page

-

- Now that we have a nice blog post, why not try our - hand at creating an about us page? -

-

- Hyde allows the creation of simple Markdown based - pages. Markdown files in the - _pages directory are automatically - compiled into static HTML. -

-

Let's try it!

-

- I'll use the command line to create the file. We - need to add a block of front matter with the page - title. -

-
1touch _pages/about-us.md
-

and add some content

-
1---
2title: About Us
3---
4 
5# This is an example of a Markdown-based static HTML page built with Hyde
6 
7Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
8tempor incididunt ut labore et dolore magna aliqua...
-

And rebuild the site:

-

- Screenshot of generated Markdown page -

-

- If you have a keen eye, you will see that a link to - the page has been added to the navigation menu! -

-

- This is all well and good, but it's getting a bit - tedious to have to go back to the terminal and rerun - the build command all the time. Wouldn't it be nice - if Hyde could automatically rebuild the site for us? - Oh, it can? Yup, Hyde has a real-time compiler that - we have to try out! -

-

- Auto-building on the fly with the real-time compiler -

-

- The real-time compiler -- let's call it - "RC" because A: it's shorter, and B: it - sounds cool -- uses a few NPM modules, so first we - should install the dependencies. Make sure you have - Node and NPM installed! -

-
1npm install
-

Next, we run the command to start the RC:

-
1npm run watch
-

- A window in your default browser should now open up - automatically. If not, just navigate to - http://localhost:3000/! -

-

- Let's go back to our blog post and change the text. - Once you hit save the site will automatically - rebuild and the browser window will be updated - without you even having to reload! It's a bit hard - to illustrate this behaviour in text, so be sure to - try it out yourself! -

-

Let's create a Blade Page!

-

- I'm getting a bit bored of the Markdown About Us - page we created earlier. Let's swap it out with a - page based on a Blade view! -

-

- Creating Blade pages is similar to creating Markdown - pages, but instead of saving a Markdown file in the - _posts directory we create a file - ending in .blade.php in the - resources/views/pages directory. -

-

Let's create the file using the CLI.

-
1touch resources/views/pages/about-us.blade.php
-
-

- By the way, this is the same directory where we - have the index.blade.php file which is the - homepage file. -

-
-

- Blade files take precedence over Markdown files as - they are compiled later in the build process, so if - you go to the about-us.html you should see a blank - page. -

-

- When writing Blade pages you have a few options - since we can utilize the full power Laravel brings - us. If you want you can skip using Blade and just - write pure HTML (like the welcome page), or you can - use Blade templates and components (like the post - feed page). I'm going to extend the default layout - so Hyde can automatically inject the proper - stylesheets etc. Feel free to use the code below to - kickstart creating your custom Blade page! -

-
1@extends('hyde::layouts.app')
2@section('content')
3@php($title = "My Custom Title") {{-- This is optional, but lets us set the page title --}}
4 
5// Place content here
6 
7@endsection
-

- I'll be uploading this tutorial repo to GitHub so - you can take a look at the Blade page. I'm renaming - it to blade.blade.php though. -

-

Document the documentation!

-

- Documentation is important! If a feature is not - documented, it does not exist! "But writing - documentation is soooo boring" you might say, - and to that, I say, "not with Hyde!" -

-

- You heard me! Writing documentation is fun again! - Best of all? It is dead simple. -

-

- The Hyde Docgen module is based on Laradocgen and - automagically turns Markdown pages into - documentation pages. They are what powers the Hyde - documentation site! -

-

- Creating documentation pages are a piece of cake. We - start by creating a file following the format of - kebab-case-version-of-the-title.md in the - _docs directory. -

-
1echo "# Hello World!" > _docs/hello-world.md
-

- We can now take a look at - http://localhost:3000/docs/hello-world.html - where we should have a nice page waiting for us! -

-

- The sidebar will like magic be populated with all - the documentation pages. The page titles in the - sidebar are generated from the filename, and the - HTML page title is inferred from the first H1 tag. -

-

- Wanna know another cool thing? If you create a file - in the _docs directory named index.md - or readme.md a link labelled docs linking to it will - be added automatically to the main navigation menu! -

-

- And if you create an index.md file here, which is - recommended, it will be not be shown as a link in - the sidebar but instead, the header in the sidebar - will link to it. -

-
-

- In the Hyde documentation site I am using the - project readme as the index.md file -

-
-

Adding Torchlight Syntax Highlighting

-

- Our documentation is cool and all that, but I want - to add lots of code examples, but they look so - boring without syntax highlighting... -

-

- Screenshot of the documentation page with no syntax highlighting -

-

- Hyde has built-in support for one of my favourite - packages, Torchlight, which is free for open source - and non-commercial projects and requires an - attribution link, which Hyde injects automatically - on pages that use Torchlight! -

-

- To get started you need an API token from Torchlight - which you can get for free on their website: - https://torchlight.dev/ -

-

- Once you have the token you need to set it in your - dotenv file. If you don't have one you can copy the - example file supplied with the project using this - command (or by renaming/copying it manually) -

-
1cp .env.example .env
-

- Then in the .env file, add your API token like so: -

-
1TORCHLIGHT_TOKEN=torch_abcdefg123
-

- Adding the token makes Hyde automatically enable the - Torchlight extension. -

-

- Now when we run the build command you will notice it - takes a bit longer, especially the first time, but - no sweat because we got ourselves some beautiful - code blocks! -

-

- Screenshot of the documentation page with syntax highlighting -

-

Conclusion

-

- I think that brings this tutorial to a close. Tweet - any questions you have at me on - @StressedDev -

-

- Please share this post if you found it useful, and - let me know if you want a part 2 where I dig in - deeper and show how to customize your new site! -

-

- I'll be uploading the code created in this tutorial - to - https://github.com/caendesilva/demo-hyde-tutorial-example-project -

-

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
-
- - - - diff --git a/_site/posts/creating-a-static-html-post-using-hydephp.html b/_site/posts/creating-a-static-html-post-using-hydephp.html deleted file mode 100644 index e2c50a3..0000000 --- a/_site/posts/creating-a-static-html-post-using-hydephp.html +++ /dev/null @@ -1,290 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - HydePHP - Creating a static HTML post using HydePHP - - - - - - - - - - - - - - - - - -
-
-
- - -
-

- Creating a static HTML post using HydePHP -

-
- Posted - - by author -
- Caen -
- in the category "tutorials" -
-
-
-
-

- This tutorial assumes you have already setup - HydePHP. -

-
-

- We will be using the make command to scaffold our - file. In your favourite terminal, navigate to your - project directory and run the command. -

-
1php hyde make:post
-

We should now get the following output:

-
1Creating a new post!
2 
3Please enter the title of the post, it will be used to generate the slug.
4 
5What is the title of the post?:
6>
-

Let's fill in the title we want and hit enter.

-

- Next, we will be asked to fill in some meta - information. These are not required and you can just - hit return to use the defaults, though they will - make the post look nice so we will add them here! -

-
1What is the title of the post?:
2 > Creating a static HTML post using HydePHP
3 
4Tip: You can just hit enter to use the defaults.
5 
6Write a short post excerpt/description:
7 > In this tutorial we go through the simple process of generating a static blog post
8 
9What is your (the authors) name?:
10 > Caen
11 
12What is the primary category of the post?:
13 > tutorials
-

- Next, we will be given a preview of what the post - will look like. If something does not look write we - can write no to abort. But for now, we - will hit enter to use the preselected - yes option. -

-
1Creating a post with the following details:
2Title: Creating a static HTML post using HydePHP
3Description: In this tutorial, we go through the simple process of generating a static blog post
4Author: Caen
5Category: tutorials
6Date: 2022-03-19 16:19
7Slug: creating-a-static-html-post-using-hydephp
8 
9Do you wish to continue? (yes/no) [yes]:
10 > yes
11 
12Post created! File is saved to /dev/HydeDocs/_posts/creating-a-static-html-post-using-hydephp.md
-

- Awesome! As you can see the current date has - automatically been injected using the proper format. - A slug has also been generated. -

-

- We can also use the outputted file path to open the - Markdown file in our text editor. I'm using VSCode. -

-

- This is the contents of the file. The title has also - been filled in for us. -

-
1---
2title: Creating a static HTML post using HydePHP
3description: In this tutorial, we go through the simple process of generating a static blog post
4category: tutorials
5author: Caen
6date: 2022-03-19 16:19
7slug: creating-a-static-html-post-using-hydephp
8---
9 
10# Creating a static HTML post using HydePHP
-

- Now that we have the file, let's fill in the post - with actual content and then we can build the site! -

-

- If this is the first time you are building the site - you may need to compile the frontend assets using - NPM. If you don't have NPM you can download the - files from the latest GitHub release and add them to - the _site directory. -

-
1npm install
2npm run dev
-

And then we build the site with

-
1php hyde build
-

- We can now open up the created file with is saved in - _site/posts/creating-a-static-html-post-using-hydephp.html! -

-

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
-
- - - - diff --git a/_site/posts/why-static-sites.html b/_site/posts/why-static-sites.html deleted file mode 100644 index 7adbeab..0000000 --- a/_site/posts/why-static-sites.html +++ /dev/null @@ -1,277 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - HydePHP - Why static sites? - - - - - - - - - - - - - - - - - -
-
-
- - -
-

- Why static sites? -

-
- Posted - - by author -
- Caen -
- in the category "general" -
-
-
-

- At this point, you may be wondering: "Why use static - sites?"
- Here is a rundown of my top reasons to go static. -

-

Speed, scalability, simplicity

-

- With a static site, you don't need to worry about - setting up databases. This makes the site so much - faster as you don't need to wait for a database to - process requests. By pre-compiling the sites you - also don't need to waste time and processing power - on server-side rendering which also speeds up your - site. Furthermore, it makes your site incredibly - scalable as you don't need to worry about keeping - replica databases in sync. -

-

- You can even serve the site from global CDNs on the - Edge for amazing speed. -

-

Security, stability, and cost

-

- You don't need to worry about keeping your database - secure since there is no database. You can also rest - easy knowing your site is stable and that you don't - need to maintain a complex backend. You can also - rest assured that there won't be any unexpected - runtime errors that are hard to find. -

-

- You can also use create a Git powered CMS to - collaborate on Markdown posts. -

-

- Static web hosting has become incredibly cheap, to - the point where dozens of companies offer free - hosting. -

-

Conclusion

-

- Are you ready to go static? Why not give HydePHP a - spin! That's what this blog uses. It's stupidly - simple, endlessly hackable, and in my opinion: - totally awesome. -

-

- -> Dive in to the source code at - GitHub - -> Check out the - documentation (built - with Hyde of course) -

-

You can also create a new project using Composer:

-
1composer create-project hyde/hyde
-

- - Syntax highlighting by - Torchlight.dev - -

-
-
-
-
- - - - diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php deleted file mode 100644 index ee8ca5b..0000000 --- a/app/Providers/AppServiceProvider.php +++ /dev/null @@ -1,28 +0,0 @@ -singleton( - Illuminate\Contracts\Console\Kernel::class, - LaravelZero\Framework\Kernel::class -); - -$app->singleton( - Illuminate\Contracts\Debug\ExceptionHandler::class, - Illuminate\Foundation\Exceptions\Handler::class -); - -/* -|-------------------------------------------------------------------------- -| Return The Application -|-------------------------------------------------------------------------- -| -| This script returns the application instance. The instance is given to -| the calling script so we can separate the building of the instances -| from the actual running of the application and sending responses. -| -*/ - -return $app; diff --git a/box.json b/box.json deleted file mode 100644 index 8e07e3a..0000000 --- a/box.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "chmod": "0755", - "directories": [ - "app", - "bootstrap", - "config", - "vendor", - "src" - ], - "files": [ - "composer.json" - ], - "exclude-composer-files": false, - "compression": "GZ", - "compactors": [ - "KevinGH\\Box\\Compactor\\Php", - "KevinGH\\Box\\Compactor\\Json" - ] -} diff --git a/composer.json b/composer.json deleted file mode 100644 index bdfecde..0000000 --- a/composer.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "name": "hyde/hyde", - "description": "Static Markdown Site and Blog Generator for Developers using PHP", - "keywords": ["framework", "hyde", "hyde framework"], - "homepage": "https://github.com/hydephp/hyde", - "type": "project", - "license": "MIT", - "support": { - "issues": "https://github.com/hydephp/hyde/issues", - "source": "https://github.com/hydephp/hyde" - }, - "authors": [ - { - "name": "Caen De Silva", - "email": "caen@desilva.se" - } - ], - "require": { - "php": "^8.0", - "hyde/framework": "^0.5.2", - "illuminate/view": "^9.0", - "laminas/laminas-text": "*", - "laravel-zero/framework": "^9.0", - "nunomaduro/termwind": "^1.3", - "torchlight/torchlight-commonmark": "^0.5.5" - }, - "require-dev": { - "mockery/mockery": "^1.4.4", - "pestphp/pest": "^1.21.1" - }, - "autoload": { - "psr-4": { - "App\\": "app/", - "Database\\Factories\\": "database/factories/", - "Database\\Seeders\\": "database/seeders/" - } - }, - "autoload-dev": { - "psr-4": { - "Tests\\": "tests/" - } - }, - "config": { - "preferred-install": "dist", - "sort-packages": true, - "optimize-autoloader": true, - "allow-plugins": { - "pestphp/pest-plugin": true - } - }, - "minimum-stability": "dev", - "prefer-stable": true, - "bin": ["hyde"], - "suggest": { - "torchlight/torchlight-commonmark" : "Hyde has automatic support for the Torchlight syntax highlighting API which is highly reccomended if your site uses code snippets." - } -} diff --git a/composer.lock b/composer.lock deleted file mode 100644 index 82b18e5..0000000 --- a/composer.lock +++ /dev/null @@ -1,8434 +0,0 @@ -{ - "_readme": [ - "This file locks the dependencies of your project to a known state", - "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", - "This file is @generated automatically" - ], - "content-hash": "37f9be9ee0e61bfd5e1ac45b402a7d0a", - "packages": [ - { - "name": "brick/math", - "version": "0.9.3", - "source": { - "type": "git", - "url": "https://github.com/brick/math.git", - "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/brick/math/zipball/ca57d18f028f84f777b2168cd1911b0dee2343ae", - "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae", - "shasum": "" - }, - "require": { - "ext-json": "*", - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "php-coveralls/php-coveralls": "^2.2", - "phpunit/phpunit": "^7.5.15 || ^8.5 || ^9.0", - "vimeo/psalm": "4.9.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "Brick\\Math\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Arbitrary-precision arithmetic library", - "keywords": [ - "Arbitrary-precision", - "BigInteger", - "BigRational", - "arithmetic", - "bigdecimal", - "bignum", - "brick", - "math" - ], - "support": { - "issues": "https://github.com/brick/math/issues", - "source": "https://github.com/brick/math/tree/0.9.3" - }, - "funding": [ - { - "url": "https://github.com/BenMorel", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/brick/math", - "type": "tidelift" - } - ], - "time": "2021-08-15T20:50:18+00:00" - }, - { - "name": "container-interop/container-interop", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/container-interop/container-interop.git", - "reference": "79cbf1341c22ec75643d841642dd5d6acd83bdb8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/container-interop/container-interop/zipball/79cbf1341c22ec75643d841642dd5d6acd83bdb8", - "reference": "79cbf1341c22ec75643d841642dd5d6acd83bdb8", - "shasum": "" - }, - "require": { - "psr/container": "^1.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Interop\\Container\\": "src/Interop/Container/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Promoting the interoperability of container objects (DIC, SL, etc.)", - "homepage": "https://github.com/container-interop/container-interop", - "support": { - "issues": "https://github.com/container-interop/container-interop/issues", - "source": "https://github.com/container-interop/container-interop/tree/master" - }, - "abandoned": "psr/container", - "time": "2017-02-14T19:40:03+00:00" - }, - { - "name": "dflydev/dot-access-data", - "version": "v3.0.1", - "source": { - "type": "git", - "url": "https://github.com/dflydev/dflydev-dot-access-data.git", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", - "reference": "0992cc19268b259a39e86f296da5f0677841f42c", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^0.12.42", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", - "scrutinizer/ocular": "1.6.0", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^3.14" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Dflydev\\DotAccessData\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Dragonfly Development Inc.", - "email": "info@dflydev.com", - "homepage": "http://dflydev.com" - }, - { - "name": "Beau Simensen", - "email": "beau@dflydev.com", - "homepage": "http://beausimensen.com" - }, - { - "name": "Carlos Frutos", - "email": "carlos@kiwing.it", - "homepage": "https://github.com/cfrutos" - }, - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com" - } - ], - "description": "Given a deep data structure, access data by dot notation.", - "homepage": "https://github.com/dflydev/dflydev-dot-access-data", - "keywords": [ - "access", - "data", - "dot", - "notation" - ], - "support": { - "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", - "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" - }, - "time": "2021-08-13T13:06:58+00:00" - }, - { - "name": "doctrine/inflector", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/doctrine/inflector.git", - "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", - "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^8.2", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpstan/phpstan-strict-rules": "^0.12", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", - "vimeo/psalm": "^4.10" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", - "homepage": "https://www.doctrine-project.org/projects/inflector.html", - "keywords": [ - "inflection", - "inflector", - "lowercase", - "manipulation", - "php", - "plural", - "singular", - "strings", - "uppercase", - "words" - ], - "support": { - "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.4" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", - "type": "tidelift" - } - ], - "time": "2021-10-22T20:16:43+00:00" - }, - { - "name": "dragonmantank/cron-expression", - "version": "v3.3.1", - "source": { - "type": "git", - "url": "https://github.com/dragonmantank/cron-expression.git", - "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/be85b3f05b46c39bbc0d95f6c071ddff669510fa", - "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa", - "shasum": "" - }, - "require": { - "php": "^7.2|^8.0", - "webmozart/assert": "^1.0" - }, - "replace": { - "mtdowling/cron-expression": "^1.0" - }, - "require-dev": { - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^1.0", - "phpstan/phpstan-webmozart-assert": "^1.0", - "phpunit/phpunit": "^7.0|^8.0|^9.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Cron\\": "src/Cron/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Chris Tankersley", - "email": "chris@ctankersley.com", - "homepage": "https://github.com/dragonmantank" - } - ], - "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", - "keywords": [ - "cron", - "schedule" - ], - "support": { - "issues": "https://github.com/dragonmantank/cron-expression/issues", - "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.1" - }, - "funding": [ - { - "url": "https://github.com/dragonmantank", - "type": "github" - } - ], - "time": "2022-01-18T15:43:28+00:00" - }, - { - "name": "facade/ignition-contracts", - "version": "1.0.2", - "source": { - "type": "git", - "url": "https://github.com/facade/ignition-contracts.git", - "reference": "3c921a1cdba35b68a7f0ccffc6dffc1995b18267" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/facade/ignition-contracts/zipball/3c921a1cdba35b68a7f0ccffc6dffc1995b18267", - "reference": "3c921a1cdba35b68a7f0ccffc6dffc1995b18267", - "shasum": "" - }, - "require": { - "php": "^7.3|^8.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^v2.15.8", - "phpunit/phpunit": "^9.3.11", - "vimeo/psalm": "^3.17.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "Facade\\IgnitionContracts\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Freek Van der Herten", - "email": "freek@spatie.be", - "homepage": "https://flareapp.io", - "role": "Developer" - } - ], - "description": "Solution contracts for Ignition", - "homepage": "https://github.com/facade/ignition-contracts", - "keywords": [ - "contracts", - "flare", - "ignition" - ], - "support": { - "issues": "https://github.com/facade/ignition-contracts/issues", - "source": "https://github.com/facade/ignition-contracts/tree/1.0.2" - }, - "time": "2020-10-16T08:27:54+00:00" - }, - { - "name": "filp/whoops", - "version": "2.14.5", - "source": { - "type": "git", - "url": "https://github.com/filp/whoops.git", - "reference": "a63e5e8f26ebbebf8ed3c5c691637325512eb0dc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/a63e5e8f26ebbebf8ed3c5c691637325512eb0dc", - "reference": "a63e5e8f26ebbebf8ed3c5c691637325512eb0dc", - "shasum": "" - }, - "require": { - "php": "^5.5.9 || ^7.0 || ^8.0", - "psr/log": "^1.0.1 || ^2.0 || ^3.0" - }, - "require-dev": { - "mockery/mockery": "^0.9 || ^1.0", - "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.3", - "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0 || ^5.0" - }, - "suggest": { - "symfony/var-dumper": "Pretty print complex values better with var-dumper available", - "whoops/soap": "Formats errors as SOAP responses" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.7-dev" - } - }, - "autoload": { - "psr-4": { - "Whoops\\": "src/Whoops/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Filipe Dobreira", - "homepage": "https://github.com/filp", - "role": "Developer" - } - ], - "description": "php error handling for cool kids", - "homepage": "https://filp.github.io/whoops/", - "keywords": [ - "error", - "exception", - "handling", - "library", - "throwable", - "whoops" - ], - "support": { - "issues": "https://github.com/filp/whoops/issues", - "source": "https://github.com/filp/whoops/tree/2.14.5" - }, - "funding": [ - { - "url": "https://github.com/denis-sokolov", - "type": "github" - } - ], - "time": "2022-01-07T12:00:00+00:00" - }, - { - "name": "fruitcake/php-cors", - "version": "v1.2.0", - "source": { - "type": "git", - "url": "https://github.com/fruitcake/php-cors.git", - "reference": "58571acbaa5f9f462c9c77e911700ac66f446d4e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fruitcake/php-cors/zipball/58571acbaa5f9f462c9c77e911700ac66f446d4e", - "reference": "58571acbaa5f9f462c9c77e911700ac66f446d4e", - "shasum": "" - }, - "require": { - "php": "^7.4|^8.0", - "symfony/http-foundation": "^4.4|^5.4|^6" - }, - "require-dev": { - "phpstan/phpstan": "^1.4", - "phpunit/phpunit": "^9", - "squizlabs/php_codesniffer": "^3.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.1-dev" - } - }, - "autoload": { - "psr-4": { - "Fruitcake\\Cors\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fruitcake", - "homepage": "https://fruitcake.nl" - }, - { - "name": "Barryvdh", - "email": "barryvdh@gmail.com" - } - ], - "description": "Cross-origin resource sharing library for the Symfony HttpFoundation", - "homepage": "https://github.com/fruitcake/php-cors", - "keywords": [ - "cors", - "laravel", - "symfony" - ], - "support": { - "issues": "https://github.com/fruitcake/php-cors/issues", - "source": "https://github.com/fruitcake/php-cors/tree/v1.2.0" - }, - "funding": [ - { - "url": "https://fruitcake.nl", - "type": "custom" - }, - { - "url": "https://github.com/barryvdh", - "type": "github" - } - ], - "time": "2022-02-20T15:07:15+00:00" - }, - { - "name": "graham-campbell/result-type", - "version": "v1.0.4", - "source": { - "type": "git", - "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "0690bde05318336c7221785f2a932467f98b64ca" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/0690bde05318336c7221785f2a932467f98b64ca", - "reference": "0690bde05318336c7221785f2a932467f98b64ca", - "shasum": "" - }, - "require": { - "php": "^7.0 || ^8.0", - "phpoption/phpoption": "^1.8" - }, - "require-dev": { - "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" - }, - "type": "library", - "autoload": { - "psr-4": { - "GrahamCampbell\\ResultType\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - } - ], - "description": "An Implementation Of The Result Type", - "keywords": [ - "Graham Campbell", - "GrahamCampbell", - "Result Type", - "Result-Type", - "result" - ], - "support": { - "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.4" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", - "type": "tidelift" - } - ], - "time": "2021-11-21T21:41:47+00:00" - }, - { - "name": "guzzlehttp/guzzle", - "version": "7.4.2", - "source": { - "type": "git", - "url": "https://github.com/guzzle/guzzle.git", - "reference": "ac1ec1cd9b5624694c3a40be801d94137afb12b4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ac1ec1cd9b5624694c3a40be801d94137afb12b4", - "reference": "ac1ec1cd9b5624694c3a40be801d94137afb12b4", - "shasum": "" - }, - "require": { - "ext-json": "*", - "guzzlehttp/promises": "^1.5", - "guzzlehttp/psr7": "^1.8.3 || ^2.1", - "php": "^7.2.5 || ^8.0", - "psr/http-client": "^1.0", - "symfony/deprecation-contracts": "^2.2 || ^3.0" - }, - "provide": { - "psr/http-client-implementation": "1.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "ext-curl": "*", - "php-http/client-integration-tests": "^3.0", - "phpunit/phpunit": "^8.5.5 || ^9.3.5", - "psr/log": "^1.1 || ^2.0 || ^3.0" - }, - "suggest": { - "ext-curl": "Required for CURL handler support", - "ext-intl": "Required for Internationalized Domain Name (IDN) support", - "psr/log": "Required for using the Log middleware" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "7.4-dev" - } - }, - "autoload": { - "files": [ - "src/functions_include.php" - ], - "psr-4": { - "GuzzleHttp\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "Jeremy Lindblom", - "email": "jeremeamia@gmail.com", - "homepage": "https://github.com/jeremeamia" - }, - { - "name": "George Mponos", - "email": "gmponos@gmail.com", - "homepage": "https://github.com/gmponos" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - }, - { - "name": "MÃĄrk SÃĄgi-KazÃĄr", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://github.com/sagikazarmark" - }, - { - "name": "Tobias Schultze", - "email": "webmaster@tubo-world.de", - "homepage": "https://github.com/Tobion" - } - ], - "description": "Guzzle is a PHP HTTP client library", - "keywords": [ - "client", - "curl", - "framework", - "http", - "http client", - "psr-18", - "psr-7", - "rest", - "web service" - ], - "support": { - "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.4.2" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", - "type": "tidelift" - } - ], - "time": "2022-03-20T14:16:28+00:00" - }, - { - "name": "guzzlehttp/promises", - "version": "1.5.1", - "source": { - "type": "git", - "url": "https://github.com/guzzle/promises.git", - "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/fe752aedc9fd8fcca3fe7ad05d419d32998a06da", - "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da", - "shasum": "" - }, - "require": { - "php": ">=5.5" - }, - "require-dev": { - "symfony/phpunit-bridge": "^4.4 || ^5.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.5-dev" - } - }, - "autoload": { - "files": [ - "src/functions_include.php" - ], - "psr-4": { - "GuzzleHttp\\Promise\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - }, - { - "name": "Tobias Schultze", - "email": "webmaster@tubo-world.de", - "homepage": "https://github.com/Tobion" - } - ], - "description": "Guzzle promises library", - "keywords": [ - "promise" - ], - "support": { - "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.1" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", - "type": "tidelift" - } - ], - "time": "2021-10-22T20:56:57+00:00" - }, - { - "name": "guzzlehttp/psr7", - "version": "2.2.1", - "source": { - "type": "git", - "url": "https://github.com/guzzle/psr7.git", - "reference": "c94a94f120803a18554c1805ef2e539f8285f9a2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/c94a94f120803a18554c1805ef2e539f8285f9a2", - "reference": "c94a94f120803a18554c1805ef2e539f8285f9a2", - "shasum": "" - }, - "require": { - "php": "^7.2.5 || ^8.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "ralouphie/getallheaders": "^3.0" - }, - "provide": { - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.8 || ^9.3.10" - }, - "suggest": { - "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev" - } - }, - "autoload": { - "psr-4": { - "GuzzleHttp\\Psr7\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "George Mponos", - "email": "gmponos@gmail.com", - "homepage": "https://github.com/gmponos" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - }, - { - "name": "MÃĄrk SÃĄgi-KazÃĄr", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://github.com/sagikazarmark" - }, - { - "name": "Tobias Schultze", - "email": "webmaster@tubo-world.de", - "homepage": "https://github.com/Tobion" - }, - { - "name": "MÃĄrk SÃĄgi-KazÃĄr", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://sagikazarmark.hu" - } - ], - "description": "PSR-7 message implementation that also provides common utility methods", - "keywords": [ - "http", - "message", - "psr-7", - "request", - "response", - "stream", - "uri", - "url" - ], - "support": { - "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.2.1" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", - "type": "tidelift" - } - ], - "time": "2022-03-20T21:55:58+00:00" - }, - { - "name": "hyde/framework", - "version": "v0.5.2-alpha", - "source": { - "type": "git", - "url": "https://github.com/hydephp/framework.git", - "reference": "bcfde31152b2b790f8d3dc73d1885babeb07047e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/hydephp/framework/zipball/bcfde31152b2b790f8d3dc73d1885babeb07047e", - "reference": "bcfde31152b2b790f8d3dc73d1885babeb07047e", - "shasum": "" - }, - "require": { - "illuminate/support": "^9.5", - "laravel-zero/framework": "^9.1", - "league/commonmark": "^2.2", - "php": "^8.0", - "symfony/yaml": "^6.0" - }, - "suggest": { - "hyde/hyde": "The Framework package contains the Hyde Core. To create your site you should use the Hyde/Hyde project.", - "torchlight/torchlight-commonmark": "Hyde has automatic support for the Torchlight syntax highlighting API which is highly reccomended if your site uses code snippets." - }, - "type": "library", - "autoload": { - "psr-4": { - "Hyde\\Framework\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Caen De Silva", - "email": "caen@desilva.se" - } - ], - "description": "The HydePHP Framework", - "support": { - "issues": "https://github.com/hydephp/framework/issues", - "source": "https://github.com/hydephp/framework/tree/v0.5.2-alpha" - }, - "time": "2022-03-25T16:51:51+00:00" - }, - { - "name": "illuminate/bus", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/bus.git", - "reference": "924deabbfa8a4e6c02b7fade5e3f5c805b8920eb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/bus/zipball/924deabbfa8a4e6c02b7fade5e3f5c805b8920eb", - "reference": "924deabbfa8a4e6c02b7fade5e3f5c805b8920eb", - "shasum": "" - }, - "require": { - "illuminate/collections": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/pipeline": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2" - }, - "suggest": { - "illuminate/queue": "Required to use closures when chaining jobs (^7.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Bus\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Bus package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-08T16:13:29+00:00" - }, - { - "name": "illuminate/cache", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/cache.git", - "reference": "437f9ce75db9b1dfdf348099a379d1599ef06dd1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/cache/zipball/437f9ce75db9b1dfdf348099a379d1599ef06dd1", - "reference": "437f9ce75db9b1dfdf348099a379d1599ef06dd1", - "shasum": "" - }, - "require": { - "illuminate/collections": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/macroable": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2" - }, - "provide": { - "psr/simple-cache-implementation": "1.0|2.0|3.0" - }, - "suggest": { - "ext-memcached": "Required to use the memcache cache driver.", - "illuminate/database": "Required to use the database cache driver (^9.0).", - "illuminate/filesystem": "Required to use the file cache driver (^9.0).", - "illuminate/redis": "Required to use the redis cache driver (^9.0).", - "symfony/cache": "Required to use PSR-6 cache bridge (^6.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Cache\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Cache package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-13T15:29:06+00:00" - }, - { - "name": "illuminate/collections", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/collections.git", - "reference": "3cc51aa2a03a4c3bd4995e64e00ca795f65cb9c2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/collections/zipball/3cc51aa2a03a4c3bd4995e64e00ca795f65cb9c2", - "reference": "3cc51aa2a03a4c3bd4995e64e00ca795f65cb9c2", - "shasum": "" - }, - "require": { - "illuminate/conditionable": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/macroable": "^9.0", - "php": "^8.0.2" - }, - "suggest": { - "symfony/var-dumper": "Required to use the dump method (^6.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "files": [ - "helpers.php" - ], - "psr-4": { - "Illuminate\\Support\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Collections package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-15T13:34:43+00:00" - }, - { - "name": "illuminate/conditionable", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/conditionable.git", - "reference": "56b4ba1166c264064bf63896f498a2bee320d16a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/conditionable/zipball/56b4ba1166c264064bf63896f498a2bee320d16a", - "reference": "56b4ba1166c264064bf63896f498a2bee320d16a", - "shasum": "" - }, - "require": { - "php": "^8.0.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Support\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Conditionable package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-02-28T16:37:46+00:00" - }, - { - "name": "illuminate/config", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/config.git", - "reference": "d2dc74fdcc89239e1910a8d08b2b2e5ad26a043c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/config/zipball/d2dc74fdcc89239e1910a8d08b2b2e5ad26a043c", - "reference": "d2dc74fdcc89239e1910a8d08b2b2e5ad26a043c", - "shasum": "" - }, - "require": { - "illuminate/collections": "^9.0", - "illuminate/contracts": "^9.0", - "php": "^8.0.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Config\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Config package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-02-01T16:16:50+00:00" - }, - { - "name": "illuminate/console", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/console.git", - "reference": "fc9218f41230daba46acfe24201dceb75b9c68dc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/console/zipball/fc9218f41230daba46acfe24201dceb75b9c68dc", - "reference": "fc9218f41230daba46acfe24201dceb75b9c68dc", - "shasum": "" - }, - "require": { - "illuminate/collections": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/macroable": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2", - "symfony/console": "^6.0", - "symfony/process": "^6.0" - }, - "suggest": { - "dragonmantank/cron-expression": "Required to use scheduler (^3.1).", - "guzzlehttp/guzzle": "Required to use the ping methods on schedules (^7.2).", - "illuminate/bus": "Required to use the scheduled job dispatcher (^9.0).", - "illuminate/container": "Required to use the scheduler (^9.0).", - "illuminate/filesystem": "Required to use the generator command (^9.0).", - "illuminate/queue": "Required to use closures for scheduled jobs (^9.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Console\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Console package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-12T01:22:40+00:00" - }, - { - "name": "illuminate/container", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/container.git", - "reference": "66f9049b19fb34e74134c6eeff92a442cee068e5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/container/zipball/66f9049b19fb34e74134c6eeff92a442cee068e5", - "reference": "66f9049b19fb34e74134c6eeff92a442cee068e5", - "shasum": "" - }, - "require": { - "illuminate/contracts": "^9.0", - "php": "^8.0.2", - "psr/container": "^1.1.1|^2.0.1" - }, - "provide": { - "psr/container-implementation": "1.1|2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Container\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Container package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-03T14:08:19+00:00" - }, - { - "name": "illuminate/contracts", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/contracts.git", - "reference": "7ef269f27f8ac0e1d0217a28ff5544ea8bbd0fee" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/contracts/zipball/7ef269f27f8ac0e1d0217a28ff5544ea8bbd0fee", - "reference": "7ef269f27f8ac0e1d0217a28ff5544ea8bbd0fee", - "shasum": "" - }, - "require": { - "php": "^8.0.2", - "psr/container": "^1.1.1|^2.0.1", - "psr/simple-cache": "^1.0|^2.0|^3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Contracts\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Contracts package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-12T17:02:05+00:00" - }, - { - "name": "illuminate/events", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/events.git", - "reference": "1a8cd0108eace85f13509ccff9b23857aae39acf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/events/zipball/1a8cd0108eace85f13509ccff9b23857aae39acf", - "reference": "1a8cd0108eace85f13509ccff9b23857aae39acf", - "shasum": "" - }, - "require": { - "illuminate/bus": "^9.0", - "illuminate/collections": "^9.0", - "illuminate/container": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/macroable": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "files": [ - "functions.php" - ], - "psr-4": { - "Illuminate\\Events\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Events package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-02-24T15:12:59+00:00" - }, - { - "name": "illuminate/filesystem", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/filesystem.git", - "reference": "19c684d67822eff42b7e80b5fa9d3fd21406e3a1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/filesystem/zipball/19c684d67822eff42b7e80b5fa9d3fd21406e3a1", - "reference": "19c684d67822eff42b7e80b5fa9d3fd21406e3a1", - "shasum": "" - }, - "require": { - "illuminate/collections": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/macroable": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2", - "symfony/finder": "^6.0" - }, - "suggest": { - "ext-ftp": "Required to use the Flysystem FTP driver.", - "illuminate/http": "Required for handling uploaded files (^7.0).", - "league/flysystem": "Required to use the Flysystem local driver (^3.0).", - "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).", - "league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).", - "league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).", - "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", - "symfony/filesystem": "Required to enable support for relative symbolic links (^6.0).", - "symfony/mime": "Required to enable support for guessing extensions (^6.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Filesystem\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Filesystem package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-09T16:45:22+00:00" - }, - { - "name": "illuminate/http", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/http.git", - "reference": "bf66c3cfa50a52168272660d5b49f55e85723d52" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/http/zipball/bf66c3cfa50a52168272660d5b49f55e85723d52", - "reference": "bf66c3cfa50a52168272660d5b49f55e85723d52", - "shasum": "" - }, - "require": { - "ext-json": "*", - "fruitcake/php-cors": "^1.2", - "illuminate/collections": "^9.0", - "illuminate/macroable": "^9.0", - "illuminate/session": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2", - "symfony/http-foundation": "^6.0", - "symfony/http-kernel": "^6.0", - "symfony/mime": "^6.0" - }, - "suggest": { - "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", - "guzzlehttp/guzzle": "Required to use the HTTP Client (^7.2)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Http\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Http package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-15T13:39:41+00:00" - }, - { - "name": "illuminate/macroable", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/macroable.git", - "reference": "25a2c6dac2b7541ecbadef952702e84ae15f5354" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/macroable/zipball/25a2c6dac2b7541ecbadef952702e84ae15f5354", - "reference": "25a2c6dac2b7541ecbadef952702e84ae15f5354", - "shasum": "" - }, - "require": { - "php": "^8.0.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Support\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Macroable package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-02-01T14:44:21+00:00" - }, - { - "name": "illuminate/pipeline", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/pipeline.git", - "reference": "6d448699cc440cfe7696d65c62313ef2a02961b1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/pipeline/zipball/6d448699cc440cfe7696d65c62313ef2a02961b1", - "reference": "6d448699cc440cfe7696d65c62313ef2a02961b1", - "shasum": "" - }, - "require": { - "illuminate/contracts": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Pipeline\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Pipeline package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-02-28T17:10:42+00:00" - }, - { - "name": "illuminate/session", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/session.git", - "reference": "bd033c35c1f5b65dc3d76b62c09a6f02a880055d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/session/zipball/bd033c35c1f5b65dc3d76b62c09a6f02a880055d", - "reference": "bd033c35c1f5b65dc3d76b62c09a6f02a880055d", - "shasum": "" - }, - "require": { - "ext-json": "*", - "illuminate/collections": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/filesystem": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2", - "symfony/finder": "^6.0", - "symfony/http-foundation": "^6.0" - }, - "suggest": { - "illuminate/console": "Required to use the session:table command (^9.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Session\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Session package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-13T15:24:44+00:00" - }, - { - "name": "illuminate/support", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/support.git", - "reference": "fe167872090bd70ec8f9c26ebd81979dc44da167" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/support/zipball/fe167872090bd70ec8f9c26ebd81979dc44da167", - "reference": "fe167872090bd70ec8f9c26ebd81979dc44da167", - "shasum": "" - }, - "require": { - "doctrine/inflector": "^2.0", - "ext-json": "*", - "ext-mbstring": "*", - "illuminate/collections": "^9.0", - "illuminate/conditionable": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/macroable": "^9.0", - "nesbot/carbon": "^2.53.1", - "php": "^8.0.2", - "voku/portable-ascii": "^2.0" - }, - "conflict": { - "tightenco/collect": "<5.5.33" - }, - "suggest": { - "illuminate/filesystem": "Required to use the composer class (^9.0).", - "league/commonmark": "Required to use Str::markdown() and Stringable::markdown() (^2.0.2).", - "ramsey/uuid": "Required to use Str::uuid() (^4.2.2).", - "symfony/process": "Required to use the composer class (^6.0).", - "symfony/var-dumper": "Required to use the dd function (^6.0).", - "vlucas/phpdotenv": "Required to use the Env class and env helper (^5.4.1)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "files": [ - "helpers.php" - ], - "psr-4": { - "Illuminate\\Support\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Support package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-13T14:56:16+00:00" - }, - { - "name": "illuminate/testing", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/testing.git", - "reference": "6ab2af45e3093776c5d755d7c41f3349646049f8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/testing/zipball/6ab2af45e3093776c5d755d7c41f3349646049f8", - "reference": "6ab2af45e3093776c5d755d7c41f3349646049f8", - "shasum": "" - }, - "require": { - "illuminate/collections": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/macroable": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2" - }, - "suggest": { - "brianium/paratest": "Required to run tests in parallel (^6.0).", - "illuminate/console": "Required to assert console commands (^9.0).", - "illuminate/database": "Required to assert databases (^9.0).", - "illuminate/http": "Required to assert responses (^9.0).", - "mockery/mockery": "Required to use mocking (^1.4.4).", - "phpunit/phpunit": "Required to use assertions and run tests (^9.5.8)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\Testing\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate Testing package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-11T22:45:20+00:00" - }, - { - "name": "illuminate/view", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/illuminate/view.git", - "reference": "23682eb8ffcba98a7d9c73812cea7f1557b6e1a3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/illuminate/view/zipball/23682eb8ffcba98a7d9c73812cea7f1557b6e1a3", - "reference": "23682eb8ffcba98a7d9c73812cea7f1557b6e1a3", - "shasum": "" - }, - "require": { - "ext-json": "*", - "illuminate/collections": "^9.0", - "illuminate/container": "^9.0", - "illuminate/contracts": "^9.0", - "illuminate/events": "^9.0", - "illuminate/filesystem": "^9.0", - "illuminate/macroable": "^9.0", - "illuminate/support": "^9.0", - "php": "^8.0.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "Illuminate\\View\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Illuminate View package.", - "homepage": "https://laravel.com", - "support": { - "issues": "https://github.com/laravel/framework/issues", - "source": "https://github.com/laravel/framework" - }, - "time": "2022-03-12T17:02:05+00:00" - }, - { - "name": "jolicode/jolinotif", - "version": "v2.4.0", - "source": { - "type": "git", - "url": "https://github.com/jolicode/JoliNotif.git", - "reference": "a15bfc0d5aef432f150385924ede4e099643edb7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/jolicode/JoliNotif/zipball/a15bfc0d5aef432f150385924ede4e099643edb7", - "reference": "a15bfc0d5aef432f150385924ede4e099643edb7", - "shasum": "" - }, - "require": { - "php": ">=7.4", - "symfony/process": "^4.0|^5.0|^6.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^3.0", - "symfony/finder": "^5.0", - "symfony/phpunit-bridge": "^5.0" - }, - "bin": [ - "jolinotif" - ], - "type": "library", - "autoload": { - "psr-4": { - "Joli\\JoliNotif\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Loïck Piera", - "email": "pyrech@gmail.com" - } - ], - "description": "Send desktop notifications on Windows, Linux, MacOS.", - "keywords": [ - "MAC", - "growl", - "linux", - "notification", - "windows" - ], - "support": { - "issues": "https://github.com/jolicode/JoliNotif/issues", - "source": "https://github.com/jolicode/JoliNotif/tree/v2.4.0" - }, - "funding": [ - { - "url": "https://tidelift.com/funding/github/packagist/jolicode/jolinotif", - "type": "tidelift" - } - ], - "time": "2021-12-01T16:20:42+00:00" - }, - { - "name": "laminas/laminas-servicemanager", - "version": "3.10.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-servicemanager.git", - "reference": "e52b985909e0940bf22d34f322eb3f48bbef6bd1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/e52b985909e0940bf22d34f322eb3f48bbef6bd1", - "reference": "e52b985909e0940bf22d34f322eb3f48bbef6bd1", - "shasum": "" - }, - "require": { - "container-interop/container-interop": "^1.2", - "laminas/laminas-stdlib": "^3.2.1", - "php": "~7.4.0 || ~8.0.0 || ~8.1.0", - "psr/container": "^1.0" - }, - "conflict": { - "laminas/laminas-code": "<3.3.1", - "zendframework/zend-code": "<3.3.1", - "zendframework/zend-servicemanager": "*" - }, - "provide": { - "container-interop/container-interop-implementation": "^1.2", - "psr/container-implementation": "^1.0" - }, - "require-dev": { - "composer/package-versions-deprecated": "^1.0", - "laminas/laminas-coding-standard": "~2.2.1", - "laminas/laminas-container-config-test": "^0.3", - "laminas/laminas-dependency-plugin": "^2.1.2", - "mikey179/vfsstream": "^1.6.10@alpha", - "ocramius/proxy-manager": "^2.11", - "phpbench/phpbench": "^1.1", - "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.5.5", - "psalm/plugin-phpunit": "^0.16.1", - "vimeo/psalm": "^4.8" - }, - "suggest": { - "ocramius/proxy-manager": "ProxyManager ^2.1.1 to handle lazy initialization of services" - }, - "bin": [ - "bin/generate-deps-for-config-factory", - "bin/generate-factory-for-class" - ], - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\ServiceManager\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Factory-Driven Dependency Injection Container", - "homepage": "https://laminas.dev", - "keywords": [ - "PSR-11", - "dependency-injection", - "di", - "dic", - "laminas", - "service-manager", - "servicemanager" - ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-servicemanager/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-servicemanager/issues", - "rss": "https://github.com/laminas/laminas-servicemanager/releases.atom", - "source": "https://github.com/laminas/laminas-servicemanager" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-09-18T20:19:36+00:00" - }, - { - "name": "laminas/laminas-stdlib", - "version": "3.7.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-stdlib.git", - "reference": "bcd869e2fe88d567800057c1434f2380354fe325" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-stdlib/zipball/bcd869e2fe88d567800057c1434f2380354fe325", - "reference": "bcd869e2fe88d567800057c1434f2380354fe325", - "shasum": "" - }, - "require": { - "php": "^7.3 || ~8.0.0 || ~8.1.0" - }, - "conflict": { - "zendframework/zend-stdlib": "*" - }, - "require-dev": { - "laminas/laminas-coding-standard": "~2.3.0", - "phpbench/phpbench": "^1.0", - "phpunit/phpunit": "^9.3.7", - "psalm/plugin-phpunit": "^0.16.0", - "vimeo/psalm": "^4.7" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Stdlib\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "SPL extensions, array utilities, error handlers, and more", - "homepage": "https://laminas.dev", - "keywords": [ - "laminas", - "stdlib" - ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-stdlib/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-stdlib/issues", - "rss": "https://github.com/laminas/laminas-stdlib/releases.atom", - "source": "https://github.com/laminas/laminas-stdlib" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2022-01-21T15:50:46+00:00" - }, - { - "name": "laminas/laminas-text", - "version": "2.9.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-text.git", - "reference": "8879e75d03e09b0d6787e6680cfa255afd4645a7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-text/zipball/8879e75d03e09b0d6787e6680cfa255afd4645a7", - "reference": "8879e75d03e09b0d6787e6680cfa255afd4645a7", - "shasum": "" - }, - "require": { - "laminas/laminas-servicemanager": "^3.4", - "laminas/laminas-stdlib": "^3.6", - "php": "^7.3 || ~8.0.0 || ~8.1.0" - }, - "conflict": { - "zendframework/zend-text": "*" - }, - "require-dev": { - "laminas/laminas-coding-standard": "~1.0.0", - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\Text\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Create FIGlets and text-based tables", - "homepage": "https://laminas.dev", - "keywords": [ - "laminas", - "text" - ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-text/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-text/issues", - "rss": "https://github.com/laminas/laminas-text/releases.atom", - "source": "https://github.com/laminas/laminas-text" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-09-02T16:50:53+00:00" - }, - { - "name": "laravel-zero/foundation", - "version": "v9.5.1", - "source": { - "type": "git", - "url": "https://github.com/laravel-zero/foundation.git", - "reference": "88f6f9e828294949b6c56f07e9046c8e98eb62c9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel-zero/foundation/zipball/88f6f9e828294949b6c56f07e9046c8e98eb62c9", - "reference": "88f6f9e828294949b6c56f07e9046c8e98eb62c9", - "shasum": "" - }, - "require": { - "php": "^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "9.x-dev" - } - }, - "autoload": { - "files": [ - "src/Illuminate/Foundation/helpers.php" - ], - "psr-4": { - "Illuminate\\": "src/Illuminate/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "This is a mirror from illuminate/foundation.", - "keywords": [ - "framework", - "laravel" - ], - "support": { - "source": "https://github.com/laravel-zero/foundation/tree/v9.5.1" - }, - "time": "2022-03-15T17:18:54+00:00" - }, - { - "name": "laravel-zero/framework", - "version": "v9.1.1", - "source": { - "type": "git", - "url": "https://github.com/laravel-zero/framework.git", - "reference": "e9bdb5e1338c4c874be9cb6c902c5fbc5a58e02e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel-zero/framework/zipball/e9bdb5e1338c4c874be9cb6c902c5fbc5a58e02e", - "reference": "e9bdb5e1338c4c874be9cb6c902c5fbc5a58e02e", - "shasum": "" - }, - "require": { - "dragonmantank/cron-expression": "^3.2.4", - "ext-json": "*", - "illuminate/cache": "^9.0.0", - "illuminate/collections": "^9.0.0", - "illuminate/config": "^9.0.0", - "illuminate/console": "^9.0.0", - "illuminate/container": "^9.0.0", - "illuminate/contracts": "^9.0.0", - "illuminate/events": "^9.0.0", - "illuminate/filesystem": "^9.0.0", - "illuminate/support": "^9.0.0", - "illuminate/testing": "^9.0.0", - "laravel-zero/foundation": "^9.0.0", - "league/flysystem": "^3.0.0", - "nunomaduro/collision": "^6.0.0", - "nunomaduro/laravel-console-summary": "^1.8.0", - "nunomaduro/laravel-console-task": "^1.7.0", - "nunomaduro/laravel-desktop-notifier": "^2.6.0", - "php": "^8.0.2", - "psr/log": "^1.1.4|^2.0.0|^3.0.0", - "ramsey/uuid": "^4.2.3", - "symfony/console": "^6.0.0", - "symfony/error-handler": "^6.0.0", - "symfony/finder": "^6.0.0", - "symfony/process": "^6.0.0", - "symfony/var-dumper": "^6.0.0", - "vlucas/phpdotenv": "^5.4.1" - }, - "require-dev": { - "guzzlehttp/guzzle": "^7.4.1", - "illuminate/bus": "^9.0.0", - "illuminate/database": "^9.0.0", - "illuminate/http": "^9.0.0", - "illuminate/log": "^9.0.0", - "illuminate/queue": "^9.0.0", - "illuminate/redis": "^9.0.0", - "illuminate/view": "^9.0.0", - "laminas/laminas-text": "^2.9.0", - "laravel-zero/phar-updater": "^1.2", - "nunomaduro/laravel-console-dusk": "^1.10.0", - "nunomaduro/laravel-console-menu": "^3.3.0", - "nunomaduro/termwind": "^1.3", - "pestphp/pest": "^1.21.1", - "phpstan/phpstan": "^1.4.6" - }, - "suggest": { - "ext-pcntl": "Required to ensure that data is cleared when cancelling the build process." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.x-dev" - } - }, - "autoload": { - "psr-4": { - "LaravelZero\\Framework\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "The Laravel Zero Framework.", - "homepage": "https://laravel-zero.com", - "keywords": [ - "Laravel Zero", - "cli", - "console", - "framework", - "laravel" - ], - "support": { - "issues": "https://github.com/laravel-zero/laravel-zero/issues", - "source": "https://github.com/laravel-zero/laravel-zero" - }, - "time": "2022-03-01T15:09:55+00:00" - }, - { - "name": "league/commonmark", - "version": "2.2.3", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/commonmark.git", - "reference": "47b015bc4e50fd4438c1ffef6139a1fb65d2ab71" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/47b015bc4e50fd4438c1ffef6139a1fb65d2ab71", - "reference": "47b015bc4e50fd4438c1ffef6139a1fb65d2ab71", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "league/config": "^1.1.1", - "php": "^7.4 || ^8.0", - "psr/event-dispatcher": "^1.0", - "symfony/deprecation-contracts": "^2.1 || ^3.0", - "symfony/polyfill-php80": "^1.15" - }, - "require-dev": { - "cebe/markdown": "^1.0", - "commonmark/cmark": "0.30.0", - "commonmark/commonmark.js": "0.30.0", - "composer/package-versions-deprecated": "^1.8", - "erusev/parsedown": "^1.0", - "ext-json": "*", - "github/gfm": "0.29.0", - "michelf/php-markdown": "^1.4", - "phpstan/phpstan": "^0.12.88 || ^1.0.0", - "phpunit/phpunit": "^9.5.5", - "scrutinizer/ocular": "^1.8.1", - "symfony/finder": "^5.3", - "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", - "unleashedtech/php-coding-standard": "^3.1", - "vimeo/psalm": "^4.7.3" - }, - "suggest": { - "symfony/yaml": "v2.3+ required if using the Front Matter extension" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.3-dev" - } - }, - "autoload": { - "psr-4": { - "League\\CommonMark\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com", - "role": "Lead Developer" - } - ], - "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", - "homepage": "https://commonmark.thephpleague.com", - "keywords": [ - "commonmark", - "flavored", - "gfm", - "github", - "github-flavored", - "markdown", - "md", - "parser" - ], - "support": { - "docs": "https://commonmark.thephpleague.com/", - "forum": "https://github.com/thephpleague/commonmark/discussions", - "issues": "https://github.com/thephpleague/commonmark/issues", - "rss": "https://github.com/thephpleague/commonmark/releases.atom", - "source": "https://github.com/thephpleague/commonmark" - }, - "funding": [ - { - "url": "https://www.colinodell.com/sponsor", - "type": "custom" - }, - { - "url": "https://www.paypal.me/colinpodell/10.00", - "type": "custom" - }, - { - "url": "https://github.com/colinodell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/league/commonmark", - "type": "tidelift" - } - ], - "time": "2022-02-26T21:24:45+00:00" - }, - { - "name": "league/config", - "version": "v1.1.1", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/config.git", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", - "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", - "shasum": "" - }, - "require": { - "dflydev/dot-access-data": "^3.0.1", - "nette/schema": "^1.2", - "php": "^7.4 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^0.12.90", - "phpunit/phpunit": "^9.5.5", - "scrutinizer/ocular": "^1.8.1", - "unleashedtech/php-coding-standard": "^3.1", - "vimeo/psalm": "^4.7.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.2-dev" - } - }, - "autoload": { - "psr-4": { - "League\\Config\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Colin O'Dell", - "email": "colinodell@gmail.com", - "homepage": "https://www.colinodell.com", - "role": "Lead Developer" - } - ], - "description": "Define configuration arrays with strict schemas and access values with dot notation", - "homepage": "https://config.thephpleague.com", - "keywords": [ - "array", - "config", - "configuration", - "dot", - "dot-access", - "nested", - "schema" - ], - "support": { - "docs": "https://config.thephpleague.com/", - "issues": "https://github.com/thephpleague/config/issues", - "rss": "https://github.com/thephpleague/config/releases.atom", - "source": "https://github.com/thephpleague/config" - }, - "funding": [ - { - "url": "https://www.colinodell.com/sponsor", - "type": "custom" - }, - { - "url": "https://www.paypal.me/colinpodell/10.00", - "type": "custom" - }, - { - "url": "https://github.com/colinodell", - "type": "github" - } - ], - "time": "2021-08-14T12:15:32+00:00" - }, - { - "name": "league/flysystem", - "version": "3.0.12", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/flysystem.git", - "reference": "4744d96fb2456d9808be3ad596a2520b902996e2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/4744d96fb2456d9808be3ad596a2520b902996e2", - "reference": "4744d96fb2456d9808be3ad596a2520b902996e2", - "shasum": "" - }, - "require": { - "league/mime-type-detection": "^1.0.0", - "php": "^8.0.2" - }, - "conflict": { - "aws/aws-sdk-php": "3.209.31 || 3.210.0", - "guzzlehttp/guzzle": "<7.0", - "guzzlehttp/ringphp": "<1.1.1", - "symfony/http-client": "<5.2" - }, - "require-dev": { - "async-aws/s3": "^1.5", - "async-aws/simple-s3": "^1.0", - "aws/aws-sdk-php": "^3.198.1", - "composer/semver": "^3.0", - "ext-fileinfo": "*", - "ext-ftp": "*", - "ext-zip": "*", - "friendsofphp/php-cs-fixer": "^3.5", - "google/cloud-storage": "^1.23", - "microsoft/azure-storage-blob": "^1.1", - "phpseclib/phpseclib": "^2.0", - "phpstan/phpstan": "^0.12.26", - "phpunit/phpunit": "^9.5.11", - "sabre/dav": "^4.3.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "League\\Flysystem\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Frank de Jonge", - "email": "info@frankdejonge.nl" - } - ], - "description": "File storage abstraction for PHP", - "keywords": [ - "WebDAV", - "aws", - "cloud", - "file", - "files", - "filesystem", - "filesystems", - "ftp", - "s3", - "sftp", - "storage" - ], - "support": { - "issues": "https://github.com/thephpleague/flysystem/issues", - "source": "https://github.com/thephpleague/flysystem/tree/3.0.12" - }, - "funding": [ - { - "url": "https://offset.earth/frankdejonge", - "type": "custom" - }, - { - "url": "https://github.com/frankdejonge", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/league/flysystem", - "type": "tidelift" - } - ], - "time": "2022-03-12T19:32:12+00:00" - }, - { - "name": "league/mime-type-detection", - "version": "1.9.0", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/mime-type-detection.git", - "reference": "aa70e813a6ad3d1558fc927863d47309b4c23e69" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/mime-type-detection/zipball/aa70e813a6ad3d1558fc927863d47309b4c23e69", - "reference": "aa70e813a6ad3d1558fc927863d47309b4c23e69", - "shasum": "" - }, - "require": { - "ext-fileinfo": "*", - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^3.2", - "phpstan/phpstan": "^0.12.68", - "phpunit/phpunit": "^8.5.8 || ^9.3" - }, - "type": "library", - "autoload": { - "psr-4": { - "League\\MimeTypeDetection\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Frank de Jonge", - "email": "info@frankdejonge.nl" - } - ], - "description": "Mime-type detection for Flysystem", - "support": { - "issues": "https://github.com/thephpleague/mime-type-detection/issues", - "source": "https://github.com/thephpleague/mime-type-detection/tree/1.9.0" - }, - "funding": [ - { - "url": "https://github.com/frankdejonge", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/league/flysystem", - "type": "tidelift" - } - ], - "time": "2021-11-21T11:48:40+00:00" - }, - { - "name": "nesbot/carbon", - "version": "2.57.0", - "source": { - "type": "git", - "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "4a54375c21eea4811dbd1149fe6b246517554e78" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4a54375c21eea4811dbd1149fe6b246517554e78", - "reference": "4a54375c21eea4811dbd1149fe6b246517554e78", - "shasum": "" - }, - "require": { - "ext-json": "*", - "php": "^7.1.8 || ^8.0", - "symfony/polyfill-mbstring": "^1.0", - "symfony/polyfill-php80": "^1.16", - "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" - }, - "require-dev": { - "doctrine/dbal": "^2.0 || ^3.0", - "doctrine/orm": "^2.7", - "friendsofphp/php-cs-fixer": "^3.0", - "kylekatarnls/multi-tester": "^2.0", - "phpmd/phpmd": "^2.9", - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^0.12.54 || ^1.0", - "phpunit/phpunit": "^7.5.20 || ^8.5.14", - "squizlabs/php_codesniffer": "^3.4" - }, - "bin": [ - "bin/carbon" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-3.x": "3.x-dev", - "dev-master": "2.x-dev" - }, - "laravel": { - "providers": [ - "Carbon\\Laravel\\ServiceProvider" - ] - }, - "phpstan": { - "includes": [ - "extension.neon" - ] - } - }, - "autoload": { - "psr-4": { - "Carbon\\": "src/Carbon/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Brian Nesbitt", - "email": "brian@nesbot.com", - "homepage": "https://markido.com" - }, - { - "name": "kylekatarnls", - "homepage": "https://github.com/kylekatarnls" - } - ], - "description": "An API extension for DateTime that supports 281 different languages.", - "homepage": "https://carbon.nesbot.com", - "keywords": [ - "date", - "datetime", - "time" - ], - "support": { - "docs": "https://carbon.nesbot.com/docs", - "issues": "https://github.com/briannesbitt/Carbon/issues", - "source": "https://github.com/briannesbitt/Carbon" - }, - "funding": [ - { - "url": "https://opencollective.com/Carbon", - "type": "open_collective" - }, - { - "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon", - "type": "tidelift" - } - ], - "time": "2022-02-13T18:13:33+00:00" - }, - { - "name": "nette/schema", - "version": "v1.2.2", - "source": { - "type": "git", - "url": "https://github.com/nette/schema.git", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", - "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", - "shasum": "" - }, - "require": { - "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", - "php": ">=7.1 <8.2" - }, - "require-dev": { - "nette/tester": "^2.3 || ^2.4", - "phpstan/phpstan-nette": "^0.12", - "tracy/tracy": "^2.7" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause", - "GPL-2.0-only", - "GPL-3.0-only" - ], - "authors": [ - { - "name": "David Grudl", - "homepage": "https://davidgrudl.com" - }, - { - "name": "Nette Community", - "homepage": "https://nette.org/contributors" - } - ], - "description": "📐 Nette Schema: validating data structures against a given Schema.", - "homepage": "https://nette.org", - "keywords": [ - "config", - "nette" - ], - "support": { - "issues": "https://github.com/nette/schema/issues", - "source": "https://github.com/nette/schema/tree/v1.2.2" - }, - "time": "2021-10-15T11:40:02+00:00" - }, - { - "name": "nette/utils", - "version": "v3.2.7", - "source": { - "type": "git", - "url": "https://github.com/nette/utils.git", - "reference": "0af4e3de4df9f1543534beab255ccf459e7a2c99" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nette/utils/zipball/0af4e3de4df9f1543534beab255ccf459e7a2c99", - "reference": "0af4e3de4df9f1543534beab255ccf459e7a2c99", - "shasum": "" - }, - "require": { - "php": ">=7.2 <8.2" - }, - "conflict": { - "nette/di": "<3.0.6" - }, - "require-dev": { - "nette/tester": "~2.0", - "phpstan/phpstan": "^1.0", - "tracy/tracy": "^2.3" - }, - "suggest": { - "ext-gd": "to use Image", - "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", - "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", - "ext-json": "to use Nette\\Utils\\Json", - "ext-mbstring": "to use Strings::lower() etc...", - "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", - "ext-xml": "to use Strings::length() etc. when mbstring is not available" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.2-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause", - "GPL-2.0-only", - "GPL-3.0-only" - ], - "authors": [ - { - "name": "David Grudl", - "homepage": "https://davidgrudl.com" - }, - { - "name": "Nette Community", - "homepage": "https://nette.org/contributors" - } - ], - "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", - "homepage": "https://nette.org", - "keywords": [ - "array", - "core", - "datetime", - "images", - "json", - "nette", - "paginator", - "password", - "slugify", - "string", - "unicode", - "utf-8", - "utility", - "validation" - ], - "support": { - "issues": "https://github.com/nette/utils/issues", - "source": "https://github.com/nette/utils/tree/v3.2.7" - }, - "time": "2022-01-24T11:29:14+00:00" - }, - { - "name": "nunomaduro/collision", - "version": "v6.1.0", - "source": { - "type": "git", - "url": "https://github.com/nunomaduro/collision.git", - "reference": "df09e21a5e5d5a7d51a8b9ecd44d3dd150d97fec" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/df09e21a5e5d5a7d51a8b9ecd44d3dd150d97fec", - "reference": "df09e21a5e5d5a7d51a8b9ecd44d3dd150d97fec", - "shasum": "" - }, - "require": { - "facade/ignition-contracts": "^1.0.2", - "filp/whoops": "^2.14.5", - "php": "^8.0.0", - "symfony/console": "^6.0.2" - }, - "require-dev": { - "brianium/paratest": "^6.4.1", - "laravel/framework": "^9.0", - "nunomaduro/larastan": "^1.0.2", - "nunomaduro/mock-final-classes": "^1.1.0", - "orchestra/testbench": "^7.0.0", - "phpunit/phpunit": "^9.5.11" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-develop": "6.x-dev" - }, - "laravel": { - "providers": [ - "NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "NunoMaduro\\Collision\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "Cli error handling for console/command-line PHP applications.", - "keywords": [ - "artisan", - "cli", - "command-line", - "console", - "error", - "handling", - "laravel", - "laravel-zero", - "php", - "symfony" - ], - "support": { - "issues": "https://github.com/nunomaduro/collision/issues", - "source": "https://github.com/nunomaduro/collision" - }, - "funding": [ - { - "url": "https://www.paypal.com/paypalme/enunomaduro", - "type": "custom" - }, - { - "url": "https://github.com/nunomaduro", - "type": "github" - }, - { - "url": "https://www.patreon.com/nunomaduro", - "type": "patreon" - } - ], - "time": "2022-01-18T17:49:08+00:00" - }, - { - "name": "nunomaduro/laravel-console-summary", - "version": "v1.8.0", - "source": { - "type": "git", - "url": "https://github.com/nunomaduro/laravel-console-summary.git", - "reference": "1b32af3f39a744223c4ed6d2a5080fc5baa037da" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/laravel-console-summary/zipball/1b32af3f39a744223c4ed6d2a5080fc5baa037da", - "reference": "1b32af3f39a744223c4ed6d2a5080fc5baa037da", - "shasum": "" - }, - "require": { - "illuminate/console": "^7.0|^8.0|^9.0", - "illuminate/support": "^7.0|^8.0|^9.0", - "php": "^7.2.5|^8.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "NunoMaduro\\LaravelConsoleSummary\\LaravelConsoleSummaryServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "NunoMaduro\\LaravelConsoleSummary\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "A Beautiful Laravel Console Summary for your Laravel/Laravel Zero commands.", - "keywords": [ - "artisan", - "cli", - "command-line", - "console", - "laravel", - "laravel-zero", - "php", - "symfony" - ], - "support": { - "issues": "https://github.com/nunomaduro/laravel-console-summary/issues", - "source": "https://github.com/nunomaduro/laravel-console-summary" - }, - "time": "2022-01-13T14:34:23+00:00" - }, - { - "name": "nunomaduro/laravel-console-task", - "version": "v1.7.0", - "source": { - "type": "git", - "url": "https://github.com/nunomaduro/laravel-console-task.git", - "reference": "7613432d2eb77498d5c7bdce560a33b7d82d8eeb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/laravel-console-task/zipball/7613432d2eb77498d5c7bdce560a33b7d82d8eeb", - "reference": "7613432d2eb77498d5c7bdce560a33b7d82d8eeb", - "shasum": "" - }, - "require": { - "illuminate/console": "^6.0|^7.0|^8.0|^9.0", - "illuminate/support": "^6.0|^7.0|^8.0|^9.0", - "php": "^7.2.5|^8.0" - }, - "require-dev": { - "pestphp/pest": "^1.20" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "NunoMaduro\\LaravelConsoleTask\\LaravelConsoleTaskServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "NunoMaduro\\LaravelConsoleTask\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "Laravel Console Task is a output method for your Laravel/Laravel Zero commands.", - "keywords": [ - "artisan", - "cli", - "command-line", - "console", - "laravel", - "laravel-zero", - "php", - "symfony" - ], - "support": { - "issues": "https://github.com/nunomaduro/laravel-console-task/issues", - "source": "https://github.com/nunomaduro/laravel-console-task" - }, - "time": "2022-01-13T14:40:41+00:00" - }, - { - "name": "nunomaduro/laravel-desktop-notifier", - "version": "v2.6.0", - "source": { - "type": "git", - "url": "https://github.com/nunomaduro/laravel-desktop-notifier.git", - "reference": "f70febce1c6cc931bc71fd9c61049eb6b8d3c302" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/laravel-desktop-notifier/zipball/f70febce1c6cc931bc71fd9c61049eb6b8d3c302", - "reference": "f70febce1c6cc931bc71fd9c61049eb6b8d3c302", - "shasum": "" - }, - "require": { - "illuminate/console": "^6.20|^7.29|^8.12|^9.0", - "illuminate/support": "^6.20|^7.29|^8.12|^9.0", - "jolicode/jolinotif": "^2.0", - "php": "^7.2.5|^8.0" - }, - "require-dev": { - "graham-campbell/testbench": "^5.5", - "phpunit/phpunit": "^8.5.8|^9.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "NunoMaduro\\LaravelDesktopNotifier\\LaravelDesktopNotifierServiceProvider" - ], - "aliases": { - "Notifier": "NunoMaduro\\LaravelDesktopNotifier\\Facaces\\Notifier" - } - } - }, - "autoload": { - "psr-4": { - "NunoMaduro\\LaravelDesktopNotifier\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "Send notifications to your desktop from your Laravel commands. An JoliNotif wrapper for Laravel 5.", - "keywords": [ - "JoliNotif", - "Nuno Maduro", - "NunoMaduro", - "artisan", - "console", - "framework", - "laravel", - "notification", - "notifier", - "php", - "wrapper" - ], - "support": { - "issues": "https://github.com/nunomaduro/laravel-desktop-notifier/issues", - "source": "https://github.com/nunomaduro/laravel-desktop-notifier/tree/v2.6.0" - }, - "time": "2022-01-13T15:10:14+00:00" - }, - { - "name": "nunomaduro/termwind", - "version": "v1.6.2", - "source": { - "type": "git", - "url": "https://github.com/nunomaduro/termwind.git", - "reference": "ef6a5a86c5fad3c7c9bffdc012dc006a0e042548" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/ef6a5a86c5fad3c7c9bffdc012dc006a0e042548", - "reference": "ef6a5a86c5fad3c7c9bffdc012dc006a0e042548", - "shasum": "" - }, - "require": { - "ext-mbstring": "*", - "php": "^8.0", - "symfony/console": "^5.3.0|^6.0.0" - }, - "require-dev": { - "ergebnis/phpstan-rules": "^1.0.", - "illuminate/console": "^8.0|^9.0", - "illuminate/support": "^8.0|^9.0", - "pestphp/pest": "^1.21.0", - "pestphp/pest-plugin-mock": "^1.0", - "phpstan/phpstan": "^1.4.6", - "phpstan/phpstan-strict-rules": "^1.1.0", - "styleci/cli": "^1.2.0", - "symfony/var-dumper": "^5.2.7|^6.0.0", - "thecodingmachine/phpstan-strict-rules": "^1.0.0" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Termwind\\Laravel\\TermwindServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "src/Functions.php" - ], - "psr-4": { - "Termwind\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "Its like Tailwind CSS, but for the console.", - "keywords": [ - "cli", - "console", - "css", - "package", - "php", - "style" - ], - "support": { - "issues": "https://github.com/nunomaduro/termwind/issues", - "source": "https://github.com/nunomaduro/termwind/tree/v1.6.2" - }, - "funding": [ - { - "url": "https://www.paypal.com/paypalme/enunomaduro", - "type": "custom" - }, - { - "url": "https://github.com/nunomaduro", - "type": "github" - }, - { - "url": "https://github.com/xiCO2k", - "type": "github" - } - ], - "time": "2022-03-18T13:07:34+00:00" - }, - { - "name": "phpoption/phpoption", - "version": "1.8.1", - "source": { - "type": "git", - "url": "https://github.com/schmittjoh/php-option.git", - "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", - "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", - "shasum": "" - }, - "require": { - "php": "^7.0 || ^8.0" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.8-dev" - } - }, - "autoload": { - "psr-4": { - "PhpOption\\": "src/PhpOption/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "Apache-2.0" - ], - "authors": [ - { - "name": "Johannes M. Schmitt", - "email": "schmittjoh@gmail.com", - "homepage": "https://github.com/schmittjoh" - }, - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - } - ], - "description": "Option Type for PHP", - "keywords": [ - "language", - "option", - "php", - "type" - ], - "support": { - "issues": "https://github.com/schmittjoh/php-option/issues", - "source": "https://github.com/schmittjoh/php-option/tree/1.8.1" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", - "type": "tidelift" - } - ], - "time": "2021-12-04T23:24:31+00:00" - }, - { - "name": "psr/container", - "version": "1.1.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", - "shasum": "" - }, - "require": { - "php": ">=7.4.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Psr\\Container\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common Container Interface (PHP FIG PSR-11)", - "homepage": "https://github.com/php-fig/container", - "keywords": [ - "PSR-11", - "container", - "container-interface", - "container-interop", - "psr" - ], - "support": { - "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.2" - }, - "time": "2021-11-05T16:50:12+00:00" - }, - { - "name": "psr/event-dispatcher", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/event-dispatcher.git", - "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", - "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", - "shasum": "" - }, - "require": { - "php": ">=7.2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\EventDispatcher\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Standard interfaces for event handling.", - "keywords": [ - "events", - "psr", - "psr-14" - ], - "support": { - "issues": "https://github.com/php-fig/event-dispatcher/issues", - "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" - }, - "time": "2019-01-08T18:20:26+00:00" - }, - { - "name": "psr/http-client", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-client.git", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", - "shasum": "" - }, - "require": { - "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Client\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interface for HTTP clients", - "homepage": "https://github.com/php-fig/http-client", - "keywords": [ - "http", - "http-client", - "psr", - "psr-18" - ], - "support": { - "source": "https://github.com/php-fig/http-client/tree/master" - }, - "time": "2020-06-29T06:28:15+00:00" - }, - { - "name": "psr/http-factory", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-factory.git", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", - "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", - "shasum": "" - }, - "require": { - "php": ">=7.0.0", - "psr/http-message": "^1.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Message\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interfaces for PSR-7 HTTP message factories", - "keywords": [ - "factory", - "http", - "message", - "psr", - "psr-17", - "psr-7", - "request", - "response" - ], - "support": { - "source": "https://github.com/php-fig/http-factory/tree/master" - }, - "time": "2019-04-30T12:38:16+00:00" - }, - { - "name": "psr/http-message", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-message.git", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Message\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interface for HTTP messages", - "homepage": "https://github.com/php-fig/http-message", - "keywords": [ - "http", - "http-message", - "psr", - "psr-7", - "request", - "response" - ], - "support": { - "source": "https://github.com/php-fig/http-message/tree/master" - }, - "time": "2016-08-06T14:39:51+00:00" - }, - { - "name": "psr/log", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/log.git", - "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001", - "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001", - "shasum": "" - }, - "require": { - "php": ">=8.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Log\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for logging libraries", - "homepage": "https://github.com/php-fig/log", - "keywords": [ - "log", - "psr", - "psr-3" - ], - "support": { - "source": "https://github.com/php-fig/log/tree/3.0.0" - }, - "time": "2021-07-14T16:46:02+00:00" - }, - { - "name": "psr/simple-cache", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/simple-cache.git", - "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", - "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", - "shasum": "" - }, - "require": { - "php": ">=8.0.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\SimpleCache\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interfaces for simple caching", - "keywords": [ - "cache", - "caching", - "psr", - "psr-16", - "simple-cache" - ], - "support": { - "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" - }, - "time": "2021-10-29T13:26:27+00:00" - }, - { - "name": "ralouphie/getallheaders", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/ralouphie/getallheaders.git", - "reference": "120b605dfeb996808c31b6477290a714d356e822" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", - "reference": "120b605dfeb996808c31b6477290a714d356e822", - "shasum": "" - }, - "require": { - "php": ">=5.6" - }, - "require-dev": { - "php-coveralls/php-coveralls": "^2.1", - "phpunit/phpunit": "^5 || ^6.5" - }, - "type": "library", - "autoload": { - "files": [ - "src/getallheaders.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ralph Khattar", - "email": "ralph.khattar@gmail.com" - } - ], - "description": "A polyfill for getallheaders.", - "support": { - "issues": "https://github.com/ralouphie/getallheaders/issues", - "source": "https://github.com/ralouphie/getallheaders/tree/develop" - }, - "time": "2019-03-08T08:55:37+00:00" - }, - { - "name": "ramsey/collection", - "version": "1.2.2", - "source": { - "type": "git", - "url": "https://github.com/ramsey/collection.git", - "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ramsey/collection/zipball/cccc74ee5e328031b15640b51056ee8d3bb66c0a", - "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a", - "shasum": "" - }, - "require": { - "php": "^7.3 || ^8", - "symfony/polyfill-php81": "^1.23" - }, - "require-dev": { - "captainhook/captainhook": "^5.3", - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", - "ergebnis/composer-normalize": "^2.6", - "fakerphp/faker": "^1.5", - "hamcrest/hamcrest-php": "^2", - "jangregor/phpstan-prophecy": "^0.8", - "mockery/mockery": "^1.3", - "phpspec/prophecy-phpunit": "^2.0", - "phpstan/extension-installer": "^1", - "phpstan/phpstan": "^0.12.32", - "phpstan/phpstan-mockery": "^0.12.5", - "phpstan/phpstan-phpunit": "^0.12.11", - "phpunit/phpunit": "^8.5 || ^9", - "psy/psysh": "^0.10.4", - "slevomat/coding-standard": "^6.3", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.4" - }, - "type": "library", - "autoload": { - "psr-4": { - "Ramsey\\Collection\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ben Ramsey", - "email": "ben@benramsey.com", - "homepage": "https://benramsey.com" - } - ], - "description": "A PHP library for representing and manipulating collections.", - "keywords": [ - "array", - "collection", - "hash", - "map", - "queue", - "set" - ], - "support": { - "issues": "https://github.com/ramsey/collection/issues", - "source": "https://github.com/ramsey/collection/tree/1.2.2" - }, - "funding": [ - { - "url": "https://github.com/ramsey", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/ramsey/collection", - "type": "tidelift" - } - ], - "time": "2021-10-10T03:01:02+00:00" - }, - { - "name": "ramsey/uuid", - "version": "4.2.3", - "source": { - "type": "git", - "url": "https://github.com/ramsey/uuid.git", - "reference": "fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df", - "reference": "fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df", - "shasum": "" - }, - "require": { - "brick/math": "^0.8 || ^0.9", - "ext-json": "*", - "php": "^7.2 || ^8.0", - "ramsey/collection": "^1.0", - "symfony/polyfill-ctype": "^1.8", - "symfony/polyfill-php80": "^1.14" - }, - "replace": { - "rhumsaa/uuid": "self.version" - }, - "require-dev": { - "captainhook/captainhook": "^5.10", - "captainhook/plugin-composer": "^5.3", - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", - "doctrine/annotations": "^1.8", - "ergebnis/composer-normalize": "^2.15", - "mockery/mockery": "^1.3", - "moontoast/math": "^1.1", - "paragonie/random-lib": "^2", - "php-mock/php-mock": "^2.2", - "php-mock/php-mock-mockery": "^1.3", - "php-parallel-lint/php-parallel-lint": "^1.1", - "phpbench/phpbench": "^1.0", - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-mockery": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpunit/phpunit": "^8.5 || ^9", - "slevomat/coding-standard": "^7.0", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.9" - }, - "suggest": { - "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", - "ext-ctype": "Enables faster processing of character classification using ctype functions.", - "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", - "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", - "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", - "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "4.x-dev" - }, - "captainhook": { - "force-install": true - } - }, - "autoload": { - "files": [ - "src/functions.php" - ], - "psr-4": { - "Ramsey\\Uuid\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", - "keywords": [ - "guid", - "identifier", - "uuid" - ], - "support": { - "issues": "https://github.com/ramsey/uuid/issues", - "source": "https://github.com/ramsey/uuid/tree/4.2.3" - }, - "funding": [ - { - "url": "https://github.com/ramsey", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid", - "type": "tidelift" - } - ], - "time": "2021-09-25T23:10:38+00:00" - }, - { - "name": "symfony/console", - "version": "v6.0.5", - "source": { - "type": "git", - "url": "https://github.com/symfony/console.git", - "reference": "3bebf4108b9e07492a2a4057d207aa5a77d146b1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/3bebf4108b9e07492a2a4057d207aa5a77d146b1", - "reference": "3bebf4108b9e07492a2a4057d207aa5a77d146b1", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "symfony/polyfill-mbstring": "~1.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.4|^6.0" - }, - "conflict": { - "symfony/dependency-injection": "<5.4", - "symfony/dotenv": "<5.4", - "symfony/event-dispatcher": "<5.4", - "symfony/lock": "<5.4", - "symfony/process": "<5.4" - }, - "provide": { - "psr/log-implementation": "1.0|2.0|3.0" - }, - "require-dev": { - "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/event-dispatcher": "^5.4|^6.0", - "symfony/lock": "^5.4|^6.0", - "symfony/process": "^5.4|^6.0", - "symfony/var-dumper": "^5.4|^6.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Console\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Eases the creation of beautiful and testable command line interfaces", - "homepage": "https://symfony.com", - "keywords": [ - "cli", - "command line", - "console", - "terminal" - ], - "support": { - "source": "https://github.com/symfony/console/tree/v6.0.5" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-02-25T10:48:52+00:00" - }, - { - "name": "symfony/deprecation-contracts", - "version": "v3.0.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", - "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", - "shasum": "" - }, - "require": { - "php": ">=8.0.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "files": [ - "function.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "A generic function and convention to trigger deprecation notices", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.0.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-11-01T23:48:49+00:00" - }, - { - "name": "symfony/error-handler", - "version": "v6.0.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/error-handler.git", - "reference": "20343b3bad7ebafa38138ddcb97290a24722b57b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/20343b3bad7ebafa38138ddcb97290a24722b57b", - "reference": "20343b3bad7ebafa38138ddcb97290a24722b57b", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "psr/log": "^1|^2|^3", - "symfony/var-dumper": "^5.4|^6.0" - }, - "require-dev": { - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/http-kernel": "^5.4|^6.0", - "symfony/serializer": "^5.4|^6.0" - }, - "bin": [ - "Resources/bin/patch-type-declarations" - ], - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\ErrorHandler\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides tools to manage errors and ease debugging PHP code", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/error-handler/tree/v6.0.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-02T09:55:41+00:00" - }, - { - "name": "symfony/event-dispatcher", - "version": "v6.0.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "6472ea2dd415e925b90ca82be64b8bc6157f3934" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/6472ea2dd415e925b90ca82be64b8bc6157f3934", - "reference": "6472ea2dd415e925b90ca82be64b8bc6157f3934", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "symfony/event-dispatcher-contracts": "^2|^3" - }, - "conflict": { - "symfony/dependency-injection": "<5.4" - }, - "provide": { - "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "2.0|3.0" - }, - "require-dev": { - "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/error-handler": "^5.4|^6.0", - "symfony/expression-language": "^5.4|^6.0", - "symfony/http-foundation": "^5.4|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/stopwatch": "^5.4|^6.0" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\EventDispatcher\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v6.0.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-02T09:55:41+00:00" - }, - { - "name": "symfony/event-dispatcher-contracts", - "version": "v3.0.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "aa5422287b75594b90ee9cd807caf8f0df491385" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/aa5422287b75594b90ee9cd807caf8f0df491385", - "reference": "aa5422287b75594b90ee9cd807caf8f0df491385", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "psr/event-dispatcher": "^1" - }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\EventDispatcher\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to dispatching event", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.0.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-07-15T12:33:35+00:00" - }, - { - "name": "symfony/finder", - "version": "v6.0.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/finder.git", - "reference": "8661b74dbabc23223f38c9b99d3f8ade71170430" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/8661b74dbabc23223f38c9b99d3f8ade71170430", - "reference": "8661b74dbabc23223f38c9b99d3f8ade71170430", - "shasum": "" - }, - "require": { - "php": ">=8.0.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Finder\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Finds files and directories via an intuitive fluent interface", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/finder/tree/v6.0.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-26T17:23:29+00:00" - }, - { - "name": "symfony/http-foundation", - "version": "v6.0.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-foundation.git", - "reference": "a000fcf2298a1bc79a1dcff22608792506534719" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/a000fcf2298a1bc79a1dcff22608792506534719", - "reference": "a000fcf2298a1bc79a1dcff22608792506534719", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-mbstring": "~1.1" - }, - "require-dev": { - "predis/predis": "~1.0", - "symfony/cache": "^5.4|^6.0", - "symfony/expression-language": "^5.4|^6.0", - "symfony/mime": "^5.4|^6.0" - }, - "suggest": { - "symfony/mime": "To use the file extension guesser" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpFoundation\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Defines an object-oriented layer for the HTTP specification", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.0.6" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-03-05T21:04:00+00:00" - }, - { - "name": "symfony/http-kernel", - "version": "v6.0.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-kernel.git", - "reference": "f9e49ad9fe16895b24cd7a09dc28d3364282e21a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/f9e49ad9fe16895b24cd7a09dc28d3364282e21a", - "reference": "f9e49ad9fe16895b24cd7a09dc28d3364282e21a", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "psr/log": "^1|^2|^3", - "symfony/error-handler": "^5.4|^6.0", - "symfony/event-dispatcher": "^5.4|^6.0", - "symfony/http-foundation": "^5.4|^6.0", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "symfony/browser-kit": "<5.4", - "symfony/cache": "<5.4", - "symfony/config": "<5.4", - "symfony/console": "<5.4", - "symfony/dependency-injection": "<5.4", - "symfony/doctrine-bridge": "<5.4", - "symfony/form": "<5.4", - "symfony/http-client": "<5.4", - "symfony/mailer": "<5.4", - "symfony/messenger": "<5.4", - "symfony/translation": "<5.4", - "symfony/twig-bridge": "<5.4", - "symfony/validator": "<5.4", - "twig/twig": "<2.13" - }, - "provide": { - "psr/log-implementation": "1.0|2.0|3.0" - }, - "require-dev": { - "psr/cache": "^1.0|^2.0|^3.0", - "symfony/browser-kit": "^5.4|^6.0", - "symfony/config": "^5.4|^6.0", - "symfony/console": "^5.4|^6.0", - "symfony/css-selector": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/dom-crawler": "^5.4|^6.0", - "symfony/expression-language": "^5.4|^6.0", - "symfony/finder": "^5.4|^6.0", - "symfony/http-client-contracts": "^1.1|^2|^3", - "symfony/process": "^5.4|^6.0", - "symfony/routing": "^5.4|^6.0", - "symfony/stopwatch": "^5.4|^6.0", - "symfony/translation": "^5.4|^6.0", - "symfony/translation-contracts": "^1.1|^2|^3", - "twig/twig": "^2.13|^3.0.4" - }, - "suggest": { - "symfony/browser-kit": "", - "symfony/config": "", - "symfony/console": "", - "symfony/dependency-injection": "" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpKernel\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides a structured process for converting a Request into a Response", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.0.6" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-03-05T21:19:20+00:00" - }, - { - "name": "symfony/mime", - "version": "v6.0.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/mime.git", - "reference": "2cd9601efd040e56f43360daa68f3c6b0534923a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/2cd9601efd040e56f43360daa68f3c6b0534923a", - "reference": "2cd9601efd040e56f43360daa68f3c6b0534923a", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.0" - }, - "conflict": { - "egulias/email-validator": "~3.0.0", - "phpdocumentor/reflection-docblock": "<3.2.2", - "phpdocumentor/type-resolver": "<1.4.0", - "symfony/mailer": "<5.4" - }, - "require-dev": { - "egulias/email-validator": "^2.1.10|^3.1", - "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/property-access": "^5.4|^6.0", - "symfony/property-info": "^5.4|^6.0", - "symfony/serializer": "^5.4|^6.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Mime\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Allows manipulating MIME messages", - "homepage": "https://symfony.com", - "keywords": [ - "mime", - "mime-type" - ], - "support": { - "source": "https://github.com/symfony/mime/tree/v6.0.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-02T09:55:41+00:00" - }, - { - "name": "symfony/polyfill-ctype", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "30885182c981ab175d4d034db0f6f469898070ab" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab", - "reference": "30885182c981ab175d4d034db0f6f469898070ab", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "provide": { - "ext-ctype": "*" - }, - "suggest": { - "ext-ctype": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Gert de Pagter", - "email": "BackEndTea@gmail.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for ctype functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "ctype", - "polyfill", - "portable" - ], - "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-10-20T20:35:02+00:00" - }, - { - "name": "symfony/polyfill-intl-grapheme", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "81b86b50cf841a64252b439e738e97f4a34e2783" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/81b86b50cf841a64252b439e738e97f4a34e2783", - "reference": "81b86b50cf841a64252b439e738e97f4a34e2783", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Grapheme\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's grapheme_* functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "grapheme", - "intl", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-11-23T21:10:46+00:00" - }, - { - "name": "symfony/polyfill-intl-idn", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "749045c69efb97c70d25d7463abba812e91f3a44" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/749045c69efb97c70d25d7463abba812e91f3a44", - "reference": "749045c69efb97c70d25d7463abba812e91f3a44", - "shasum": "" - }, - "require": { - "php": ">=7.1", - "symfony/polyfill-intl-normalizer": "^1.10", - "symfony/polyfill-php72": "^1.10" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Idn\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Laurent Bassin", - "email": "laurent@bassin.info" - }, - { - "name": "Trevor Rowbotham", - "email": "trevor.rowbotham@pm.me" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "idn", - "intl", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-09-14T14:02:44+00:00" - }, - { - "name": "symfony/polyfill-intl-normalizer", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8590a5f561694770bdcd3f9b5c69dde6945028e8", - "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Normalizer\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's Normalizer class and related functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "intl", - "normalizer", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-02-19T12:13:01+00:00" - }, - { - "name": "symfony/polyfill-mbstring", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "0abb51d2f102e00a4eefcf46ba7fec406d245825" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/0abb51d2f102e00a4eefcf46ba7fec406d245825", - "reference": "0abb51d2f102e00a4eefcf46ba7fec406d245825", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "provide": { - "ext-mbstring": "*" - }, - "suggest": { - "ext-mbstring": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for the Mbstring extension", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "mbstring", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-11-30T18:21:41+00:00" - }, - { - "name": "symfony/polyfill-php72", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "9a142215a36a3888e30d0a9eeea9766764e96976" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/9a142215a36a3888e30d0a9eeea9766764e96976", - "reference": "9a142215a36a3888e30d0a9eeea9766764e96976", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-05-27T09:17:38+00:00" - }, - { - "name": "symfony/polyfill-php80", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/4407588e0d3f1f52efb65fbe92babe41f37fe50c", - "reference": "4407588e0d3f1f52efb65fbe92babe41f37fe50c", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-03-04T08:16:47+00:00" - }, - { - "name": "symfony/polyfill-php81", - "version": "v1.25.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", - "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.23-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php81\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.25.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-09-13T13:58:11+00:00" - }, - { - "name": "symfony/process", - "version": "v6.0.5", - "source": { - "type": "git", - "url": "https://github.com/symfony/process.git", - "reference": "1ccceccc6497e96f4f646218f04b97ae7d9fa7a1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/1ccceccc6497e96f4f646218f04b97ae7d9fa7a1", - "reference": "1ccceccc6497e96f4f646218f04b97ae7d9fa7a1", - "shasum": "" - }, - "require": { - "php": ">=8.0.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Process\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Executes commands in sub-processes", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/process/tree/v6.0.5" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-30T18:19:12+00:00" - }, - { - "name": "symfony/service-contracts", - "version": "v2.4.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/service-contracts.git", - "reference": "d664541b99d6fb0247ec5ff32e87238582236204" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d664541b99d6fb0247ec5ff32e87238582236204", - "reference": "d664541b99d6fb0247ec5ff32e87238582236204", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "psr/container": "^1.1" - }, - "conflict": { - "ext-psr": "<1.1|>=2" - }, - "suggest": { - "symfony/service-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.4-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\Service\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to writing services", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.4.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-11-04T16:37:19+00:00" - }, - { - "name": "symfony/string", - "version": "v6.0.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/string.git", - "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/522144f0c4c004c80d56fa47e40e17028e2eefc2", - "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-intl-grapheme": "~1.0", - "symfony/polyfill-intl-normalizer": "~1.0", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "symfony/translation-contracts": "<2.0" - }, - "require-dev": { - "symfony/error-handler": "^5.4|^6.0", - "symfony/http-client": "^5.4|^6.0", - "symfony/translation-contracts": "^2.0|^3.0", - "symfony/var-exporter": "^5.4|^6.0" - }, - "type": "library", - "autoload": { - "files": [ - "Resources/functions.php" - ], - "psr-4": { - "Symfony\\Component\\String\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", - "homepage": "https://symfony.com", - "keywords": [ - "grapheme", - "i18n", - "string", - "unicode", - "utf-8", - "utf8" - ], - "support": { - "source": "https://github.com/symfony/string/tree/v6.0.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-02T09:55:41+00:00" - }, - { - "name": "symfony/translation", - "version": "v6.0.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/translation.git", - "reference": "f6639cb9b5e0c57fe31e3263b900a77eedb0c908" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/f6639cb9b5e0c57fe31e3263b900a77eedb0c908", - "reference": "f6639cb9b5e0c57fe31e3263b900a77eedb0c908", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^2.3|^3.0" - }, - "conflict": { - "symfony/config": "<5.4", - "symfony/console": "<5.4", - "symfony/dependency-injection": "<5.4", - "symfony/http-kernel": "<5.4", - "symfony/twig-bundle": "<5.4", - "symfony/yaml": "<5.4" - }, - "provide": { - "symfony/translation-implementation": "2.3|3.0" - }, - "require-dev": { - "psr/log": "^1|^2|^3", - "symfony/config": "^5.4|^6.0", - "symfony/console": "^5.4|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/finder": "^5.4|^6.0", - "symfony/http-client-contracts": "^1.1|^2.0|^3.0", - "symfony/http-kernel": "^5.4|^6.0", - "symfony/intl": "^5.4|^6.0", - "symfony/polyfill-intl-icu": "^1.21", - "symfony/service-contracts": "^1.1.2|^2|^3", - "symfony/yaml": "^5.4|^6.0" - }, - "suggest": { - "psr/log-implementation": "To use logging capability in translator", - "symfony/config": "", - "symfony/yaml": "" - }, - "type": "library", - "autoload": { - "files": [ - "Resources/functions.php" - ], - "psr-4": { - "Symfony\\Component\\Translation\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides tools to internationalize your application", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/translation/tree/v6.0.6" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-03-02T12:58:14+00:00" - }, - { - "name": "symfony/translation-contracts", - "version": "v3.0.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/translation-contracts.git", - "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", - "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", - "shasum": "" - }, - "require": { - "php": ">=8.0.2" - }, - "suggest": { - "symfony/translation-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.0-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\Translation\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to translation", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.0.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2021-09-07T12:43:40+00:00" - }, - { - "name": "symfony/var-dumper", - "version": "v6.0.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/var-dumper.git", - "reference": "38358405ae948963c50a3aae3dfea598223ba15e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/38358405ae948963c50a3aae3dfea598223ba15e", - "reference": "38358405ae948963c50a3aae3dfea598223ba15e", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "phpunit/phpunit": "<5.4.3", - "symfony/console": "<5.4" - }, - "require-dev": { - "ext-iconv": "*", - "symfony/console": "^5.4|^6.0", - "symfony/process": "^5.4|^6.0", - "symfony/uid": "^5.4|^6.0", - "twig/twig": "^2.13|^3.0.4" - }, - "suggest": { - "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", - "ext-intl": "To show region name in time zone dump", - "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script" - }, - "bin": [ - "Resources/bin/var-dump-server" - ], - "type": "library", - "autoload": { - "files": [ - "Resources/functions/dump.php" - ], - "psr-4": { - "Symfony\\Component\\VarDumper\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides mechanisms for walking through any arbitrary PHP variable", - "homepage": "https://symfony.com", - "keywords": [ - "debug", - "dump" - ], - "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.0.6" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-03-02T12:58:14+00:00" - }, - { - "name": "symfony/yaml", - "version": "v6.0.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/yaml.git", - "reference": "e77f3ea0b21141d771d4a5655faa54f692b34af5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e77f3ea0b21141d771d4a5655faa54f692b34af5", - "reference": "e77f3ea0b21141d771d4a5655faa54f692b34af5", - "shasum": "" - }, - "require": { - "php": ">=8.0.2", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "symfony/console": "<5.4" - }, - "require-dev": { - "symfony/console": "^5.4|^6.0" - }, - "suggest": { - "symfony/console": "For validating YAML files using the lint command" - }, - "bin": [ - "Resources/bin/yaml-lint" - ], - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Yaml\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Loads and dumps YAML files", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/yaml/tree/v6.0.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-26T17:23:29+00:00" - }, - { - "name": "torchlight/torchlight-commonmark", - "version": "v0.5.5", - "source": { - "type": "git", - "url": "https://github.com/torchlight-api/torchlight-commonmark-php.git", - "reference": "eb618ae6187090126a9ef881ccaf9c315d49c99b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/torchlight-api/torchlight-commonmark-php/zipball/eb618ae6187090126a9ef881ccaf9c315d49c99b", - "reference": "eb618ae6187090126a9ef881ccaf9c315d49c99b", - "shasum": "" - }, - "require": { - "league/commonmark": "^1.5|^2.0", - "php": "^7.2|^8.0", - "torchlight/torchlight-laravel": "^0.5.10" - }, - "require-dev": { - "mockery/mockery": "^1.3.3", - "orchestra/testbench": "^5.0|^6.0", - "phpunit/phpunit": "^8.4" - }, - "type": "library", - "autoload": { - "psr-4": { - "Torchlight\\Commonmark\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Aaron Francis", - "email": "aaron@hammerstone.dev" - } - ], - "description": "A Commonmark extension for Torchlight, the syntax highlighting API.", - "homepage": "https://torchlight.dev", - "keywords": [ - "Code highlighting", - "commonmark", - "laravel", - "markdown", - "syntax highlighting" - ], - "support": { - "issues": "https://github.com/torchlight-api/torchlight-commonmark-php/issues", - "source": "https://github.com/torchlight-api/torchlight-commonmark-php/tree/v0.5.5" - }, - "time": "2022-02-23T17:09:44+00:00" - }, - { - "name": "torchlight/torchlight-laravel", - "version": "v0.5.11", - "source": { - "type": "git", - "url": "https://github.com/torchlight-api/torchlight-laravel.git", - "reference": "e69530e720d09f6791eff2a13e4d408ba0eaf6dc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/torchlight-api/torchlight-laravel/zipball/e69530e720d09f6791eff2a13e4d408ba0eaf6dc", - "reference": "e69530e720d09f6791eff2a13e4d408ba0eaf6dc", - "shasum": "" - }, - "require": { - "guzzlehttp/guzzle": "^7.2", - "illuminate/cache": "^7.26.0|^8.0|^9.0", - "illuminate/console": "^7.26.0|^8.0|^9.0", - "illuminate/http": "^7.26.0|^8.0|^9.0", - "illuminate/support": "^7.26.0|^8.0|^9.0", - "illuminate/view": "^7.26.0|^8.0|^9.0", - "php": "^7.3|^8.0", - "ramsey/uuid": "^3.7|^4.0" - }, - "require-dev": { - "mockery/mockery": "^1.3.3", - "orchestra/testbench": "^5.0|^6.0|^7.0", - "phpunit/phpunit": "^8.5.23|^9.5" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Torchlight\\TorchlightServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Torchlight\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Aaron Francis", - "email": "aaron@hammerstone.dev" - } - ], - "description": "A Laravel Client for Torchlight, the syntax highlighting API.", - "homepage": "https://torchlight.dev", - "keywords": [ - "Code highlighting", - "laravel", - "syntax highlighting" - ], - "support": { - "issues": "https://github.com/torchlight-api/torchlight-laravel/issues", - "source": "https://github.com/torchlight-api/torchlight-laravel/tree/v0.5.11" - }, - "time": "2022-02-13T15:30:32+00:00" - }, - { - "name": "vlucas/phpdotenv", - "version": "v5.4.1", - "source": { - "type": "git", - "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/264dce589e7ce37a7ba99cb901eed8249fbec92f", - "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f", - "shasum": "" - }, - "require": { - "ext-pcre": "*", - "graham-campbell/result-type": "^1.0.2", - "php": "^7.1.3 || ^8.0", - "phpoption/phpoption": "^1.8", - "symfony/polyfill-ctype": "^1.23", - "symfony/polyfill-mbstring": "^1.23.1", - "symfony/polyfill-php80": "^1.23.1" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "ext-filter": "*", - "phpunit/phpunit": "^7.5.20 || ^8.5.21 || ^9.5.10" - }, - "suggest": { - "ext-filter": "Required to use the boolean validator." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.4-dev" - } - }, - "autoload": { - "psr-4": { - "Dotenv\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Vance Lucas", - "email": "vance@vancelucas.com", - "homepage": "https://github.com/vlucas" - } - ], - "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", - "keywords": [ - "dotenv", - "env", - "environment" - ], - "support": { - "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.4.1" - }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", - "type": "tidelift" - } - ], - "time": "2021-12-12T23:22:04+00:00" - }, - { - "name": "voku/portable-ascii", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/voku/portable-ascii.git", - "reference": "b56450eed252f6801410d810c8e1727224ae0743" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743", - "reference": "b56450eed252f6801410d810c8e1727224ae0743", - "shasum": "" - }, - "require": { - "php": ">=7.0.0" - }, - "require-dev": { - "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" - }, - "suggest": { - "ext-intl": "Use Intl for transliterator_transliterate() support" - }, - "type": "library", - "autoload": { - "psr-4": { - "voku\\": "src/voku/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Lars Moelleken", - "homepage": "http://www.moelleken.org/" - } - ], - "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", - "homepage": "https://github.com/voku/portable-ascii", - "keywords": [ - "ascii", - "clean", - "php" - ], - "support": { - "issues": "https://github.com/voku/portable-ascii/issues", - "source": "https://github.com/voku/portable-ascii/tree/2.0.1" - }, - "funding": [ - { - "url": "https://www.paypal.me/moelleken", - "type": "custom" - }, - { - "url": "https://github.com/voku", - "type": "github" - }, - { - "url": "https://opencollective.com/portable-ascii", - "type": "open_collective" - }, - { - "url": "https://www.patreon.com/voku", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", - "type": "tidelift" - } - ], - "time": "2022-03-08T17:03:00+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.10.0", - "source": { - "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<4.6.1 || 4.6.2" - }, - "require-dev": { - "phpunit/phpunit": "^8.5.13" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.10-dev" - } - }, - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], - "support": { - "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/1.10.0" - }, - "time": "2021-03-09T10:59:23+00:00" - } - ], - "packages-dev": [ - { - "name": "doctrine/instantiator", - "version": "1.4.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^9", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^0.16 || ^1", - "phpstan/phpstan": "^1.4", - "phpstan/phpstan-phpunit": "^1", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.22" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "https://ocramius.github.io/" - } - ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://www.doctrine-project.org/projects/instantiator.html", - "keywords": [ - "constructor", - "instantiate" - ], - "support": { - "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.1" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", - "type": "tidelift" - } - ], - "time": "2022-03-03T08:28:38+00:00" - }, - { - "name": "hamcrest/hamcrest-php", - "version": "v2.0.1", - "source": { - "type": "git", - "url": "https://github.com/hamcrest/hamcrest-php.git", - "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", - "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", - "shasum": "" - }, - "require": { - "php": "^5.3|^7.0|^8.0" - }, - "replace": { - "cordoval/hamcrest-php": "*", - "davedevelopment/hamcrest-php": "*", - "kodova/hamcrest-php": "*" - }, - "require-dev": { - "phpunit/php-file-iterator": "^1.4 || ^2.0", - "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.1-dev" - } - }, - "autoload": { - "classmap": [ - "hamcrest" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "This is the PHP port of Hamcrest Matchers", - "keywords": [ - "test" - ], - "support": { - "issues": "https://github.com/hamcrest/hamcrest-php/issues", - "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.0.1" - }, - "time": "2020-07-09T08:09:16+00:00" - }, - { - "name": "mockery/mockery", - "version": "1.5.0", - "source": { - "type": "git", - "url": "https://github.com/mockery/mockery.git", - "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", - "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", - "shasum": "" - }, - "require": { - "hamcrest/hamcrest-php": "^2.0.1", - "lib-pcre": ">=7.0", - "php": "^7.3 || ^8.0" - }, - "conflict": { - "phpunit/phpunit": "<8.0" - }, - "require-dev": { - "phpunit/phpunit": "^8.5 || ^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4.x-dev" - } - }, - "autoload": { - "psr-0": { - "Mockery": "library/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "PÃĄdraic Brady", - "email": "padraic.brady@gmail.com", - "homepage": "http://blog.astrumfutura.com" - }, - { - "name": "Dave Marshall", - "email": "dave.marshall@atstsolutions.co.uk", - "homepage": "http://davedevelopment.co.uk" - } - ], - "description": "Mockery is a simple yet flexible PHP mock object framework", - "homepage": "https://github.com/mockery/mockery", - "keywords": [ - "BDD", - "TDD", - "library", - "mock", - "mock objects", - "mockery", - "stub", - "test", - "test double", - "testing" - ], - "support": { - "issues": "https://github.com/mockery/mockery/issues", - "source": "https://github.com/mockery/mockery/tree/1.5.0" - }, - "time": "2022-01-20T13:18:17+00:00" - }, - { - "name": "myclabs/deep-copy", - "version": "1.11.0", - "source": { - "type": "git", - "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "conflict": { - "doctrine/collections": "<1.6.8", - "doctrine/common": "<2.13.3 || >=3,<3.2.2" - }, - "require-dev": { - "doctrine/collections": "^1.6.8", - "doctrine/common": "^2.13.3 || ^3.2.2", - "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" - }, - "type": "library", - "autoload": { - "files": [ - "src/DeepCopy/deep_copy.php" - ], - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Create deep copies (clones) of your objects", - "keywords": [ - "clone", - "copy", - "duplicate", - "object", - "object graph" - ], - "support": { - "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" - }, - "funding": [ - { - "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", - "type": "tidelift" - } - ], - "time": "2022-03-03T13:19:32+00:00" - }, - { - "name": "nikic/php-parser", - "version": "v4.13.2", - "source": { - "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "210577fe3cf7badcc5814d99455df46564f3c077" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/210577fe3cf7badcc5814d99455df46564f3c077", - "reference": "210577fe3cf7badcc5814d99455df46564f3c077", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": ">=7.0" - }, - "require-dev": { - "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" - }, - "bin": [ - "bin/php-parse" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.9-dev" - } - }, - "autoload": { - "psr-4": { - "PhpParser\\": "lib/PhpParser" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Nikita Popov" - } - ], - "description": "A PHP parser written in PHP", - "keywords": [ - "parser", - "php" - ], - "support": { - "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.2" - }, - "time": "2021-11-30T19:35:32+00:00" - }, - { - "name": "pestphp/pest", - "version": "v1.21.2", - "source": { - "type": "git", - "url": "https://github.com/pestphp/pest.git", - "reference": "63f009fadf9b37f611fda43928d03336475d5d9f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/pestphp/pest/zipball/63f009fadf9b37f611fda43928d03336475d5d9f", - "reference": "63f009fadf9b37f611fda43928d03336475d5d9f", - "shasum": "" - }, - "require": { - "nunomaduro/collision": "^5.10.0|^6.0", - "pestphp/pest-plugin": "^1.0.0", - "php": "^7.3 || ^8.0", - "phpunit/phpunit": "^9.5.5" - }, - "require-dev": { - "illuminate/console": "^8.47.0", - "illuminate/support": "^8.47.0", - "laravel/dusk": "^6.15.0", - "pestphp/pest-dev-tools": "dev-master", - "pestphp/pest-plugin-parallel": "^1.0" - }, - "bin": [ - "bin/pest" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - }, - "pest": { - "plugins": [ - "Pest\\Plugins\\Coverage", - "Pest\\Plugins\\Init", - "Pest\\Plugins\\Version", - "Pest\\Plugins\\Environment" - ] - }, - "laravel": { - "providers": [ - "Pest\\Laravel\\PestServiceProvider" - ] - } - }, - "autoload": { - "files": [ - "src/Functions.php", - "src/Pest.php" - ], - "psr-4": { - "Pest\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nuno Maduro", - "email": "enunomaduro@gmail.com" - } - ], - "description": "An elegant PHP Testing Framework.", - "keywords": [ - "framework", - "pest", - "php", - "test", - "testing", - "unit" - ], - "support": { - "issues": "https://github.com/pestphp/pest/issues", - "source": "https://github.com/pestphp/pest/tree/v1.21.2" - }, - "funding": [ - { - "url": "https://www.paypal.com/paypalme/enunomaduro", - "type": "custom" - }, - { - "url": "https://github.com/lukeraymonddowning", - "type": "github" - }, - { - "url": "https://github.com/nunomaduro", - "type": "github" - }, - { - "url": "https://github.com/octoper", - "type": "github" - }, - { - "url": "https://github.com/olivernybroe", - "type": "github" - }, - { - "url": "https://github.com/owenvoke", - "type": "github" - }, - { - "url": "https://www.patreon.com/nunomaduro", - "type": "patreon" - } - ], - "time": "2022-03-05T19:34:40+00:00" - }, - { - "name": "pestphp/pest-plugin", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/pestphp/pest-plugin.git", - "reference": "fc8519de148699fe612d9c669be60554cd2db4fa" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/pestphp/pest-plugin/zipball/fc8519de148699fe612d9c669be60554cd2db4fa", - "reference": "fc8519de148699fe612d9c669be60554cd2db4fa", - "shasum": "" - }, - "require": { - "composer-plugin-api": "^1.1 || ^2.0", - "php": "^7.3 || ^8.0" - }, - "conflict": { - "pestphp/pest": "<1.0" - }, - "require-dev": { - "composer/composer": "^1.10.19", - "pestphp/pest": "^1.0", - "pestphp/pest-dev-tools": "dev-master" - }, - "type": "composer-plugin", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - }, - "class": "Pest\\Plugin\\Manager" - }, - "autoload": { - "psr-4": { - "Pest\\Plugin\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "The Pest plugin manager", - "keywords": [ - "framework", - "manager", - "pest", - "php", - "plugin", - "test", - "testing", - "unit" - ], - "support": { - "source": "https://github.com/pestphp/pest-plugin/tree/v1.0.0" - }, - "funding": [ - { - "url": "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66BYDWAT92N6L", - "type": "custom" - }, - { - "url": "https://github.com/nunomaduro", - "type": "github" - }, - { - "url": "https://www.patreon.com/nunomaduro", - "type": "patreon" - } - ], - "time": "2021-01-03T15:53:42+00:00" - }, - { - "name": "phar-io/manifest", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/phar-io/manifest.git", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-phar": "*", - "ext-xmlwriter": "*", - "phar-io/version": "^3.0.1", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", - "support": { - "issues": "https://github.com/phar-io/manifest/issues", - "source": "https://github.com/phar-io/manifest/tree/2.0.3" - }, - "time": "2021-07-20T11:28:43+00:00" - }, - { - "name": "phar-io/version", - "version": "3.2.1", - "source": { - "type": "git", - "url": "https://github.com/phar-io/version.git", - "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", - "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Library for handling version information and constraints", - "support": { - "issues": "https://github.com/phar-io/version/issues", - "source": "https://github.com/phar-io/version/tree/3.2.1" - }, - "time": "2022-02-21T01:04:05+00:00" - }, - { - "name": "phpdocumentor/reflection-common", - "version": "2.2.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", - "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-2.x": "2.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jaap van Otterdijk", - "email": "opensource@ijaap.nl" - } - ], - "description": "Common reflection classes used by phpdocumentor to reflect the code structure", - "homepage": "http://www.phpdoc.org", - "keywords": [ - "FQSEN", - "phpDocumentor", - "phpdoc", - "reflection", - "static analysis" - ], - "support": { - "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", - "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" - }, - "time": "2020-06-27T09:03:43+00:00" - }, - { - "name": "phpdocumentor/reflection-docblock", - "version": "5.3.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "622548b623e81ca6d78b721c5e029f4ce664f170" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170", - "reference": "622548b623e81ca6d78b721c5e029f4ce664f170", - "shasum": "" - }, - "require": { - "ext-filter": "*", - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.2", - "phpdocumentor/type-resolver": "^1.3", - "webmozart/assert": "^1.9.1" - }, - "require-dev": { - "mockery/mockery": "~1.3.2", - "psalm/phar": "^4.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - }, - { - "name": "Jaap van Otterdijk", - "email": "account@ijaap.nl" - } - ], - "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "support": { - "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0" - }, - "time": "2021-10-19T17:43:47+00:00" - }, - { - "name": "phpdocumentor/type-resolver", - "version": "1.6.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "93ebd0014cab80c4ea9f5e297ea48672f1b87706" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/93ebd0014cab80c4ea9f5e297ea48672f1b87706", - "reference": "93ebd0014cab80c4ea9f5e297ea48672f1b87706", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" - }, - "require-dev": { - "ext-tokenizer": "*", - "psalm/phar": "^4.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-1.x": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - } - ], - "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", - "support": { - "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.0" - }, - "time": "2022-01-04T19:58:01+00:00" - }, - { - "name": "phpspec/prophecy", - "version": "v1.15.0", - "source": { - "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13", - "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.2", - "php": "^7.2 || ~8.0, <8.2", - "phpdocumentor/reflection-docblock": "^5.2", - "sebastian/comparator": "^3.0 || ^4.0", - "sebastian/recursion-context": "^3.0 || ^4.0" - }, - "require-dev": { - "phpspec/phpspec": "^6.0 || ^7.0", - "phpunit/phpunit": "^8.0 || ^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Prophecy\\": "src/Prophecy" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" - }, - { - "name": "Marcello Duarte", - "email": "marcello.duarte@gmail.com" - } - ], - "description": "Highly opinionated mocking framework for PHP 5.3+", - "homepage": "https://github.com/phpspec/prophecy", - "keywords": [ - "Double", - "Dummy", - "fake", - "mock", - "spy", - "stub" - ], - "support": { - "issues": "https://github.com/phpspec/prophecy/issues", - "source": "https://github.com/phpspec/prophecy/tree/v1.15.0" - }, - "time": "2021-12-08T12:19:24+00:00" - }, - { - "name": "phpunit/php-code-coverage", - "version": "9.2.15", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2e9da11878c4202f97915c1cb4bb1ca318a63f5f", - "reference": "2e9da11878c4202f97915c1cb4bb1ca318a63f5f", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "ext-xmlwriter": "*", - "nikic/php-parser": "^4.13.0", - "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.3", - "phpunit/php-text-template": "^2.0.2", - "sebastian/code-unit-reverse-lookup": "^2.0.2", - "sebastian/complexity": "^2.0", - "sebastian/environment": "^5.1.2", - "sebastian/lines-of-code": "^1.0.3", - "sebastian/version": "^3.0.1", - "theseer/tokenizer": "^1.2.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.2-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", - "homepage": "https://github.com/sebastianbergmann/php-code-coverage", - "keywords": [ - "coverage", - "testing", - "xunit" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.15" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2022-03-07T09:28:20+00:00" - }, - { - "name": "phpunit/php-file-iterator", - "version": "3.0.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", - "keywords": [ - "filesystem", - "iterator" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-12-02T12:48:52+00:00" - }, - { - "name": "phpunit/php-invoker", - "version": "3.1.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "ext-pcntl": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-pcntl": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Invoke callables with a timeout", - "homepage": "https://github.com/sebastianbergmann/php-invoker/", - "keywords": [ - "process" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-invoker/issues", - "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:58:55+00:00" - }, - { - "name": "phpunit/php-text-template", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", - "keywords": [ - "template" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-text-template/issues", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T05:33:50+00:00" - }, - { - "name": "phpunit/php-timer", - "version": "5.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", - "keywords": [ - "timer" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-timer/issues", - "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:16:10+00:00" - }, - { - "name": "phpunit/phpunit", - "version": "9.5.19", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "35ea4b7f3acabb26f4bb640f8c30866c401da807" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/35ea4b7f3acabb26f4bb640f8c30866c401da807", - "reference": "35ea4b7f3acabb26f4bb640f8c30866c401da807", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.3.1", - "ext-dom": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-xml": "*", - "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.10.1", - "phar-io/manifest": "^2.0.3", - "phar-io/version": "^3.0.2", - "php": ">=7.3", - "phpspec/prophecy": "^1.12.1", - "phpunit/php-code-coverage": "^9.2.13", - "phpunit/php-file-iterator": "^3.0.5", - "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.3", - "phpunit/php-timer": "^5.0.2", - "sebastian/cli-parser": "^1.0.1", - "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.5", - "sebastian/diff": "^4.0.3", - "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.3", - "sebastian/global-state": "^5.0.1", - "sebastian/object-enumerator": "^4.0.3", - "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.0", - "sebastian/version": "^3.0.2" - }, - "require-dev": { - "ext-pdo": "*", - "phpspec/prophecy-phpunit": "^2.0.1" - }, - "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" - }, - "bin": [ - "phpunit" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.5-dev" - } - }, - "autoload": { - "files": [ - "src/Framework/Assert/Functions.php" - ], - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "The PHP Unit Testing framework.", - "homepage": "https://phpunit.de/", - "keywords": [ - "phpunit", - "testing", - "xunit" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.19" - }, - "funding": [ - { - "url": "https://phpunit.de/sponsors.html", - "type": "custom" - }, - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2022-03-15T09:57:31+00:00" - }, - { - "name": "sebastian/cli-parser", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for parsing CLI options", - "homepage": "https://github.com/sebastianbergmann/cli-parser", - "support": { - "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:08:49+00:00" - }, - { - "name": "sebastian/code-unit", - "version": "1.0.8", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the PHP code units", - "homepage": "https://github.com/sebastianbergmann/code-unit", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit/issues", - "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:08:54+00:00" - }, - { - "name": "sebastian/code-unit-reverse-lookup", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Looks up which function or method a line of code belongs to", - "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", - "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:30:19+00:00" - }, - { - "name": "sebastian/comparator", - "version": "4.0.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/diff": "^4.0", - "sebastian/exporter": "^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - } - ], - "description": "Provides the functionality to compare PHP values for equality", - "homepage": "https://github.com/sebastianbergmann/comparator", - "keywords": [ - "comparator", - "compare", - "equality" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T15:49:45+00:00" - }, - { - "name": "sebastian/complexity", - "version": "2.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.7", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for calculating the complexity of PHP code units", - "homepage": "https://github.com/sebastianbergmann/complexity", - "support": { - "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T15:52:27+00:00" - }, - { - "name": "sebastian/diff", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3", - "symfony/process": "^4.2 || ^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - } - ], - "description": "Diff implementation", - "homepage": "https://github.com/sebastianbergmann/diff", - "keywords": [ - "diff", - "udiff", - "unidiff", - "unified diff" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:10:38+00:00" - }, - { - "name": "sebastian/environment", - "version": "5.1.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-posix": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", - "keywords": [ - "Xdebug", - "environment", - "hhvm" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:52:38+00:00" - }, - { - "name": "sebastian/exporter", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "https://www.github.com/sebastianbergmann/exporter", - "keywords": [ - "export", - "exporter" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-11-11T14:18:36+00:00" - }, - { - "name": "sebastian/global-state", - "version": "5.0.5", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2", - "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "ext-dom": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-uopz": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", - "keywords": [ - "global state" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.5" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2022-02-14T08:28:10+00:00" - }, - { - "name": "sebastian/lines-of-code", - "version": "1.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.6", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for counting the lines of code in PHP source code", - "homepage": "https://github.com/sebastianbergmann/lines-of-code", - "support": { - "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-11-28T06:42:11+00:00" - }, - { - "name": "sebastian/object-enumerator", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Traverses array structures and object graphs to enumerate all referenced objects", - "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "support": { - "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", - "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:12:34+00:00" - }, - { - "name": "sebastian/object-reflector", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Allows reflection of object attributes, including inherited and non-public ones", - "homepage": "https://github.com/sebastianbergmann/object-reflector/", - "support": { - "issues": "https://github.com/sebastianbergmann/object-reflector/issues", - "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:14:26+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "support": { - "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:17:30+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "support": { - "issues": "https://github.com/sebastianbergmann/resource-operations/issues", - "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:45:17+00:00" - }, - { - "name": "sebastian/type", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", - "reference": "b233b84bc4465aff7b57cf1c4bc75c86d00d6dad", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the types of the PHP type system", - "homepage": "https://github.com/sebastianbergmann/type", - "support": { - "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.0.0" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2022-03-15T09:54:48+00:00" - }, - { - "name": "sebastian/version", - "version": "3.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c6c1022351a901512170118436c764e473f6de8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", - "reference": "c6c1022351a901512170118436c764e473f6de8c", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that helps with managing the version number of Git-hosted PHP projects", - "homepage": "https://github.com/sebastianbergmann/version", - "support": { - "issues": "https://github.com/sebastianbergmann/version/issues", - "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:39:44+00:00" - }, - { - "name": "theseer/tokenizer", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/theseer/tokenizer.git", - "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", - "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-tokenizer": "*", - "ext-xmlwriter": "*", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - } - ], - "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", - "support": { - "issues": "https://github.com/theseer/tokenizer/issues", - "source": "https://github.com/theseer/tokenizer/tree/1.2.1" - }, - "funding": [ - { - "url": "https://github.com/theseer", - "type": "github" - } - ], - "time": "2021-07-28T10:34:58+00:00" - } - ], - "aliases": [], - "minimum-stability": "dev", - "stability-flags": [], - "prefer-stable": true, - "prefer-lowest": false, - "platform": { - "php": "^8.0" - }, - "platform-dev": [], - "plugin-api-version": "2.1.0" -} diff --git a/config/app.php b/config/app.php deleted file mode 100644 index ddaf88e..0000000 --- a/config/app.php +++ /dev/null @@ -1,81 +0,0 @@ - config('hyde.name', 'HydePHP'), - - /* - |-------------------------------------------------------------------------- - | Application Version - |-------------------------------------------------------------------------- - | - | This value determines the "version" your application is currently running - | in. You may want to follow the "Semantic Versioning" - Given a version - | number MAJOR.MINOR.PATCH when an update happens: https://semver.org. - | - */ - - 'version' => Hyde\Framework\Hyde::version(), - - /* - |-------------------------------------------------------------------------- - | Application Environment - |-------------------------------------------------------------------------- - | - | This value determines the "environment" your application is currently - | running in. This may determine how you prefer to configure various - | services the application utilizes. This can be overridden using - | the global command line "--env" option when calling commands. - | - | When using Hyde this setting should always be set to `production`. - | However, when developing the Hyde Core, set it to `development` - | in your .env to unlock the development commands. - | - */ - - 'env' => env('env', 'production'), - - /* - |-------------------------------------------------------------------------- - | Autoloaded Service Providers - |-------------------------------------------------------------------------- - | - | The service providers listed here will be automatically loaded on the - | request to your application. Feel free to add your own services to - | this array to grant expanded functionality to your applications. - | - */ - - 'providers' => [ - App\Providers\AppServiceProvider::class, - Hyde\Framework\HydeServiceProvider::class, - Hyde\Framework\HomeServiceProvider::class, - ], - - 'aliases' => [ - 'Hyde' => Hyde\Framework\Hyde::class, - ], - -]; diff --git a/config/commands.php b/config/commands.php deleted file mode 100644 index fd26a74..0000000 --- a/config/commands.php +++ /dev/null @@ -1,85 +0,0 @@ - NunoMaduro\LaravelConsoleSummary\SummaryCommand::class, - - /* - |-------------------------------------------------------------------------- - | Commands Paths - |-------------------------------------------------------------------------- - | - | This value determines the "paths" that should be loaded by the console's - | kernel. Foreach "path" present on the array provided below the kernel - | will extract all "Illuminate\Console\Command" based class commands. - | - */ - - 'paths' => [app_path('Commands')], - - /* - |-------------------------------------------------------------------------- - | Added Commands - |-------------------------------------------------------------------------- - | - | You may want to include a single command class without having to load an - | entire folder. Here you can specify which commands should be added to - | your list of commands. The console's kernel will try to load them. - | - */ - - 'add' => [ - // - ], - - /* - |-------------------------------------------------------------------------- - | Hidden Commands - |-------------------------------------------------------------------------- - | - | Your application commands will always be visible on the application list - | of commands. But you can still make them "hidden" specifying an array - | of commands below. All "hidden" commands can still be run/executed. - | - */ - - 'hidden' => [ - NunoMaduro\LaravelConsoleSummary\SummaryCommand::class, - Symfony\Component\Console\Command\DumpCompletionCommand::class, - Symfony\Component\Console\Command\HelpCommand::class, - Illuminate\Console\Scheduling\ScheduleRunCommand::class, - Illuminate\Console\Scheduling\ScheduleListCommand::class, - Illuminate\Console\Scheduling\ScheduleFinishCommand::class, - LaravelZero\Framework\Commands\StubPublishCommand::class, - Hyde\Framework\Commands\MakeValidatorCommand::class, - Hyde\Framework\Commands\PublishStubsCommand::class, - Hyde\Framework\Commands\Debug::class, - ], - - /* - |-------------------------------------------------------------------------- - | Removed Commands - |-------------------------------------------------------------------------- - | - | Do you have a service provider that loads a list of commands that - | you don't need? No problem. Laravel Zero allows you to specify - | below a list of commands that you don't to see in your app. - | - */ - - 'remove' => [ - Illuminate\Console\Scheduling\ScheduleRunCommand::class, - ], - -]; diff --git a/config/hyde.php b/config/hyde.php deleted file mode 100644 index 7e084b1..0000000 --- a/config/hyde.php +++ /dev/null @@ -1,198 +0,0 @@ - env('SITE_NAME', 'HydePHP'), - - - /* - |-------------------------------------------------------------------------- - | Site URL - |-------------------------------------------------------------------------- - | - | If you want, you can set your site's URL here or in the .env file. - | - | The URL will then be used in meta tags to create permalinks. - | If you are serving your site from a subdirectory, you will - | need to include that in the path without a trailing slash. - | - | Example: https://example.org/blog - | - */ - 'site_url' => env('SITE_URL', null), - - - /* - |-------------------------------------------------------------------------- - | Global Site Meta Tags - |-------------------------------------------------------------------------- - | - | While you can add any number of meta tags in the meta.blade.php component, - | this config setting allows you to easily customize some common metadata - | tags so increase your SEO score. You can keep them to their defaults - | or you can set a value to false or null to disable it completely. - | - | Note that some tags may be overwritten on certain pages, for instance post pages. - | - | Tip: See https://www.w3schools.com/tags/att_meta_name.asp - | for a list of tags and what what they are for. - | - */ - 'meta' => [ - // 'author' => 'Mr. Hyde', - // 'description' => 'My Hyde Blog', - // 'keywords' => 'Static Sites, Blogs, Documentation', - 'generator' => 'HydePHP ' . Hyde\Framework\Hyde::version(), - ], - - /* - |-------------------------------------------------------------------------- - | Features - |-------------------------------------------------------------------------- - | - | Some of Hyde's features are optional. Feel free to disable the features - | you don't need by removing or commenting them out from this array. - | This config concept is directly inspired by Laravel Jetstream. - | - */ - - 'features' => [ - Features::blogPosts(), - Features::bladePages(), - Features::markdownPages(), - Features::documentationPages(), - - Features::torchlight(), - ], - - - /* - |-------------------------------------------------------------------------- - | Footer Text - |-------------------------------------------------------------------------- - | - | Most websites have a footer with copyright details and contact information. - | You probably want to change the Markdown to include your information, - | though you are of course welcome to keep the attribution link! - | - | You can also customize the blade view if you want a more complex footer. - | You can disable it completely by setting `enabled` to `false`. - | - */ - - 'footer' => [ - 'enabled' => true, - 'markdown' => 'Site built with the Free and Open Source [HydePHP](https://github.com/hydephp/hyde). - License [MIT](https://github.com/hydephp/hyde/blob/master/LICENSE.md).' - ], - - - /* - |-------------------------------------------------------------------------- - | Custom Navigation Menu Links - |-------------------------------------------------------------------------- - | - | If you are looking to add custom navigation menu links, this is the place! - | - | Linking to an external site? Supply the full URI to the 'destination'. - | Keeping it internal? Pass the 'slug' relative to the document root. - | - | To get started quickly, you can uncomment the defaults here. - | Tip: Only the title and slug parameters are required. - | - */ - - 'navigationMenuLinks' => [ - // [ - // 'title' => 'GitHub', - // 'destination' => 'https://github.com/hydephp/hyde', - // 'priority' => 1200, - // ], - // [ - // 'title' => 'Featured Blog Post', - // 'slug' => 'posts/hello-world', - // ] - ], - - - /* - |-------------------------------------------------------------------------- - | Navigation Menu Blacklist - |-------------------------------------------------------------------------- - | There may be pages you want to exclude from the automatic navigation menu, - | such as error pages. Add their slugs here and they will not be included. - | - */ - - 'navigationMenuBlacklist' => [ - '404' - ], - - - /* - |-------------------------------------------------------------------------- - | Documentation Sidebar Page Order - |-------------------------------------------------------------------------- - | - | In the generated Documentation pages the navigation links in the sidebar - | are sorted alphabetically by default. As this rarely makes sense, you - | can reorder the page slugs in the list and the links will be sorted - | in that order. Link items without an entry here will have fall - | back to the default priority of 999, putting them last. - | - */ - - 'documentationPageOrder' => [ - 'readme', - 'installation', - 'getting-started', - ], - - /* - |-------------------------------------------------------------------------- - | Documentation Site Output Directory - |-------------------------------------------------------------------------- - | - | If you want to store the compiled documentation pages in a different - | directory than the default 'docs' directory, for example to set the - | specified version, you can specify the directory here. - | - | Note that you need to take care as to not set it to something that - | may conflict with other parts, such as media or posts directories. - | - | The default value is 'docs'. - | - */ - - 'docsDirectory' => 'master', - -]; diff --git a/config/logo.php b/config/logo.php deleted file mode 100644 index 13bb28a..0000000 --- a/config/logo.php +++ /dev/null @@ -1,85 +0,0 @@ - true, - - /* - |-------------------------------------------------------------------------- - | Logo Name - |-------------------------------------------------------------------------- - | - | This value determines the text that is rendered for the logo. - | It defaults to the app name, but it can be any other text - | value if the logo should be different to the app name. - | - */ - 'name' => ' ' . config('app.name'), - - /* - |-------------------------------------------------------------------------- - | Default Font - |-------------------------------------------------------------------------- - | - | This option defines the font which should be used for rendering. - | By default, one default font is shipped. However, you are free - | to download and use additional fonts: http://www.figlet.org. - | - */ - - // 'font' => \LaravelZero\Framework\Components\Logo\FigletString::DEFAULT_FONT, - 'font' => base_path('vendor/hyde/framework/resources/fonts/smslant.flf'), - - /* - |-------------------------------------------------------------------------- - | Output Width - |-------------------------------------------------------------------------- - | - | This option defines the maximum width of the output string. This is - | used for word-wrap as well as justification. Be careful when using - | small values, because they may result in an undefined behavior. - | - */ - - 'outputWidth' => 80, - - /* - |-------------------------------------------------------------------------- - | Justification - |-------------------------------------------------------------------------- - | - | This option defines the justification of the logo text. By default, - | justification is provided, which will work well on most of your - | console apps. Of course, you are free to change this value. - | - */ - - 'justification' => null, - - /* - |-------------------------------------------------------------------------- - | Right To Left - |-------------------------------------------------------------------------- - | - | This option defines the option in which the text is written. By, default - | the setting of the font-file is used. When justification is not defined, - | a text written from right-to-left is automatically right-aligned. - | - | Possible values: "right-to-left", "left-to-right", null - | - */ - - 'rightToLeft' => null, - -]; diff --git a/config/torchlight.php b/config/torchlight.php deleted file mode 100644 index 00e07d2..0000000 --- a/config/torchlight.php +++ /dev/null @@ -1,92 +0,0 @@ - [ - 'enabled' => true, - 'markdown' => ' -

- - Syntax highlighting by Torchlight.dev - -

' - ], - - // The Torchlight client caches highlighted code blocks. Here - // you can define which cache driver you'd like to use. If - // leave this blank your default app cache will be used. - 'cache' => env('TORCHLIGHT_CACHE_DRIVER'), - - // Cache blocks for 30 days. - 'cache_seconds' => env('TORCHLIGHT_CACHE_TTL', 60 * 60 * 24 * 30), - - // Which theme you want to use. You can find all the themes at - // https://torchlight.dev/docs/themes. - 'theme' => env('TORCHLIGHT_THEME', 'material-theme-palenight'), - - // If you want to use two separate themes for dark and light modes, - // you can use an array to define both themes. Torchlight renders - // both on the page, and you will be responsible for hiding one - // or the other depending on the dark / light mode via CSS. - // 'theme' => [ - // 'dark' => 'github-dark', - // 'light' => 'github-light', - // ], - - // Your API token from torchlight.dev. - 'token' => env('TORCHLIGHT_TOKEN'), - - // If you want to register the blade directives, set this to true. - 'blade_components' => true, - - // The Host of the API. - 'host' => env('TORCHLIGHT_HOST', 'https://api.torchlight.dev'), - - // We replace tabs in your code blocks with spaces in HTML. Set - // the number of spaces you'd like to use per tab. Set to - // `false` to leave literal tabs in the HTML. - 'tab_width' => 4, - - // If you pass a filename to the code component or in a markdown - // block, Torchlight will look for code snippets in the - // following directories. - 'snippet_directories' => [ - resource_path() - ], - - // Global options to control blocks-level settings. - // https://torchlight.dev/docs/options - 'options' => [ - // Turn line numbers on or off globally. - // 'lineNumbers' => false, - - // Control the `style` attribute applied to line numbers. - // 'lineNumbersStyle' => '', - - // Turn on +/- diff indicators. - // 'diffIndicators' => true, - - // If there are any diff indicators for a line, put them - // in place of the line number to save horizontal space. - // 'diffIndicatorsInPlaceOfLineNumbers' => true, - - // When lines are collapsed, this is the text that will - // be shown to indicate that they can be expanded. - // 'summaryCollapsedIndicator' => '...', - ] -]; diff --git a/config/view.php b/config/view.php deleted file mode 100644 index 1e7310c..0000000 --- a/config/view.php +++ /dev/null @@ -1,12 +0,0 @@ - [ - Hyde\Framework\Hyde::viewPath(), - ], - - 'compiled' => env( - 'VIEW_COMPILED_PATH', - realpath(storage_path('framework/views')) - ), -]; diff --git a/_docs/console-commands.md b/console-commands.md similarity index 100% rename from _docs/console-commands.md rename to console-commands.md diff --git a/_docs/customization.md b/customization.md similarity index 100% rename from _docs/customization.md rename to customization.md diff --git a/_docs/directory-structure.md b/directory-structure.md similarity index 100% rename from _docs/directory-structure.md rename to directory-structure.md diff --git a/_docs/getting-started.md b/getting-started.md similarity index 100% rename from _docs/getting-started.md rename to getting-started.md diff --git a/hyde b/hyde deleted file mode 100644 index 33aa752..0000000 --- a/hyde +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/env php -make(Illuminate\Contracts\Console\Kernel::class); - -$status = $kernel->handle( - $input = new Symfony\Component\Console\Input\ArgvInput, - new Symfony\Component\Console\Output\ConsoleOutput -); - -/* -|-------------------------------------------------------------------------- -| Shutdown The Application -|-------------------------------------------------------------------------- -| -| Once Artisan has finished running, we will fire off the shutdown events -| so that any final work may be done by the application before we shut -| down the process. This is the last thing to happen to the request. -| -*/ - -$kernel->terminate($input, $status); - -exit($status); diff --git a/_docs/index.md b/index.md similarity index 100% rename from _docs/index.md rename to index.md diff --git a/_docs/installation.md b/installation.md similarity index 100% rename from _docs/installation.md rename to installation.md diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index b3ce4f7..0000000 --- a/package-lock.json +++ /dev/null @@ -1,2359 +0,0 @@ -{ - "name": "hydefront", - "version": "0.1.0", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.16.7" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - }, - "@babel/highlight": { - "version": "7.16.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz", - "integrity": "sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@socket.io/base64-arraybuffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@socket.io/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", - "integrity": "sha512-dOlCBKnDw4iShaIsH/bxujKTM18+2TOAsYz+KSc11Am38H4q5Xw8Bbz97ZYdrVNM+um3p7w86Bvvmcn9q+5+eQ==", - "dev": true - }, - "@socket.io/component-emitter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.0.0.tgz", - "integrity": "sha512-2pTGuibAXJswAPJjaKisthqS/NOK5ypG4LYT6tEAV0S/mxW0zOIvYvGK0V8w8+SHxAm6vRMSjqSalFXeBAqs+Q==", - "dev": true - }, - "@tailwindcss/typography": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.2.tgz", - "integrity": "sha512-coq8DBABRPFcVhVIk6IbKyyHUt7YTEC/C992tatFB+yEx5WGBQrCgsSFjxHUr8AWXphWckadVJbominEduYBqw==", - "dev": true, - "requires": { - "lodash.castarray": "^4.4.0", - "lodash.isplainobject": "^4.0.6", - "lodash.merge": "^4.6.2" - } - }, - "@types/component-emitter": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz", - "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==", - "dev": true - }, - "@types/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true - }, - "@types/cors": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz", - "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==", - "dev": true - }, - "@types/node": { - "version": "17.0.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", - "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "acorn-node": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", - "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", - "dev": true, - "requires": { - "acorn": "^7.0.0", - "acorn-walk": "^7.0.0", - "xtend": "^4.0.2" - } - }, - "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "arg": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.1.tgz", - "integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==", - "dev": true - }, - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true - }, - "async-each-series": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/async-each-series/-/async-each-series-0.1.1.tgz", - "integrity": "sha1-dhfBkXQB/Yykooqtzj266Yr+tDI=", - "dev": true - }, - "axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "dev": true, - "requires": { - "follow-redirects": "^1.14.0" - } - }, - "backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", - "dev": true - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64id": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", - "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "browser-sync": { - "version": "2.27.9", - "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.27.9.tgz", - "integrity": "sha512-3zBtggcaZIeU9so4ja9yxk7/CZu9B3DOL6zkxFpzHCHsQmkGBPVXg61jItbeoa+WXgNLnr1sYES/2yQwyEZ2+w==", - "dev": true, - "requires": { - "browser-sync-client": "^2.27.9", - "browser-sync-ui": "^2.27.9", - "bs-recipes": "1.3.4", - "bs-snippet-injector": "^2.0.1", - "chokidar": "^3.5.1", - "connect": "3.6.6", - "connect-history-api-fallback": "^1", - "dev-ip": "^1.0.1", - "easy-extender": "^2.3.4", - "eazy-logger": "3.1.0", - "etag": "^1.8.1", - "fresh": "^0.5.2", - "fs-extra": "3.0.1", - "http-proxy": "^1.18.1", - "immutable": "^3", - "localtunnel": "^2.0.1", - "micromatch": "^4.0.2", - "opn": "5.3.0", - "portscanner": "2.1.1", - "qs": "6.2.3", - "raw-body": "^2.3.2", - "resp-modifier": "6.0.2", - "rx": "4.1.0", - "send": "0.16.2", - "serve-index": "1.9.1", - "serve-static": "1.13.2", - "server-destroy": "1.0.1", - "socket.io": "^4.4.1", - "ua-parser-js": "1.0.2", - "yargs": "^17.3.1" - } - }, - "browser-sync-client": { - "version": "2.27.9", - "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.27.9.tgz", - "integrity": "sha512-FHW8kydp7FXo6jnX3gXJCpHAHtWNLK0nx839nnK+boMfMI1n4KZd0+DmTxHBsHsF3OHud4V4jwoN8U5HExMIdQ==", - "dev": true, - "requires": { - "etag": "1.8.1", - "fresh": "0.5.2", - "mitt": "^1.1.3", - "rxjs": "^5.5.6" - } - }, - "browser-sync-ui": { - "version": "2.27.9", - "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.27.9.tgz", - "integrity": "sha512-rsduR2bRIwFvM8CX6iY/Nu5aWub0WB9zfSYg9Le/RV5N5DEyxJYey0VxdfWCnzDOoelassTDzYQo+r0iJno3qw==", - "dev": true, - "requires": { - "async-each-series": "0.1.1", - "connect-history-api-fallback": "^1", - "immutable": "^3", - "server-destroy": "1.0.1", - "socket.io-client": "^4.4.1", - "stream-throttle": "^0.1.3" - } - }, - "bs-recipes": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/bs-recipes/-/bs-recipes-1.3.4.tgz", - "integrity": "sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU=", - "dev": true - }, - "bs-snippet-injector": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/bs-snippet-injector/-/bs-snippet-injector-2.0.1.tgz", - "integrity": "sha1-YbU5PxH1JVntEgaTEANDtu2wTdU=", - "dev": true - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - } - }, - "chokidar-cli": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-3.0.0.tgz", - "integrity": "sha512-xVW+Qeh7z15uZRxHOkP93Ux8A0xbPzwK4GaqD8dQOYc34TlkqUhVSS59fK36DOp5WdJlrRzlYSy02Ht99FjZqQ==", - "dev": true, - "requires": { - "chokidar": "^3.5.2", - "lodash.debounce": "^4.0.8", - "lodash.throttle": "^4.1.1", - "yargs": "^13.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concurrently": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.0.0.tgz", - "integrity": "sha512-WKM7PUsI8wyXpF80H+zjHP32fsgsHNQfPLw/e70Z5dYkV7hF+rf8q3D+ScWJIEr57CpkO3OWBko6hwhQLPR8Pw==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "date-fns": "^2.16.1", - "lodash": "^4.17.21", - "rxjs": "^6.6.3", - "spawn-command": "^0.0.2-1", - "supports-color": "^8.1.0", - "tree-kill": "^1.2.2", - "yargs": "^16.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - } - } - }, - "connect": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", - "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", - "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.0", - "parseurl": "~1.3.2", - "utils-merge": "1.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", - "dev": true - }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true - }, - "cors": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", - "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, - "requires": { - "object-assign": "^4", - "vary": "^1" - } - }, - "cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "date-fns": { - "version": "2.28.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.28.0.tgz", - "integrity": "sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw==", - "dev": true - }, - "debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "defined": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", - "dev": true - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true - }, - "detective": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.0.tgz", - "integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==", - "dev": true, - "requires": { - "acorn-node": "^1.6.1", - "defined": "^1.0.0", - "minimist": "^1.1.1" - } - }, - "dev-ip": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dev-ip/-/dev-ip-1.0.1.tgz", - "integrity": "sha1-p2o+0YVb56ASu4rBbLgPPADcKPA=", - "dev": true - }, - "didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "dev": true - }, - "dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "dev": true - }, - "easy-extender": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz", - "integrity": "sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q==", - "dev": true, - "requires": { - "lodash": "^4.17.10" - } - }, - "eazy-logger": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/eazy-logger/-/eazy-logger-3.1.0.tgz", - "integrity": "sha512-/snsn2JqBtUSSstEl4R0RKjkisGHAhvYj89i7r3ytNUKW12y178KDZwXLXIgwDqLW6E/VRMT9qfld7wvFae8bQ==", - "dev": true, - "requires": { - "tfunk": "^4.0.0" - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true - }, - "engine.io": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.3.tgz", - "integrity": "sha512-rqs60YwkvWTLLnfazqgZqLa/aKo+9cueVfEi/dZ8PyGyaf8TLOxj++4QMIgeG3Gn0AhrWiFXvghsoY9L9h25GA==", - "dev": true, - "requires": { - "@types/cookie": "^0.4.1", - "@types/cors": "^2.8.12", - "@types/node": ">=10.0.0", - "accepts": "~1.3.4", - "base64id": "2.0.0", - "cookie": "~0.4.1", - "cors": "~2.8.5", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.3", - "ws": "~8.2.3" - } - }, - "engine.io-client": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.1.1.tgz", - "integrity": "sha512-V05mmDo4gjimYW+FGujoGmmmxRaDsrVr7AXA3ZIfa04MWM1jOfZfUwou0oNqhNwy/votUDvGDt4JA4QF4e0b4g==", - "dev": true, - "requires": { - "@socket.io/component-emitter": "~3.0.0", - "debug": "~4.3.1", - "engine.io-parser": "~5.0.0", - "has-cors": "1.1.0", - "parseqs": "0.0.6", - "parseuri": "0.0.6", - "ws": "~8.2.3", - "xmlhttprequest-ssl": "~2.0.0", - "yeast": "0.1.2" - } - }, - "engine.io-parser": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.3.tgz", - "integrity": "sha512-BtQxwF27XUNnSafQLvDi0dQ8s3i6VgzSoQMJacpIcGNrlUdfHSKbgm3jmjCVvQluGzqwujQMPAoMai3oYSTurg==", - "dev": true, - "requires": { - "@socket.io/base64-arraybuffer": "~1.0.2" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - } - }, - "fastq": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "finalhandler": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", - "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.1", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.3.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", - "dev": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true - }, - "fs-extra": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", - "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^3.0.0", - "universalify": "^0.1.0" - } - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-cors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "dependencies": { - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } - } - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "immutable": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", - "integrity": "sha1-wkOZUUVbs5kT2vKBN28VMOEErfM=", - "dev": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-number-like": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", - "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", - "dev": true, - "requires": { - "lodash.isfinite": "^3.3.2" - } - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "jsonfile": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", - "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "lilconfig": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.4.tgz", - "integrity": "sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA==", - "dev": true - }, - "limiter": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz", - "integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==", - "dev": true - }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "localtunnel": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-2.0.2.tgz", - "integrity": "sha512-n418Cn5ynvJd7m/N1d9WVJISLJF/ellZnfsLnx8WBWGzxv/ntNcFkJ1o6se5quUhCplfLGBNL5tYHiq5WF3Nug==", - "dev": true, - "requires": { - "axios": "0.21.4", - "debug": "4.3.2", - "openurl": "1.1.1", - "yargs": "17.1.1" - }, - "dependencies": { - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "yargs": { - "version": "17.1.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.1.1.tgz", - "integrity": "sha512-c2k48R0PwKIqKhPMWjeiF6y2xY/gPMUlro0sgxqXpbOIohWiLNXWslsootttv7E1e73QPAMQSg5FeySbVcpsPQ==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - } - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.castarray": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz", - "integrity": "sha1-wCUTUV4wna3dTCTGDP3c9ZdtkRU=", - "dev": true - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true - }, - "lodash.isfinite": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", - "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=", - "dev": true - }, - "lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", - "dev": true - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "lodash.throttle": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "mitt": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", - "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "nanoid": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", - "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", - "dev": true - }, - "negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-hash": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", - "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "openurl": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", - "integrity": "sha1-OHW0sO96UsFW8NtB1GCduw+Us4c=", - "dev": true - }, - "opn": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", - "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "parseqs": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz", - "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==", - "dev": true - }, - "parseuri": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz", - "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==", - "dev": true - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "portscanner": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.1.1.tgz", - "integrity": "sha1-6rtAnk3iSVD1oqUW01rnaTQ/u5Y=", - "dev": true, - "requires": { - "async": "1.5.2", - "is-number-like": "^1.0.3" - } - }, - "postcss": { - "version": "8.4.12", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz", - "integrity": "sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==", - "dev": true, - "requires": { - "nanoid": "^3.3.1", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "postcss-js": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", - "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", - "dev": true, - "requires": { - "camelcase-css": "^2.0.1" - } - }, - "postcss-load-config": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.3.tgz", - "integrity": "sha512-5EYgaM9auHGtO//ljHH+v/aC/TQ5LHXtL7bQajNAUBKUVKiYE8rYpFms7+V26D9FncaGe2zwCoPQsFKb5zF/Hw==", - "dev": true, - "requires": { - "lilconfig": "^2.0.4", - "yaml": "^1.10.2" - } - }, - "postcss-nested": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", - "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", - "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.6" - } - }, - "postcss-selector-parser": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz", - "integrity": "sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "prettier": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.0.tgz", - "integrity": "sha512-m2FgJibYrBGGgQXNzfd0PuDGShJgRavjUoRCw1mZERIWVSXF0iLzLm+aOqTAbLnC3n6JzUhAA8uZnFVghHJ86A==", - "dev": true - }, - "qs": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz", - "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=", - "dev": true - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, - "resp-modifier": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/resp-modifier/-/resp-modifier-6.0.2.tgz", - "integrity": "sha1-sSTeXE+6/LpUH0j/pzlw9KpFa08=", - "dev": true, - "requires": { - "debug": "^2.2.0", - "minimatch": "^3.0.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "rx": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", - "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", - "dev": true - }, - "rxjs": { - "version": "5.5.12", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", - "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", - "dev": true, - "requires": { - "symbol-observable": "1.0.1" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "send": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", - "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", - "dev": true, - "requires": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "~1.6.2", - "mime": "1.4.1", - "ms": "2.0.0", - "on-finished": "~2.3.0", - "range-parser": "~1.2.0", - "statuses": "~1.4.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "statuses": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", - "dev": true - } - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - } - } - }, - "serve-static": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", - "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.2", - "send": "0.16.2" - } - }, - "server-destroy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", - "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "socket.io": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.1.tgz", - "integrity": "sha512-s04vrBswdQBUmuWJuuNTmXUVJhP0cVky8bBDhdkf8y0Ptsu7fKU2LuLbts9g+pdmAdyMMn8F/9Mf1/wbtUN0fg==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "~2.0.0", - "debug": "~4.3.2", - "engine.io": "~6.1.0", - "socket.io-adapter": "~2.3.3", - "socket.io-parser": "~4.0.4" - }, - "dependencies": { - "socket.io-parser": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz", - "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", - "dev": true, - "requires": { - "@types/component-emitter": "^1.2.10", - "component-emitter": "~1.3.0", - "debug": "~4.3.1" - } - } - } - }, - "socket.io-adapter": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz", - "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==", - "dev": true - }, - "socket.io-client": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.4.1.tgz", - "integrity": "sha512-N5C/L5fLNha5Ojd7Yeb/puKcPWWcoB/A09fEjjNsg91EDVr5twk/OEyO6VT9dlLSUNY85NpW6KBhVMvaLKQ3vQ==", - "dev": true, - "requires": { - "@socket.io/component-emitter": "~3.0.0", - "backo2": "~1.0.2", - "debug": "~4.3.2", - "engine.io-client": "~6.1.1", - "parseuri": "0.0.6", - "socket.io-parser": "~4.1.1" - } - }, - "socket.io-parser": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.1.2.tgz", - "integrity": "sha512-j3kk71QLJuyQ/hh5F/L2t1goqzdTL0gvDzuhTuNSwihfuFUrcSji0qFZmJJPtG6Rmug153eOPsUizeirf1IIog==", - "dev": true, - "requires": { - "@socket.io/component-emitter": "~3.0.0", - "debug": "~4.3.1" - } - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", - "dev": true - }, - "spawn-command": { - "version": "0.0.2-1", - "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz", - "integrity": "sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A=", - "dev": true - }, - "statuses": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", - "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", - "dev": true - }, - "stream-throttle": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz", - "integrity": "sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM=", - "dev": true, - "requires": { - "commander": "^2.2.0", - "limiter": "^1.0.5" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "symbol-observable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", - "dev": true - }, - "tailwindcss": { - "version": "3.0.23", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.23.tgz", - "integrity": "sha512-+OZOV9ubyQ6oI2BXEhzw4HrqvgcARY38xv3zKcjnWtMIZstEsXdI9xftd1iB7+RbOnj2HOEzkA0OyB5BaSxPQA==", - "dev": true, - "requires": { - "arg": "^5.0.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.3", - "color-name": "^1.1.4", - "cosmiconfig": "^7.0.1", - "detective": "^5.2.0", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.2.11", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "normalize-path": "^3.0.0", - "object-hash": "^2.2.0", - "postcss": "^8.4.6", - "postcss-js": "^4.0.0", - "postcss-load-config": "^3.1.0", - "postcss-nested": "5.0.6", - "postcss-selector-parser": "^6.0.9", - "postcss-value-parser": "^4.2.0", - "quick-lru": "^5.1.1", - "resolve": "^1.22.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "tfunk": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tfunk/-/tfunk-4.0.0.tgz", - "integrity": "sha512-eJQ0dGfDIzWNiFNYFVjJ+Ezl/GmwHaFTBTjrtqNPW0S7cuVDBrZrmzUz6VkMeCR4DZFqhd4YtLwsw3i2wYHswQ==", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "dlv": "^1.1.3" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "ua-parser-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.2.tgz", - "integrity": "sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg==", - "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "ws": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", - "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", - "dev": true - }, - "xmlhttprequest-ssl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz", - "integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true - }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true - }, - "yargs": { - "version": "17.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.3.1.tgz", - "integrity": "sha512-WUANQeVgjLbNsEmGk20f+nlHgOqzRFpiGWVaBrYGYIGANIIu3lWjoyi0fNlFmJkvfhCZ6BXINe7/W2O2bV4iaA==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" - }, - "dependencies": { - "yargs-parser": { - "version": "21.0.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz", - "integrity": "sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg==", - "dev": true - } - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - }, - "yeast": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", - "dev": true - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index e05c58d..0000000 --- a/package.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "name": "hydefront", - "version": "0.1.0", - "description": "Frontend assets for HydePHP", - "main": "_site/index.html", - "directories": { - "test": "tests" - }, - "scripts": { - "test": "php hyde test", - "build": "php hyde build --no-ansi", - "watch": "concurrently \"npm:watch-livereload\" \"npm:watch-build\" \"npm:watch-sass\" \"npm:watch-tailwind\"", - "watch-livereload": "npx browser-sync _site -w", - "watch-build": "chokidar ./_posts/*.md ./_docs/*.md ./resources/views/**/*.blade.php -c \"npm run build\"", - "watch-sass": "sass resources/sass/app.scss _site/media/app.css -w", - "watch-tailwind": "npx tailwindcss -i ./resources/sass/tailwind.scss -o ./_site/media/tailwind.css --watch", - "prod": "sass resources/sass/app.scss _site/media/app.css --style=compressed && npx tailwindcss -i ./resources/sass/tailwind.scss -o ./_site/media/tailwind.css --minify", - "dev": " sass resources/sass/app.scss _site/media/app.css && npx tailwindcss -i ./resources/sass/tailwind.scss -o ./_site/media/tailwind.css" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/caendesilva/hyde.git" - }, - "keywords": [ - "hydephp", - "hyde", - "static", - "laravel", - "blog" - ], - "author": "Caen De Silva", - "license": "MIT", - "bugs": { - "url": "https://github.com/hyde/hyde/issues" - }, - "homepage": "https://github.com/hyde/hyde#readme", - "devDependencies": { - "@tailwindcss/typography": "^0.5.2", - "browser-sync": "^2.27.9", - "chokidar-cli": "^3.0.0", - "concurrently": "^7.0.0", - "prettier": "2.6.0", - "tailwindcss": "^3.0.23" - } -} diff --git a/phpunit.xml.dist b/phpunit.xml.dist deleted file mode 100644 index 701d765..0000000 --- a/phpunit.xml.dist +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - ./tests/Setup - - - ./tests/Feature - - - ./tests/Unit - - - ./tests/Validators - - - - - ./vendor/hyde/framework/src - - - - - validators - - - - - - diff --git a/resources/sass/_torchlight.scss b/resources/sass/_torchlight.scss deleted file mode 100644 index 1f215c2..0000000 --- a/resources/sass/_torchlight.scss +++ /dev/null @@ -1,34 +0,0 @@ -/** - * Styles for Torchlight - * - * Uses the styles from https://torchlight.dev/docs/css - */ - - .torchlight-enabled { - pre { - border-radius: 0.25rem; - margin-top: 1rem; - margin-bottom: 1rem; - overflow-x: auto; - padding: 0; - - code.torchlight { - display: block; - min-width: -webkit-max-content; - min-width: -moz-max-content; - min-width: max-content; - padding-top: 1rem; - padding-bottom: 1rem; - - .line { - padding-left: 1rem; - padding-right: 1rem; - } - - .line-number, - .summary-caret { - margin-right: 1rem; - } - } - } -} diff --git a/resources/sass/app.scss b/resources/sass/app.scss deleted file mode 100644 index 2b5158a..0000000 --- a/resources/sass/app.scss +++ /dev/null @@ -1,106 +0,0 @@ -/** -* Core Stylesheet for Hyde Zero -*/ - -@use '_torchlight.scss'; - -#main-navigation { - ul { - float: right; - margin-right: 1em; - li { - display: inline; - margin-left: 1em; - } - a { - opacity: 0.75; - &:hover, &.current { - opacity: 1; - } - } - } -} - -#post-article { - max-width: 960px; - #byline { - margin-bottom: 1em; - time, address, dl { - display: inline; - dt, dd { - display: inline; - } - } - } - h2:first-child { - margin-top: 0; - } -} - -#sidebar-navigation, #mobile-navigation { - li.list-item-active { - a { - border-left: 4px solid #5956eb; - padding-left: calc(1rem - 4px); - margin-left: -1rem; - padding-top: 0.25rem; - padding-bottom: 0.25rem; - color: #5956eb; - } - } -} - -#documentation-sidebar { - @media (max-width: 360px) { - width: 100%; - } -} - -#documentation-content { - max-width: 100vw; - @media (min-width: 768px) { - max-width: calc(100vw - 20rem); - } - - code { - max-width: 80vw; - overflow-x: auto; - display: inline-block; - vertical-align: top; - } - - pre { - code { - display: block; - max-width: unset; - } - } -} - -#sidebar-backdrop { - width: 100vw; - height: 100vh; - background: rgba(128, 128, 128, 0.5); - position: fixed; - top: 0; - left: 0; - cursor: pointer; -} - -.sidebar-button-wrapper { - &.open { - button.close { - display: none; - } - } - &.closed { - button.open { - display: none; - } - } -} - -// Bump contrast of the primary link color -.text-indigo-500, .hover\:text-indigo-500:hover { - color: #5956eb; -} \ No newline at end of file diff --git a/resources/sass/tailwind.scss b/resources/sass/tailwind.scss deleted file mode 100644 index bd6213e..0000000 --- a/resources/sass/tailwind.scss +++ /dev/null @@ -1,3 +0,0 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; \ No newline at end of file diff --git a/resources/views/pages/404.blade.php b/resources/views/pages/404.blade.php deleted file mode 100644 index 7517724..0000000 --- a/resources/views/pages/404.blade.php +++ /dev/null @@ -1,505 +0,0 @@ - - - - - 404 - Page not found - - - - - - - - - - - - - -
-
-
-
- 404 -
- -
- -

- Sorry, the page you are looking for could not be found. -

- - - - -
- -
- -
-
-
-
- - -
- - - \ No newline at end of file diff --git a/resources/views/pages/README.md b/resources/views/pages/README.md deleted file mode 100644 index 6a67358..0000000 --- a/resources/views/pages/README.md +++ /dev/null @@ -1,21 +0,0 @@ -# About the Pages directory - -If you want full control over a static page you can create blade views here, and they will be compiled into static HTML. - -Currently, only top level pages are supported. The filename of the generated file is based on the view filename. -For example, `resources\views\pages\custom-page.blade.php` gets saved as `_site\custom-page.html`. - -## ⚠ Warning: -Files here take precedence over files in _pages! Do not use duplicate slugs. - -## Using the layout -If you want to match the styles of the rest of your app you can extend the default layout. -```blade -@extends('hyde::layouts.app') -@section('content') - -// Place content here - -@endsection -``` - diff --git a/resources/views/pages/gallery.blade.php b/resources/views/pages/gallery.blade.php deleted file mode 100644 index 38f86d9..0000000 --- a/resources/views/pages/gallery.blade.php +++ /dev/null @@ -1,162 +0,0 @@ -@extends('hyde::layouts.app') -@section('content') - -
-

🚨 Heads up! This page is still under construction! đŸ‘ˇâ€â™‚ī¸

- See the source, and contribute, at GitHub! -
- -
-

- Turn Markdown into Blog Posts -

- - Write content. Not code.* - -
- *Unless you want to, of course. -
-
- Code Snippet:
-
-			---
-			title: Hello World!
-			description: Short post excerpt for previews and meta tags
-			category: demo
-			author: mr_hyde
-			date: 2022-03-29 09:16
-			---
-			
-			## Write something awesome.
-			
-			Lorem markdownum Austri occupat redire sum sponte arcus,
-			[ferae](http://www.aetheraet.net/lacrimissortita.aspx) longo,
-			timuit magnanimus aera, violentam. Tractu ter.
-			
-			1. Pelopeia et terras iussa cavernas
-			2. Petit ignoscite ac nuda miserum Tereus
-			3. Tuli facinus Panaque virgo sentire copia - -
-
- -
-

- Create Markdown Driven Pages -

- - With ease. Front Matter included. - - -
- screenshot.png -
-

- View source on GitHub -

-
- -
-

- Beautiful Documentation Pages -

- - All without breaking a sweat. - - -
- screenshot.png -
-

- View source on GitHub -

-
- -
-

- Fully Mobile Friendly, of course. -

- - Enjoy your site in any size of screen. - - -
-
-
-
-
- -
-
- -
-
- -
-
-
-
-
-
- - -
-
-

- Clean Semantic HTML -

- - Data Rich, SEO Friendly, and Accessible. - -
-
- -
-

_site/alice-in-wonderland.html

<article id="post-article" itemscope itemtype="https://schema.org/Article">
    <meta itemprop="identifier" content="alice-in-wonderland" />
    <header role="doc-pageheader">
        <h1 itemprop="headline">
            Alice&#039;s Adventures in Wonderland
        </h1>
        <div id="byline" aria-label="About the post" role="doc-introduction">
            Posted
            <time itemprop="dateCreated datePublished" datetime="1865-11-18 18:52"
                title="1865-11-18 18:52">1865-11-18 18:52</time>
            by author
            <address itemprop="author publisher" itemscope
                itemtype="https://schema.org/Person">
                <span itemprop="name">Lewis Carroll</span>
            </address>
            in the category "novels"
        </div>
    </header>
    <div itemprop="articleBody">
        <h2>CHAPTER I. DOWN THE RABBIT-HOLE.</h2>
        <blockquote>
            <p>
                This piece of work is in the public domain and
                was made available through
                <a href="https://en.wikisource.org/wiki/">Wikisource</a>.
            </p>
        </blockquote>
        <p>
            Alice was beginning to get very tired of sitting by
            her sister on the bank, and of having nothing to do:
            once or twice she had peeped into the book her
            sister was reading, but it had no pictures or
            conversations in it, &quot;and what is the use of a
            book,&quot; thought Alice, &quot;without pictures or
            conversations?&quot;
        </p>
    </div>
</article>
- -
- See source code and full HTML on GitHub -
-
- -
- - -
- - - - - -@endsection \ No newline at end of file diff --git a/resources/views/pages/index.blade.php b/resources/views/pages/index.blade.php deleted file mode 100644 index 0f2a594..0000000 --- a/resources/views/pages/index.blade.php +++ /dev/null @@ -1,36 +0,0 @@ -@extends('hyde::layouts.app') -@section('content') - -
-

- HydePHP -

-
- - Static Blog and Documentation-Aware Site Generator - built on top of the Laravel Zero Framework. - -
-
{{-- Buttons based on https://tailwindcomponents.com/component/tailwind-css-buttons --}} - Latest Posts - Documentation -
-
- -
-
-

- Latest Posts

-
- -
- @foreach(\Hyde\Framework\Models\MarkdownPost::getCollection() as $post) - @include('hyde::components.article-excerpt') - @endforeach -
-
- - - -@endsection diff --git a/ruleset.xml b/ruleset.xml deleted file mode 100644 index 561e769..0000000 --- a/ruleset.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - -App/ - - - -*.blade.php - - - -.build/ - - \ No newline at end of file diff --git a/storage/app/.gitignore b/storage/app/.gitignore deleted file mode 100644 index c96a04f..0000000 --- a/storage/app/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore \ No newline at end of file diff --git a/storage/framework/views/.gitignore b/storage/framework/views/.gitignore deleted file mode 100644 index c96a04f..0000000 --- a/storage/framework/views/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore \ No newline at end of file diff --git a/tailwind.config.js b/tailwind.config.js deleted file mode 100644 index a1724d8..0000000 --- a/tailwind.config.js +++ /dev/null @@ -1,82 +0,0 @@ -const defaultTheme = require('tailwindcss/defaultTheme'); - -module.exports = { - darkMode: 'class', - content: [ - './_site/**/*.html', - './resources/views/**/*.blade.php', - './vendor/hyde/framework/resources/views/**/*.blade.php', - ], - - theme: { - extend: { - typography: { - DEFAULT: { - css: { - lineHeight: '1.5em', - h2: { - marginBottom: '0.75em', - marginTop: '1.5em', - }, - a: { - color: '#5956eb', - '&:hover': { - color: '#4f46e5', - }, - textDecoration: 'none' - }, - blockquote: { - backgroundColor: '#80808020', - borderLeftColor: '#d1d5db', - color: '#1f2937', - fontWeight: 500, - fontStyle: 'unset', - lineHeight: '1.25em', - paddingLeft: '0.75em', - paddingTop: '.25em', - paddingBottom: '.25em', - marginTop: '1em', - marginBottom: '1em', - p: { - paddingRight: '.25em', - marginTop: '.25em', - marginBottom: '.25em', - }, - 'p::before': { - content: 'unset', - }, - 'p::after': { - content: 'unset', - }, - }, - code: { - font: 'unset', - backgroundColor: '#80808033', - paddingLeft: '4px', - paddingRight: '4px', - marginLeft: '-2px', - marginRight: '1px', - borderRadius: '4px', - whiteSpace: 'pre', - }, - 'code::before': { - content: 'unset', - }, - 'code::after': { - content: 'unset', - }, - pre: { - code: { - fontFamily: "'Fira Code Regular', Consolas, Monospace, 'Courier New'", - } - } - }, - }, - }, - }, - }, - - plugins: [ - require('@tailwindcss/typography') - ], -}; diff --git a/tests/CreatesApplication.php b/tests/CreatesApplication.php deleted file mode 100644 index 9fa8199..0000000 --- a/tests/CreatesApplication.php +++ /dev/null @@ -1,23 +0,0 @@ -make(Kernel::class)->bootstrap(); - - return $app; - } -} diff --git a/tests/Feature/Commands/BuildStaticSiteCommandTest.php b/tests/Feature/Commands/BuildStaticSiteCommandTest.php deleted file mode 100644 index a9224e1..0000000 --- a/tests/Feature/Commands/BuildStaticSiteCommandTest.php +++ /dev/null @@ -1,132 +0,0 @@ -resetFileEnvironment(); - - $this->assertFileExists(Hyde::path('_data/authors.yml')); - $this->assertFileExists(Hyde::path('_posts/my-new-post.md')); - $this->assertFileExists(Hyde::path('_posts/alice-in-wonderland.md')); - $this->assertFileExists(Hyde::path('_pages/markdown.md')); - - $this->assertFileDoesNotExist(Hyde::path('_site/index.html')); - $this->assertFileDoesNotExist(Hyde::path('_site/404.html')); - - $this->assertEquals(5, $this->countItemsInDirectory('_media')); - - $directoriesExpectedToBeEmpty = [ - '_docs', - '_drafts', - ]; - - foreach ($directoriesExpectedToBeEmpty as $directory) { - $this->assertTrue($this->checkIfDirectoryIsEmpty($directory), "Directory $directory is not empty."); - } - } - - public function test_command_returns_zero_exit_code() - { - $this->artisan('build')->assertExitCode(0); - } - - public function test_build_command_contains_expected_output() - { - $this->artisan('build') - ->expectsOutputToContain('Building your static site') - ->expectsOutput('Transferring Media Assets...') - ->expectsOutput('Creating Markdown Posts...') - ->expectsOutput('No Documentation Pages found. Skipping...') - ->expectsOutput('Creating Custom Blade Pages...') - ->expectsOutputToContain('All done! Finished in') - ->expectsOutput('Congratulations! 🎉 Your static site has been built!') - ->expectsOutput("Your new homepage is stored here -> file://" . str_replace( - '\\', - '/', - realpath(Hyde::path('_site')) - ) . '/index.html') - ->assertExitCode(0); - } - - public function test_build_command_creates_html_files() - { - $this->assertFileExists(Hyde::path('_site/index.html')); - $this->assertFileExists(Hyde::path('_site/404.html')); - $this->assertFileExists(Hyde::path('_site/posts/my-new-post.html')); - } - - public function test_build_command_transfers_media_asset_files() - { - $this->assertEquals(5, $this->countItemsInDirectory('_site/media')); - } - - public function test_compiled_index_file_seems_valid() - { - $file = Hyde::path('_site/index.html'); - $this->assertFileExists($file); - $this->assertGreaterThan(1024, filesize($file), 'Failed asserting that index.html is larger than one kilobyte'); - $stream = file_get_contents($file); - $this->assertStringContainsStringIgnoringCase('', $stream); - $this->assertStringContainsString('HydePHP', $stream); - $this->assertStringContainsString('tailwind', $stream); - unset($stream); - } - - public function test_compiled_404_file_seems_valid() - { - $file = Hyde::path('_site/404.html'); - $this->assertFileExists($file); - $this->assertGreaterThan(1024, filesize($file), 'Failed asserting that 404.html is larger than one kilobyte'); - $stream = file_get_contents($file); - $this->assertStringContainsStringIgnoringCase('', $stream); - $this->assertStringContainsString('404 - Page not found', $stream); - $this->assertStringContainsString('Sorry, the page you are looking for could not be found.', $stream); - unset($stream); - } - - // Full post validations will be in a separate feature test - public function test_blog_posts_were_created() - { - $this->assertFileExists(Hyde::path('_site/posts/my-new-post.html')); - $this->assertFileExists(Hyde::path('_site/posts/alice-in-wonderland.html')); - } - - - public function test_progress_bars_are_skipped_when_source_files_are_empty() - { - $this->resetDefaultDirectories(); - $this->artisan('build') - ->expectsOutput('No Media Assets found. Skipping...') - ->expectsOutput('No Markdown Posts found. Skipping...') - ->expectsOutput('No Markdown Pages found. Skipping...') - ->expectsOutput('No Documentation Pages found. Skipping...') - ->expectsOutput('No Blade Pages found. Skipping...') - ->assertExitCode(0); - } - - private function checkIfDirectoryIsEmpty(string $directory): bool - { - $scan = scandir(Hyde::path($directory), SCANDIR_SORT_NONE); - if ($scan) { - return !isset($scan[2]); - } - return false; - } - - private function countItemsInDirectory(string $directory): int - { - $scan = scandir(Hyde::path($directory), SCANDIR_SORT_NONE); - return count($scan) - 2; - } -} diff --git a/tests/Feature/Commands/DebugCommandTest.php b/tests/Feature/Commands/DebugCommandTest.php deleted file mode 100644 index 52771a9..0000000 --- a/tests/Feature/Commands/DebugCommandTest.php +++ /dev/null @@ -1,17 +0,0 @@ -artisan('debug')->assertExitCode(0); -}); - -it('prints debug information', function () { - $this->artisan('debug') - ->expectsOutput('HydePHP Debug Screen') - ->expectsOutputToContain('Git Version:') - ->expectsOutputToContain('Hyde Version:') - ->expectsOutputToContain('Framework Version:') - ->expectsOutputToContain('App Env:') - ->expectsOutputToContain('Project directory:') - ->expectsOutputToContain('Enabled features:') - ->assertExitCode(0); -}); \ No newline at end of file diff --git a/tests/Feature/Commands/HydePublishConfigsCommandTest.php b/tests/Feature/Commands/HydePublishConfigsCommandTest.php deleted file mode 100644 index d8d4e54..0000000 --- a/tests/Feature/Commands/HydePublishConfigsCommandTest.php +++ /dev/null @@ -1,66 +0,0 @@ -artisan('publish:configs')->assertExitCode(0); - } - - public function test_command_returns_expected_output() - { - $this->artisan('publish:configs') - ->expectsOutputToContain('Copied Directory') - ->expectsOutput('Publishing complete.') - ->assertExitCode(0); - } - - public function test_config_files_are_published() - { - // Delete an non-critical file - unlink(Hyde::path('config/view.php')); - - $this->assertFileDoesNotExist(Hyde::path('config/view.php')); - - $this->artisan('publish:configs')->assertExitCode(0); - - $this->assertFileExists(Hyde::path('config/view.php')); - } - - public function test_that_files_are_not_overwritten_by_default() - { - file_put_contents(Hyde::path('config/view.php'), 'artisan('publish:configs')->assertExitCode(0); - - $this->assertStringContainsString( - 'This should not be overwritten', - file_get_contents(Hyde::path('config/view.php')) - ); - - $this->assertStringNotContainsString( - 'VIEW_COMPILED_PATH', - file_get_contents(Hyde::path('config/view.php')) - ); - } - - public function test_that_files_are_overwritten_when_force_flag_is_set() - { - file_put_contents(Hyde::path('config/view.php'), 'artisan('publish:configs --force')->assertExitCode(0); - - $this->assertStringNotContainsString( - 'This should be overwritten', - file_get_contents(Hyde::path('config/view.php')) - ); - - $this->assertStringContainsString( - 'VIEW_COMPILED_PATH', - file_get_contents(Hyde::path('config/view.php')) - ); - } -} diff --git a/tests/Feature/Commands/HydePublishHomepageCommandTest.php b/tests/Feature/Commands/HydePublishHomepageCommandTest.php deleted file mode 100644 index 362d4c3..0000000 --- a/tests/Feature/Commands/HydePublishHomepageCommandTest.php +++ /dev/null @@ -1,200 +0,0 @@ -file = Hyde::path('resources/views/pages/index.blade.php'); - } - - /** - * Setup the test environment. - * @return void - */ - protected function setUp(): void - { - parent::setUp(); - - if (file_exists($this->file)) { - unlink($this->file); - } - } - - public function test_command_returns_expected_output() - { - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsOutput('Selected page [welcome]') - ->expectsOutput('Published selected homepage') - ->expectsQuestion('Would you like to rebuild the site?', 'no') - ->assertExitCode(0); - } - - public function test_file_gets_published() - { - $this->assertFileDoesNotExist($this->file); - - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsOutput('Published selected homepage') - ->expectsQuestion('Would you like to rebuild the site?', 'no') - ->assertExitCode(0); - - $this->assertFileExists($this->file); - } - - public function test_that_files_are_not_overwritten_by_default() - { - file_put_contents($this->file, 'This should not be overwritten'); - - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsOutput('Published selected homepage') - ->expectsQuestion('Would you like to rebuild the site?', 'no') - ->assertExitCode(0); - - $this->assertFileExists($this->file); - - $this->assertStringContainsString( - 'This should not be overwritten', - file_get_contents($this->file) - ); - } - - public function test_that_files_are_overwritten_when_force_flag_is_set() - { - file_put_contents($this->file, 'This should be overwritten'); - - $this->artisan('publish:homepage --force') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsOutput('Published selected homepage') - ->expectsQuestion('Would you like to rebuild the site?', 'no') - ->assertExitCode(0); - - $this->assertFileExists($this->file); - - $this->assertStringNotContainsString( - 'This should be overwritten', - file_get_contents($this->file) - ); - } - - public function test_can_select_and_publish_blank() - { - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-blank') - ->expectsOutput('Selected page [blank]') - ->expectsQuestion('Would you like to rebuild the site?', 'no') - ->assertExitCode(0); - - $stream = file_get_contents($this->file); - $this->assertStringContainsString( - '

Hello World!

', - $stream - ); - $this->assertStringNotContainsString('Latest Posts', $stream); - $this->assertStringNotContainsString('This is the default homepage stored as index.blade.php', $stream); - } - - public function test_can_select_and_publish_post_feed() - { - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-post-feed') - ->expectsOutput('Selected page [post-feed]') - ->expectsQuestion('Would you like to rebuild the site?', 'no') - ->assertExitCode(0); - - $stream = file_get_contents($this->file); - $this->assertStringNotContainsString( - '

Hello World!

', - $stream - ); - $this->assertStringContainsString('Latest Posts', $stream); - $this->assertStringNotContainsString('This is the default homepage stored as index.blade.php', $stream); - } - - public function test_can_select_and_publish_welcome() - { - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsOutput('Selected page [welcome]') - ->expectsQuestion('Would you like to rebuild the site?', 'no') - ->assertExitCode(0); - - $stream = file_get_contents($this->file); - $this->assertStringNotContainsString( - '

Hello World!

', - $stream - ); - $this->assertStringNotContainsString('Latest Posts', $stream); - $this->assertStringContainsString('This is the default homepage stored as index.blade.php', $stream); - } - - public function test_ask_to_rebuild_site_prompt_handles_decline() - { - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsQuestion('Would you like to rebuild the site?', 'no') - ->expectsOutput('Okay, you can always run the build later!') - ->assertExitCode(0); - } - - public function test_ask_to_rebuild_site_prompt_handles_affirmative_response() - { - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsQuestion('Would you like to rebuild the site?', 'yes') - ->expectsOutput('Okay, building site!') - ->expectsOutput('Site is built!') - ->assertExitCode(0); - } - - public function test_site_was_not_rebuilt_after_declined_response() - { - // Remove any old files first - if (file_exists(Hyde::path('_site/index.html'))) { - unlink(Hyde::path('_site/index.html')); - } - $this->assertFileDoesNotExist(Hyde::path('_site/index.html')); - - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsQuestion('Would you like to rebuild the site?', 'n') - ->expectsOutput('Okay, you can always run the build later!') - ->assertExitCode(0); - - $this->assertFileDoesNotExist(Hyde::path('_site/index.html')); - } - - public function test_site_was_rebuilt_after_affirmative_response() - { - // Remove any old files first - if (file_exists(Hyde::path('_site/index.html'))) { - unlink(Hyde::path('_site/index.html')); - } - $this->assertFileDoesNotExist(Hyde::path('_site/index.html')); - - $this->artisan('publish:homepage') - ->expectsQuestion('Which homepage do you want to publish?', 'homepage-welcome') - ->expectsQuestion('Would you like to rebuild the site?', 'y') - ->expectsOutput('Okay, building site!') - ->expectsOutput('Site is built!') - ->assertExitCode(0); - - $this->assertFileExists(Hyde::path('_site/index.html')); - } -} diff --git a/tests/Feature/Commands/MakePostCommandTest.php b/tests/Feature/Commands/MakePostCommandTest.php deleted file mode 100644 index ba03cd9..0000000 --- a/tests/Feature/Commands/MakePostCommandTest.php +++ /dev/null @@ -1,96 +0,0 @@ -getPath()); - - parent::tearDown(); - } - - public function test_command_has_expected_output_and_creates_valid_file() - { - // Assert that no old file exists which would cause issues - $this->assertFileDoesNotExist($this->getPath()); - - $this->artisan('make:post') - ->expectsQuestion("What is the title of the post?", 'Test Post') - ->expectsQuestion("Write a short post excerpt/description", 'A short description') - ->expectsQuestion('What is your (the author\'s) name?', 'PHPUnit') - ->expectsQuestion('What is the primary category of the post?', 'general') - ->expectsOutput('Creating a post with the following details:') - ->expectsConfirmation('Do you wish to continue?', 'yes') - - ->assertExitCode(0); - - $this->assertFileExists($this->getPath()); - $this->assertStringContainsString( - 'title: Test Post', - file_get_contents($this->getPath()) - ); - } - - public function test_that_files_are_not_overwritten_when_force_flag_is_not_set() - { - file_put_contents($this->getPath(), 'This should not be overwritten'); - $this->artisan('make:post') - ->expectsQuestion("What is the title of the post?", 'Test Post') - ->expectsQuestion("Write a short post excerpt/description", 'A short description') - ->expectsQuestion('What is your (the author\'s) name?', 'PHPUnit') - ->expectsQuestion('What is the primary category of the post?', 'general') - ->expectsOutput('Creating a post with the following details:') - - ->expectsConfirmation('Do you wish to continue?', 'yes') - ->expectsOutput('If you want to overwrite the file supply the --force flag.') - - ->assertExitCode(409); - - $this->assertStringContainsString( - 'This should not be overwritten', - file_get_contents($this->getPath()) - ); - } - - public function test_that_files_are_overwritten_when_force_flag_is_set() - { - file_put_contents($this->getPath(), 'This should be overwritten'); - $this->artisan('make:post --force') - ->expectsQuestion("What is the title of the post?", 'Test Post') - ->expectsQuestion("Write a short post excerpt/description", 'A short description') - ->expectsQuestion('What is your (the author\'s) name?', 'PHPUnit') - ->expectsQuestion('What is the primary category of the post?', 'general') - ->expectsOutput('Creating a post with the following details:') - ->expectsConfirmation('Do you wish to continue?', 'yes') - - ->assertExitCode(0); - - $this->assertStringNotContainsString( - 'This should be overwritten', - file_get_contents($this->getPath()) - ); - $this->assertStringContainsString( - 'title: Test Post', - file_get_contents($this->getPath()) - ); - } -} diff --git a/tests/Feature/Commands/StaticSiteBuilderPostModuleTest.php b/tests/Feature/Commands/StaticSiteBuilderPostModuleTest.php deleted file mode 100644 index 043d988..0000000 --- a/tests/Feature/Commands/StaticSiteBuilderPostModuleTest.php +++ /dev/null @@ -1,69 +0,0 @@ -file = Hyde::path('_site/posts/alice-in-wonderland.html'); - } - - public function test_setup() - { - $this->resetFileEnvironment(); - - $this->artisan('build'); - - $this->assertTrue(true); - } - public function test_blog_post_exists() - { - $this->assertFileExists($this->file); - } - - public function test_created_post_contains_valid_html() - { - $this->assertGreaterThan(1024, filesize($this->file), 'Failed asserting that file is larger than one kilobyte'); - - $stream = file_get_contents($this->file); - $this->assertStringContainsStringIgnoringCase('', $stream); - $this->assertStringContainsString('HydePHP', $stream); - $this->assertStringContainsString('tailwind', $stream); - } - - - public function test_created_post_contains_expected_content() - { - $stream = file_get_contents($this->file); - $this->assertStringContainsString('Alice's Adventures in Wonderland', $stream); - $this->assertStringContainsString('Lewis Carroll', $stream); - $this->assertStringContainsString('

CHAPTER I. DOWN THE RABBIT-HOLE.

', $stream); - $this->assertStringContainsString('So she was considering in her own mind, (as well as she could, for the hot day made her feel very sleepy and stupid,) whether the pleasure of making a daisy-chain would be worth the trouble of getting up and picking the daisies, when suddenly a white rabbit with pink eyes ran close by her.', $stream); - $this->assertStringContainsString('

Illustration d\'origine (1865), par John Tenniel

', $stream); - } - -} diff --git a/tests/Feature/Commands/ValidateCommandTest.php b/tests/Feature/Commands/ValidateCommandTest.php deleted file mode 100644 index 02938ec..0000000 --- a/tests/Feature/Commands/ValidateCommandTest.php +++ /dev/null @@ -1,12 +0,0 @@ -artisan('validate')->assertExitCode(0); -}); - -it('prints debug information', function () { - $this->artisan('validate') - ->expectsOutput('Running validation tests!') - ->expectsOutput('All done!') - ->assertExitCode(0); -}); \ No newline at end of file diff --git a/tests/Feature/DocumentationPageTest.php b/tests/Feature/DocumentationPageTest.php deleted file mode 100644 index 6c57135..0000000 --- a/tests/Feature/DocumentationPageTest.php +++ /dev/null @@ -1,81 +0,0 @@ -assertIsArray($array); - $this->assertCount(1, $array); - $this->assertArrayHasKey('phpunit-test', array_flip($array)); - } - - public function test_exception_is_thrown_for_missing_slug() - { - $this->expectException(\Exception::class); - $this->expectExceptionMessage('File _docs/invalid-file.md not found.'); - new DocumentationPageParser('invalid-file'); - } - - public function test_can_parse_documentation_page() - { - $parser = new DocumentationPageParser('phpunit-test'); - $this->assertInstanceOf(DocumentationPageParser::class, $parser); - } - - public function test_title_was_inferred_from_heading() - { - $parser = new DocumentationPageParser('phpunit-test'); - $this->assertIsString($parser->title); - $this->assertEquals('PHPUnit Test File', $parser->title); - } - - public function test_parser_contains_body_text() - { - $parser = new DocumentationPageParser('phpunit-test'); - $this->assertIsString($parser->body); - $this->assertEquals("# PHPUnit Test File \n Hello World!", $parser->body); - } - - /** - * Test the Model - */ - - public function test_can_get_page_model_object() - { - $parser = new DocumentationPageParser('phpunit-test'); - $object = $parser->get(); - $this->assertInstanceOf(DocumentationPage::class, $object); - - return $object; - } - - /** - * @depends test_can_get_page_model_object - */ - public function test_created_model_contains_expected_data(DocumentationPage $object) - { - $this->assertEquals('PHPUnit Test File', $object->title); - $this->assertEquals("# PHPUnit Test File \n Hello World!", $object->content); - $this->assertEquals('phpunit-test', $object->slug); - } - -} diff --git a/tests/Feature/GeneratesDocumentationSidebarTest.php b/tests/Feature/GeneratesDocumentationSidebarTest.php deleted file mode 100644 index 2eff0ef..0000000 --- a/tests/Feature/GeneratesDocumentationSidebarTest.php +++ /dev/null @@ -1,48 +0,0 @@ -assertIsArray($array); - $this->assertCount(3, $array); - } - -} \ No newline at end of file diff --git a/tests/Pest.php b/tests/Pest.php deleted file mode 100644 index 8dea162..0000000 --- a/tests/Pest.php +++ /dev/null @@ -1,47 +0,0 @@ -in('Feature'); - -/* -|-------------------------------------------------------------------------- -| Expectations -|-------------------------------------------------------------------------- -| -| When you're writing tests, you often need to check that values meet certain conditions. The -| "expect()" function gives you access to a set of "expectations" methods that you can use -| to assert different things. Of course, you may extend the Expectation API at any time. -| -*/ - -expect()->extend('toBeOne', function () { - return $this->toBe(1); -}); - -/* -|-------------------------------------------------------------------------- -| Functions -|-------------------------------------------------------------------------- -| -| While Pest is very powerful out-of-the-box, you may have some testing code specific to your -| project that you don't want to repeat in every file. Here you can also expose helpers as -| global functions to help you to reduce the number of lines of code in your test files. -| -*/ - -function something() -{ - // .. -} - -uses()->group('validators')->in('validators'); \ No newline at end of file diff --git a/tests/Setup/DebugCommandTest.php b/tests/Setup/DebugCommandTest.php deleted file mode 100644 index ccb812d..0000000 --- a/tests/Setup/DebugCommandTest.php +++ /dev/null @@ -1,14 +0,0 @@ -assertTrue(true); - } -} diff --git a/tests/Setup/EnsureAppEnvIsTestingSmokeTest.php b/tests/Setup/EnsureAppEnvIsTestingSmokeTest.php deleted file mode 100644 index b39a73f..0000000 --- a/tests/Setup/EnsureAppEnvIsTestingSmokeTest.php +++ /dev/null @@ -1,13 +0,0 @@ -assertEquals('testing', app('env')); - } -} diff --git a/tests/Setup/ResetsDefaultDirectories.php b/tests/Setup/ResetsDefaultDirectories.php deleted file mode 100644 index f9d6815..0000000 --- a/tests/Setup/ResetsDefaultDirectories.php +++ /dev/null @@ -1,21 +0,0 @@ -__invoke(); - } -} diff --git a/tests/Setup/ResetsFileEnvironment.php b/tests/Setup/ResetsFileEnvironment.php deleted file mode 100644 index 51cbc33..0000000 --- a/tests/Setup/ResetsFileEnvironment.php +++ /dev/null @@ -1,18 +0,0 @@ -__invoke(); - } -} diff --git a/tests/TestCase.php b/tests/TestCase.php deleted file mode 100644 index 416ab5b..0000000 --- a/tests/TestCase.php +++ /dev/null @@ -1,28 +0,0 @@ -assertTrue(is_dir(Hyde::path($directory))); - } - } -} diff --git a/tests/Unit/HydePathHelperTest.php b/tests/Unit/HydePathHelperTest.php deleted file mode 100644 index 41385bb..0000000 --- a/tests/Unit/HydePathHelperTest.php +++ /dev/null @@ -1,46 +0,0 @@ -toBeTrue(); -}); - -test('string is returned', function () { - expect(Hyde::path())->toBeString(); -}); - -test('returned directory contains content expected to be in the project directory', - function () { - expect( - file_exists(Hyde::path() . DIRECTORY_SEPARATOR . 'hyde') && - file_exists(Hyde::path() . DIRECTORY_SEPARATOR . '_pages') && - file_exists(Hyde::path() . DIRECTORY_SEPARATOR . '_posts') && - file_exists(Hyde::path() . DIRECTORY_SEPARATOR . '_site') - )->toBeTrue(); - } -); - -test('method returns qualified file path when supplied with argument', function () { - expect(Hyde::path('file.php'))->toEqual(Hyde::path() . DIRECTORY_SEPARATOR . 'file.php'); -}); - -test('method strips trailing directory separators from argument', function () { - expect(Hyde::path('\\/file.php/'))->toEqual(Hyde::path() . DIRECTORY_SEPARATOR . 'file.php'); -}); - -test('method returns expected value for nested path arguments', function () { - expect(Hyde::path('directory/file.php')) - ->toEqual(Hyde::path() . DIRECTORY_SEPARATOR . 'directory/file.php'); -}); - -test('method returns expected value regardless of trailing directory separators in argument', function () { - expect(Hyde::path('directory/file.php/')) - ->toEqual(Hyde::path() . DIRECTORY_SEPARATOR . 'directory/file.php'); - expect(Hyde::path('/directory/file.php/')) - ->toEqual(Hyde::path() . DIRECTORY_SEPARATOR . 'directory/file.php'); - expect(Hyde::path('\\/directory/file.php/')) - ->toEqual(Hyde::path() . DIRECTORY_SEPARATOR . 'directory/file.php'); -}); diff --git a/tests/Unit/HydeServiceProviderTest.php b/tests/Unit/HydeServiceProviderTest.php deleted file mode 100644 index d638a12..0000000 --- a/tests/Unit/HydeServiceProviderTest.php +++ /dev/null @@ -1,40 +0,0 @@ -provider = new HydeServiceProvider(app()); - - parent::setUp(); - } - - public function test_provider_is_constructed() - { - $this->assertInstanceOf(HydeServiceProvider::class, $this->provider); - } - - public function test_provider_has_register_method() - { - $this->assertTrue(method_exists($this->provider, 'register')); - } - - public function test_provider_has_boot_method() - { - $this->assertTrue(method_exists($this->provider, 'boot')); - } - - public function test_provider_registers_hyde_versions_into_app_container() - { - $this->assertIsString(app('hyde.version')); - $this->assertIsString(app('framework.version')); - } - -} diff --git a/tests/Unit/MarkdownPostParserTest.php b/tests/Unit/MarkdownPostParserTest.php deleted file mode 100644 index b479090..0000000 --- a/tests/Unit/MarkdownPostParserTest.php +++ /dev/null @@ -1,66 +0,0 @@ -getPath()); - } - - /** - * Clean up the testing environment before the next test. - * @return void - */ - protected function tearDown(): void - { - // Remove the published stub file - unlink($this->getPath()); - - parent::tearDown(); - } - - /** - * Get the path of the test Markdown file. - * - * @return string - */ - public function getPath(): string - { - return Hyde::path('_posts/test-parser-post.md'); - } - - public function testCanParseMarkdownFile() - { - $post = (new MarkdownPostParser('test-parser-post'))->get(); - $this->assertInstanceOf(MarkdownPost::class, $post); - $this->assertCount(4, ($post->matter)); - $this->assertIsArray($post->matter); - $this->assertIsString($post->body); - $this->assertIsString($post->slug); - $this->assertTrue(strlen($post->body) > 32); - $this->assertTrue(strlen($post->slug) > 8); - } - - public function testParsedMarkdownPostContainsValidFrontMatter() - { - $post = (new MarkdownPostParser('test-parser-post'))->get(); - $this->assertEquals('My New Post', $post->matter['title']); - $this->assertEquals('Mr. Hyde', $post->matter['author']); - $this->assertEquals('blog', $post->matter['category']); - $this->assertEquals('test-parser-post', $post->matter['slug']); - } -} diff --git a/tests/Validators/CheckForPageConflictsTest.php b/tests/Validators/CheckForPageConflictsTest.php deleted file mode 100644 index 2c2c535..0000000 --- a/tests/Validators/CheckForPageConflictsTest.php +++ /dev/null @@ -1,25 +0,0 @@ -addWarning('Found conflicts: ' . implode(', ', $conflicts)); - } else { - expect($conflicts)->toBeEmpty(); - } - - })->group('validators'); -} diff --git a/tests/Validators/CheckIfA404PageExistsTest.php b/tests/Validators/CheckIfA404PageExistsTest.php deleted file mode 100644 index 71eb2d6..0000000 --- a/tests/Validators/CheckIfA404PageExistsTest.php +++ /dev/null @@ -1,14 +0,0 @@ -addWarning('Could not find an 404.md or 404.blade.php file! You can publish the default one using `php hyde publish:views`'); - } else { - $this->assertTrue($assertion); - } -})->group('validators'); diff --git a/tests/Validators/CheckIfAnIndexPageExistsTest.php b/tests/Validators/CheckIfAnIndexPageExistsTest.php deleted file mode 100644 index 16ae263..0000000 --- a/tests/Validators/CheckIfAnIndexPageExistsTest.php +++ /dev/null @@ -1,14 +0,0 @@ -addWarning('Could not find an index.md or index.blade.php file! You can publish the default one using `php hyde publish:views`'); - } else { - $this->assertTrue($assertion); - } -})->group('validators'); diff --git a/tests/Validators/CheckIfSiteUrlIsSetTest.php b/tests/Validators/CheckIfSiteUrlIsSetTest.php deleted file mode 100644 index e6d68c5..0000000 --- a/tests/Validators/CheckIfSiteUrlIsSetTest.php +++ /dev/null @@ -1,20 +0,0 @@ -make(Kernel::class)->bootstrap(); - - return $app; -}); - -test('check if site url is set', function () { - $assertion = (bool) Hyde::uriPath(); - if (!$assertion) { - $this->addWarning('Did not find a Site URL in .env. Adding it may improve SEO.'); - } else { - $this->assertTrue($assertion); - } -})->group('validators'); diff --git a/tests/Validators/CheckIfTorchlightTokenIsSetTest.php b/tests/Validators/CheckIfTorchlightTokenIsSetTest.php deleted file mode 100644 index 7a050a9..0000000 --- a/tests/Validators/CheckIfTorchlightTokenIsSetTest.php +++ /dev/null @@ -1,18 +0,0 @@ -make(Kernel::class)->bootstrap(); - -if (Features::hasTorchlight(true)) { - test('check if torchlight token is set', function () { - $assertion = Features::hasTorchlight(); - if (!$assertion) { - $this->addWarning('Torchlight is enabled in the config, but an API token could not be found in the dotenv file.'); - } else { - $this->assertTrue($assertion); - } - })->group('validators'); -} \ No newline at end of file diff --git a/tests/Validators/CheckThatDocumentationPagesHaveAnIndexPageTest.php b/tests/Validators/CheckThatDocumentationPagesHaveAnIndexPageTest.php deleted file mode 100644 index 0a033eb..0000000 --- a/tests/Validators/CheckThatDocumentationPagesHaveAnIndexPageTest.php +++ /dev/null @@ -1,32 +0,0 @@ -make(Kernel::class)->bootstrap(); - - return $app; -}); - -test('check that documentation pages have an index page', function () { - if (!Features::hasDocumentationPages()) { - $this->markTestSkipped('Documentation page feature is disabled in config'); - } - - $indexFileExists = file_exists('_docs/index.md'); - $readmeFileExists = (file_exists('_docs/index.md') || (file_exists('_docs/README.md'))); - - $message = "Could not find an index.md file in the _docs directory!"; - if ($readmeFileExists) { - $message .= " However, a _docs/readme.md file was found. A suggestion would be to copy the _docs/readme.md to _docs/index.md."; - } - - if (!$indexFileExists) { - $this->addWarning($message); - } else { - $this->assertTrue($indexFileExists); - } -})->group('validators'); diff --git a/tests/Validators/CheckThatFrontendAssetsExistTest.php b/tests/Validators/CheckThatFrontendAssetsExistTest.php deleted file mode 100644 index cc3476c..0000000 --- a/tests/Validators/CheckThatFrontendAssetsExistTest.php +++ /dev/null @@ -1,17 +0,0 @@ -addWarning('Could not find the app stylesheet in the build directory. You may need to run `npm run dev`.'); - } else { - $this->assertTrue(file_exists('_site/media/app.css')); - } -})->group('validators'); - -test('check that tailwind.css exist', function () { - if (!file_exists('_site/media/tailwind.css')) { - $this->addWarning('Could not find the tailwind stylesheet in the build directory. You may need to run `npm run dev`.'); - } else { - $this->assertTrue(file_exists('_site/media/tailwind.css')); - } -})->group('validators'); diff --git a/tests/Validators/ValidatorsCanRunTest.php b/tests/Validators/ValidatorsCanRunTest.php deleted file mode 100644 index 199e31f..0000000 --- a/tests/Validators/ValidatorsCanRunTest.php +++ /dev/null @@ -1,5 +0,0 @@ -assertTrue(true); -})->group('validators'); diff --git a/tests/_stubs/_posts/test-parser-post.md b/tests/_stubs/_posts/test-parser-post.md deleted file mode 100644 index 5771dda..0000000 --- a/tests/_stubs/_posts/test-parser-post.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: My New Post -category: blog -author: Mr. Hyde ---- - -# My New Post - -This is a post stub used in the automated tests