Repository: juzaweb/juzacms Branch: develop Commit: 7823ec25eb7c Files: 161 Total size: 975.6 KB Directory structure: gitextract_t8xlnr9t/ ├── .editorconfig ├── .gitattributes ├── .github/ │ └── workflows/ │ ├── release-test.yml │ └── test.yml ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── app/ │ ├── Console/ │ │ ├── Commands/ │ │ │ └── .gitkeep │ │ └── Kernel.php │ └── Providers/ │ └── AppServiceProvider.php ├── artisan ├── bootstrap/ │ ├── app.php │ ├── cache/ │ │ └── .gitignore │ └── providers.php ├── changelog.md ├── composer.json ├── config/ │ ├── analytics.php │ ├── app.php │ ├── auth.php │ ├── cache.php │ ├── cors.php │ ├── database.php │ ├── datatables.php │ ├── debugbar.php │ ├── filesystems.php │ ├── l5-swagger.php │ ├── log-viewer.php │ ├── logging.php │ ├── mail.php │ ├── queue.php │ ├── services.php │ ├── session.php │ ├── translatable.php │ └── translation-loader.php ├── database/ │ ├── .gitignore │ └── seeders/ │ └── DatabaseSeeder.php ├── modules/ │ ├── .gitkeep │ └── admin/ │ ├── composer.json │ ├── database/ │ │ └── factories/ │ │ ├── CategoryFactory.php │ │ ├── MediaFactory.php │ │ ├── MenuFactory.php │ │ ├── PageFactory.php │ │ ├── PostFactory.php │ │ └── UserFactory.php │ └── src/ │ ├── Enums/ │ │ └── UserStatus.php │ ├── Http/ │ │ └── Controllers/ │ │ └── DashboardController.php │ ├── Models/ │ │ ├── Client.php │ │ ├── Guest.php │ │ └── User.php │ ├── Providers/ │ │ └── AdminServiceProvider.php │ └── resources/ │ └── views/ │ └── dashboard/ │ └── index.blade.php ├── package.json ├── phpunit.xml ├── postcss.config.js ├── public/ │ ├── .htaccess │ ├── index.php │ ├── juzaweb/ │ │ ├── .gitignore │ │ └── .gitkeep │ ├── modules/ │ │ ├── .gitignore │ │ └── .gitkeep │ ├── robots.txt │ ├── themes/ │ │ ├── .gitignore │ │ └── .gitkeep │ └── vendor/ │ ├── installer/ │ │ ├── css/ │ │ │ ├── sass/ │ │ │ │ ├── _variables.sass │ │ │ │ └── style.sass │ │ │ ├── scss/ │ │ │ │ ├── _variables.scss │ │ │ │ ├── font-awesome/ │ │ │ │ │ ├── _animated.scss │ │ │ │ │ ├── _bordered-pulled.scss │ │ │ │ │ ├── _core.scss │ │ │ │ │ ├── _fixed-width.scss │ │ │ │ │ ├── _icons.scss │ │ │ │ │ ├── _larger.scss │ │ │ │ │ ├── _list.scss │ │ │ │ │ ├── _mixins.scss │ │ │ │ │ ├── _path.scss │ │ │ │ │ ├── _rotated-flipped.scss │ │ │ │ │ ├── _screen-reader.scss │ │ │ │ │ ├── _stacked.scss │ │ │ │ │ ├── _variables.scss │ │ │ │ │ └── font-awesome.scss │ │ │ │ └── style.scss │ │ │ └── style.css │ │ └── fonts/ │ │ └── FontAwesome.otf │ └── log-viewer/ │ ├── app.css │ ├── app.js │ └── mix-manifest.json ├── resources/ │ ├── lang/ │ │ ├── ca/ │ │ │ ├── auth.php │ │ │ ├── pagination.php │ │ │ ├── passwords.php │ │ │ └── validation.php │ │ ├── ca.json │ │ ├── cy/ │ │ │ ├── auth.php │ │ │ ├── pagination.php │ │ │ ├── passwords.php │ │ │ └── validation.php │ │ ├── cy.json │ │ ├── da/ │ │ │ ├── auth.php │ │ │ ├── pagination.php │ │ │ ├── passwords.php │ │ │ └── validation.php │ │ ├── da.json │ │ ├── el/ │ │ │ ├── auth.php │ │ │ ├── pagination.php │ │ │ ├── passwords.php │ │ │ └── validation.php │ │ ├── el.json │ │ ├── en/ │ │ │ ├── auth.php │ │ │ ├── pagination.php │ │ │ ├── passwords.php │ │ │ └── validation.php │ │ ├── en.json │ │ └── zh/ │ │ ├── auth.php │ │ ├── pagination.php │ │ ├── passwords.php │ │ └── validation.php │ └── views/ │ ├── errors/ │ │ ├── 401.blade.php │ │ ├── 402.blade.php │ │ ├── 403.blade.php │ │ ├── 404.blade.php │ │ ├── 419.blade.php │ │ ├── 429.blade.php │ │ ├── 500.blade.php │ │ ├── 503.blade.php │ │ ├── layout.blade.php │ │ └── minimal.blade.php │ └── vendor/ │ ├── l5-swagger/ │ │ ├── .gitkeep │ │ └── index.blade.php │ └── mail/ │ ├── html/ │ │ ├── button.blade.php │ │ ├── footer.blade.php │ │ ├── header.blade.php │ │ ├── layout.blade.php │ │ ├── message.blade.php │ │ ├── panel.blade.php │ │ ├── subcopy.blade.php │ │ ├── table.blade.php │ │ └── themes/ │ │ └── default.css │ └── text/ │ ├── button.blade.php │ ├── footer.blade.php │ ├── header.blade.php │ ├── layout.blade.php │ ├── message.blade.php │ ├── panel.blade.php │ ├── subcopy.blade.php │ └── table.blade.php ├── storage/ │ ├── app/ │ │ └── .gitignore │ ├── debugbar/ │ │ └── .gitignore │ ├── framework/ │ │ ├── .gitignore │ │ ├── cache/ │ │ │ └── .gitignore │ │ ├── sessions/ │ │ │ └── .gitignore │ │ ├── testing/ │ │ │ └── .gitignore │ │ └── views/ │ │ └── .gitignore │ └── logs/ │ └── .gitignore ├── tailwind.config.js ├── tests/ │ ├── CreatesApplication.php │ ├── Feature/ │ │ └── ExampleTest.php │ ├── TestCase.php │ └── Unit/ │ └── ExampleTest.php ├── themes/ │ └── .gitkeep ├── vite.config.js └── webpack.mix.js ================================================ FILE CONTENTS ================================================ ================================================ FILE: .editorconfig ================================================ root = true [*] charset = utf-8 end_of_line = lf indent_size = 4 indent_style = space insert_final_newline = true trim_trailing_whitespace = true [*.md] trim_trailing_whitespace = false [*.{yml,yaml}] indent_size = 2 [docker-compose.yml] indent_size = 4 ================================================ FILE: .gitattributes ================================================ * text=auto eol=lf *.blade.php diff=html *.css diff=css *.html diff=html *.md diff=markdown *.php diff=php /.github export-ignore CHANGELOG.md export-ignore .styleci.yml export-ignore ================================================ FILE: .github/workflows/release-test.yml ================================================ name: Release Test on: release: types: [published] jobs: create-project-test: runs-on: ubuntu-latest strategy: matrix: php-version: ['8.2', '8.3'] steps: - uses: shivammathur/setup-php@15c43e89cdef867065b0213be354c2841860869e with: php-version: ${{ matrix.php-version }} - name: Create Project run: composer create-project --prefer-dist juzaweb/cms blog - name: Copy .env working-directory: ./blog run: php -r "file_exists('.env') || copy('.env.example', '.env');" - name: Generate key working-directory: ./blog run: php artisan key:generate - name: Directory Permissions working-directory: ./blog run: chmod -R 777 storage bootstrap/cache - name: Create Database working-directory: ./blog run: | mkdir -p database touch database/database.sqlite - name: Install working-directory: ./blog run: | php artisan migrate touch storage/app/installed php artisan theme:publish itech env: DB_CONNECTION: sqlite DB_DATABASE: database/database.sqlite - name: Execute tests (Unit and Feature tests) via PHPUnit/Pest working-directory: ./blog env: DB_CONNECTION: sqlite DB_DATABASE: database/database.sqlite run: php artisan test - name: Execute pint run: vendor/bin/pint --test ================================================ FILE: .github/workflows/test.yml ================================================ name: Test on: push: branches: [ "develop" ] pull_request: branches: [ "master", "develop" ] jobs: tests: runs-on: ubuntu-latest strategy: matrix: php-version: ['8.2', '8.3'] steps: - uses: shivammathur/setup-php@15c43e89cdef867065b0213be354c2841860869e with: php-version: ${{ matrix.php-version }} extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, pdo_mysql, pdo_pgsql, bcmath, soap, intl, gd, exif, iconv - uses: actions/checkout@v4 - name: Copy .env run: php -r "file_exists('.env') || copy('.env.example', '.env');" - name: Install Dependencies run: composer install --no-progress --prefer-dist - name: Generate key run: php artisan key:generate - name: Directory Permissions run: chmod -R 777 storage bootstrap/cache - name: Create Database run: | mkdir -p database touch database/database.sqlite - name: Install run: | php artisan migrate touch storage/app/installed env: DB_CONNECTION: sqlite DB_DATABASE: database/database.sqlite - name: Execute tests (Unit and Feature tests) via PHPUnit/Pest env: DB_CONNECTION: sqlite DB_DATABASE: database/database.sqlite run: php artisan test - name: Execute pint run: vendor/bin/pint --test ================================================ FILE: .gitignore ================================================ /.phpunit.cache /node_modules /public/build /public/hot /public/storage /storage/*.key /storage/pail /storage/app/installed /vendor .env .env.backup .env.production .phpactor.json .phpunit.result.cache Homestead.json Homestead.yaml npm-debug.log yarn-error.log /auth.json /.fleet /.idea /.nova /.vscode /.zed .DS_Store ================================================ FILE: CONTRIBUTING.md ================================================ # Contributing Contributions are welcome, and are accepted via pull requests. Please review these guidelines before submitting any pull requests. - Please follow the [PSR-2 Coding Standard](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md) and [PHP-FIG Naming Conventions](https://github.com/php-fig/fig-standards/blob/master/bylaws/002-psr-naming-conventions.md). - Remember to follow [SemVer](http://semver.org). If you are changing the behavior, or the public api, you may need to update the docs. - Make sure that the current tests pass, and if you have added something new, add the tests where relevant. - Send a coherent commit history, making sure each individual commit in your pull request is meaningful. If you had to make multiple intermediate commits while developing, please [squash](http://git-scm.com/book/en/Git-Tools-Rewriting-History) them before submitting. - You may also need to [rebase](http://git-scm.com/book/en/Git-Branching-Rebasing) to avoid merge conflicts. StyleCI is set up to automatically check and fix any code style issues. ## Pull Request Process - Create a personal fork of the project on Github. - Clone the fork on your local machine. Your remote repo on Github is called `origin`. - Add the original repository as a remote called `upstream`. - If you created your fork a while ago be sure to pull upstream changes into your local repository. - Create a new branch to work on! Branch from `develop`. - Implement/fix your feature, comment your code. - Follow the code style ps2 and ps4 for your code - Write or adapt tests as needed. - Squash your commits into a single commit with git's [interactive rebase](https://help.github.com/articles/interactive-rebase) - Push your branch to your fork on Github, the remote `origin`. - From your fork open a pull request in the correct branch. Target the project's `develop` branch. - Once the pull request is approved and merged you can pull the changes from `upstream` to your local repo and delete your extra branch. ================================================ FILE: LICENSE.md ================================================ GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. ================================================ FILE: README.md ================================================ Juzaweb CMS - Laravel CMS for Your Project ===================================== ## About ![https://buymeacoffee.com/juzaweb](https://raw.githubusercontent.com/juzaweb/core/refs/heads/master/assets/public/images/thumbnail.png) [![Total Downloads](https://img.shields.io/packagist/dt/juzaweb/cms.svg?style=social)](https://packagist.org/packages/juzaweb/cms) [![GitHub Repo stars](https://img.shields.io/github/stars/juzaweb/cms?style=social)](https://github.com/juzaweb/cms) [![GitHub followers](https://img.shields.io/github/followers/juzaweb?style=social)](https://github.com/juzaweb) [![YouTube Channel Subscribers](https://img.shields.io/youtube/channel/subscribers/UCo6Dz9HjjBOJpgWsxkln0-A?style=social)](https://www.youtube.com/@juzaweb) - [Juzaweb CMS](https://juzaweb.com/cms) is a Content Management System (CMS) like WordPress developed based on Laravel Framework 11 and web platform whose sole purpose is to make your development workflow simple again. - Juzaweb CMS is a [Laravel CMS](https://juzaweb.com/cms) was engineered to be easy — for both developers and users. Project develop by Juzaweb Team. ## Documentation You'll find the documentation on https://juzaweb.com/documentation/juzaweb/core/5.x. Find yourself stuck using the CMS? Found a bug? Do you have general questions or suggestions for improving the CMS? Feel free to [create an issue on GitHub](https://github.com/juzaweb/cms/issues), we'll try to address it as soon as possible. Video Tutorial: https://www.youtube.com/@juzaweb/videos ## Requirements - The modules package requires: - PHP 8.2 or higher - MySql 8.0 or higher ## Install ### Create project with composer ``` composer create-project --prefer-dist juzaweb/cms blog ``` ### Install Config database in your `.env` file, and run: ``` php artisan juzaweb:install ``` ## Contributing - Contributions are welcome, and are accepted via pull requests. Please review these guidelines before submitting any pull requests. [https://github.com/juzaweb/cms/blob/master/CONTRIBUTING.md](https://github.com/juzaweb/cms/blob/master/CONTRIBUTING.md) ## Features - [x] File manager - [x] Plugins - [x] Themes - [x] Theme Widgets - [x] Menu builder by post type - [x] Logs view - [x] Page block - [ ] Upload themes - [ ] Upload plugins - [ ] **Network (multisite) support** - [x] Multisite languages - [x] Social login - [x] Google - [x] Facebook - [x] Tweater - [x] Github - [x] Instagram - [ ] User Permission - [ ] Check permisson menu - [ ] Policies - [ ] Check permisson button in views - [x] Media manager admin page - [ ] Short Code - [x] Add image from url - [ ] Quick edit - [ ] Preview post - [ ] Activity logs - [ ] **Api Support** ## Backend Javascript libraries - Jquery - Bootstrap 4 - select2 - font-awesome ## Buy me coffee [![Juzaweb Buy me coffee](https://i.imgur.com/MAqboRu.png)](https://buymeacoffee.com/juzaweb) ================================================ FILE: app/Console/Commands/.gitkeep ================================================ ================================================ FILE: app/Console/Kernel.php ================================================ command('passport:purge')->hourly(); } /** * Register the commands for the application. * * @return void */ protected function commands() { $this->load(__DIR__.'/Commands'); require base_path('routes/console.php'); } } ================================================ FILE: app/Providers/AppServiceProvider.php ================================================ handleCommand(new ArgvInput); exit($status); ================================================ FILE: bootstrap/app.php ================================================ withMiddleware( function (Middleware $middleware) { $middleware->redirectGuestsTo( fn (Request $request) => route('login', ['redirect' => $request->fullUrl()]) ); $middleware->alias([ 'auth' => Authenticate::class, 'verified' => EnsureEmailIsVerified::class, 'captcha' => Captcha::class, 'signed' => ValidateSignature::class, 'scope' => CheckTokenForAnyScope::class, ]); if (! env('VERIFY_TOKEN', true)) { $middleware->validateCsrfTokens(except: ['*']); } $middleware->append(ForceSchemeUrl::class); } ) ->withExceptions(function (Exceptions $exceptions) { // })->create(); ================================================ FILE: bootstrap/cache/.gitignore ================================================ * !.gitignore ================================================ FILE: bootstrap/providers.php ================================================ env('ANALYTICS_PROPERTY_ID'), /* * Path to the client secret json file. Take a look at the README of this package * to learn how to get this file. You can also pass the credentials as an array * instead of a file path. */ 'service_account_credentials_json' => storage_path('app/analytics/service-account-credentials.json'), /* * The amount of minutes the Google API responses will be cached. * If you set this to zero, the responses won't be cached at all. */ 'cache_lifetime_in_minutes' => 60 * 24, /* * Here you may configure the "store" that the underlying Google_Client will * use to store its data. You may also add extra parameters that will * be passed on setCacheConfig (see docs for google-api-php-client). * * Optional parameters: "lifetime", "prefix" */ 'cache' => [ 'store' => 'file', ], ]; ================================================ FILE: config/app.php ================================================ env('APP_NAME', 'Juzaweb'), /* |-------------------------------------------------------------------------- | 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. Set this in your ".env" file. | */ 'env' => env('APP_ENV', 'production'), /* |-------------------------------------------------------------------------- | Application Debug Mode |-------------------------------------------------------------------------- | | When your application is in debug mode, detailed error messages with | stack traces will be shown on every error that occurs within your | application. If disabled, a simple generic error page is shown. | */ 'debug' => (bool) env('APP_DEBUG', false), /* |-------------------------------------------------------------------------- | Application URL |-------------------------------------------------------------------------- | | This URL is used by the console to properly generate URLs when using | the Artisan command line tool. You should set this to the root of | the application so that it's available within Artisan commands. | */ 'url' => env('APP_URL', 'http://localhost'), 'mix_url' => env('MIX_ASSET_URL'), /* |-------------------------------------------------------------------------- | Application Timezone |-------------------------------------------------------------------------- | | Here you may specify the default timezone for your application, which | will be used by the PHP date and date-time functions. The timezone | is set to "UTC" by default as it is suitable for most use cases. | */ 'timezone' => env('APP_TIMEZONE', 'UTC'), /* |-------------------------------------------------------------------------- | Application Locale Configuration |-------------------------------------------------------------------------- | | The application locale determines the default locale that will be used | by Laravel's translation / localization methods. This option can be | set to any locale for which you plan to have translation strings. | */ 'locale' => env('APP_LOCALE', 'en'), 'fallback_locale' => env('APP_FALLBACK_LOCALE', 'en'), 'faker_locale' => env('APP_FAKER_LOCALE', 'en_US'), /* |-------------------------------------------------------------------------- | Token Verification |-------------------------------------------------------------------------- | | This option controls whether token verification is enabled for API | requests. When enabled, requests must include a valid jw-token. | You can disable this for development or testing purposes. | | Default: true | */ 'verify_token' => (bool) env('VERIFY_TOKEN', true), /* |-------------------------------------------------------------------------- | Encryption Key |-------------------------------------------------------------------------- | | This key is utilized by Laravel's encryption services and should be set | to a random, 32 character string to ensure that all encrypted values | are secure. You should do this prior to deploying the application. | */ 'cipher' => 'AES-256-CBC', 'key' => env('APP_KEY'), 'previous_keys' => [ ...array_filter( explode(',', env('APP_PREVIOUS_KEYS', '')) ), ], /* |-------------------------------------------------------------------------- | Maintenance Mode Driver |-------------------------------------------------------------------------- | | These configuration options determine the driver used to determine and | manage Laravel's "maintenance mode" status. The "cache" driver will | allow maintenance mode to be controlled across multiple machines. | | Supported drivers: "file", "cache" | */ 'maintenance' => [ 'driver' => env('APP_MAINTENANCE_DRIVER', 'file'), 'store' => env('APP_MAINTENANCE_STORE', 'database'), ], 'providers' => [ /* * Laravel Framework Service Providers... */ AuthServiceProvider::class, BroadcastServiceProvider::class, BusServiceProvider::class, CacheServiceProvider::class, ConsoleSupportServiceProvider::class, CookieServiceProvider::class, DatabaseServiceProvider::class, EncryptionServiceProvider::class, FilesystemServiceProvider::class, FoundationServiceProvider::class, HashServiceProvider::class, MailServiceProvider::class, NotificationServiceProvider::class, PaginationServiceProvider::class, PipelineServiceProvider::class, QueueServiceProvider::class, RedisServiceProvider::class, PasswordResetServiceProvider::class, SessionServiceProvider::class, TranslationServiceProvider::class, ValidationServiceProvider::class, ViewServiceProvider::class, // App Service Providers ], 'aliases' => Facade::defaultAliases()->merge( [ // ] )->toArray(), ]; ================================================ FILE: config/auth.php ================================================ [ 'guard' => env('AUTH_GUARD', 'web'), 'passwords' => env('AUTH_PASSWORD_BROKER', 'users'), ], /* |-------------------------------------------------------------------------- | Authentication Guards |-------------------------------------------------------------------------- | | Next, you may define every authentication guard for your application. | Of course, a great default configuration has been defined for you | which utilizes session storage plus the Eloquent user provider. | | All authentication guards have a user provider, which defines how the | users are actually retrieved out of your database or other storage | system used by the application. Typically, Eloquent is utilized. | | Supported: "session" | */ 'guards' => [ 'web' => [ 'driver' => 'session', 'provider' => 'users', ], 'api' => [ 'driver' => 'juzaweb', 'provider' => 'users', ], ], /* |-------------------------------------------------------------------------- | User Providers |-------------------------------------------------------------------------- | | All authentication guards have a user provider, which defines how the | users are actually retrieved out of your database or other storage | system used by the application. Typically, Eloquent is utilized. | | If you have multiple user tables or models you may configure multiple | providers to represent the model / table. These providers may then | be assigned to any extra authentication guards you have defined. | | Supported: "database", "eloquent" | */ 'providers' => [ 'users' => [ 'driver' => 'eloquent', 'model' => env('AUTH_MODEL', User::class), 'social_connection_model' => UserSocialConnection::class, ], ], /* |-------------------------------------------------------------------------- | Resetting Passwords |-------------------------------------------------------------------------- | | These configuration options specify the behavior of Laravel's password | reset functionality, including the table utilized for token storage | and the user provider that is invoked to actually retrieve users. | | The expiry time is the number of minutes that each reset token will be | considered valid. This security feature keeps tokens short-lived so | they have less time to be guessed. You may change this as needed. | | The throttle setting is the number of seconds a user must wait before | generating more password reset tokens. This prevents the user from | quickly generating a very large amount of password reset tokens. | */ 'passwords' => [ 'users' => [ 'provider' => 'users', 'table' => env('AUTH_PASSWORD_RESET_TOKEN_TABLE', 'password_reset_tokens'), 'expire' => 60, 'throttle' => 60, ], ], /* |-------------------------------------------------------------------------- | Password Confirmation Timeout |-------------------------------------------------------------------------- | | Here you may define the amount of seconds before a password confirmation | window expires and users are asked to re-enter their password via the | confirmation screen. By default, the timeout lasts for three hours. | */ 'password_timeout' => env('AUTH_PASSWORD_TIMEOUT', 10800), ]; ================================================ FILE: config/cache.php ================================================ env('CACHE_STORE', 'database'), /* |-------------------------------------------------------------------------- | Cache Stores |-------------------------------------------------------------------------- | | Here you may define all the cache "stores" for your application as | well as their drivers. You may even define multiple stores for the | same cache driver to group types of items stored in your caches. | | Supported drivers: "array", "database", "file", "memcached", | "redis", "dynamodb", "octane", "null" | */ 'stores' => [ 'array' => [ 'driver' => 'array', 'serialize' => false, ], 'database' => [ 'driver' => 'database', 'connection' => env('DB_CACHE_CONNECTION'), 'table' => env('DB_CACHE_TABLE', 'cache'), 'lock_connection' => env('DB_CACHE_LOCK_CONNECTION'), 'lock_table' => env('DB_CACHE_LOCK_TABLE'), ], 'file' => [ 'driver' => 'file', 'path' => storage_path('framework/cache/data'), 'lock_path' => storage_path('framework/cache/data'), ], 'memcached' => [ 'driver' => 'memcached', 'persistent_id' => env('MEMCACHED_PERSISTENT_ID'), 'sasl' => [ env('MEMCACHED_USERNAME'), env('MEMCACHED_PASSWORD'), ], 'options' => [ // Memcached::OPT_CONNECT_TIMEOUT => 2000, ], 'servers' => [ [ 'host' => env('MEMCACHED_HOST', '127.0.0.1'), 'port' => env('MEMCACHED_PORT', 11211), 'weight' => 100, ], ], ], 'redis' => [ 'driver' => 'redis', 'connection' => env('REDIS_CACHE_CONNECTION', 'cache'), 'lock_connection' => env('REDIS_CACHE_LOCK_CONNECTION', 'default'), ], 'dynamodb' => [ 'driver' => 'dynamodb', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), 'table' => env('DYNAMODB_CACHE_TABLE', 'cache'), 'endpoint' => env('DYNAMODB_ENDPOINT'), ], 'octane' => [ 'driver' => 'octane', ], ], /* |-------------------------------------------------------------------------- | Cache Key Prefix |-------------------------------------------------------------------------- | | When utilizing the APC, database, memcached, Redis, and DynamoDB cache | stores, there might be other applications using the same cache. For | that reason, you may prefix every cache key to avoid collisions. | */ 'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'juzaweb'), '_').'_cache_'), ]; ================================================ FILE: config/cors.php ================================================ ['api/*', 'oauth/token'], 'allowed_methods' => ['*'], 'allowed_origins' => ['*'], 'allowed_origins_patterns' => [], 'allowed_headers' => ['*'], 'exposed_headers' => [], 'max_age' => 0, 'supports_credentials' => false, ]; ================================================ FILE: config/database.php ================================================ env('DB_CONNECTION', 'sqlite'), /* |-------------------------------------------------------------------------- | Database Connections |-------------------------------------------------------------------------- | | Below are all of the database connections defined for your application. | An example configuration is provided for each database system which | is supported by Laravel. You're free to add / remove connections. | */ 'connections' => [ 'sqlite' => [ 'driver' => 'sqlite', 'url' => env('DB_URL'), 'database' => env('DB_DATABASE', database_path('database.sqlite')), 'prefix' => '', 'foreign_key_constraints' => env('DB_FOREIGN_KEYS', true), 'busy_timeout' => null, 'journal_mode' => null, 'synchronous' => null, ], 'mysql' => [ 'driver' => 'mysql', 'url' => env('DB_URL'), 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'laravel'), 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => env('DB_SOCKET', ''), 'charset' => env('DB_CHARSET', 'utf8mb4'), 'collation' => env('DB_COLLATION', 'utf8mb4_unicode_ci'), 'prefix' => '', 'prefix_indexes' => true, 'strict' => true, 'engine' => null, 'options' => extension_loaded('pdo_mysql') ? array_filter([ PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), ]) : [], ], 'mariadb' => [ 'driver' => 'mariadb', 'url' => env('DB_URL'), 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'laravel'), 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => env('DB_SOCKET', ''), 'charset' => env('DB_CHARSET', 'utf8mb4'), 'collation' => env('DB_COLLATION', 'utf8mb4_unicode_ci'), 'prefix' => '', 'prefix_indexes' => true, 'strict' => true, 'engine' => null, 'options' => extension_loaded('pdo_mysql') ? array_filter([ PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), ]) : [], ], 'pgsql' => [ 'driver' => 'pgsql', 'url' => env('DB_URL'), 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '5432'), 'database' => env('DB_DATABASE', 'laravel'), 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', ''), 'charset' => env('DB_CHARSET', 'utf8'), 'prefix' => '', 'prefix_indexes' => true, 'search_path' => 'public', 'sslmode' => 'prefer', ], 'sqlsrv' => [ 'driver' => 'sqlsrv', 'url' => env('DB_URL'), 'host' => env('DB_HOST', 'localhost'), 'port' => env('DB_PORT', '1433'), 'database' => env('DB_DATABASE', 'laravel'), 'username' => env('DB_USERNAME', 'root'), 'password' => env('DB_PASSWORD', ''), 'charset' => env('DB_CHARSET', 'utf8'), 'prefix' => '', 'prefix_indexes' => true, // 'encrypt' => env('DB_ENCRYPT', 'yes'), // 'trust_server_certificate' => env('DB_TRUST_SERVER_CERTIFICATE', 'false'), ], ], /* |-------------------------------------------------------------------------- | Migration Repository Table |-------------------------------------------------------------------------- | | This table keeps track of all the migrations that have already run for | your application. Using this information, we can determine which of | the migrations on disk haven't actually been run on the database. | */ 'migrations' => [ 'table' => 'migrations', 'update_date_on_publish' => true, ], /* |-------------------------------------------------------------------------- | Redis Databases |-------------------------------------------------------------------------- | | Redis is an open source, fast, and advanced key-value store that also | provides a richer body of commands than a typical key-value system | such as Memcached. You may define your connection settings here. | */ 'redis' => [ 'client' => env('REDIS_CLIENT', 'phpredis'), 'options' => [ 'cluster' => env('REDIS_CLUSTER', 'redis'), 'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_database_'), ], 'default' => [ 'url' => env('REDIS_URL'), 'host' => env('REDIS_HOST', '127.0.0.1'), 'username' => env('REDIS_USERNAME'), 'password' => env('REDIS_PASSWORD'), 'port' => env('REDIS_PORT', '6379'), 'database' => env('REDIS_DB', '0'), ], 'cache' => [ 'url' => env('REDIS_URL'), 'host' => env('REDIS_HOST', '127.0.0.1'), 'username' => env('REDIS_USERNAME'), 'password' => env('REDIS_PASSWORD'), 'port' => env('REDIS_PORT', '6379'), 'database' => env('REDIS_CACHE_DB', '1'), ], ], ]; ================================================ FILE: config/datatables.php ================================================ [ /* * Smart search will enclose search keyword with wildcard string "%keyword%". * SQL: column LIKE "%keyword%" */ 'smart' => true, /* * Multi-term search will explode search keyword using spaces resulting into multiple term search. */ 'multi_term' => true, /* * Case insensitive will search the keyword in lower case format. * SQL: LOWER(column) LIKE LOWER(keyword) */ 'case_insensitive' => true, /* * Wild card will add "%" in between every characters of the keyword. * SQL: column LIKE "%k%e%y%w%o%r%d%" */ 'use_wildcards' => false, /* * Perform a search which starts with the given keyword. * SQL: column LIKE "keyword%" */ 'starts_with' => false, ], /* * DataTables internal index id response column name. */ 'index_column' => 'DT_RowIndex', /* * List of available builders for DataTables. * This is where you can register your custom DataTables builder. */ 'engines' => [ 'eloquent' => EloquentDataTable::class, 'query' => QueryDataTable::class, 'collection' => CollectionDataTable::class, 'resource' => ApiResourceDataTable::class, ], /* * DataTables accepted builder to engine mapping. * This is where you can override which engine a builder should use * Note, only change this if you know what you are doing! */ 'builders' => [ // Illuminate\Database\Eloquent\Relations\Relation::class => 'eloquent', // Illuminate\Database\Eloquent\Builder::class => 'eloquent', // Illuminate\Database\Query\Builder::class => 'query', // Illuminate\Support\Collection::class => 'collection', ], /* * Nulls last sql pattern for PostgreSQL & Oracle. * For MySQL, use 'CASE WHEN :column IS NULL THEN 1 ELSE 0 END, :column :direction' */ 'nulls_last_sql' => ':column :direction NULLS LAST', /* * User friendly message to be displayed on user if error occurs. * Possible values: * null - The exception message will be used on error response. * 'throw' - Throws a \Yajra\DataTables\Exceptions\Exception. Use your custom error handler if needed. * 'custom message' - Any friendly message to be displayed to the user. You can also use translation key. */ 'error' => env('DATATABLES_ERROR', null), /* * Default columns definition of DataTable utility functions. */ 'columns' => [ /* * List of columns hidden/removed on json response. */ 'excess' => ['rn', 'row_num'], /* * List of columns to be escaped. If set to *, all columns are escape. * Note: You can set the value to empty array to disable XSS protection. */ 'escape' => '*', /* * List of columns that are allowed to display html content. * Note: Adding columns to list will make us available to XSS attacks. */ 'raw' => ['action'], /* * List of columns are forbidden from being searched/sorted. */ 'blacklist' => ['password', 'remember_token'], /* * List of columns that are only allowed for search/sort. * If set to *, all columns are allowed. */ 'whitelist' => '*', ], /* * JsonResponse header and options config. */ 'json' => [ 'header' => [], 'options' => 0, ], /* * Default condition to determine if a parameter is a callback or not. * Callbacks needs to start by those terms, or they will be cast to string. */ 'callback' => ['$', '$.', 'function'], ]; ================================================ FILE: config/debugbar.php ================================================ env('DEBUGBAR_ENABLED', false), 'except' => [ 'telescope*', 'horizon*', ], /* |-------------------------------------------------------------------------- | Storage settings |-------------------------------------------------------------------------- | | DebugBar stores data for session/ajax requests. | You can disable this, so the debugbar stores data in headers/session, | but this can cause problems with large data collectors. | By default, file storage (in the storage folder) is used. Redis and PDO | can also be used. For PDO, run the package migrations first. | | Warning: Enabling storage.open will allow everyone to access previous | request, do not enable open storage in publicly available environments! | Specify a callback if you want to limit based on IP or authentication. | Leaving it to null will allow localhost only. */ 'storage' => [ 'enabled' => true, 'open' => env('DEBUGBAR_OPEN_STORAGE'), // bool/callback. 'driver' => 'file', // redis, file, pdo, socket, custom 'path' => storage_path('debugbar'), // For file driver 'connection' => null, // Leave null for default connection (Redis/PDO) 'provider' => '', // Instance of StorageInterface for custom driver 'hostname' => '127.0.0.1', // Hostname to use with the "socket" driver 'port' => 2304, // Port to use with the "socket" driver ], /* |-------------------------------------------------------------------------- | Editor |-------------------------------------------------------------------------- | | Choose your preferred editor to use when clicking file name. | | Supported: "phpstorm", "vscode", "vscode-insiders", "vscode-remote", | "vscode-insiders-remote", "vscodium", "textmate", "emacs", | "sublime", "atom", "nova", "macvim", "idea", "netbeans", | "xdebug", "espresso" | */ 'editor' => env('DEBUGBAR_EDITOR') ?: env('IGNITION_EDITOR', 'phpstorm'), /* |-------------------------------------------------------------------------- | Remote Path Mapping |-------------------------------------------------------------------------- | | If you are using a remote dev server, like Laravel Homestead, Docker, or | even a remote VPS, it will be necessary to specify your path mapping. | | Leaving one, or both of these, empty or null will not trigger the remote | URL changes and Debugbar will treat your editor links as local files. | | "remote_sites_path" is an absolute base path for your sites or projects | in Homestead, Vagrant, Docker, or another remote development server. | | Example value: "/home/vagrant/Code" | | "local_sites_path" is an absolute base path for your sites or projects | on your local computer where your IDE or code editor is running on. | | Example values: "/Users//Code", "C:\Users\\Documents\Code" | */ 'remote_sites_path' => env('DEBUGBAR_REMOTE_SITES_PATH'), 'local_sites_path' => env('DEBUGBAR_LOCAL_SITES_PATH', env('IGNITION_LOCAL_SITES_PATH')), /* |-------------------------------------------------------------------------- | Vendors |-------------------------------------------------------------------------- | | Vendor files are included by default, but can be set to false. | This can also be set to 'js' or 'css', to only include javascript or css vendor files. | Vendor files are for css: font-awesome (including fonts) and highlight.js (css files) | and for js: jquery and highlight.js | So if you want syntax highlighting, set it to true. | jQuery is set to not conflict with existing jQuery scripts. | */ 'include_vendors' => true, /* |-------------------------------------------------------------------------- | Capture Ajax Requests |-------------------------------------------------------------------------- | | The Debugbar can capture Ajax requests and display them. If you don't want this (ie. because of errors), | you can use this option to disable sending the data through the headers. | | Optionally, you can also send ServerTiming headers on ajax requests for the Chrome DevTools. | | Note for your request to be identified as ajax requests they must either send the header | X-Requested-With with the value XMLHttpRequest (most JS libraries send this), or have application/json as a Accept header. | | By default `ajax_handler_auto_show` is set to true allowing ajax requests to be shown automatically in the Debugbar. | Changing `ajax_handler_auto_show` to false will prevent the Debugbar from reloading. */ 'capture_ajax' => true, 'add_ajax_timing' => false, 'ajax_handler_auto_show' => true, 'ajax_handler_enable_tab' => true, /* |-------------------------------------------------------------------------- | Custom Error Handler for Deprecated warnings |-------------------------------------------------------------------------- | | When enabled, the Debugbar shows deprecated warnings for Symfony components | in the Messages tab. | */ 'error_handler' => false, /* |-------------------------------------------------------------------------- | Clockwork integration |-------------------------------------------------------------------------- | | The Debugbar can emulate the Clockwork headers, so you can use the Chrome | Extension, without the server-side code. It uses Debugbar collectors instead. | */ 'clockwork' => false, /* |-------------------------------------------------------------------------- | DataCollectors |-------------------------------------------------------------------------- | | Enable/disable DataCollectors | */ 'collectors' => [ 'phpinfo' => true, // Php version 'messages' => true, // Messages 'time' => true, // Time Datalogger 'memory' => true, // Memory usage 'exceptions' => true, // Exception displayer 'log' => true, // Logs from Monolog (merged in messages if enabled) 'db' => true, // Show database (PDO) queries and bindings 'views' => true, // Views with their data 'route' => true, // Current route information 'auth' => false, // Display Laravel authentication status 'gate' => true, // Display Laravel Gate checks 'session' => true, // Display session data 'symfony_request' => true, // Only one can be enabled.. 'mail' => true, // Catch mail messages 'laravel' => false, // Laravel version and environment 'events' => false, // All events fired 'default_request' => false, // Regular or special Symfony request logger 'logs' => false, // Add the latest log messages 'files' => false, // Show the included files 'config' => false, // Display config settings 'cache' => false, // Display cache events 'models' => true, // Display models 'livewire' => true, // Display Livewire (when available) 'jobs' => false, // Display dispatched jobs ], /* |-------------------------------------------------------------------------- | Extra options |-------------------------------------------------------------------------- | | Configure some DataCollectors | */ 'options' => [ 'time' => [ 'memory_usage' => false, // Calculated by subtracting memory start and end, it may be inaccurate ], 'messages' => [ 'trace' => true, // Trace the origin of the debug message ], 'memory' => [ 'reset_peak' => false, // run memory_reset_peak_usage before collecting 'with_baseline' => false, // Set boot memory usage as memory peak baseline 'precision' => 0, // Memory rounding precision ], 'auth' => [ 'show_name' => true, // Also show the users name/email in the debugbar 'show_guards' => true, // Show the guards that are used ], 'db' => [ 'with_params' => true, // Render SQL with the parameters substituted 'backtrace' => true, // Use a backtrace to find the origin of the query in your files. 'backtrace_exclude_paths' => [], // Paths to exclude from backtrace. (in addition to defaults) 'timeline' => false, // Add the queries to the timeline 'duration_background' => true, // Show shaded background on each query relative to how long it took to execute. 'explain' => [ // Show EXPLAIN output on queries 'enabled' => false, 'types' => ['SELECT'], // Deprecated setting, is always only SELECT ], 'hints' => false, // Show hints for common mistakes 'show_copy' => false, // Show copy button next to the query, 'slow_threshold' => false, // Only track queries that last longer than this time in ms 'memory_usage' => false, // Show queries memory usage 'soft_limit' => 100, // After the soft limit, no parameters/backtrace are captured 'hard_limit' => 500, // After the hard limit, queries are ignored ], 'mail' => [ 'timeline' => false, // Add mails to the timeline 'show_body' => true, ], 'views' => [ 'timeline' => false, // Add the views to the timeline (Experimental) 'data' => false, // true for all data, 'keys' for only names, false for no parameters. 'group' => 50, // Group duplicate views. Pass value to auto-group, or true/false to force 'exclude_paths' => [ // Add the paths which you don't want to appear in the views 'vendor/filament', // Exclude Filament components by default ], ], 'route' => [ 'label' => true, // show complete route on bar ], 'session' => [ 'hiddens' => [], // hides sensitive values using array paths ], 'symfony_request' => [ 'hiddens' => [], // hides sensitive values using array paths, example: request_request.password ], 'events' => [ 'data' => false, // collect events data, listeners ], 'logs' => [ 'file' => null, ], 'cache' => [ 'values' => true, // collect cache values ], ], /* |-------------------------------------------------------------------------- | Inject Debugbar in Response |-------------------------------------------------------------------------- | | Usually, the debugbar is added just before , by listening to the | Response after the App is done. If you disable this, you have to add them | in your template yourself. See http://phpdebugbar.com/docs/rendering.html | */ 'inject' => true, /* |-------------------------------------------------------------------------- | DebugBar route prefix |-------------------------------------------------------------------------- | | Sometimes you want to set route prefix to be used by DebugBar to load | its resources from. Usually the need comes from misconfigured web server or | from trying to overcome bugs like this: http://trac.nginx.org/nginx/ticket/97 | */ 'route_prefix' => '_debugbar', /* |-------------------------------------------------------------------------- | DebugBar route middleware |-------------------------------------------------------------------------- | | Additional middleware to run on the Debugbar routes */ 'route_middleware' => [], /* |-------------------------------------------------------------------------- | DebugBar route domain |-------------------------------------------------------------------------- | | By default DebugBar route served from the same domain that request served. | To override default domain, specify it as a non-empty value. */ 'route_domain' => null, /* |-------------------------------------------------------------------------- | DebugBar theme |-------------------------------------------------------------------------- | | Switches between light and dark theme. If set to auto it will respect system preferences | Possible values: auto, light, dark */ 'theme' => env('DEBUGBAR_THEME', 'auto'), /* |-------------------------------------------------------------------------- | Backtrace stack limit |-------------------------------------------------------------------------- | | By default, the DebugBar limits the number of frames returned by the 'debug_backtrace()' function. | If you need larger stacktraces, you can increase this number. Setting it to 0 will result in no limit. */ 'debug_backtrace_limit' => 50, ]; ================================================ FILE: config/filesystems.php ================================================ env('FILESYSTEM_DISK', 'local'), /* |-------------------------------------------------------------------------- | Filesystem Disks |-------------------------------------------------------------------------- | | Below you may configure as many filesystem disks as necessary, and you | may even configure multiple disks for the same driver. Examples for | most supported storage drivers are configured here for reference. | | Supported drivers: "local", "ftp", "sftp", "s3" | */ 'disks' => [ 'local' => [ 'driver' => 'local', 'root' => storage_path('app/private'), 'serve' => true, 'throw' => false, 'report' => false, ], 'public' => [ 'driver' => 'local', 'root' => storage_path('app/public'), 'url' => env('STORAGE_URL', env('APP_URL').'/storage'), 'visibility' => 'public', 'throw' => false, 'report' => false, ], 's3' => [ 'driver' => 's3', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION'), 'bucket' => env('AWS_BUCKET'), 'url' => env('AWS_URL'), 'endpoint' => env('AWS_ENDPOINT'), 'use_path_style_endpoint' => env('AWS_USE_PATH_STYLE_ENDPOINT', false), 'throw' => false, 'report' => false, ], 'cloud' => [ 'driver' => 's3', 'key' => env('S3_CLOUD_KEY_ID'), 'secret' => env('S3_CLOUD_SECRET'), 'region' => env('S3_CLOUD_REGION'), 'bucket' => env('S3_CLOUD_BUCKET'), 'endpoint' => env('S3_CLOUD_ENDPOINT'), 'write_endpoint' => env('S3_CLOUD_WRITE_ENDPOINT'), // Optional custom endpoint for write operations 'bucket_endpoint' => true, 'use_path_style_endpoint' => false, 'throw' => true, 'visibility' => 'public', 'url' => env('S3_CLOUD_URL'), 'proxy_url' => env('S3_CLOUD_PROXY_URL'), /** * If enabled, media files will be served through a route in the application * instead of directly from the cloud storage URL. This can be useful for * handling access control, logging, or modifying the response. * * Default route: /media/{path} */ 'stream_route' => (bool) env('S3_CLOUD_STREAM_ROUTE', false), ], 'private' => [ 'driver' => 'local', 'root' => storage_path('app/private'), 'throw' => false, 'report' => false, ], 'tmp' => [ 'driver' => 'local', 'root' => storage_path('app/tmp'), 'throw' => false, 'report' => false, ], 'trash' => [ 'driver' => 'local', 'root' => storage_path('app/trash'), 'throw' => false, 'report' => false, ], ], /* |-------------------------------------------------------------------------- | Symbolic Links |-------------------------------------------------------------------------- | | Here you may configure the symbolic links that will be created when the | `storage:link` Artisan command is executed. The array keys should be | the locations of the links and the values should be their targets. | */ 'links' => [ public_path('storage') => storage_path('app/public'), ], ]; ================================================ FILE: config/l5-swagger.php ================================================ 'default', 'documentations' => [ 'default' => [ 'api' => [ 'title' => 'L5 Swagger UI', ], 'routes' => [ /* * Route for accessing api documentation interface */ 'api' => 'api/documentation', ], 'paths' => [ /* * Edit to include full URL in ui for assets */ 'use_absolute_path' => env('L5_SWAGGER_USE_ABSOLUTE_PATH', true), /* * Edit to set path where swagger ui assets should be stored */ 'swagger_ui_assets_path' => env('L5_SWAGGER_UI_ASSETS_PATH', 'vendor/swagger-api/swagger-ui/dist/'), /* * File name of the generated json documentation file */ 'docs_json' => 'api-docs.json', /* * File name of the generated YAML documentation file */ 'docs_yaml' => 'api-docs.yaml', /* * Set this to `json` or `yaml` to determine which documentation file to use in UI */ 'format_to_use_for_docs' => env('L5_FORMAT_TO_USE_FOR_DOCS', 'json'), /* * Absolute paths to directory containing the swagger annotations are stored. */ 'annotations' => [ base_path('vendor/juzaweb/core/src'), base_path('vendor/juzaweb/api/src'), base_path('modules/admin/src'), ], ], ], ], 'defaults' => [ 'routes' => [ /* * Route for accessing parsed swagger annotations. */ 'docs' => 'api/docs', /* * Route for Oauth2 authentication callback. */ 'oauth2_callback' => 'callback', /* * Middleware allows to prevent unexpected access to API documentation */ 'middleware' => [ 'api' => [], 'asset' => [], 'docs' => [], 'oauth2_callback' => [], ], /* * Route Group options */ 'group_options' => [], ], 'paths' => [ /* * Absolute path to location where parsed annotations will be stored */ 'docs' => storage_path('api-docs'), /* * Absolute path to directory where to export views */ 'views' => base_path('resources/views/vendor/l5-swagger'), /* * Edit to set the api's base path */ 'base' => env('L5_SWAGGER_BASE_PATH', null), /* * Absolute path to directories that should be excluded from scanning * @deprecated Please use `scanOptions.exclude` * `scanOptions.exclude` overwrites this */ 'excludes' => [], ], 'scanOptions' => [ /** * Configuration for default processors. Allows to pass processors configuration to swagger-php. * * @link https://zircote.github.io/swagger-php/reference/processors.html */ 'default_processors_configuration' => [ /** Example */ /** * 'operationId.hash' => true, * 'pathFilter' => [ * 'tags' => [ * '/pets/', * '/store/', * ], * ],. */ ], /** * analyser: defaults to \OpenApi\StaticAnalyser . * * @see scan */ 'analyser' => null, /** * analysis: defaults to a new \OpenApi\Analysis . * * @see scan */ 'analysis' => null, /** * Custom query path processors classes. * * @link https://github.com/zircote/swagger-php/tree/master/Examples/processors/schema-query-parameter * @see scan */ 'processors' => [ // new \App\SwaggerProcessors\SchemaQueryParameter(), ], /** * pattern: string $pattern File pattern(s) to scan (default: *.php) . * * @see scan */ 'pattern' => null, /* * Absolute path to directories that should be excluded from scanning * @note This option overwrites `paths.excludes` * @see \OpenApi\scan */ 'exclude' => [], /* * Allows to generate specs either for OpenAPI 3.0.0 or OpenAPI 3.1.0. * By default the spec will be in version 3.0.0 */ 'open_api_spec_version' => env('L5_SWAGGER_OPEN_API_SPEC_VERSION', Generator::OPEN_API_DEFAULT_SPEC_VERSION), ], /* * API security definitions. Will be generated into documentation file. */ 'securityDefinitions' => [ 'securitySchemes' => [ /* * Examples of Security schemes */ /* 'api_key_security_example' => [ // Unique name of security 'type' => 'apiKey', // The type of the security scheme. Valid values are "basic", "apiKey" or "oauth2". 'description' => 'A short description for security scheme', 'name' => 'api_key', // The name of the header or query parameter to be used. 'in' => 'header', // The location of the API key. Valid values are "query" or "header". ], 'oauth2_security_example' => [ // Unique name of security 'type' => 'oauth2', // The type of the security scheme. Valid values are "basic", "apiKey" or "oauth2". 'description' => 'A short description for oauth2 security scheme.', 'flow' => 'implicit', // The flow used by the OAuth2 security scheme. Valid values are "implicit", "password", "application" or "accessCode". 'authorizationUrl' => 'http://example.com/auth', // The authorization URL to be used for (implicit/accessCode) //'tokenUrl' => 'http://example.com/auth' // The authorization URL to be used for (password/application/accessCode) 'scopes' => [ 'read:projects' => 'read your projects', 'write:projects' => 'modify projects in your account', ] ], */ /* Open API 3.0 support 'passport' => [ // Unique name of security 'type' => 'oauth2', // The type of the security scheme. Valid values are "basic", "apiKey" or "oauth2". 'description' => 'Laravel passport oauth2 security.', 'in' => 'header', 'scheme' => 'https', 'flows' => [ "password" => [ "authorizationUrl" => config('app.url') . '/oauth/authorize', "tokenUrl" => config('app.url') . '/oauth/token', "refreshUrl" => config('app.url') . '/token/refresh', "scopes" => [] ], ], ], 'sanctum' => [ // Unique name of security 'type' => 'apiKey', // Valid values are "basic", "apiKey" or "oauth2". 'description' => 'Enter token in format (Bearer )', 'name' => 'Authorization', // The name of the header or query parameter to be used. 'in' => 'header', // The location of the API key. Valid values are "query" or "header". ], */ 'bearerAuth' => [ // Unique name of security 'type' => 'oauth2', // The type of the security scheme. Valid values are "basic", "apiKey" or "oauth2". 'description' => 'Laravel passport oauth2 security.', 'in' => 'header', 'scheme' => 'https', 'flows' => [ 'authorizationCode' => [ 'authorizationUrl' => config('app.url').'/oauth/authorize', 'tokenUrl' => config('app.url').'/oauth/token', 'refreshUrl' => config('app.url').'/oauth/token/refresh', 'scopes' => [], ], ], ], 'apiKey' => [ // Unique name of security 'type' => 'apiKey', // The type of the security scheme. Valid values are "basic", "apiKey" or "oauth2". 'description' => 'A short description for security scheme', 'name' => 'x-api-key', // The name of the header or query parameter to be used. 'in' => 'header', // The location of the API key. Valid values are "query" or "header". ], ], 'security' => [ /* * Examples of Securities */ [ /* 'oauth2_security_example' => [ 'read', 'write' ], 'passport' => [] */ ], ], ], /* * Set this to `true` in development mode so that docs would be regenerated on each request * Set this to `false` to disable swagger generation on production */ 'generate_always' => env('L5_SWAGGER_GENERATE_ALWAYS', false), /* * Set this to `true` to generate a copy of documentation in yaml format */ 'generate_yaml_copy' => env('L5_SWAGGER_GENERATE_YAML_COPY', false), /* * Edit to trust the proxy's ip address - needed for AWS Load Balancer * string[] */ 'proxy' => false, /* * Configs plugin allows to fetch external configs instead of passing them to SwaggerUIBundle. * See more at: https://github.com/swagger-api/swagger-ui#configs-plugin */ 'additional_config_url' => null, /* * Apply a sort to the operation list of each API. It can be 'alpha' (sort by paths alphanumerically), * 'method' (sort by HTTP method). * Default is the order returned by the server unchanged. */ 'operations_sort' => env('L5_SWAGGER_OPERATIONS_SORT', null), /* * Pass the validatorUrl parameter to SwaggerUi init on the JS side. * A null value here disables validation. */ 'validator_url' => null, /* * Swagger UI configuration parameters */ 'ui' => [ 'display' => [ 'dark_mode' => env('L5_SWAGGER_UI_DARK_MODE', false), /* * Controls the default expansion setting for the operations and tags. It can be : * 'list' (expands only the tags), * 'full' (expands the tags and operations), * 'none' (expands nothing). */ 'doc_expansion' => env('L5_SWAGGER_UI_DOC_EXPANSION', 'none'), /** * If set, enables filtering. The top bar will show an edit box that * you can use to filter the tagged operations that are shown. Can be * Boolean to enable or disable, or a string, in which case filtering * will be enabled using that string as the filter expression. Filtering * is case-sensitive matching the filter expression anywhere inside * the tag. */ 'filter' => env('L5_SWAGGER_UI_FILTERS', true), // true | false ], 'authorization' => [ /* * If set to true, it persists authorization data, and it would not be lost on browser close/refresh */ 'persist_authorization' => env('L5_SWAGGER_UI_PERSIST_AUTHORIZATION', true), 'oauth2' => [ /* * If set to true, adds PKCE to AuthorizationCodeGrant flow */ 'use_pkce_with_authorization_code_grant' => false, ], ], ], /* * Constants which can be used in annotations */ 'constants' => [ 'L5_SWAGGER_CONST_HOST' => env('L5_SWAGGER_CONST_HOST', 'http://my-default-host.com'), ], ], ]; ================================================ FILE: config/log-viewer.php ================================================ env('LOG_VIEWER_ENABLED', true), 'api_only' => env('LOG_VIEWER_API_ONLY', false), 'require_auth_in_production' => true, /* |-------------------------------------------------------------------------- | Log Viewer Domain |-------------------------------------------------------------------------- | You may change the domain where Log Viewer should be active. | If the domain is empty, all domains will be valid. | */ 'route_domain' => env('NETWORK_DOMAIN'), /* |-------------------------------------------------------------------------- | Log Viewer Route |-------------------------------------------------------------------------- | Log Viewer will be available under this URL. | */ 'route_path' => 'log-viewer', /* |-------------------------------------------------------------------------- | Log Viewer Assets Path |-------------------------------------------------------------------------- | The path to the Log Viewer assets. | */ 'assets_path' => 'vendor/log-viewer', /* |-------------------------------------------------------------------------- | Back to system URL |-------------------------------------------------------------------------- | When set, displays a link to easily get back to this URL. | Set to `null` to hide this link. | | Optional label to display for the above URL. | */ 'back_to_system_url' => config('app.url', null), 'back_to_system_label' => null, // Displayed by default: "Back to {{ app.name }}" /* |-------------------------------------------------------------------------- | Log Viewer time zone. |-------------------------------------------------------------------------- | The time zone in which to display the times in the UI. Defaults to | the application's timezone defined in config/app.php. | */ 'timezone' => null, /* |-------------------------------------------------------------------------- | Log Viewer datetime format. |-------------------------------------------------------------------------- | The format used to display timestamps in the UI. | */ 'datetime_format' => 'Y-m-d H:i:s', /* |-------------------------------------------------------------------------- | Log Viewer route middleware. |-------------------------------------------------------------------------- | Optional middleware to use when loading the initial Log Viewer page. | */ 'middleware' => [ 'web', AuthorizeLogViewer::class, ], /* |-------------------------------------------------------------------------- | Log Viewer API middleware. |-------------------------------------------------------------------------- | Optional middleware to use on every API request. The same API is also | used from within the Log Viewer user interface. | */ 'api_middleware' => [ EnsureFrontendRequestsAreStateful::class, AuthorizeLogViewer::class, ], 'api_stateful_domains' => env('LOG_VIEWER_API_STATEFUL_DOMAINS') ? explode(',', env('LOG_VIEWER_API_STATEFUL_DOMAINS')) : null, /* |-------------------------------------------------------------------------- | Log Viewer Remote hosts. |-------------------------------------------------------------------------- | Log Viewer supports viewing Laravel logs from remote hosts. They must | be running Log Viewer as well. Below you can define the hosts you | would like to show in this Log Viewer instance. | */ 'hosts' => [ 'local' => [ 'name' => ucfirst(env('APP_ENV', 'local')), ], // 'staging' => [ // 'name' => 'Staging', // 'host' => 'https://staging.example.com/log-viewer', // 'auth' => [ // Example of HTTP Basic auth // 'username' => 'username', // 'password' => 'password', // ], // 'verify_server_certificate' => true, // ], // // 'production' => [ // 'name' => 'Production', // 'host' => 'https://example.com/log-viewer', // 'auth' => [ // Example of Bearer token auth // 'token' => env('LOG_VIEWER_PRODUCTION_TOKEN'), // ], // 'headers' => [ // 'X-Foo' => 'Bar', // ], // 'verify_server_certificate' => true, // ], ], /* |-------------------------------------------------------------------------- | Include file patterns |-------------------------------------------------------------------------- | */ 'include_files' => [ '*.log', '**/*.log', // You can include paths to other log types as well, such as apache, nginx, and more. // This key => value pair can be used to rename and group multiple paths into one folder in the UI. // '/var/log/httpd/*' => 'Apache', // '/var/log/nginx/*' => 'Nginx', // MacOS Apple Silicon logs // '/opt/homebrew/var/log/nginx/*', // '/opt/homebrew/var/log/httpd/*', // '/opt/homebrew/var/log/php-fpm.log', // '/opt/homebrew/var/log/postgres*log', // '/opt/homebrew/var/log/redis*log', // '/opt/homebrew/var/log/supervisor*log', // '/absolute/paths/supported', ], /* |-------------------------------------------------------------------------- | Exclude file patterns. |-------------------------------------------------------------------------- | This will take precedence over included files. | */ 'exclude_files' => [ // 'my_secret.log' ], /* |-------------------------------------------------------------------------- | Hide unknown files. |-------------------------------------------------------------------------- | The include/exclude options above might catch files which are not | logs supported by Log Viewer. In that case, you can hide them | from the UI and API calls by setting this to true. | */ 'hide_unknown_files' => true, /* |-------------------------------------------------------------------------- | Shorter stack trace filters. |-------------------------------------------------------------------------- | Lines containing any of these strings will be excluded from the full log. | This setting is only active when the function is enabled via the user interface. | */ 'shorter_stack_trace_excludes' => [ '/vendor/symfony/', '/vendor/laravel/framework/', '/vendor/barryvdh/laravel-debugbar/', ], /* |-------------------------------------------------------------------------- | Cache driver |-------------------------------------------------------------------------- | Cache driver to use for storing the log indices. Indices are used to speed up | log navigation. Defaults to your application's default cache driver. | */ 'cache_driver' => env('LOG_VIEWER_CACHE_DRIVER', null), /* |-------------------------------------------------------------------------- | Cache key prefix |-------------------------------------------------------------------------- | Log Viewer prefixes all the cache keys created with this value. If for | some reason you would like to change this prefix, you can do so here. | The format of Log Viewer cache keys is: | {prefix}:{version}:{rest-of-the-key} | */ 'cache_key_prefix' => 'lv', /* |-------------------------------------------------------------------------- | Chunk size when scanning log files lazily |-------------------------------------------------------------------------- | The size in MB of files to scan before updating the progress bar when searching across all files. | */ 'lazy_scan_chunk_size_in_mb' => 50, 'strip_extracted_context' => true, /* |-------------------------------------------------------------------------- | Per page options |-------------------------------------------------------------------------- | Define the available options for number of results per page | */ 'per_page_options' => [10, 25, 50, 100], /* |-------------------------------------------------------------------------- | Default settings for Log Viewer |-------------------------------------------------------------------------- | These settings determine the default behaviour of Log Viewer. Many of | these can be persisted for the user in their browser's localStorage, | if the `use_local_storage` option is set to true. | */ 'defaults' => [ // Whether to use browser's localStorage to store user preferences. // If true, user preferences saved in the browser will take precedence over the defaults below. 'use_local_storage' => true, // Method to sort the folders. Other options: `Alphabetical`, `ModifiedTime` 'folder_sorting_method' => SortingMethod::ModifiedTime, // Order to sort the folders. Other options: `Ascending`, `Descending` 'folder_sorting_order' => SortingOrder::Descending, // Method for sorting log-files into directories. Other options: `Alphabetical`, `ModifiedTime` 'file_sorting_method' => SortingMethod::ModifiedTime, // Order to sort the logs. Other options: `Ascending`, `Descending` 'log_sorting_order' => SortingOrder::Descending, // Number of results per page. Must be one of the above `per_page_options` values 'per_page' => 25, // Color scheme for the Log Viewer. Other options: `System`, `Light`, `Dark` 'theme' => Theme::System, // Whether to enable `Shorter Stack Traces` option by default 'shorter_stack_traces' => false, ], /* |-------------------------------------------------------------------------- | Exclude IP from identifiers |-------------------------------------------------------------------------- | By default, file and folder identifiers include the server's IP address | to ensure uniqueness. In load-balanced environments with shared storage, | this can cause "No results" errors. Set to true to exclude IP addresses | from identifier generation for consistent results across servers. | */ 'exclude_ip_from_identifiers' => env('LOG_VIEWER_EXCLUDE_IP_FROM_IDENTIFIERS', false), /* |-------------------------------------------------------------------------- | Root folder prefix |-------------------------------------------------------------------------- | The prefix for log files inside Laravel's `storage/logs` folder. | Log Viewer does not show the full path to these files in the UI, | but only the filename prefixed with this value. | */ 'root_folder_prefix' => 'root', ]; ================================================ FILE: config/logging.php ================================================ env('LOG_CHANNEL', 'stack'), /* |-------------------------------------------------------------------------- | Deprecations Log Channel |-------------------------------------------------------------------------- | | This option controls the log channel that should be used to log warnings | regarding deprecated PHP and library features. This allows you to get | your application ready for upcoming major versions of dependencies. | */ 'deprecations' => [ 'channel' => env('LOG_DEPRECATIONS_CHANNEL', 'null'), 'trace' => env('LOG_DEPRECATIONS_TRACE', false), ], /* |-------------------------------------------------------------------------- | Log Channels |-------------------------------------------------------------------------- | | Here you may configure the log channels for your application. Laravel | utilizes the Monolog PHP logging library, which includes a variety | of powerful log handlers and formatters that you're free to use. | | Available drivers: "single", "daily", "slack", "syslog", | "errorlog", "monolog", "custom", "stack" | */ 'channels' => [ 'stack' => [ 'driver' => 'stack', 'channels' => explode(',', env('LOG_STACK', 'single')), 'ignore_exceptions' => false, ], 'single' => [ 'driver' => 'single', 'path' => storage_path('logs/laravel.log'), 'level' => env('LOG_LEVEL', 'debug'), 'replace_placeholders' => true, ], 'daily' => [ 'driver' => 'daily', 'path' => storage_path('logs/laravel.log'), 'level' => env('LOG_LEVEL', 'debug'), 'days' => env('LOG_DAILY_DAYS', 14), 'replace_placeholders' => true, 'tap' => [AddCustomInformation::class], ], 'subscription' => [ 'driver' => 'daily', 'path' => storage_path('logs/subscription.log'), 'level' => env('LOG_LEVEL', 'debug'), 'days' => 90, 'replace_placeholders' => true, ], 'slack' => [ 'driver' => 'slack', 'url' => env('LOG_SLACK_WEBHOOK_URL'), 'username' => env('LOG_SLACK_USERNAME', 'Laravel Log'), 'emoji' => env('LOG_SLACK_EMOJI', ':boom:'), 'level' => env('LOG_LEVEL', 'critical'), 'replace_placeholders' => true, ], 'papertrail' => [ 'driver' => 'monolog', 'level' => env('LOG_LEVEL', 'debug'), 'handler' => env('LOG_PAPERTRAIL_HANDLER', SyslogUdpHandler::class), 'handler_with' => [ 'host' => env('PAPERTRAIL_URL'), 'port' => env('PAPERTRAIL_PORT'), 'connectionString' => 'tls://'.env('PAPERTRAIL_URL').':'.env('PAPERTRAIL_PORT'), ], 'processors' => [PsrLogMessageProcessor::class], ], 'stderr' => [ 'driver' => 'monolog', 'level' => env('LOG_LEVEL', 'debug'), 'handler' => StreamHandler::class, 'formatter' => env('LOG_STDERR_FORMATTER'), 'with' => [ 'stream' => 'php://stderr', ], 'processors' => [PsrLogMessageProcessor::class], ], 'syslog' => [ 'driver' => 'syslog', 'level' => env('LOG_LEVEL', 'debug'), 'facility' => env('LOG_SYSLOG_FACILITY', LOG_USER), 'replace_placeholders' => true, ], 'errorlog' => [ 'driver' => 'errorlog', 'level' => env('LOG_LEVEL', 'debug'), 'replace_placeholders' => true, ], 'null' => [ 'driver' => 'monolog', 'handler' => NullHandler::class, ], 'emergency' => [ 'path' => storage_path('logs/laravel.log'), ], ], ]; ================================================ FILE: config/mail.php ================================================ env('MAIL_MAILER', 'log'), /* |-------------------------------------------------------------------------- | Mailer Configurations |-------------------------------------------------------------------------- | | Here you may configure all of the mailers used by your application plus | their respective settings. Several examples have been configured for | you and you are free to add your own as your application requires. | | Laravel supports a variety of mail "transport" drivers that can be used | when delivering an email. You may specify which one you're using for | your mailers below. You may also add additional mailers if needed. | | Supported: "smtp", "sendmail", "mailgun", "ses", "ses-v2", | "postmark", "resend", "log", "array", | "failover", "roundrobin" | */ 'mailers' => [ 'smtp' => [ 'transport' => 'smtp', 'scheme' => env('MAIL_SCHEME'), 'url' => env('MAIL_URL'), 'host' => env('MAIL_HOST', '127.0.0.1'), 'port' => env('MAIL_PORT', 2525), 'username' => env('MAIL_USERNAME'), 'password' => env('MAIL_PASSWORD'), 'timeout' => null, 'local_domain' => env('MAIL_EHLO_DOMAIN', parse_url(env('APP_URL', 'http://localhost'), PHP_URL_HOST)), ], 'ses' => [ 'transport' => 'ses', ], 'postmark' => [ 'transport' => 'postmark', // 'message_stream_id' => env('POSTMARK_MESSAGE_STREAM_ID'), // 'client' => [ // 'timeout' => 5, // ], ], 'resend' => [ 'transport' => 'resend', 'key' => env('RESEND_KEY'), ], 'sendmail' => [ 'transport' => 'sendmail', 'path' => env('MAIL_SENDMAIL_PATH', '/usr/sbin/sendmail -bs -i'), ], 'log' => [ 'transport' => 'log', 'channel' => env('MAIL_LOG_CHANNEL'), ], 'array' => [ 'transport' => 'array', ], 'failover' => [ 'transport' => 'failover', 'mailers' => [ 'smtp', 'log', ], ], 'roundrobin' => [ 'transport' => 'roundrobin', 'mailers' => [ 'ses', 'postmark', ], ], ], /* |-------------------------------------------------------------------------- | Global "From" Address |-------------------------------------------------------------------------- | | You may wish for all emails sent by your application to be sent from | the same address. Here you may specify a name and address that is | used globally for all emails that are sent by your application. | */ 'from' => [ 'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'), 'name' => env('MAIL_FROM_NAME', 'Example'), ], ]; ================================================ FILE: config/queue.php ================================================ env('QUEUE_CONNECTION', 'database'), /* |-------------------------------------------------------------------------- | Queue Connections |-------------------------------------------------------------------------- | | Here you may configure the connection options for every queue backend | used by your application. An example configuration is provided for | each backend supported by Laravel. You're also free to add more. | | Drivers: "sync", "database", "beanstalkd", "sqs", "redis", "null" | */ 'connections' => [ 'sync' => [ 'driver' => 'sync', ], 'database' => [ 'driver' => 'database', 'connection' => env('DB_QUEUE_CONNECTION'), 'table' => env('DB_QUEUE_TABLE', 'jobs'), 'queue' => env('DB_QUEUE', 'default'), 'retry_after' => (int) env('DB_QUEUE_RETRY_AFTER', 3600), 'after_commit' => false, ], 'beanstalkd' => [ 'driver' => 'beanstalkd', 'host' => env('BEANSTALKD_QUEUE_HOST', 'localhost'), 'queue' => env('BEANSTALKD_QUEUE', 'default'), 'retry_after' => (int) env('BEANSTALKD_QUEUE_RETRY_AFTER', 90), 'block_for' => 0, 'after_commit' => false, ], 'sqs' => [ 'driver' => 'sqs', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'), 'queue' => env('SQS_QUEUE', 'default'), 'suffix' => env('SQS_SUFFIX'), 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), 'after_commit' => false, ], 'redis' => [ 'driver' => 'redis', 'connection' => env('REDIS_QUEUE_CONNECTION', 'default'), 'queue' => env('REDIS_QUEUE', 'default'), 'retry_after' => (int) env('REDIS_QUEUE_RETRY_AFTER', 3600), 'block_for' => null, 'after_commit' => false, ], ], /* |-------------------------------------------------------------------------- | Job Batching |-------------------------------------------------------------------------- | | The following options configure the database and table that store job | batching information. These options can be updated to any database | connection and table which has been defined by your application. | */ 'batching' => [ 'database' => env('DB_CONNECTION', 'sqlite'), 'table' => 'job_batches', ], /* |-------------------------------------------------------------------------- | Failed Queue Jobs |-------------------------------------------------------------------------- | | These options configure the behavior of failed queue job logging so you | can control how and where failed jobs are stored. Laravel ships with | support for storing failed jobs in a simple file or in a database. | | Supported drivers: "database-uuids", "dynamodb", "file", "null" | */ 'failed' => [ 'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'), 'database' => env('DB_CONNECTION', 'sqlite'), 'table' => 'failed_jobs', ], ]; ================================================ FILE: config/services.php ================================================ [ 'token' => env('POSTMARK_TOKEN'), ], 'ses' => [ 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), ], 'resend' => [ 'key' => env('RESEND_KEY'), ], 'slack' => [ 'notifications' => [ 'bot_user_oauth_token' => env('SLACK_BOT_USER_OAUTH_TOKEN'), 'channel' => env('SLACK_BOT_USER_DEFAULT_CHANNEL'), ], ], 'juzaweb' => [ 'key' => env('JUZAWEB_API_KEY'), ], ]; ================================================ FILE: config/session.php ================================================ env('SESSION_DRIVER', 'database'), /* |-------------------------------------------------------------------------- | Session Lifetime |-------------------------------------------------------------------------- | | Here you may specify the number of minutes that you wish the session | to be allowed to remain idle before it expires. If you want them | to expire immediately when the browser is closed then you may | indicate that via the expire_on_close configuration option. | */ 'lifetime' => (int) env('SESSION_LIFETIME', 120), 'expire_on_close' => env('SESSION_EXPIRE_ON_CLOSE', false), /* |-------------------------------------------------------------------------- | Session Encryption |-------------------------------------------------------------------------- | | This option allows you to easily specify that all of your session data | should be encrypted before it's stored. All encryption is performed | automatically by Laravel and you may use the session like normal. | */ 'encrypt' => env('SESSION_ENCRYPT', false), /* |-------------------------------------------------------------------------- | Session File Location |-------------------------------------------------------------------------- | | When utilizing the "file" session driver, the session files are placed | on disk. The default storage location is defined here; however, you | are free to provide another location where they should be stored. | */ 'files' => storage_path('framework/sessions'), /* |-------------------------------------------------------------------------- | Session Database Connection |-------------------------------------------------------------------------- | | When using the "database" or "redis" session drivers, you may specify a | connection that should be used to manage these sessions. This should | correspond to a connection in your database configuration options. | */ 'connection' => env('SESSION_CONNECTION'), /* |-------------------------------------------------------------------------- | Session Database Table |-------------------------------------------------------------------------- | | When using the "database" session driver, you may specify the table to | be used to store sessions. Of course, a sensible default is defined | for you; however, you're welcome to change this to another table. | */ 'table' => env('SESSION_TABLE', 'sessions'), /* |-------------------------------------------------------------------------- | Session Cache Store |-------------------------------------------------------------------------- | | When using one of the framework's cache driven session backends, you may | define the cache store which should be used to store the session data | between requests. This must match one of your defined cache stores. | | Affects: "apc", "dynamodb", "memcached", "redis" | */ 'store' => env('SESSION_STORE'), /* |-------------------------------------------------------------------------- | Session Sweeping Lottery |-------------------------------------------------------------------------- | | Some session drivers must manually sweep their storage location to get | rid of old sessions from storage. Here are the chances that it will | happen on a given request. By default, the odds are 2 out of 100. | */ 'lottery' => [2, 100], /* |-------------------------------------------------------------------------- | Session Cookie Name |-------------------------------------------------------------------------- | | Here you may change the name of the session cookie that is created by | the framework. Typically, you should not need to change this value | since doing so does not grant a meaningful security improvement. | */ 'cookie' => env( 'SESSION_COOKIE', Str::slug(env('APP_NAME', 'juzaweb'), '_').'_session' ), /* |-------------------------------------------------------------------------- | Session Cookie Path |-------------------------------------------------------------------------- | | The session cookie path determines the path for which the cookie will | be regarded as available. Typically, this will be the root path of | your application, but you're free to change this when necessary. | */ 'path' => env('SESSION_PATH', '/'), /* |-------------------------------------------------------------------------- | Session Cookie Domain |-------------------------------------------------------------------------- | | This value determines the domain and subdomains the session cookie is | available to. By default, the cookie will be available to the root | domain and all subdomains. Typically, this shouldn't be changed. | */ 'domain' => env('SESSION_DOMAIN'), /* |-------------------------------------------------------------------------- | HTTPS Only Cookies |-------------------------------------------------------------------------- | | By setting this option to true, session cookies will only be sent back | to the server if the browser has a HTTPS connection. This will keep | the cookie from being sent to you when it can't be done securely. | */ 'secure' => env('SESSION_SECURE_COOKIE'), /* |-------------------------------------------------------------------------- | HTTP Access Only |-------------------------------------------------------------------------- | | Setting this value to true will prevent JavaScript from accessing the | value of the cookie and the cookie will only be accessible through | the HTTP protocol. It's unlikely you should disable this option. | */ 'http_only' => env('SESSION_HTTP_ONLY', true), /* |-------------------------------------------------------------------------- | Same-Site Cookies |-------------------------------------------------------------------------- | | This option determines how your cookies behave when cross-site requests | take place, and can be used to mitigate CSRF attacks. By default, we | will set this value to "lax" to permit secure cross-site requests. | | See: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#samesitesamesite-value | | Supported: "lax", "strict", "none", null | */ 'same_site' => env('SESSION_SAME_SITE', 'lax'), /* |-------------------------------------------------------------------------- | Partitioned Cookies |-------------------------------------------------------------------------- | | Setting this value to true will tie the cookie to the top-level site for | a cross-site context. Partitioned cookies are accepted by the browser | when flagged "secure" and the Same-Site attribute is set to "none". | */ 'partitioned' => env('SESSION_PARTITIONED_COOKIE', false), ]; ================================================ FILE: config/translatable.php ================================================ [ 'en', 'vi', // 'fr', // 'de', // 'es', ], /* |-------------------------------------------------------------------------- | Locale separator |-------------------------------------------------------------------------- | | This is a string used to glue the language and the country when defining | the available locales. Example: if set to '-', then the locale for | colombian spanish will be saved as 'es-CO' into the database. | */ 'locale_separator' => '-', /* |-------------------------------------------------------------------------- | Default locale |-------------------------------------------------------------------------- | | As a default locale, Translatable takes the locale of Laravel's | translator. If for some reason you want to override this, | you can specify what default should be used here. | If you set a value here it will only use the current config value | and never fallback to the translator one. | */ 'locale' => null, /* |-------------------------------------------------------------------------- | Use fallback |-------------------------------------------------------------------------- | | Determine if fallback locales are returned by default or not. To add | more flexibility and configure this option per "translatable" | instance, this value will be overridden by the property | $useTranslationFallback when defined | */ 'use_fallback' => true, /* |-------------------------------------------------------------------------- | Use fallback per property |-------------------------------------------------------------------------- | | The property fallback feature will return the translated value of | the fallback locale if the property is empty for the selected | locale. Note that 'use_fallback' must be enabled. | */ 'use_property_fallback' => true, /* |-------------------------------------------------------------------------- | Fallback Locale |-------------------------------------------------------------------------- | | A fallback locale is the locale being used to return a translation | when the requested translation is not existing. To disable it | set it to false. | If set to null it will loop through all configured locales until | one existing is found or end of list reached. The locales are looped | from top to bottom and for country based locales the simple one | is used first. So "es" will be checked before "es_MX". | */ 'fallback_locale' => 'en', /* |-------------------------------------------------------------------------- | Translation Model Namespace |-------------------------------------------------------------------------- | | Defines the default 'Translation' class namespace. For example, if | you want to use App\Translations\CountryTranslation instead of App\CountryTranslation | set this to 'App\Translations'. | */ 'translation_model_namespace' => null, /* |-------------------------------------------------------------------------- | Translation Suffix |-------------------------------------------------------------------------- | | Defines the default 'Translation' class suffix. For example, if | you want to use CountryTrans instead of CountryTranslation | application, set this to 'Trans'. | */ 'translation_suffix' => 'Translation', /* |-------------------------------------------------------------------------- | Locale key |-------------------------------------------------------------------------- | | Defines the 'locale' field name, which is used by the | translation model. | */ 'locale_key' => 'locale', /* |-------------------------------------------------------------------------- | Always load translations when converting to array |-------------------------------------------------------------------------- | Setting this to false will have a performance improvement but will | not return the translations when using toArray(), unless the | translations relationship is already loaded. | */ 'to_array_always_loads_translations' => false, /* |-------------------------------------------------------------------------- | Configure the default behavior of the rule factory |-------------------------------------------------------------------------- | The default values used to control the behavior of the RuleFactory. | Here you can set your own default format and delimiters for | your whole app. * */ 'rule_factory' => [ 'format' => RuleFactory::FORMAT_ARRAY, 'prefix' => '%', 'suffix' => '%', ], ]; ================================================ FILE: config/translation-loader.php ================================================ [ Db::class, ], /* * This is the model used by the Db Translation loader. You can put any model here * that extends Spatie\TranslationLoader\LanguageLine. */ 'model' => LanguageLine::class, /* * This is the translation manager which overrides the default Laravel `translation.loader` */ 'translation_manager' => TranslationLoaderManager::class, ]; ================================================ FILE: database/.gitignore ================================================ *.sqlite* ================================================ FILE: database/seeders/DatabaseSeeder.php ================================================ create(); User::factory()->create([ 'name' => 'Test User', 'email' => 'test@example.com', ]); } } ================================================ FILE: modules/.gitkeep ================================================ ================================================ FILE: modules/admin/composer.json ================================================ { "name": "juzaweb/admin", "description": "Juzaweb CMS Admin", "keywords": [], "license": "MIT", "homepage": "https://juzaweb.com", "require": { "php": "^8.2" }, "autoload": { "psr-4": { "Juzaweb\\Modules\\Admin\\": "src/", "Juzaweb\\Modules\\Admin\\Database\\Factories\\": "database/factories/" } }, "minimum-stability": "dev", "config": { "sort-packages": true } } ================================================ FILE: modules/admin/database/factories/CategoryFactory.php ================================================ */ class CategoryFactory extends Factory { protected $model = Category::class; /** * Define the model's default state. * * @return array */ public function definition(): array { return [ 'parent_id' => null, 'en' => [ 'name' => $this->faker->words(3, true), 'description' => $this->faker->sentence(), 'slug' => $this->faker->unique()->slug(), 'locale' => 'en', ], ]; } /** * Indicate that the category has a parent. */ public function withParent(string $parentId): static { return $this->state(fn (array $attributes) => [ 'parent_id' => $parentId, ]); } } ================================================ FILE: modules/admin/database/factories/MediaFactory.php ================================================ */ class MediaFactory extends Factory { protected $model = Media::class; /** * Define the model's default state. * * @return array */ public function definition(): array { $filename = $this->faker->uuid().'.jpg'; return [ 'name' => $filename, 'path' => 'tests/'.$filename, 'mime_type' => 'image/jpeg', 'size' => 102400, // 100KB 'type' => 'file', 'extension' => 'jpg', 'image_size' => '200x200', 'disk' => 'public', ]; } } ================================================ FILE: modules/admin/database/factories/MenuFactory.php ================================================ */ class MenuFactory extends Factory { protected $model = Menu::class; public function definition(): array { return [ 'name' => $this->faker->words(3, true), ]; } } ================================================ FILE: modules/admin/database/factories/PageFactory.php ================================================ */ class PageFactory extends Factory { protected $model = Page::class; /** * Define the model's default state. * * @return array */ public function definition(): array { return [ 'status' => PageStatus::PUBLISHED, 'template' => null, 'en' => [ 'title' => $this->faker->sentence(), 'content' => $this->faker->paragraphs(3, true), 'slug' => $this->faker->unique()->slug(), 'locale' => 'en', ], ]; } /** * Indicate that the page is a draft. */ public function draft(): static { return $this->state(fn (array $attributes) => [ 'status' => PageStatus::DRAFT, ]); } /** * Indicate that the page has a specific template. */ public function withTemplate(string $template): static { return $this->state(fn (array $attributes) => [ 'template' => $template, ]); } } ================================================ FILE: modules/admin/database/factories/PostFactory.php ================================================ */ class PostFactory extends Factory { protected $model = Post::class; /** * Define the model's default state. * * @return array */ public function definition(): array { return [ 'status' => PostStatus::PUBLISHED, 'en' => [ 'title' => $this->faker->sentence(), 'content' => $this->faker->paragraphs(3, true), 'slug' => $this->faker->unique()->slug(), 'locale' => 'en', ], ]; } /** * Indicate that the post is a draft. */ public function draft(): static { return $this->state(fn (array $attributes) => [ 'status' => PostStatus::DRAFT, ]); } /** * Indicate that the post is private. */ public function private(): static { return $this->state(fn (array $attributes) => [ 'status' => PostStatus::PRIVATE, ]); } } ================================================ FILE: modules/admin/database/factories/UserFactory.php ================================================ */ class UserFactory extends Factory { /** * The name of the factory's corresponding model. * * @var class-string */ protected $model = User::class; /** * The current password being used by the factory. */ protected static ?string $password; /** * Define the model's default state. * * @return array */ public function definition(): array { return [ 'name' => fake()->name(), 'email' => fake()->unique()->safeEmail(), 'email_verified_at' => now(), 'password' => static::$password ??= Hash::make('password'), 'remember_token' => Str::random(10), ]; } /** * Indicate that the model's email address should be unverified. */ public function unverified(): static { return $this->state(fn (array $attributes) => [ 'email_verified_at' => null, ]); } } ================================================ FILE: modules/admin/src/Enums/UserStatus.php ================================================ value => self::ACTIVE->label(), self::INACTIVE->value => self::INACTIVE->label(), self::BANNED->value => self::BANNED->label(), ]; } public function label(): string { return match ($this) { self::ACTIVE => __('core::translation.active'), self::INACTIVE => __('core::translation.inactive'), self::BANNED => __('core::translation.banned'), }; } } ================================================ FILE: modules/admin/src/Http/Controllers/DashboardController.php ================================================ getTotalUsers(); $totalPages = Page::count(); $usedStorage = Media::cacheFor(3600)->sum('size'); $storageFree = disk_free_space(storage_path()); return view( 'admin::dashboard.index', [ 'title' => __('core::translation.dashboard'), ...compact('totalUsers', 'storageFree', 'usedStorage', 'totalPages'), ] ); } public function online(): JsonResponse { return response()->json([ 'total' => number_human_format(online_count()), ]); } protected function getTotalUsers(): int { return User::query() ->cacheFor(1800) ->count(); } } ================================================ FILE: modules/admin/src/Models/Client.php ================================================ firstParty(); } } ================================================ FILE: modules/admin/src/Models/Guest.php ================================================ app->isProduction()); Gate::define('viewLogViewer', function (?User $user) { return $user && $user->isSuperAdmin(); }); Passport::useClientModel(Client::class); } public function register(): void { parent::register(); $this->registerViews(); } protected function registerViews(): void { $viewPath = resource_path('views/modules/admin'); $sourcePath = __DIR__.'/../resources/views'; $this->publishes([ $sourcePath => $viewPath, ], ['views', 'admin-module-views']); $this->loadViewsFrom($sourcePath, 'admin'); } } ================================================ FILE: modules/admin/src/resources/views/dashboard/index.blade.php ================================================ @extends('core::layouts.admin') @section('head') @endsection @section('content')
{{ __('core::translation.pages') }} {{ number_human_format($totalPages) }}
{{ __('core::translation.members') }} {{ number_human_format($totalUsers) }}
{{ __('core::translation.online') }} {{ number_human_format(online_count()) }}
{{ __('core::translation.storage') }} {{ format_size_units($usedStorage) }}
/ {{ format_size_units($storageFree) }}
@do_action('admin.dashboard.index')
{{ \Juzaweb\Modules\Core\Support\Dashboard\UsersChart::make()->render() }}
{{ Chart::make('users-by-country')->render() }}
{{ Chart::make('session-duration')->render() }}
{{ Chart::make('sessions-by-device')->render() }}
{{ Chart::make('top-pages')->render() }}
{{ Chart::make('traffic-sources')->render() }}
@endsection @section('scripts') @endsection ================================================ FILE: package.json ================================================ { "name": "sitecreator", "version": "1.0.0", "private": true, "type": "commonjs", "scripts": { "build": "vite build", "dev": "vite", "prod": "mix --production", "hot": "mix watch --hot" }, "devDependencies": { "autoprefixer": "^10.4.20", "axios": "^1.7.4", "concurrently": "^9.0.1", "laravel-mix": "^6.0.49", "laravel-vite-plugin": "^1.2.0", "postcss": "^8.4.47", "tailwindcss": "^3.4.13", "vite": "^6.0.11" }, "dependencies": { "laravel-mix-merge-manifest": "^2.1.0" } } ================================================ FILE: phpunit.xml ================================================ tests/Unit tests/Feature app ================================================ FILE: postcss.config.js ================================================ export default { plugins: { tailwindcss: {}, autoprefixer: {}, }, }; ================================================ FILE: public/.htaccess ================================================ Options -MultiViews -Indexes RewriteEngine On # Handle Authorization Header RewriteCond %{HTTP:Authorization} . RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] # Handle X-XSRF-Token Header RewriteCond %{HTTP:x-xsrf-token} . RewriteRule .* - [E=HTTP_X_XSRF_TOKEN:%{HTTP:X-XSRF-Token}] # Redirect Trailing Slashes If Not A Folder... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301] # Send Requests To Front Controller... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] ================================================ FILE: public/index.php ================================================ handleRequest(Request::capture()); ================================================ FILE: public/juzaweb/.gitignore ================================================ * !.gitkeep !.gitignore ================================================ FILE: public/juzaweb/.gitkeep ================================================ ================================================ FILE: public/modules/.gitignore ================================================ * !.gitkeep !.gitignore ================================================ FILE: public/modules/.gitkeep ================================================ ================================================ FILE: public/robots.txt ================================================ User-agent: * Disallow: /search ================================================ FILE: public/themes/.gitignore ================================================ * !.gitkeep !.gitignore ================================================ FILE: public/themes/.gitkeep ================================================ ================================================ FILE: public/vendor/installer/css/sass/_variables.sass ================================================ //colors $color_0: #ff0 $color_1: #000 $color_2: silver $color_3: #666 $color_4: #111 $color_5: #1d73a2 $color_6: #175c82 $color_7: rgba(0, 0, 0, .19) $color_8: rgba(0, 0, 0, .23) $color_9: #357295 $color_10: #fff $color_11: #cacfd2 $color_12: #34a0db $color_13: rgba(0, 0, 0, .12) $color_14: rgba(0, 0, 0, .24) $color_15: #2490cb $color_16: #eee $color_17: #222 $color_18: rgba(0, 0, 0, .16) $color_19: #2ecc71 $color_20: #e74c3c $color_21: #f5f5f5 $color_22: rgba(0, 0, 0, .2) //fonts $font_0: Ionicons $font_1: sans-serif $font_2: monospace $font_3: Roboto $font_4: Helvetica Neue $font_5: Helvetica $font_6: Arial $font_7: Courier New $font_8: Courier $font_9: Lucida Sans Typewriter $font_10: Lucida Typewriter //urls $url_0: url(https://fonts.googleapis.com/css?family=Roboto:400,300,500,700,900) $url_1: url(../fonts/ionicons.eot?v=2.0.1) $url_2: url(../fonts/ionicons.eot?v=2.0.1#iefix) $url_3: url(../fonts/ionicons.ttf?v=2.0.1) $url_4: url(../fonts/ionicons.woff?v=2.0.1) $url_5: url(../fonts/ionicons.svg?v=2.0.1#Ionicons) $url_6: url(../img/background.png) ================================================ FILE: public/vendor/installer/css/sass/style.sass ================================================ // Variables @import "variables"; //@extend-elements //original selectors //sub, sup .extend_1 font-size: 75% line-height: 0 position: relative vertical-align: baseline //original selectors //button, input, optgroup, select, textarea .extend_2 color: inherit font: inherit margin: 0 @import $url_0; html font-family: $font_1 -ms-text-size-adjust: 100% -webkit-text-size-adjust: 100% font-family: $font_3, $font_4, $font_5, $font_6, $font_1 font-weight: 300 color: $color_3 font-size: 12px line-height: 1.75em input[type=button] -webkit-appearance: button cursor: pointer input[disabled] cursor: default body margin: 0 text-rendering: optimizeLegibility -webkit-font-smoothing: antialiased -moz-osx-font-smoothing: grayscale -moz-font-feature-settings: "liga" on article display: block aside display: block details display: block figcaption display: block figure display: block margin: 1em 40px footer display: block header display: block hgroup display: block main display: block menu display: block nav display: block section display: block summary display: block audio display: inline-block vertical-align: baseline &:not([controls]) display: none height: 0 canvas display: inline-block vertical-align: baseline progress display: inline-block vertical-align: baseline video display: inline-block vertical-align: baseline [hidden] display: none template display: none a background-color: transparent text-decoration: none color: $color_5 //If you use compass, instead of the line below you could use + transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: all .2s margin: 0 padding: 0 &:active outline: 0 &:hover outline: 0 color: $color_6 abbr[title] border-bottom: 1px dotted b font-weight: 700 margin: 0 padding: 0 strong font-weight: 700 margin: 0 padding: 0 dfn font-style: italic margin: 0 padding: 0 h1 font-size: 2em margin: .67em 0 font-size: 27.85438995234061px margin-top: .942400822452556em line-height: 1.130880986943067em margin-bottom: .188480164490511em margin: 0 padding: 0 font-family: $font_3, $font_4, $font_5, $font_6, $font_1 font-weight: 500 color: $color_4 clear: both mark background: $color_0 color: $color_1 small font-size: 80% margin: 0 padding: 0 line-height: 0 sub @extend %extend_1 bottom: -.25em margin: 0 padding: 0 line-height: 0 sup @extend %extend_1 top: -.5em margin: 0 padding: 0 line-height: 0 img border: 0 margin: 0 padding: 0 hr //If you use compass, instead of the line below you could use + box-sizing($bs) box-sizing: content-box height: 0 pre overflow: auto padding: .875em margin-bottom: 1.75em font-family: $font_2 font-size: 1em margin: 0 padding: 0 margin-bottom: 1.75em code padding: 0 code font-family: $font_2 font-size: 1em margin: 0 padding: 0 font-family: $font_7, $font_8, $font_9, $font_10, $font_2 padding: .0875em .2625em line-height: 0 kbd font-family: $font_2 font-size: 1em margin: 0 padding: 0 samp font-family: $font_2 font-size: 1em margin: 0 padding: 0 button @extend %extend_2 overflow: visible text-transform: none -webkit-appearance: button cursor: pointer display: block cursor: pointer font-size: 12px padding: .4375em 1.75em margin-bottom: 1.18125em input @extend %extend_2 line-height: normal optgroup @extend %extend_2 font-weight: 700 select @extend %extend_2 text-transform: none textarea @extend %extend_2 overflow: auto display: block max-width: 100% padding: .4375em font-size: 12px margin-bottom: 1.18125em input[type=reset] -webkit-appearance: button cursor: pointer input[type=submit] -webkit-appearance: button cursor: pointer display: block cursor: pointer font-size: 12px padding: .4375em 1.75em margin-bottom: 1.18125em button[disabled] cursor: default button::-moz-focus-inner border: 0 padding: 0 input::-moz-focus-inner border: 0 padding: 0 input[type=checkbox] //If you use compass, instead of the line below you could use + box-sizing($bs) box-sizing: border-box padding: 0 input[type=radio] //If you use compass, instead of the line below you could use + box-sizing($bs) box-sizing: border-box padding: 0 input[type=number]::-webkit-inner-spin-button height: auto input[type=number]::-webkit-outer-spin-button height: auto input[type=search] -webkit-appearance: textfield //If you use compass, instead of the line below you could use + box-sizing($bs) box-sizing: content-box input[type=search]::-webkit-search-cancel-button -webkit-appearance: none input[type=search]::-webkit-search-decoration -webkit-appearance: none fieldset border: 1px solid $color_2 margin: 0 2px padding: .35em .625em .75em padding: .875em 1.75em 1.75em border-width: 1px border-style: solid max-width: 100% margin-bottom: 1.8375em margin: 0 padding: 0 button margin-bottom: 0 input[type=submit] margin-bottom: 0 legend border: 0 padding: 0 color: $color_4 font-weight: 700 margin: 0 padding: 0 table width: 100% border-spacing: 0 border-collapse: collapse margin-bottom: 2.1875em margin: 0 padding: 0 margin-bottom: 1.75em td padding: 0 margin: 0 padding: 0 padding: .21875em .875em th padding: 0 margin: 0 padding: 0 text-align: left color: $color_4 padding: .21875em .875em @font-face font-family: $font_0 src: $url_1 src: $url_2 format("embedded-opentype"), $url_3 format("truetype"), $url_4 format("woff"), $url_5 format("svg") font-weight: 400 font-style: normal @media(min-width:600px) html font-size: calc(12px +8 *((100vw - 600px) / 540)) h1 font-size: calc(27.85438995234061px +18.56959 *((100vw - 600px) / 540)) h2 font-size: calc(23.53700340860508px +15.69134 *((100vw - 600px) / 540)) h3 font-size: calc(19.888804974891777px +13.2592 *((100vw - 600px) / 540)) h4 font-size: calc(16.806071548796314px +11.20405 *((100vw - 600px) / 540)) h5 font-size: calc(14.201156945318074px +9.46744 *((100vw - 600px) / 540)) h6 font-size: calc(12px +8 *((100vw - 600px) / 540)) input[type=email] font-size: calc(12px +8 *((100vw - 600px) / 540)) input[type=password] font-size: calc(12px +8 *((100vw - 600px) / 540)) input[type=text] font-size: calc(12px +8 *((100vw - 600px) / 540)) textarea font-size: calc(12px +8 *((100vw - 600px) / 540)) button font-size: calc(12px +8 *((100vw - 600px) / 540)) input[type=submit] font-size: calc(12px +8 *((100vw - 600px) / 540)) @media(min-width:1140px) html font-size: 20px h1 font-size: 46.423983253901014px margin-top: .942400822452556em line-height: 1.130880986943067em margin-bottom: .188480164490511em h2 font-size: 39.228339014341806px margin-top: 1.115265165420465em line-height: 1.338318198504558em margin-bottom: .240111086421698em h3 font-size: 33.14800829148629px margin-top: 1.319837970815179em line-height: 1.583805564978215em margin-bottom: .287857499569283em h4 font-size: 28.01011924799386px margin-top: 1.561935513828041em line-height: 1.87432261659365em margin-bottom: .345845057728222em h5 font-size: 23.668594908863454px margin-top: 1.84844094752817em line-height: 2.218129137033805em margin-bottom: .369688189505634em h6 font-size: 20px margin-top: 2.1875em line-height: 2.625em margin-bottom: .473958333333333em fieldset margin-bottom: 2.078125em input[type=email] font-size: 20px margin-bottom: .5140625em input[type=password] font-size: 20px margin-bottom: .5140625em input[type=text] font-size: 20px margin-bottom: .5140625em textarea font-size: 20px margin-bottom: .5140625em button font-size: 20px margin-bottom: 1.3125em input[type=submit] font-size: 20px margin-bottom: 1.3125em table margin-bottom: 2.05625em th padding: .4375em .875em td padding: .4375em .875em abbr margin: 0 padding: 0 border-bottom: 1px dotted currentColor cursor: help acronym margin: 0 padding: 0 border-bottom: 1px dotted currentColor cursor: help address margin: 0 padding: 0 margin-bottom: 1.75em font-style: normal big margin: 0 padding: 0 line-height: 0 blockquote margin: 0 padding: 0 margin-bottom: 1.75em font-style: italic cite display: block font-style: normal caption margin: 0 padding: 0 center margin: 0 padding: 0 cite margin: 0 padding: 0 dd margin: 0 padding: 0 del margin: 0 padding: 0 dl margin: 0 padding: 0 margin-bottom: 1.75em dt margin: 0 padding: 0 color: $color_4 font-weight: 700 em margin: 0 padding: 0 form margin: 0 padding: 0 h2 margin: 0 padding: 0 font-family: $font_3, $font_4, $font_5, $font_6, $font_1 font-weight: 500 color: $color_4 clear: both font-size: 23.53700340860508px margin-top: 1.115265165420465em line-height: 1.338318198504558em margin-bottom: .251483121980101em h3 margin: 0 padding: 0 font-family: $font_3, $font_4, $font_5, $font_6, $font_1 font-weight: 500 color: $color_4 clear: both font-size: 19.888804974891777px margin-top: 1.319837970815179em line-height: 1.583805564978215em margin-bottom: .303784103173448em h4 margin: 0 padding: 0 font-family: $font_3, $font_4, $font_5, $font_6, $font_1 font-weight: 500 color: $color_4 clear: both font-size: 16.806071548796314px margin-top: 1.561935513828041em line-height: 1.87432261659365em margin-bottom: .368150361036632em h5 margin: 0 padding: 0 font-family: $font_3, $font_4, $font_5, $font_6, $font_1 font-weight: 500 color: $color_4 clear: both font-size: 14.201156945318074px margin-top: 1.84844094752817em line-height: 2.218129137033805em margin-bottom: .369688189505634em h6 margin: 0 padding: 0 font-family: $font_3, $font_4, $font_5, $font_6, $font_1 font-weight: 500 color: $color_4 clear: both font-size: 12px margin-top: 2.1875em line-height: 2.625em margin-bottom: .619791666666667em i margin: 0 padding: 0 ins margin: 0 padding: 0 label margin: 0 padding: 0 display: block padding-bottom: .21875em margin-bottom: -.21875em li margin: 0 padding: 0 ol margin: 0 padding: 0 margin-bottom: 1.75em padding-left: 1.4em p margin: 0 padding: 0 margin-bottom: 1.75em q margin: 0 padding: 0 s margin: 0 padding: 0 strike margin: 0 padding: 0 tbody margin: 0 padding: 0 tfoot margin: 0 padding: 0 thead margin: 0 padding: 0 tr margin: 0 padding: 0 tt margin: 0 padding: 0 u margin: 0 padding: 0 ul margin: 0 padding: 0 margin-bottom: 1.75em padding-left: 1.1em var margin: 0 padding: 0 input[type=email] display: block max-width: 100% padding: .4375em font-size: 12px margin-bottom: 1.18125em input[type=password] display: block max-width: 100% padding: .4375em font-size: 12px margin-bottom: 1.18125em input[type=text] display: block max-width: 100% padding: .4375em font-size: 12px margin-bottom: 1.18125em .master background-image: $url_6 background-size: cover background-position: top min-height: 100vh display: -webkit-flex display: -ms-flexbox display: flex -webkit-justify-content: center -ms-flex-pack: center justify-content: center -webkit-align-items: center -ms-flex-align: center align-items: center .box width: 450px //If you use compass, instead of the line below you could use + border-radius($radius, $vertical-radius) border-radius: 0 0 3px 3px overflow: hidden //If you use compass, instead of the line below you could use + box-sizing($bs) box-sizing: border-box //If you use compass, instead of the line below you could use + box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 10px 10px $color_7, 0 6px 3px $color_8 .header background-color: $color_9 padding: 30px 30px 40px //If you use compass, instead of the line below you could use + border-radius($radius, $vertical-radius) border-radius: 3px 3px 0 0 text-align: center .header__step font-weight: 300 text-transform: uppercase font-size: 14px letter-spacing: 1.1px margin: 0 0 10px -webkit-user-select: none -moz-user-select: none -ms-user-select: none //If you use compass, instead of the line below you could use + user-select($select) user-select: none color: $color_10 .header__title -webkit-user-select: none -moz-user-select: none -ms-user-select: none //If you use compass, instead of the line below you could use + user-select($select) user-select: none color: $color_10 font-weight: 400 font-size: 20px margin: 0 0 15px .step padding-left: 0 list-style: none margin-bottom: 0 display: -webkit-flex display: -ms-flexbox display: flex -webkit-flex-direction: row-reverse -ms-flex-direction: row-reverse flex-direction: row-reverse -webkit-justify-content: center -ms-flex-pack: center justify-content: center -webkit-align-items: center -ms-flex-align: center align-items: center margin-top: -20px .step__divider background-color: $color_11 -webkit-user-select: none -moz-user-select: none -ms-user-select: none //If you use compass, instead of the line below you could use + user-select($select) user-select: none width: 60px height: 3px &:first-child -webkit-flex: 1 0 auto -ms-flex: 1 0 auto flex: 1 0 auto &:last-child -webkit-flex: 1 0 auto -ms-flex: 1 0 auto flex: 1 0 auto .step__icon background-color: $color_11 font-style: normal width: 40px height: 40px display: -webkit-flex display: -ms-flexbox display: flex -webkit-justify-content: center -ms-flex-pack: center justify-content: center -webkit-align-items: center -ms-flex-align: center align-items: center //If you use compass, instead of the line below you could use + border-radius($radius, $vertical-radius) border-radius: 50% color: $color_10 &.welcome:before content: '\f144' font-family: $font_0 &.requirements:before content: '\f127' font-family: $font_0 &.permissions:before content: '\f296' font-family: $font_0 &.database:before content: '\f454' font-family: $font_0 &.update:before content: '\f2bf' font-family: $font_0 .main margin-top: -20px background-color: $color_10 //If you use compass, instead of the line below you could use + border-radius($radius, $vertical-radius) border-radius: 0 0 3px 3px padding: 40px 40px 30px .buttons text-align: center .buttons--right text-align: right .button display: inline-block background-color: $color_12 //If you use compass, instead of the line below you could use + border-radius($radius, $vertical-radius) border-radius: 2px padding: 7px 20px color: $color_10 //If you use compass, instead of the line below you could use + box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 1px 1.5px $color_13, 0 1px 1px $color_14 text-decoration: none outline: none border: none //If you use compass, instead of the line below you could use + transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: box-shadow .2s ease, background-color .2s ease &:hover color: $color_10 //If you use compass, instead of the line below you could use + box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 10px 10px $color_7, 0 6px 3px $color_8 background-color: $color_15 .button--light padding: 3px 16px font-size: 16px border-top: 1px solid $color_16 color: $color_17 background: $color_10 &:hover color: $color_17 background: $color_10 //If you use compass, instead of the line below you could use + box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 3px 3px $color_18, 0 3px 3px $color_8 .list padding-left: 0 list-style: none margin-bottom: 0 margin: 20px 0 35px border: 1px solid $color_13 //If you use compass, instead of the line below you could use + border-radius($radius, $vertical-radius) border-radius: 2px .list__item position: relative overflow: hidden padding: 7px 20px border-bottom: 1px solid $color_13 &:first-letter text-transform: uppercase &:last-child border-bottom: none &:before display: -webkit-flex display: -ms-flexbox display: flex -webkit-justify-content: center -ms-flex-pack: center justify-content: center -webkit-align-items: center -ms-flex-align: center align-items: center padding: 7px 20px position: absolute top: 0 right: 0 bottom: 0 &.success:before color: $color_19 content: '\f120' font-family: $font_0 &.error:before color: $color_20 content: '\f128' font-family: $font_0 .list__item--permissions &:before content: ''!important span display: -webkit-flex display: -ms-flexbox display: flex -webkit-justify-content: center -ms-flex-pack: center justify-content: center -webkit-align-items: center -ms-flex-align: center align-items: center padding: 7px 20px position: absolute top: 0 right: 0 bottom: 0 background-color: $color_21 font-weight: 700 font-size: 16px &:before margin-right: 7px font-weight: 400 &.success span:before color: $color_19 content: '\f120' font-family: $font_0 &.error span:before color: $color_20 content: '\f128' font-family: $font_0 .textarea //If you use compass, instead of the line below you could use + box-sizing($bs) box-sizing: border-box width: 100% font-size: 14px line-height: 25px height: 150px outline: none border: 1px solid $color_22 ~ .button margin-bottom: 35px .alert margin: 0 0 10px font-weight: 700 font-size: 16px background-color: $color_21 //If you use compass, instead of the line below you could use + border-radius($radius, $vertical-radius) border-radius: 2px padding: 0 10px svg:not(:root) overflow: hidden .ion-alert:before content: "\f101" .ion-alert-circled:before content: "\f100" .ion-android-add:before content: "\f2c7" .ion-android-add-circle:before content: "\f359" .ion-android-alarm-clock:before content: "\f35a" .ion-android-alert:before content: "\f35b" .ion-android-apps:before content: "\f35c" .ion-android-archive:before content: "\f2c9" .ion-android-arrow-back:before content: "\f2ca" .ion-android-arrow-down:before content: "\f35d" .ion-android-arrow-dropdown:before content: "\f35f" .ion-android-arrow-dropdown-circle:before content: "\f35e" .ion-android-arrow-dropleft:before content: "\f361" .ion-android-arrow-dropleft-circle:before content: "\f360" .ion-android-arrow-dropright:before content: "\f363" .ion-android-arrow-dropright-circle:before content: "\f362" .ion-android-arrow-dropup:before content: "\f365" .ion-android-arrow-dropup-circle:before content: "\f364" .ion-android-arrow-forward:before content: "\f30f" .ion-android-arrow-up:before content: "\f366" .ion-android-attach:before content: "\f367" .ion-android-bar:before content: "\f368" .ion-android-bicycle:before content: "\f369" .ion-android-boat:before content: "\f36a" .ion-android-bookmark:before content: "\f36b" .ion-android-bulb:before content: "\f36c" .ion-android-bus:before content: "\f36d" .ion-android-calendar:before content: "\f2d1" .ion-android-call:before content: "\f2d2" .ion-android-camera:before content: "\f2d3" .ion-android-cancel:before content: "\f36e" .ion-android-car:before content: "\f36f" .ion-android-cart:before content: "\f370" .ion-android-chat:before content: "\f2d4" .ion-android-checkbox:before content: "\f374" .ion-android-checkbox-blank:before content: "\f371" .ion-android-checkbox-outline:before content: "\f373" .ion-android-checkbox-outline-blank:before content: "\f372" .ion-android-checkmark-circle:before content: "\f375" .ion-android-clipboard:before content: "\f376" .ion-android-close:before content: "\f2d7" .ion-android-cloud:before content: "\f37a" .ion-android-cloud-circle:before content: "\f377" .ion-android-cloud-done:before content: "\f378" .ion-android-cloud-outline:before content: "\f379" .ion-android-color-palette:before content: "\f37b" .ion-android-compass:before content: "\f37c" .ion-android-contact:before content: "\f2d8" .ion-android-contacts:before content: "\f2d9" .ion-android-contract:before content: "\f37d" .ion-android-create:before content: "\f37e" .ion-android-delete:before content: "\f37f" .ion-android-desktop:before content: "\f380" .ion-android-document:before content: "\f381" .ion-android-done:before content: "\f383" .ion-android-done-all:before content: "\f382" .ion-android-download:before content: "\f2dd" .ion-android-drafts:before content: "\f384" .ion-android-exit:before content: "\f385" .ion-android-expand:before content: "\f386" .ion-android-favorite:before content: "\f388" .ion-android-favorite-outline:before content: "\f387" .ion-android-film:before content: "\f389" .ion-android-folder:before content: "\f2e0" .ion-android-folder-open:before content: "\f38a" .ion-android-funnel:before content: "\f38b" .ion-android-globe:before content: "\f38c" .ion-android-hand:before content: "\f2e3" .ion-android-hangout:before content: "\f38d" .ion-android-happy:before content: "\f38e" .ion-android-home:before content: "\f38f" .ion-android-image:before content: "\f2e4" .ion-android-laptop:before content: "\f390" .ion-android-list:before content: "\f391" .ion-android-locate:before content: "\f2e9" .ion-android-lock:before content: "\f392" .ion-android-mail:before content: "\f2eb" .ion-android-map:before content: "\f393" .ion-android-menu:before content: "\f394" .ion-android-microphone:before content: "\f2ec" .ion-android-microphone-off:before content: "\f395" .ion-android-more-horizontal:before content: "\f396" .ion-android-more-vertical:before content: "\f397" .ion-android-navigate:before content: "\f398" .ion-android-notifications:before content: "\f39b" .ion-android-notifications-none:before content: "\f399" .ion-android-notifications-off:before content: "\f39a" .ion-android-open:before content: "\f39c" .ion-android-options:before content: "\f39d" .ion-android-people:before content: "\f39e" .ion-android-person:before content: "\f3a0" .ion-android-person-add:before content: "\f39f" .ion-android-phone-landscape:before content: "\f3a1" .ion-android-phone-portrait:before content: "\f3a2" .ion-android-pin:before content: "\f3a3" .ion-android-plane:before content: "\f3a4" .ion-android-playstore:before content: "\f2f0" .ion-android-print:before content: "\f3a5" .ion-android-radio-button-off:before content: "\f3a6" .ion-android-radio-button-on:before content: "\f3a7" .ion-android-refresh:before content: "\f3a8" .ion-android-remove:before content: "\f2f4" .ion-android-remove-circle:before content: "\f3a9" .ion-android-restaurant:before content: "\f3aa" .ion-android-sad:before content: "\f3ab" .ion-android-search:before content: "\f2f5" .ion-android-send:before content: "\f2f6" .ion-android-settings:before content: "\f2f7" .ion-android-share:before content: "\f2f8" .ion-android-share-alt:before content: "\f3ac" .ion-android-star:before content: "\f2fc" .ion-android-star-half:before content: "\f3ad" .ion-android-star-outline:before content: "\f3ae" .ion-android-stopwatch:before content: "\f2fd" .ion-android-subway:before content: "\f3af" .ion-android-sunny:before content: "\f3b0" .ion-android-sync:before content: "\f3b1" .ion-android-textsms:before content: "\f3b2" .ion-android-time:before content: "\f3b3" .ion-android-train:before content: "\f3b4" .ion-android-unlock:before content: "\f3b5" .ion-android-upload:before content: "\f3b6" .ion-android-volume-down:before content: "\f3b7" .ion-android-volume-mute:before content: "\f3b8" .ion-android-volume-off:before content: "\f3b9" .ion-android-volume-up:before content: "\f3ba" .ion-android-walk:before content: "\f3bb" .ion-android-warning:before content: "\f3bc" .ion-android-watch:before content: "\f3bd" .ion-android-wifi:before content: "\f305" .ion-aperture:before content: "\f313" .ion-archive:before content: "\f102" .ion-arrow-down-a:before content: "\f103" .ion-arrow-down-b:before content: "\f104" .ion-arrow-down-c:before content: "\f105" .ion-arrow-expand:before content: "\f25e" .ion-arrow-graph-down-left:before content: "\f25f" .ion-arrow-graph-down-right:before content: "\f260" .ion-arrow-graph-up-left:before content: "\f261" .ion-arrow-graph-up-right:before content: "\f262" .ion-arrow-left-a:before content: "\f106" .ion-arrow-left-b:before content: "\f107" .ion-arrow-left-c:before content: "\f108" .ion-arrow-move:before content: "\f263" .ion-arrow-resize:before content: "\f264" .ion-arrow-return-left:before content: "\f265" .ion-arrow-return-right:before content: "\f266" .ion-arrow-right-a:before content: "\f109" .ion-arrow-right-b:before content: "\f10a" .ion-arrow-right-c:before content: "\f10b" .ion-arrow-shrink:before content: "\f267" .ion-arrow-swap:before content: "\f268" .ion-arrow-up-a:before content: "\f10c" .ion-arrow-up-b:before content: "\f10d" .ion-arrow-up-c:before content: "\f10e" .ion-asterisk:before content: "\f314" .ion-at:before content: "\f10f" .ion-backspace:before content: "\f3bf" .ion-backspace-outline:before content: "\f3be" .ion-bag:before content: "\f110" .ion-battery-charging:before content: "\f111" .ion-battery-empty:before content: "\f112" .ion-battery-full:before content: "\f113" .ion-battery-half:before content: "\f114" .ion-battery-low:before content: "\f115" .ion-beaker:before content: "\f269" .ion-beer:before content: "\f26a" .ion-bluetooth:before content: "\f116" .ion-bonfire:before content: "\f315" .ion-bookmark:before content: "\f26b" .ion-bowtie:before content: "\f3c0" .ion-briefcase:before content: "\f26c" .ion-bug:before content: "\f2be" .ion-calculator:before content: "\f26d" .ion-calendar:before content: "\f117" .ion-camera:before content: "\f118" .ion-card:before content: "\f119" .ion-cash:before content: "\f316" .ion-chatbox:before content: "\f11b" .ion-chatbox-working:before content: "\f11a" .ion-chatboxes:before content: "\f11c" .ion-chatbubble:before content: "\f11e" .ion-chatbubble-working:before content: "\f11d" .ion-chatbubbles:before content: "\f11f" .ion-checkmark:before content: "\f122" .ion-checkmark-circled:before content: "\f120" .ion-checkmark-round:before content: "\f121" .ion-chevron-down:before content: "\f123" .ion-chevron-left:before content: "\f124" .ion-chevron-right:before content: "\f125" .ion-chevron-up:before content: "\f126" .ion-clipboard:before content: "\f127" .ion-clock:before content: "\f26e" .ion-close:before content: "\f12a" .ion-close-circled:before content: "\f128" .ion-close-round:before content: "\f129" .ion-closed-captioning:before content: "\f317" .ion-cloud:before content: "\f12b" .ion-code:before content: "\f271" .ion-code-download:before content: "\f26f" .ion-code-working:before content: "\f270" .ion-coffee:before content: "\f272" .ion-compass:before content: "\f273" .ion-compose:before content: "\f12c" .ion-connection-bars:before content: "\f274" .ion-contrast:before content: "\f275" .ion-crop:before content: "\f3c1" .ion-cube:before content: "\f318" .ion-disc:before content: "\f12d" .ion-document:before content: "\f12f" .ion-document-text:before content: "\f12e" .ion-drag:before content: "\f130" .ion-earth:before content: "\f276" .ion-easel:before content: "\f3c2" .ion-edit:before content: "\f2bf" .ion-egg:before content: "\f277" .ion-eject:before content: "\f131" .ion-email:before content: "\f132" .ion-email-unread:before content: "\f3c3" .ion-erlenmeyer-flask:before content: "\f3c5" .ion-erlenmeyer-flask-bubbles:before content: "\f3c4" .ion-eye:before content: "\f133" .ion-eye-disabled:before content: "\f306" .ion-female:before content: "\f278" .ion-filing:before content: "\f134" .ion-film-marker:before content: "\f135" .ion-fireball:before content: "\f319" .ion-flag:before content: "\f279" .ion-flame:before content: "\f31a" .ion-flash:before content: "\f137" .ion-flash-off:before content: "\f136" .ion-folder:before content: "\f139" .ion-fork:before content: "\f27a" .ion-fork-repo:before content: "\f2c0" .ion-forward:before content: "\f13a" .ion-funnel:before content: "\f31b" .ion-gear-a:before content: "\f13d" .ion-gear-b:before content: "\f13e" .ion-grid:before content: "\f13f" .ion-hammer:before content: "\f27b" .ion-happy:before content: "\f31c" .ion-happy-outline:before content: "\f3c6" .ion-headphone:before content: "\f140" .ion-heart:before content: "\f141" .ion-heart-broken:before content: "\f31d" .ion-help:before content: "\f143" .ion-help-buoy:before content: "\f27c" .ion-help-circled:before content: "\f142" .ion-home:before content: "\f144" .ion-icecream:before content: "\f27d" .ion-image:before content: "\f147" .ion-images:before content: "\f148" .ion-information:before content: "\f14a" .ion-information-circled:before content: "\f149" .ion-ionic:before content: "\f14b" .ion-ios-alarm:before content: "\f3c8" .ion-ios-alarm-outline:before content: "\f3c7" .ion-ios-albums:before content: "\f3ca" .ion-ios-albums-outline:before content: "\f3c9" .ion-ios-americanfootball:before content: "\f3cc" .ion-ios-americanfootball-outline:before content: "\f3cb" .ion-ios-analytics:before content: "\f3ce" .ion-ios-analytics-outline:before content: "\f3cd" .ion-ios-arrow-back:before content: "\f3cf" .ion-ios-arrow-down:before content: "\f3d0" .ion-ios-arrow-forward:before content: "\f3d1" .ion-ios-arrow-left:before content: "\f3d2" .ion-ios-arrow-right:before content: "\f3d3" .ion-ios-arrow-thin-down:before content: "\f3d4" .ion-ios-arrow-thin-left:before content: "\f3d5" .ion-ios-arrow-thin-right:before content: "\f3d6" .ion-ios-arrow-thin-up:before content: "\f3d7" .ion-ios-arrow-up:before content: "\f3d8" .ion-ios-at:before content: "\f3da" .ion-ios-at-outline:before content: "\f3d9" .ion-ios-barcode:before content: "\f3dc" .ion-ios-barcode-outline:before content: "\f3db" .ion-ios-baseball:before content: "\f3de" .ion-ios-baseball-outline:before content: "\f3dd" .ion-ios-basketball:before content: "\f3e0" .ion-ios-basketball-outline:before content: "\f3df" .ion-ios-bell:before content: "\f3e2" .ion-ios-bell-outline:before content: "\f3e1" .ion-ios-body:before content: "\f3e4" .ion-ios-body-outline:before content: "\f3e3" .ion-ios-bolt:before content: "\f3e6" .ion-ios-bolt-outline:before content: "\f3e5" .ion-ios-book:before content: "\f3e8" .ion-ios-book-outline:before content: "\f3e7" .ion-ios-bookmarks:before content: "\f3ea" .ion-ios-bookmarks-outline:before content: "\f3e9" .ion-ios-box:before content: "\f3ec" .ion-ios-box-outline:before content: "\f3eb" .ion-ios-briefcase:before content: "\f3ee" .ion-ios-briefcase-outline:before content: "\f3ed" .ion-ios-browsers:before content: "\f3f0" .ion-ios-browsers-outline:before content: "\f3ef" .ion-ios-calculator:before content: "\f3f2" .ion-ios-calculator-outline:before content: "\f3f1" .ion-ios-calendar:before content: "\f3f4" .ion-ios-calendar-outline:before content: "\f3f3" .ion-ios-camera:before content: "\f3f6" .ion-ios-camera-outline:before content: "\f3f5" .ion-ios-cart:before content: "\f3f8" .ion-ios-cart-outline:before content: "\f3f7" .ion-ios-chatboxes:before content: "\f3fa" .ion-ios-chatboxes-outline:before content: "\f3f9" .ion-ios-chatbubble:before content: "\f3fc" .ion-ios-chatbubble-outline:before content: "\f3fb" .ion-ios-checkmark:before content: "\f3ff" .ion-ios-checkmark-empty:before content: "\f3fd" .ion-ios-checkmark-outline:before content: "\f3fe" .ion-ios-circle-filled:before content: "\f400" .ion-ios-circle-outline:before content: "\f401" .ion-ios-clock:before content: "\f403" .ion-ios-clock-outline:before content: "\f402" .ion-ios-close:before content: "\f406" .ion-ios-close-empty:before content: "\f404" .ion-ios-close-outline:before content: "\f405" .ion-ios-cloud:before content: "\f40c" .ion-ios-cloud-download:before content: "\f408" .ion-ios-cloud-download-outline:before content: "\f407" .ion-ios-cloud-outline:before content: "\f409" .ion-ios-cloud-upload:before content: "\f40b" .ion-ios-cloud-upload-outline:before content: "\f40a" .ion-ios-cloudy:before content: "\f410" .ion-ios-cloudy-night:before content: "\f40e" .ion-ios-cloudy-night-outline:before content: "\f40d" .ion-ios-cloudy-outline:before content: "\f40f" .ion-ios-cog:before content: "\f412" .ion-ios-cog-outline:before content: "\f411" .ion-ios-color-filter:before content: "\f414" .ion-ios-color-filter-outline:before content: "\f413" .ion-ios-color-wand:before content: "\f416" .ion-ios-color-wand-outline:before content: "\f415" .ion-ios-compose:before content: "\f418" .ion-ios-compose-outline:before content: "\f417" .ion-ios-contact:before content: "\f41a" .ion-ios-contact-outline:before content: "\f419" .ion-ios-copy:before content: "\f41c" .ion-ios-copy-outline:before content: "\f41b" .ion-ios-crop:before content: "\f41e" .ion-ios-crop-strong:before content: "\f41d" .ion-ios-download:before content: "\f420" .ion-ios-download-outline:before content: "\f41f" .ion-ios-drag:before content: "\f421" .ion-ios-email:before content: "\f423" .ion-ios-email-outline:before content: "\f422" .ion-ios-eye:before content: "\f425" .ion-ios-eye-outline:before content: "\f424" .ion-ios-fastforward:before content: "\f427" .ion-ios-fastforward-outline:before content: "\f426" .ion-ios-filing:before content: "\f429" .ion-ios-filing-outline:before content: "\f428" .ion-ios-film:before content: "\f42b" .ion-ios-film-outline:before content: "\f42a" .ion-ios-flag:before content: "\f42d" .ion-ios-flag-outline:before content: "\f42c" .ion-ios-flame:before content: "\f42f" .ion-ios-flame-outline:before content: "\f42e" .ion-ios-flask:before content: "\f431" .ion-ios-flask-outline:before content: "\f430" .ion-ios-flower:before content: "\f433" .ion-ios-flower-outline:before content: "\f432" .ion-ios-folder:before content: "\f435" .ion-ios-folder-outline:before content: "\f434" .ion-ios-football:before content: "\f437" .ion-ios-football-outline:before content: "\f436" .ion-ios-game-controller-a:before content: "\f439" .ion-ios-game-controller-a-outline:before content: "\f438" .ion-ios-game-controller-b:before content: "\f43b" .ion-ios-game-controller-b-outline:before content: "\f43a" .ion-ios-gear:before content: "\f43d" .ion-ios-gear-outline:before content: "\f43c" .ion-ios-glasses:before content: "\f43f" .ion-ios-glasses-outline:before content: "\f43e" .ion-ios-grid-view:before content: "\f441" .ion-ios-grid-view-outline:before content: "\f440" .ion-ios-heart:before content: "\f443" .ion-ios-heart-outline:before content: "\f442" .ion-ios-help:before content: "\f446" .ion-ios-help-empty:before content: "\f444" .ion-ios-help-outline:before content: "\f445" .ion-ios-home:before content: "\f448" .ion-ios-home-outline:before content: "\f447" .ion-ios-infinite:before content: "\f44a" .ion-ios-infinite-outline:before content: "\f449" .ion-ios-information:before content: "\f44d" .ion-ios-information-empty:before content: "\f44b" .ion-ios-information-outline:before content: "\f44c" .ion-ios-ionic-outline:before content: "\f44e" .ion-ios-keypad:before content: "\f450" .ion-ios-keypad-outline:before content: "\f44f" .ion-ios-lightbulb:before content: "\f452" .ion-ios-lightbulb-outline:before content: "\f451" .ion-ios-list:before content: "\f454" .ion-ios-list-outline:before content: "\f453" .ion-ios-location:before content: "\f456" .ion-ios-location-outline:before content: "\f455" .ion-ios-locked:before content: "\f458" .ion-ios-locked-outline:before content: "\f457" .ion-ios-loop:before content: "\f45a" .ion-ios-loop-strong:before content: "\f459" .ion-ios-medical:before content: "\f45c" .ion-ios-medical-outline:before content: "\f45b" .ion-ios-medkit:before content: "\f45e" .ion-ios-medkit-outline:before content: "\f45d" .ion-ios-mic:before content: "\f461" .ion-ios-mic-off:before content: "\f45f" .ion-ios-mic-outline:before content: "\f460" .ion-ios-minus:before content: "\f464" .ion-ios-minus-empty:before content: "\f462" .ion-ios-minus-outline:before content: "\f463" .ion-ios-monitor:before content: "\f466" .ion-ios-monitor-outline:before content: "\f465" .ion-ios-moon:before content: "\f468" .ion-ios-moon-outline:before content: "\f467" .ion-ios-more:before content: "\f46a" .ion-ios-more-outline:before content: "\f469" .ion-ios-musical-note:before content: "\f46b" .ion-ios-musical-notes:before content: "\f46c" .ion-ios-navigate:before content: "\f46e" .ion-ios-navigate-outline:before content: "\f46d" .ion-ios-nutrition:before content: "\f470" .ion-ios-nutrition-outline:before content: "\f46f" .ion-ios-paper:before content: "\f472" .ion-ios-paper-outline:before content: "\f471" .ion-ios-paperplane:before content: "\f474" .ion-ios-paperplane-outline:before content: "\f473" .ion-ios-partlysunny:before content: "\f476" .ion-ios-partlysunny-outline:before content: "\f475" .ion-ios-pause:before content: "\f478" .ion-ios-pause-outline:before content: "\f477" .ion-ios-paw:before content: "\f47a" .ion-ios-paw-outline:before content: "\f479" .ion-ios-people:before content: "\f47c" .ion-ios-people-outline:before content: "\f47b" .ion-ios-person:before content: "\f47e" .ion-ios-person-outline:before content: "\f47d" .ion-ios-personadd:before content: "\f480" .ion-ios-personadd-outline:before content: "\f47f" .ion-ios-photos:before content: "\f482" .ion-ios-photos-outline:before content: "\f481" .ion-ios-pie:before content: "\f484" .ion-ios-pie-outline:before content: "\f483" .ion-ios-pint:before content: "\f486" .ion-ios-pint-outline:before content: "\f485" .ion-ios-play:before content: "\f488" .ion-ios-play-outline:before content: "\f487" .ion-ios-plus:before content: "\f48b" .ion-ios-plus-empty:before content: "\f489" .ion-ios-plus-outline:before content: "\f48a" .ion-ios-pricetag:before content: "\f48d" .ion-ios-pricetag-outline:before content: "\f48c" .ion-ios-pricetags:before content: "\f48f" .ion-ios-pricetags-outline:before content: "\f48e" .ion-ios-printer:before content: "\f491" .ion-ios-printer-outline:before content: "\f490" .ion-ios-pulse:before content: "\f493" .ion-ios-pulse-strong:before content: "\f492" .ion-ios-rainy:before content: "\f495" .ion-ios-rainy-outline:before content: "\f494" .ion-ios-recording:before content: "\f497" .ion-ios-recording-outline:before content: "\f496" .ion-ios-redo:before content: "\f499" .ion-ios-redo-outline:before content: "\f498" .ion-ios-refresh:before content: "\f49c" .ion-ios-refresh-empty:before content: "\f49a" .ion-ios-refresh-outline:before content: "\f49b" .ion-ios-reload:before content: "\f49d" .ion-ios-reverse-camera:before content: "\f49f" .ion-ios-reverse-camera-outline:before content: "\f49e" .ion-ios-rewind:before content: "\f4a1" .ion-ios-rewind-outline:before content: "\f4a0" .ion-ios-rose:before content: "\f4a3" .ion-ios-rose-outline:before content: "\f4a2" .ion-ios-search:before content: "\f4a5" .ion-ios-search-strong:before content: "\f4a4" .ion-ios-settings:before content: "\f4a7" .ion-ios-settings-strong:before content: "\f4a6" .ion-ios-shuffle:before content: "\f4a9" .ion-ios-shuffle-strong:before content: "\f4a8" .ion-ios-skipbackward:before content: "\f4ab" .ion-ios-skipbackward-outline:before content: "\f4aa" .ion-ios-skipforward:before content: "\f4ad" .ion-ios-skipforward-outline:before content: "\f4ac" .ion-ios-snowy:before content: "\f4ae" .ion-ios-speedometer:before content: "\f4b0" .ion-ios-speedometer-outline:before content: "\f4af" .ion-ios-star:before content: "\f4b3" .ion-ios-star-half:before content: "\f4b1" .ion-ios-star-outline:before content: "\f4b2" .ion-ios-stopwatch:before content: "\f4b5" .ion-ios-stopwatch-outline:before content: "\f4b4" .ion-ios-sunny:before content: "\f4b7" .ion-ios-sunny-outline:before content: "\f4b6" .ion-ios-telephone:before content: "\f4b9" .ion-ios-telephone-outline:before content: "\f4b8" .ion-ios-tennisball:before content: "\f4bb" .ion-ios-tennisball-outline:before content: "\f4ba" .ion-ios-thunderstorm:before content: "\f4bd" .ion-ios-thunderstorm-outline:before content: "\f4bc" .ion-ios-time:before content: "\f4bf" .ion-ios-time-outline:before content: "\f4be" .ion-ios-timer:before content: "\f4c1" .ion-ios-timer-outline:before content: "\f4c0" .ion-ios-toggle:before content: "\f4c3" .ion-ios-toggle-outline:before content: "\f4c2" .ion-ios-trash:before content: "\f4c5" .ion-ios-trash-outline:before content: "\f4c4" .ion-ios-undo:before content: "\f4c7" .ion-ios-undo-outline:before content: "\f4c6" .ion-ios-unlocked:before content: "\f4c9" .ion-ios-unlocked-outline:before content: "\f4c8" .ion-ios-upload:before content: "\f4cb" .ion-ios-upload-outline:before content: "\f4ca" .ion-ios-videocam:before content: "\f4cd" .ion-ios-videocam-outline:before content: "\f4cc" .ion-ios-volume-high:before content: "\f4ce" .ion-ios-volume-low:before content: "\f4cf" .ion-ios-wineglass:before content: "\f4d1" .ion-ios-wineglass-outline:before content: "\f4d0" .ion-ios-world:before content: "\f4d3" .ion-ios-world-outline:before content: "\f4d2" .ion-ipad:before content: "\f1f9" .ion-iphone:before content: "\f1fa" .ion-ipod:before content: "\f1fb" .ion-jet:before content: "\f295" .ion-key:before content: "\f296" .ion-knife:before content: "\f297" .ion-laptop:before content: "\f1fc" .ion-leaf:before content: "\f1fd" .ion-levels:before content: "\f298" .ion-lightbulb:before content: "\f299" .ion-link:before content: "\f1fe" .ion-load-a:before content: "\f29a" .ion-load-b:before content: "\f29b" .ion-load-c:before content: "\f29c" .ion-load-d:before content: "\f29d" .ion-location:before content: "\f1ff" .ion-lock-combination:before content: "\f4d4" .ion-locked:before content: "\f200" .ion-log-in:before content: "\f29e" .ion-log-out:before content: "\f29f" .ion-loop:before content: "\f201" .ion-magnet:before content: "\f2a0" .ion-male:before content: "\f2a1" .ion-man:before content: "\f202" .ion-map:before content: "\f203" .ion-medkit:before content: "\f2a2" .ion-merge:before content: "\f33f" .ion-mic-a:before content: "\f204" .ion-mic-b:before content: "\f205" .ion-mic-c:before content: "\f206" .ion-minus:before content: "\f209" .ion-minus-circled:before content: "\f207" .ion-minus-round:before content: "\f208" .ion-model-s:before content: "\f2c1" .ion-monitor:before content: "\f20a" .ion-more:before content: "\f20b" .ion-mouse:before content: "\f340" .ion-music-note:before content: "\f20c" .ion-navicon:before content: "\f20e" .ion-navicon-round:before content: "\f20d" .ion-navigate:before content: "\f2a3" .ion-network:before content: "\f341" .ion-no-smoking:before content: "\f2c2" .ion-nuclear:before content: "\f2a4" .ion-outlet:before content: "\f342" .ion-paintbrush:before content: "\f4d5" .ion-paintbucket:before content: "\f4d6" .ion-paper-airplane:before content: "\f2c3" .ion-paperclip:before content: "\f20f" .ion-pause:before content: "\f210" .ion-person:before content: "\f213" .ion-person-add:before content: "\f211" .ion-person-stalker:before content: "\f212" .ion-pie-graph:before content: "\f2a5" .ion-pin:before content: "\f2a6" .ion-pinpoint:before content: "\f2a7" .ion-pizza:before content: "\f2a8" .ion-plane:before content: "\f214" .ion-planet:before content: "\f343" .ion-play:before content: "\f215" .ion-playstation:before content: "\f30a" .ion-plus:before content: "\f218" .ion-plus-circled:before content: "\f216" .ion-plus-round:before content: "\f217" .ion-podium:before content: "\f344" .ion-pound:before content: "\f219" .ion-power:before content: "\f2a9" .ion-pricetag:before content: "\f2aa" .ion-pricetags:before content: "\f2ab" .ion-printer:before content: "\f21a" .ion-pull-request:before content: "\f345" .ion-qr-scanner:before content: "\f346" .ion-quote:before content: "\f347" .ion-radio-waves:before content: "\f2ac" .ion-record:before content: "\f21b" .ion-refresh:before content: "\f21c" .ion-reply:before content: "\f21e" .ion-reply-all:before content: "\f21d" .ion-ribbon-a:before content: "\f348" .ion-ribbon-b:before content: "\f349" .ion-sad:before content: "\f34a" .ion-sad-outline:before content: "\f4d7" .ion-scissors:before content: "\f34b" .ion-search:before content: "\f21f" .ion-settings:before content: "\f2ad" .ion-share:before content: "\f220" .ion-shuffle:before content: "\f221" .ion-skip-backward:before content: "\f222" .ion-skip-forward:before content: "\f223" .ion-social-android:before content: "\f225" .ion-social-android-outline:before content: "\f224" .ion-social-angular:before content: "\f4d9" .ion-social-angular-outline:before content: "\f4d8" .ion-social-apple:before content: "\f227" .ion-social-apple-outline:before content: "\f226" .ion-social-bitcoin:before content: "\f2af" .ion-social-bitcoin-outline:before content: "\f2ae" .ion-social-buffer:before content: "\f229" .ion-social-buffer-outline:before content: "\f228" .ion-social-chrome:before content: "\f4db" .ion-social-chrome-outline:before content: "\f4da" .ion-social-codepen:before content: "\f4dd" .ion-social-codepen-outline:before content: "\f4dc" .ion-social-css3:before content: "\f4df" .ion-social-css3-outline:before content: "\f4de" .ion-social-designernews:before content: "\f22b" .ion-social-designernews-outline:before content: "\f22a" .ion-social-dribbble:before content: "\f22d" .ion-social-dribbble-outline:before content: "\f22c" .ion-social-dropbox:before content: "\f22f" .ion-social-dropbox-outline:before content: "\f22e" .ion-social-euro:before content: "\f4e1" .ion-social-euro-outline:before content: "\f4e0" .ion-social-facebook:before content: "\f231" .ion-social-facebook-outline:before content: "\f230" .ion-social-foursquare:before content: "\f34d" .ion-social-foursquare-outline:before content: "\f34c" .ion-social-freebsd-devil:before content: "\f2c4" .ion-social-github:before content: "\f233" .ion-social-github-outline:before content: "\f232" .ion-social-google:before content: "\f34f" .ion-social-google-outline:before content: "\f34e" .ion-social-googleplus:before content: "\f235" .ion-social-googleplus-outline:before content: "\f234" .ion-social-hackernews:before content: "\f237" .ion-social-hackernews-outline:before content: "\f236" .ion-social-html5:before content: "\f4e3" .ion-social-html5-outline:before content: "\f4e2" .ion-social-instagram:before content: "\f351" .ion-social-instagram-outline:before content: "\f350" .ion-social-javascript:before content: "\f4e5" .ion-social-javascript-outline:before content: "\f4e4" .ion-social-linkedin:before content: "\f239" .ion-social-linkedin-outline:before content: "\f238" .ion-social-markdown:before content: "\f4e6" .ion-social-nodejs:before content: "\f4e7" .ion-social-octocat:before content: "\f4e8" .ion-social-pinterest:before content: "\f2b1" .ion-social-pinterest-outline:before content: "\f2b0" .ion-social-python:before content: "\f4e9" .ion-social-reddit:before content: "\f23b" .ion-social-reddit-outline:before content: "\f23a" .ion-social-rss:before content: "\f23d" .ion-social-rss-outline:before content: "\f23c" .ion-social-sass:before content: "\f4ea" .ion-social-skype:before content: "\f23f" .ion-social-skype-outline:before content: "\f23e" .ion-social-snapchat:before content: "\f4ec" .ion-social-snapchat-outline:before content: "\f4eb" .ion-social-tumblr:before content: "\f241" .ion-social-tumblr-outline:before content: "\f240" .ion-social-tux:before content: "\f2c5" .ion-social-twitch:before content: "\f4ee" .ion-social-twitch-outline:before content: "\f4ed" .ion-social-twitter:before content: "\f243" .ion-social-twitter-outline:before content: "\f242" .ion-social-usd:before content: "\f353" .ion-social-usd-outline:before content: "\f352" .ion-social-vimeo:before content: "\f245" .ion-social-vimeo-outline:before content: "\f244" .ion-social-whatsapp:before content: "\f4f0" .ion-social-whatsapp-outline:before content: "\f4ef" .ion-social-windows:before content: "\f247" .ion-social-windows-outline:before content: "\f246" .ion-social-wordpress:before content: "\f249" .ion-social-wordpress-outline:before content: "\f248" .ion-social-yahoo:before content: "\f24b" .ion-social-yahoo-outline:before content: "\f24a" .ion-social-yen:before content: "\f4f2" .ion-social-yen-outline:before content: "\f4f1" .ion-social-youtube:before content: "\f24d" .ion-social-youtube-outline:before content: "\f24c" .ion-soup-can:before content: "\f4f4" .ion-soup-can-outline:before content: "\f4f3" .ion-speakerphone:before content: "\f2b2" .ion-speedometer:before content: "\f2b3" .ion-spoon:before content: "\f2b4" .ion-star:before content: "\f24e" .ion-stats-bars:before content: "\f2b5" .ion-steam:before content: "\f30b" .ion-stop:before content: "\f24f" .ion-thermometer:before content: "\f2b6" .ion-thumbsdown:before content: "\f250" .ion-thumbsup:before content: "\f251" .ion-toggle:before content: "\f355" .ion-toggle-filled:before content: "\f354" .ion-transgender:before content: "\f4f5" .ion-trash-a:before content: "\f252" .ion-trash-b:before content: "\f253" .ion-trophy:before content: "\f356" .ion-tshirt:before content: "\f4f7" .ion-tshirt-outline:before content: "\f4f6" .ion-umbrella:before content: "\f2b7" .ion-university:before content: "\f357" .ion-unlocked:before content: "\f254" .ion-upload:before content: "\f255" .ion-usb:before content: "\f2b8" .ion-videocamera:before content: "\f256" .ion-volume-high:before content: "\f257" .ion-volume-low:before content: "\f258" .ion-volume-medium:before content: "\f259" .ion-volume-mute:before content: "\f25a" .ion-wand:before content: "\f358" .ion-waterdrop:before content: "\f25b" .ion-wifi:before content: "\f25c" .ion-wineglass:before content: "\f2b9" .ion-woman:before content: "\f25d" .ion-wrench:before content: "\f2ba" .ion-xbox:before content: "\f30c" .step__item.active .step__icon background-color: $color_12 ~ &.step__divider background-color: $color_12 &.step__item .step__icon background-color: $color_12 ================================================ FILE: public/vendor/installer/css/scss/_variables.scss ================================================ //colors $color_0: #ff0; $color_1: #000; $color_2: silver; $color_3: #666; $color_4: #111; $color_5: #1d73a2; $color_6: #175c82; $color_7: rgba(0, 0, 0, .19); $color_8: rgba(0, 0, 0, .23); $color_9: #357295; $color_10: #fff; $color_11: #cacfd2; $color_12: #34a0db; $color_13: #3d657b; $color_14: rgba(0, 0, 0, .12); $color_15: rgba(0, 0, 0, .24); $color_16: #2490cb; $color_17: #eee; $color_18: #222; $color_19: rgba(0, 0, 0, .16); $color_20: #2ecc71; $color_21: #e74c3c; $color_22: #f5f5f5; $color_23: rgba(0, 0, 0, .2); $color_24: #ff0000; $color_25: #000000; $color_26: red; $color_27: #dddddd; $color_28: #ddd; $color_29: #333; $color_30: #ffff00; $color_31: #008000; $color_32: darkgray; $color_33: #008080; $color_34: #144242; $color_35: #a9a9a9; $color_36: rgba(0, 0, 0, 0.1); $color_37: #ccc; $color_38: rgba(0, 0, 0, 0.3); $color_39: #ffffff; //fonts $font_0: sans-serif; $font_1: monospace; $font_2: Roboto; $font_3: Helvetica Neue; $font_4: Helvetica; $font_5: Arial; $font_6: Courier New; $font_7: Courier; $font_8: Lucida Sans Typewriter; $font_9: Lucida Typewriter; $font_10: Ionicons; //urls $url_0: 'https://fonts.googleapis.com/css?family=Roboto:400,300,500,700,900'; $url_1: '../img/background.png'; ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_animated.scss ================================================ // Spinning Icons // -------------------------- .#{$fa-css-prefix}-spin { -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear; } .#{$fa-css-prefix}-pulse { -webkit-animation: fa-spin 1s infinite steps(8); animation: fa-spin 1s infinite steps(8); } @-webkit-keyframes fa-spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); } } @keyframes fa-spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); } } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_bordered-pulled.scss ================================================ // Bordered & Pulled // ------------------------- .#{$fa-css-prefix}-border { padding: .2em .25em .15em; border: solid .08em $fa-border-color; border-radius: .1em; } .#{$fa-css-prefix}-pull-left { float: left; } .#{$fa-css-prefix}-pull-right { float: right; } .#{$fa-css-prefix} { &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } } /* Deprecated as of 4.4.0 */ .pull-right { float: right; } .pull-left { float: left; } .#{$fa-css-prefix} { &.pull-left { margin-right: .3em; } &.pull-right { margin-left: .3em; } } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_core.scss ================================================ // Base Class Definition // ------------------------- .#{$fa-css-prefix} { display: inline-block; font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration font-size: inherit; // can't have font-size inherit on line above, so need to override text-rendering: auto; // optimizelegibility throws things off #1094 -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_fixed-width.scss ================================================ // Fixed Width Icons // ------------------------- .#{$fa-css-prefix}-fw { width: (18em / 14); text-align: center; } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_icons.scss ================================================ /* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen readers do not read off random characters that represent icons */ .#{$fa-css-prefix}-glass:before { content: $fa-var-glass; } .#{$fa-css-prefix}-music:before { content: $fa-var-music; } .#{$fa-css-prefix}-search:before { content: $fa-var-search; } .#{$fa-css-prefix}-envelope-o:before { content: $fa-var-envelope-o; } .#{$fa-css-prefix}-heart:before { content: $fa-var-heart; } .#{$fa-css-prefix}-star:before { content: $fa-var-star; } .#{$fa-css-prefix}-star-o:before { content: $fa-var-star-o; } .#{$fa-css-prefix}-user:before { content: $fa-var-user; } .#{$fa-css-prefix}-film:before { content: $fa-var-film; } .#{$fa-css-prefix}-th-large:before { content: $fa-var-th-large; } .#{$fa-css-prefix}-th:before { content: $fa-var-th; } .#{$fa-css-prefix}-th-list:before { content: $fa-var-th-list; } .#{$fa-css-prefix}-check:before { content: $fa-var-check; } .#{$fa-css-prefix}-remove:before, .#{$fa-css-prefix}-close:before, .#{$fa-css-prefix}-times:before { content: $fa-var-times; } .#{$fa-css-prefix}-search-plus:before { content: $fa-var-search-plus; } .#{$fa-css-prefix}-search-minus:before { content: $fa-var-search-minus; } .#{$fa-css-prefix}-power-off:before { content: $fa-var-power-off; } .#{$fa-css-prefix}-signal:before { content: $fa-var-signal; } .#{$fa-css-prefix}-gear:before, .#{$fa-css-prefix}-cog:before { content: $fa-var-cog; } .#{$fa-css-prefix}-trash-o:before { content: $fa-var-trash-o; } .#{$fa-css-prefix}-home:before { content: $fa-var-home; } .#{$fa-css-prefix}-file-o:before { content: $fa-var-file-o; } .#{$fa-css-prefix}-clock-o:before { content: $fa-var-clock-o; } .#{$fa-css-prefix}-road:before { content: $fa-var-road; } .#{$fa-css-prefix}-download:before { content: $fa-var-download; } .#{$fa-css-prefix}-arrow-circle-o-down:before { content: $fa-var-arrow-circle-o-down; } .#{$fa-css-prefix}-arrow-circle-o-up:before { content: $fa-var-arrow-circle-o-up; } .#{$fa-css-prefix}-inbox:before { content: $fa-var-inbox; } .#{$fa-css-prefix}-play-circle-o:before { content: $fa-var-play-circle-o; } .#{$fa-css-prefix}-rotate-right:before, .#{$fa-css-prefix}-repeat:before { content: $fa-var-repeat; } .#{$fa-css-prefix}-refresh:before { content: $fa-var-refresh; } .#{$fa-css-prefix}-list-alt:before { content: $fa-var-list-alt; } .#{$fa-css-prefix}-lock:before { content: $fa-var-lock; } .#{$fa-css-prefix}-flag:before { content: $fa-var-flag; } .#{$fa-css-prefix}-headphones:before { content: $fa-var-headphones; } .#{$fa-css-prefix}-volume-off:before { content: $fa-var-volume-off; } .#{$fa-css-prefix}-volume-down:before { content: $fa-var-volume-down; } .#{$fa-css-prefix}-volume-up:before { content: $fa-var-volume-up; } .#{$fa-css-prefix}-qrcode:before { content: $fa-var-qrcode; } .#{$fa-css-prefix}-barcode:before { content: $fa-var-barcode; } .#{$fa-css-prefix}-tag:before { content: $fa-var-tag; } .#{$fa-css-prefix}-tags:before { content: $fa-var-tags; } .#{$fa-css-prefix}-book:before { content: $fa-var-book; } .#{$fa-css-prefix}-bookmark:before { content: $fa-var-bookmark; } .#{$fa-css-prefix}-print:before { content: $fa-var-print; } .#{$fa-css-prefix}-camera:before { content: $fa-var-camera; } .#{$fa-css-prefix}-font:before { content: $fa-var-font; } .#{$fa-css-prefix}-bold:before { content: $fa-var-bold; } .#{$fa-css-prefix}-italic:before { content: $fa-var-italic; } .#{$fa-css-prefix}-text-height:before { content: $fa-var-text-height; } .#{$fa-css-prefix}-text-width:before { content: $fa-var-text-width; } .#{$fa-css-prefix}-align-left:before { content: $fa-var-align-left; } .#{$fa-css-prefix}-align-center:before { content: $fa-var-align-center; } .#{$fa-css-prefix}-align-right:before { content: $fa-var-align-right; } .#{$fa-css-prefix}-align-justify:before { content: $fa-var-align-justify; } .#{$fa-css-prefix}-list:before { content: $fa-var-list; } .#{$fa-css-prefix}-dedent:before, .#{$fa-css-prefix}-outdent:before { content: $fa-var-outdent; } .#{$fa-css-prefix}-indent:before { content: $fa-var-indent; } .#{$fa-css-prefix}-video-camera:before { content: $fa-var-video-camera; } .#{$fa-css-prefix}-photo:before, .#{$fa-css-prefix}-image:before, .#{$fa-css-prefix}-picture-o:before { content: $fa-var-picture-o; } .#{$fa-css-prefix}-pencil:before { content: $fa-var-pencil; } .#{$fa-css-prefix}-map-marker:before { content: $fa-var-map-marker; } .#{$fa-css-prefix}-adjust:before { content: $fa-var-adjust; } .#{$fa-css-prefix}-tint:before { content: $fa-var-tint; } .#{$fa-css-prefix}-edit:before, .#{$fa-css-prefix}-pencil-square-o:before { content: $fa-var-pencil-square-o; } .#{$fa-css-prefix}-share-square-o:before { content: $fa-var-share-square-o; } .#{$fa-css-prefix}-check-square-o:before { content: $fa-var-check-square-o; } .#{$fa-css-prefix}-arrows:before { content: $fa-var-arrows; } .#{$fa-css-prefix}-step-backward:before { content: $fa-var-step-backward; } .#{$fa-css-prefix}-fast-backward:before { content: $fa-var-fast-backward; } .#{$fa-css-prefix}-backward:before { content: $fa-var-backward; } .#{$fa-css-prefix}-play:before { content: $fa-var-play; } .#{$fa-css-prefix}-pause:before { content: $fa-var-pause; } .#{$fa-css-prefix}-stop:before { content: $fa-var-stop; } .#{$fa-css-prefix}-forward:before { content: $fa-var-forward; } .#{$fa-css-prefix}-fast-forward:before { content: $fa-var-fast-forward; } .#{$fa-css-prefix}-step-forward:before { content: $fa-var-step-forward; } .#{$fa-css-prefix}-eject:before { content: $fa-var-eject; } .#{$fa-css-prefix}-chevron-left:before { content: $fa-var-chevron-left; } .#{$fa-css-prefix}-chevron-right:before { content: $fa-var-chevron-right; } .#{$fa-css-prefix}-plus-circle:before { content: $fa-var-plus-circle; } .#{$fa-css-prefix}-minus-circle:before { content: $fa-var-minus-circle; } .#{$fa-css-prefix}-times-circle:before { content: $fa-var-times-circle; } .#{$fa-css-prefix}-check-circle:before { content: $fa-var-check-circle; } .#{$fa-css-prefix}-question-circle:before { content: $fa-var-question-circle; } .#{$fa-css-prefix}-info-circle:before { content: $fa-var-info-circle; } .#{$fa-css-prefix}-crosshairs:before { content: $fa-var-crosshairs; } .#{$fa-css-prefix}-times-circle-o:before { content: $fa-var-times-circle-o; } .#{$fa-css-prefix}-check-circle-o:before { content: $fa-var-check-circle-o; } .#{$fa-css-prefix}-ban:before { content: $fa-var-ban; } .#{$fa-css-prefix}-arrow-left:before { content: $fa-var-arrow-left; } .#{$fa-css-prefix}-arrow-right:before { content: $fa-var-arrow-right; } .#{$fa-css-prefix}-arrow-up:before { content: $fa-var-arrow-up; } .#{$fa-css-prefix}-arrow-down:before { content: $fa-var-arrow-down; } .#{$fa-css-prefix}-mail-forward:before, .#{$fa-css-prefix}-share:before { content: $fa-var-share; } .#{$fa-css-prefix}-expand:before { content: $fa-var-expand; } .#{$fa-css-prefix}-compress:before { content: $fa-var-compress; } .#{$fa-css-prefix}-plus:before { content: $fa-var-plus; } .#{$fa-css-prefix}-minus:before { content: $fa-var-minus; } .#{$fa-css-prefix}-asterisk:before { content: $fa-var-asterisk; } .#{$fa-css-prefix}-exclamation-circle:before { content: $fa-var-exclamation-circle; } .#{$fa-css-prefix}-gift:before { content: $fa-var-gift; } .#{$fa-css-prefix}-leaf:before { content: $fa-var-leaf; } .#{$fa-css-prefix}-fire:before { content: $fa-var-fire; } .#{$fa-css-prefix}-eye:before { content: $fa-var-eye; } .#{$fa-css-prefix}-eye-slash:before { content: $fa-var-eye-slash; } .#{$fa-css-prefix}-warning:before, .#{$fa-css-prefix}-exclamation-triangle:before { content: $fa-var-exclamation-triangle; } .#{$fa-css-prefix}-plane:before { content: $fa-var-plane; } .#{$fa-css-prefix}-calendar:before { content: $fa-var-calendar; } .#{$fa-css-prefix}-random:before { content: $fa-var-random; } .#{$fa-css-prefix}-comment:before { content: $fa-var-comment; } .#{$fa-css-prefix}-magnet:before { content: $fa-var-magnet; } .#{$fa-css-prefix}-chevron-up:before { content: $fa-var-chevron-up; } .#{$fa-css-prefix}-chevron-down:before { content: $fa-var-chevron-down; } .#{$fa-css-prefix}-retweet:before { content: $fa-var-retweet; } .#{$fa-css-prefix}-shopping-cart:before { content: $fa-var-shopping-cart; } .#{$fa-css-prefix}-folder:before { content: $fa-var-folder; } .#{$fa-css-prefix}-folder-open:before { content: $fa-var-folder-open; } .#{$fa-css-prefix}-arrows-v:before { content: $fa-var-arrows-v; } .#{$fa-css-prefix}-arrows-h:before { content: $fa-var-arrows-h; } .#{$fa-css-prefix}-bar-chart-o:before, .#{$fa-css-prefix}-bar-chart:before { content: $fa-var-bar-chart; } .#{$fa-css-prefix}-twitter-square:before { content: $fa-var-twitter-square; } .#{$fa-css-prefix}-facebook-square:before { content: $fa-var-facebook-square; } .#{$fa-css-prefix}-camera-retro:before { content: $fa-var-camera-retro; } .#{$fa-css-prefix}-key:before { content: $fa-var-key; } .#{$fa-css-prefix}-gears:before, .#{$fa-css-prefix}-cogs:before { content: $fa-var-cogs; } .#{$fa-css-prefix}-comments:before { content: $fa-var-comments; } .#{$fa-css-prefix}-thumbs-o-up:before { content: $fa-var-thumbs-o-up; } .#{$fa-css-prefix}-thumbs-o-down:before { content: $fa-var-thumbs-o-down; } .#{$fa-css-prefix}-star-half:before { content: $fa-var-star-half; } .#{$fa-css-prefix}-heart-o:before { content: $fa-var-heart-o; } .#{$fa-css-prefix}-sign-out:before { content: $fa-var-sign-out; } .#{$fa-css-prefix}-linkedin-square:before { content: $fa-var-linkedin-square; } .#{$fa-css-prefix}-thumb-tack:before { content: $fa-var-thumb-tack; } .#{$fa-css-prefix}-external-link:before { content: $fa-var-external-link; } .#{$fa-css-prefix}-sign-in:before { content: $fa-var-sign-in; } .#{$fa-css-prefix}-trophy:before { content: $fa-var-trophy; } .#{$fa-css-prefix}-github-square:before { content: $fa-var-github-square; } .#{$fa-css-prefix}-upload:before { content: $fa-var-upload; } .#{$fa-css-prefix}-lemon-o:before { content: $fa-var-lemon-o; } .#{$fa-css-prefix}-phone:before { content: $fa-var-phone; } .#{$fa-css-prefix}-square-o:before { content: $fa-var-square-o; } .#{$fa-css-prefix}-bookmark-o:before { content: $fa-var-bookmark-o; } .#{$fa-css-prefix}-phone-square:before { content: $fa-var-phone-square; } .#{$fa-css-prefix}-twitter:before { content: $fa-var-twitter; } .#{$fa-css-prefix}-facebook-f:before, .#{$fa-css-prefix}-facebook:before { content: $fa-var-facebook; } .#{$fa-css-prefix}-github:before { content: $fa-var-github; } .#{$fa-css-prefix}-unlock:before { content: $fa-var-unlock; } .#{$fa-css-prefix}-credit-card:before { content: $fa-var-credit-card; } .#{$fa-css-prefix}-feed:before, .#{$fa-css-prefix}-rss:before { content: $fa-var-rss; } .#{$fa-css-prefix}-hdd-o:before { content: $fa-var-hdd-o; } .#{$fa-css-prefix}-bullhorn:before { content: $fa-var-bullhorn; } .#{$fa-css-prefix}-bell:before { content: $fa-var-bell; } .#{$fa-css-prefix}-certificate:before { content: $fa-var-certificate; } .#{$fa-css-prefix}-hand-o-right:before { content: $fa-var-hand-o-right; } .#{$fa-css-prefix}-hand-o-left:before { content: $fa-var-hand-o-left; } .#{$fa-css-prefix}-hand-o-up:before { content: $fa-var-hand-o-up; } .#{$fa-css-prefix}-hand-o-down:before { content: $fa-var-hand-o-down; } .#{$fa-css-prefix}-arrow-circle-left:before { content: $fa-var-arrow-circle-left; } .#{$fa-css-prefix}-arrow-circle-right:before { content: $fa-var-arrow-circle-right; } .#{$fa-css-prefix}-arrow-circle-up:before { content: $fa-var-arrow-circle-up; } .#{$fa-css-prefix}-arrow-circle-down:before { content: $fa-var-arrow-circle-down; } .#{$fa-css-prefix}-globe:before { content: $fa-var-globe; } .#{$fa-css-prefix}-wrench:before { content: $fa-var-wrench; } .#{$fa-css-prefix}-tasks:before { content: $fa-var-tasks; } .#{$fa-css-prefix}-filter:before { content: $fa-var-filter; } .#{$fa-css-prefix}-briefcase:before { content: $fa-var-briefcase; } .#{$fa-css-prefix}-arrows-alt:before { content: $fa-var-arrows-alt; } .#{$fa-css-prefix}-group:before, .#{$fa-css-prefix}-users:before { content: $fa-var-users; } .#{$fa-css-prefix}-chain:before, .#{$fa-css-prefix}-link:before { content: $fa-var-link; } .#{$fa-css-prefix}-cloud:before { content: $fa-var-cloud; } .#{$fa-css-prefix}-flask:before { content: $fa-var-flask; } .#{$fa-css-prefix}-cut:before, .#{$fa-css-prefix}-scissors:before { content: $fa-var-scissors; } .#{$fa-css-prefix}-copy:before, .#{$fa-css-prefix}-files-o:before { content: $fa-var-files-o; } .#{$fa-css-prefix}-paperclip:before { content: $fa-var-paperclip; } .#{$fa-css-prefix}-save:before, .#{$fa-css-prefix}-floppy-o:before { content: $fa-var-floppy-o; } .#{$fa-css-prefix}-square:before { content: $fa-var-square; } .#{$fa-css-prefix}-navicon:before, .#{$fa-css-prefix}-reorder:before, .#{$fa-css-prefix}-bars:before { content: $fa-var-bars; } .#{$fa-css-prefix}-list-ul:before { content: $fa-var-list-ul; } .#{$fa-css-prefix}-list-ol:before { content: $fa-var-list-ol; } .#{$fa-css-prefix}-strikethrough:before { content: $fa-var-strikethrough; } .#{$fa-css-prefix}-underline:before { content: $fa-var-underline; } .#{$fa-css-prefix}-table:before { content: $fa-var-table; } .#{$fa-css-prefix}-magic:before { content: $fa-var-magic; } .#{$fa-css-prefix}-truck:before { content: $fa-var-truck; } .#{$fa-css-prefix}-pinterest:before { content: $fa-var-pinterest; } .#{$fa-css-prefix}-pinterest-square:before { content: $fa-var-pinterest-square; } .#{$fa-css-prefix}-google-plus-square:before { content: $fa-var-google-plus-square; } .#{$fa-css-prefix}-google-plus:before { content: $fa-var-google-plus; } .#{$fa-css-prefix}-money:before { content: $fa-var-money; } .#{$fa-css-prefix}-caret-down:before { content: $fa-var-caret-down; } .#{$fa-css-prefix}-caret-up:before { content: $fa-var-caret-up; } .#{$fa-css-prefix}-caret-left:before { content: $fa-var-caret-left; } .#{$fa-css-prefix}-caret-right:before { content: $fa-var-caret-right; } .#{$fa-css-prefix}-columns:before { content: $fa-var-columns; } .#{$fa-css-prefix}-unsorted:before, .#{$fa-css-prefix}-sort:before { content: $fa-var-sort; } .#{$fa-css-prefix}-sort-down:before, .#{$fa-css-prefix}-sort-desc:before { content: $fa-var-sort-desc; } .#{$fa-css-prefix}-sort-up:before, .#{$fa-css-prefix}-sort-asc:before { content: $fa-var-sort-asc; } .#{$fa-css-prefix}-envelope:before { content: $fa-var-envelope; } .#{$fa-css-prefix}-linkedin:before { content: $fa-var-linkedin; } .#{$fa-css-prefix}-rotate-left:before, .#{$fa-css-prefix}-undo:before { content: $fa-var-undo; } .#{$fa-css-prefix}-legal:before, .#{$fa-css-prefix}-gavel:before { content: $fa-var-gavel; } .#{$fa-css-prefix}-dashboard:before, .#{$fa-css-prefix}-tachometer:before { content: $fa-var-tachometer; } .#{$fa-css-prefix}-comment-o:before { content: $fa-var-comment-o; } .#{$fa-css-prefix}-comments-o:before { content: $fa-var-comments-o; } .#{$fa-css-prefix}-flash:before, .#{$fa-css-prefix}-bolt:before { content: $fa-var-bolt; } .#{$fa-css-prefix}-sitemap:before { content: $fa-var-sitemap; } .#{$fa-css-prefix}-umbrella:before { content: $fa-var-umbrella; } .#{$fa-css-prefix}-paste:before, .#{$fa-css-prefix}-clipboard:before { content: $fa-var-clipboard; } .#{$fa-css-prefix}-lightbulb-o:before { content: $fa-var-lightbulb-o; } .#{$fa-css-prefix}-exchange:before { content: $fa-var-exchange; } .#{$fa-css-prefix}-cloud-download:before { content: $fa-var-cloud-download; } .#{$fa-css-prefix}-cloud-upload:before { content: $fa-var-cloud-upload; } .#{$fa-css-prefix}-user-md:before { content: $fa-var-user-md; } .#{$fa-css-prefix}-stethoscope:before { content: $fa-var-stethoscope; } .#{$fa-css-prefix}-suitcase:before { content: $fa-var-suitcase; } .#{$fa-css-prefix}-bell-o:before { content: $fa-var-bell-o; } .#{$fa-css-prefix}-coffee:before { content: $fa-var-coffee; } .#{$fa-css-prefix}-cutlery:before { content: $fa-var-cutlery; } .#{$fa-css-prefix}-file-text-o:before { content: $fa-var-file-text-o; } .#{$fa-css-prefix}-building-o:before { content: $fa-var-building-o; } .#{$fa-css-prefix}-hospital-o:before { content: $fa-var-hospital-o; } .#{$fa-css-prefix}-ambulance:before { content: $fa-var-ambulance; } .#{$fa-css-prefix}-medkit:before { content: $fa-var-medkit; } .#{$fa-css-prefix}-fighter-jet:before { content: $fa-var-fighter-jet; } .#{$fa-css-prefix}-beer:before { content: $fa-var-beer; } .#{$fa-css-prefix}-h-square:before { content: $fa-var-h-square; } .#{$fa-css-prefix}-plus-square:before { content: $fa-var-plus-square; } .#{$fa-css-prefix}-angle-double-left:before { content: $fa-var-angle-double-left; } .#{$fa-css-prefix}-angle-double-right:before { content: $fa-var-angle-double-right; } .#{$fa-css-prefix}-angle-double-up:before { content: $fa-var-angle-double-up; } .#{$fa-css-prefix}-angle-double-down:before { content: $fa-var-angle-double-down; } .#{$fa-css-prefix}-angle-left:before { content: $fa-var-angle-left; } .#{$fa-css-prefix}-angle-right:before { content: $fa-var-angle-right; } .#{$fa-css-prefix}-angle-up:before { content: $fa-var-angle-up; } .#{$fa-css-prefix}-angle-down:before { content: $fa-var-angle-down; } .#{$fa-css-prefix}-desktop:before { content: $fa-var-desktop; } .#{$fa-css-prefix}-laptop:before { content: $fa-var-laptop; } .#{$fa-css-prefix}-tablet:before { content: $fa-var-tablet; } .#{$fa-css-prefix}-mobile-phone:before, .#{$fa-css-prefix}-mobile:before { content: $fa-var-mobile; } .#{$fa-css-prefix}-circle-o:before { content: $fa-var-circle-o; } .#{$fa-css-prefix}-quote-left:before { content: $fa-var-quote-left; } .#{$fa-css-prefix}-quote-right:before { content: $fa-var-quote-right; } .#{$fa-css-prefix}-spinner:before { content: $fa-var-spinner; } .#{$fa-css-prefix}-circle:before { content: $fa-var-circle; } .#{$fa-css-prefix}-mail-reply:before, .#{$fa-css-prefix}-reply:before { content: $fa-var-reply; } .#{$fa-css-prefix}-github-alt:before { content: $fa-var-github-alt; } .#{$fa-css-prefix}-folder-o:before { content: $fa-var-folder-o; } .#{$fa-css-prefix}-folder-open-o:before { content: $fa-var-folder-open-o; } .#{$fa-css-prefix}-smile-o:before { content: $fa-var-smile-o; } .#{$fa-css-prefix}-frown-o:before { content: $fa-var-frown-o; } .#{$fa-css-prefix}-meh-o:before { content: $fa-var-meh-o; } .#{$fa-css-prefix}-gamepad:before { content: $fa-var-gamepad; } .#{$fa-css-prefix}-keyboard-o:before { content: $fa-var-keyboard-o; } .#{$fa-css-prefix}-flag-o:before { content: $fa-var-flag-o; } .#{$fa-css-prefix}-flag-checkered:before { content: $fa-var-flag-checkered; } .#{$fa-css-prefix}-terminal:before { content: $fa-var-terminal; } .#{$fa-css-prefix}-code:before { content: $fa-var-code; } .#{$fa-css-prefix}-mail-reply-all:before, .#{$fa-css-prefix}-reply-all:before { content: $fa-var-reply-all; } .#{$fa-css-prefix}-star-half-empty:before, .#{$fa-css-prefix}-star-half-full:before, .#{$fa-css-prefix}-star-half-o:before { content: $fa-var-star-half-o; } .#{$fa-css-prefix}-location-arrow:before { content: $fa-var-location-arrow; } .#{$fa-css-prefix}-crop:before { content: $fa-var-crop; } .#{$fa-css-prefix}-code-fork:before { content: $fa-var-code-fork; } .#{$fa-css-prefix}-unlink:before, .#{$fa-css-prefix}-chain-broken:before { content: $fa-var-chain-broken; } .#{$fa-css-prefix}-question:before { content: $fa-var-question; } .#{$fa-css-prefix}-info:before { content: $fa-var-info; } .#{$fa-css-prefix}-exclamation:before { content: $fa-var-exclamation; } .#{$fa-css-prefix}-superscript:before { content: $fa-var-superscript; } .#{$fa-css-prefix}-subscript:before { content: $fa-var-subscript; } .#{$fa-css-prefix}-eraser:before { content: $fa-var-eraser; } .#{$fa-css-prefix}-puzzle-piece:before { content: $fa-var-puzzle-piece; } .#{$fa-css-prefix}-microphone:before { content: $fa-var-microphone; } .#{$fa-css-prefix}-microphone-slash:before { content: $fa-var-microphone-slash; } .#{$fa-css-prefix}-shield:before { content: $fa-var-shield; } .#{$fa-css-prefix}-calendar-o:before { content: $fa-var-calendar-o; } .#{$fa-css-prefix}-fire-extinguisher:before { content: $fa-var-fire-extinguisher; } .#{$fa-css-prefix}-rocket:before { content: $fa-var-rocket; } .#{$fa-css-prefix}-maxcdn:before { content: $fa-var-maxcdn; } .#{$fa-css-prefix}-chevron-circle-left:before { content: $fa-var-chevron-circle-left; } .#{$fa-css-prefix}-chevron-circle-right:before { content: $fa-var-chevron-circle-right; } .#{$fa-css-prefix}-chevron-circle-up:before { content: $fa-var-chevron-circle-up; } .#{$fa-css-prefix}-chevron-circle-down:before { content: $fa-var-chevron-circle-down; } .#{$fa-css-prefix}-html5:before { content: $fa-var-html5; } .#{$fa-css-prefix}-css3:before { content: $fa-var-css3; } .#{$fa-css-prefix}-anchor:before { content: $fa-var-anchor; } .#{$fa-css-prefix}-unlock-alt:before { content: $fa-var-unlock-alt; } .#{$fa-css-prefix}-bullseye:before { content: $fa-var-bullseye; } .#{$fa-css-prefix}-ellipsis-h:before { content: $fa-var-ellipsis-h; } .#{$fa-css-prefix}-ellipsis-v:before { content: $fa-var-ellipsis-v; } .#{$fa-css-prefix}-rss-square:before { content: $fa-var-rss-square; } .#{$fa-css-prefix}-play-circle:before { content: $fa-var-play-circle; } .#{$fa-css-prefix}-ticket:before { content: $fa-var-ticket; } .#{$fa-css-prefix}-minus-square:before { content: $fa-var-minus-square; } .#{$fa-css-prefix}-minus-square-o:before { content: $fa-var-minus-square-o; } .#{$fa-css-prefix}-level-up:before { content: $fa-var-level-up; } .#{$fa-css-prefix}-level-down:before { content: $fa-var-level-down; } .#{$fa-css-prefix}-check-square:before { content: $fa-var-check-square; } .#{$fa-css-prefix}-pencil-square:before { content: $fa-var-pencil-square; } .#{$fa-css-prefix}-external-link-square:before { content: $fa-var-external-link-square; } .#{$fa-css-prefix}-share-square:before { content: $fa-var-share-square; } .#{$fa-css-prefix}-compass:before { content: $fa-var-compass; } .#{$fa-css-prefix}-toggle-down:before, .#{$fa-css-prefix}-caret-square-o-down:before { content: $fa-var-caret-square-o-down; } .#{$fa-css-prefix}-toggle-up:before, .#{$fa-css-prefix}-caret-square-o-up:before { content: $fa-var-caret-square-o-up; } .#{$fa-css-prefix}-toggle-right:before, .#{$fa-css-prefix}-caret-square-o-right:before { content: $fa-var-caret-square-o-right; } .#{$fa-css-prefix}-euro:before, .#{$fa-css-prefix}-eur:before { content: $fa-var-eur; } .#{$fa-css-prefix}-gbp:before { content: $fa-var-gbp; } .#{$fa-css-prefix}-dollar:before, .#{$fa-css-prefix}-usd:before { content: $fa-var-usd; } .#{$fa-css-prefix}-rupee:before, .#{$fa-css-prefix}-inr:before { content: $fa-var-inr; } .#{$fa-css-prefix}-cny:before, .#{$fa-css-prefix}-rmb:before, .#{$fa-css-prefix}-yen:before, .#{$fa-css-prefix}-jpy:before { content: $fa-var-jpy; } .#{$fa-css-prefix}-ruble:before, .#{$fa-css-prefix}-rouble:before, .#{$fa-css-prefix}-rub:before { content: $fa-var-rub; } .#{$fa-css-prefix}-won:before, .#{$fa-css-prefix}-krw:before { content: $fa-var-krw; } .#{$fa-css-prefix}-bitcoin:before, .#{$fa-css-prefix}-btc:before { content: $fa-var-btc; } .#{$fa-css-prefix}-file:before { content: $fa-var-file; } .#{$fa-css-prefix}-file-text:before { content: $fa-var-file-text; } .#{$fa-css-prefix}-sort-alpha-asc:before { content: $fa-var-sort-alpha-asc; } .#{$fa-css-prefix}-sort-alpha-desc:before { content: $fa-var-sort-alpha-desc; } .#{$fa-css-prefix}-sort-amount-asc:before { content: $fa-var-sort-amount-asc; } .#{$fa-css-prefix}-sort-amount-desc:before { content: $fa-var-sort-amount-desc; } .#{$fa-css-prefix}-sort-numeric-asc:before { content: $fa-var-sort-numeric-asc; } .#{$fa-css-prefix}-sort-numeric-desc:before { content: $fa-var-sort-numeric-desc; } .#{$fa-css-prefix}-thumbs-up:before { content: $fa-var-thumbs-up; } .#{$fa-css-prefix}-thumbs-down:before { content: $fa-var-thumbs-down; } .#{$fa-css-prefix}-youtube-square:before { content: $fa-var-youtube-square; } .#{$fa-css-prefix}-youtube:before { content: $fa-var-youtube; } .#{$fa-css-prefix}-xing:before { content: $fa-var-xing; } .#{$fa-css-prefix}-xing-square:before { content: $fa-var-xing-square; } .#{$fa-css-prefix}-youtube-play:before { content: $fa-var-youtube-play; } .#{$fa-css-prefix}-dropbox:before { content: $fa-var-dropbox; } .#{$fa-css-prefix}-stack-overflow:before { content: $fa-var-stack-overflow; } .#{$fa-css-prefix}-instagram:before { content: $fa-var-instagram; } .#{$fa-css-prefix}-flickr:before { content: $fa-var-flickr; } .#{$fa-css-prefix}-adn:before { content: $fa-var-adn; } .#{$fa-css-prefix}-bitbucket:before { content: $fa-var-bitbucket; } .#{$fa-css-prefix}-bitbucket-square:before { content: $fa-var-bitbucket-square; } .#{$fa-css-prefix}-tumblr:before { content: $fa-var-tumblr; } .#{$fa-css-prefix}-tumblr-square:before { content: $fa-var-tumblr-square; } .#{$fa-css-prefix}-long-arrow-down:before { content: $fa-var-long-arrow-down; } .#{$fa-css-prefix}-long-arrow-up:before { content: $fa-var-long-arrow-up; } .#{$fa-css-prefix}-long-arrow-left:before { content: $fa-var-long-arrow-left; } .#{$fa-css-prefix}-long-arrow-right:before { content: $fa-var-long-arrow-right; } .#{$fa-css-prefix}-apple:before { content: $fa-var-apple; } .#{$fa-css-prefix}-windows:before { content: $fa-var-windows; } .#{$fa-css-prefix}-android:before { content: $fa-var-android; } .#{$fa-css-prefix}-linux:before { content: $fa-var-linux; } .#{$fa-css-prefix}-dribbble:before { content: $fa-var-dribbble; } .#{$fa-css-prefix}-skype:before { content: $fa-var-skype; } .#{$fa-css-prefix}-foursquare:before { content: $fa-var-foursquare; } .#{$fa-css-prefix}-trello:before { content: $fa-var-trello; } .#{$fa-css-prefix}-female:before { content: $fa-var-female; } .#{$fa-css-prefix}-male:before { content: $fa-var-male; } .#{$fa-css-prefix}-gittip:before, .#{$fa-css-prefix}-gratipay:before { content: $fa-var-gratipay; } .#{$fa-css-prefix}-sun-o:before { content: $fa-var-sun-o; } .#{$fa-css-prefix}-moon-o:before { content: $fa-var-moon-o; } .#{$fa-css-prefix}-archive:before { content: $fa-var-archive; } .#{$fa-css-prefix}-bug:before { content: $fa-var-bug; } .#{$fa-css-prefix}-vk:before { content: $fa-var-vk; } .#{$fa-css-prefix}-weibo:before { content: $fa-var-weibo; } .#{$fa-css-prefix}-renren:before { content: $fa-var-renren; } .#{$fa-css-prefix}-pagelines:before { content: $fa-var-pagelines; } .#{$fa-css-prefix}-stack-exchange:before { content: $fa-var-stack-exchange; } .#{$fa-css-prefix}-arrow-circle-o-right:before { content: $fa-var-arrow-circle-o-right; } .#{$fa-css-prefix}-arrow-circle-o-left:before { content: $fa-var-arrow-circle-o-left; } .#{$fa-css-prefix}-toggle-left:before, .#{$fa-css-prefix}-caret-square-o-left:before { content: $fa-var-caret-square-o-left; } .#{$fa-css-prefix}-dot-circle-o:before { content: $fa-var-dot-circle-o; } .#{$fa-css-prefix}-wheelchair:before { content: $fa-var-wheelchair; } .#{$fa-css-prefix}-vimeo-square:before { content: $fa-var-vimeo-square; } .#{$fa-css-prefix}-turkish-lira:before, .#{$fa-css-prefix}-try:before { content: $fa-var-try; } .#{$fa-css-prefix}-plus-square-o:before { content: $fa-var-plus-square-o; } .#{$fa-css-prefix}-space-shuttle:before { content: $fa-var-space-shuttle; } .#{$fa-css-prefix}-slack:before { content: $fa-var-slack; } .#{$fa-css-prefix}-envelope-square:before { content: $fa-var-envelope-square; } .#{$fa-css-prefix}-wordpress:before { content: $fa-var-wordpress; } .#{$fa-css-prefix}-openid:before { content: $fa-var-openid; } .#{$fa-css-prefix}-institution:before, .#{$fa-css-prefix}-bank:before, .#{$fa-css-prefix}-university:before { content: $fa-var-university; } .#{$fa-css-prefix}-mortar-board:before, .#{$fa-css-prefix}-graduation-cap:before { content: $fa-var-graduation-cap; } .#{$fa-css-prefix}-yahoo:before { content: $fa-var-yahoo; } .#{$fa-css-prefix}-google:before { content: $fa-var-google; } .#{$fa-css-prefix}-reddit:before { content: $fa-var-reddit; } .#{$fa-css-prefix}-reddit-square:before { content: $fa-var-reddit-square; } .#{$fa-css-prefix}-stumbleupon-circle:before { content: $fa-var-stumbleupon-circle; } .#{$fa-css-prefix}-stumbleupon:before { content: $fa-var-stumbleupon; } .#{$fa-css-prefix}-delicious:before { content: $fa-var-delicious; } .#{$fa-css-prefix}-digg:before { content: $fa-var-digg; } .#{$fa-css-prefix}-pied-piper-pp:before { content: $fa-var-pied-piper-pp; } .#{$fa-css-prefix}-pied-piper-alt:before { content: $fa-var-pied-piper-alt; } .#{$fa-css-prefix}-drupal:before { content: $fa-var-drupal; } .#{$fa-css-prefix}-joomla:before { content: $fa-var-joomla; } .#{$fa-css-prefix}-language:before { content: $fa-var-language; } .#{$fa-css-prefix}-fax:before { content: $fa-var-fax; } .#{$fa-css-prefix}-building:before { content: $fa-var-building; } .#{$fa-css-prefix}-child:before { content: $fa-var-child; } .#{$fa-css-prefix}-paw:before { content: $fa-var-paw; } .#{$fa-css-prefix}-spoon:before { content: $fa-var-spoon; } .#{$fa-css-prefix}-cube:before { content: $fa-var-cube; } .#{$fa-css-prefix}-cubes:before { content: $fa-var-cubes; } .#{$fa-css-prefix}-behance:before { content: $fa-var-behance; } .#{$fa-css-prefix}-behance-square:before { content: $fa-var-behance-square; } .#{$fa-css-prefix}-steam:before { content: $fa-var-steam; } .#{$fa-css-prefix}-steam-square:before { content: $fa-var-steam-square; } .#{$fa-css-prefix}-recycle:before { content: $fa-var-recycle; } .#{$fa-css-prefix}-automobile:before, .#{$fa-css-prefix}-car:before { content: $fa-var-car; } .#{$fa-css-prefix}-cab:before, .#{$fa-css-prefix}-taxi:before { content: $fa-var-taxi; } .#{$fa-css-prefix}-tree:before { content: $fa-var-tree; } .#{$fa-css-prefix}-spotify:before { content: $fa-var-spotify; } .#{$fa-css-prefix}-deviantart:before { content: $fa-var-deviantart; } .#{$fa-css-prefix}-soundcloud:before { content: $fa-var-soundcloud; } .#{$fa-css-prefix}-database:before { content: $fa-var-database; } .#{$fa-css-prefix}-file-pdf-o:before { content: $fa-var-file-pdf-o; } .#{$fa-css-prefix}-file-word-o:before { content: $fa-var-file-word-o; } .#{$fa-css-prefix}-file-excel-o:before { content: $fa-var-file-excel-o; } .#{$fa-css-prefix}-file-powerpoint-o:before { content: $fa-var-file-powerpoint-o; } .#{$fa-css-prefix}-file-photo-o:before, .#{$fa-css-prefix}-file-picture-o:before, .#{$fa-css-prefix}-file-image-o:before { content: $fa-var-file-image-o; } .#{$fa-css-prefix}-file-zip-o:before, .#{$fa-css-prefix}-file-archive-o:before { content: $fa-var-file-archive-o; } .#{$fa-css-prefix}-file-sound-o:before, .#{$fa-css-prefix}-file-audio-o:before { content: $fa-var-file-audio-o; } .#{$fa-css-prefix}-file-movie-o:before, .#{$fa-css-prefix}-file-video-o:before { content: $fa-var-file-video-o; } .#{$fa-css-prefix}-file-code-o:before { content: $fa-var-file-code-o; } .#{$fa-css-prefix}-vine:before { content: $fa-var-vine; } .#{$fa-css-prefix}-codepen:before { content: $fa-var-codepen; } .#{$fa-css-prefix}-jsfiddle:before { content: $fa-var-jsfiddle; } .#{$fa-css-prefix}-life-bouy:before, .#{$fa-css-prefix}-life-buoy:before, .#{$fa-css-prefix}-life-saver:before, .#{$fa-css-prefix}-support:before, .#{$fa-css-prefix}-life-ring:before { content: $fa-var-life-ring; } .#{$fa-css-prefix}-circle-o-notch:before { content: $fa-var-circle-o-notch; } .#{$fa-css-prefix}-ra:before, .#{$fa-css-prefix}-resistance:before, .#{$fa-css-prefix}-rebel:before { content: $fa-var-rebel; } .#{$fa-css-prefix}-ge:before, .#{$fa-css-prefix}-empire:before { content: $fa-var-empire; } .#{$fa-css-prefix}-git-square:before { content: $fa-var-git-square; } .#{$fa-css-prefix}-git:before { content: $fa-var-git; } .#{$fa-css-prefix}-y-combinator-square:before, .#{$fa-css-prefix}-yc-square:before, .#{$fa-css-prefix}-hacker-news:before { content: $fa-var-hacker-news; } .#{$fa-css-prefix}-tencent-weibo:before { content: $fa-var-tencent-weibo; } .#{$fa-css-prefix}-qq:before { content: $fa-var-qq; } .#{$fa-css-prefix}-wechat:before, .#{$fa-css-prefix}-weixin:before { content: $fa-var-weixin; } .#{$fa-css-prefix}-send:before, .#{$fa-css-prefix}-paper-plane:before { content: $fa-var-paper-plane; } .#{$fa-css-prefix}-send-o:before, .#{$fa-css-prefix}-paper-plane-o:before { content: $fa-var-paper-plane-o; } .#{$fa-css-prefix}-history:before { content: $fa-var-history; } .#{$fa-css-prefix}-circle-thin:before { content: $fa-var-circle-thin; } .#{$fa-css-prefix}-header:before { content: $fa-var-header; } .#{$fa-css-prefix}-paragraph:before { content: $fa-var-paragraph; } .#{$fa-css-prefix}-sliders:before { content: $fa-var-sliders; } .#{$fa-css-prefix}-share-alt:before { content: $fa-var-share-alt; } .#{$fa-css-prefix}-share-alt-square:before { content: $fa-var-share-alt-square; } .#{$fa-css-prefix}-bomb:before { content: $fa-var-bomb; } .#{$fa-css-prefix}-soccer-ball-o:before, .#{$fa-css-prefix}-futbol-o:before { content: $fa-var-futbol-o; } .#{$fa-css-prefix}-tty:before { content: $fa-var-tty; } .#{$fa-css-prefix}-binoculars:before { content: $fa-var-binoculars; } .#{$fa-css-prefix}-plug:before { content: $fa-var-plug; } .#{$fa-css-prefix}-slideshare:before { content: $fa-var-slideshare; } .#{$fa-css-prefix}-twitch:before { content: $fa-var-twitch; } .#{$fa-css-prefix}-yelp:before { content: $fa-var-yelp; } .#{$fa-css-prefix}-newspaper-o:before { content: $fa-var-newspaper-o; } .#{$fa-css-prefix}-wifi:before { content: $fa-var-wifi; } .#{$fa-css-prefix}-calculator:before { content: $fa-var-calculator; } .#{$fa-css-prefix}-paypal:before { content: $fa-var-paypal; } .#{$fa-css-prefix}-google-wallet:before { content: $fa-var-google-wallet; } .#{$fa-css-prefix}-cc-visa:before { content: $fa-var-cc-visa; } .#{$fa-css-prefix}-cc-mastercard:before { content: $fa-var-cc-mastercard; } .#{$fa-css-prefix}-cc-discover:before { content: $fa-var-cc-discover; } .#{$fa-css-prefix}-cc-amex:before { content: $fa-var-cc-amex; } .#{$fa-css-prefix}-cc-paypal:before { content: $fa-var-cc-paypal; } .#{$fa-css-prefix}-cc-stripe:before { content: $fa-var-cc-stripe; } .#{$fa-css-prefix}-bell-slash:before { content: $fa-var-bell-slash; } .#{$fa-css-prefix}-bell-slash-o:before { content: $fa-var-bell-slash-o; } .#{$fa-css-prefix}-trash:before { content: $fa-var-trash; } .#{$fa-css-prefix}-copyright:before { content: $fa-var-copyright; } .#{$fa-css-prefix}-at:before { content: $fa-var-at; } .#{$fa-css-prefix}-eyedropper:before { content: $fa-var-eyedropper; } .#{$fa-css-prefix}-paint-brush:before { content: $fa-var-paint-brush; } .#{$fa-css-prefix}-birthday-cake:before { content: $fa-var-birthday-cake; } .#{$fa-css-prefix}-area-chart:before { content: $fa-var-area-chart; } .#{$fa-css-prefix}-pie-chart:before { content: $fa-var-pie-chart; } .#{$fa-css-prefix}-line-chart:before { content: $fa-var-line-chart; } .#{$fa-css-prefix}-lastfm:before { content: $fa-var-lastfm; } .#{$fa-css-prefix}-lastfm-square:before { content: $fa-var-lastfm-square; } .#{$fa-css-prefix}-toggle-off:before { content: $fa-var-toggle-off; } .#{$fa-css-prefix}-toggle-on:before { content: $fa-var-toggle-on; } .#{$fa-css-prefix}-bicycle:before { content: $fa-var-bicycle; } .#{$fa-css-prefix}-bus:before { content: $fa-var-bus; } .#{$fa-css-prefix}-ioxhost:before { content: $fa-var-ioxhost; } .#{$fa-css-prefix}-angellist:before { content: $fa-var-angellist; } .#{$fa-css-prefix}-cc:before { content: $fa-var-cc; } .#{$fa-css-prefix}-shekel:before, .#{$fa-css-prefix}-sheqel:before, .#{$fa-css-prefix}-ils:before { content: $fa-var-ils; } .#{$fa-css-prefix}-meanpath:before { content: $fa-var-meanpath; } .#{$fa-css-prefix}-buysellads:before { content: $fa-var-buysellads; } .#{$fa-css-prefix}-connectdevelop:before { content: $fa-var-connectdevelop; } .#{$fa-css-prefix}-dashcube:before { content: $fa-var-dashcube; } .#{$fa-css-prefix}-forumbee:before { content: $fa-var-forumbee; } .#{$fa-css-prefix}-leanpub:before { content: $fa-var-leanpub; } .#{$fa-css-prefix}-sellsy:before { content: $fa-var-sellsy; } .#{$fa-css-prefix}-shirtsinbulk:before { content: $fa-var-shirtsinbulk; } .#{$fa-css-prefix}-simplybuilt:before { content: $fa-var-simplybuilt; } .#{$fa-css-prefix}-skyatlas:before { content: $fa-var-skyatlas; } .#{$fa-css-prefix}-cart-plus:before { content: $fa-var-cart-plus; } .#{$fa-css-prefix}-cart-arrow-down:before { content: $fa-var-cart-arrow-down; } .#{$fa-css-prefix}-diamond:before { content: $fa-var-diamond; } .#{$fa-css-prefix}-ship:before { content: $fa-var-ship; } .#{$fa-css-prefix}-user-secret:before { content: $fa-var-user-secret; } .#{$fa-css-prefix}-motorcycle:before { content: $fa-var-motorcycle; } .#{$fa-css-prefix}-street-view:before { content: $fa-var-street-view; } .#{$fa-css-prefix}-heartbeat:before { content: $fa-var-heartbeat; } .#{$fa-css-prefix}-venus:before { content: $fa-var-venus; } .#{$fa-css-prefix}-mars:before { content: $fa-var-mars; } .#{$fa-css-prefix}-mercury:before { content: $fa-var-mercury; } .#{$fa-css-prefix}-intersex:before, .#{$fa-css-prefix}-transgender:before { content: $fa-var-transgender; } .#{$fa-css-prefix}-transgender-alt:before { content: $fa-var-transgender-alt; } .#{$fa-css-prefix}-venus-double:before { content: $fa-var-venus-double; } .#{$fa-css-prefix}-mars-double:before { content: $fa-var-mars-double; } .#{$fa-css-prefix}-venus-mars:before { content: $fa-var-venus-mars; } .#{$fa-css-prefix}-mars-stroke:before { content: $fa-var-mars-stroke; } .#{$fa-css-prefix}-mars-stroke-v:before { content: $fa-var-mars-stroke-v; } .#{$fa-css-prefix}-mars-stroke-h:before { content: $fa-var-mars-stroke-h; } .#{$fa-css-prefix}-neuter:before { content: $fa-var-neuter; } .#{$fa-css-prefix}-genderless:before { content: $fa-var-genderless; } .#{$fa-css-prefix}-facebook-official:before { content: $fa-var-facebook-official; } .#{$fa-css-prefix}-pinterest-p:before { content: $fa-var-pinterest-p; } .#{$fa-css-prefix}-whatsapp:before { content: $fa-var-whatsapp; } .#{$fa-css-prefix}-server:before { content: $fa-var-server; } .#{$fa-css-prefix}-user-plus:before { content: $fa-var-user-plus; } .#{$fa-css-prefix}-user-times:before { content: $fa-var-user-times; } .#{$fa-css-prefix}-hotel:before, .#{$fa-css-prefix}-bed:before { content: $fa-var-bed; } .#{$fa-css-prefix}-viacoin:before { content: $fa-var-viacoin; } .#{$fa-css-prefix}-train:before { content: $fa-var-train; } .#{$fa-css-prefix}-subway:before { content: $fa-var-subway; } .#{$fa-css-prefix}-medium:before { content: $fa-var-medium; } .#{$fa-css-prefix}-yc:before, .#{$fa-css-prefix}-y-combinator:before { content: $fa-var-y-combinator; } .#{$fa-css-prefix}-optin-monster:before { content: $fa-var-optin-monster; } .#{$fa-css-prefix}-opencart:before { content: $fa-var-opencart; } .#{$fa-css-prefix}-expeditedssl:before { content: $fa-var-expeditedssl; } .#{$fa-css-prefix}-battery-4:before, .#{$fa-css-prefix}-battery:before, .#{$fa-css-prefix}-battery-full:before { content: $fa-var-battery-full; } .#{$fa-css-prefix}-battery-3:before, .#{$fa-css-prefix}-battery-three-quarters:before { content: $fa-var-battery-three-quarters; } .#{$fa-css-prefix}-battery-2:before, .#{$fa-css-prefix}-battery-half:before { content: $fa-var-battery-half; } .#{$fa-css-prefix}-battery-1:before, .#{$fa-css-prefix}-battery-quarter:before { content: $fa-var-battery-quarter; } .#{$fa-css-prefix}-battery-0:before, .#{$fa-css-prefix}-battery-empty:before { content: $fa-var-battery-empty; } .#{$fa-css-prefix}-mouse-pointer:before { content: $fa-var-mouse-pointer; } .#{$fa-css-prefix}-i-cursor:before { content: $fa-var-i-cursor; } .#{$fa-css-prefix}-object-group:before { content: $fa-var-object-group; } .#{$fa-css-prefix}-object-ungroup:before { content: $fa-var-object-ungroup; } .#{$fa-css-prefix}-sticky-note:before { content: $fa-var-sticky-note; } .#{$fa-css-prefix}-sticky-note-o:before { content: $fa-var-sticky-note-o; } .#{$fa-css-prefix}-cc-jcb:before { content: $fa-var-cc-jcb; } .#{$fa-css-prefix}-cc-diners-club:before { content: $fa-var-cc-diners-club; } .#{$fa-css-prefix}-clone:before { content: $fa-var-clone; } .#{$fa-css-prefix}-balance-scale:before { content: $fa-var-balance-scale; } .#{$fa-css-prefix}-hourglass-o:before { content: $fa-var-hourglass-o; } .#{$fa-css-prefix}-hourglass-1:before, .#{$fa-css-prefix}-hourglass-start:before { content: $fa-var-hourglass-start; } .#{$fa-css-prefix}-hourglass-2:before, .#{$fa-css-prefix}-hourglass-half:before { content: $fa-var-hourglass-half; } .#{$fa-css-prefix}-hourglass-3:before, .#{$fa-css-prefix}-hourglass-end:before { content: $fa-var-hourglass-end; } .#{$fa-css-prefix}-hourglass:before { content: $fa-var-hourglass; } .#{$fa-css-prefix}-hand-grab-o:before, .#{$fa-css-prefix}-hand-rock-o:before { content: $fa-var-hand-rock-o; } .#{$fa-css-prefix}-hand-stop-o:before, .#{$fa-css-prefix}-hand-paper-o:before { content: $fa-var-hand-paper-o; } .#{$fa-css-prefix}-hand-scissors-o:before { content: $fa-var-hand-scissors-o; } .#{$fa-css-prefix}-hand-lizard-o:before { content: $fa-var-hand-lizard-o; } .#{$fa-css-prefix}-hand-spock-o:before { content: $fa-var-hand-spock-o; } .#{$fa-css-prefix}-hand-pointer-o:before { content: $fa-var-hand-pointer-o; } .#{$fa-css-prefix}-hand-peace-o:before { content: $fa-var-hand-peace-o; } .#{$fa-css-prefix}-trademark:before { content: $fa-var-trademark; } .#{$fa-css-prefix}-registered:before { content: $fa-var-registered; } .#{$fa-css-prefix}-creative-commons:before { content: $fa-var-creative-commons; } .#{$fa-css-prefix}-gg:before { content: $fa-var-gg; } .#{$fa-css-prefix}-gg-circle:before { content: $fa-var-gg-circle; } .#{$fa-css-prefix}-tripadvisor:before { content: $fa-var-tripadvisor; } .#{$fa-css-prefix}-odnoklassniki:before { content: $fa-var-odnoklassniki; } .#{$fa-css-prefix}-odnoklassniki-square:before { content: $fa-var-odnoklassniki-square; } .#{$fa-css-prefix}-get-pocket:before { content: $fa-var-get-pocket; } .#{$fa-css-prefix}-wikipedia-w:before { content: $fa-var-wikipedia-w; } .#{$fa-css-prefix}-safari:before { content: $fa-var-safari; } .#{$fa-css-prefix}-chrome:before { content: $fa-var-chrome; } .#{$fa-css-prefix}-firefox:before { content: $fa-var-firefox; } .#{$fa-css-prefix}-opera:before { content: $fa-var-opera; } .#{$fa-css-prefix}-internet-explorer:before { content: $fa-var-internet-explorer; } .#{$fa-css-prefix}-tv:before, .#{$fa-css-prefix}-television:before { content: $fa-var-television; } .#{$fa-css-prefix}-contao:before { content: $fa-var-contao; } .#{$fa-css-prefix}-500px:before { content: $fa-var-500px; } .#{$fa-css-prefix}-amazon:before { content: $fa-var-amazon; } .#{$fa-css-prefix}-calendar-plus-o:before { content: $fa-var-calendar-plus-o; } .#{$fa-css-prefix}-calendar-minus-o:before { content: $fa-var-calendar-minus-o; } .#{$fa-css-prefix}-calendar-times-o:before { content: $fa-var-calendar-times-o; } .#{$fa-css-prefix}-calendar-check-o:before { content: $fa-var-calendar-check-o; } .#{$fa-css-prefix}-industry:before { content: $fa-var-industry; } .#{$fa-css-prefix}-map-pin:before { content: $fa-var-map-pin; } .#{$fa-css-prefix}-map-signs:before { content: $fa-var-map-signs; } .#{$fa-css-prefix}-map-o:before { content: $fa-var-map-o; } .#{$fa-css-prefix}-map:before { content: $fa-var-map; } .#{$fa-css-prefix}-commenting:before { content: $fa-var-commenting; } .#{$fa-css-prefix}-commenting-o:before { content: $fa-var-commenting-o; } .#{$fa-css-prefix}-houzz:before { content: $fa-var-houzz; } .#{$fa-css-prefix}-vimeo:before { content: $fa-var-vimeo; } .#{$fa-css-prefix}-black-tie:before { content: $fa-var-black-tie; } .#{$fa-css-prefix}-fonticons:before { content: $fa-var-fonticons; } .#{$fa-css-prefix}-reddit-alien:before { content: $fa-var-reddit-alien; } .#{$fa-css-prefix}-edge:before { content: $fa-var-edge; } .#{$fa-css-prefix}-credit-card-alt:before { content: $fa-var-credit-card-alt; } .#{$fa-css-prefix}-codiepie:before { content: $fa-var-codiepie; } .#{$fa-css-prefix}-modx:before { content: $fa-var-modx; } .#{$fa-css-prefix}-fort-awesome:before { content: $fa-var-fort-awesome; } .#{$fa-css-prefix}-usb:before { content: $fa-var-usb; } .#{$fa-css-prefix}-product-hunt:before { content: $fa-var-product-hunt; } .#{$fa-css-prefix}-mixcloud:before { content: $fa-var-mixcloud; } .#{$fa-css-prefix}-scribd:before { content: $fa-var-scribd; } .#{$fa-css-prefix}-pause-circle:before { content: $fa-var-pause-circle; } .#{$fa-css-prefix}-pause-circle-o:before { content: $fa-var-pause-circle-o; } .#{$fa-css-prefix}-stop-circle:before { content: $fa-var-stop-circle; } .#{$fa-css-prefix}-stop-circle-o:before { content: $fa-var-stop-circle-o; } .#{$fa-css-prefix}-shopping-bag:before { content: $fa-var-shopping-bag; } .#{$fa-css-prefix}-shopping-basket:before { content: $fa-var-shopping-basket; } .#{$fa-css-prefix}-hashtag:before { content: $fa-var-hashtag; } .#{$fa-css-prefix}-bluetooth:before { content: $fa-var-bluetooth; } .#{$fa-css-prefix}-bluetooth-b:before { content: $fa-var-bluetooth-b; } .#{$fa-css-prefix}-percent:before { content: $fa-var-percent; } .#{$fa-css-prefix}-gitlab:before { content: $fa-var-gitlab; } .#{$fa-css-prefix}-wpbeginner:before { content: $fa-var-wpbeginner; } .#{$fa-css-prefix}-wpforms:before { content: $fa-var-wpforms; } .#{$fa-css-prefix}-envira:before { content: $fa-var-envira; } .#{$fa-css-prefix}-universal-access:before { content: $fa-var-universal-access; } .#{$fa-css-prefix}-wheelchair-alt:before { content: $fa-var-wheelchair-alt; } .#{$fa-css-prefix}-question-circle-o:before { content: $fa-var-question-circle-o; } .#{$fa-css-prefix}-blind:before { content: $fa-var-blind; } .#{$fa-css-prefix}-audio-description:before { content: $fa-var-audio-description; } .#{$fa-css-prefix}-volume-control-phone:before { content: $fa-var-volume-control-phone; } .#{$fa-css-prefix}-braille:before { content: $fa-var-braille; } .#{$fa-css-prefix}-assistive-listening-systems:before { content: $fa-var-assistive-listening-systems; } .#{$fa-css-prefix}-asl-interpreting:before, .#{$fa-css-prefix}-american-sign-language-interpreting:before { content: $fa-var-american-sign-language-interpreting; } .#{$fa-css-prefix}-deafness:before, .#{$fa-css-prefix}-hard-of-hearing:before, .#{$fa-css-prefix}-deaf:before { content: $fa-var-deaf; } .#{$fa-css-prefix}-glide:before { content: $fa-var-glide; } .#{$fa-css-prefix}-glide-g:before { content: $fa-var-glide-g; } .#{$fa-css-prefix}-signing:before, .#{$fa-css-prefix}-sign-language:before { content: $fa-var-sign-language; } .#{$fa-css-prefix}-low-vision:before { content: $fa-var-low-vision; } .#{$fa-css-prefix}-viadeo:before { content: $fa-var-viadeo; } .#{$fa-css-prefix}-viadeo-square:before { content: $fa-var-viadeo-square; } .#{$fa-css-prefix}-snapchat:before { content: $fa-var-snapchat; } .#{$fa-css-prefix}-snapchat-ghost:before { content: $fa-var-snapchat-ghost; } .#{$fa-css-prefix}-snapchat-square:before { content: $fa-var-snapchat-square; } .#{$fa-css-prefix}-pied-piper:before { content: $fa-var-pied-piper; } .#{$fa-css-prefix}-first-order:before { content: $fa-var-first-order; } .#{$fa-css-prefix}-yoast:before { content: $fa-var-yoast; } .#{$fa-css-prefix}-themeisle:before { content: $fa-var-themeisle; } .#{$fa-css-prefix}-google-plus-circle:before, .#{$fa-css-prefix}-google-plus-official:before { content: $fa-var-google-plus-official; } .#{$fa-css-prefix}-fa:before, .#{$fa-css-prefix}-font-awesome:before { content: $fa-var-font-awesome; } .#{$fa-css-prefix}-handshake-o:before { content: $fa-var-handshake-o; } .#{$fa-css-prefix}-envelope-open:before { content: $fa-var-envelope-open; } .#{$fa-css-prefix}-envelope-open-o:before { content: $fa-var-envelope-open-o; } .#{$fa-css-prefix}-linode:before { content: $fa-var-linode; } .#{$fa-css-prefix}-address-book:before { content: $fa-var-address-book; } .#{$fa-css-prefix}-address-book-o:before { content: $fa-var-address-book-o; } .#{$fa-css-prefix}-vcard:before, .#{$fa-css-prefix}-address-card:before { content: $fa-var-address-card; } .#{$fa-css-prefix}-vcard-o:before, .#{$fa-css-prefix}-address-card-o:before { content: $fa-var-address-card-o; } .#{$fa-css-prefix}-user-circle:before { content: $fa-var-user-circle; } .#{$fa-css-prefix}-user-circle-o:before { content: $fa-var-user-circle-o; } .#{$fa-css-prefix}-user-o:before { content: $fa-var-user-o; } .#{$fa-css-prefix}-id-badge:before { content: $fa-var-id-badge; } .#{$fa-css-prefix}-drivers-license:before, .#{$fa-css-prefix}-id-card:before { content: $fa-var-id-card; } .#{$fa-css-prefix}-drivers-license-o:before, .#{$fa-css-prefix}-id-card-o:before { content: $fa-var-id-card-o; } .#{$fa-css-prefix}-quora:before { content: $fa-var-quora; } .#{$fa-css-prefix}-free-code-camp:before { content: $fa-var-free-code-camp; } .#{$fa-css-prefix}-telegram:before { content: $fa-var-telegram; } .#{$fa-css-prefix}-thermometer-4:before, .#{$fa-css-prefix}-thermometer:before, .#{$fa-css-prefix}-thermometer-full:before { content: $fa-var-thermometer-full; } .#{$fa-css-prefix}-thermometer-3:before, .#{$fa-css-prefix}-thermometer-three-quarters:before { content: $fa-var-thermometer-three-quarters; } .#{$fa-css-prefix}-thermometer-2:before, .#{$fa-css-prefix}-thermometer-half:before { content: $fa-var-thermometer-half; } .#{$fa-css-prefix}-thermometer-1:before, .#{$fa-css-prefix}-thermometer-quarter:before { content: $fa-var-thermometer-quarter; } .#{$fa-css-prefix}-thermometer-0:before, .#{$fa-css-prefix}-thermometer-empty:before { content: $fa-var-thermometer-empty; } .#{$fa-css-prefix}-shower:before { content: $fa-var-shower; } .#{$fa-css-prefix}-bathtub:before, .#{$fa-css-prefix}-s15:before, .#{$fa-css-prefix}-bath:before { content: $fa-var-bath; } .#{$fa-css-prefix}-podcast:before { content: $fa-var-podcast; } .#{$fa-css-prefix}-window-maximize:before { content: $fa-var-window-maximize; } .#{$fa-css-prefix}-window-minimize:before { content: $fa-var-window-minimize; } .#{$fa-css-prefix}-window-restore:before { content: $fa-var-window-restore; } .#{$fa-css-prefix}-times-rectangle:before, .#{$fa-css-prefix}-window-close:before { content: $fa-var-window-close; } .#{$fa-css-prefix}-times-rectangle-o:before, .#{$fa-css-prefix}-window-close-o:before { content: $fa-var-window-close-o; } .#{$fa-css-prefix}-bandcamp:before { content: $fa-var-bandcamp; } .#{$fa-css-prefix}-grav:before { content: $fa-var-grav; } .#{$fa-css-prefix}-etsy:before { content: $fa-var-etsy; } .#{$fa-css-prefix}-imdb:before { content: $fa-var-imdb; } .#{$fa-css-prefix}-ravelry:before { content: $fa-var-ravelry; } .#{$fa-css-prefix}-eercast:before { content: $fa-var-eercast; } .#{$fa-css-prefix}-microchip:before { content: $fa-var-microchip; } .#{$fa-css-prefix}-snowflake-o:before { content: $fa-var-snowflake-o; } .#{$fa-css-prefix}-superpowers:before { content: $fa-var-superpowers; } .#{$fa-css-prefix}-wpexplorer:before { content: $fa-var-wpexplorer; } .#{$fa-css-prefix}-meetup:before { content: $fa-var-meetup; } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_larger.scss ================================================ // Icon Sizes // ------------------------- /* makes the font 33% larger relative to the icon container */ .#{$fa-css-prefix}-lg { font-size: (4em / 3); line-height: (3em / 4); vertical-align: -15%; } .#{$fa-css-prefix}-2x { font-size: 2em; } .#{$fa-css-prefix}-3x { font-size: 3em; } .#{$fa-css-prefix}-4x { font-size: 4em; } .#{$fa-css-prefix}-5x { font-size: 5em; } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_list.scss ================================================ // List Icons // ------------------------- .#{$fa-css-prefix}-ul { padding-left: 0; margin-left: $fa-li-width; list-style-type: none; > li { position: relative; } } .#{$fa-css-prefix}-li { position: absolute; left: -$fa-li-width; width: $fa-li-width; top: (2em / 14); text-align: center; &.#{$fa-css-prefix}-lg { left: -$fa-li-width + (4em / 14); } } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_mixins.scss ================================================ // Mixins // -------------------------- @mixin fa-icon() { display: inline-block; font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration font-size: inherit; // can't have font-size inherit on line above, so need to override text-rendering: auto; // optimizelegibility throws things off #1094 -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } @mixin fa-icon-rotate($degrees, $rotation) { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})"; -webkit-transform: rotate($degrees); -ms-transform: rotate($degrees); transform: rotate($degrees); } @mixin fa-icon-flip($horiz, $vert, $rotation) { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}, mirror=1)"; -webkit-transform: scale($horiz, $vert); -ms-transform: scale($horiz, $vert); transform: scale($horiz, $vert); } // Only display content to screen readers. A la Bootstrap 4. // // See: http://a11yproject.com/posts/how-to-hide-content/ @mixin sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; } // Use in conjunction with .sr-only to only display content when it's focused. // // Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1 // // Credit: HTML5 Boilerplate @mixin sr-only-focusable { &:active, &:focus { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; } } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_path.scss ================================================ /* FONT PATH * -------------------------- */ @font-face { font-family: 'FontAwesome'; src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts font-weight: normal; font-style: normal; } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_rotated-flipped.scss ================================================ // Rotated & Flipped Icons // ------------------------- .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } // Hook for IE8-9 // ------------------------- :root .#{$fa-css-prefix}-rotate-90, :root .#{$fa-css-prefix}-rotate-180, :root .#{$fa-css-prefix}-rotate-270, :root .#{$fa-css-prefix}-flip-horizontal, :root .#{$fa-css-prefix}-flip-vertical { filter: none; } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_screen-reader.scss ================================================ // Screen Readers // ------------------------- .sr-only { @include sr-only(); } .sr-only-focusable { @include sr-only-focusable(); } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_stacked.scss ================================================ // Stacked Icons // ------------------------- .#{$fa-css-prefix}-stack { position: relative; display: inline-block; width: 2em; height: 2em; line-height: 2em; vertical-align: middle; } .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { position: absolute; left: 0; width: 100%; text-align: center; } .#{$fa-css-prefix}-stack-1x { line-height: inherit; } .#{$fa-css-prefix}-stack-2x { font-size: 2em; } .#{$fa-css-prefix}-inverse { color: $fa-inverse; } ================================================ FILE: public/vendor/installer/css/scss/font-awesome/_variables.scss ================================================ // Variables // -------------------------- $fa-font-path: "../fonts" !default; $fa-font-size-base: 14px !default; $fa-line-height-base: 1 !default; //$fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.7.0/fonts" !default; // for referencing Bootstrap CDN font files directly $fa-css-prefix: fa !default; $fa-version: "4.7.0" !default; $fa-border-color: #eee !default; $fa-inverse: #fff !default; $fa-li-width: (30em / 14) !default; $fa-var-500px: "\f26e"; $fa-var-address-book: "\f2b9"; $fa-var-address-book-o: "\f2ba"; $fa-var-address-card: "\f2bb"; $fa-var-address-card-o: "\f2bc"; $fa-var-adjust: "\f042"; $fa-var-adn: "\f170"; $fa-var-align-center: "\f037"; $fa-var-align-justify: "\f039"; $fa-var-align-left: "\f036"; $fa-var-align-right: "\f038"; $fa-var-amazon: "\f270"; $fa-var-ambulance: "\f0f9"; $fa-var-american-sign-language-interpreting: "\f2a3"; $fa-var-anchor: "\f13d"; $fa-var-android: "\f17b"; $fa-var-angellist: "\f209"; $fa-var-angle-double-down: "\f103"; $fa-var-angle-double-left: "\f100"; $fa-var-angle-double-right: "\f101"; $fa-var-angle-double-up: "\f102"; $fa-var-angle-down: "\f107"; $fa-var-angle-left: "\f104"; $fa-var-angle-right: "\f105"; $fa-var-angle-up: "\f106"; $fa-var-apple: "\f179"; $fa-var-archive: "\f187"; $fa-var-area-chart: "\f1fe"; $fa-var-arrow-circle-down: "\f0ab"; $fa-var-arrow-circle-left: "\f0a8"; $fa-var-arrow-circle-o-down: "\f01a"; $fa-var-arrow-circle-o-left: "\f190"; $fa-var-arrow-circle-o-right: "\f18e"; $fa-var-arrow-circle-o-up: "\f01b"; $fa-var-arrow-circle-right: "\f0a9"; $fa-var-arrow-circle-up: "\f0aa"; $fa-var-arrow-down: "\f063"; $fa-var-arrow-left: "\f060"; $fa-var-arrow-right: "\f061"; $fa-var-arrow-up: "\f062"; $fa-var-arrows: "\f047"; $fa-var-arrows-alt: "\f0b2"; $fa-var-arrows-h: "\f07e"; $fa-var-arrows-v: "\f07d"; $fa-var-asl-interpreting: "\f2a3"; $fa-var-assistive-listening-systems: "\f2a2"; $fa-var-asterisk: "\f069"; $fa-var-at: "\f1fa"; $fa-var-audio-description: "\f29e"; $fa-var-automobile: "\f1b9"; $fa-var-backward: "\f04a"; $fa-var-balance-scale: "\f24e"; $fa-var-ban: "\f05e"; $fa-var-bandcamp: "\f2d5"; $fa-var-bank: "\f19c"; $fa-var-bar-chart: "\f080"; $fa-var-bar-chart-o: "\f080"; $fa-var-barcode: "\f02a"; $fa-var-bars: "\f0c9"; $fa-var-bath: "\f2cd"; $fa-var-bathtub: "\f2cd"; $fa-var-battery: "\f240"; $fa-var-battery-0: "\f244"; $fa-var-battery-1: "\f243"; $fa-var-battery-2: "\f242"; $fa-var-battery-3: "\f241"; $fa-var-battery-4: "\f240"; $fa-var-battery-empty: "\f244"; $fa-var-battery-full: "\f240"; $fa-var-battery-half: "\f242"; $fa-var-battery-quarter: "\f243"; $fa-var-battery-three-quarters: "\f241"; $fa-var-bed: "\f236"; $fa-var-beer: "\f0fc"; $fa-var-behance: "\f1b4"; $fa-var-behance-square: "\f1b5"; $fa-var-bell: "\f0f3"; $fa-var-bell-o: "\f0a2"; $fa-var-bell-slash: "\f1f6"; $fa-var-bell-slash-o: "\f1f7"; $fa-var-bicycle: "\f206"; $fa-var-binoculars: "\f1e5"; $fa-var-birthday-cake: "\f1fd"; $fa-var-bitbucket: "\f171"; $fa-var-bitbucket-square: "\f172"; $fa-var-bitcoin: "\f15a"; $fa-var-black-tie: "\f27e"; $fa-var-blind: "\f29d"; $fa-var-bluetooth: "\f293"; $fa-var-bluetooth-b: "\f294"; $fa-var-bold: "\f032"; $fa-var-bolt: "\f0e7"; $fa-var-bomb: "\f1e2"; $fa-var-book: "\f02d"; $fa-var-bookmark: "\f02e"; $fa-var-bookmark-o: "\f097"; $fa-var-braille: "\f2a1"; $fa-var-briefcase: "\f0b1"; $fa-var-btc: "\f15a"; $fa-var-bug: "\f188"; $fa-var-building: "\f1ad"; $fa-var-building-o: "\f0f7"; $fa-var-bullhorn: "\f0a1"; $fa-var-bullseye: "\f140"; $fa-var-bus: "\f207"; $fa-var-buysellads: "\f20d"; $fa-var-cab: "\f1ba"; $fa-var-calculator: "\f1ec"; $fa-var-calendar: "\f073"; $fa-var-calendar-check-o: "\f274"; $fa-var-calendar-minus-o: "\f272"; $fa-var-calendar-o: "\f133"; $fa-var-calendar-plus-o: "\f271"; $fa-var-calendar-times-o: "\f273"; $fa-var-camera: "\f030"; $fa-var-camera-retro: "\f083"; $fa-var-car: "\f1b9"; $fa-var-caret-down: "\f0d7"; $fa-var-caret-left: "\f0d9"; $fa-var-caret-right: "\f0da"; $fa-var-caret-square-o-down: "\f150"; $fa-var-caret-square-o-left: "\f191"; $fa-var-caret-square-o-right: "\f152"; $fa-var-caret-square-o-up: "\f151"; $fa-var-caret-up: "\f0d8"; $fa-var-cart-arrow-down: "\f218"; $fa-var-cart-plus: "\f217"; $fa-var-cc: "\f20a"; $fa-var-cc-amex: "\f1f3"; $fa-var-cc-diners-club: "\f24c"; $fa-var-cc-discover: "\f1f2"; $fa-var-cc-jcb: "\f24b"; $fa-var-cc-mastercard: "\f1f1"; $fa-var-cc-paypal: "\f1f4"; $fa-var-cc-stripe: "\f1f5"; $fa-var-cc-visa: "\f1f0"; $fa-var-certificate: "\f0a3"; $fa-var-chain: "\f0c1"; $fa-var-chain-broken: "\f127"; $fa-var-check: "\f00c"; $fa-var-check-circle: "\f058"; $fa-var-check-circle-o: "\f05d"; $fa-var-check-square: "\f14a"; $fa-var-check-square-o: "\f046"; $fa-var-chevron-circle-down: "\f13a"; $fa-var-chevron-circle-left: "\f137"; $fa-var-chevron-circle-right: "\f138"; $fa-var-chevron-circle-up: "\f139"; $fa-var-chevron-down: "\f078"; $fa-var-chevron-left: "\f053"; $fa-var-chevron-right: "\f054"; $fa-var-chevron-up: "\f077"; $fa-var-child: "\f1ae"; $fa-var-chrome: "\f268"; $fa-var-circle: "\f111"; $fa-var-circle-o: "\f10c"; $fa-var-circle-o-notch: "\f1ce"; $fa-var-circle-thin: "\f1db"; $fa-var-clipboard: "\f0ea"; $fa-var-clock-o: "\f017"; $fa-var-clone: "\f24d"; $fa-var-close: "\f00d"; $fa-var-cloud: "\f0c2"; $fa-var-cloud-download: "\f0ed"; $fa-var-cloud-upload: "\f0ee"; $fa-var-cny: "\f157"; $fa-var-code: "\f121"; $fa-var-code-fork: "\f126"; $fa-var-codepen: "\f1cb"; $fa-var-codiepie: "\f284"; $fa-var-coffee: "\f0f4"; $fa-var-cog: "\f013"; $fa-var-cogs: "\f085"; $fa-var-columns: "\f0db"; $fa-var-comment: "\f075"; $fa-var-comment-o: "\f0e5"; $fa-var-commenting: "\f27a"; $fa-var-commenting-o: "\f27b"; $fa-var-comments: "\f086"; $fa-var-comments-o: "\f0e6"; $fa-var-compass: "\f14e"; $fa-var-compress: "\f066"; $fa-var-connectdevelop: "\f20e"; $fa-var-contao: "\f26d"; $fa-var-copy: "\f0c5"; $fa-var-copyright: "\f1f9"; $fa-var-creative-commons: "\f25e"; $fa-var-credit-card: "\f09d"; $fa-var-credit-card-alt: "\f283"; $fa-var-crop: "\f125"; $fa-var-crosshairs: "\f05b"; $fa-var-css3: "\f13c"; $fa-var-cube: "\f1b2"; $fa-var-cubes: "\f1b3"; $fa-var-cut: "\f0c4"; $fa-var-cutlery: "\f0f5"; $fa-var-dashboard: "\f0e4"; $fa-var-dashcube: "\f210"; $fa-var-database: "\f1c0"; $fa-var-deaf: "\f2a4"; $fa-var-deafness: "\f2a4"; $fa-var-dedent: "\f03b"; $fa-var-delicious: "\f1a5"; $fa-var-desktop: "\f108"; $fa-var-deviantart: "\f1bd"; $fa-var-diamond: "\f219"; $fa-var-digg: "\f1a6"; $fa-var-dollar: "\f155"; $fa-var-dot-circle-o: "\f192"; $fa-var-download: "\f019"; $fa-var-dribbble: "\f17d"; $fa-var-drivers-license: "\f2c2"; $fa-var-drivers-license-o: "\f2c3"; $fa-var-dropbox: "\f16b"; $fa-var-drupal: "\f1a9"; $fa-var-edge: "\f282"; $fa-var-edit: "\f044"; $fa-var-eercast: "\f2da"; $fa-var-eject: "\f052"; $fa-var-ellipsis-h: "\f141"; $fa-var-ellipsis-v: "\f142"; $fa-var-empire: "\f1d1"; $fa-var-envelope: "\f0e0"; $fa-var-envelope-o: "\f003"; $fa-var-envelope-open: "\f2b6"; $fa-var-envelope-open-o: "\f2b7"; $fa-var-envelope-square: "\f199"; $fa-var-envira: "\f299"; $fa-var-eraser: "\f12d"; $fa-var-etsy: "\f2d7"; $fa-var-eur: "\f153"; $fa-var-euro: "\f153"; $fa-var-exchange: "\f0ec"; $fa-var-exclamation: "\f12a"; $fa-var-exclamation-circle: "\f06a"; $fa-var-exclamation-triangle: "\f071"; $fa-var-expand: "\f065"; $fa-var-expeditedssl: "\f23e"; $fa-var-external-link: "\f08e"; $fa-var-external-link-square: "\f14c"; $fa-var-eye: "\f06e"; $fa-var-eye-slash: "\f070"; $fa-var-eyedropper: "\f1fb"; $fa-var-fa: "\f2b4"; $fa-var-facebook: "\f09a"; $fa-var-facebook-f: "\f09a"; $fa-var-facebook-official: "\f230"; $fa-var-facebook-square: "\f082"; $fa-var-fast-backward: "\f049"; $fa-var-fast-forward: "\f050"; $fa-var-fax: "\f1ac"; $fa-var-feed: "\f09e"; $fa-var-female: "\f182"; $fa-var-fighter-jet: "\f0fb"; $fa-var-file: "\f15b"; $fa-var-file-archive-o: "\f1c6"; $fa-var-file-audio-o: "\f1c7"; $fa-var-file-code-o: "\f1c9"; $fa-var-file-excel-o: "\f1c3"; $fa-var-file-image-o: "\f1c5"; $fa-var-file-movie-o: "\f1c8"; $fa-var-file-o: "\f016"; $fa-var-file-pdf-o: "\f1c1"; $fa-var-file-photo-o: "\f1c5"; $fa-var-file-picture-o: "\f1c5"; $fa-var-file-powerpoint-o: "\f1c4"; $fa-var-file-sound-o: "\f1c7"; $fa-var-file-text: "\f15c"; $fa-var-file-text-o: "\f0f6"; $fa-var-file-video-o: "\f1c8"; $fa-var-file-word-o: "\f1c2"; $fa-var-file-zip-o: "\f1c6"; $fa-var-files-o: "\f0c5"; $fa-var-film: "\f008"; $fa-var-filter: "\f0b0"; $fa-var-fire: "\f06d"; $fa-var-fire-extinguisher: "\f134"; $fa-var-firefox: "\f269"; $fa-var-first-order: "\f2b0"; $fa-var-flag: "\f024"; $fa-var-flag-checkered: "\f11e"; $fa-var-flag-o: "\f11d"; $fa-var-flash: "\f0e7"; $fa-var-flask: "\f0c3"; $fa-var-flickr: "\f16e"; $fa-var-floppy-o: "\f0c7"; $fa-var-folder: "\f07b"; $fa-var-folder-o: "\f114"; $fa-var-folder-open: "\f07c"; $fa-var-folder-open-o: "\f115"; $fa-var-font: "\f031"; $fa-var-font-awesome: "\f2b4"; $fa-var-fonticons: "\f280"; $fa-var-fort-awesome: "\f286"; $fa-var-forumbee: "\f211"; $fa-var-forward: "\f04e"; $fa-var-foursquare: "\f180"; $fa-var-free-code-camp: "\f2c5"; $fa-var-frown-o: "\f119"; $fa-var-futbol-o: "\f1e3"; $fa-var-gamepad: "\f11b"; $fa-var-gavel: "\f0e3"; $fa-var-gbp: "\f154"; $fa-var-ge: "\f1d1"; $fa-var-gear: "\f013"; $fa-var-gears: "\f085"; $fa-var-genderless: "\f22d"; $fa-var-get-pocket: "\f265"; $fa-var-gg: "\f260"; $fa-var-gg-circle: "\f261"; $fa-var-gift: "\f06b"; $fa-var-git: "\f1d3"; $fa-var-git-square: "\f1d2"; $fa-var-github: "\f09b"; $fa-var-github-alt: "\f113"; $fa-var-github-square: "\f092"; $fa-var-gitlab: "\f296"; $fa-var-gittip: "\f184"; $fa-var-glass: "\f000"; $fa-var-glide: "\f2a5"; $fa-var-glide-g: "\f2a6"; $fa-var-globe: "\f0ac"; $fa-var-google: "\f1a0"; $fa-var-google-plus: "\f0d5"; $fa-var-google-plus-circle: "\f2b3"; $fa-var-google-plus-official: "\f2b3"; $fa-var-google-plus-square: "\f0d4"; $fa-var-google-wallet: "\f1ee"; $fa-var-graduation-cap: "\f19d"; $fa-var-gratipay: "\f184"; $fa-var-grav: "\f2d6"; $fa-var-group: "\f0c0"; $fa-var-h-square: "\f0fd"; $fa-var-hacker-news: "\f1d4"; $fa-var-hand-grab-o: "\f255"; $fa-var-hand-lizard-o: "\f258"; $fa-var-hand-o-down: "\f0a7"; $fa-var-hand-o-left: "\f0a5"; $fa-var-hand-o-right: "\f0a4"; $fa-var-hand-o-up: "\f0a6"; $fa-var-hand-paper-o: "\f256"; $fa-var-hand-peace-o: "\f25b"; $fa-var-hand-pointer-o: "\f25a"; $fa-var-hand-rock-o: "\f255"; $fa-var-hand-scissors-o: "\f257"; $fa-var-hand-spock-o: "\f259"; $fa-var-hand-stop-o: "\f256"; $fa-var-handshake-o: "\f2b5"; $fa-var-hard-of-hearing: "\f2a4"; $fa-var-hashtag: "\f292"; $fa-var-hdd-o: "\f0a0"; $fa-var-header: "\f1dc"; $fa-var-headphones: "\f025"; $fa-var-heart: "\f004"; $fa-var-heart-o: "\f08a"; $fa-var-heartbeat: "\f21e"; $fa-var-history: "\f1da"; $fa-var-home: "\f015"; $fa-var-hospital-o: "\f0f8"; $fa-var-hotel: "\f236"; $fa-var-hourglass: "\f254"; $fa-var-hourglass-1: "\f251"; $fa-var-hourglass-2: "\f252"; $fa-var-hourglass-3: "\f253"; $fa-var-hourglass-end: "\f253"; $fa-var-hourglass-half: "\f252"; $fa-var-hourglass-o: "\f250"; $fa-var-hourglass-start: "\f251"; $fa-var-houzz: "\f27c"; $fa-var-html5: "\f13b"; $fa-var-i-cursor: "\f246"; $fa-var-id-badge: "\f2c1"; $fa-var-id-card: "\f2c2"; $fa-var-id-card-o: "\f2c3"; $fa-var-ils: "\f20b"; $fa-var-image: "\f03e"; $fa-var-imdb: "\f2d8"; $fa-var-inbox: "\f01c"; $fa-var-indent: "\f03c"; $fa-var-industry: "\f275"; $fa-var-info: "\f129"; $fa-var-info-circle: "\f05a"; $fa-var-inr: "\f156"; $fa-var-instagram: "\f16d"; $fa-var-institution: "\f19c"; $fa-var-internet-explorer: "\f26b"; $fa-var-intersex: "\f224"; $fa-var-ioxhost: "\f208"; $fa-var-italic: "\f033"; $fa-var-joomla: "\f1aa"; $fa-var-jpy: "\f157"; $fa-var-jsfiddle: "\f1cc"; $fa-var-key: "\f084"; $fa-var-keyboard-o: "\f11c"; $fa-var-krw: "\f159"; $fa-var-language: "\f1ab"; $fa-var-laptop: "\f109"; $fa-var-lastfm: "\f202"; $fa-var-lastfm-square: "\f203"; $fa-var-leaf: "\f06c"; $fa-var-leanpub: "\f212"; $fa-var-legal: "\f0e3"; $fa-var-lemon-o: "\f094"; $fa-var-level-down: "\f149"; $fa-var-level-up: "\f148"; $fa-var-life-bouy: "\f1cd"; $fa-var-life-buoy: "\f1cd"; $fa-var-life-ring: "\f1cd"; $fa-var-life-saver: "\f1cd"; $fa-var-lightbulb-o: "\f0eb"; $fa-var-line-chart: "\f201"; $fa-var-link: "\f0c1"; $fa-var-linkedin: "\f0e1"; $fa-var-linkedin-square: "\f08c"; $fa-var-linode: "\f2b8"; $fa-var-linux: "\f17c"; $fa-var-list: "\f03a"; $fa-var-list-alt: "\f022"; $fa-var-list-ol: "\f0cb"; $fa-var-list-ul: "\f0ca"; $fa-var-location-arrow: "\f124"; $fa-var-lock: "\f023"; $fa-var-long-arrow-down: "\f175"; $fa-var-long-arrow-left: "\f177"; $fa-var-long-arrow-right: "\f178"; $fa-var-long-arrow-up: "\f176"; $fa-var-low-vision: "\f2a8"; $fa-var-magic: "\f0d0"; $fa-var-magnet: "\f076"; $fa-var-mail-forward: "\f064"; $fa-var-mail-reply: "\f112"; $fa-var-mail-reply-all: "\f122"; $fa-var-male: "\f183"; $fa-var-map: "\f279"; $fa-var-map-marker: "\f041"; $fa-var-map-o: "\f278"; $fa-var-map-pin: "\f276"; $fa-var-map-signs: "\f277"; $fa-var-mars: "\f222"; $fa-var-mars-double: "\f227"; $fa-var-mars-stroke: "\f229"; $fa-var-mars-stroke-h: "\f22b"; $fa-var-mars-stroke-v: "\f22a"; $fa-var-maxcdn: "\f136"; $fa-var-meanpath: "\f20c"; $fa-var-medium: "\f23a"; $fa-var-medkit: "\f0fa"; $fa-var-meetup: "\f2e0"; $fa-var-meh-o: "\f11a"; $fa-var-mercury: "\f223"; $fa-var-microchip: "\f2db"; $fa-var-microphone: "\f130"; $fa-var-microphone-slash: "\f131"; $fa-var-minus: "\f068"; $fa-var-minus-circle: "\f056"; $fa-var-minus-square: "\f146"; $fa-var-minus-square-o: "\f147"; $fa-var-mixcloud: "\f289"; $fa-var-mobile: "\f10b"; $fa-var-mobile-phone: "\f10b"; $fa-var-modx: "\f285"; $fa-var-money: "\f0d6"; $fa-var-moon-o: "\f186"; $fa-var-mortar-board: "\f19d"; $fa-var-motorcycle: "\f21c"; $fa-var-mouse-pointer: "\f245"; $fa-var-music: "\f001"; $fa-var-navicon: "\f0c9"; $fa-var-neuter: "\f22c"; $fa-var-newspaper-o: "\f1ea"; $fa-var-object-group: "\f247"; $fa-var-object-ungroup: "\f248"; $fa-var-odnoklassniki: "\f263"; $fa-var-odnoklassniki-square: "\f264"; $fa-var-opencart: "\f23d"; $fa-var-openid: "\f19b"; $fa-var-opera: "\f26a"; $fa-var-optin-monster: "\f23c"; $fa-var-outdent: "\f03b"; $fa-var-pagelines: "\f18c"; $fa-var-paint-brush: "\f1fc"; $fa-var-paper-plane: "\f1d8"; $fa-var-paper-plane-o: "\f1d9"; $fa-var-paperclip: "\f0c6"; $fa-var-paragraph: "\f1dd"; $fa-var-paste: "\f0ea"; $fa-var-pause: "\f04c"; $fa-var-pause-circle: "\f28b"; $fa-var-pause-circle-o: "\f28c"; $fa-var-paw: "\f1b0"; $fa-var-paypal: "\f1ed"; $fa-var-pencil: "\f040"; $fa-var-pencil-square: "\f14b"; $fa-var-pencil-square-o: "\f044"; $fa-var-percent: "\f295"; $fa-var-phone: "\f095"; $fa-var-phone-square: "\f098"; $fa-var-photo: "\f03e"; $fa-var-picture-o: "\f03e"; $fa-var-pie-chart: "\f200"; $fa-var-pied-piper: "\f2ae"; $fa-var-pied-piper-alt: "\f1a8"; $fa-var-pied-piper-pp: "\f1a7"; $fa-var-pinterest: "\f0d2"; $fa-var-pinterest-p: "\f231"; $fa-var-pinterest-square: "\f0d3"; $fa-var-plane: "\f072"; $fa-var-play: "\f04b"; $fa-var-play-circle: "\f144"; $fa-var-play-circle-o: "\f01d"; $fa-var-plug: "\f1e6"; $fa-var-plus: "\f067"; $fa-var-plus-circle: "\f055"; $fa-var-plus-square: "\f0fe"; $fa-var-plus-square-o: "\f196"; $fa-var-podcast: "\f2ce"; $fa-var-power-off: "\f011"; $fa-var-print: "\f02f"; $fa-var-product-hunt: "\f288"; $fa-var-puzzle-piece: "\f12e"; $fa-var-qq: "\f1d6"; $fa-var-qrcode: "\f029"; $fa-var-question: "\f128"; $fa-var-question-circle: "\f059"; $fa-var-question-circle-o: "\f29c"; $fa-var-quora: "\f2c4"; $fa-var-quote-left: "\f10d"; $fa-var-quote-right: "\f10e"; $fa-var-ra: "\f1d0"; $fa-var-random: "\f074"; $fa-var-ravelry: "\f2d9"; $fa-var-rebel: "\f1d0"; $fa-var-recycle: "\f1b8"; $fa-var-reddit: "\f1a1"; $fa-var-reddit-alien: "\f281"; $fa-var-reddit-square: "\f1a2"; $fa-var-refresh: "\f021"; $fa-var-registered: "\f25d"; $fa-var-remove: "\f00d"; $fa-var-renren: "\f18b"; $fa-var-reorder: "\f0c9"; $fa-var-repeat: "\f01e"; $fa-var-reply: "\f112"; $fa-var-reply-all: "\f122"; $fa-var-resistance: "\f1d0"; $fa-var-retweet: "\f079"; $fa-var-rmb: "\f157"; $fa-var-road: "\f018"; $fa-var-rocket: "\f135"; $fa-var-rotate-left: "\f0e2"; $fa-var-rotate-right: "\f01e"; $fa-var-rouble: "\f158"; $fa-var-rss: "\f09e"; $fa-var-rss-square: "\f143"; $fa-var-rub: "\f158"; $fa-var-ruble: "\f158"; $fa-var-rupee: "\f156"; $fa-var-s15: "\f2cd"; $fa-var-safari: "\f267"; $fa-var-save: "\f0c7"; $fa-var-scissors: "\f0c4"; $fa-var-scribd: "\f28a"; $fa-var-search: "\f002"; $fa-var-search-minus: "\f010"; $fa-var-search-plus: "\f00e"; $fa-var-sellsy: "\f213"; $fa-var-send: "\f1d8"; $fa-var-send-o: "\f1d9"; $fa-var-server: "\f233"; $fa-var-share: "\f064"; $fa-var-share-alt: "\f1e0"; $fa-var-share-alt-square: "\f1e1"; $fa-var-share-square: "\f14d"; $fa-var-share-square-o: "\f045"; $fa-var-shekel: "\f20b"; $fa-var-sheqel: "\f20b"; $fa-var-shield: "\f132"; $fa-var-ship: "\f21a"; $fa-var-shirtsinbulk: "\f214"; $fa-var-shopping-bag: "\f290"; $fa-var-shopping-basket: "\f291"; $fa-var-shopping-cart: "\f07a"; $fa-var-shower: "\f2cc"; $fa-var-sign-in: "\f090"; $fa-var-sign-language: "\f2a7"; $fa-var-sign-out: "\f08b"; $fa-var-signal: "\f012"; $fa-var-signing: "\f2a7"; $fa-var-simplybuilt: "\f215"; $fa-var-sitemap: "\f0e8"; $fa-var-skyatlas: "\f216"; $fa-var-skype: "\f17e"; $fa-var-slack: "\f198"; $fa-var-sliders: "\f1de"; $fa-var-slideshare: "\f1e7"; $fa-var-smile-o: "\f118"; $fa-var-snapchat: "\f2ab"; $fa-var-snapchat-ghost: "\f2ac"; $fa-var-snapchat-square: "\f2ad"; $fa-var-snowflake-o: "\f2dc"; $fa-var-soccer-ball-o: "\f1e3"; $fa-var-sort: "\f0dc"; $fa-var-sort-alpha-asc: "\f15d"; $fa-var-sort-alpha-desc: "\f15e"; $fa-var-sort-amount-asc: "\f160"; $fa-var-sort-amount-desc: "\f161"; $fa-var-sort-asc: "\f0de"; $fa-var-sort-desc: "\f0dd"; $fa-var-sort-down: "\f0dd"; $fa-var-sort-numeric-asc: "\f162"; $fa-var-sort-numeric-desc: "\f163"; $fa-var-sort-up: "\f0de"; $fa-var-soundcloud: "\f1be"; $fa-var-space-shuttle: "\f197"; $fa-var-spinner: "\f110"; $fa-var-spoon: "\f1b1"; $fa-var-spotify: "\f1bc"; $fa-var-square: "\f0c8"; $fa-var-square-o: "\f096"; $fa-var-stack-exchange: "\f18d"; $fa-var-stack-overflow: "\f16c"; $fa-var-star: "\f005"; $fa-var-star-half: "\f089"; $fa-var-star-half-empty: "\f123"; $fa-var-star-half-full: "\f123"; $fa-var-star-half-o: "\f123"; $fa-var-star-o: "\f006"; $fa-var-steam: "\f1b6"; $fa-var-steam-square: "\f1b7"; $fa-var-step-backward: "\f048"; $fa-var-step-forward: "\f051"; $fa-var-stethoscope: "\f0f1"; $fa-var-sticky-note: "\f249"; $fa-var-sticky-note-o: "\f24a"; $fa-var-stop: "\f04d"; $fa-var-stop-circle: "\f28d"; $fa-var-stop-circle-o: "\f28e"; $fa-var-street-view: "\f21d"; $fa-var-strikethrough: "\f0cc"; $fa-var-stumbleupon: "\f1a4"; $fa-var-stumbleupon-circle: "\f1a3"; $fa-var-subscript: "\f12c"; $fa-var-subway: "\f239"; $fa-var-suitcase: "\f0f2"; $fa-var-sun-o: "\f185"; $fa-var-superpowers: "\f2dd"; $fa-var-superscript: "\f12b"; $fa-var-support: "\f1cd"; $fa-var-table: "\f0ce"; $fa-var-tablet: "\f10a"; $fa-var-tachometer: "\f0e4"; $fa-var-tag: "\f02b"; $fa-var-tags: "\f02c"; $fa-var-tasks: "\f0ae"; $fa-var-taxi: "\f1ba"; $fa-var-telegram: "\f2c6"; $fa-var-television: "\f26c"; $fa-var-tencent-weibo: "\f1d5"; $fa-var-terminal: "\f120"; $fa-var-text-height: "\f034"; $fa-var-text-width: "\f035"; $fa-var-th: "\f00a"; $fa-var-th-large: "\f009"; $fa-var-th-list: "\f00b"; $fa-var-themeisle: "\f2b2"; $fa-var-thermometer: "\f2c7"; $fa-var-thermometer-0: "\f2cb"; $fa-var-thermometer-1: "\f2ca"; $fa-var-thermometer-2: "\f2c9"; $fa-var-thermometer-3: "\f2c8"; $fa-var-thermometer-4: "\f2c7"; $fa-var-thermometer-empty: "\f2cb"; $fa-var-thermometer-full: "\f2c7"; $fa-var-thermometer-half: "\f2c9"; $fa-var-thermometer-quarter: "\f2ca"; $fa-var-thermometer-three-quarters: "\f2c8"; $fa-var-thumb-tack: "\f08d"; $fa-var-thumbs-down: "\f165"; $fa-var-thumbs-o-down: "\f088"; $fa-var-thumbs-o-up: "\f087"; $fa-var-thumbs-up: "\f164"; $fa-var-ticket: "\f145"; $fa-var-times: "\f00d"; $fa-var-times-circle: "\f057"; $fa-var-times-circle-o: "\f05c"; $fa-var-times-rectangle: "\f2d3"; $fa-var-times-rectangle-o: "\f2d4"; $fa-var-tint: "\f043"; $fa-var-toggle-down: "\f150"; $fa-var-toggle-left: "\f191"; $fa-var-toggle-off: "\f204"; $fa-var-toggle-on: "\f205"; $fa-var-toggle-right: "\f152"; $fa-var-toggle-up: "\f151"; $fa-var-trademark: "\f25c"; $fa-var-train: "\f238"; $fa-var-transgender: "\f224"; $fa-var-transgender-alt: "\f225"; $fa-var-trash: "\f1f8"; $fa-var-trash-o: "\f014"; $fa-var-tree: "\f1bb"; $fa-var-trello: "\f181"; $fa-var-tripadvisor: "\f262"; $fa-var-trophy: "\f091"; $fa-var-truck: "\f0d1"; $fa-var-try: "\f195"; $fa-var-tty: "\f1e4"; $fa-var-tumblr: "\f173"; $fa-var-tumblr-square: "\f174"; $fa-var-turkish-lira: "\f195"; $fa-var-tv: "\f26c"; $fa-var-twitch: "\f1e8"; $fa-var-twitter: "\f099"; $fa-var-twitter-square: "\f081"; $fa-var-umbrella: "\f0e9"; $fa-var-underline: "\f0cd"; $fa-var-undo: "\f0e2"; $fa-var-universal-access: "\f29a"; $fa-var-university: "\f19c"; $fa-var-unlink: "\f127"; $fa-var-unlock: "\f09c"; $fa-var-unlock-alt: "\f13e"; $fa-var-unsorted: "\f0dc"; $fa-var-upload: "\f093"; $fa-var-usb: "\f287"; $fa-var-usd: "\f155"; $fa-var-user: "\f007"; $fa-var-user-circle: "\f2bd"; $fa-var-user-circle-o: "\f2be"; $fa-var-user-md: "\f0f0"; $fa-var-user-o: "\f2c0"; $fa-var-user-plus: "\f234"; $fa-var-user-secret: "\f21b"; $fa-var-user-times: "\f235"; $fa-var-users: "\f0c0"; $fa-var-vcard: "\f2bb"; $fa-var-vcard-o: "\f2bc"; $fa-var-venus: "\f221"; $fa-var-venus-double: "\f226"; $fa-var-venus-mars: "\f228"; $fa-var-viacoin: "\f237"; $fa-var-viadeo: "\f2a9"; $fa-var-viadeo-square: "\f2aa"; $fa-var-video-camera: "\f03d"; $fa-var-vimeo: "\f27d"; $fa-var-vimeo-square: "\f194"; $fa-var-vine: "\f1ca"; $fa-var-vk: "\f189"; $fa-var-volume-control-phone: "\f2a0"; $fa-var-volume-down: "\f027"; $fa-var-volume-off: "\f026"; $fa-var-volume-up: "\f028"; $fa-var-warning: "\f071"; $fa-var-wechat: "\f1d7"; $fa-var-weibo: "\f18a"; $fa-var-weixin: "\f1d7"; $fa-var-whatsapp: "\f232"; $fa-var-wheelchair: "\f193"; $fa-var-wheelchair-alt: "\f29b"; $fa-var-wifi: "\f1eb"; $fa-var-wikipedia-w: "\f266"; $fa-var-window-close: "\f2d3"; $fa-var-window-close-o: "\f2d4"; $fa-var-window-maximize: "\f2d0"; $fa-var-window-minimize: "\f2d1"; $fa-var-window-restore: "\f2d2"; $fa-var-windows: "\f17a"; $fa-var-won: "\f159"; $fa-var-wordpress: "\f19a"; $fa-var-wpbeginner: "\f297"; $fa-var-wpexplorer: "\f2de"; $fa-var-wpforms: "\f298"; $fa-var-wrench: "\f0ad"; $fa-var-xing: "\f168"; $fa-var-xing-square: "\f169"; $fa-var-y-combinator: "\f23b"; $fa-var-y-combinator-square: "\f1d4"; $fa-var-yahoo: "\f19e"; $fa-var-yc: "\f23b"; $fa-var-yc-square: "\f1d4"; $fa-var-yelp: "\f1e9"; $fa-var-yen: "\f157"; $fa-var-yoast: "\f2b1"; $fa-var-youtube: "\f167"; $fa-var-youtube-play: "\f16a"; $fa-var-youtube-square: "\f166"; ================================================ FILE: public/vendor/installer/css/scss/font-awesome/font-awesome.scss ================================================ /*! * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) */ @import "variables"; @import "mixins"; @import "path"; @import "core"; @import "larger"; @import "fixed-width"; @import "list"; @import "bordered-pulled"; @import "animated"; @import "rotated-flipped"; @import "stacked"; @import "icons"; @import "screen-reader"; ================================================ FILE: public/vendor/installer/css/scss/style.scss ================================================ // Variables @import "variables"; // Font Awesome @import "font-awesome/font-awesome"; //@extend-elements //original selectors //sub, sup %extend_1 { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } //original selectors //button, input, optgroup, select, textarea %extend_2 { color: inherit; font: inherit; margin: 0; } @import url($url_0); html { font-family: $font_0; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; font-family: $font_2, $font_3, $font_4, $font_5, $font_0; font-weight: 300; color: $color_3; font-size: 12px; line-height: 1.75em; input[type=button] { -webkit-appearance: button; cursor: pointer; } input[disabled] { cursor: default; } } body { margin: 0; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -moz-font-feature-settings: "liga" on; } article { display: block; } aside { display: block; } details { display: block; } figcaption { display: block; } figure { display: block; margin: 1em 40px; } footer { display: block; } header { display: block; } hgroup { display: block; } main { display: block; } menu { display: block; } nav { display: block; } section { display: block; } summary { display: block; } audio { display: inline-block; vertical-align: baseline; &:not([controls]) { display: none; height: 0; } } canvas { display: inline-block; vertical-align: baseline; } progress { display: inline-block; vertical-align: baseline; } video { display: inline-block; vertical-align: baseline; } [hidden] { display: none; } template { display: none; } a { background-color: transparent; text-decoration: none; color: $color_5; //Instead of the line below you could use @include transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: all .2s; margin: 0; padding: 0; cursor: pointer; &:active { outline: 0; } &:hover { outline: 0; color: $color_6; } } abbr[title] { border-bottom: 1px dotted; } b { font-weight: 700; margin: 0; padding: 0; } strong { font-weight: 700; margin: 0; padding: 0; } dfn { font-style: italic; margin: 0; padding: 0; } h1 { font-size: 2em; margin: .67em 0; margin-top: .942400822452556em; line-height: 1.130880986943067em; margin-bottom: .188480164490511em; margin: 0; padding: 0; font-family: $font_2, $font_3, $font_4, $font_5, $font_0; font-weight: 500; color: $color_4; clear: both; } mark { background: $color_0; color: $color_1; } small { font-size: 80%; margin: 0; padding: 0; line-height: 0; } sub { @extend %extend_1; bottom: -.25em; margin: 0; padding: 0; line-height: 0; } sup { @extend %extend_1; top: -.5em; margin: 0; padding: 0; line-height: 0; a .fa { font-size: 1em; } } img { border: 0; margin: 0; padding: 0; } hr { //Instead of the line below you could use @include box-sizing($bs) box-sizing: content-box; height: 0; } pre { overflow: auto; padding: .875em; margin-bottom: 1.75em; background: $color_18; line-height: 1; color: $color_30; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px; font-size: 10px; font-family: $font_1; font-size: 1em; margin: 0; padding: 0; margin-bottom: 1.75em; code { padding: 0; } } code { font-family: $font_1; font-size: 1em; margin: 0; padding: 0; font-family: $font_6, $font_7, $font_8, $font_9, $font_1; padding: .0875em .2625em; line-height: 0; } kbd { font-family: $font_1; font-size: 1em; margin: 0; padding: 0; } samp { font-family: $font_1; font-size: 1em; margin: 0; padding: 0; } button { @extend %extend_2; overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; display: block; cursor: pointer; font-size: 12px; padding: .4375em 1.75em; margin-bottom: 1.18125em; } input { @extend %extend_2; line-height: normal; &:focus { background: $color_30; } } optgroup { @extend %extend_2; font-weight: 700; } select { @extend %extend_2; text-transform: none; outline: none; border: 1px solid $color_27; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; width: 100%; height: 35px; } textarea { @extend %extend_2; overflow: auto; display: block; max-width: 100%; padding: .4375em; font-size: 12px; margin-bottom: 1.18125em; outline: none; border: 1px solid $color_27; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } input[type=reset] { -webkit-appearance: button; cursor: pointer; } input[type=submit] { -webkit-appearance: button; cursor: pointer; display: block; cursor: pointer; font-size: 12px; padding: .4375em 1.75em; margin-bottom: 1.18125em; } button[disabled] { cursor: default; } button::-moz-focus-inner { border: 0; padding: 0; } input::-moz-focus-inner { border: 0; padding: 0; } input[type=checkbox] { //Instead of the line below you could use @include box-sizing($bs) box-sizing: border-box; padding: 0; } input[type=radio] { //Instead of the line below you could use @include box-sizing($bs) box-sizing: border-box; padding: 0; } input[type=number]::-webkit-inner-spin-button { height: auto; } input[type=number]::-webkit-outer-spin-button { height: auto; } input[type=search] { -webkit-appearance: textfield; //Instead of the line below you could use @include box-sizing($bs) box-sizing: content-box; } input[type=search]::-webkit-search-cancel-button { -webkit-appearance: none; } input[type=search]::-webkit-search-decoration { -webkit-appearance: none; } fieldset { border: 1px solid $color_2; margin: 0 2px; padding: .35em .625em .75em; padding: .875em 1.75em 1.75em; border-width: 1px; border-style: solid; max-width: 100%; margin-bottom: 1.8375em; margin: 0; padding: 0; button { margin-bottom: 0; } input[type=submit] { margin-bottom: 0; } } legend { border: 0; padding: 0; color: $color_4; font-weight: 700; margin: 0; padding: 0; } table { width: 100%; border-spacing: 0; border-collapse: collapse; margin-bottom: 2.1875em; margin: 0; padding: 0; margin-bottom: 1.75em; } td { padding: 0; margin: 0; padding: 0; padding: .21875em .875em; } th { padding: 0; margin: 0; padding: 0; text-align: left; color: $color_4; padding: .21875em .875em; } @media(min-width:600px) { html { font-size: 12px; } h1 { font-size: calc(27.85438995234061px +18.56959 *((100vw - 600px) / 540)); } h2 { font-size: calc(23.53700340860508px +15.69134 *((100vw - 600px) / 540)); } h3 { font-size: calc(19.888804974891777px +13.2592 *((100vw - 600px) / 540)); } h4 { font-size: calc(16.806071548796314px +11.20405 *((100vw - 600px) / 540)); } h5 { font-size: calc(14.201156945318074px +9.46744 *((100vw - 600px) / 540)); } h6 { font-size: calc(12px +8 *((100vw - 600px) / 540)); } } abbr { margin: 0; padding: 0; border-bottom: 1px dotted currentColor; cursor: help; } acronym { margin: 0; padding: 0; border-bottom: 1px dotted currentColor; cursor: help; } address { margin: 0; padding: 0; margin-bottom: 1.75em; font-style: normal; } big { margin: 0; padding: 0; line-height: 0; } blockquote { margin: 0; padding: 0; margin-bottom: 1.75em; font-style: italic; cite { display: block; font-style: normal; } } caption { margin: 0; padding: 0; } center { margin: 0; padding: 0; } cite { margin: 0; padding: 0; } dd { margin: 0; padding: 0; } del { margin: 0; padding: 0; } dl { margin: 0; padding: 0; margin-bottom: 1.75em; } dt { margin: 0; padding: 0; color: $color_4; font-weight: 700; } em { margin: 0; padding: 0; } form { margin: 0; padding: 0; } h2 { margin: 0; padding: 0; font-family: $font_2, $font_3, $font_4, $font_5, $font_0; font-weight: 500; color: $color_4; clear: both; font-size: 23.53700340860508px; margin-top: 1.115265165420465em; line-height: 1.338318198504558em; margin-bottom: .251483121980101em; } h3 { margin: 0; padding: 0; font-family: $font_2, $font_3, $font_4, $font_5, $font_0; font-weight: 500; color: $color_4; clear: both; font-size: 19.888804974891777px; margin-top: 1.319837970815179em; line-height: 1.583805564978215em; margin-bottom: .303784103173448em; } h4 { margin: 0; padding: 0; font-family: $font_2, $font_3, $font_4, $font_5, $font_0; font-weight: 500; color: $color_4; clear: both; font-size: 16.806071548796314px; margin-top: 1.561935513828041em; line-height: 1.87432261659365em; margin-bottom: .368150361036632em; } h5 { margin: 0; padding: 0; font-family: $font_2, $font_3, $font_4, $font_5, $font_0; font-weight: 500; color: $color_4; clear: both; font-size: 14.201156945318074px; margin-top: 1.84844094752817em; line-height: 2.218129137033805em; margin-bottom: .369688189505634em; } h6 { margin: 0; padding: 0; font-family: $font_2, $font_3, $font_4, $font_5, $font_0; font-weight: 500; color: $color_4; clear: both; font-size: 12px; margin-top: 2.1875em; line-height: 2.625em; margin-bottom: .619791666666667em; } i { margin: 0; padding: 0; } ins { margin: 0; padding: 0; } label { margin: 0; padding: 0; display: block; padding-bottom: .21875em; margin-bottom: -.21875em; cursor: pointer; } li { margin: 0; padding: 0; } ol { margin: 0; padding: 0; margin-bottom: 1.75em; padding-left: 1.4em; } p { margin: 0; padding: 0; margin-bottom: 1.75em; margin: 0 0 1rem 0; } q { margin: 0; padding: 0; } s { margin: 0; padding: 0; } strike { margin: 0; padding: 0; } tbody { margin: 0; padding: 0; } tfoot { margin: 0; padding: 0; } thead { margin: 0; padding: 0; } tr { margin: 0; padding: 0; } tt { margin: 0; padding: 0; } u { margin: 0; padding: 0; } ul { margin: 0; padding: 0; margin-bottom: 1.75em; padding-left: 1.1em; } var { margin: 0; padding: 0; } @media(min-width:1140px) { h1 { font-size: 46.423983253901014px; margin-top: .942400822452556em; line-height: 1.130880986943067em; margin-bottom: .188480164490511em; } h2 { font-size: 39.228339014341806px; margin-top: 1.115265165420465em; line-height: 1.338318198504558em; margin-bottom: .240111086421698em; } h3 { font-size: 33.14800829148629px; margin-top: 1.319837970815179em; line-height: 1.583805564978215em; margin-bottom: .287857499569283em; } h4 { font-size: 28.01011924799386px; margin-top: 1.561935513828041em; line-height: 1.87432261659365em; margin-bottom: .345845057728222em; } h5 { font-size: 23.668594908863454px; margin-top: 1.84844094752817em; line-height: 2.218129137033805em; margin-bottom: .369688189505634em; } h6 { font-size: 20px; margin-top: 2.1875em; line-height: 2.625em; margin-bottom: .473958333333333em; } fieldset { margin-bottom: 2.078125em; } input[type=email] { font-size: 20px; margin-bottom: .5140625em; } input[type=password] { font-size: 20px; margin-bottom: .5140625em; } input[type=text] { font-size: 20px; margin-bottom: .5140625em; } textarea { font-size: 20px; margin-bottom: .5140625em; } button { font-size: 20px; margin-bottom: 1.3125em; } input[type=submit] { font-size: 20px; margin-bottom: 1.3125em; } table { margin-bottom: 2.05625em; } th { padding: .4375em .875em; } td { padding: .4375em .875em; } } input[type=email] { display: block; max-width: 100%; padding: .4375em; font-size: 12px; margin-bottom: 1.18125em; } input[type=password] { display: block; max-width: 100%; padding: .4375em; font-size: 12px; margin-bottom: 1.18125em; } input[type=text] { display: block; max-width: 100%; padding: .4375em; font-size: 12px; margin-bottom: 1.18125em; } .master { background-image: url($url_1); background-size: cover; background-position: top; min-height: 100vh; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; } .box { width: 450px; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 0 0 3px 3px; overflow: hidden; //Instead of the line below you could use @include box-sizing($bs) box-sizing: border-box; //Instead of the line below you could use @include box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 10px 10px $color_7, 0 6px 3px $color_8; } .header { background-color: $color_9; padding: 30px 30px 40px; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px 3px 0 0; text-align: center; } .header__step { font-weight: 300; text-transform: uppercase; font-size: 14px; letter-spacing: 1.1px; margin: 0 0 10px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; //Instead of the line below you could use @include user-select($select) user-select: none; color: $color_10; } .header__title { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; //Instead of the line below you could use @include user-select($select) user-select: none; color: $color_10; font-weight: 400; font-size: 20px; margin: 0 0 15px; } .step { position: relative; z-index: 1; padding-left: 0; list-style: none; margin-bottom: 0; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-direction: row-reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; margin-top: -20px; } .step__divider { background-color: $color_11; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; //Instead of the line below you could use @include user-select($select) user-select: none; width: 60px; height: 3px; &:first-child { -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: 1 0 auto; } &:last-child { -webkit-flex: 1 0 auto; -ms-flex: 1 0 auto; flex: 1 0 auto; } } .step__icon { background-color: $color_11; font-style: normal; width: 40px; height: 40px; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 50%; color: $color_10; &.welcome:before { content: '\f144'; font-family: $font_10; } &.requirements:before { content: '\f127'; font-family: $font_10; } &.permissions:before { content: '\f296'; font-family: $font_10; } &.database:before { content: '\f454'; font-family: $font_10; } &.update:before { content: '\f2bf'; font-family: $font_10; } } .main { margin-top: -20px; background-color: $color_10; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 0 0 3px 3px; padding: 40px 40px 30px; } .buttons { text-align: center; .button { margin: .5em; } } .buttons--right { text-align: right; } .button { display: inline-block; background-color: $color_12; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 2px; padding: 7px 20px; color: $color_10; //Instead of the line below you could use @include box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 1px 1.5px $color_14, 0 1px 1px $color_15; text-decoration: none; outline: none; border: none; //Instead of the line below you could use @include transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: box-shadow .2s ease, background-color .2s ease; cursor: pointer; &:hover { color: $color_10; //Instead of the line below you could use @include box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 10px 10px $color_7, 0 6px 3px $color_8; background-color: $color_16; } } .button--light { padding: 3px 16px; font-size: 16px; border-top: 1px solid $color_17; color: $color_18; background: $color_10; &:hover { color: $color_18; background: $color_10; //Instead of the line below you could use @include box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 3px 3px $color_19, 0 3px 3px $color_8; } } .list { padding-left: 0; list-style: none; margin-bottom: 0; margin: 20px 0 35px; border: 1px solid $color_14; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 2px; .list__item.list__title { background: $color_14; &.success { span { color: $color_31; } .fa:before { color: $color_31; } } &.error { span { color: $color_24; } .fa:before { color: $color_24; } } } } .list__item { position: relative; overflow: hidden; padding: 7px 20px; border-bottom: 1px solid $color_14; &:first-letter { text-transform: uppercase; } &:last-child { border-bottom: none; } .fa.row-icon:before { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; padding: 7px 20px; position: absolute; top: 0; right: 0; bottom: 0; } &.success .fa:before { color: $color_20; } &.error .fa:before { color: $color_21; } } .list__item--permissions { &:before { content: '' !important; } span { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; padding: 7px 20px; position: absolute; top: 0; right: 0; bottom: 0; background-color: $color_22; font-weight: 700; font-size: 16px; &:before { margin-right: 7px; font-weight: 400; } } &.success i:before { color: $color_20; vertical-align: 1px; } &.error i:before { color: $color_21; vertical-align: 1px; } } .textarea { //Instead of the line below you could use @include box-sizing($bs) box-sizing: border-box; width: 100%; font-size: 14px; line-height: 25px; height: 150px; outline: none; border: 1px solid $color_23; ~ .button { margin-bottom: 35px; } } .text-center { text-align: center; } .form-control { height: 14px; width: 100%; } .has-error { color: $color_24; input { color: $color_25; border: 1px solid $color_26; } } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } input[type='text'] { outline: none; border: 1px solid $color_27; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } input[type='password'] { outline: none; border: 1px solid $color_27; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } input[type='url'] { outline: none; border: 1px solid $color_27; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } input[type='number'] { outline: none; border: 1px solid $color_27; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } .tabs { padding: 0; .tab-input { display: none; &:checked + .tab-label { background-color: $color_10; color: $color_29; } } .tab-label { color: $color_28; cursor: pointer; float: left; padding: 1em; text-align: center; -webkit-transition: all 0.1s ease-in-out; -moz-transition: all 0.1s ease-in-out; -o-transition: all 0.1s ease-in-out; //Instead of the line below you could use @include transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: all 0.1s ease-in-out; &:hover { color: $color_29; } } .tabs-wrap { clear: both; } .tab { display: none; > *:last-child { margin-bottom: 0; } } } .float-left { float: left; } .float-right { float: right; } .buttons-container { min-height: 37px; margin: 1em 0 0; } .block { //Instead of the line below you could use @include box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: 0 3px 1px $color_32; input[type='radio'] { width: 100%; display: none; + label { background: $color_33; color: $color_10; padding-top: 5px; -webkit-transition: all 0.1s ease-in-out; -moz-transition: all 0.1s ease-in-out; -o-transition: all 0.1s ease-in-out; //Instead of the line below you could use @include transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: all 0.1s ease-in-out; &:hover { background: $color_34; color: $color_10; padding-top: 5px; } } &:checked { + label { background-color: $color_35; } ~ .info { height: 200px; overflow-y: auto; -webkit-transition: all 0.3s ease-in-out; -moz-transition: all 0.3s ease-in-out; -o-transition: all 0.3s ease-in-out; //Instead of the line below you could use @include transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: all 0.3s ease-in-out; } } ~ .info > div { padding-top: 15px; } } label { width: 450px; max-width: 100%; cursor: pointer; } span { font-family: $font_5; font-weight: 700; display: block; padding: 10px 12px 12px 15px; margin: 0; cursor: pointer; } } .info { background: $color_10; color: $color_18; width: 100%; height: 0; line-height: 2; padding-left: 15px; padding-right: 15px; display: block; overflow: hidden; //Instead of the line below you could use @include box-sizing($bs) box-sizing: border-box; //Instead of the line below you could use @include transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: .3s ease-out; } ::selection { background: $color_18; color: $color_10; } ::-webkit-scrollbar { width: 12px; } ::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px $color_36; -webkit-border-radius: 0; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 0; } ::-webkit-scrollbar-thumb { -webkit-border-radius: 0; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 0; background: $color_37; -webkit-box-shadow: inset 0 0 6px $color_38; } .margin-bottom-1 { margin-bottom: 1em; } .margin-bottom-2 { margin-bottom: 1em; } .margin-top-1 { margin-top: 1em; } .margin-top-2 { margin-top: 1em; } .alert { margin: 0 0 10px; font-size: 1.1em; background-color: $color_22; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px; padding: 10px; position: relative; &.alert-danger { background: $color_24; color: $color_39; padding: 10px 20px 15px; h4 { color: $color_39; margin: 0; } ul { margin: 0; } } .close { width: 25px; height: 25px; padding: 0; margin: 0; //Instead of the line below you could use @include box-shadow($shadow-1, $shadow-2, $shadow-3, $shadow-4, $shadow-5, $shadow-6, $shadow-7, $shadow-8, $shadow-9, $shadow-10) box-shadow: none; border: 2px solid $color_26; outline: none; float: right; //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 50%; position: absolute; right: 0; top: 0; background-color: transparent; cursor: pointer; -webkit-transition: all 0.1s ease-in-out; -moz-transition: all 0.1s ease-in-out; -o-transition: all 0.1s ease-in-out; //Instead of the line below you could use @include transition($transition-1, $transition-2, $transition-3, $transition-4, $transition-5, $transition-6, $transition-7, $transition-8, $transition-9, $transition-10) transition: all 0.1s ease-in-out; &:hover { background-color: $color_39; color: $color_24; } } } svg:not(:root) { overflow: hidden; } .step__item.active .step__icon, .step__item.active~.step__divider, .step__item.active~.step__item .step__icon { background-color: $color_12; -webkit-transition: all 0.1s ease-in-out; -moz-transition: all 0.1s ease-in-out; -o-transition: all 0.1s ease-in-out; transition: all 0.1s ease-in-out; } .step__item.active .step__icon:hover, .step__item.active~.step__item .step__icon:hover { background-color: $color_13; } .form-group.has-error { select { border-color: $color_24; } textarea { border-color: $color_24; } input[type='text'] { border-color: $color_24; } input[type='password'] { border-color: $color_24; } input[type='url'] { border-color: $color_24; } input[type='number'] { border-color: $color_24; } .error-block { margin: -12px 0 0; display: block; width: 100%; font-size: .9em; color: $color_24; font-weight: 500; } } .tabs-full .tab-label { display: table-cell; float: none; width: 1%; } #tab1:checked ~ .tabs-wrap #tab1content { display: block; } #tab2:checked ~ .tabs-wrap #tab2content { display: block; } #tab3:checked ~ .tabs-wrap #tab3content { display: block; } #tab4:checked ~ .tabs-wrap #tab4content { display: block; } #tab5:checked ~ .tabs-wrap #tab5content { display: block; } .github img { position: absolute; top: 0; right: 0; border: 0; } #tab3content .block { &:first-child { //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 3px 3px 0 0; } &:last-child { //Instead of the line below you could use @include border-radius($radius, $vertical-radius) border-radius: 0 0 3px 3px; } } ================================================ FILE: public/vendor/installer/css/style.css ================================================ @charset "UTF-8"; /*! * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) */ /* FONT PATH * -------------------------- */ @import url("https://fonts.googleapis.com/css?family=Roboto:400,300,500,700,900"); @font-face { font-family: 'FontAwesome'; src: url("../fonts/fontawesome-webfont.eot?v=4.7.0"); src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("../fonts/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg"); font-weight: normal; font-style: normal; } .fa { display: inline-block; font: normal normal normal 14px/1 FontAwesome; font-size: inherit; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* makes the font 33% larger relative to the icon container */ .fa-lg { font-size: 1.3333333333em; line-height: 0.75em; vertical-align: -15%; } .fa-2x { font-size: 2em; } .fa-3x { font-size: 3em; } .fa-4x { font-size: 4em; } .fa-5x { font-size: 5em; } .fa-fw { width: 1.2857142857em; text-align: center; } .fa-ul { padding-left: 0; margin-left: 2.1428571429em; list-style-type: none; } .fa-ul > li { position: relative; } .fa-li { position: absolute; left: -2.1428571429em; width: 2.1428571429em; top: 0.1428571429em; text-align: center; } .fa-li.fa-lg { left: -1.8571428571em; } .fa-border { padding: .2em .25em .15em; border: solid 0.08em #eee; border-radius: .1em; } .fa-pull-left { float: left; } .fa-pull-right { float: right; } .fa.fa-pull-left { margin-right: .3em; } .fa.fa-pull-right { margin-left: .3em; } /* Deprecated as of 4.4.0 */ .pull-right { float: right; } .pull-left { float: left; } .fa.pull-left { margin-right: .3em; } .fa.pull-right { margin-left: .3em; } .fa-spin { -webkit-animation: fa-spin 2s infinite linear; animation: fa-spin 2s infinite linear; } .fa-pulse { -webkit-animation: fa-spin 1s infinite steps(8); animation: fa-spin 1s infinite steps(8); } @-webkit-keyframes fa-spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); } } @keyframes fa-spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); } 100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); } } .fa-rotate-90 { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; -webkit-transform: rotate(90deg); transform: rotate(90deg); } .fa-rotate-180 { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; -webkit-transform: rotate(180deg); transform: rotate(180deg); } .fa-rotate-270 { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; -webkit-transform: rotate(270deg); transform: rotate(270deg); } .fa-flip-horizontal { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; -webkit-transform: scale(-1, 1); transform: scale(-1, 1); } .fa-flip-vertical { -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; -webkit-transform: scale(1, -1); transform: scale(1, -1); } :root .fa-rotate-90, :root .fa-rotate-180, :root .fa-rotate-270, :root .fa-flip-horizontal, :root .fa-flip-vertical { -webkit-filter: none; filter: none; } .fa-stack { position: relative; display: inline-block; width: 2em; height: 2em; line-height: 2em; vertical-align: middle; } .fa-stack-1x, .fa-stack-2x { position: absolute; left: 0; width: 100%; text-align: center; } .fa-stack-1x { line-height: inherit; } .fa-stack-2x { font-size: 2em; } .fa-inverse { color: #fff; } /* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen readers do not read off random characters that represent icons */ .fa-glass:before { content: ""; } .fa-music:before { content: ""; } .fa-search:before { content: ""; } .fa-envelope-o:before { content: ""; } .fa-heart:before { content: ""; } .fa-star:before { content: ""; } .fa-star-o:before { content: ""; } .fa-user:before { content: ""; } .fa-film:before { content: ""; } .fa-th-large:before { content: ""; } .fa-th:before { content: ""; } .fa-th-list:before { content: ""; } .fa-check:before { content: ""; } .fa-remove:before, .fa-close:before, .fa-times:before { content: ""; } .fa-search-plus:before { content: ""; } .fa-search-minus:before { content: ""; } .fa-power-off:before { content: ""; } .fa-signal:before { content: ""; } .fa-gear:before, .fa-cog:before { content: ""; } .fa-trash-o:before { content: ""; } .fa-home:before { content: ""; } .fa-file-o:before { content: ""; } .fa-clock-o:before { content: ""; } .fa-road:before { content: ""; } .fa-download:before { content: ""; } .fa-arrow-circle-o-down:before { content: ""; } .fa-arrow-circle-o-up:before { content: ""; } .fa-inbox:before { content: ""; } .fa-play-circle-o:before { content: ""; } .fa-rotate-right:before, .fa-repeat:before { content: ""; } .fa-refresh:before { content: ""; } .fa-list-alt:before { content: ""; } .fa-lock:before { content: ""; } .fa-flag:before { content: ""; } .fa-headphones:before { content: ""; } .fa-volume-off:before { content: ""; } .fa-volume-down:before { content: ""; } .fa-volume-up:before { content: ""; } .fa-qrcode:before { content: ""; } .fa-barcode:before { content: ""; } .fa-tag:before { content: ""; } .fa-tags:before { content: ""; } .fa-book:before { content: ""; } .fa-bookmark:before { content: ""; } .fa-print:before { content: ""; } .fa-camera:before { content: ""; } .fa-font:before { content: ""; } .fa-bold:before { content: ""; } .fa-italic:before { content: ""; } .fa-text-height:before { content: ""; } .fa-text-width:before { content: ""; } .fa-align-left:before { content: ""; } .fa-align-center:before { content: ""; } .fa-align-right:before { content: ""; } .fa-align-justify:before { content: ""; } .fa-list:before { content: ""; } .fa-dedent:before, .fa-outdent:before { content: ""; } .fa-indent:before { content: ""; } .fa-video-camera:before { content: ""; } .fa-photo:before, .fa-image:before, .fa-picture-o:before { content: ""; } .fa-pencil:before { content: ""; } .fa-map-marker:before { content: ""; } .fa-adjust:before { content: ""; } .fa-tint:before { content: ""; } .fa-edit:before, .fa-pencil-square-o:before { content: ""; } .fa-share-square-o:before { content: ""; } .fa-check-square-o:before { content: ""; } .fa-arrows:before { content: ""; } .fa-step-backward:before { content: ""; } .fa-fast-backward:before { content: ""; } .fa-backward:before { content: ""; } .fa-play:before { content: ""; } .fa-pause:before { content: ""; } .fa-stop:before { content: ""; } .fa-forward:before { content: ""; } .fa-fast-forward:before { content: ""; } .fa-step-forward:before { content: ""; } .fa-eject:before { content: ""; } .fa-chevron-left:before { content: ""; } .fa-chevron-right:before { content: ""; } .fa-plus-circle:before { content: ""; } .fa-minus-circle:before { content: ""; } .fa-times-circle:before { content: ""; } .fa-check-circle:before { content: ""; } .fa-question-circle:before { content: ""; } .fa-info-circle:before { content: ""; } .fa-crosshairs:before { content: ""; } .fa-times-circle-o:before { content: ""; } .fa-check-circle-o:before { content: ""; } .fa-ban:before { content: ""; } .fa-arrow-left:before { content: ""; } .fa-arrow-right:before { content: ""; } .fa-arrow-up:before { content: ""; } .fa-arrow-down:before { content: ""; } .fa-mail-forward:before, .fa-share:before { content: ""; } .fa-expand:before { content: ""; } .fa-compress:before { content: ""; } .fa-plus:before { content: ""; } .fa-minus:before { content: ""; } .fa-asterisk:before { content: ""; } .fa-exclamation-circle:before { content: ""; } .fa-gift:before { content: ""; } .fa-leaf:before { content: ""; } .fa-fire:before { content: ""; } .fa-eye:before { content: ""; } .fa-eye-slash:before { content: ""; } .fa-warning:before, .fa-exclamation-triangle:before { content: ""; } .fa-plane:before { content: ""; } .fa-calendar:before { content: ""; } .fa-random:before { content: ""; } .fa-comment:before { content: ""; } .fa-magnet:before { content: ""; } .fa-chevron-up:before { content: ""; } .fa-chevron-down:before { content: ""; } .fa-retweet:before { content: ""; } .fa-shopping-cart:before { content: ""; } .fa-folder:before { content: ""; } .fa-folder-open:before { content: ""; } .fa-arrows-v:before { content: ""; } .fa-arrows-h:before { content: ""; } .fa-bar-chart-o:before, .fa-bar-chart:before { content: ""; } .fa-twitter-square:before { content: ""; } .fa-facebook-square:before { content: ""; } .fa-camera-retro:before { content: ""; } .fa-key:before { content: ""; } .fa-gears:before, .fa-cogs:before { content: ""; } .fa-comments:before { content: ""; } .fa-thumbs-o-up:before { content: ""; } .fa-thumbs-o-down:before { content: ""; } .fa-star-half:before { content: ""; } .fa-heart-o:before { content: ""; } .fa-sign-out:before { content: ""; } .fa-linkedin-square:before { content: ""; } .fa-thumb-tack:before { content: ""; } .fa-external-link:before { content: ""; } .fa-sign-in:before { content: ""; } .fa-trophy:before { content: ""; } .fa-github-square:before { content: ""; } .fa-upload:before { content: ""; } .fa-lemon-o:before { content: ""; } .fa-phone:before { content: ""; } .fa-square-o:before { content: ""; } .fa-bookmark-o:before { content: ""; } .fa-phone-square:before { content: ""; } .fa-twitter:before { content: ""; } .fa-facebook-f:before, .fa-facebook:before { content: ""; } .fa-github:before { content: ""; } .fa-unlock:before { content: ""; } .fa-credit-card:before { content: ""; } .fa-feed:before, .fa-rss:before { content: ""; } .fa-hdd-o:before { content: ""; } .fa-bullhorn:before { content: ""; } .fa-bell:before { content: ""; } .fa-certificate:before { content: ""; } .fa-hand-o-right:before { content: ""; } .fa-hand-o-left:before { content: ""; } .fa-hand-o-up:before { content: ""; } .fa-hand-o-down:before { content: ""; } .fa-arrow-circle-left:before { content: ""; } .fa-arrow-circle-right:before { content: ""; } .fa-arrow-circle-up:before { content: ""; } .fa-arrow-circle-down:before { content: ""; } .fa-globe:before { content: ""; } .fa-wrench:before { content: ""; } .fa-tasks:before { content: ""; } .fa-filter:before { content: ""; } .fa-briefcase:before { content: ""; } .fa-arrows-alt:before { content: ""; } .fa-group:before, .fa-users:before { content: ""; } .fa-chain:before, .fa-link:before { content: ""; } .fa-cloud:before { content: ""; } .fa-flask:before { content: ""; } .fa-cut:before, .fa-scissors:before { content: ""; } .fa-copy:before, .fa-files-o:before { content: ""; } .fa-paperclip:before { content: ""; } .fa-save:before, .fa-floppy-o:before { content: ""; } .fa-square:before { content: ""; } .fa-navicon:before, .fa-reorder:before, .fa-bars:before { content: ""; } .fa-list-ul:before { content: ""; } .fa-list-ol:before { content: ""; } .fa-strikethrough:before { content: ""; } .fa-underline:before { content: ""; } .fa-table:before { content: ""; } .fa-magic:before { content: ""; } .fa-truck:before { content: ""; } .fa-pinterest:before { content: ""; } .fa-pinterest-square:before { content: ""; } .fa-google-plus-square:before { content: ""; } .fa-google-plus:before { content: ""; } .fa-money:before { content: ""; } .fa-caret-down:before { content: ""; } .fa-caret-up:before { content: ""; } .fa-caret-left:before { content: ""; } .fa-caret-right:before { content: ""; } .fa-columns:before { content: ""; } .fa-unsorted:before, .fa-sort:before { content: ""; } .fa-sort-down:before, .fa-sort-desc:before { content: ""; } .fa-sort-up:before, .fa-sort-asc:before { content: ""; } .fa-envelope:before { content: ""; } .fa-linkedin:before { content: ""; } .fa-rotate-left:before, .fa-undo:before { content: ""; } .fa-legal:before, .fa-gavel:before { content: ""; } .fa-dashboard:before, .fa-tachometer:before { content: ""; } .fa-comment-o:before { content: ""; } .fa-comments-o:before { content: ""; } .fa-flash:before, .fa-bolt:before { content: ""; } .fa-sitemap:before { content: ""; } .fa-umbrella:before { content: ""; } .fa-paste:before, .fa-clipboard:before { content: ""; } .fa-lightbulb-o:before { content: ""; } .fa-exchange:before { content: ""; } .fa-cloud-download:before { content: ""; } .fa-cloud-upload:before { content: ""; } .fa-user-md:before { content: ""; } .fa-stethoscope:before { content: ""; } .fa-suitcase:before { content: ""; } .fa-bell-o:before { content: ""; } .fa-coffee:before { content: ""; } .fa-cutlery:before { content: ""; } .fa-file-text-o:before { content: ""; } .fa-building-o:before { content: ""; } .fa-hospital-o:before { content: ""; } .fa-ambulance:before { content: ""; } .fa-medkit:before { content: ""; } .fa-fighter-jet:before { content: ""; } .fa-beer:before { content: ""; } .fa-h-square:before { content: ""; } .fa-plus-square:before { content: ""; } .fa-angle-double-left:before { content: ""; } .fa-angle-double-right:before { content: ""; } .fa-angle-double-up:before { content: ""; } .fa-angle-double-down:before { content: ""; } .fa-angle-left:before { content: ""; } .fa-angle-right:before { content: ""; } .fa-angle-up:before { content: ""; } .fa-angle-down:before { content: ""; } .fa-desktop:before { content: ""; } .fa-laptop:before { content: ""; } .fa-tablet:before { content: ""; } .fa-mobile-phone:before, .fa-mobile:before { content: ""; } .fa-circle-o:before { content: ""; } .fa-quote-left:before { content: ""; } .fa-quote-right:before { content: ""; } .fa-spinner:before { content: ""; } .fa-circle:before { content: ""; } .fa-mail-reply:before, .fa-reply:before { content: ""; } .fa-github-alt:before { content: ""; } .fa-folder-o:before { content: ""; } .fa-folder-open-o:before { content: ""; } .fa-smile-o:before { content: ""; } .fa-frown-o:before { content: ""; } .fa-meh-o:before { content: ""; } .fa-gamepad:before { content: ""; } .fa-keyboard-o:before { content: ""; } .fa-flag-o:before { content: ""; } .fa-flag-checkered:before { content: ""; } .fa-terminal:before { content: ""; } .fa-code:before { content: ""; } .fa-mail-reply-all:before, .fa-reply-all:before { content: ""; } .fa-star-half-empty:before, .fa-star-half-full:before, .fa-star-half-o:before { content: ""; } .fa-location-arrow:before { content: ""; } .fa-crop:before { content: ""; } .fa-code-fork:before { content: ""; } .fa-unlink:before, .fa-chain-broken:before { content: ""; } .fa-question:before { content: ""; } .fa-info:before { content: ""; } .fa-exclamation:before { content: ""; } .fa-superscript:before { content: ""; } .fa-subscript:before { content: ""; } .fa-eraser:before { content: ""; } .fa-puzzle-piece:before { content: ""; } .fa-microphone:before { content: ""; } .fa-microphone-slash:before { content: ""; } .fa-shield:before { content: ""; } .fa-calendar-o:before { content: ""; } .fa-fire-extinguisher:before { content: ""; } .fa-rocket:before { content: ""; } .fa-maxcdn:before { content: ""; } .fa-chevron-circle-left:before { content: ""; } .fa-chevron-circle-right:before { content: ""; } .fa-chevron-circle-up:before { content: ""; } .fa-chevron-circle-down:before { content: ""; } .fa-html5:before { content: ""; } .fa-css3:before { content: ""; } .fa-anchor:before { content: ""; } .fa-unlock-alt:before { content: ""; } .fa-bullseye:before { content: ""; } .fa-ellipsis-h:before { content: ""; } .fa-ellipsis-v:before { content: ""; } .fa-rss-square:before { content: ""; } .fa-play-circle:before { content: ""; } .fa-ticket:before { content: ""; } .fa-minus-square:before { content: ""; } .fa-minus-square-o:before { content: ""; } .fa-level-up:before { content: ""; } .fa-level-down:before { content: ""; } .fa-check-square:before { content: ""; } .fa-pencil-square:before { content: ""; } .fa-external-link-square:before { content: ""; } .fa-share-square:before { content: ""; } .fa-compass:before { content: ""; } .fa-toggle-down:before, .fa-caret-square-o-down:before { content: ""; } .fa-toggle-up:before, .fa-caret-square-o-up:before { content: ""; } .fa-toggle-right:before, .fa-caret-square-o-right:before { content: ""; } .fa-euro:before, .fa-eur:before { content: ""; } .fa-gbp:before { content: ""; } .fa-dollar:before, .fa-usd:before { content: ""; } .fa-rupee:before, .fa-inr:before { content: ""; } .fa-cny:before, .fa-rmb:before, .fa-yen:before, .fa-jpy:before { content: ""; } .fa-ruble:before, .fa-rouble:before, .fa-rub:before { content: ""; } .fa-won:before, .fa-krw:before { content: ""; } .fa-bitcoin:before, .fa-btc:before { content: ""; } .fa-file:before { content: ""; } .fa-file-text:before { content: ""; } .fa-sort-alpha-asc:before { content: ""; } .fa-sort-alpha-desc:before { content: ""; } .fa-sort-amount-asc:before { content: ""; } .fa-sort-amount-desc:before { content: ""; } .fa-sort-numeric-asc:before { content: ""; } .fa-sort-numeric-desc:before { content: ""; } .fa-thumbs-up:before { content: ""; } .fa-thumbs-down:before { content: ""; } .fa-youtube-square:before { content: ""; } .fa-youtube:before { content: ""; } .fa-xing:before { content: ""; } .fa-xing-square:before { content: ""; } .fa-youtube-play:before { content: ""; } .fa-dropbox:before { content: ""; } .fa-stack-overflow:before { content: ""; } .fa-instagram:before { content: ""; } .fa-flickr:before { content: ""; } .fa-adn:before { content: ""; } .fa-bitbucket:before { content: ""; } .fa-bitbucket-square:before { content: ""; } .fa-tumblr:before { content: ""; } .fa-tumblr-square:before { content: ""; } .fa-long-arrow-down:before { content: ""; } .fa-long-arrow-up:before { content: ""; } .fa-long-arrow-left:before { content: ""; } .fa-long-arrow-right:before { content: ""; } .fa-apple:before { content: ""; } .fa-windows:before { content: ""; } .fa-android:before { content: ""; } .fa-linux:before { content: ""; } .fa-dribbble:before { content: ""; } .fa-skype:before { content: ""; } .fa-foursquare:before { content: ""; } .fa-trello:before { content: ""; } .fa-female:before { content: ""; } .fa-male:before { content: ""; } .fa-gittip:before, .fa-gratipay:before { content: ""; } .fa-sun-o:before { content: ""; } .fa-moon-o:before { content: ""; } .fa-archive:before { content: ""; } .fa-bug:before { content: ""; } .fa-vk:before { content: ""; } .fa-weibo:before { content: ""; } .fa-renren:before { content: ""; } .fa-pagelines:before { content: ""; } .fa-stack-exchange:before { content: ""; } .fa-arrow-circle-o-right:before { content: ""; } .fa-arrow-circle-o-left:before { content: ""; } .fa-toggle-left:before, .fa-caret-square-o-left:before { content: ""; } .fa-dot-circle-o:before { content: ""; } .fa-wheelchair:before { content: ""; } .fa-vimeo-square:before { content: ""; } .fa-turkish-lira:before, .fa-try:before { content: ""; } .fa-plus-square-o:before { content: ""; } .fa-space-shuttle:before { content: ""; } .fa-slack:before { content: ""; } .fa-envelope-square:before { content: ""; } .fa-wordpress:before { content: ""; } .fa-openid:before { content: ""; } .fa-institution:before, .fa-bank:before, .fa-university:before { content: ""; } .fa-mortar-board:before, .fa-graduation-cap:before { content: ""; } .fa-yahoo:before { content: ""; } .fa-google:before { content: ""; } .fa-reddit:before { content: ""; } .fa-reddit-square:before { content: ""; } .fa-stumbleupon-circle:before { content: ""; } .fa-stumbleupon:before { content: ""; } .fa-delicious:before { content: ""; } .fa-digg:before { content: ""; } .fa-pied-piper-pp:before { content: ""; } .fa-pied-piper-alt:before { content: ""; } .fa-drupal:before { content: ""; } .fa-joomla:before { content: ""; } .fa-language:before { content: ""; } .fa-fax:before { content: ""; } .fa-building:before { content: ""; } .fa-child:before { content: ""; } .fa-paw:before { content: ""; } .fa-spoon:before { content: ""; } .fa-cube:before { content: ""; } .fa-cubes:before { content: ""; } .fa-behance:before { content: ""; } .fa-behance-square:before { content: ""; } .fa-steam:before { content: ""; } .fa-steam-square:before { content: ""; } .fa-recycle:before { content: ""; } .fa-automobile:before, .fa-car:before { content: ""; } .fa-cab:before, .fa-taxi:before { content: ""; } .fa-tree:before { content: ""; } .fa-spotify:before { content: ""; } .fa-deviantart:before { content: ""; } .fa-soundcloud:before { content: ""; } .fa-database:before { content: ""; } .fa-file-pdf-o:before { content: ""; } .fa-file-word-o:before { content: ""; } .fa-file-excel-o:before { content: ""; } .fa-file-powerpoint-o:before { content: ""; } .fa-file-photo-o:before, .fa-file-picture-o:before, .fa-file-image-o:before { content: ""; } .fa-file-zip-o:before, .fa-file-archive-o:before { content: ""; } .fa-file-sound-o:before, .fa-file-audio-o:before { content: ""; } .fa-file-movie-o:before, .fa-file-video-o:before { content: ""; } .fa-file-code-o:before { content: ""; } .fa-vine:before { content: ""; } .fa-codepen:before { content: ""; } .fa-jsfiddle:before { content: ""; } .fa-life-bouy:before, .fa-life-buoy:before, .fa-life-saver:before, .fa-support:before, .fa-life-ring:before { content: ""; } .fa-circle-o-notch:before { content: ""; } .fa-ra:before, .fa-resistance:before, .fa-rebel:before { content: ""; } .fa-ge:before, .fa-empire:before { content: ""; } .fa-git-square:before { content: ""; } .fa-git:before { content: ""; } .fa-y-combinator-square:before, .fa-yc-square:before, .fa-hacker-news:before { content: ""; } .fa-tencent-weibo:before { content: ""; } .fa-qq:before { content: ""; } .fa-wechat:before, .fa-weixin:before { content: ""; } .fa-send:before, .fa-paper-plane:before { content: ""; } .fa-send-o:before, .fa-paper-plane-o:before { content: ""; } .fa-history:before { content: ""; } .fa-circle-thin:before { content: ""; } .fa-header:before { content: ""; } .fa-paragraph:before { content: ""; } .fa-sliders:before { content: ""; } .fa-share-alt:before { content: ""; } .fa-share-alt-square:before { content: ""; } .fa-bomb:before { content: ""; } .fa-soccer-ball-o:before, .fa-futbol-o:before { content: ""; } .fa-tty:before { content: ""; } .fa-binoculars:before { content: ""; } .fa-plug:before { content: ""; } .fa-slideshare:before { content: ""; } .fa-twitch:before { content: ""; } .fa-yelp:before { content: ""; } .fa-newspaper-o:before { content: ""; } .fa-wifi:before { content: ""; } .fa-calculator:before { content: ""; } .fa-paypal:before { content: ""; } .fa-google-wallet:before { content: ""; } .fa-cc-visa:before { content: ""; } .fa-cc-mastercard:before { content: ""; } .fa-cc-discover:before { content: ""; } .fa-cc-amex:before { content: ""; } .fa-cc-paypal:before { content: ""; } .fa-cc-stripe:before { content: ""; } .fa-bell-slash:before { content: ""; } .fa-bell-slash-o:before { content: ""; } .fa-trash:before { content: ""; } .fa-copyright:before { content: ""; } .fa-at:before { content: ""; } .fa-eyedropper:before { content: ""; } .fa-paint-brush:before { content: ""; } .fa-birthday-cake:before { content: ""; } .fa-area-chart:before { content: ""; } .fa-pie-chart:before { content: ""; } .fa-line-chart:before { content: ""; } .fa-lastfm:before { content: ""; } .fa-lastfm-square:before { content: ""; } .fa-toggle-off:before { content: ""; } .fa-toggle-on:before { content: ""; } .fa-bicycle:before { content: ""; } .fa-bus:before { content: ""; } .fa-ioxhost:before { content: ""; } .fa-angellist:before { content: ""; } .fa-cc:before { content: ""; } .fa-shekel:before, .fa-sheqel:before, .fa-ils:before { content: ""; } .fa-meanpath:before { content: ""; } .fa-buysellads:before { content: ""; } .fa-connectdevelop:before { content: ""; } .fa-dashcube:before { content: ""; } .fa-forumbee:before { content: ""; } .fa-leanpub:before { content: ""; } .fa-sellsy:before { content: ""; } .fa-shirtsinbulk:before { content: ""; } .fa-simplybuilt:before { content: ""; } .fa-skyatlas:before { content: ""; } .fa-cart-plus:before { content: ""; } .fa-cart-arrow-down:before { content: ""; } .fa-diamond:before { content: ""; } .fa-ship:before { content: ""; } .fa-user-secret:before { content: ""; } .fa-motorcycle:before { content: ""; } .fa-street-view:before { content: ""; } .fa-heartbeat:before { content: ""; } .fa-venus:before { content: ""; } .fa-mars:before { content: ""; } .fa-mercury:before { content: ""; } .fa-intersex:before, .fa-transgender:before { content: ""; } .fa-transgender-alt:before { content: ""; } .fa-venus-double:before { content: ""; } .fa-mars-double:before { content: ""; } .fa-venus-mars:before { content: ""; } .fa-mars-stroke:before { content: ""; } .fa-mars-stroke-v:before { content: ""; } .fa-mars-stroke-h:before { content: ""; } .fa-neuter:before { content: ""; } .fa-genderless:before { content: ""; } .fa-facebook-official:before { content: ""; } .fa-pinterest-p:before { content: ""; } .fa-whatsapp:before { content: ""; } .fa-server:before { content: ""; } .fa-user-plus:before { content: ""; } .fa-user-times:before { content: ""; } .fa-hotel:before, .fa-bed:before { content: ""; } .fa-viacoin:before { content: ""; } .fa-train:before { content: ""; } .fa-subway:before { content: ""; } .fa-medium:before { content: ""; } .fa-yc:before, .fa-y-combinator:before { content: ""; } .fa-optin-monster:before { content: ""; } .fa-opencart:before { content: ""; } .fa-expeditedssl:before { content: ""; } .fa-battery-4:before, .fa-battery:before, .fa-battery-full:before { content: ""; } .fa-battery-3:before, .fa-battery-three-quarters:before { content: ""; } .fa-battery-2:before, .fa-battery-half:before { content: ""; } .fa-battery-1:before, .fa-battery-quarter:before { content: ""; } .fa-battery-0:before, .fa-battery-empty:before { content: ""; } .fa-mouse-pointer:before { content: ""; } .fa-i-cursor:before { content: ""; } .fa-object-group:before { content: ""; } .fa-object-ungroup:before { content: ""; } .fa-sticky-note:before { content: ""; } .fa-sticky-note-o:before { content: ""; } .fa-cc-jcb:before { content: ""; } .fa-cc-diners-club:before { content: ""; } .fa-clone:before { content: ""; } .fa-balance-scale:before { content: ""; } .fa-hourglass-o:before { content: ""; } .fa-hourglass-1:before, .fa-hourglass-start:before { content: ""; } .fa-hourglass-2:before, .fa-hourglass-half:before { content: ""; } .fa-hourglass-3:before, .fa-hourglass-end:before { content: ""; } .fa-hourglass:before { content: ""; } .fa-hand-grab-o:before, .fa-hand-rock-o:before { content: ""; } .fa-hand-stop-o:before, .fa-hand-paper-o:before { content: ""; } .fa-hand-scissors-o:before { content: ""; } .fa-hand-lizard-o:before { content: ""; } .fa-hand-spock-o:before { content: ""; } .fa-hand-pointer-o:before { content: ""; } .fa-hand-peace-o:before { content: ""; } .fa-trademark:before { content: ""; } .fa-registered:before { content: ""; } .fa-creative-commons:before { content: ""; } .fa-gg:before { content: ""; } .fa-gg-circle:before { content: ""; } .fa-tripadvisor:before { content: ""; } .fa-odnoklassniki:before { content: ""; } .fa-odnoklassniki-square:before { content: ""; } .fa-get-pocket:before { content: ""; } .fa-wikipedia-w:before { content: ""; } .fa-safari:before { content: ""; } .fa-chrome:before { content: ""; } .fa-firefox:before { content: ""; } .fa-opera:before { content: ""; } .fa-internet-explorer:before { content: ""; } .fa-tv:before, .fa-television:before { content: ""; } .fa-contao:before { content: ""; } .fa-500px:before { content: ""; } .fa-amazon:before { content: ""; } .fa-calendar-plus-o:before { content: ""; } .fa-calendar-minus-o:before { content: ""; } .fa-calendar-times-o:before { content: ""; } .fa-calendar-check-o:before { content: ""; } .fa-industry:before { content: ""; } .fa-map-pin:before { content: ""; } .fa-map-signs:before { content: ""; } .fa-map-o:before { content: ""; } .fa-map:before { content: ""; } .fa-commenting:before { content: ""; } .fa-commenting-o:before { content: ""; } .fa-houzz:before { content: ""; } .fa-vimeo:before { content: ""; } .fa-black-tie:before { content: ""; } .fa-fonticons:before { content: ""; } .fa-reddit-alien:before { content: ""; } .fa-edge:before { content: ""; } .fa-credit-card-alt:before { content: ""; } .fa-codiepie:before { content: ""; } .fa-modx:before { content: ""; } .fa-fort-awesome:before { content: ""; } .fa-usb:before { content: ""; } .fa-product-hunt:before { content: ""; } .fa-mixcloud:before { content: ""; } .fa-scribd:before { content: ""; } .fa-pause-circle:before { content: ""; } .fa-pause-circle-o:before { content: ""; } .fa-stop-circle:before { content: ""; } .fa-stop-circle-o:before { content: ""; } .fa-shopping-bag:before { content: ""; } .fa-shopping-basket:before { content: ""; } .fa-hashtag:before { content: ""; } .fa-bluetooth:before { content: ""; } .fa-bluetooth-b:before { content: ""; } .fa-percent:before { content: ""; } .fa-gitlab:before { content: ""; } .fa-wpbeginner:before { content: ""; } .fa-wpforms:before { content: ""; } .fa-envira:before { content: ""; } .fa-universal-access:before { content: ""; } .fa-wheelchair-alt:before { content: ""; } .fa-question-circle-o:before { content: ""; } .fa-blind:before { content: ""; } .fa-audio-description:before { content: ""; } .fa-volume-control-phone:before { content: ""; } .fa-braille:before { content: ""; } .fa-assistive-listening-systems:before { content: ""; } .fa-asl-interpreting:before, .fa-american-sign-language-interpreting:before { content: ""; } .fa-deafness:before, .fa-hard-of-hearing:before, .fa-deaf:before { content: ""; } .fa-glide:before { content: ""; } .fa-glide-g:before { content: ""; } .fa-signing:before, .fa-sign-language:before { content: ""; } .fa-low-vision:before { content: ""; } .fa-viadeo:before { content: ""; } .fa-viadeo-square:before { content: ""; } .fa-snapchat:before { content: ""; } .fa-snapchat-ghost:before { content: ""; } .fa-snapchat-square:before { content: ""; } .fa-pied-piper:before { content: ""; } .fa-first-order:before { content: ""; } .fa-yoast:before { content: ""; } .fa-themeisle:before { content: ""; } .fa-google-plus-circle:before, .fa-google-plus-official:before { content: ""; } .fa-fa:before, .fa-font-awesome:before { content: ""; } .fa-handshake-o:before { content: ""; } .fa-envelope-open:before { content: ""; } .fa-envelope-open-o:before { content: ""; } .fa-linode:before { content: ""; } .fa-address-book:before { content: ""; } .fa-address-book-o:before { content: ""; } .fa-vcard:before, .fa-address-card:before { content: ""; } .fa-vcard-o:before, .fa-address-card-o:before { content: ""; } .fa-user-circle:before { content: ""; } .fa-user-circle-o:before { content: ""; } .fa-user-o:before { content: ""; } .fa-id-badge:before { content: ""; } .fa-drivers-license:before, .fa-id-card:before { content: ""; } .fa-drivers-license-o:before, .fa-id-card-o:before { content: ""; } .fa-quora:before { content: ""; } .fa-free-code-camp:before { content: ""; } .fa-telegram:before { content: ""; } .fa-thermometer-4:before, .fa-thermometer:before, .fa-thermometer-full:before { content: ""; } .fa-thermometer-3:before, .fa-thermometer-three-quarters:before { content: ""; } .fa-thermometer-2:before, .fa-thermometer-half:before { content: ""; } .fa-thermometer-1:before, .fa-thermometer-quarter:before { content: ""; } .fa-thermometer-0:before, .fa-thermometer-empty:before { content: ""; } .fa-shower:before { content: ""; } .fa-bathtub:before, .fa-s15:before, .fa-bath:before { content: ""; } .fa-podcast:before { content: ""; } .fa-window-maximize:before { content: ""; } .fa-window-minimize:before { content: ""; } .fa-window-restore:before { content: ""; } .fa-times-rectangle:before, .fa-window-close:before { content: ""; } .fa-times-rectangle-o:before, .fa-window-close-o:before { content: ""; } .fa-bandcamp:before { content: ""; } .fa-grav:before { content: ""; } .fa-etsy:before { content: ""; } .fa-imdb:before { content: ""; } .fa-ravelry:before { content: ""; } .fa-eercast:before { content: ""; } .fa-microchip:before { content: ""; } .fa-snowflake-o:before { content: ""; } .fa-superpowers:before { content: ""; } .fa-wpexplorer:before { content: ""; } .fa-meetup:before { content: ""; } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } .sr-only-focusable:active, .sr-only-focusable:focus { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; } sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } button, input, optgroup, select, textarea { color: inherit; font: inherit; margin: 0; } html { font-family: sans-serif; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 300; color: #666; font-size: 12px; line-height: 1.75em; } html input[type=button] { -webkit-appearance: button; cursor: pointer; } html input[disabled] { cursor: default; } body { margin: 0; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -moz-font-feature-settings: "liga" on; } article { display: block; } aside { display: block; } details { display: block; } figcaption { display: block; } figure { display: block; margin: 1em 40px; } footer { display: block; } header { display: block; } hgroup { display: block; } main { display: block; } menu { display: block; } nav { display: block; } section { display: block; } summary { display: block; } audio { display: inline-block; vertical-align: baseline; } audio:not([controls]) { display: none; height: 0; } canvas { display: inline-block; vertical-align: baseline; } progress { display: inline-block; vertical-align: baseline; } video { display: inline-block; vertical-align: baseline; } [hidden] { display: none; } template { display: none; } a { background-color: transparent; text-decoration: none; color: #1d73a2; -webkit-transition: all .2s; transition: all .2s; margin: 0; padding: 0; cursor: pointer; } a:active { outline: 0; } a:hover { outline: 0; color: #175c82; } abbr[title] { border-bottom: 1px dotted; } b { font-weight: 700; margin: 0; padding: 0; } strong { font-weight: 700; margin: 0; padding: 0; } dfn { font-style: italic; margin: 0; padding: 0; } h1 { font-size: 2em; margin: .67em 0; margin-top: .942400822452556em; line-height: 1.130880986943067em; margin-bottom: .188480164490511em; margin: 0; padding: 0; font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 500; color: #111; clear: both; } mark { background: #ff0; color: #000; } small { font-size: 80%; margin: 0; padding: 0; line-height: 0; } sub { bottom: -.25em; margin: 0; padding: 0; line-height: 0; } sup { top: -.5em; margin: 0; padding: 0; line-height: 0; } sup a .fa { font-size: 1em; } img { border: 0; margin: 0; padding: 0; } hr { -webkit-box-sizing: content-box; box-sizing: content-box; height: 0; } pre { overflow: auto; padding: .875em; margin-bottom: 1.75em; background: #222; line-height: 1; color: #ffff00; border-radius: 3px; font-size: 10px; font-family: monospace; font-size: 1em; margin: 0; padding: 0; margin-bottom: 1.75em; } pre code { padding: 0; } code { font-family: monospace; font-size: 1em; margin: 0; padding: 0; font-family: Courier New, Courier, Lucida Sans Typewriter, Lucida Typewriter, monospace; padding: .0875em .2625em; line-height: 0; } kbd { font-family: monospace; font-size: 1em; margin: 0; padding: 0; } samp { font-family: monospace; font-size: 1em; margin: 0; padding: 0; } button { overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; display: block; cursor: pointer; font-size: 12px; padding: .4375em 1.75em; margin-bottom: 1.18125em; } input { line-height: normal; } input:focus { background: #ffff00; } optgroup { font-weight: 700; } select { text-transform: none; outline: none; border: 1px solid #dddddd; border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; width: 100%; height: 35px; } textarea { overflow: auto; display: block; max-width: 100%; padding: .4375em; font-size: 12px; margin-bottom: 1.18125em; outline: none; border: 1px solid #dddddd; border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } input[type=reset] { -webkit-appearance: button; cursor: pointer; } input[type=submit] { -webkit-appearance: button; cursor: pointer; display: block; cursor: pointer; font-size: 12px; padding: .4375em 1.75em; margin-bottom: 1.18125em; } button[disabled] { cursor: default; background-color: #ccc; } button::-moz-focus-inner { border: 0; padding: 0; } input::-moz-focus-inner { border: 0; padding: 0; } input[type=checkbox] { -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0; } input[type=radio] { -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0; } input[type=number]::-webkit-inner-spin-button { height: auto; } input[type=number]::-webkit-outer-spin-button { height: auto; } input[type=search] { -webkit-appearance: textfield; -webkit-box-sizing: content-box; box-sizing: content-box; } input[type=search]::-webkit-search-cancel-button { -webkit-appearance: none; } input[type=search]::-webkit-search-decoration { -webkit-appearance: none; } fieldset { border: 1px solid silver; margin: 0 2px; padding: .35em .625em .75em; padding: .875em 1.75em 1.75em; border-width: 1px; border-style: solid; max-width: 100%; margin-bottom: 1.8375em; margin: 0; padding: 0; } fieldset button { margin-bottom: 0; } fieldset input[type=submit] { margin-bottom: 0; } legend { border: 0; padding: 0; color: #111; font-weight: 700; margin: 0; padding: 0; } table { width: 100%; border-spacing: 0; border-collapse: collapse; margin-bottom: 2.1875em; margin: 0; padding: 0; margin-bottom: 1.75em; } td { padding: 0; margin: 0; padding: 0; padding: .21875em .875em; } th { padding: 0; margin: 0; padding: 0; text-align: left; color: #111; padding: .21875em .875em; } @media (min-width: 600px) { html { font-size: 12px; } h1 { font-size: calc(27.85438995234061px + 18.56959 * ((100vw - 600px) / 540)); } h2 { font-size: calc(23.53700340860508px + 15.69134 * ((100vw - 600px) / 540)); } h3 { font-size: calc(19.888804974891777px + 13.2592 * ((100vw - 600px) / 540)); } h4 { font-size: calc(16.806071548796314px + 11.20405 * ((100vw - 600px) / 540)); } h5 { font-size: calc(14.201156945318074px + 9.46744 * ((100vw - 600px) / 540)); } h6 { font-size: calc(12px + 8 * ((100vw - 600px) / 540)); } } abbr { margin: 0; padding: 0; border-bottom: 1px dotted currentColor; cursor: help; } acronym { margin: 0; padding: 0; border-bottom: 1px dotted currentColor; cursor: help; } address { margin: 0; padding: 0; margin-bottom: 1.75em; font-style: normal; } big { margin: 0; padding: 0; line-height: 0; } blockquote { margin: 0; padding: 0; margin-bottom: 1.75em; font-style: italic; } blockquote cite { display: block; font-style: normal; } caption { margin: 0; padding: 0; } center { margin: 0; padding: 0; } cite { margin: 0; padding: 0; } dd { margin: 0; padding: 0; } del { margin: 0; padding: 0; } dl { margin: 0; padding: 0; margin-bottom: 1.75em; } dt { margin: 0; padding: 0; color: #111; font-weight: 700; } em { margin: 0; padding: 0; } form { margin: 0; padding: 0; } h2 { margin: 0; padding: 0; font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 500; color: #111; clear: both; font-size: 23.53700340860508px; margin-top: 1.115265165420465em; line-height: 1.338318198504558em; margin-bottom: .251483121980101em; } h3 { margin: 0; padding: 0; font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 500; color: #111; clear: both; font-size: 19.888804974891777px; margin-top: 1.319837970815179em; line-height: 1.583805564978215em; margin-bottom: .303784103173448em; } h4 { margin: 0; padding: 0; font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 500; color: #111; clear: both; font-size: 16.806071548796314px; margin-top: 1.561935513828041em; line-height: 1.87432261659365em; margin-bottom: .368150361036632em; } h5 { margin: 0; padding: 0; font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 500; color: #111; clear: both; font-size: 14.201156945318074px; margin-top: 1.84844094752817em; line-height: 2.218129137033805em; margin-bottom: .369688189505634em; } h6 { margin: 0; padding: 0; font-family: Roboto, Helvetica Neue, Helvetica, Arial, sans-serif; font-weight: 500; color: #111; clear: both; font-size: 12px; margin-top: 2.1875em; line-height: 2.625em; margin-bottom: .619791666666667em; } i { margin: 0; padding: 0; } ins { margin: 0; padding: 0; } label { margin: 0; padding: 0; display: block; padding-bottom: .21875em; margin-bottom: -.21875em; cursor: pointer; } li { margin: 0; padding: 0; } ol { margin: 0; padding: 0; margin-bottom: 1.75em; padding-left: 1.4em; } p { margin: 0; padding: 0; margin-bottom: 1.75em; margin: 0 0 1rem 0; } q { margin: 0; padding: 0; } s { margin: 0; padding: 0; } strike { margin: 0; padding: 0; } tbody { margin: 0; padding: 0; } tfoot { margin: 0; padding: 0; } thead { margin: 0; padding: 0; } tr { margin: 0; padding: 0; } tt { margin: 0; padding: 0; } u { margin: 0; padding: 0; } ul { margin: 0; padding: 0; margin-bottom: 1.75em; padding-left: 1.1em; } var { margin: 0; padding: 0; } @media (min-width: 1140px) { h1 { font-size: 46.423983253901014px; margin-top: .942400822452556em; line-height: 1.130880986943067em; margin-bottom: .188480164490511em; } h2 { font-size: 39.228339014341806px; margin-top: 1.115265165420465em; line-height: 1.338318198504558em; margin-bottom: .240111086421698em; } h3 { font-size: 33.14800829148629px; margin-top: 1.319837970815179em; line-height: 1.583805564978215em; margin-bottom: .287857499569283em; } h4 { font-size: 28.01011924799386px; margin-top: 1.561935513828041em; line-height: 1.87432261659365em; margin-bottom: .345845057728222em; } h5 { font-size: 23.668594908863454px; margin-top: 1.84844094752817em; line-height: 2.218129137033805em; margin-bottom: .369688189505634em; } h6 { font-size: 20px; margin-top: 2.1875em; line-height: 2.625em; margin-bottom: .473958333333333em; } fieldset { margin-bottom: 2.078125em; } input[type=email] { font-size: 20px; margin-bottom: .5140625em; } input[type=password] { font-size: 20px; margin-bottom: .5140625em; } input[type=text] { font-size: 20px; margin-bottom: .5140625em; } textarea { font-size: 20px; margin-bottom: .5140625em; } button { font-size: 20px; margin-bottom: 1.3125em; } input[type=submit] { font-size: 20px; margin-bottom: 1.3125em; } table { margin-bottom: 2.05625em; } th { padding: .4375em .875em; } td { padding: .4375em .875em; } } input[type=email] { display: block; max-width: 100%; padding: .4375em; font-size: 12px; margin-bottom: 1.18125em; } input[type=password] { display: block; max-width: 100%; padding: .4375em; font-size: 12px; margin-bottom: 1.18125em; } input[type=text] { display: block; max-width: 100%; padding: .4375em; font-size: 12px; margin-bottom: 1.18125em; } .master { background-image: url("../img/background.png"); background-size: cover; background-position: top; min-height: 100vh; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; } .box { border-radius: 0 0 3px 3px; overflow: hidden; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: 0 10px 10px rgba(0, 0, 0, 0.19), 0 6px 3px rgba(0, 0, 0, 0.23); box-shadow: 0 10px 10px rgba(0, 0, 0, 0.19), 0 6px 3px rgba(0, 0, 0, 0.23); width: 660px; } .header { background-color: #357295; padding: 30px 30px 40px; border-radius: 3px 3px 0 0; text-align: center; } .header__step { font-weight: 300; text-transform: uppercase; font-size: 14px; letter-spacing: 1.1px; margin: 0 0 10px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; color: #fff; } .header__title { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; color: #fff; font-weight: 400; font-size: 20px; margin: 0 0 15px; } .step { position: relative; z-index: 1; padding-left: 0; list-style: none; margin-bottom: 0; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-direction: row-reverse; -webkit-box-orient: horizontal; -webkit-box-direction: reverse; flex-direction: row-reverse; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; margin-top: -20px; } .step__divider { background-color: #cacfd2; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; width: 60px; height: 3px; } .step__divider:first-child { -ms-flex: 1 0 auto; -webkit-box-flex: 1; flex: 1 0 auto; } .step__divider:last-child { -ms-flex: 1 0 auto; -webkit-box-flex: 1; flex: 1 0 auto; } .step__icon { background-color: #cacfd2; font-style: normal; width: 40px; height: 40px; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; border-radius: 50%; color: #fff; } .step__icon.welcome:before { content: '\f144'; font-family: Ionicons; } .step__icon.requirements:before { content: '\f127'; font-family: Ionicons; } .step__icon.permissions:before { content: '\f296'; font-family: Ionicons; } .step__icon.database:before { content: '\f454'; font-family: Ionicons; } .step__icon.update:before { content: '\f2bf'; font-family: Ionicons; } .main { margin-top: -20px; background-color: #fff; border-radius: 0 0 3px 3px; padding: 40px 40px 30px; } .buttons { text-align: center; } .buttons .button { margin: .5em; } .buttons--right { text-align: right; } .button { display: inline-block; background-color: #34a0db; border-radius: 2px; padding: 7px 20px; color: #fff; -webkit-box-shadow: 0 1px 1.5px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.24); box-shadow: 0 1px 1.5px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.24); text-decoration: none; outline: none; border: none; -webkit-transition: background-color .2s ease, -webkit-box-shadow .2s ease; transition: background-color .2s ease, -webkit-box-shadow .2s ease; transition: box-shadow .2s ease, background-color .2s ease; transition: box-shadow .2s ease, background-color .2s ease, -webkit-box-shadow .2s ease; cursor: pointer; } .button:hover { color: #fff; -webkit-box-shadow: 0 10px 10px rgba(0, 0, 0, 0.19), 0 6px 3px rgba(0, 0, 0, 0.23); box-shadow: 0 10px 10px rgba(0, 0, 0, 0.19), 0 6px 3px rgba(0, 0, 0, 0.23); background-color: #2490cb; } .button--light { padding: 3px 16px; font-size: 16px; border-top: 1px solid #eee; color: #222; background: #fff; } .button--light:hover { color: #222; background: #fff; -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16), 0 3px 3px rgba(0, 0, 0, 0.23); box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16), 0 3px 3px rgba(0, 0, 0, 0.23); } .list { padding-left: 0; list-style: none; margin-bottom: 0; margin: 20px 0 35px; border: 1px solid rgba(0, 0, 0, 0.12); border-radius: 2px; } .list .list__item.list__title { background: rgba(0, 0, 0, 0.12); } .list .list__item.list__title.success span { color: #008000; } .list .list__item.list__title.success .fa:before { color: #008000; } .list .list__item.list__title.error span { color: #ff0000; } .list .list__item.list__title.error .fa:before { color: #ff0000; } .list__item { position: relative; overflow: hidden; padding: 7px 20px; border-bottom: 1px solid rgba(0, 0, 0, 0.12); } .list__item:first-letter { text-transform: uppercase; } .list__item:last-child { border-bottom: none; } .list__item .fa.row-icon:before { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; padding: 7px 20px; position: absolute; top: 0; right: 0; bottom: 0; } .list__item.success .fa:before { color: #2ecc71; } .list__item.error .fa:before { color: #e74c3c; } .list__item--permissions:before { content: '' !important; } .list__item--permissions span { display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; padding: 7px 20px; position: absolute; top: 0; right: 0; bottom: 0; background-color: #f5f5f5; font-weight: 700; font-size: 16px; } .list__item--permissions span:before { margin-right: 7px; font-weight: 400; } .list__item--permissions.success i:before { color: #2ecc71; vertical-align: 1px; } .list__item--permissions.error i:before { color: #e74c3c; vertical-align: 1px; } .textarea { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; font-size: 14px; line-height: 25px; height: 150px; outline: none; border: 1px solid rgba(0, 0, 0, 0.2); } .textarea ~ .button { margin-bottom: 35px; } .text-center { text-align: center; } .form-control { height: 14px; width: 100%; } .has-error { color: #ff0000; } .has-error input { color: #000000; border: 1px solid red; } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } input[type='text'] { outline: none; border: 1px solid #dddddd; border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } input[type='password'] { outline: none; border: 1px solid #dddddd; border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } input[type='url'] { outline: none; border: 1px solid #dddddd; border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } input[type='number'] { outline: none; border: 1px solid #dddddd; border-radius: 3px; padding: 10px 12px; width: calc(100% - 24px); margin: 0 auto 1em; } .tabs { padding: 0; } .tabs .tab-input { display: none; } .tabs .tab-input:checked + .tab-label { background-color: #fff; color: #333; } .tabs .tab-label { color: #ddd; cursor: pointer; float: left; padding: 1em; text-align: center; -webkit-transition: all 0.1s ease-in-out; transition: all 0.1s ease-in-out; } .tabs .tab-label:hover { color: #333; } .tabs .tabs-wrap { clear: both; } .tabs .tab { display: none; } .tabs .tab > *:last-child { margin-bottom: 0; } .float-left { float: left; } .float-right { float: right; } .buttons-container { min-height: 37px; margin: 1em 0 0; } .block { -webkit-box-shadow: 0 3px 1px darkgray; box-shadow: 0 3px 1px darkgray; } .block input[type='radio'] { width: 100%; display: none; } .block input[type='radio'] + label { background: #008080; color: #fff; padding-top: 5px; -webkit-transition: all 0.1s ease-in-out; transition: all 0.1s ease-in-out; } .block input[type='radio'] + label:hover { background: #144242; color: #fff; padding-top: 5px; } .block input[type='radio']:checked + label { background-color: #a9a9a9; } .block input[type='radio']:checked ~ .info { height: 200px; overflow-y: auto; -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; } .block input[type='radio'] ~ .info > div { padding-top: 15px; } .block label { width: 450px; max-width: 100%; cursor: pointer; } .block span { font-family: Arial; font-weight: 700; display: block; padding: 10px 12px 12px 15px; margin: 0; cursor: pointer; } .info { background: #fff; color: #222; width: 100%; height: 0; line-height: 2; padding-left: 15px; padding-right: 15px; display: block; overflow: hidden; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-transition: .3s ease-out; transition: .3s ease-out; } ::-moz-selection { background: #222; color: #fff; } ::selection { background: #222; color: #fff; } ::-webkit-scrollbar { width: 12px; } ::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1); border-radius: 0; } ::-webkit-scrollbar-thumb { border-radius: 0; background: #ccc; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); } .margin-bottom-1 { margin-bottom: 1em; } .margin-bottom-2 { margin-bottom: 1em; } .margin-top-1 { margin-top: 1em; } .margin-top-2 { margin-top: 1em; } .alert { margin: 0 0 10px; font-size: 1.1em; background-color: #f5f5f5; border-radius: 3px; padding: 10px; position: relative; } .alert.alert-danger { background: #ff0000; color: #ffffff; padding: 10px 20px 15px; } .alert.alert-danger h4 { color: #ffffff; margin: 0; } .alert.alert-danger ul { margin: 0; } .alert .close { width: 25px; height: 25px; padding: 0; margin: 0; -webkit-box-shadow: none; box-shadow: none; border: 2px solid red; outline: none; float: right; border-radius: 50%; position: absolute; right: 0; top: 0; background-color: transparent; cursor: pointer; -webkit-transition: all 0.1s ease-in-out; transition: all 0.1s ease-in-out; } .alert .close:hover { background-color: #ffffff; color: #ff0000; } svg:not(:root) { overflow: hidden; } .step__item.active .step__icon, .step__item.active ~ .step__divider, .step__item.active ~ .step__item .step__icon { background-color: #34a0db; -webkit-transition: all 0.1s ease-in-out; transition: all 0.1s ease-in-out; } .step__item.active .step__icon:hover, .step__item.active ~ .step__item .step__icon:hover { background-color: #3d657b; } .form-group.has-error select { border-color: #ff0000; } .form-group.has-error textarea { border-color: #ff0000; } .form-group.has-error input[type='text'] { border-color: #ff0000; } .form-group.has-error input[type='password'] { border-color: #ff0000; } .form-group.has-error input[type='url'] { border-color: #ff0000; } .form-group.has-error input[type='number'] { border-color: #ff0000; } .form-group.has-error .error-block { margin: -12px 0 0; display: block; width: 100%; font-size: .9em; color: #ff0000; font-weight: 500; } .tabs-full .tab-label { display: table-cell; float: none; width: 1%; } #tab1:checked ~ .tabs-wrap #tab1content { display: block; } #tab2:checked ~ .tabs-wrap #tab2content { display: block; } #tab3:checked ~ .tabs-wrap #tab3content { display: block; } #tab4:checked ~ .tabs-wrap #tab4content { display: block; } #tab5:checked ~ .tabs-wrap #tab5content { display: block; } .github img { position: absolute; top: 0; right: 0; border: 0; } #tab3content .block:first-child { border-radius: 3px 3px 0 0; } #tab3content .block:last-child { border-radius: 0 0 3px 3px; } .alert { position: relative; padding: .75rem 1.25rem; margin-bottom: 1rem; border: 1px solid transparent; border-radius: .25rem; } .error-alert { color: #721c24; background-color: #f8d7da; border-color: #f5c6cb; } .success-alert { color: #155724; background-color: #d4edda; border-color: #c3e6cb; } /*# sourceMappingURL=style.css.map */ ================================================ FILE: public/vendor/log-viewer/app.css ================================================ /*! tailwindcss v3.4.10 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e4e4e7;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}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-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-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}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#a1a1aa;opacity:1}input::placeholder,textarea::placeholder{color:#a1a1aa;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--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-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--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:rgba(59,130,246,.5);--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: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--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-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--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:rgba(59,130,246,.5);--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: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{bottom:0;top:0}.-left-\[200\%\]{left:-200%}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.bottom-4{bottom:1rem}.left-0{left:0}.left-3{left:.75rem}.right-0{right:0}.right-4{right:1rem}.right-7{right:1.75rem}.right-\[200\%\]{right:200%}.top-0{top:0}.top-9{top:2.25rem}.z-10{z-index:10}.z-20{z-index:20}.m-1{margin:.25rem}.-my-1{margin-bottom:-.25rem;margin-top:-.25rem}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-1\.5{margin-left:.375rem;margin-right:.375rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.my-1{margin-bottom:.25rem;margin-top:.25rem}.my-auto{margin-bottom:auto;margin-top:auto}.-mb-0\.5{margin-bottom:-.125rem}.-mb-px{margin-bottom:-1px}.-mr-2{margin-right:-.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-5{margin-left:1.25rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-2\.5{margin-right:.625rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-0{height:0}.h-14{height:3.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-\[18px\]{height:18px}.h-full{height:100%}.max-h-60{max-height:15rem}.max-h-screen{max-height:100vh}.min-h-\[38px\]{min-height:38px}.min-h-screen{min-height:100vh}.w-14{width:3.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-\[18px\]{width:18px}.w-auto{width:auto}.w-full{width:100%}.w-screen{width:100vw}.min-w-0{min-width:0}.min-w-\[240px\]{min-width:240px}.min-w-full{min-width:100%}.max-w-\[1px\]{max-width:1px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.table-fixed{table-layout:fixed}.border-separate{border-collapse:separate}.translate-x-0{--tw-translate-x:0px}.translate-x-0,.translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x:100%}.rotate-90{--tw-rotate:90deg}.rotate-90,.scale-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-90{--tw-scale-x:.9;--tw-scale-y:.9}.scale-90,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.grid-flow-col{grid-auto-flow:column}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.overflow-y-scroll{overflow-y:scroll}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-brand-500{--tw-border-opacity:1;border-color:rgb(14 165 233/var(--tw-border-opacity))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(244 244 245/var(--tw-border-opacity))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(228 228 231/var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(212 212 216/var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-yellow-300{--tw-border-opacity:1;border-color:rgb(253 224 71/var(--tw-border-opacity))}.bg-brand-600{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity))}.bg-opacity-75{--tw-bg-opacity:0.75}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-gray-100{--tw-gradient-from:#f4f4f5 var(--tw-gradient-from-position);--tw-gradient-to:hsla(240,5%,96%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.p-1{padding:.25rem}.p-12{padding:3rem}.p-4{padding:1rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pb-1{padding-bottom:.25rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-10{padding-right:2.5rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pr-9{padding-right:2.25rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.italic{font-style:italic}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.text-brand-500{--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity))}.text-brand-600{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.text-brand-700{--tw-text-opacity:1;color:rgb(3 105 161/var(--tw-text-opacity))}.text-gray-400{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(63 63 70/var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgb(39 39 42/var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgb(24 24 27/var(--tw-text-opacity))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-yellow-700{--tw-text-opacity:1;color:rgb(161 98 7/var(--tw-text-opacity))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-60{opacity:.6}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.outline-brand-500{outline-color:#0ea5e9}.ring-1{--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(1px + 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)}.ring-opacity-5{--tw-ring-opacity:0.05}.blur{--tw-blur:blur(8px)}.blur,.filter{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-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.spin{-webkit-animation-duration:1.5s;-moz-animation-duration:1.5s;-ms-animation-duration:1.5s;animation-duration:1.5s;-webkit-animation-iteration-count:infinite;-moz-animation-iteration-count:infinite;-ms-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-name:spin;-moz-animation-name:spin;-ms-animation-name:spin;animation-name:spin;-webkit-animation-timing-function:linear;-moz-animation-timing-function:linear;-ms-animation-timing-function:linear;animation-timing-function:linear}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}html.dark{color-scheme:dark}#bmc-wbtn{height:48px!important;width:48px!important}#bmc-wbtn>img{height:32px!important;width:32px!important}.log-levels-selector .dropdown-toggle{white-space:nowrap}.log-levels-selector .dropdown-toggle: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.log-levels-selector .dropdown-toggle:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(3 105 161/var(--tw-ring-opacity))}.log-levels-selector .dropdown-toggle>svg{height:1rem;margin-left:.25rem;opacity:.75;width:1rem}.log-levels-selector .dropdown .log-level{font-weight:600}.log-levels-selector .dropdown .log-level.notice,.log-levels-selector .dropdown .log-level.success{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.notice:is(.dark *),.log-levels-selector .dropdown .log-level.success:is(.dark *){--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.info{--tw-text-opacity:1;color:rgb(3 105 161/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.info:is(.dark *){--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.warning{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.warning:is(.dark *){--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.danger{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.danger:is(.dark *){--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.none{--tw-text-opacity:1;color:rgb(63 63 70/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-level.none:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.log-levels-selector .dropdown .log-count{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity));margin-left:2rem;white-space:nowrap}.log-levels-selector .dropdown .log-count:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.log-levels-selector .dropdown button.active .log-level.notice,.log-levels-selector .dropdown button.active .log-level.success{--tw-text-opacity:1;color:rgb(209 250 229/var(--tw-text-opacity))}.log-levels-selector .dropdown button.active .log-level.info{--tw-text-opacity:1;color:rgb(224 242 254/var(--tw-text-opacity))}.log-levels-selector .dropdown button.active .log-level.warning{--tw-text-opacity:1;color:rgb(254 243 199/var(--tw-text-opacity))}.log-levels-selector .dropdown button.active .log-level.danger{--tw-text-opacity:1;color:rgb(255 228 230/var(--tw-text-opacity))}.log-levels-selector .dropdown button.active .log-level.none{--tw-text-opacity:1;color:rgb(244 244 245/var(--tw-text-opacity))}.log-levels-selector .dropdown button.active .log-count{--tw-text-opacity:1;color:rgb(228 228 231/var(--tw-text-opacity))}.log-levels-selector .dropdown button.active .log-count:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.log-levels-selector .dropdown .no-results{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity));font-size:.75rem;line-height:1rem;padding:.25rem 1rem;text-align:center}.log-levels-selector .dropdown .no-results:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.log-item{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));cursor:pointer;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.log-item:is(.dark *){--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}.log-item.notice.active>td,.log-item.notice:focus-within>td,.log-item.notice:hover>td,.log-item.success.active>td,.log-item.success:focus-within>td,.log-item.success:hover>td{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity))}.log-item.notice.active>td:is(.dark *),.log-item.notice:focus-within>td:is(.dark *),.log-item.notice:hover>td:is(.dark *),.log-item.success.active>td:is(.dark *),.log-item.success:focus-within>td:is(.dark *),.log-item.success:hover>td:is(.dark *){--tw-bg-opacity:0.4;background-color:rgb(6 95 70/var(--tw-bg-opacity))}.log-item.notice .log-level-indicator,.log-item.success .log-level-indicator{--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity))}.log-item.notice .log-level-indicator:is(.dark *),.log-item.success .log-level-indicator:is(.dark *){--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity))}.log-item.notice .log-level,.log-item.success .log-level{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity))}.log-item.notice .log-level:is(.dark *),.log-item.success .log-level:is(.dark *){--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity))}.log-item.info.active>td,.log-item.info:focus-within>td,.log-item.info:hover>td{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity))}.log-item.info.active>td:is(.dark *),.log-item.info:focus-within>td:is(.dark *),.log-item.info:hover>td:is(.dark *){--tw-bg-opacity:0.4;background-color:rgb(7 89 133/var(--tw-bg-opacity))}.log-item.info .log-level-indicator{--tw-bg-opacity:1;background-color:rgb(3 105 161/var(--tw-bg-opacity))}.log-item.info .log-level-indicator:is(.dark *){--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity))}.log-item.info .log-level{--tw-text-opacity:1;color:rgb(3 105 161/var(--tw-text-opacity))}.log-item.info .log-level:is(.dark *){--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity))}.log-item.warning.active>td,.log-item.warning:focus-within>td,.log-item.warning:hover>td{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity))}.log-item.warning.active>td:is(.dark *),.log-item.warning:focus-within>td:is(.dark *),.log-item.warning:hover>td:is(.dark *){--tw-bg-opacity:0.4;background-color:rgb(146 64 14/var(--tw-bg-opacity))}.log-item.warning .log-level-indicator{--tw-bg-opacity:1;background-color:rgb(180 83 9/var(--tw-bg-opacity))}.log-item.warning .log-level-indicator:is(.dark *){--tw-bg-opacity:1;background-color:rgb(251 191 36/var(--tw-bg-opacity))}.log-item.warning .log-level{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity))}.log-item.warning .log-level:is(.dark *){--tw-text-opacity:1;color:rgb(251 191 36/var(--tw-text-opacity))}.log-item.danger.active>td,.log-item.danger:focus-within>td,.log-item.danger:hover>td{--tw-bg-opacity:1;background-color:rgb(255 241 242/var(--tw-bg-opacity))}.log-item.danger.active>td:is(.dark *),.log-item.danger:focus-within>td:is(.dark *),.log-item.danger:hover>td:is(.dark *){--tw-bg-opacity:0.4;background-color:rgb(159 18 57/var(--tw-bg-opacity))}.log-item.danger .log-level-indicator{--tw-bg-opacity:1;background-color:rgb(190 18 60/var(--tw-bg-opacity))}.log-item.danger .log-level-indicator:is(.dark *){--tw-bg-opacity:1;background-color:rgb(251 113 133/var(--tw-bg-opacity))}.log-item.danger .log-level{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.log-item.danger .log-level:is(.dark *){--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity))}.log-item.none.active>td,.log-item.none:focus-within>td,.log-item.none:hover>td{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.log-item.none.active>td:is(.dark *),.log-item.none:focus-within>td:is(.dark *),.log-item.none:hover>td:is(.dark *){--tw-bg-opacity:0.4;background-color:rgb(39 39 42/var(--tw-bg-opacity))}.log-item.none .log-level-indicator{--tw-bg-opacity:1;background-color:rgb(63 63 70/var(--tw-bg-opacity))}.log-item.none .log-level-indicator:is(.dark *){--tw-bg-opacity:1;background-color:rgb(161 161 170/var(--tw-bg-opacity))}.log-item.none .log-level{--tw-text-opacity:1;color:rgb(63 63 70/var(--tw-text-opacity))}.log-item.none .log-level:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.log-item:hover .log-level-icon{opacity:1}.badge{align-items:center;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;line-height:1.25rem;margin-right:.5rem;margin-top:.25rem;padding:.25rem .75rem;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.badge.notice,.badge.success{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity));border-color:rgb(167 243 208/var(--tw-border-opacity));border-width:1px;color:rgb(82 82 91/var(--tw-text-opacity))}.badge.notice:is(.dark *),.badge.success:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:0.4;--tw-text-opacity:1;background-color:rgb(6 78 59/var(--tw-bg-opacity));border-color:rgb(6 95 70/var(--tw-border-opacity));color:rgb(161 161 170/var(--tw-text-opacity))}.badge.notice:hover,.badge.success:hover{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity))}.badge.notice:hover:is(.dark *),.badge.success:hover:is(.dark *){--tw-bg-opacity:0.75;background-color:rgb(6 78 59/var(--tw-bg-opacity))}.badge.notice .checkmark,.badge.success .checkmark{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity))}.badge.notice .checkmark:is(.dark *),.badge.success .checkmark:is(.dark *){--tw-border-opacity:1;border-color:rgb(6 95 70/var(--tw-border-opacity))}.badge.notice.active,.badge.success.active{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity));border-color:rgb(4 120 87/var(--tw-border-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.badge.notice.active:is(.dark *),.badge.success.active:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity));border-color:rgb(5 150 105/var(--tw-border-opacity))}.badge.notice.active:hover,.badge.success.active:hover{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity))}.badge.notice.active:hover:is(.dark *),.badge.success.active:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(6 95 70/var(--tw-bg-opacity))}.badge.notice.active .checkmark,.badge.success.active .checkmark{--tw-border-opacity:1;border-color:rgb(5 150 105/var(--tw-border-opacity))}.badge.notice.active .checkmark:is(.dark *),.badge.success.active .checkmark:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity));border-color:rgb(4 120 87/var(--tw-border-opacity))}.badge.notice.active .checkmark>svg,.badge.success.active .checkmark>svg{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity))}.badge.notice.active .checkmark>svg:is(.dark *),.badge.success.active .checkmark>svg:is(.dark *){--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity))}.badge.info{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity));border-color:rgb(186 230 253/var(--tw-border-opacity));border-width:1px;color:rgb(82 82 91/var(--tw-text-opacity))}.badge.info:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:0.4;--tw-text-opacity:1;background-color:rgb(12 74 110/var(--tw-bg-opacity));border-color:rgb(7 89 133/var(--tw-border-opacity));color:rgb(161 161 170/var(--tw-text-opacity))}.badge.info:hover{--tw-bg-opacity:1;background-color:rgb(224 242 254/var(--tw-bg-opacity))}.badge.info:hover:is(.dark *){--tw-bg-opacity:0.75;background-color:rgb(12 74 110/var(--tw-bg-opacity))}.badge.info .checkmark{--tw-border-opacity:1;border-color:rgb(186 230 253/var(--tw-border-opacity))}.badge.info .checkmark:is(.dark *){--tw-border-opacity:1;border-color:rgb(7 89 133/var(--tw-border-opacity))}.badge.info.active{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity));border-color:rgb(3 105 161/var(--tw-border-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.badge.info.active:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(3 105 161/var(--tw-bg-opacity));border-color:rgb(2 132 199/var(--tw-border-opacity))}.badge.info.active:hover{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity))}.badge.info.active:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(7 89 133/var(--tw-bg-opacity))}.badge.info.active .checkmark{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.badge.info.active .checkmark:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(224 242 254/var(--tw-bg-opacity));border-color:rgb(3 105 161/var(--tw-border-opacity))}.badge.info.active .checkmark>svg{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.badge.info.active .checkmark>svg:is(.dark *){--tw-text-opacity:1;color:rgb(3 105 161/var(--tw-text-opacity))}.badge.warning{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity));border-color:rgb(253 230 138/var(--tw-border-opacity));border-width:1px;color:rgb(82 82 91/var(--tw-text-opacity))}.badge.warning:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:0.4;--tw-text-opacity:1;background-color:rgb(120 53 15/var(--tw-bg-opacity));border-color:rgb(146 64 14/var(--tw-border-opacity));color:rgb(161 161 170/var(--tw-text-opacity))}.badge.warning:hover{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity))}.badge.warning:hover:is(.dark *){--tw-bg-opacity:0.75;background-color:rgb(120 53 15/var(--tw-bg-opacity))}.badge.warning .checkmark{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity))}.badge.warning .checkmark:is(.dark *){--tw-border-opacity:1;border-color:rgb(146 64 14/var(--tw-border-opacity))}.badge.warning.active{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity));border-color:rgb(180 83 9/var(--tw-border-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.badge.warning.active:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(180 83 9/var(--tw-bg-opacity));border-color:rgb(217 119 6/var(--tw-border-opacity))}.badge.warning.active:hover{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity))}.badge.warning.active:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(146 64 14/var(--tw-bg-opacity))}.badge.warning.active .checkmark{--tw-border-opacity:1;border-color:rgb(217 119 6/var(--tw-border-opacity))}.badge.warning.active .checkmark:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity));border-color:rgb(180 83 9/var(--tw-border-opacity))}.badge.warning.active .checkmark>svg{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity))}.badge.warning.active .checkmark>svg:is(.dark *){--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity))}.badge.danger{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 241 242/var(--tw-bg-opacity));border-color:rgb(254 205 211/var(--tw-border-opacity));border-width:1px;color:rgb(82 82 91/var(--tw-text-opacity))}.badge.danger:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:0.4;--tw-text-opacity:1;background-color:rgb(136 19 55/var(--tw-bg-opacity));border-color:rgb(159 18 57/var(--tw-border-opacity));color:rgb(161 161 170/var(--tw-text-opacity))}.badge.danger:hover{--tw-bg-opacity:1;background-color:rgb(255 228 230/var(--tw-bg-opacity))}.badge.danger:hover:is(.dark *){--tw-bg-opacity:0.75;background-color:rgb(136 19 55/var(--tw-bg-opacity))}.badge.danger .checkmark{--tw-border-opacity:1;border-color:rgb(254 205 211/var(--tw-border-opacity))}.badge.danger .checkmark:is(.dark *){--tw-border-opacity:1;border-color:rgb(159 18 57/var(--tw-border-opacity))}.badge.danger.active{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(225 29 72/var(--tw-bg-opacity));border-color:rgb(190 18 60/var(--tw-border-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.badge.danger.active:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(190 18 60/var(--tw-bg-opacity));border-color:rgb(225 29 72/var(--tw-border-opacity))}.badge.danger.active:hover{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity))}.badge.danger.active:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(159 18 57/var(--tw-bg-opacity))}.badge.danger.active .checkmark{--tw-border-opacity:1;border-color:rgb(225 29 72/var(--tw-border-opacity))}.badge.danger.active .checkmark:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(255 228 230/var(--tw-bg-opacity));border-color:rgb(190 18 60/var(--tw-border-opacity))}.badge.danger.active .checkmark>svg{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.badge.danger.active .checkmark>svg:is(.dark *){--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity))}.badge.none{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity));border-color:rgb(228 228 231/var(--tw-border-opacity));border-width:1px;color:rgb(82 82 91/var(--tw-text-opacity))}.badge.none:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:0.4;--tw-text-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity));border-color:rgb(39 39 42/var(--tw-border-opacity));color:rgb(161 161 170/var(--tw-text-opacity))}.badge.none:hover{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.badge.none:hover:is(.dark *){--tw-bg-opacity:0.75;background-color:rgb(24 24 27/var(--tw-bg-opacity))}.badge.none .checkmark{--tw-border-opacity:1;border-color:rgb(228 228 231/var(--tw-border-opacity))}.badge.none .checkmark:is(.dark *){--tw-border-opacity:1;border-color:rgb(39 39 42/var(--tw-border-opacity))}.badge.none.active{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));color:rgb(39 39 42/var(--tw-text-opacity))}.badge.none.active:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity));border-color:rgb(82 82 91/var(--tw-border-opacity));color:rgb(244 244 245/var(--tw-text-opacity))}.badge.none.active:hover{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.badge.none.active:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity))}.badge.none.active .checkmark{--tw-border-opacity:1;border-color:rgb(82 82 91/var(--tw-border-opacity))}.badge.none.active .checkmark:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity));border-color:rgb(63 63 70/var(--tw-border-opacity))}.badge.none.active .checkmark>svg{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity))}.badge.none.active .checkmark>svg:is(.dark *){--tw-text-opacity:1;color:rgb(63 63 70/var(--tw-text-opacity))}.log-list table>thead th{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity));color:rgb(113 113 122/var(--tw-text-opacity));font-size:.75rem;font-weight:600;line-height:1rem;padding:.5rem .25rem;position:sticky;text-align:left;top:0;z-index:10}.file-list .folder-container .folder-item-container.log-list table>thead th{position:sticky}.log-list table>thead th:is(.dark *){--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity));color:rgb(161 161 170/var(--tw-text-opacity))}@media (min-width:1024px){.log-list table>thead th{font-size:.875rem;line-height:1.25rem;padding-left:.5rem;padding-right:.5rem}}.log-list .log-group{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));position:relative}.log-list .log-group:is(.dark *){--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity));color:rgb(228 228 231/var(--tw-text-opacity))}.log-list .log-group .log-item>td{--tw-border-opacity:1;border-color:rgb(228 228 231/var(--tw-border-opacity));border-top-width:1px;font-size:.75rem;line-height:1rem;padding:.375rem .25rem}.log-list .log-group .log-item>td:is(.dark *){--tw-border-opacity:1;border-color:rgb(63 63 70/var(--tw-border-opacity))}@media (min-width:1024px){.log-list .log-group .log-item>td{font-size:.875rem;line-height:1.25rem;padding:.5rem}}.log-list .log-group.first .log-item>td{border-top-color:transparent}.log-list .log-group .mail-preview-attributes{--tw-border-opacity:1;background-color:rgba(240,249,255,.3);border-color:rgb(224 242 254/var(--tw-border-opacity));border-radius:.25rem;border-width:1px;font-size:.75rem;line-height:1rem;margin-bottom:1rem;overflow-x:auto;width:100%}.log-list .log-group .mail-preview-attributes:is(.dark *){--tw-border-opacity:1;background-color:rgba(12,74,110,.2);border-color:rgb(7 89 133/var(--tw-border-opacity))}@media (min-width:1024px){.log-list .log-group .mail-preview-attributes{font-size:.875rem;line-height:1.25rem;margin-bottom:1.5rem;overflow:hidden}}.log-list .log-group .mail-preview-attributes table{width:100%}.log-list .log-group .mail-preview-attributes td{padding:.25rem .5rem}@media (min-width:1024px){.log-list .log-group .mail-preview-attributes td{padding:.5rem 1.5rem}}.log-list .log-group .mail-preview-attributes td:not(:first-child){overflow-wrap:anywhere}.log-list .log-group .mail-preview-attributes tr:first-child td{padding-top:.375rem}@media (min-width:1024px){.log-list .log-group .mail-preview-attributes tr:first-child td{padding-top:.75rem}}.log-list .log-group .mail-preview-attributes tr:last-child td{padding-bottom:.375rem}@media (min-width:1024px){.log-list .log-group .mail-preview-attributes tr:last-child td{padding-bottom:.75rem}}.log-list .log-group .mail-preview-attributes tr:not(:last-child) td{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(224 242 254/var(--tw-border-opacity))}.log-list .log-group .mail-preview-attributes tr:not(:last-child) td:is(.dark *){--tw-border-opacity:1;border-color:rgb(12 74 110/var(--tw-border-opacity))}.log-list .log-group .mail-preview-html{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity));border-color:rgb(228 228 231/var(--tw-border-opacity));border-radius:.25rem;border-width:1px;margin-bottom:1rem;overflow:auto;width:100%}.log-list .log-group .mail-preview-html:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity));border-color:rgb(63 63 70/var(--tw-border-opacity))}@media (min-width:1024px){.log-list .log-group .mail-preview-html{margin-bottom:1.5rem}}.log-list .log-group .mail-preview-text{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity));border-color:rgb(228 228 231/var(--tw-border-opacity));border-radius:.25rem;border-width:1px;font-size:.875rem;line-height:1.25rem;margin-bottom:1rem;padding:1rem;white-space:pre-wrap;width:100%}.log-list .log-group .mail-preview-text:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity));border-color:rgb(63 63 70/var(--tw-border-opacity))}@media (min-width:1024px){.log-list .log-group .mail-preview-text{margin-bottom:1.5rem}}.log-list .log-group .mail-attachment-button{--tw-bg-opacity:1;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.25rem;border-width:1px;display:flex;justify-content:space-between;padding:.25rem .5rem}.log-list .log-group .mail-attachment-button:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity));border-color:rgb(63 63 70/var(--tw-border-opacity))}@media (min-width:1024px){.log-list .log-group .mail-attachment-button{padding:.5rem 1rem}}.log-list .log-group .mail-attachment-button{max-width:460px}.log-list .log-group .mail-attachment-button:not(:last-child){margin-bottom:.5rem}.log-list .log-group .mail-attachment-button a:focus{outline-color:#0ea5e9}.log-list .log-group .tabs-container{font-size:.75rem;line-height:1rem}@media (min-width:1024px){.log-list .log-group .tabs-container{font-size:.875rem;line-height:1.25rem}}.log-list .log-group .log-stack,.log-list .log-group .mail-preview,.log-list .log-group .tabs-container{padding:.25rem .5rem}@media (min-width:1024px){.log-list .log-group .log-stack,.log-list .log-group .mail-preview,.log-list .log-group .tabs-container{padding:.5rem 2rem}}.log-list .log-group .log-stack{--tw-border-opacity:1;border-color:rgb(228 228 231/var(--tw-border-opacity));font-size:10px;line-height:.75rem;white-space:pre-wrap;word-break:break-all}.log-list .log-group .log-stack:is(.dark *){--tw-border-opacity:1;border-color:rgb(63 63 70/var(--tw-border-opacity))}@media (min-width:1024px){.log-list .log-group .log-stack{font-size:.75rem;line-height:1rem}}.log-list .log-group .log-link{align-items:center;border-radius:.25rem;display:flex;justify-content:flex-end;margin-bottom:-.125rem;margin-top:-.125rem;padding-bottom:.125rem;padding-left:.25rem;padding-top:.125rem;width:100%}@media (min-width:640px){.log-list .log-group .log-link{min-width:64px}}.log-list .log-group .log-link>svg{height:1rem;margin-left:.25rem;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);width:1rem}.log-list .log-group .log-link: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.log-list .log-group .log-link:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(56 189 248/var(--tw-ring-opacity))}.log-list .log-group code,.log-list .log-group mark{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(253 230 138/var(--tw-bg-opacity));border-radius:.25rem;color:rgb(24 24 27/var(--tw-text-opacity));padding:.125rem .25rem}.log-list .log-group code:is(.dark *),.log-list .log-group mark:is(.dark *){--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(133 77 14/var(--tw-bg-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.pagination{align-items:center;display:flex;justify-content:center;width:100%}@media (min-width:640px){.pagination{margin-top:.5rem;padding-left:1rem;padding-right:1rem}}@media (min-width:1024px){.pagination{padding-left:0;padding-right:0}}.pagination .previous{display:flex;flex:1 1 0%;justify-content:flex-start;margin-top:-1px;width:0}@media (min-width:768px){.pagination .previous{justify-content:flex-end}}.pagination .previous button{--tw-text-opacity:1;align-items:center;border-color:transparent;border-top-width:2px;color:rgb(113 113 122/var(--tw-text-opacity));display:inline-flex;font-size:.875rem;font-weight:500;line-height:1.25rem;padding-right:.25rem;padding-top:.75rem}.pagination .previous button:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.pagination .previous button:hover{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(161 161 170/var(--tw-border-opacity));color:rgb(63 63 70/var(--tw-text-opacity))}.pagination .previous button:hover:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.pagination .previous button: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));border-radius:.375rem;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.pagination .previous button:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(56 189 248/var(--tw-ring-opacity))}.pagination .previous button svg{color:currentColor;height:1.25rem;margin-left:.75rem;margin-right:.75rem;width:1.25rem}.pagination .next{display:flex;flex:1 1 0%;justify-content:flex-end;margin-top:-1px;width:0}@media (min-width:768px){.pagination .next{justify-content:flex-start}}.pagination .next button{--tw-text-opacity:1;align-items:center;border-color:transparent;border-top-width:2px;color:rgb(113 113 122/var(--tw-text-opacity));display:inline-flex;font-size:.875rem;font-weight:500;line-height:1.25rem;padding-left:.25rem;padding-top:.75rem}.pagination .next button:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.pagination .next button:hover{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(161 161 170/var(--tw-border-opacity));color:rgb(63 63 70/var(--tw-text-opacity))}.pagination .next button:hover:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.pagination .next button: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));border-radius:.375rem;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.pagination .next button:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(56 189 248/var(--tw-ring-opacity))}.pagination .next button svg{color:currentColor;height:1.25rem;margin-left:.75rem;margin-right:.75rem;width:1.25rem}.pagination .pages{display:none}@media (min-width:640px){.pagination .pages{display:flex;margin-top:-1px}}.pagination .pages span{--tw-text-opacity:1;align-items:center;border-color:transparent;border-top-width:2px;color:rgb(113 113 122/var(--tw-text-opacity));display:inline-flex;font-size:.875rem;font-weight:500;line-height:1.25rem;padding-left:1rem;padding-right:1rem;padding-top:.75rem}.pagination .pages span:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.pagination .pages button{align-items:center;border-top-width:2px;display:inline-flex;font-size:.875rem;font-weight:500;line-height:1.25rem;padding-left:1rem;padding-right:1rem;padding-top:.75rem}.pagination .pages button: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));border-radius:.375rem;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.pagination .pages button:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(56 189 248/var(--tw-ring-opacity))}.search{--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(212 212 216/var(--tw-border-opacity));border-radius:.375rem;border-width:1px;display:flex;font-size:.875rem;line-height:1.25rem;position:relative;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%}.search:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity));border-color:rgb(82 82 91/var(--tw-border-opacity));color:rgb(244 244 245/var(--tw-text-opacity))}.search .prefix-icon{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity));margin-left:.75rem;margin-right:.25rem}.search .prefix-icon:is(.dark *){--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.search input{--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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:transparent;background-color:inherit;border-radius:.25rem;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);flex:1 1 0%;padding:.25rem;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%}.search input:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));border-color:transparent;outline:2px solid transparent;outline-offset:2px}.search input:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(3 105 161/var(--tw-ring-opacity))}.search.has-error{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.search .submit-search button{--tw-bg-opacity:1;--tw-text-opacity:1;align-items:center;background-color:rgb(244 244 245/var(--tw-bg-opacity));border-bottom-right-radius:.25rem;border-top-right-radius:.25rem;color:rgb(82 82 91/var(--tw-text-opacity));display:flex;padding:.5rem;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.search .submit-search button:is(.dark *){--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(63 63 70/var(--tw-bg-opacity));color:rgb(212 212 216/var(--tw-text-opacity))}.search .submit-search button:hover{--tw-bg-opacity:1;background-color:rgb(228 228 231/var(--tw-bg-opacity))}.search .submit-search button:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(82 82 91/var(--tw-bg-opacity))}.search .submit-search button: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.search .submit-search button:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(3 105 161/var(--tw-ring-opacity))}.search .submit-search button>svg{height:1.25rem;margin-left:.25rem;opacity:.75;width:1.25rem}.search .clear-search{position:absolute;right:0;top:0}.search .clear-search button{--tw-text-opacity:1;border-radius:.25rem;color:rgb(161 161 170/var(--tw-text-opacity));padding:.25rem;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.search .clear-search button:is(.dark *){--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.search .clear-search button:hover{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity))}.search .clear-search button:hover:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.search .clear-search button: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.search .clear-search button:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(3 105 161/var(--tw-ring-opacity))}.search .clear-search button>svg{height:1.25rem;width:1.25rem}.search-progress-bar{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity));border-radius:.25rem;height:.125rem;position:absolute;top:.25rem;transition-duration:.3s;transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:linear}.search-progress-bar:is(.dark *){--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.dropdown{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(228 228 231/var(--tw-border-opacity));border-radius:.375rem;border-width:1px;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);color:rgb(24 24 27/var(--tw-text-opacity));margin-top:-.25rem;overflow:hidden;position:absolute;right:.25rem;top:100%;z-index:40}.dropdown:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity));border-color:rgb(63 63 70/var(--tw-border-opacity));color:rgb(228 228 231/var(--tw-text-opacity))}.dropdown: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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));--tw-ring-opacity:0.5;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.dropdown:focus:is(.dark *){--tw-ring-color:rgb(3 105 161/var(--tw-ring-opacity));--tw-ring-opacity:0.5}.dropdown{transform-origin:top right!important}.dropdown.up{bottom:100%;margin-bottom:-.25rem;margin-top:0;top:auto;transform-origin:bottom right!important}.dropdown.left{left:.25rem;right:auto;transform-origin:top left!important}.dropdown.left.up{transform-origin:bottom left!important}.dropdown a:not(.inline-link),.dropdown button:not(.inline-link){align-items:center;display:block;display:flex;font-size:.875rem;line-height:1.25rem;outline-color:#0ea5e9;padding:.5rem 1rem;text-align:left;width:100%}.dropdown a:not(.inline-link):is(.dark *),.dropdown button:not(.inline-link):is(.dark *){outline-color:#075985}.dropdown a:not(.inline-link)>svg,.dropdown button:not(.inline-link)>svg{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity));height:1rem;margin-right:.75rem;width:1rem}.dropdown a:not(.inline-link)>svg.spin,.dropdown button:not(.inline-link)>svg.spin{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity))}.dropdown a.active,.dropdown a:hover,.dropdown button.active,.dropdown button:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.dropdown a.active>.checkmark,.dropdown a:hover>.checkmark,.dropdown button.active>.checkmark,.dropdown button:hover>.checkmark{--tw-bg-opacity:1;background-color:rgb(2 132 199/var(--tw-bg-opacity))}.dropdown a.active>.checkmark:is(.dark *),.dropdown a:hover>.checkmark:is(.dark *),.dropdown button.active>.checkmark:is(.dark *),.dropdown button:hover>.checkmark:is(.dark *){--tw-border-opacity:1;border-color:rgb(212 212 216/var(--tw-border-opacity))}.dropdown a.active>svg,.dropdown a:hover>svg,.dropdown button.active>svg,.dropdown button:hover>svg{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.dropdown .divider{border-top-width:1px;margin-bottom:.5rem;margin-top:.5rem;width:100%}.dropdown .divider:is(.dark *){--tw-border-opacity:1;border-top-color:rgb(63 63 70/var(--tw-border-opacity))}.dropdown .label{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity));font-size:.75rem;font-weight:600;line-height:1rem;margin:.25rem 1rem}.file-list{height:100%;overflow-y:auto;padding-bottom:1rem;padding-left:.75rem;padding-right:.75rem;position:relative}@media (min-width:768px){.file-list{padding-left:0;padding-right:0}}.file-list .file-item-container,.file-list .folder-item-container{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.375rem;color:rgb(39 39 42/var(--tw-text-opacity));margin-top:.5rem;position:relative;top:0}.file-list .file-item-container:is(.dark *),.file-list .folder-item-container:is(.dark *){--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity));color:rgb(228 228 231/var(--tw-text-opacity))}.file-list .file-item-container .file-item,.file-list .folder-item-container .file-item{border-color:transparent;border-radius:.375rem;border-width:1px;cursor:pointer;position:relative;transition-duration:.1s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.file-list .file-item-container .file-item,.file-list .file-item-container .file-item .file-item-info,.file-list .folder-item-container .file-item,.file-list .folder-item-container .file-item .file-item-info{align-items:center;display:flex;justify-content:space-between;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter}.file-list .file-item-container .file-item .file-item-info,.file-list .folder-item-container .file-item .file-item-info{border-bottom-left-radius:.375rem;border-top-left-radius:.375rem;flex:1 1 0%;outline-color:#0ea5e9;padding:.5rem .75rem .5rem 1rem;text-align:left;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.file-list .file-item-container .file-item .file-item-info:is(.dark *),.file-list .folder-item-container .file-item .file-item-info:is(.dark *){outline-color:#0369a1}.file-list .file-item-container .file-item .file-item-info:hover,.file-list .folder-item-container .file-item .file-item-info:hover{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity))}.file-list .file-item-container .file-item .file-item-info:hover:is(.dark *),.file-list .folder-item-container .file-item .file-item-info:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(12 74 110/var(--tw-bg-opacity))}.file-list .file-item-container .file-item .file-icon,.file-list .folder-item-container .file-item .file-icon{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity));margin-right:.5rem}.file-list .file-item-container .file-item .file-icon:is(.dark *),.file-list .folder-item-container .file-item .file-icon:is(.dark *){--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.file-list .file-item-container .file-item .file-icon>svg,.file-list .folder-item-container .file-item .file-icon>svg{height:1rem;width:1rem}.file-list .file-item-container .file-item .file-name,.file-list .folder-item-container .file-item .file-name{font-size:.875rem;line-height:1.25rem;margin-right:.75rem;width:100%;word-break:break-word}.file-list .file-item-container .file-item .file-size,.file-list .folder-item-container .file-item .file-size{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity));font-size:.75rem;line-height:1rem;white-space:nowrap}.file-list .file-item-container .file-item .file-size:is(.dark *),.file-list .folder-item-container .file-item .file-size:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity));opacity:.9}.file-list .file-item-container.active .file-item,.file-list .folder-item-container.active .file-item{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity));border-color:rgb(14 165 233/var(--tw-border-opacity))}.file-list .file-item-container.active .file-item:is(.dark *),.file-list .folder-item-container.active .file-item:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:0.4;background-color:rgb(12 74 110/var(--tw-bg-opacity));border-color:rgb(12 74 110/var(--tw-border-opacity))}.file-list .file-item-container.active-folder .file-item,.file-list .folder-item-container.active-folder .file-item{--tw-border-opacity:1;border-color:rgb(212 212 216/var(--tw-border-opacity))}.file-list .file-item-container.active-folder .file-item:is(.dark *),.file-list .folder-item-container.active-folder .file-item:is(.dark *){--tw-border-opacity:1;border-color:rgb(63 63 70/var(--tw-border-opacity))}.file-list .file-item-container:hover .file-item,.file-list .folder-item-container:hover .file-item{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.file-list .file-item-container:hover .file-item:is(.dark *),.file-list .folder-item-container:hover .file-item:is(.dark *){--tw-border-opacity:1;border-color:rgb(7 89 133/var(--tw-border-opacity))}.file-list .file-item-container .file-dropdown-toggle,.file-list .folder-item-container .file-dropdown-toggle{--tw-text-opacity:1;align-items:center;align-self:stretch;border-bottom-right-radius:.375rem;border-color:transparent;border-left-width:1px;border-top-right-radius:.375rem;color:rgb(113 113 122/var(--tw-text-opacity));display:flex;justify-content:center;outline-color:#0ea5e9;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);width:2rem}.file-list .file-item-container .file-dropdown-toggle:is(.dark *),.file-list .folder-item-container .file-dropdown-toggle:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity));outline-color:#0369a1}.file-list .file-item-container .file-dropdown-toggle:hover,.file-list .folder-item-container .file-dropdown-toggle:hover{--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity));border-color:rgb(2 132 199/var(--tw-border-opacity))}.file-list .file-item-container .file-dropdown-toggle:hover:is(.dark *),.file-list .folder-item-container .file-dropdown-toggle:hover:is(.dark *){--tw-border-opacity:1;--tw-bg-opacity:1;background-color:rgb(12 74 110/var(--tw-bg-opacity));border-color:rgb(7 89 133/var(--tw-border-opacity))}.file-list .folder-container .folder-item-container.sticky{position:sticky}.file-list .folder-container:first-child>.folder-item-container{margin-top:0}.menu-button{--tw-text-opacity:1;border-radius:.375rem;color:rgb(161 161 170/var(--tw-text-opacity));cursor:pointer;outline-color:#0ea5e9;padding:.5rem;position:relative;transition-duration:.2s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-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-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.menu-button:hover{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.menu-button:hover:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.menu-button: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.menu-button:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(3 105 161/var(--tw-ring-opacity))}a.button,button.button{--tw-text-opacity:1;align-items:center;border-radius:.375rem;color:rgb(24 24 27/var(--tw-text-opacity));display:block;display:flex;font-size:.875rem;line-height:1.25rem;outline-color:#0ea5e9;padding:.5rem 1rem;text-align:left;width:100%}a.button:is(.dark *),button.button:is(.dark *){--tw-text-opacity:1;color:rgb(228 228 231/var(--tw-text-opacity));outline-color:#075985}a.button>svg,button.button>svg{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity));height:1rem;width:1rem}a.button>svg:is(.dark *),button.button>svg:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}a.button>svg.spin,button.button>svg.spin{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity))}a.button:hover,button.button:hover{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}a.button:hover:is(.dark *),button.button:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(63 63 70/var(--tw-bg-opacity))}.select{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity));border-radius:.25rem;color:rgb(63 63 70/var(--tw-text-opacity));font-weight:400;margin-bottom:-.125rem;margin-top:-.125rem;outline:2px solid transparent;outline-offset:2px;padding:.125rem .25rem}.select:is(.dark *){--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity));color:rgb(212 212 216/var(--tw-text-opacity))}.select:hover{--tw-bg-opacity:1;background-color:rgb(228 228 231/var(--tw-bg-opacity))}.select:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}.select: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity));box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.select:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(3 105 161/var(--tw-ring-opacity))}.keyboard-shortcut{--tw-text-opacity:1;align-items:center;color:rgb(82 82 91/var(--tw-text-opacity));display:flex;font-size:.875rem;justify-content:flex-start;line-height:1.25rem;margin-bottom:.75rem;width:100%}.keyboard-shortcut:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.keyboard-shortcut .shortcut{--tw-border-opacity:1;--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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-opacity:1;--tw-ring-color:rgb(244 244 245/var(--tw-ring-opacity));align-items:center;border-color:rgb(161 161 170/var(--tw-border-opacity));border-radius:.25rem;border-width:1px;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);display:inline-flex;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1rem;height:1.5rem;justify-content:center;line-height:1.5rem;margin-right:.5rem;width:1.5rem}.keyboard-shortcut .shortcut:is(.dark *){--tw-border-opacity:1;--tw-text-opacity:1;--tw-ring-opacity:1;--tw-ring-color:rgb(24 24 27/var(--tw-ring-opacity));border-color:rgb(113 113 122/var(--tw-border-opacity));color:rgb(212 212 216/var(--tw-text-opacity))}.last\:border-b-0:last-child{border-bottom-width:0}.hover\:border-brand-600:hover{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:rgb(212 212 216/var(--tw-border-opacity))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.hover\:text-blue-700:hover{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity))}.hover\:text-brand-800:hover{--tw-text-opacity:1;color:rgb(7 89 133/var(--tw-text-opacity))}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(63 63 70/var(--tw-text-opacity))}.focus\:border-brand-500:focus{--tw-border-opacity:1;border-color:rgb(14 165 233/var(--tw-border-opacity))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:outline-brand-500:focus{outline-color:#0ea5e9}.focus\:ring-1: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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2: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(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-brand-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(14 165 233/var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.group:hover .group-hover\:inline-block{display:inline-block}.group:hover .group-hover\:hidden{display:none}.group:hover .group-hover\:border-brand-600{--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.group:hover .group-hover\:underline{text-decoration-line:underline}.group:hover .group-hover\:opacity-100{opacity:1}.group:focus .group-focus\:inline-block{display:inline-block}.group:focus .group-focus\:hidden{display:none}.dark\:border-brand-400:is(.dark *){--tw-border-opacity:1;border-color:rgb(56 189 248/var(--tw-border-opacity))}.dark\:border-brand-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(2 132 199/var(--tw-border-opacity))}.dark\:border-gray-600:is(.dark *){--tw-border-opacity:1;border-color:rgb(82 82 91/var(--tw-border-opacity))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(63 63 70/var(--tw-border-opacity))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(39 39 42/var(--tw-border-opacity))}.dark\:border-yellow-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(133 77 14/var(--tw-border-opacity))}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(63 63 70/var(--tw-bg-opacity))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}.dark\:bg-gray-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(24 24 27/var(--tw-bg-opacity))}.dark\:bg-yellow-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(113 63 18/var(--tw-bg-opacity))}.dark\:bg-opacity-40:is(.dark *){--tw-bg-opacity:0.4}.dark\:from-gray-900:is(.dark *){--tw-gradient-from:#18181b var(--tw-gradient-from-position);--tw-gradient-to:rgba(24,24,27,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.dark\:text-blue-400:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity))}.dark\:text-blue-500:is(.dark *){--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity))}.dark\:text-brand-500:is(.dark *){--tw-text-opacity:1;color:rgb(14 165 233/var(--tw-text-opacity))}.dark\:text-brand-600:is(.dark *){--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity:1;color:rgb(244 244 245/var(--tw-text-opacity))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgb(228 228 231/var(--tw-text-opacity))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.dark\:text-green-500:is(.dark *){--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.dark\:text-orange-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity))}.dark\:text-red-400:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity))}.dark\:text-yellow-400:is(.dark *){--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity))}.dark\:opacity-90:is(.dark *){opacity:.9}.dark\:outline-brand-800:is(.dark *){outline-color:#075985}.dark\:hover\:border-brand-700:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(3 105 161/var(--tw-border-opacity))}.dark\:hover\:border-gray-400:hover:is(.dark *){--tw-border-opacity:1;border-color:rgb(161 161 170/var(--tw-border-opacity))}.hover\:dark\:border-brand-800:is(.dark *):hover{--tw-border-opacity:1;border-color:rgb(7 89 133/var(--tw-border-opacity))}.dark\:hover\:bg-gray-600:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(82 82 91/var(--tw-bg-opacity))}.dark\:hover\:text-blue-400:hover:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity))}.dark\:hover\:text-brand-600:hover:is(.dark *){--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity))}.dark\:hover\:text-gray-200:hover:is(.dark *){--tw-text-opacity:1;color:rgb(228 228 231/var(--tw-text-opacity))}.dark\:hover\:text-gray-300:hover:is(.dark *){--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.dark\:focus\:ring-brand-300:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(125 211 252/var(--tw-ring-opacity))}.dark\:focus\:ring-brand-700:focus:is(.dark *){--tw-ring-opacity:1;--tw-ring-color:rgb(3 105 161/var(--tw-ring-opacity))}.group:hover .group-hover\:dark\:border-brand-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(7 89 133/var(--tw-border-opacity))}@media (min-width:640px){.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:flex-col-reverse{flex-direction:column-reverse}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:duration-300{transition-duration:.3s}}@media (min-width:768px){.md\:fixed{position:fixed}.md\:inset-y-0{bottom:0;top:0}.md\:left-0{left:0}.md\:left-auto{left:auto}.md\:right-auto{right:auto}.md\:mx-0{margin-left:0;margin-right:0}.md\:mx-3{margin-left:.75rem;margin-right:.75rem}.md\:mt-0{margin-top:0}.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-88{width:22rem}.md\:flex-col{flex-direction:column}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:pb-12{padding-bottom:3rem}.md\:pl-88{padding-left:22rem}.md\:opacity-75{opacity:.75}}@media (min-width:1024px){.lg\:absolute{position:absolute}.lg\:left-0{left:0}.lg\:right-0{right:0}.lg\:right-6{right:1.5rem}.lg\:top-2{top:.5rem}.lg\:mx-0{margin-left:0;margin-right:0}.lg\:mx-8{margin-left:2rem;margin-right:2rem}.lg\:mb-0{margin-bottom:0}.lg\:mt-0{margin-top:0}.lg\:block{display:block}.lg\:inline{display:inline}.lg\:table-cell{display:table-cell}.lg\:hidden{display:none}.lg\:w-auto{width:auto}.lg\:flex-row{flex-direction:row}.lg\:p-8{padding:2rem}.lg\:px-5{padding-left:1.25rem;padding-right:1.25rem}.lg\:pl-2{padding-left:.5rem}.lg\:text-sm{font-size:.875rem;line-height:1.25rem}}@media (min-width:1280px){.xl\:inline{display:inline}} ================================================ FILE: public/vendor/log-viewer/app.js ================================================ /*! For license information please see app.js.LICENSE.txt */ (()=>{var e,t={267:(e,t,n)=>{"use strict";var r={};function o(e,t){const n=new Set(e.split(","));return t?e=>n.has(e.toLowerCase()):e=>n.has(e)}n.r(r),n.d(r,{hasBrowserEnv:()=>ps,hasStandardBrowserEnv:()=>vs,hasStandardBrowserWebWorkerEnv:()=>gs,navigator:()=>hs,origin:()=>ys});const i={},a=[],l=()=>{},s=()=>!1,u=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),c=e=>e.startsWith("onUpdate:"),f=Object.assign,d=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},p=Object.prototype.hasOwnProperty,h=(e,t)=>p.call(e,t),v=Array.isArray,g=e=>"[object Map]"===k(e),y=e=>"[object Set]"===k(e),m=e=>"[object Date]"===k(e),b=e=>"function"==typeof e,w=e=>"string"==typeof e,C=e=>"symbol"==typeof e,_=e=>null!==e&&"object"==typeof e,x=e=>(_(e)||b(e))&&b(e.then)&&b(e.catch),O=Object.prototype.toString,k=e=>O.call(e),S=e=>k(e).slice(8,-1),E=e=>"[object Object]"===k(e),L=e=>w(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,P=o(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),A=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},j=/-(\w)/g,T=A((e=>e.replace(j,((e,t)=>t?t.toUpperCase():"")))),R=/\B([A-Z])/g,F=A((e=>e.replace(R,"-$1").toLowerCase())),I=A((e=>e.charAt(0).toUpperCase()+e.slice(1))),M=A((e=>e?`on${I(e)}`:"")),D=(e,t)=>!Object.is(e,t),B=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},U=e=>{const t=parseFloat(e);return isNaN(t)?e:t},V=e=>{const t=w(e)?Number(e):NaN;return isNaN(t)?e:t};let H;const q=()=>H||(H="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==n.g?n.g:{});function $(e){if(v(e)){const t={};for(let n=0;n{if(e){const n=e.split(W);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function Y(e){let t="";if(w(e))t=e;else if(v(e))for(let n=0;nX(e,t)))}const te=e=>!(!e||!0!==e.__v_isRef),ne=e=>w(e)?e:null==e?"":v(e)||_(e)&&(e.toString===O||!b(e.toString))?te(e)?ne(e.value):JSON.stringify(e,re,2):String(e),re=(e,t)=>te(t)?re(e,t.value):g(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n],r)=>(e[oe(t,r)+" =>"]=n,e)),{})}:y(t)?{[`Set(${t.size})`]:[...t.values()].map((e=>oe(e)))}:C(t)?oe(t):!_(t)||v(t)||E(t)?t:String(t),oe=(e,t="")=>{var n;return C(e)?`Symbol(${null!=(n=e.description)?n:t})`:e};let ie,ae;class le{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=ie,!e&&ie&&(this.index=(ie.scopes||(ie.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const t=ie;try{return ie=this,e()}finally{ie=t}}else 0}on(){ie=this}off(){ie=this.parent}stop(e){if(this._active){let t,n;for(t=0,n=this.effects.length;t=4))break}1===this._dirtyLevel&&(this._dirtyLevel=0),Ce()}return this._dirtyLevel>=4}set dirty(e){this._dirtyLevel=e?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let e=ye,t=ae;try{return ye=!0,ae=this,this._runnings++,he(this),this.fn()}finally{ve(this),this._runnings--,ae=t,ye=e}}stop(){this.active&&(he(this),ve(this),this.onStop&&this.onStop(),this.active=!1)}}function pe(e){return e.value}function he(e){e._trackId++,e._depsLength=0}function ve(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},Le=new WeakMap,Pe=Symbol(""),Ae=Symbol("");function je(e,t,n){if(ye&&ae){let t=Le.get(e);t||Le.set(e,t=new Map);let r=t.get(n);r||t.set(n,r=Ee((()=>t.delete(n)))),Oe(ae,r)}}function Te(e,t,n,r,o,i){const a=Le.get(e);if(!a)return;let l=[];if("clear"===t)l=[...a.values()];else if("length"===n&&v(e)){const e=Number(r);a.forEach(((t,n)=>{("length"===n||!C(n)&&n>=e)&&l.push(t)}))}else switch(void 0!==n&&l.push(a.get(n)),t){case"add":v(e)?L(n)&&l.push(a.get("length")):(l.push(a.get(Pe)),g(e)&&l.push(a.get(Ae)));break;case"delete":v(e)||(l.push(a.get(Pe)),g(e)&&l.push(a.get(Ae)));break;case"set":g(e)&&l.push(a.get(Pe))}_e();for(const e of l)e&&Se(e,4);xe()}const Re=o("__proto__,__v_isRef,__isVue"),Fe=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(C)),Ie=Me();function Me(){const e={};return["includes","indexOf","lastIndexOf"].forEach((t=>{e[t]=function(...e){const n=xt(this);for(let e=0,t=this.length;e{e[t]=function(...e){we(),_e();const n=xt(this)[t].apply(this,e);return xe(),Ce(),n}})),e}function De(e){C(e)||(e=String(e));const t=xt(this);return je(t,0,e),t.hasOwnProperty(e)}class Be{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){const r=this._isReadonly,o=this._isShallow;if("__v_isReactive"===t)return!r;if("__v_isReadonly"===t)return r;if("__v_isShallow"===t)return o;if("__v_raw"===t)return n===(r?o?ht:pt:o?dt:ft).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const i=v(e);if(!r){if(i&&h(Ie,t))return Reflect.get(Ie,t,n);if("hasOwnProperty"===t)return De}const a=Reflect.get(e,t,n);return(C(t)?Fe.has(t):Re(t))?a:(r||je(e,0,t),o?a:jt(a)?i&&L(t)?a:a.value:_(a)?r?yt(a):vt(a):a)}}class Ne extends Be{constructor(e=!1){super(!1,e)}set(e,t,n,r){let o=e[t];if(!this._isShallow){const t=wt(o);if(Ct(n)||wt(n)||(o=xt(o),n=xt(n)),!v(e)&&jt(o)&&!jt(n))return!t&&(o.value=n,!0)}const i=v(e)&&L(t)?Number(t)e,ze=e=>Reflect.getPrototypeOf(e);function We(e,t,n=!1,r=!1){const o=xt(e=e.__v_raw),i=xt(t);n||(D(t,i)&&je(o,0,t),je(o,0,i));const{has:a}=ze(o),l=r?$e:n?St:kt;return a.call(o,t)?l(e.get(t)):a.call(o,i)?l(e.get(i)):void(e!==o&&e.get(t))}function Ze(e,t=!1){const n=this.__v_raw,r=xt(n),o=xt(e);return t||(D(e,o)&&je(r,0,e),je(r,0,o)),e===o?n.has(e):n.has(e)||n.has(o)}function Ke(e,t=!1){return e=e.__v_raw,!t&&je(xt(e),0,Pe),Reflect.get(e,"size",e)}function Ye(e,t=!1){t||Ct(e)||wt(e)||(e=xt(e));const n=xt(this);return ze(n).has.call(n,e)||(n.add(e),Te(n,"add",e,e)),this}function Ge(e,t,n=!1){n||Ct(t)||wt(t)||(t=xt(t));const r=xt(this),{has:o,get:i}=ze(r);let a=o.call(r,e);a||(e=xt(e),a=o.call(r,e));const l=i.call(r,e);return r.set(e,t),a?D(t,l)&&Te(r,"set",e,t):Te(r,"add",e,t),this}function Je(e){const t=xt(this),{has:n,get:r}=ze(t);let o=n.call(t,e);o||(e=xt(e),o=n.call(t,e));r&&r.call(t,e);const i=t.delete(e);return o&&Te(t,"delete",e,void 0),i}function Qe(){const e=xt(this),t=0!==e.size,n=e.clear();return t&&Te(e,"clear",void 0,void 0),n}function Xe(e,t){return function(n,r){const o=this,i=o.__v_raw,a=xt(i),l=t?$e:e?St:kt;return!e&&je(a,0,Pe),i.forEach(((e,t)=>n.call(r,l(e),l(t),o)))}}function et(e,t,n){return function(...r){const o=this.__v_raw,i=xt(o),a=g(i),l="entries"===e||e===Symbol.iterator&&a,s="keys"===e&&a,u=o[e](...r),c=n?$e:t?St:kt;return!t&&je(i,0,s?Ae:Pe),{next(){const{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:l?[c(e[0]),c(e[1])]:c(e),done:t}},[Symbol.iterator](){return this}}}}function tt(e){return function(...t){return"delete"!==e&&("clear"===e?void 0:this)}}function nt(){const e={get(e){return We(this,e)},get size(){return Ke(this)},has:Ze,add:Ye,set:Ge,delete:Je,clear:Qe,forEach:Xe(!1,!1)},t={get(e){return We(this,e,!1,!0)},get size(){return Ke(this)},has:Ze,add(e){return Ye.call(this,e,!0)},set(e,t){return Ge.call(this,e,t,!0)},delete:Je,clear:Qe,forEach:Xe(!1,!0)},n={get(e){return We(this,e,!0)},get size(){return Ke(this,!0)},has(e){return Ze.call(this,e,!0)},add:tt("add"),set:tt("set"),delete:tt("delete"),clear:tt("clear"),forEach:Xe(!0,!1)},r={get(e){return We(this,e,!0,!0)},get size(){return Ke(this,!0)},has(e){return Ze.call(this,e,!0)},add:tt("add"),set:tt("set"),delete:tt("delete"),clear:tt("clear"),forEach:Xe(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((o=>{e[o]=et(o,!1,!1),n[o]=et(o,!0,!1),t[o]=et(o,!1,!0),r[o]=et(o,!0,!0)})),[e,n,t,r]}const[rt,ot,it,at]=nt();function lt(e,t){const n=t?e?at:it:e?ot:rt;return(t,r,o)=>"__v_isReactive"===r?!e:"__v_isReadonly"===r?e:"__v_raw"===r?t:Reflect.get(h(n,r)&&r in t?n:t,r,o)}const st={get:lt(!1,!1)},ut={get:lt(!1,!0)},ct={get:lt(!0,!1)};const ft=new WeakMap,dt=new WeakMap,pt=new WeakMap,ht=new WeakMap;function vt(e){return wt(e)?e:mt(e,!1,Ve,st,ft)}function gt(e){return mt(e,!1,qe,ut,dt)}function yt(e){return mt(e,!0,He,ct,pt)}function mt(e,t,n,r,o){if(!_(e))return e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const i=o.get(e);if(i)return i;const a=function(e){return e.__v_skip||!Object.isExtensible(e)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}(S(e))}(e);if(0===a)return e;const l=new Proxy(e,2===a?r:n);return o.set(e,l),l}function bt(e){return wt(e)?bt(e.__v_raw):!(!e||!e.__v_isReactive)}function wt(e){return!(!e||!e.__v_isReadonly)}function Ct(e){return!(!e||!e.__v_isShallow)}function _t(e){return!!e&&!!e.__v_raw}function xt(e){const t=e&&e.__v_raw;return t?xt(t):e}function Ot(e){return Object.isExtensible(e)&&N(e,"__v_skip",!0),e}const kt=e=>_(e)?vt(e):e,St=e=>_(e)?yt(e):e;class Et{constructor(e,t,n,r){this.getter=e,this._setter=t,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new de((()=>e(this._value)),(()=>At(this,2===this.effect._dirtyLevel?2:3))),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=n}get value(){const e=xt(this);return e._cacheable&&!e.effect.dirty||!D(e._value,e._value=e.effect.run())||At(e,4),Pt(e),e.effect._dirtyLevel>=2&&At(e,2),e._value}set value(e){this._setter(e)}get _dirty(){return this.effect.dirty}set _dirty(e){this.effect.dirty=e}}function Lt(e,t,n=!1){let r,o;const i=b(e);i?(r=e,o=l):(r=e.get,o=e.set);return new Et(r,o,i||!o,n)}function Pt(e){var t;ye&&ae&&(e=xt(e),Oe(ae,null!=(t=e.dep)?t:e.dep=Ee((()=>e.dep=void 0),e instanceof Et?e:void 0)))}function At(e,t=4,n,r){const o=(e=xt(e)).dep;o&&Se(o,t)}function jt(e){return!(!e||!0!==e.__v_isRef)}function Tt(e){return Ft(e,!1)}function Rt(e){return Ft(e,!0)}function Ft(e,t){return jt(e)?e:new It(e,t)}class It{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:xt(e),this._value=t?e:kt(e)}get value(){return Pt(this),this._value}set value(e){const t=this.__v_isShallow||Ct(e)||wt(e);if(e=t?e:xt(e),D(e,this._rawValue)){this._rawValue;this._rawValue=e,this._value=t?e:kt(e),At(this,4)}}}function Mt(e){return jt(e)?e.value:e}const Dt={get:(e,t,n)=>Mt(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return jt(o)&&!jt(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function Bt(e){return bt(e)?e:new Proxy(e,Dt)}class Nt{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0}get value(){const e=this._object[this._key];return void 0===e?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return function(e,t){const n=Le.get(e);return n&&n.get(t)}(xt(this._object),this._key)}}function Ut(e,t,n){const r=e[t];return jt(r)?r:new Nt(e,t,n)}function Vt(e,t,n,r){try{return r?e(...r):e()}catch(e){qt(e,t,n)}}function Ht(e,t,n,r){if(b(e)){const o=Vt(e,t,n,r);return o&&x(o)&&o.catch((e=>{qt(e,t,n)})),o}if(v(e)){const o=[];for(let i=0;i>>1,o=Wt[r],i=an(o);ian(e)-an(t)));if(Kt.length=0,Yt)return void Yt.push(...e);for(Yt=e,Gt=0;Gtnull==e.id?1/0:e.id,ln=(e,t)=>{const n=an(e)-an(t);if(0===n){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function sn(e){zt=!1,$t=!0,Wt.sort(ln);try{for(Zt=0;Zt{r._d&&Do(-1);const o=fn(t);let i;try{i=e(...n)}finally{fn(o),r._d&&Do(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function pn(e,t){if(null===un)return e;const n=wi(un),r=e.dirs||(e.dirs=[]);for(let e=0;e{e.isMounted=!0})),$n((()=>{e.isUnmounting=!0})),e}const mn=[Function,Array],bn={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:mn,onEnter:mn,onAfterEnter:mn,onEnterCancelled:mn,onBeforeLeave:mn,onLeave:mn,onAfterLeave:mn,onLeaveCancelled:mn,onBeforeAppear:mn,onAppear:mn,onAfterAppear:mn,onAppearCancelled:mn},wn=e=>{const t=e.subTree;return t.component?wn(t.component):t},Cn={name:"BaseTransition",props:bn,setup(e,{slots:t}){const n=ai(),r=yn();return()=>{const o=t.default&&En(t.default(),!0);if(!o||!o.length)return;let i=o[0];if(o.length>1){let e=!1;for(const t of o)if(t.type!==Ao){0,i=t,e=!0;break}}const a=xt(e),{mode:l}=a;if(r.isLeaving)return On(i);const s=kn(i);if(!s)return On(i);let u=xn(s,a,r,n,(e=>u=e));Sn(s,u);const c=n.subTree,f=c&&kn(c);if(f&&f.type!==Ao&&!Ho(s,f)&&wn(n).type!==Ao){const e=xn(f,a,r,n);if(Sn(f,e),"out-in"===l&&s.type!==Ao)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,!1!==n.update.active&&(n.effect.dirty=!0,n.update())},On(i);"in-out"===l&&s.type!==Ao&&(e.delayLeave=(e,t,n)=>{_n(r,f)[String(f.key)]=f,e[vn]=()=>{t(),e[vn]=void 0,delete u.delayedLeave},u.delayedLeave=n})}return i}}};function _n(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function xn(e,t,n,r,o){const{appear:i,mode:a,persisted:l=!1,onBeforeEnter:s,onEnter:u,onAfterEnter:c,onEnterCancelled:f,onBeforeLeave:d,onLeave:p,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:y,onAppear:m,onAfterAppear:b,onAppearCancelled:w}=t,C=String(e.key),_=_n(n,e),x=(e,t)=>{e&&Ht(e,r,9,t)},O=(e,t)=>{const n=t[1];x(e,t),v(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},k={mode:a,persisted:l,beforeEnter(t){let r=s;if(!n.isMounted){if(!i)return;r=y||s}t[vn]&&t[vn](!0);const o=_[C];o&&Ho(e,o)&&o.el[vn]&&o.el[vn](),x(r,[t])},enter(e){let t=u,r=c,o=f;if(!n.isMounted){if(!i)return;t=m||u,r=b||c,o=w||f}let a=!1;const l=e[gn]=t=>{a||(a=!0,x(t?o:r,[e]),k.delayedLeave&&k.delayedLeave(),e[gn]=void 0)};t?O(t,[e,l]):l()},leave(t,r){const o=String(e.key);if(t[gn]&&t[gn](!0),n.isUnmounting)return r();x(d,[t]);let i=!1;const a=t[vn]=n=>{i||(i=!0,r(),x(n?g:h,[t]),t[vn]=void 0,_[o]===e&&delete _[o])};_[o]=e,p?O(p,[t,a]):a()},clone(e){const i=xn(e,t,n,r,o);return o&&o(i),i}};return k}function On(e){if(An(e))return(e=Ko(e)).children=null,e}function kn(e){if(!An(e))return e;const{shapeFlag:t,children:n}=e;if(n){if(16&t)return n[0];if(32&t&&b(n.default))return n.default()}}function Sn(e,t){6&e.shapeFlag&&e.component?Sn(e.component.subTree,t):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function En(e,t=!1,n){let r=[],o=0;for(let i=0;i1)for(let e=0;ef({name:e.name},t,{setup:e}))():e}const Pn=e=>!!e.type.__asyncLoader;const An=e=>e.type.__isKeepAlive;RegExp,RegExp;function jn(e,t){return v(e)?e.some((e=>jn(e,t))):w(e)?e.split(",").includes(t):"[object RegExp]"===k(e)&&e.test(t)}function Tn(e,t){Fn(e,"a",t)}function Rn(e,t){Fn(e,"da",t)}function Fn(e,t,n=ii){const r=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(Bn(t,r,n),n){let e=n.parent;for(;e&&e.parent;)An(e.parent.vnode)&&In(r,t,n,e),e=e.parent}}function In(e,t,n,r){const o=Bn(t,e,r,!0);zn((()=>{d(r[t],o)}),n)}function Mn(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Dn(e){return 128&e.shapeFlag?e.ssContent:e}function Bn(e,t,n=ii,r=!1){if(n){const o=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...r)=>{we();const o=ui(n),i=Ht(t,n,e,r);return o(),Ce(),i});return r?o.unshift(i):o.push(i),i}}const Nn=e=>(t,n=ii)=>{hi&&"sp"!==e||Bn(e,((...e)=>t(...e)),n)},Un=Nn("bm"),Vn=Nn("m"),Hn=Nn("bu"),qn=Nn("u"),$n=Nn("bum"),zn=Nn("um"),Wn=Nn("sp"),Zn=Nn("rtg"),Kn=Nn("rtc");function Yn(e,t=ii){Bn("ec",e,t)}const Gn="components";const Jn=Symbol.for("v-ndc");function Qn(e,t,n=!0,r=!1){const o=un||ii;if(o){const n=o.type;if(e===Gn){const e=Ci(n,!1);if(e&&(e===t||e===T(t)||e===I(T(t))))return n}const i=Xn(o[e]||n[e],t)||Xn(o.appContext[e],t);return!i&&r?n:i}}function Xn(e,t){return e&&(e[t]||e[T(t)]||e[I(T(t))])}function er(e,t,n,r){let o;const i=n&&n[r];if(v(e)||w(e)){o=new Array(e.length);for(let n=0,r=e.length;nt(e,n,void 0,i&&i[n])));else{const n=Object.keys(e);o=new Array(n.length);for(let r=0,a=n.length;r!Vo(e)||e.type!==Ao&&!(e.type===Lo&&!nr(e.children))))?e:null}const rr=e=>e?fi(e)?wi(e):rr(e.parent):null,or=f(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>rr(e.parent),$root:e=>rr(e.root),$emit:e=>e.emit,$options:e=>dr(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,en(e.update)}),$nextTick:e=>e.n||(e.n=Xt.bind(e.proxy)),$watch:e=>ho.bind(e)}),ir=(e,t)=>e!==i&&!e.__isScriptSetup&&h(e,t),ar={get({_:e},t){if("__v_skip"===t)return!0;const{ctx:n,setupState:r,data:o,props:a,accessCache:l,type:s,appContext:u}=e;let c;if("$"!==t[0]){const s=l[t];if(void 0!==s)switch(s){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return a[t]}else{if(ir(r,t))return l[t]=1,r[t];if(o!==i&&h(o,t))return l[t]=2,o[t];if((c=e.propsOptions[0])&&h(c,t))return l[t]=3,a[t];if(n!==i&&h(n,t))return l[t]=4,n[t];sr&&(l[t]=0)}}const f=or[t];let d,p;return f?("$attrs"===t&&je(e.attrs,0,""),f(e)):(d=s.__cssModules)&&(d=d[t])?d:n!==i&&h(n,t)?(l[t]=4,n[t]):(p=u.config.globalProperties,h(p,t)?p[t]:void 0)},set({_:e},t,n){const{data:r,setupState:o,ctx:a}=e;return ir(o,t)?(o[t]=n,!0):r!==i&&h(r,t)?(r[t]=n,!0):!h(e.props,t)&&(("$"!==t[0]||!(t.slice(1)in e))&&(a[t]=n,!0))},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:a}},l){let s;return!!n[l]||e!==i&&h(e,l)||ir(t,l)||(s=a[0])&&h(s,l)||h(r,l)||h(or,l)||h(o.config.globalProperties,l)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:h(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function lr(e){return v(e)?e.reduce(((e,t)=>(e[t]=null,e)),{}):e}let sr=!0;function ur(e){const t=dr(e),n=e.proxy,r=e.ctx;sr=!1,t.beforeCreate&&cr(t.beforeCreate,e,"bc");const{data:o,computed:i,methods:a,watch:s,provide:u,inject:c,created:f,beforeMount:d,mounted:p,beforeUpdate:h,updated:g,activated:y,deactivated:m,beforeDestroy:w,beforeUnmount:C,destroyed:x,unmounted:O,render:k,renderTracked:S,renderTriggered:E,errorCaptured:L,serverPrefetch:P,expose:A,inheritAttrs:j,components:T,directives:R,filters:F}=t;if(c&&function(e,t){v(e)&&(e=gr(e));for(const n in e){const r=e[n];let o;o=_(r)?"default"in r?kr(r.from||n,r.default,!0):kr(r.from||n):kr(r),jt(o)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>o.value,set:e=>o.value=e}):t[n]=o}}(c,r,null),a)for(const e in a){const t=a[e];b(t)&&(r[e]=t.bind(n))}if(o){0;const t=o.call(n,n);0,_(t)&&(e.data=vt(t))}if(sr=!0,i)for(const e in i){const t=i[e],o=b(t)?t.bind(n,n):b(t.get)?t.get.bind(n,n):l;0;const a=!b(t)&&b(t.set)?t.set.bind(n):l,s=xi({get:o,set:a});Object.defineProperty(r,e,{enumerable:!0,configurable:!0,get:()=>s.value,set:e=>s.value=e})}if(s)for(const e in s)fr(s[e],r,n,e);if(u){const e=b(u)?u.call(n):u;Reflect.ownKeys(e).forEach((t=>{Or(t,e[t])}))}function I(e,t){v(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(f&&cr(f,e,"c"),I(Un,d),I(Vn,p),I(Hn,h),I(qn,g),I(Tn,y),I(Rn,m),I(Yn,L),I(Kn,S),I(Zn,E),I($n,C),I(zn,O),I(Wn,P),v(A))if(A.length){const t=e.exposed||(e.exposed={});A.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});k&&e.render===l&&(e.render=k),null!=j&&(e.inheritAttrs=j),T&&(e.components=T),R&&(e.directives=R)}function cr(e,t,n){Ht(v(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function fr(e,t,n,r){const o=r.includes(".")?vo(n,r):()=>n[r];if(w(e)){const n=t[e];b(n)&&fo(o,n)}else if(b(e))fo(o,e.bind(n));else if(_(e))if(v(e))e.forEach((e=>fr(e,t,n,r)));else{const r=b(e.handler)?e.handler.bind(n):t[e.handler];b(r)&&fo(o,r,e)}else 0}function dr(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:i,config:{optionMergeStrategies:a}}=e.appContext,l=i.get(t);let s;return l?s=l:o.length||n||r?(s={},o.length&&o.forEach((e=>pr(s,e,a,!0))),pr(s,t,a)):s=t,_(t)&&i.set(t,s),s}function pr(e,t,n,r=!1){const{mixins:o,extends:i}=t;i&&pr(e,i,n,!0),o&&o.forEach((t=>pr(e,t,n,!0)));for(const o in t)if(r&&"expose"===o);else{const r=hr[o]||n&&n[o];e[o]=r?r(e[o],t[o]):t[o]}return e}const hr={data:vr,props:br,emits:br,methods:mr,computed:mr,beforeCreate:yr,created:yr,beforeMount:yr,mounted:yr,beforeUpdate:yr,updated:yr,beforeDestroy:yr,beforeUnmount:yr,destroyed:yr,unmounted:yr,activated:yr,deactivated:yr,errorCaptured:yr,serverPrefetch:yr,components:mr,directives:mr,watch:function(e,t){if(!e)return t;if(!t)return e;const n=f(Object.create(null),e);for(const r in t)n[r]=yr(e[r],t[r]);return n},provide:vr,inject:function(e,t){return mr(gr(e),gr(t))}};function vr(e,t){return t?e?function(){return f(b(e)?e.call(this,this):e,b(t)?t.call(this,this):t)}:t:e}function gr(e){if(v(e)){const t={};for(let n=0;n(i.has(e)||(e&&b(e.install)?(i.add(e),e.install(l,...t)):b(e)&&(i.add(e),e(l,...t))),l),mixin:e=>(o.mixins.includes(e)||o.mixins.push(e),l),component:(e,t)=>t?(o.components[e]=t,l):o.components[e],directive:(e,t)=>t?(o.directives[e]=t,l):o.directives[e],mount(i,s,u){if(!a){0;const c=Wo(n,r);return c.appContext=o,!0===u?u="svg":!1===u&&(u=void 0),s&&t?t(c,i):e(c,i,u),a=!0,l._container=i,i.__vue_app__=l,wi(c.component)}},unmount(){a&&(e(null,l._container),delete l._container.__vue_app__)},provide:(e,t)=>(o.provides[e]=t,l),runWithContext(e){const t=xr;xr=l;try{return e()}finally{xr=t}}};return l}}let xr=null;function Or(e,t){if(ii){let n=ii.provides;const r=ii.parent&&ii.parent.provides;r===n&&(n=ii.provides=Object.create(r)),n[e]=t}else 0}function kr(e,t,n=!1){const r=ii||un;if(r||xr){const o=xr?xr._context.provides:r?null==r.parent?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides:void 0;if(o&&e in o)return o[e];if(arguments.length>1)return n&&b(t)?t.call(r&&r.proxy):t}else 0}const Sr={},Er=()=>Object.create(Sr),Lr=e=>Object.getPrototypeOf(e)===Sr;function Pr(e,t,n,r){const[o,a]=e.propsOptions;let l,s=!1;if(t)for(let i in t){if(P(i))continue;const u=t[i];let c;o&&h(o,c=T(i))?a&&a.includes(c)?(l||(l={}))[c]=u:n[c]=u:wo(e.emitsOptions,i)||i in r&&u===r[i]||(r[i]=u,s=!0)}if(a){const t=xt(n),r=l||i;for(let i=0;i{c=!0;const[n,r]=Tr(e,t,!0);f(s,n),r&&u.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!l&&!c)return _(e)&&r.set(e,a),a;if(v(l))for(let e=0;e"_"===e[0]||"$stable"===e,Ir=e=>v(e)?e.map(Qo):[Qo(e)],Mr=(e,t,n)=>{if(t._n)return t;const r=dn(((...e)=>Ir(t(...e))),n);return r._c=!1,r},Dr=(e,t,n)=>{const r=e._ctx;for(const n in e){if(Fr(n))continue;const o=e[n];if(b(o))t[n]=Mr(0,o,r);else if(null!=o){0;const e=Ir(o);t[n]=()=>e}}},Br=(e,t)=>{const n=Ir(t);e.slots.default=()=>n},Nr=(e,t,n)=>{for(const r in t)(n||"_"!==r)&&(e[r]=t[r])},Ur=(e,t,n)=>{const r=e.slots=Er();if(32&e.vnode.shapeFlag){const e=t._;e?(Nr(r,t,n),n&&N(r,"_",e,!0)):Dr(t,r)}else t&&Br(e,t)},Vr=(e,t,n)=>{const{vnode:r,slots:o}=e;let a=!0,l=i;if(32&r.shapeFlag){const e=t._;e?n&&1===e?a=!1:Nr(o,t,n):(a=!t.$stable,Dr(t,o)),l=t}else t&&(Br(e,t),l={default:1});if(a)for(const e in o)Fr(e)||null!=l[e]||delete o[e]};function Hr(e,t,n,r,o=!1){if(v(e))return void e.forEach(((e,i)=>Hr(e,t&&(v(t)?t[i]:t),n,r,o)));if(Pn(r)&&!o)return;const a=4&r.shapeFlag?wi(r.component):r.el,l=o?null:a,{i:s,r:u}=e;const c=t&&t.r,f=s.refs===i?s.refs={}:s.refs,p=s.setupState;if(null!=c&&c!==u&&(w(c)?(f[c]=null,h(p,c)&&(p[c]=null)):jt(c)&&(c.value=null)),b(u))Vt(u,s,12,[l,f]);else{const t=w(u),r=jt(u);if(t||r){const i=()=>{if(e.f){const n=t?h(p,u)?p[u]:f[u]:u.value;o?v(n)&&d(n,a):v(n)?n.includes(a)||n.push(a):t?(f[u]=[a],h(p,u)&&(p[u]=f[u])):(u.value=[a],e.k&&(f[e.k]=u.value))}else t?(f[u]=l,h(p,u)&&(p[u]=l)):r&&(u.value=l,e.k&&(f[e.k]=l))};l?(i.id=-1,Xr(i,n)):i()}else 0}}const qr=Symbol("_vte"),$r=e=>e&&(e.disabled||""===e.disabled),zr=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,Wr=e=>"function"==typeof MathMLElement&&e instanceof MathMLElement,Zr=(e,t)=>{const n=e&&e.to;if(w(n)){if(t){return t(n)}return null}return n},Kr={name:"Teleport",__isTeleport:!0,process(e,t,n,r,o,i,a,l,s,u){const{mc:c,pc:f,pbc:d,o:{insert:p,querySelector:h,createText:v,createComment:g}}=u,y=$r(t.props);let{shapeFlag:m,children:b,dynamicChildren:w}=t;if(null==e){const e=t.el=v(""),u=t.anchor=v("");p(e,n,r),p(u,n,r);const f=t.target=Zr(t.props,h),d=Qr(f,t,v,p);f&&("svg"===a||zr(f)?a="svg":("mathml"===a||Wr(f))&&(a="mathml"));const g=(e,t)=>{16&m&&c(b,e,t,o,i,a,l,s)};y?g(n,u):f&&g(f,d)}else{t.el=e.el,t.targetStart=e.targetStart;const r=t.anchor=e.anchor,c=t.target=e.target,p=t.targetAnchor=e.targetAnchor,v=$r(e.props),g=v?n:c,m=v?r:p;if("svg"===a||zr(c)?a="svg":("mathml"===a||Wr(c))&&(a="mathml"),w?(d(e.dynamicChildren,w,g,o,i,a,l),oo(e,t,!0)):s||f(e,t,g,m,o,i,a,l,!1),y)v?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Yr(t,n,r,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const e=t.target=Zr(t.props,h);e&&Yr(t,e,null,u,0)}else v&&Yr(t,c,p,u,1)}Jr(t)},remove(e,t,n,{um:r,o:{remove:o}},i){const{shapeFlag:a,children:l,anchor:s,targetStart:u,targetAnchor:c,target:f,props:d}=e;if(f&&(o(u),o(c)),i&&o(s),16&a){const e=i||!$r(d);for(let o=0;o{if(e===t)return;e&&!Ho(e,t)&&(r=G(e),z(e,o,i,!0),e=null),-2===t.patchFlag&&(s=!1,t.dynamicChildren=null);const{type:u,ref:c,shapeFlag:f}=t;switch(u){case Po:b(e,t,n,r);break;case Ao:w(e,t,n,r);break;case jo:null==e&&C(t,n,r,a);break;case Lo:j(e,t,n,r,o,i,a,l,s);break;default:1&f?x(e,t,n,r,o,i,a,l,s):6&f?R(e,t,n,r,o,i,a,l,s):(64&f||128&f)&&u.process(e,t,n,r,o,i,a,l,s,X)}null!=c&&o&&Hr(c,e&&e.ref,i,t||e,!t)},b=(e,t,r,o)=>{if(null==e)n(t.el=u(t.children),r,o);else{const n=t.el=e.el;t.children!==e.children&&f(n,t.children)}},w=(e,t,r,o)=>{null==e?n(t.el=c(t.children||""),r,o):t.el=e.el},C=(e,t,n,r)=>{[e.el,e.anchor]=y(e.children,t,n,r,e.el,e.anchor)},_=({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=v(e),r(e),e=n;r(t)},x=(e,t,n,r,o,i,a,l,s)=>{"svg"===t.type?a="svg":"math"===t.type&&(a="mathml"),null==e?O(t,n,r,o,i,a,l,s):E(e,t,o,i,a,l,s)},O=(e,t,r,i,a,l,u,c)=>{let f,p;const{props:h,shapeFlag:v,transition:g,dirs:y}=e;if(f=e.el=s(e.type,l,h&&h.is,h),8&v?d(f,e.children):16&v&&S(e.children,f,null,i,a,to(e,l),u,c),y&&hn(e,null,i,"created"),k(f,e,e.scopeId,u,i),h){for(const e in h)"value"===e||P(e)||o(f,e,null,h[e],l,i);"value"in h&&o(f,"value",null,h.value,l),(p=h.onVnodeBeforeMount)&&ti(p,i,e)}y&&hn(e,null,i,"beforeMount");const m=ro(a,g);m&&g.beforeEnter(f),n(f,t,r),((p=h&&h.onVnodeMounted)||m||y)&&Xr((()=>{p&&ti(p,i,e),m&&g.enter(f),y&&hn(e,null,i,"mounted")}),a)},k=(e,t,n,r,o)=>{if(n&&g(e,n),r)for(let t=0;t{for(let u=s;u{const u=t.el=e.el;let{patchFlag:c,dynamicChildren:f,dirs:p}=t;c|=16&e.patchFlag;const h=e.props||i,v=t.props||i;let g;if(n&&no(n,!1),(g=v.onVnodeBeforeUpdate)&&ti(g,n,t,e),p&&hn(t,e,n,"beforeUpdate"),n&&no(n,!0),(h.innerHTML&&null==v.innerHTML||h.textContent&&null==v.textContent)&&d(u,""),f?L(e.dynamicChildren,f,u,n,r,to(t,a),l):s||U(e,t,u,null,n,r,to(t,a),l,!1),c>0){if(16&c)A(u,h,v,n,a);else if(2&c&&h.class!==v.class&&o(u,"class",null,v.class,a),4&c&&o(u,"style",h.style,v.style,a),8&c){const e=t.dynamicProps;for(let t=0;t{g&&ti(g,n,t,e),p&&hn(t,e,n,"updated")}),r)},L=(e,t,n,r,o,i,a)=>{for(let l=0;l{if(t!==n){if(t!==i)for(const i in t)P(i)||i in n||o(e,i,t[i],null,a,r);for(const i in n){if(P(i))continue;const l=n[i],s=t[i];l!==s&&"value"!==i&&o(e,i,s,l,a,r)}"value"in n&&o(e,"value",t.value,n.value,a)}},j=(e,t,r,o,i,a,l,s,c)=>{const f=t.el=e?e.el:u(""),d=t.anchor=e?e.anchor:u("");let{patchFlag:p,dynamicChildren:h,slotScopeIds:v}=t;v&&(s=s?s.concat(v):v),null==e?(n(f,r,o),n(d,r,o),S(t.children||[],r,d,i,a,l,s,c)):p>0&&64&p&&h&&e.dynamicChildren?(L(e.dynamicChildren,h,r,i,a,l,s),(null!=t.key||i&&t===i.subTree)&&oo(e,t,!0)):U(e,t,r,d,i,a,l,s,c)},R=(e,t,n,r,o,i,a,l,s)=>{t.slotScopeIds=l,null==e?512&t.shapeFlag?o.ctx.activate(t,n,r,a,s):I(t,n,r,o,i,a,s):M(e,t,s)},I=(e,t,n,r,o,i,a)=>{const l=e.component=oi(e,r,o);if(An(e)&&(l.ctx.renderer=X),vi(l,!1,a),l.asyncDep){if(o&&o.registerDep(l,D,a),!e.el){const e=l.subTree=Wo(Ao);w(null,e,t,n)}}else D(l,e,t,n,o,i,a)},M=(e,t,n)=>{const r=t.component=e.component;if(function(e,t,n){const{props:r,children:o,component:i}=e,{props:a,children:l,patchFlag:s}=t,u=i.emitsOptions;0;if(t.dirs||t.transition)return!0;if(!(n&&s>=0))return!(!o&&!l||l&&l.$stable)||r!==a&&(r?!a||Oo(r,a,u):!!a);if(1024&s)return!0;if(16&s)return r?Oo(r,a,u):!!a;if(8&s){const e=t.dynamicProps;for(let t=0;tZt&&Wt.splice(t,1)}(r.update),r.effect.dirty=!0,r.update()}else t.el=e.el,r.vnode=t},D=(e,t,n,r,o,i,a)=>{const s=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:l,vnode:u}=e;{const n=io(e);if(n)return t&&(t.el=u.el,N(e,t,a)),void n.asyncDep.then((()=>{e.isUnmounted||s()}))}let c,f=t;0,no(e,!1),t?(t.el=u.el,N(e,t,a)):t=u,n&&B(n),(c=t.props&&t.props.onVnodeBeforeUpdate)&&ti(c,l,t,u),no(e,!0);const d=Co(e);0;const h=e.subTree;e.subTree=d,m(h,d,p(h.el),G(h),e,o,i),t.el=d.el,null===f&&ko(e,d.el),r&&Xr(r,o),(c=t.props&&t.props.onVnodeUpdated)&&Xr((()=>ti(c,l,t,u)),o)}else{let a;const{el:l,props:s}=t,{bm:u,m:c,parent:f}=e,d=Pn(t);if(no(e,!1),u&&B(u),!d&&(a=s&&s.onVnodeBeforeMount)&&ti(a,f,t),no(e,!0),l&&te){const n=()=>{e.subTree=Co(e),te(l,e.subTree,e,o,null)};d?t.type.__asyncLoader().then((()=>!e.isUnmounted&&n())):n()}else{0;const a=e.subTree=Co(e);0,m(null,a,n,r,e,o,i),t.el=a.el}if(c&&Xr(c,o),!d&&(a=s&&s.onVnodeMounted)){const e=t;Xr((()=>ti(a,f,e)),o)}(256&t.shapeFlag||f&&Pn(f.vnode)&&256&f.vnode.shapeFlag)&&e.a&&Xr(e.a,o),e.isMounted=!0,t=n=r=null}},u=e.effect=new de(s,l,(()=>en(c)),e.scope),c=e.update=()=>{u.dirty&&u.run()};c.i=e,c.id=e.uid,no(e,!0),c()},N=(e,t,n)=>{t.component=e;const r=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,r){const{props:o,attrs:i,vnode:{patchFlag:a}}=e,l=xt(o),[s]=e.propsOptions;let u=!1;if(!(r||a>0)||16&a){let r;Pr(e,t,o,i)&&(u=!0);for(const i in l)t&&(h(t,i)||(r=F(i))!==i&&h(t,r))||(s?!n||void 0===n[i]&&void 0===n[r]||(o[i]=Ar(s,l,i,void 0,e,!0)):delete o[i]);if(i!==l)for(const e in i)t&&h(t,e)||(delete i[e],u=!0)}else if(8&a){const n=e.vnode.dynamicProps;for(let r=0;r{const u=e&&e.children,c=e?e.shapeFlag:0,f=t.children,{patchFlag:p,shapeFlag:h}=t;if(p>0){if(128&p)return void H(u,f,n,r,o,i,a,l,s);if(256&p)return void V(u,f,n,r,o,i,a,l,s)}8&h?(16&c&&Y(u,o,i),f!==u&&d(n,f)):16&c?16&h?H(u,f,n,r,o,i,a,l,s):Y(u,o,i,!0):(8&c&&d(n,""),16&h&&S(f,n,r,o,i,a,l,s))},V=(e,t,n,r,o,i,l,s,u)=>{t=t||a;const c=(e=e||a).length,f=t.length,d=Math.min(c,f);let p;for(p=0;pf?Y(e,o,i,!0,!1,d):S(t,n,r,o,i,l,s,u,d)},H=(e,t,n,r,o,i,l,s,u)=>{let c=0;const f=t.length;let d=e.length-1,p=f-1;for(;c<=d&&c<=p;){const r=e[c],a=t[c]=u?Xo(t[c]):Qo(t[c]);if(!Ho(r,a))break;m(r,a,n,null,o,i,l,s,u),c++}for(;c<=d&&c<=p;){const r=e[d],a=t[p]=u?Xo(t[p]):Qo(t[p]);if(!Ho(r,a))break;m(r,a,n,null,o,i,l,s,u),d--,p--}if(c>d){if(c<=p){const e=p+1,a=ep)for(;c<=d;)z(e[c],o,i,!0),c++;else{const h=c,v=c,g=new Map;for(c=v;c<=p;c++){const e=t[c]=u?Xo(t[c]):Qo(t[c]);null!=e.key&&g.set(e.key,c)}let y,b=0;const w=p-v+1;let C=!1,_=0;const x=new Array(w);for(c=0;c=w){z(r,o,i,!0);continue}let a;if(null!=r.key)a=g.get(r.key);else for(y=v;y<=p;y++)if(0===x[y-v]&&Ho(r,t[y])){a=y;break}void 0===a?z(r,o,i,!0):(x[a-v]=c+1,a>=_?_=a:C=!0,m(r,t[a],n,null,o,i,l,s,u),b++)}const O=C?function(e){const t=e.slice(),n=[0];let r,o,i,a,l;const s=e.length;for(r=0;r>1,e[n[l]]0&&(t[r]=n[i-1]),n[i]=r)}}i=n.length,a=n[i-1];for(;i-- >0;)n[i]=a,a=t[a];return n}(x):a;for(y=O.length-1,c=w-1;c>=0;c--){const e=v+c,a=t[e],d=e+1{const{el:a,type:l,transition:s,children:u,shapeFlag:c}=e;if(6&c)return void $(e.component.subTree,t,r,o);if(128&c)return void e.suspense.move(t,r,o);if(64&c)return void l.move(e,t,r,X);if(l===Lo){n(a,t,r);for(let e=0;e{let i;for(;e&&e!==t;)i=v(e),n(e,r,o),e=i;n(t,r,o)})(e,t,r);if(2!==o&&1&c&&s)if(0===o)s.beforeEnter(a),n(a,t,r),Xr((()=>s.enter(a)),i);else{const{leave:e,delayLeave:o,afterLeave:i}=s,l=()=>n(a,t,r),u=()=>{e(a,(()=>{l(),i&&i()}))};o?o(a,l,u):u()}else n(a,t,r)},z=(e,t,n,r=!1,o=!1)=>{const{type:i,props:a,ref:l,children:s,dynamicChildren:u,shapeFlag:c,patchFlag:f,dirs:d,cacheIndex:p}=e;if(-2===f&&(o=!1),null!=l&&Hr(l,null,n,e,!0),null!=p&&(t.renderCache[p]=void 0),256&c)return void t.ctx.deactivate(e);const h=1&c&&d,v=!Pn(e);let g;if(v&&(g=a&&a.onVnodeBeforeUnmount)&&ti(g,t,e),6&c)K(e.component,n,r);else{if(128&c)return void e.suspense.unmount(n,r);h&&hn(e,null,t,"beforeUnmount"),64&c?e.type.remove(e,t,n,X,r):u&&!u.hasOnce&&(i!==Lo||f>0&&64&f)?Y(u,t,n,!1,!0):(i===Lo&&384&f||!o&&16&c)&&Y(s,t,n),r&&W(e)}(v&&(g=a&&a.onVnodeUnmounted)||h)&&Xr((()=>{g&&ti(g,t,e),h&&hn(e,null,t,"unmounted")}),n)},W=e=>{const{type:t,el:n,anchor:o,transition:i}=e;if(t===Lo)return void Z(n,o);if(t===jo)return void _(e);const a=()=>{r(n),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(1&e.shapeFlag&&i&&!i.persisted){const{leave:t,delayLeave:r}=i,o=()=>t(n,a);r?r(e.el,a,o):o()}else a()},Z=(e,t)=>{let n;for(;e!==t;)n=v(e),r(e),e=n;r(t)},K=(e,t,n)=>{const{bum:r,scope:o,update:i,subTree:a,um:l,m:s,a:u}=e;ao(s),ao(u),r&&B(r),o.stop(),i&&(i.active=!1,z(a,e,t,n)),l&&Xr(l,t),Xr((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},Y=(e,t,n,r=!1,o=!1,i=0)=>{for(let a=i;a{if(6&e.shapeFlag)return G(e.component.subTree);if(128&e.shapeFlag)return e.suspense.next();const t=v(e.anchor||e.el),n=t&&t[qr];return n?v(n):t};let J=!1;const Q=(e,t,n)=>{null==e?t._vnode&&z(t._vnode,null,null,!0):m(t._vnode||null,e,t,null,null,null,n),t._vnode=e,J||(J=!0,rn(),on(),J=!1)},X={p:m,um:z,m:$,r:W,mt:I,mc:S,pc:U,pbc:L,n:G,o:e};let ee,te;return t&&([ee,te]=t(X)),{render:Q,hydrate:ee,createApp:_r(Q,ee)}}function to({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function no({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function ro(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function oo(e,t,n=!1){const r=e.children,o=t.children;if(v(r)&&v(o))for(let e=0;e{{const e=kr(lo);return e}};function uo(e,t){return po(e,null,t)}const co={};function fo(e,t,n){return po(e,t,n)}function po(e,t,{immediate:n,deep:r,flush:o,once:a,onTrack:s,onTrigger:u}=i){if(t&&a){const e=t;t=(...t)=>{e(...t),S()}}const c=ii,f=e=>!0===r?e:go(e,!1===r?1:void 0);let p,h,g=!1,y=!1;if(jt(e)?(p=()=>e.value,g=Ct(e)):bt(e)?(p=()=>f(e),g=!0):v(e)?(y=!0,g=e.some((e=>bt(e)||Ct(e))),p=()=>e.map((e=>jt(e)?e.value:bt(e)?f(e):b(e)?Vt(e,c,2):void 0))):p=b(e)?t?()=>Vt(e,c,2):()=>(h&&h(),Ht(e,c,3,[w])):l,t&&r){const e=p;p=()=>go(e())}let m,w=e=>{h=O.onStop=()=>{Vt(e,c,4),h=O.onStop=void 0}};if(hi){if(w=l,t?n&&Ht(t,c,3,[p(),y?[]:void 0,w]):p(),"sync"!==o)return l;{const e=so();m=e.__watcherHandles||(e.__watcherHandles=[])}}let C=y?new Array(e.length).fill(co):co;const _=()=>{if(O.active&&O.dirty)if(t){const e=O.run();(r||g||(y?e.some(((e,t)=>D(e,C[t]))):D(e,C)))&&(h&&h(),Ht(t,c,3,[e,C===co?void 0:y&&C[0]===co?[]:C,w]),C=e)}else O.run()};let x;_.allowRecurse=!!t,"sync"===o?x=_:"post"===o?x=()=>Xr(_,c&&c.suspense):(_.pre=!0,c&&(_.id=c.uid),x=()=>en(_));const O=new de(p,l,x),k=ce(),S=()=>{O.stop(),k&&d(k.effects,O)};return t?n?_():C=O.run():"post"===o?Xr(O.run.bind(O),c&&c.suspense):O.run(),m&&m.push(S),S}function ho(e,t,n){const r=this.proxy,o=w(e)?e.includes(".")?vo(r,e):()=>r[e]:e.bind(r,r);let i;b(t)?i=t:(i=t.handler,n=t);const a=ui(this),l=po(o,i.bind(r),n);return a(),l}function vo(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e{go(e,t,n)}));else if(E(e)){for(const r in e)go(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&go(e[r],t,n)}return e}const yo=(e,t)=>"modelValue"===t||"model-value"===t?e.modelModifiers:e[`${t}Modifiers`]||e[`${T(t)}Modifiers`]||e[`${F(t)}Modifiers`];function mo(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||i;let o=n;const a=t.startsWith("update:"),l=a&&yo(r,t.slice(7));let s;l&&(l.trim&&(o=n.map((e=>w(e)?e.trim():e))),l.number&&(o=n.map(U)));let u=r[s=M(t)]||r[s=M(T(t))];!u&&a&&(u=r[s=M(F(t))]),u&&Ht(u,e,6,o);const c=r[s+"Once"];if(c){if(e.emitted){if(e.emitted[s])return}else e.emitted={};e.emitted[s]=!0,Ht(c,e,6,o)}}function bo(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(void 0!==o)return o;const i=e.emits;let a={},l=!1;if(!b(e)){const r=e=>{const n=bo(e,t,!0);n&&(l=!0,f(a,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return i||l?(v(i)?i.forEach((e=>a[e]=null)):f(a,i),_(e)&&r.set(e,a),a):(_(e)&&r.set(e,null),null)}function wo(e,t){return!(!e||!u(t))&&(t=t.slice(2).replace(/Once$/,""),h(e,t[0].toLowerCase()+t.slice(1))||h(e,F(t))||h(e,t))}function Co(e){const{type:t,vnode:n,proxy:r,withProxy:o,propsOptions:[i],slots:a,attrs:l,emit:s,render:u,renderCache:f,props:d,data:p,setupState:h,ctx:v,inheritAttrs:g}=e,y=fn(e);let m,b;try{if(4&n.shapeFlag){const e=o||r,t=e;m=Qo(u.call(t,e,f,d,h,p,v)),b=l}else{const e=t;0,m=Qo(e.length>1?e(d,{attrs:l,slots:a,emit:s}):e(d,null)),b=t.props?l:_o(l)}}catch(t){To.length=0,qt(t,e,1),m=Wo(Ao)}let w=m;if(b&&!1!==g){const e=Object.keys(b),{shapeFlag:t}=w;e.length&&7&t&&(i&&e.some(c)&&(b=xo(b,i)),w=Ko(w,b,!1,!0))}return n.dirs&&(w=Ko(w,null,!1,!0),w.dirs=w.dirs?w.dirs.concat(n.dirs):n.dirs),n.transition&&(w.transition=n.transition),m=w,fn(y),m}const _o=e=>{let t;for(const n in e)("class"===n||"style"===n||u(n))&&((t||(t={}))[n]=e[n]);return t},xo=(e,t)=>{const n={};for(const r in e)c(r)&&r.slice(9)in t||(n[r]=e[r]);return n};function Oo(e,t,n){const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let o=0;oe.__isSuspense;function Eo(e,t){t&&t.pendingBranch?v(e)?t.effects.push(...e):t.effects.push(e):nn(e)}const Lo=Symbol.for("v-fgt"),Po=Symbol.for("v-txt"),Ao=Symbol.for("v-cmt"),jo=Symbol.for("v-stc"),To=[];let Ro=null;function Fo(e=!1){To.push(Ro=e?null:[])}function Io(){To.pop(),Ro=To[To.length-1]||null}let Mo=1;function Do(e){Mo+=e,e<0&&Ro&&(Ro.hasOnce=!0)}function Bo(e){return e.dynamicChildren=Mo>0?Ro||a:null,Io(),Mo>0&&Ro&&Ro.push(e),e}function No(e,t,n,r,o,i){return Bo(zo(e,t,n,r,o,i,!0))}function Uo(e,t,n,r,o){return Bo(Wo(e,t,n,r,o,!0))}function Vo(e){return!!e&&!0===e.__v_isVNode}function Ho(e,t){return e.type===t.type&&e.key===t.key}const qo=({key:e})=>null!=e?e:null,$o=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?w(e)||jt(e)||b(e)?{i:un,r:e,k:t,f:!!n}:e:null);function zo(e,t=null,n=null,r=0,o=null,i=(e===Lo?0:1),a=!1,l=!1){const s={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&qo(t),ref:t&&$o(t),scopeId:cn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:un};return l?(ei(s,n),128&i&&e.normalize(s)):n&&(s.shapeFlag|=w(n)?8:16),Mo>0&&!a&&Ro&&(s.patchFlag>0||6&i)&&32!==s.patchFlag&&Ro.push(s),s}const Wo=Zo;function Zo(e,t=null,n=null,r=0,o=null,i=!1){if(e&&e!==Jn||(e=Ao),Vo(e)){const r=Ko(e,t,!0);return n&&ei(r,n),Mo>0&&!i&&Ro&&(6&r.shapeFlag?Ro[Ro.indexOf(e)]=r:Ro.push(r)),r.patchFlag=-2,r}if(_i(e)&&(e=e.__vccOpts),t){t=function(e){return e?_t(e)||Lr(e)?f({},e):e:null}(t);let{class:e,style:n}=t;e&&!w(e)&&(t.class=Y(e)),_(n)&&(_t(n)&&!v(n)&&(n=f({},n)),t.style=$(n))}return zo(e,t,n,r,o,w(e)?1:So(e)?128:(e=>e.__isTeleport)(e)?64:_(e)?4:b(e)?2:0,i,!0)}function Ko(e,t,n=!1,r=!1){const{props:o,ref:i,patchFlag:a,children:l,transition:s}=e,c=t?function(...e){const t={};for(let n=0;nii||un;let li,si;{const e=q(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach((t=>t(e))):r[0](e)}};li=t("__VUE_INSTANCE_SETTERS__",(e=>ii=e)),si=t("__VUE_SSR_SETTERS__",(e=>hi=e))}const ui=e=>{const t=ii;return li(e),e.scope.on(),()=>{e.scope.off(),li(t)}},ci=()=>{ii&&ii.scope.off(),li(null)};function fi(e){return 4&e.vnode.shapeFlag}let di,pi,hi=!1;function vi(e,t=!1,n=!1){t&&si(t);const{props:r,children:o}=e.vnode,i=fi(e);!function(e,t,n,r=!1){const o={},i=Er();e.propsDefaults=Object.create(null),Pr(e,t,o,i);for(const t in e.propsOptions[0])t in o||(o[t]=void 0);n?e.props=r?o:gt(o):e.type.props?e.props=o:e.props=i,e.attrs=i}(e,r,i,t),Ur(e,o,n);const a=i?function(e,t){const n=e.type;0;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,ar),!1;const{setup:r}=n;if(r){const n=e.setupContext=r.length>1?bi(e):null,o=ui(e);we();const i=Vt(r,e,0,[e.props,n]);if(Ce(),o(),x(i)){if(i.then(ci,ci),t)return i.then((n=>{gi(e,n,t)})).catch((t=>{qt(t,e,0)}));e.asyncDep=i}else gi(e,i,t)}else yi(e,t)}(e,t):void 0;return t&&si(!1),a}function gi(e,t,n){b(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:_(t)&&(e.setupState=Bt(t)),yi(e,n)}function yi(e,t,n){const r=e.type;if(!e.render){if(!t&&di&&!r.render){const t=r.template||dr(e).template;if(t){0;const{isCustomElement:n,compilerOptions:o}=e.appContext.config,{delimiters:i,compilerOptions:a}=r,l=f(f({isCustomElement:n,delimiters:i},o),a);r.render=di(t,l)}}e.render=r.render||l,pi&&pi(e)}{const t=ui(e);we();try{ur(e)}finally{Ce(),t()}}}const mi={get:(e,t)=>(je(e,0,""),e[t])};function bi(e){const t=t=>{e.exposed=t||{}};return{attrs:new Proxy(e.attrs,mi),slots:e.slots,emit:e.emit,expose:t}}function wi(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Bt(Ot(e.exposed)),{get:(t,n)=>n in t?t[n]:n in or?or[n](e):void 0,has:(e,t)=>t in e||t in or})):e.proxy}function Ci(e,t=!0){return b(e)?e.displayName||e.name:e.name||t&&e.__name}function _i(e){return b(e)&&"__vccOpts"in e}const xi=(e,t)=>Lt(e,0,hi);function Oi(e,t,n){const r=arguments.length;return 2===r?_(t)&&!v(t)?Vo(t)?Wo(e,null,[t]):Wo(e,t):Wo(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):3===r&&Vo(n)&&(n=[n]),Wo(e,t,n))}const ki="3.4.38",Si="undefined"!=typeof document?document:null,Ei=Si&&Si.createElement("template"),Li={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o="svg"===t?Si.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?Si.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?Si.createElement(e,{is:n}):Si.createElement(e);return"select"===e&&r&&null!=r.multiple&&o.setAttribute("multiple",r.multiple),o},createText:e=>Si.createTextNode(e),createComment:e=>Si.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Si.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,i){const a=n?n.previousSibling:t.lastChild;if(o&&(o===i||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),o!==i&&(o=o.nextSibling););else{Ei.innerHTML="svg"===r?`${e}`:"mathml"===r?`${e}`:e;const o=Ei.content;if("svg"===r||"mathml"===r){const e=o.firstChild;for(;e.firstChild;)o.appendChild(e.firstChild);o.removeChild(e)}t.insertBefore(o,n)}return[a?a.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Pi="transition",Ai="animation",ji=Symbol("_vtc"),Ti=(e,{slots:t})=>Oi(Cn,Mi(e),t);Ti.displayName="Transition";const Ri={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Fi=(Ti.props=f({},bn,Ri),(e,t=[])=>{v(e)?e.forEach((e=>e(...t))):e&&e(...t)}),Ii=e=>!!e&&(v(e)?e.some((e=>e.length>1)):e.length>1);function Mi(e){const t={};for(const n in e)n in Ri||(t[n]=e[n]);if(!1===e.css)return t;const{name:n="v",type:r,duration:o,enterFromClass:i=`${n}-enter-from`,enterActiveClass:a=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:s=i,appearActiveClass:u=a,appearToClass:c=l,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,v=function(e){if(null==e)return null;if(_(e))return[Di(e.enter),Di(e.leave)];{const t=Di(e);return[t,t]}}(o),g=v&&v[0],y=v&&v[1],{onBeforeEnter:m,onEnter:b,onEnterCancelled:w,onLeave:C,onLeaveCancelled:x,onBeforeAppear:O=m,onAppear:k=b,onAppearCancelled:S=w}=t,E=(e,t,n)=>{Ni(e,t?c:l),Ni(e,t?u:a),n&&n()},L=(e,t)=>{e._isLeaving=!1,Ni(e,d),Ni(e,h),Ni(e,p),t&&t()},P=e=>(t,n)=>{const o=e?k:b,a=()=>E(t,e,n);Fi(o,[t,a]),Ui((()=>{Ni(t,e?s:i),Bi(t,e?c:l),Ii(o)||Hi(t,r,g,a)}))};return f(t,{onBeforeEnter(e){Fi(m,[e]),Bi(e,i),Bi(e,a)},onBeforeAppear(e){Fi(O,[e]),Bi(e,s),Bi(e,u)},onEnter:P(!1),onAppear:P(!0),onLeave(e,t){e._isLeaving=!0;const n=()=>L(e,t);Bi(e,d),Bi(e,p),Wi(),Ui((()=>{e._isLeaving&&(Ni(e,d),Bi(e,h),Ii(C)||Hi(e,r,y,n))})),Fi(C,[e,n])},onEnterCancelled(e){E(e,!1),Fi(w,[e])},onAppearCancelled(e){E(e,!0),Fi(S,[e])},onLeaveCancelled(e){L(e),Fi(x,[e])}})}function Di(e){return V(e)}function Bi(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e[ji]||(e[ji]=new Set)).add(t)}function Ni(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const n=e[ji];n&&(n.delete(t),n.size||(e[ji]=void 0))}function Ui(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let Vi=0;function Hi(e,t,n,r){const o=e._endId=++Vi,i=()=>{o===e._endId&&r()};if(n)return setTimeout(i,n);const{type:a,timeout:l,propCount:s}=qi(e,t);if(!a)return r();const u=a+"end";let c=0;const f=()=>{e.removeEventListener(u,d),i()},d=t=>{t.target===e&&++c>=s&&f()};setTimeout((()=>{c(n[e]||"").split(", "),o=r(`${Pi}Delay`),i=r(`${Pi}Duration`),a=$i(o,i),l=r(`${Ai}Delay`),s=r(`${Ai}Duration`),u=$i(l,s);let c=null,f=0,d=0;t===Pi?a>0&&(c=Pi,f=a,d=i.length):t===Ai?u>0&&(c=Ai,f=u,d=s.length):(f=Math.max(a,u),c=f>0?a>u?Pi:Ai:null,d=c?c===Pi?i.length:s.length:0);return{type:c,timeout:f,propCount:d,hasTransform:c===Pi&&/\b(transform|all)(,|$)/.test(r(`${Pi}Property`).toString())}}function $i(e,t){for(;e.lengthzi(t)+zi(e[n]))))}function zi(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}function Wi(){return document.body.offsetHeight}const Zi=Symbol("_vod"),Ki=Symbol("_vsh"),Yi={beforeMount(e,{value:t},{transition:n}){e[Zi]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):Gi(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),Gi(e,!0),r.enter(e)):r.leave(e,(()=>{Gi(e,!1)})):Gi(e,t))},beforeUnmount(e,{value:t}){Gi(e,t)}};function Gi(e,t){e.style.display=t?e[Zi]:"none",e[Ki]=!t}const Ji=Symbol("");const Qi=/(^|;)\s*display\s*:/;const Xi=/\s*!important$/;function ea(e,t,n){if(v(n))n.forEach((n=>ea(e,t,n)));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=function(e,t){const n=na[t];if(n)return n;let r=T(t);if("filter"!==r&&r in e)return na[t]=r;r=I(r);for(let n=0;n{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();Ht(function(e,t){if(v(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>t=>!t._stopped&&e&&e(t)))}return t}(e,n.value),t,5,[e])};return n.value=e,n.attached=fa(),n}(r,o);ia(e,n,a,l)}else a&&(!function(e,t,n,r){e.removeEventListener(t,n,r)}(e,n,a,l),i[t]=void 0)}}const sa=/(?:Once|Passive|Capture)$/;let ua=0;const ca=Promise.resolve(),fa=()=>ua||(ca.then((()=>ua=0)),ua=Date.now());const da=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123;"undefined"!=typeof HTMLElement&&HTMLElement;Symbol("_moveCb"),Symbol("_enterCb");const pa=e=>{const t=e.props["onUpdate:modelValue"]||!1;return v(t)?e=>B(t,e):t};function ha(e){e.target.composing=!0}function va(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ga=Symbol("_assign"),ya={created(e,{modifiers:{lazy:t,trim:n,number:r}},o){e[ga]=pa(o);const i=r||o.props&&"number"===o.props.type;ia(e,t?"change":"input",(t=>{if(t.target.composing)return;let r=e.value;n&&(r=r.trim()),i&&(r=U(r)),e[ga](r)})),n&&ia(e,"change",(()=>{e.value=e.value.trim()})),t||(ia(e,"compositionstart",ha),ia(e,"compositionend",va),ia(e,"change",va))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:o,number:i}},a){if(e[ga]=pa(a),e.composing)return;const l=null==t?"":t;if((!i&&"number"!==e.type||/^0\d/.test(e.value)?e.value:U(e.value))!==l){if(document.activeElement===e&&"range"!==e.type){if(r&&t===n)return;if(o&&e.value.trim()===l)return}e.value=l}}};const ma={deep:!0,created(e,{value:t,modifiers:{number:n}},r){const o=y(t);ia(e,"change",(()=>{const t=Array.prototype.filter.call(e.options,(e=>e.selected)).map((e=>n?U(wa(e)):wa(e)));e[ga](e.multiple?o?new Set(t):t:t[0]),e._assigning=!0,Xt((()=>{e._assigning=!1}))})),e[ga]=pa(r)},mounted(e,{value:t,modifiers:{number:n}}){ba(e,t)},beforeUpdate(e,t,n){e[ga]=pa(n)},updated(e,{value:t,modifiers:{number:n}}){e._assigning||ba(e,t)}};function ba(e,t,n){const r=e.multiple,o=v(t);if(!r||o||y(t)){for(let n=0,i=e.options.length;nString(e)===String(a))):ee(t,a)>-1}else i.selected=t.has(a);else if(X(wa(i),t))return void(e.selectedIndex!==n&&(e.selectedIndex=n))}r||-1===e.selectedIndex||(e.selectedIndex=-1)}}function wa(e){return"_value"in e?e._value:e.value}const Ca=["ctrl","shift","alt","meta"],_a={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>Ca.some((n=>e[`${n}Key`]&&!t.includes(n)))},xa=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(n,...r)=>{for(let e=0;e{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=n=>{if(!("key"in n))return;const r=F(n.key);return t.some((e=>e===r||Oa[e]===r))?e(n):void 0})},Sa=f({patchProp:(e,t,n,r,o,i)=>{const a="svg"===o;"class"===t?function(e,t,n){const r=e[ji];r&&(t=(t?[t,...r]:[...r]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,r,a):"style"===t?function(e,t,n){const r=e.style,o=w(n);let i=!1;if(n&&!o){if(t)if(w(t))for(const e of t.split(";")){const t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&ea(r,t,"")}else for(const e in t)null==n[e]&&ea(r,e,"");for(const e in n)"display"===e&&(i=!0),ea(r,e,n[e])}else if(o){if(t!==n){const e=r[Ji];e&&(n+=";"+e),r.cssText=n,i=Qi.test(n)}}else t&&e.removeAttribute("style");Zi in e&&(e[Zi]=i?r.display:"",e[Ki]&&(r.display="none"))}(e,n,r):u(t)?c(t)||la(e,t,0,r,i):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):function(e,t,n,r){if(r)return"innerHTML"===t||"textContent"===t||!!(t in e&&da(t)&&b(n));if("spellcheck"===t||"draggable"===t||"translate"===t)return!1;if("form"===t)return!1;if("list"===t&&"INPUT"===e.tagName)return!1;if("type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){const t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}if(da(t)&&w(n))return!1;return t in e}(e,t,r,a))?(!function(e,t,n){if("innerHTML"===t||"textContent"===t){if(null==n)return;return void(e[t]=n)}const r=e.tagName;if("value"===t&&"PROGRESS"!==r&&!r.includes("-")){const o="OPTION"===r?e.getAttribute("value")||"":e.value,i=null==n?"":String(n);return o===i&&"_value"in e||(e.value=i),null==n&&e.removeAttribute(t),void(e._value=n)}let o=!1;if(""===n||null==n){const r=typeof e[t];"boolean"===r?n=Q(n):null==n&&"string"===r?(n="",o=!0):"number"===r&&(n=0,o=!0)}try{e[t]=n}catch(e){}o&&e.removeAttribute(t)}(e,t,r),e.tagName.includes("-")||"value"!==t&&"checked"!==t&&"selected"!==t||oa(e,t,r,a,0,"value"!==t)):("true-value"===t?e._trueValue=r:"false-value"===t&&(e._falseValue=r),oa(e,t,r,a))}},Li);let Ea;function La(){return Ea||(Ea=eo(Sa))}function Pa(e){return e instanceof SVGElement?"svg":"function"==typeof MathMLElement&&e instanceof MathMLElement?"mathml":void 0}function Aa(e){if(w(e)){return document.querySelector(e)}return e}var ja=!1;function Ta(e,t,n){return Array.isArray(e)?(e.length=Math.max(e.length,t),e.splice(t,1,n),n):(e[t]=n,n)}let Ra;const Fa=e=>Ra=e,Ia=Symbol();function Ma(e){return e&&"object"==typeof e&&"[object Object]"===Object.prototype.toString.call(e)&&"function"!=typeof e.toJSON}var Da;!function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"}(Da||(Da={}));const Ba="undefined"!=typeof window,Na=(()=>"object"==typeof window&&window.window===window?window:"object"==typeof self&&self.self===self?self:"object"==typeof global&&global.global===global?global:"object"==typeof globalThis?globalThis:{HTMLElement:null})();function Ua(e,t,n){const r=new XMLHttpRequest;r.open("GET",e),r.responseType="blob",r.onload=function(){za(r.response,t,n)},r.onerror=function(){},r.send()}function Va(e){const t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch(e){}return t.status>=200&&t.status<=299}function Ha(e){try{e.dispatchEvent(new MouseEvent("click"))}catch(t){const n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(n)}}const qa="object"==typeof navigator?navigator:{userAgent:""},$a=(()=>/Macintosh/.test(qa.userAgent)&&/AppleWebKit/.test(qa.userAgent)&&!/Safari/.test(qa.userAgent))(),za=Ba?"undefined"!=typeof HTMLAnchorElement&&"download"in HTMLAnchorElement.prototype&&!$a?function(e,t="download",n){const r=document.createElement("a");r.download=t,r.rel="noopener","string"==typeof e?(r.href=e,r.origin!==location.origin?Va(r.href)?Ua(e,t,n):(r.target="_blank",Ha(r)):Ha(r)):(r.href=URL.createObjectURL(e),setTimeout((function(){URL.revokeObjectURL(r.href)}),4e4),setTimeout((function(){Ha(r)}),0))}:"msSaveOrOpenBlob"in qa?function(e,t="download",n){if("string"==typeof e)if(Va(e))Ua(e,t,n);else{const t=document.createElement("a");t.href=e,t.target="_blank",setTimeout((function(){Ha(t)}))}else navigator.msSaveOrOpenBlob(function(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([String.fromCharCode(65279),e],{type:e.type}):e}(e,n),t)}:function(e,t,n,r){(r=r||open("","_blank"))&&(r.document.title=r.document.body.innerText="downloading...");if("string"==typeof e)return Ua(e,t,n);const o="application/octet-stream"===e.type,i=/constructor/i.test(String(Na.HTMLElement))||"safari"in Na,a=/CriOS\/[\d]+/.test(navigator.userAgent);if((a||o&&i||$a)&&"undefined"!=typeof FileReader){const t=new FileReader;t.onloadend=function(){let e=t.result;if("string"!=typeof e)throw r=null,new Error("Wrong reader.result type");e=a?e:e.replace(/^data:[^;]*;/,"data:attachment/file;"),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{const t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout((function(){URL.revokeObjectURL(t)}),4e4)}}:()=>{};const{assign:Wa}=Object;const Za=()=>{};function Ka(e,t,n,r=Za){e.push(t);const o=()=>{const n=e.indexOf(t);n>-1&&(e.splice(n,1),r())};return!n&&ce()&&fe(o),o}function Ya(e,...t){e.slice().forEach((e=>{e(...t)}))}const Ga=e=>e(),Ja=Symbol(),Qa=Symbol();function Xa(e,t){e instanceof Map&&t instanceof Map?t.forEach(((t,n)=>e.set(n,t))):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],o=e[n];Ma(o)&&Ma(r)&&e.hasOwnProperty(n)&&!jt(r)&&!bt(r)?e[n]=Xa(o,r):e[n]=r}return e}const el=Symbol(),tl=new WeakMap;const{assign:nl}=Object;function rl(e){return!(!jt(e)||!e.effect)}function ol(e,t,n,r){const{state:o,actions:i,getters:a}=t,l=n.state.value[e];let s;return s=il(e,(function(){l||(ja?Ta(n.state.value,e,o?o():{}):n.state.value[e]=o?o():{});const t=function(e){const t=v(e)?new Array(e.length):{};for(const n in e)t[n]=Ut(e,n);return t}(n.state.value[e]);return nl(t,i,Object.keys(a||{}).reduce(((t,r)=>(t[r]=Ot(xi((()=>{Fa(n);const t=n._s.get(e);if(!ja||t._r)return a[r].call(t,t)}))),t)),{}))}),t,n,r,!0),s}function il(e,t,n={},r,o,i){let a;const l=nl({actions:{}},n);const s={deep:!0};let u,c;let f,d=[],p=[];const h=r.state.value[e];i||h||(ja?Ta(r.state.value,e,{}):r.state.value[e]={});Tt({});let v;function g(t){let n;u=c=!1,"function"==typeof t?(t(r.state.value[e]),n={type:Da.patchFunction,storeId:e,events:f}):(Xa(r.state.value[e],t),n={type:Da.patchObject,payload:t,storeId:e,events:f});const o=v=Symbol();Xt().then((()=>{v===o&&(u=!0)})),c=!0,Ya(d,n,r.state.value[e])}const y=i?function(){const{state:e}=n,t=e?e():{};this.$patch((e=>{nl(e,t)}))}:Za;const m=(t,n="")=>{if(Ja in t)return t[Qa]=n,t;const o=function(){Fa(r);const n=Array.from(arguments),i=[],a=[];let l;Ya(p,{args:n,name:o[Qa],store:w,after:function(e){i.push(e)},onError:function(e){a.push(e)}});try{l=t.apply(this&&this.$id===e?this:w,n)}catch(e){throw Ya(a,e),e}return l instanceof Promise?l.then((e=>(Ya(i,e),e))).catch((e=>(Ya(a,e),Promise.reject(e)))):(Ya(i,l),l)};return o[Ja]=!0,o[Qa]=n,o},b={_p:r,$id:e,$onAction:Ka.bind(null,p),$patch:g,$reset:y,$subscribe(t,n={}){const o=Ka(d,t,n.detached,(()=>i())),i=a.run((()=>fo((()=>r.state.value[e]),(r=>{("sync"===n.flush?c:u)&&t({storeId:e,type:Da.direct,events:f},r)}),nl({},s,n))));return o},$dispose:function(){a.stop(),d=[],p=[],r._s.delete(e)}};ja&&(b._r=!1);const w=vt(b);r._s.set(e,w);const C=(r._a&&r._a.runWithContext||Ga)((()=>r._e.run((()=>(a=se()).run((()=>t({action:m})))))));for(const t in C){const n=C[t];if(jt(n)&&!rl(n)||bt(n))i||(!h||(_=n,ja?tl.has(_):Ma(_)&&_.hasOwnProperty(el))||(jt(n)?n.value=h[t]:Xa(n,h[t])),ja?Ta(r.state.value[e],t,n):r.state.value[e][t]=n);else if("function"==typeof n){const e=m(n,t);ja?Ta(C,t,e):C[t]=e,l.actions[t]=n}else 0}var _;return ja?Object.keys(C).forEach((e=>{Ta(w,e,C[e])})):(nl(w,C),nl(xt(w),C)),Object.defineProperty(w,"$state",{get:()=>r.state.value[e],set:e=>{g((t=>{nl(t,e)}))}}),ja&&(w._r=!0),r._p.forEach((e=>{nl(w,a.run((()=>e({store:w,app:r._a,pinia:r,options:l}))))})),h&&i&&n.hydrate&&n.hydrate(w.$state,h),u=!0,c=!0,w}function al(e,t,n){let r,o;const i="function"==typeof t;function a(e,n){(e=e||(!!(ii||un||xr)?kr(Ia,null):null))&&Fa(e),(e=Ra)._s.has(r)||(i?il(r,t,o,e):ol(r,o,e));return e._s.get(r)}return"string"==typeof e?(r=e,o=i?n:t):(o=e,r=e.id),a.$id=r,a}function ll(e,t){return function(){return e.apply(t,arguments)}}var sl=n(606);const{toString:ul}=Object.prototype,{getPrototypeOf:cl}=Object,fl=(dl=Object.create(null),e=>{const t=ul.call(e);return dl[t]||(dl[t]=t.slice(8,-1).toLowerCase())});var dl;const pl=e=>(e=e.toLowerCase(),t=>fl(t)===e),hl=e=>t=>typeof t===e,{isArray:vl}=Array,gl=hl("undefined");const yl=pl("ArrayBuffer");const ml=hl("string"),bl=hl("function"),wl=hl("number"),Cl=e=>null!==e&&"object"==typeof e,_l=e=>{if("object"!==fl(e))return!1;const t=cl(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},xl=pl("Date"),Ol=pl("File"),kl=pl("Blob"),Sl=pl("FileList"),El=pl("URLSearchParams"),[Ll,Pl,Al,jl]=["ReadableStream","Request","Response","Headers"].map(pl);function Tl(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),vl(e))for(r=0,o=e.length;r0;)if(r=n[o],t===r.toLowerCase())return r;return null}const Fl="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,Il=e=>!gl(e)&&e!==Fl;const Ml=(Dl="undefined"!=typeof Uint8Array&&cl(Uint8Array),e=>Dl&&e instanceof Dl);var Dl;const Bl=pl("HTMLFormElement"),Nl=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Ul=pl("RegExp"),Vl=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Tl(n,((n,o)=>{let i;!1!==(i=t(n,o,e))&&(r[o]=i||n)})),Object.defineProperties(e,r)};const Hl=pl("AsyncFunction"),ql=($l="function"==typeof setImmediate,zl=bl(Fl.postMessage),$l?setImmediate:zl?((e,t)=>(Fl.addEventListener("message",(({source:n,data:r})=>{n===Fl&&r===e&&t.length&&t.shift()()}),!1),n=>{t.push(n),Fl.postMessage(e,"*")}))(`axios@${Math.random()}`,[]):e=>setTimeout(e));var $l,zl;const Wl="undefined"!=typeof queueMicrotask?queueMicrotask.bind(Fl):void 0!==sl&&sl.nextTick||ql,Zl={isArray:vl,isArrayBuffer:yl,isBuffer:function(e){return null!==e&&!gl(e)&&null!==e.constructor&&!gl(e.constructor)&&bl(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||bl(e.append)&&("formdata"===(t=fl(e))||"object"===t&&bl(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&yl(e.buffer),t},isString:ml,isNumber:wl,isBoolean:e=>!0===e||!1===e,isObject:Cl,isPlainObject:_l,isReadableStream:Ll,isRequest:Pl,isResponse:Al,isHeaders:jl,isUndefined:gl,isDate:xl,isFile:Ol,isBlob:kl,isRegExp:Ul,isFunction:bl,isStream:e=>Cl(e)&&bl(e.pipe),isURLSearchParams:El,isTypedArray:Ml,isFileList:Sl,forEach:Tl,merge:function e(){const{caseless:t}=Il(this)&&this||{},n={},r=(r,o)=>{const i=t&&Rl(n,o)||o;_l(n[i])&&_l(r)?n[i]=e(n[i],r):_l(r)?n[i]=e({},r):vl(r)?n[i]=r.slice():n[i]=r};for(let e=0,t=arguments.length;e(Tl(t,((t,r)=>{n&&bl(t)?e[r]=ll(t,n):e[r]=t}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,i,a;const l={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)a=o[i],r&&!r(a,e,t)||l[a]||(t[a]=e[a],l[a]=!0);e=!1!==n&&cl(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:fl,kindOfTest:pl,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(vl(e))return e;let t=e.length;if(!wl(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:Bl,hasOwnProperty:Nl,hasOwnProp:Nl,reduceDescriptors:Vl,freezeMethods:e=>{Vl(e,((t,n)=>{if(bl(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];bl(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return vl(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:Rl,global:Fl,isContextDefined:Il,isSpecCompliantForm:function(e){return!!(e&&bl(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(Cl(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const o=vl(e)?[]:{};return Tl(e,((e,t)=>{const i=n(e,r+1);!gl(i)&&(o[t]=i)})),t[r]=void 0,o}}return e};return n(e,0)},isAsyncFn:Hl,isThenable:e=>e&&(Cl(e)||bl(e))&&bl(e.then)&&bl(e.catch),setImmediate:ql,asap:Wl};function Kl(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o,this.status=o.status?o.status:null)}Zl.inherits(Kl,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Zl.toJSONObject(this.config),code:this.code,status:this.status}}});const Yl=Kl.prototype,Gl={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{Gl[e]={value:e}})),Object.defineProperties(Kl,Gl),Object.defineProperty(Yl,"isAxiosError",{value:!0}),Kl.from=(e,t,n,r,o,i)=>{const a=Object.create(Yl);return Zl.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),Kl.call(a,e.message,t,n,r,o),a.cause=e,a.name=e.name,i&&Object.assign(a,i),a};const Jl=Kl;var Ql=n(287).hp;function Xl(e){return Zl.isPlainObject(e)||Zl.isArray(e)}function es(e){return Zl.endsWith(e,"[]")?e.slice(0,-2):e}function ts(e,t,n){return e?e.concat(t).map((function(e,t){return e=es(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const ns=Zl.toFlatObject(Zl,{},null,(function(e){return/^is[A-Z]/.test(e)}));const rs=function(e,t,n){if(!Zl.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=Zl.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!Zl.isUndefined(t[e])}))).metaTokens,o=n.visitor||u,i=n.dots,a=n.indexes,l=(n.Blob||"undefined"!=typeof Blob&&Blob)&&Zl.isSpecCompliantForm(t);if(!Zl.isFunction(o))throw new TypeError("visitor must be a function");function s(e){if(null===e)return"";if(Zl.isDate(e))return e.toISOString();if(!l&&Zl.isBlob(e))throw new Jl("Blob is not supported. Use a Buffer instead.");return Zl.isArrayBuffer(e)||Zl.isTypedArray(e)?l&&"function"==typeof Blob?new Blob([e]):Ql.from(e):e}function u(e,n,o){let l=e;if(e&&!o&&"object"==typeof e)if(Zl.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(Zl.isArray(e)&&function(e){return Zl.isArray(e)&&!e.some(Xl)}(e)||(Zl.isFileList(e)||Zl.endsWith(n,"[]"))&&(l=Zl.toArray(e)))return n=es(n),l.forEach((function(e,r){!Zl.isUndefined(e)&&null!==e&&t.append(!0===a?ts([n],r,i):null===a?n:n+"[]",s(e))})),!1;return!!Xl(e)||(t.append(ts(o,n,i),s(e)),!1)}const c=[],f=Object.assign(ns,{defaultVisitor:u,convertValue:s,isVisitable:Xl});if(!Zl.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!Zl.isUndefined(n)){if(-1!==c.indexOf(n))throw Error("Circular reference detected in "+r.join("."));c.push(n),Zl.forEach(n,(function(n,i){!0===(!(Zl.isUndefined(n)||null===n)&&o.call(t,n,Zl.isString(i)?i.trim():i,r,f))&&e(n,r?r.concat(i):[i])})),c.pop()}}(e),t};function os(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function is(e,t){this._pairs=[],e&&rs(e,this,t)}const as=is.prototype;as.append=function(e,t){this._pairs.push([e,t])},as.toString=function(e){const t=e?function(t){return e.call(this,t,os)}:os;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const ls=is;function ss(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function us(e,t,n){if(!t)return e;const r=n&&n.encode||ss;Zl.isFunction(n)&&(n={serialize:n});const o=n&&n.serialize;let i;if(i=o?o(t,n):Zl.isURLSearchParams(t)?t.toString():new ls(t,n).toString(r),i){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}const cs=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){Zl.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},fs={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},ds={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:ls,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},ps="undefined"!=typeof window&&"undefined"!=typeof document,hs="object"==typeof navigator&&navigator||void 0,vs=ps&&(!hs||["ReactNative","NativeScript","NS"].indexOf(hs.product)<0),gs="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,ys=ps&&window.location.href||"http://localhost",ms={...r,...ds};const bs=function(e){function t(e,n,r,o){let i=e[o++];if("__proto__"===i)return!0;const a=Number.isFinite(+i),l=o>=e.length;if(i=!i&&Zl.isArray(r)?r.length:i,l)return Zl.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!a;r[i]&&Zl.isObject(r[i])||(r[i]=[]);return t(e,n,r[i],o)&&Zl.isArray(r[i])&&(r[i]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let i;for(r=0;r{t(function(e){return Zl.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null};const ws={transitional:fs,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=Zl.isObject(e);o&&Zl.isHTMLForm(e)&&(e=new FormData(e));if(Zl.isFormData(e))return r?JSON.stringify(bs(e)):e;if(Zl.isArrayBuffer(e)||Zl.isBuffer(e)||Zl.isStream(e)||Zl.isFile(e)||Zl.isBlob(e)||Zl.isReadableStream(e))return e;if(Zl.isArrayBufferView(e))return e.buffer;if(Zl.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return rs(e,new ms.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return ms.isNode&&Zl.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((i=Zl.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return rs(i?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e,t,n){if(Zl.isString(e))try{return(t||JSON.parse)(e),Zl.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ws.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(Zl.isResponse(e)||Zl.isReadableStream(e))return e;if(e&&Zl.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw Jl.from(e,Jl.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ms.classes.FormData,Blob:ms.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Zl.forEach(["delete","get","head","post","put","patch"],(e=>{ws.headers[e]={}}));const Cs=ws,_s=Zl.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),xs=Symbol("internals");function Os(e){return e&&String(e).trim().toLowerCase()}function ks(e){return!1===e||null==e?e:Zl.isArray(e)?e.map(ks):String(e)}function Ss(e,t,n,r,o){return Zl.isFunction(r)?r.call(this,t,n):(o&&(t=n),Zl.isString(t)?Zl.isString(r)?-1!==t.indexOf(r):Zl.isRegExp(r)?r.test(t):void 0:void 0)}class Es{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=Os(t);if(!o)throw new Error("header name must be a non-empty string");const i=Zl.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||t]=ks(e))}const i=(e,t)=>Zl.forEach(e,((e,n)=>o(e,n,t)));if(Zl.isPlainObject(e)||e instanceof this.constructor)i(e,t);else if(Zl.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))i((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&_s[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t);else if(Zl.isHeaders(e))for(const[t,r]of e.entries())o(r,t,n);else null!=e&&o(t,e,n);return this}get(e,t){if(e=Os(e)){const n=Zl.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(Zl.isFunction(t))return t.call(this,e,n);if(Zl.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=Os(e)){const n=Zl.findKey(this,e);return!(!n||void 0===this[n]||t&&!Ss(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=Os(e)){const o=Zl.findKey(n,e);!o||t&&!Ss(0,n[o],o,t)||(delete n[o],r=!0)}}return Zl.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!Ss(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return Zl.forEach(this,((r,o)=>{const i=Zl.findKey(n,o);if(i)return t[i]=ks(r),void delete t[o];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();a!==o&&delete t[o],t[a]=ks(r),n[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return Zl.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&Zl.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[xs]=this[xs]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=Os(e);t[r]||(!function(e,t){const n=Zl.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return Zl.isArray(e)?e.forEach(r):r(e),this}}Es.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),Zl.reduceDescriptors(Es.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),Zl.freezeMethods(Es);const Ls=Es;function Ps(e,t){const n=this||Cs,r=t||n,o=Ls.from(r.headers);let i=r.data;return Zl.forEach(e,(function(e){i=e.call(n,i,o.normalize(),t?t.status:void 0)})),o.normalize(),i}function As(e){return!(!e||!e.__CANCEL__)}function js(e,t,n){Jl.call(this,null==e?"canceled":e,Jl.ERR_CANCELED,t,n),this.name="CanceledError"}Zl.inherits(js,Jl,{__CANCEL__:!0});const Ts=js;function Rs(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new Jl("Request failed with status code "+n.status,[Jl.ERR_BAD_REQUEST,Jl.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}const Fs=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,i=0,a=0;return t=void 0!==t?t:1e3,function(l){const s=Date.now(),u=r[a];o||(o=s),n[i]=l,r[i]=s;let c=a,f=0;for(;c!==i;)f+=n[c++],c%=e;if(i=(i+1)%e,i===a&&(a=(a+1)%e),s-o{o=i,n=null,r&&(clearTimeout(r),r=null),e.apply(null,t)};return[(...e)=>{const t=Date.now(),l=t-o;l>=i?a(e,t):(n=e,r||(r=setTimeout((()=>{r=null,a(n)}),i-l)))},()=>n&&a(n)]},Ms=(e,t,n=3)=>{let r=0;const o=Fs(50,250);return Is((n=>{const i=n.loaded,a=n.lengthComputable?n.total:void 0,l=i-r,s=o(l);r=i;e({loaded:i,total:a,progress:a?i/a:void 0,bytes:l,rate:s||void 0,estimated:s&&a&&i<=a?(a-i)/s:void 0,event:n,lengthComputable:null!=a,[t?"download":"upload"]:!0})}),n)},Ds=(e,t)=>{const n=null!=e;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},Bs=e=>(...t)=>Zl.asap((()=>e(...t))),Ns=ms.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ms.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ms.origin),ms.navigator&&/(msie|trident)/i.test(ms.navigator.userAgent)):()=>!0,Us=ms.hasStandardBrowserEnv?{write(e,t,n,r,o,i){const a=[e+"="+encodeURIComponent(t)];Zl.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),Zl.isString(r)&&a.push("path="+r),Zl.isString(o)&&a.push("domain="+o),!0===i&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function Vs(e,t,n){let r=!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t);return e&&(r||0==n)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Hs=e=>e instanceof Ls?{...e}:e;function qs(e,t){t=t||{};const n={};function r(e,t,n,r){return Zl.isPlainObject(e)&&Zl.isPlainObject(t)?Zl.merge.call({caseless:r},e,t):Zl.isPlainObject(t)?Zl.merge({},t):Zl.isArray(t)?t.slice():t}function o(e,t,n,o){return Zl.isUndefined(t)?Zl.isUndefined(e)?void 0:r(void 0,e,0,o):r(e,t,0,o)}function i(e,t){if(!Zl.isUndefined(t))return r(void 0,t)}function a(e,t){return Zl.isUndefined(t)?Zl.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function l(n,o,i){return i in t?r(n,o):i in e?r(void 0,n):void 0}const s={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(e,t,n)=>o(Hs(e),Hs(t),0,!0)};return Zl.forEach(Object.keys(Object.assign({},e,t)),(function(r){const i=s[r]||o,a=i(e[r],t[r],r);Zl.isUndefined(a)&&i!==l||(n[r]=a)})),n}const $s=e=>{const t=qs({},e);let n,{data:r,withXSRFToken:o,xsrfHeaderName:i,xsrfCookieName:a,headers:l,auth:s}=t;if(t.headers=l=Ls.from(l),t.url=us(Vs(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),s&&l.set("Authorization","Basic "+btoa((s.username||"")+":"+(s.password?unescape(encodeURIComponent(s.password)):""))),Zl.isFormData(r))if(ms.hasStandardBrowserEnv||ms.hasStandardBrowserWebWorkerEnv)l.setContentType(void 0);else if(!1!==(n=l.getContentType())){const[e,...t]=n?n.split(";").map((e=>e.trim())).filter(Boolean):[];l.setContentType([e||"multipart/form-data",...t].join("; "))}if(ms.hasStandardBrowserEnv&&(o&&Zl.isFunction(o)&&(o=o(t)),o||!1!==o&&Ns(t.url))){const e=i&&a&&Us.read(a);e&&l.set(i,e)}return t},zs="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const r=$s(e);let o=r.data;const i=Ls.from(r.headers).normalize();let a,l,s,u,c,{responseType:f,onUploadProgress:d,onDownloadProgress:p}=r;function h(){u&&u(),c&&c(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let v=new XMLHttpRequest;function g(){if(!v)return;const r=Ls.from("getAllResponseHeaders"in v&&v.getAllResponseHeaders());Rs((function(e){t(e),h()}),(function(e){n(e),h()}),{data:f&&"text"!==f&&"json"!==f?v.response:v.responseText,status:v.status,statusText:v.statusText,headers:r,config:e,request:v}),v=null}v.open(r.method.toUpperCase(),r.url,!0),v.timeout=r.timeout,"onloadend"in v?v.onloadend=g:v.onreadystatechange=function(){v&&4===v.readyState&&(0!==v.status||v.responseURL&&0===v.responseURL.indexOf("file:"))&&setTimeout(g)},v.onabort=function(){v&&(n(new Jl("Request aborted",Jl.ECONNABORTED,e,v)),v=null)},v.onerror=function(){n(new Jl("Network Error",Jl.ERR_NETWORK,e,v)),v=null},v.ontimeout=function(){let t=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const o=r.transitional||fs;r.timeoutErrorMessage&&(t=r.timeoutErrorMessage),n(new Jl(t,o.clarifyTimeoutError?Jl.ETIMEDOUT:Jl.ECONNABORTED,e,v)),v=null},void 0===o&&i.setContentType(null),"setRequestHeader"in v&&Zl.forEach(i.toJSON(),(function(e,t){v.setRequestHeader(t,e)})),Zl.isUndefined(r.withCredentials)||(v.withCredentials=!!r.withCredentials),f&&"json"!==f&&(v.responseType=r.responseType),p&&([s,c]=Ms(p,!0),v.addEventListener("progress",s)),d&&v.upload&&([l,u]=Ms(d),v.upload.addEventListener("progress",l),v.upload.addEventListener("loadend",u)),(r.cancelToken||r.signal)&&(a=t=>{v&&(n(!t||t.type?new Ts(null,e,v):t),v.abort(),v=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const y=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(r.url);y&&-1===ms.protocols.indexOf(y)?n(new Jl("Unsupported protocol "+y+":",Jl.ERR_BAD_REQUEST,e)):v.send(o||null)}))},Ws=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let n,r=new AbortController;const o=function(e){if(!n){n=!0,a();const t=e instanceof Error?e:this.reason;r.abort(t instanceof Jl?t:new Ts(t instanceof Error?t.message:t))}};let i=t&&setTimeout((()=>{i=null,o(new Jl(`timeout ${t} of ms exceeded`,Jl.ETIMEDOUT))}),t);const a=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach((e=>{e.unsubscribe?e.unsubscribe(o):e.removeEventListener("abort",o)})),e=null)};e.forEach((e=>e.addEventListener("abort",o)));const{signal:l}=r;return l.unsubscribe=()=>Zl.asap(a),l}},Zs=function*(e,t){let n=e.byteLength;if(!t||n{const o=async function*(e,t){for await(const n of Ks(e))yield*Zs(n,t)}(e,t);let i,a=0,l=e=>{i||(i=!0,r&&r(e))};return new ReadableStream({async pull(e){try{const{done:t,value:r}=await o.next();if(t)return l(),void e.close();let i=r.byteLength;if(n){let e=a+=i;n(e)}e.enqueue(new Uint8Array(r))}catch(e){throw l(e),e}},cancel:e=>(l(e),o.return())},{highWaterMark:2})},Gs="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,Js=Gs&&"function"==typeof ReadableStream,Qs=Gs&&("function"==typeof TextEncoder?(Xs=new TextEncoder,e=>Xs.encode(e)):async e=>new Uint8Array(await new Response(e).arrayBuffer()));var Xs;const eu=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},tu=Js&&eu((()=>{let e=!1;const t=new Request(ms.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),nu=Js&&eu((()=>Zl.isReadableStream(new Response("").body))),ru={stream:nu&&(e=>e.body)};var ou;Gs&&(ou=new Response,["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!ru[e]&&(ru[e]=Zl.isFunction(ou[e])?t=>t[e]():(t,n)=>{throw new Jl(`Response type '${e}' is not supported`,Jl.ERR_NOT_SUPPORT,n)})})));const iu=async(e,t)=>{const n=Zl.toFiniteNumber(e.getContentLength());return null==n?(async e=>{if(null==e)return 0;if(Zl.isBlob(e))return e.size;if(Zl.isSpecCompliantForm(e)){const t=new Request(ms.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}return Zl.isArrayBufferView(e)||Zl.isArrayBuffer(e)?e.byteLength:(Zl.isURLSearchParams(e)&&(e+=""),Zl.isString(e)?(await Qs(e)).byteLength:void 0)})(t):n},au=Gs&&(async e=>{let{url:t,method:n,data:r,signal:o,cancelToken:i,timeout:a,onDownloadProgress:l,onUploadProgress:s,responseType:u,headers:c,withCredentials:f="same-origin",fetchOptions:d}=$s(e);u=u?(u+"").toLowerCase():"text";let p,h=Ws([o,i&&i.toAbortSignal()],a);const v=h&&h.unsubscribe&&(()=>{h.unsubscribe()});let g;try{if(s&&tu&&"get"!==n&&"head"!==n&&0!==(g=await iu(c,r))){let e,n=new Request(t,{method:"POST",body:r,duplex:"half"});if(Zl.isFormData(r)&&(e=n.headers.get("content-type"))&&c.setContentType(e),n.body){const[e,t]=Ds(g,Ms(Bs(s)));r=Ys(n.body,65536,e,t)}}Zl.isString(f)||(f=f?"include":"omit");const o="credentials"in Request.prototype;p=new Request(t,{...d,signal:h,method:n.toUpperCase(),headers:c.normalize().toJSON(),body:r,duplex:"half",credentials:o?f:void 0});let i=await fetch(p);const a=nu&&("stream"===u||"response"===u);if(nu&&(l||a&&v)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=i[t]}));const t=Zl.toFiniteNumber(i.headers.get("content-length")),[n,r]=l&&Ds(t,Ms(Bs(l),!0))||[];i=new Response(Ys(i.body,65536,n,(()=>{r&&r(),v&&v()})),e)}u=u||"text";let y=await ru[Zl.findKey(ru,u)||"text"](i,e);return!a&&v&&v(),await new Promise(((t,n)=>{Rs(t,n,{data:y,headers:Ls.from(i.headers),status:i.status,statusText:i.statusText,config:e,request:p})}))}catch(t){if(v&&v(),t&&"TypeError"===t.name&&/fetch/i.test(t.message))throw Object.assign(new Jl("Network Error",Jl.ERR_NETWORK,e,p),{cause:t.cause||t});throw Jl.from(t,t&&t.code,e,p)}}),lu={http:null,xhr:zs,fetch:au};Zl.forEach(lu,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));const su=e=>`- ${e}`,uu=e=>Zl.isFunction(e)||null===e||!1===e,cu=e=>{e=Zl.isArray(e)?e:[e];const{length:t}=e;let n,r;const o={};for(let i=0;i`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let n=t?e.length>1?"since :\n"+e.map(su).join("\n"):" "+su(e[0]):"as no adapter specified";throw new Jl("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return r};function fu(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Ts(null,e)}function du(e){fu(e),e.headers=Ls.from(e.headers),e.data=Ps.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return cu(e.adapter||Cs.adapter)(e).then((function(t){return fu(e),t.data=Ps.call(e,e.transformResponse,t),t.headers=Ls.from(t.headers),t}),(function(t){return As(t)||(fu(e),t&&t.response&&(t.response.data=Ps.call(e,e.transformResponse,t.response),t.response.headers=Ls.from(t.response.headers))),Promise.reject(t)}))}const pu="1.8.4",hu={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{hu[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const vu={};hu.transitional=function(e,t,n){return(r,o,i)=>{if(!1===e)throw new Jl(function(e,t){return"[Axios v1.8.4] Transitional option '"+e+"'"+t+(n?". "+n:"")}(o," has been removed"+(t?" in "+t:"")),Jl.ERR_DEPRECATED);return t&&!vu[o]&&(vu[o]=!0),!e||e(r,o,i)}},hu.spelling=function(e){return(e,t)=>!0};const gu={assertOptions:function(e,t,n){if("object"!=typeof e)throw new Jl("options must be an object",Jl.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],a=t[i];if(a){const t=e[i],n=void 0===t||a(t,i,e);if(!0!==n)throw new Jl("option "+i+" must be "+n,Jl.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new Jl("Unknown option "+i,Jl.ERR_BAD_OPTION)}},validators:hu},yu=gu.validators;class mu{constructor(e){this.defaults=e,this.interceptors={request:new cs,response:new cs}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const n=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?n&&!String(e.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+n):e.stack=n}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=qs(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;void 0!==n&&gu.assertOptions(n,{silentJSONParsing:yu.transitional(yu.boolean),forcedJSONParsing:yu.transitional(yu.boolean),clarifyTimeoutError:yu.transitional(yu.boolean)},!1),null!=r&&(Zl.isFunction(r)?t.paramsSerializer={serialize:r}:gu.assertOptions(r,{encode:yu.function,serialize:yu.function},!0)),void 0!==t.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),gu.assertOptions(t,{baseUrl:yu.spelling("baseURL"),withXsrfToken:yu.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let i=o&&Zl.merge(o.common,o[t.method]);o&&Zl.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=Ls.concat(i,o);const a=[];let l=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(l=l&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const s=[];let u;this.interceptors.response.forEach((function(e){s.push(e.fulfilled,e.rejected)}));let c,f=0;if(!l){const e=[du.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,s),c=e.length,u=Promise.resolve(t);f{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new Ts(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new wu((function(t){e=t})),cancel:e}}}const Cu=wu;const _u={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(_u).forEach((([e,t])=>{_u[t]=e}));const xu=_u;const Ou=function e(t){const n=new bu(t),r=ll(bu.prototype.request,n);return Zl.extend(r,bu.prototype,n,{allOwnKeys:!0}),Zl.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return e(qs(t,n))},r}(Cs);Ou.Axios=bu,Ou.CanceledError=Ts,Ou.CancelToken=Cu,Ou.isCancel=As,Ou.VERSION=pu,Ou.toFormData=rs,Ou.AxiosError=Jl,Ou.Cancel=Ou.CanceledError,Ou.all=function(e){return Promise.all(e)},Ou.spread=function(e){return function(t){return e.apply(null,t)}},Ou.isAxiosError=function(e){return Zl.isObject(e)&&!0===e.isAxiosError},Ou.mergeConfig=qs,Ou.AxiosHeaders=Ls,Ou.formToJSON=e=>bs(Zl.isHTMLForm(e)?new FormData(e):e),Ou.getAdapter=cu,Ou.HttpStatusCode=xu,Ou.default=Ou;const ku=Ou,Su="undefined"!=typeof document;function Eu(e){return e.__esModule||"Module"===e[Symbol.toStringTag]}const Lu=Object.assign;function Pu(e,t){const n={};for(const r in t){const o=t[r];n[r]=ju(o)?o.map(e):e(o)}return n}const Au=()=>{},ju=Array.isArray;const Tu=/#/g,Ru=/&/g,Fu=/\//g,Iu=/=/g,Mu=/\?/g,Du=/\+/g,Bu=/%5B/g,Nu=/%5D/g,Uu=/%5E/g,Vu=/%60/g,Hu=/%7B/g,qu=/%7C/g,$u=/%7D/g,zu=/%20/g;function Wu(e){return encodeURI(""+e).replace(qu,"|").replace(Bu,"[").replace(Nu,"]")}function Zu(e){return Wu(e).replace(Du,"%2B").replace(zu,"+").replace(Tu,"%23").replace(Ru,"%26").replace(Vu,"`").replace(Hu,"{").replace($u,"}").replace(Uu,"^")}function Ku(e){return null==e?"":function(e){return Wu(e).replace(Tu,"%23").replace(Mu,"%3F")}(e).replace(Fu,"%2F")}function Yu(e){try{return decodeURIComponent(""+e)}catch(e){}return""+e}const Gu=/\/$/,Ju=e=>e.replace(Gu,"");function Qu(e,t,n="/"){let r,o={},i="",a="";const l=t.indexOf("#");let s=t.indexOf("?");return l=0&&(s=-1),s>-1&&(r=t.slice(0,s),i=t.slice(s+1,l>-1?l:t.length),o=e(i)),l>-1&&(r=r||t.slice(0,l),a=t.slice(l,t.length)),r=function(e,t){if(e.startsWith("/"))return e;0;if(!e)return t;const n=t.split("/"),r=e.split("/"),o=r[r.length-1];".."!==o&&"."!==o||r.push("");let i,a,l=n.length-1;for(i=0;i1&&l--}return n.slice(0,l).join("/")+"/"+r.slice(i).join("/")}(null!=r?r:t,n),{fullPath:r+(i&&"?")+i+a,path:r,query:o,hash:Yu(a)}}function Xu(e,t){return t&&e.toLowerCase().startsWith(t.toLowerCase())?e.slice(t.length)||"/":e}function ec(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function tc(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!nc(e[n],t[n]))return!1;return!0}function nc(e,t){return ju(e)?rc(e,t):ju(t)?rc(t,e):e===t}function rc(e,t){return ju(t)?e.length===t.length&&e.every(((e,n)=>e===t[n])):1===e.length&&e[0]===t}const oc={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var ic,ac;!function(e){e.pop="pop",e.push="push"}(ic||(ic={})),function(e){e.back="back",e.forward="forward",e.unknown=""}(ac||(ac={}));function lc(e){if(!e)if(Su){const t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return"/"!==e[0]&&"#"!==e[0]&&(e="/"+e),Ju(e)}const sc=/^[^#]+#/;function uc(e,t){return e.replace(sc,"#")+t}const cc=()=>({left:window.scrollX,top:window.scrollY});function fc(e){let t;if("el"in e){const n=e.el,r="string"==typeof n&&n.startsWith("#");0;const o="string"==typeof n?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=function(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(null!=t.left?t.left:window.scrollX,null!=t.top?t.top:window.scrollY)}function dc(e,t){return(history.state?history.state.position-t:-1)+e}const pc=new Map;let hc=()=>location.protocol+"//"+location.host;function vc(e,t){const{pathname:n,search:r,hash:o}=t,i=e.indexOf("#");if(i>-1){let t=o.includes(e.slice(i))?e.slice(i).length:1,n=o.slice(t);return"/"!==n[0]&&(n="/"+n),Xu(n,"")}return Xu(n,e)+r+o}function gc(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?cc():null}}function yc(e){const t=function(e){const{history:t,location:n}=window,r={value:vc(e,n)},o={value:t.state};function i(r,i,a){const l=e.indexOf("#"),s=l>-1?(n.host&&document.querySelector("base")?e:e.slice(l))+r:hc()+e+r;try{t[a?"replaceState":"pushState"](i,"",s),o.value=i}catch(e){n[a?"replace":"assign"](s)}}return o.value||i(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0),{location:r,state:o,push:function(e,n){const a=Lu({},o.value,t.state,{forward:e,scroll:cc()});i(a.current,a,!0),i(e,Lu({},gc(r.value,e,null),{position:a.position+1},n),!1),r.value=e},replace:function(e,n){i(e,Lu({},t.state,gc(o.value.back,e,o.value.forward,!0),n,{position:o.value.position}),!0),r.value=e}}}(e=lc(e)),n=function(e,t,n,r){let o=[],i=[],a=null;const l=({state:i})=>{const l=vc(e,location),s=n.value,u=t.value;let c=0;if(i){if(n.value=l,t.value=i,a&&a===s)return void(a=null);c=u?i.position-u.position:0}else r(l);o.forEach((e=>{e(n.value,s,{delta:c,type:ic.pop,direction:c?c>0?ac.forward:ac.back:ac.unknown})}))};function s(){const{history:e}=window;e.state&&e.replaceState(Lu({},e.state,{scroll:cc()}),"")}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",s,{passive:!0}),{pauseListeners:function(){a=n.value},listen:function(e){o.push(e);const t=()=>{const t=o.indexOf(e);t>-1&&o.splice(t,1)};return i.push(t),t},destroy:function(){for(const e of i)e();i=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",s)}}}(e,t.state,t.location,t.replace);const r=Lu({location:"",base:e,go:function(e,t=!0){t||n.pauseListeners(),history.go(e)},createHref:uc.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function mc(e){return"string"==typeof e||"symbol"==typeof e}const bc=Symbol("");var wc;!function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"}(wc||(wc={}));function Cc(e,t){return Lu(new Error,{type:e,[bc]:!0},t)}function _c(e,t){return e instanceof Error&&bc in e&&(null==t||!!(e.type&t))}const xc="[^/]+?",Oc={sensitive:!1,strict:!1,start:!0,end:!0},kc=/[.+*?^${}()[\]/\\]/g;function Sc(e,t){let n=0;for(;nt.length?1===t.length&&80===t[0]?1:-1:0}function Ec(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const Pc={type:0,value:""},Ac=/[a-zA-Z0-9_]/;function jc(e,t,n){const r=function(e,t){const n=Lu({},Oc,t),r=[];let o=n.start?"^":"";const i=[];for(const t of e){const e=t.length?[]:[90];n.strict&&!t.length&&(o+="/");for(let r=0;r1&&("*"===l||"+"===l)&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:u,regexp:c,repeatable:"*"===l||"+"===l,optional:"*"===l||"?"===l})):t("Invalid state to consume buffer"),u="")}function d(){u+=l}for(;s{i(d)}:Au}function i(e){if(mc(e)){const t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(i),t.alias.forEach(i))}else{const t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(i),e.alias.forEach(i))}}function a(e){const t=function(e,t){let n=0,r=t.length;for(;n!==r;){const o=n+r>>1;Ec(e,t[o])<0?r=o:n=o+1}const o=function(e){let t=e;for(;t=t.parent;)if(Bc(t)&&0===Ec(e,t))return t;return}(e);o&&(r=t.lastIndexOf(o,r-1));return r}(e,n);n.splice(t,0,e),e.record.name&&!Ic(e)&&r.set(e.record.name,e)}return t=Dc({strict:!1,end:!0,sensitive:!1},t),e.forEach((e=>o(e))),{addRoute:o,resolve:function(e,t){let o,i,a,l={};if("name"in e&&e.name){if(o=r.get(e.name),!o)throw Cc(1,{location:e});0,a=o.record.name,l=Lu(Rc(t.params,o.keys.filter((e=>!e.optional)).concat(o.parent?o.parent.keys.filter((e=>e.optional)):[]).map((e=>e.name))),e.params&&Rc(e.params,o.keys.map((e=>e.name)))),i=o.stringify(l)}else if(null!=e.path)i=e.path,o=n.find((e=>e.re.test(i))),o&&(l=o.parse(i),a=o.record.name);else{if(o=t.name?r.get(t.name):n.find((e=>e.re.test(t.path))),!o)throw Cc(1,{location:e,currentLocation:t});a=o.record.name,l=Lu({},t.params,e.params),i=o.stringify(l)}const s=[];let u=o;for(;u;)s.unshift(u.record),u=u.parent;return{name:a,path:i,params:l,matched:s,meta:Mc(s)}},removeRoute:i,clearRoutes:function(){n.length=0,r.clear()},getRoutes:function(){return n},getRecordMatcher:function(e){return r.get(e)}}}function Rc(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function Fc(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]="object"==typeof n?n[r]:n;return t}function Ic(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Mc(e){return e.reduce(((e,t)=>Lu(e,t.meta)),{})}function Dc(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function Bc({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Nc(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let e=0;ee&&Zu(e))):[r&&Zu(r)];o.forEach((e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))}))}return t}function Vc(e){const t={};for(const n in e){const r=e[n];void 0!==r&&(t[n]=ju(r)?r.map((e=>null==e?null:""+e)):null==r?r:""+r)}return t}const Hc=Symbol(""),qc=Symbol(""),$c=Symbol(""),zc=Symbol(""),Wc=Symbol("");function Zc(){let e=[];return{add:function(t){return e.push(t),()=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)}},list:()=>e.slice(),reset:function(){e=[]}}}function Kc(e,t,n,r,o,i=e=>e()){const a=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise(((l,s)=>{const u=e=>{var i;!1===e?s(Cc(4,{from:n,to:t})):e instanceof Error?s(e):"string"==typeof(i=e)||i&&"object"==typeof i?s(Cc(2,{from:t,to:e})):(a&&r.enterCallbacks[o]===a&&"function"==typeof e&&a.push(e),l())},c=i((()=>e.call(r&&r.instances[o],t,n,u)));let f=Promise.resolve(c);e.length<3&&(f=f.then(u)),f.catch((e=>s(e)))}))}function Yc(e,t,n,r,o=e=>e()){const i=[];for(const l of e){0;for(const e in l.components){let s=l.components[e];if("beforeRouteEnter"===t||l.instances[e])if("object"==typeof(a=s)||"displayName"in a||"props"in a||"__vccOpts"in a){const a=(s.__vccOpts||s)[t];a&&i.push(Kc(a,n,r,l,e,o))}else{let a=s();0,i.push((()=>a.then((i=>{if(!i)return Promise.reject(new Error(`Couldn't resolve component "${e}" at "${l.path}"`));const a=Eu(i)?i.default:i;l.components[e]=a;const s=(a.__vccOpts||a)[t];return s&&Kc(s,n,r,l,e,o)()}))))}}}var a;return i}function Gc(e){const t=kr($c),n=kr(zc);const r=xi((()=>{const n=Mt(e.to);return t.resolve(n)})),o=xi((()=>{const{matched:e}=r.value,{length:t}=e,o=e[t-1],i=n.matched;if(!o||!i.length)return-1;const a=i.findIndex(ec.bind(null,o));if(a>-1)return a;const l=Qc(e[t-2]);return t>1&&Qc(o)===l&&i[i.length-1].path!==l?i.findIndex(ec.bind(null,e[t-2])):a})),i=xi((()=>o.value>-1&&function(e,t){for(const n in t){const r=t[n],o=e[n];if("string"==typeof r){if(r!==o)return!1}else if(!ju(o)||o.length!==r.length||r.some(((e,t)=>e!==o[t])))return!1}return!0}(n.params,r.value.params))),a=xi((()=>o.value>-1&&o.value===n.matched.length-1&&tc(n.params,r.value.params)));return{route:r,href:xi((()=>r.value.href)),isActive:i,isExactActive:a,navigate:function(n={}){return function(e){if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;if(e.defaultPrevented)return;if(void 0!==e.button&&0!==e.button)return;if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}e.preventDefault&&e.preventDefault();return!0}(n)?t[Mt(e.replace)?"replace":"push"](Mt(e.to)).catch(Au):Promise.resolve()}}}const Jc=Ln({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:Gc,setup(e,{slots:t}){const n=vt(Gc(e)),{options:r}=kr($c),o=xi((()=>({[Xc(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[Xc(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive})));return()=>{const r=t.default&&t.default(n);return e.custom?r:Oi("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},r)}}});function Qc(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Xc=(e,t,n)=>null!=e?e:null!=t?t:n;function ef(e,t){if(!e)return null;const n=e(t);return 1===n.length?n[0]:n}const tf=Ln({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=kr(Wc),o=xi((()=>e.route||r.value)),i=kr(qc,0),a=xi((()=>{let e=Mt(i);const{matched:t}=o.value;let n;for(;(n=t[e])&&!n.components;)e++;return e})),l=xi((()=>o.value.matched[a.value]));Or(qc,xi((()=>a.value+1))),Or(Hc,l),Or(Wc,o);const s=Tt();return fo((()=>[s.value,l.value,e.name]),(([e,t,n],[r,o,i])=>{t&&(t.instances[n]=e,o&&o!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=o.leaveGuards),t.updateGuards.size||(t.updateGuards=o.updateGuards))),!e||!t||o&&ec(t,o)&&r||(t.enterCallbacks[n]||[]).forEach((t=>t(e)))}),{flush:"post"}),()=>{const r=o.value,i=e.name,a=l.value,u=a&&a.components[i];if(!u)return ef(n.default,{Component:u,route:r});const c=a.props[i],f=c?!0===c?r.params:"function"==typeof c?c(r):c:null,d=Oi(u,Lu({},f,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[i]=null)},ref:s}));return ef(n.default,{Component:d,route:r})||d}}});function nf(){return kr($c)}function rf(e){return kr(zc)}const of={name:"App"};var af=n(262);const lf=(0,af.A)(of,[["render",function(e,t,n,r,o,i){var a,l,s=Qn(Gn,a="router-view",!0,l)||a;return Fo(),Uo(s)}]]);let sf=Symbol("headlessui.useid"),uf=0;function cf(){return kr(sf,(()=>""+ ++uf))()}function ff(e){var t;if(null==e||null==e.value)return null;let n=null!=(t=e.value.$el)?t:e.value;return n instanceof Node?n:null}function df(e,t,...n){if(e in t){let r=t[e];return"function"==typeof r?r(...n):r}let r=new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map((e=>`"${e}"`)).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,df),r}var pf=Object.defineProperty,hf=(e,t,n)=>(((e,t,n)=>{t in e?pf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n})(e,"symbol"!=typeof t?t+"":t,n),n);let vf=new class{constructor(){hf(this,"current",this.detect()),hf(this,"currentId",0)}set(e){this.current!==e&&(this.currentId=0,this.current=e)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return"server"===this.current}get isClient(){return"client"===this.current}detect(){return"undefined"==typeof window||"undefined"==typeof document?"server":"client"}};function gf(e){if(vf.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(null!=e&&e.hasOwnProperty("value")){let t=ff(e);if(t)return t.ownerDocument}return document}let yf=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map((e=>`${e}:not([tabindex='-1'])`)).join(",");var mf=(e=>(e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll",e))(mf||{}),bf=(e=>(e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow",e))(bf||{}),wf=(e=>(e[e.Previous=-1]="Previous",e[e.Next=1]="Next",e))(wf||{});function Cf(e=document.body){return null==e?[]:Array.from(e.querySelectorAll(yf)).sort(((e,t)=>Math.sign((e.tabIndex||Number.MAX_SAFE_INTEGER)-(t.tabIndex||Number.MAX_SAFE_INTEGER))))}var _f=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(_f||{});function xf(e,t=0){var n;return e!==(null==(n=gf(e))?void 0:n.body)&&df(t,{0:()=>e.matches(yf),1(){let t=e;for(;null!==t;){if(t.matches(yf))return!0;t=t.parentElement}return!1}})}function Of(e){let t=gf(e);Xt((()=>{t&&!xf(t.activeElement,0)&&Sf(e)}))}var kf=(e=>(e[e.Keyboard=0]="Keyboard",e[e.Mouse=1]="Mouse",e))(kf||{});function Sf(e){null==e||e.focus({preventScroll:!0})}"undefined"!=typeof window&&"undefined"!=typeof document&&(document.addEventListener("keydown",(e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")}),!0),document.addEventListener("click",(e=>{1===e.detail?delete document.documentElement.dataset.headlessuiFocusVisible:0===e.detail&&(document.documentElement.dataset.headlessuiFocusVisible="")}),!0));let Ef=["textarea","input"].join(",");function Lf(e,t=e=>e){return e.slice().sort(((e,n)=>{let r=t(e),o=t(n);if(null===r||null===o)return 0;let i=r.compareDocumentPosition(o);return i&Node.DOCUMENT_POSITION_FOLLOWING?-1:i&Node.DOCUMENT_POSITION_PRECEDING?1:0}))}function Pf(e,t,{sorted:n=!0,relativeTo:r=null,skipElements:o=[]}={}){var i;let a=null!=(i=Array.isArray(e)?e.length>0?e[0].ownerDocument:document:null==e?void 0:e.ownerDocument)?i:document,l=Array.isArray(e)?n?Lf(e):e:Cf(e);o.length>0&&l.length>1&&(l=l.filter((e=>!o.includes(e)))),r=null!=r?r:a.activeElement;let s,u=(()=>{if(5&t)return 1;if(10&t)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),c=(()=>{if(1&t)return 0;if(2&t)return Math.max(0,l.indexOf(r))-1;if(4&t)return Math.max(0,l.indexOf(r))+1;if(8&t)return l.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),f=32&t?{preventScroll:!0}:{},d=0,p=l.length;do{if(d>=p||d+p<=0)return 0;let e=c+d;if(16&t)e=(e+p)%p;else{if(e<0)return 3;if(e>=p)return 1}s=l[e],null==s||s.focus(f),d+=u}while(s!==a.activeElement);return 6&t&&function(e){var t,n;return null!=(n=null==(t=null==e?void 0:e.matches)?void 0:t.call(e,Ef))&&n}(s)&&s.select(),2}function Af(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function jf(){return Af()||/Android/gi.test(window.navigator.userAgent)}function Tf(e,t,n){vf.isServer||uo((r=>{document.addEventListener(e,t,n),r((()=>document.removeEventListener(e,t,n)))}))}function Rf(e,t,n){vf.isServer||uo((r=>{window.addEventListener(e,t,n),r((()=>window.removeEventListener(e,t,n)))}))}function Ff(e,t,n=xi((()=>!0))){function r(r,o){if(!n.value||r.defaultPrevented)return;let i=o(r);if(null===i||!i.getRootNode().contains(i))return;let a=function e(t){return"function"==typeof t?e(t()):Array.isArray(t)||t instanceof Set?t:[t]}(e);for(let e of a){if(null===e)continue;let t=e instanceof HTMLElement?e:ff(e);if(null!=t&&t.contains(i)||r.composed&&r.composedPath().includes(t))return}return!xf(i,_f.Loose)&&-1!==i.tabIndex&&r.preventDefault(),t(r,i)}let o=Tt(null);Tf("pointerdown",(e=>{var t,r;n.value&&(o.value=(null==(r=null==(t=e.composedPath)?void 0:t.call(e))?void 0:r[0])||e.target)}),!0),Tf("mousedown",(e=>{var t,r;n.value&&(o.value=(null==(r=null==(t=e.composedPath)?void 0:t.call(e))?void 0:r[0])||e.target)}),!0),Tf("click",(e=>{jf()||o.value&&(r(e,(()=>o.value)),o.value=null)}),!0),Tf("touchend",(e=>r(e,(()=>e.target instanceof HTMLElement?e.target:null))),!0),Rf("blur",(e=>r(e,(()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null))),!0)}function If(e,t){if(e)return e;let n=null!=t?t:"button";return"string"==typeof n&&"button"===n.toLowerCase()?"button":void 0}function Mf(e,t){let n=Tt(If(e.value.type,e.value.as));return Vn((()=>{n.value=If(e.value.type,e.value.as)})),uo((()=>{var e;n.value||ff(t)&&ff(t)instanceof HTMLButtonElement&&(null==(e=ff(t))||!e.hasAttribute("type"))&&(n.value="button")})),n}let Df=/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g;function Bf(e){var t,n;let r=null!=(t=e.innerText)?t:"",o=e.cloneNode(!0);if(!(o instanceof HTMLElement))return r;let i=!1;for(let e of o.querySelectorAll('[hidden],[aria-hidden],[role="img"]'))e.remove(),i=!0;let a=i?null!=(n=o.innerText)?n:"":r;return Df.test(a)&&(a=a.replace(Df,"")),a}function Nf(e){let t=Tt(""),n=Tt("");return()=>{let r=ff(e);if(!r)return"";let o=r.innerText;if(t.value===o)return n.value;let i=function(e){let t=e.getAttribute("aria-label");if("string"==typeof t)return t.trim();let n=e.getAttribute("aria-labelledby");if(n){let e=n.split(" ").map((e=>{let t=document.getElementById(e);if(t){let e=t.getAttribute("aria-label");return"string"==typeof e?e.trim():Bf(t).trim()}return null})).filter(Boolean);if(e.length>0)return e.join(", ")}return Bf(e).trim()}(r).trim().toLowerCase();return t.value=o,n.value=i,i}}function Uf(e){return[e.screenX,e.screenY]}function Vf(){let e=Tt([-1,-1]);return{wasMoved(t){let n=Uf(t);return(e.value[0]!==n[0]||e.value[1]!==n[1])&&(e.value=n,!0)},update(t){e.value=Uf(t)}}}let Hf=Symbol("Context");var qf=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(qf||{});function $f(){return kr(Hf,null)}function zf(e){Or(Hf,e)}var Wf=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(Wf||{});var Zf=(e=>(e[e.First=0]="First",e[e.Previous=1]="Previous",e[e.Next=2]="Next",e[e.Last=3]="Last",e[e.Specific=4]="Specific",e[e.Nothing=5]="Nothing",e))(Zf||{});function Kf(e,t){let n=t.resolveItems();if(n.length<=0)return null;let r=t.resolveActiveIndex(),o=null!=r?r:-1;switch(e.focus){case 0:for(let e=0;e=0;--e)if(!t.resolveDisabled(n[e],e,n))return e;return r;case 2:for(let e=o+1;e=0;--e)if(!t.resolveDisabled(n[e],e,n))return e;return r;case 4:for(let r=0;r(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(Yf||{}),Gf=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(Gf||{});function Jf({visible:e=!0,features:t=0,ourProps:n,theirProps:r,...o}){var i;let a=ed(r,n),l=Object.assign(o,{props:a});if(e||2&t&&a.static)return Qf(l);if(1&t){return df(null==(i=a.unmount)||i?0:1,{0:()=>null,1:()=>Qf({...o,props:{...a,hidden:!0,style:{display:"none"}}})})}return Qf(l)}function Qf({props:e,attrs:t,slots:n,slot:r,name:o}){var i,a;let{as:l,...s}=td(e,["unmount","static"]),u=null==(i=n.default)?void 0:i.call(n,r),c={};if(r){let e=!1,t=[];for(let[n,o]of Object.entries(r))"boolean"==typeof o&&(e=!0),!0===o&&t.push(n);e&&(c["data-headlessui-state"]=t.join(" "))}if("template"===l){if(u=Xf(null!=u?u:[]),Object.keys(s).length>0||Object.keys(t).length>0){let[e,...n]=null!=u?u:[];if(!function(e){return null!=e&&("string"==typeof e.type||"object"==typeof e.type||"function"==typeof e.type)}(e)||n.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${o} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(s).concat(Object.keys(t)).map((e=>e.trim())).filter(((e,t,n)=>n.indexOf(e)===t)).sort(((e,t)=>e.localeCompare(t))).map((e=>` - ${e}`)).join("\n"),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".',"Render a single element as the child so that we can forward the props onto that element."].map((e=>` - ${e}`)).join("\n")].join("\n"));let r=ed(null!=(a=e.props)?a:{},s,c),i=Ko(e,r,!0);for(let e in r)e.startsWith("on")&&(i.props||(i.props={}),i.props[e]=r[e]);return i}return Array.isArray(u)&&1===u.length?u[0]:u}return Oi(l,Object.assign({},s,c),{default:()=>u})}function Xf(e){return e.flatMap((e=>e.type===Lo?Xf(e.children):[e]))}function ed(...e){if(0===e.length)return{};if(1===e.length)return e[0];let t={},n={};for(let r of e)for(let e in r)e.startsWith("on")&&"function"==typeof r[e]?(null!=n[e]||(n[e]=[]),n[e].push(r[e])):t[e]=r[e];if(t.disabled||t["aria-disabled"])return Object.assign(t,Object.fromEntries(Object.keys(n).map((e=>[e,void 0]))));for(let e in n)Object.assign(t,{[e](t,...r){let o=n[e];for(let e of o){if(t instanceof Event&&t.defaultPrevented)return;e(t,...r)}}});return t}function td(e,t=[]){let n=Object.assign({},e);for(let e of t)e in n&&delete n[e];return n}var nd=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(nd||{}),rd=(e=>(e[e.Pointer=0]="Pointer",e[e.Other=1]="Other",e))(rd||{});let od=Symbol("MenuContext");function id(e){let t=kr(od,null);if(null===t){let t=new Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,id),t}return t}let ad=Ln({name:"Menu",props:{as:{type:[Object,String],default:"template"}},setup(e,{slots:t,attrs:n}){let r=Tt(1),o=Tt(null),i=Tt(null),a=Tt([]),l=Tt(""),s=Tt(null),u=Tt(1);function c(e=e=>e){let t=null!==s.value?a.value[s.value]:null,n=Lf(e(a.value.slice()),(e=>ff(e.dataRef.domRef))),r=t?n.indexOf(t):null;return-1===r&&(r=null),{items:n,activeItemIndex:r}}let f={menuState:r,buttonRef:o,itemsRef:i,items:a,searchQuery:l,activeItemIndex:s,activationTrigger:u,closeMenu:()=>{r.value=1,s.value=null},openMenu:()=>r.value=0,goToItem(e,t,n){let r=c(),o=Kf(e===Zf.Specific?{focus:Zf.Specific,id:t}:{focus:e},{resolveItems:()=>r.items,resolveActiveIndex:()=>r.activeItemIndex,resolveId:e=>e.id,resolveDisabled:e=>e.dataRef.disabled});l.value="",s.value=o,u.value=null!=n?n:1,a.value=r.items},search(e){let t=""!==l.value?0:1;l.value+=e.toLowerCase();let n=(null!==s.value?a.value.slice(s.value+t).concat(a.value.slice(0,s.value+t)):a.value).find((e=>e.dataRef.textValue.startsWith(l.value)&&!e.dataRef.disabled)),r=n?a.value.indexOf(n):-1;-1===r||r===s.value||(s.value=r,u.value=1)},clearSearch(){l.value=""},registerItem(e,t){let n=c((n=>[...n,{id:e,dataRef:t}]));a.value=n.items,s.value=n.activeItemIndex,u.value=1},unregisterItem(e){let t=c((t=>{let n=t.findIndex((t=>t.id===e));return-1!==n&&t.splice(n,1),t}));a.value=t.items,s.value=t.activeItemIndex,u.value=1}};return Ff([o,i],((e,t)=>{var n;f.closeMenu(),xf(t,_f.Loose)||(e.preventDefault(),null==(n=ff(o))||n.focus())}),xi((()=>0===r.value))),Or(od,f),zf(xi((()=>df(r.value,{0:qf.Open,1:qf.Closed})))),()=>{let o={open:0===r.value,close:f.closeMenu};return Jf({ourProps:{},theirProps:e,slot:o,slots:t,attrs:n,name:"Menu"})}}}),ld=Ln({name:"MenuButton",props:{disabled:{type:Boolean,default:!1},as:{type:[Object,String],default:"button"},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){var o;let i=null!=(o=e.id)?o:`headlessui-menu-button-${cf()}`,a=id("MenuButton");function l(e){switch(e.key){case Wf.Space:case Wf.Enter:case Wf.ArrowDown:e.preventDefault(),e.stopPropagation(),a.openMenu(),Xt((()=>{var e;null==(e=ff(a.itemsRef))||e.focus({preventScroll:!0}),a.goToItem(Zf.First)}));break;case Wf.ArrowUp:e.preventDefault(),e.stopPropagation(),a.openMenu(),Xt((()=>{var e;null==(e=ff(a.itemsRef))||e.focus({preventScroll:!0}),a.goToItem(Zf.Last)}))}}function s(e){if(e.key===Wf.Space)e.preventDefault()}function u(t){e.disabled||(0===a.menuState.value?(a.closeMenu(),Xt((()=>{var e;return null==(e=ff(a.buttonRef))?void 0:e.focus({preventScroll:!0})}))):(t.preventDefault(),a.openMenu(),function(e){requestAnimationFrame((()=>requestAnimationFrame(e)))}((()=>{var e;return null==(e=ff(a.itemsRef))?void 0:e.focus({preventScroll:!0})}))))}r({el:a.buttonRef,$el:a.buttonRef});let c=Mf(xi((()=>({as:e.as,type:t.type}))),a.buttonRef);return()=>{var r;let o={open:0===a.menuState.value},{...f}=e;return Jf({ourProps:{ref:a.buttonRef,id:i,type:c.value,"aria-haspopup":"menu","aria-controls":null==(r=ff(a.itemsRef))?void 0:r.id,"aria-expanded":0===a.menuState.value,onKeydown:l,onKeyup:s,onClick:u},theirProps:f,slot:o,attrs:t,slots:n,name:"MenuButton"})}}}),sd=Ln({name:"MenuItems",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){var o;let i=null!=(o=e.id)?o:`headlessui-menu-items-${cf()}`,a=id("MenuItems"),l=Tt(null);function s(e){var t;switch(l.value&&clearTimeout(l.value),e.key){case Wf.Space:if(""!==a.searchQuery.value)return e.preventDefault(),e.stopPropagation(),a.search(e.key);case Wf.Enter:if(e.preventDefault(),e.stopPropagation(),null!==a.activeItemIndex.value){null==(t=ff(a.items.value[a.activeItemIndex.value].dataRef.domRef))||t.click()}a.closeMenu(),Of(ff(a.buttonRef));break;case Wf.ArrowDown:return e.preventDefault(),e.stopPropagation(),a.goToItem(Zf.Next);case Wf.ArrowUp:return e.preventDefault(),e.stopPropagation(),a.goToItem(Zf.Previous);case Wf.Home:case Wf.PageUp:return e.preventDefault(),e.stopPropagation(),a.goToItem(Zf.First);case Wf.End:case Wf.PageDown:return e.preventDefault(),e.stopPropagation(),a.goToItem(Zf.Last);case Wf.Escape:e.preventDefault(),e.stopPropagation(),a.closeMenu(),Xt((()=>{var e;return null==(e=ff(a.buttonRef))?void 0:e.focus({preventScroll:!0})}));break;case Wf.Tab:e.preventDefault(),e.stopPropagation(),a.closeMenu(),Xt((()=>function(e,t){return Pf(Cf(),t,{relativeTo:e})}(ff(a.buttonRef),e.shiftKey?mf.Previous:mf.Next)));break;default:1===e.key.length&&(a.search(e.key),l.value=setTimeout((()=>a.clearSearch()),350))}}function u(e){if(e.key===Wf.Space)e.preventDefault()}r({el:a.itemsRef,$el:a.itemsRef}),function({container:e,accept:t,walk:n,enabled:r}){uo((()=>{let o=e.value;if(!o||void 0!==r&&!r.value)return;let i=gf(e);if(!i)return;let a=Object.assign((e=>t(e)),{acceptNode:t}),l=i.createTreeWalker(o,NodeFilter.SHOW_ELEMENT,a,!1);for(;l.nextNode();)n(l.currentNode)}))}({container:xi((()=>ff(a.itemsRef))),enabled:xi((()=>0===a.menuState.value)),accept:e=>"menuitem"===e.getAttribute("role")?NodeFilter.FILTER_REJECT:e.hasAttribute("role")?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT,walk(e){e.setAttribute("role","none")}});let c=$f(),f=xi((()=>null!==c?(c.value&qf.Open)===qf.Open:0===a.menuState.value));return()=>{var r,o;let l={open:0===a.menuState.value},{...c}=e;return Jf({ourProps:{"aria-activedescendant":null===a.activeItemIndex.value||null==(r=a.items.value[a.activeItemIndex.value])?void 0:r.id,"aria-labelledby":null==(o=ff(a.buttonRef))?void 0:o.id,id:i,onKeydown:s,onKeyup:u,role:"menu",tabIndex:0,ref:a.itemsRef},theirProps:c,slot:l,attrs:t,slots:n,features:Yf.RenderStrategy|Yf.Static,visible:f.value,name:"MenuItems"})}}}),ud=Ln({name:"MenuItem",inheritAttrs:!1,props:{as:{type:[Object,String],default:"template"},disabled:{type:Boolean,default:!1},id:{type:String,default:null}},setup(e,{slots:t,attrs:n,expose:r}){var o;let i=null!=(o=e.id)?o:`headlessui-menu-item-${cf()}`,a=id("MenuItem"),l=Tt(null);r({el:l,$el:l});let s=xi((()=>null!==a.activeItemIndex.value&&a.items.value[a.activeItemIndex.value].id===i)),u=Nf(l),c=xi((()=>({disabled:e.disabled,get textValue(){return u()},domRef:l})));function f(t){if(e.disabled)return t.preventDefault();a.closeMenu(),Of(ff(a.buttonRef))}function d(){if(e.disabled)return a.goToItem(Zf.Nothing);a.goToItem(Zf.Specific,i)}Vn((()=>a.registerItem(i,c))),zn((()=>a.unregisterItem(i))),uo((()=>{0===a.menuState.value&&s.value&&0!==a.activationTrigger.value&&Xt((()=>{var e,t;return null==(t=null==(e=ff(l))?void 0:e.scrollIntoView)?void 0:t.call(e,{block:"nearest"})}))}));let p=Vf();function h(e){p.update(e)}function v(t){p.wasMoved(t)&&(e.disabled||s.value||a.goToItem(Zf.Specific,i,0))}function g(t){p.wasMoved(t)&&(e.disabled||s.value&&a.goToItem(Zf.Nothing))}return()=>{let{disabled:r,...o}=e,u={active:s.value,disabled:r,close:a.closeMenu};return Jf({ourProps:{id:i,ref:l,role:"menuitem",tabIndex:!0===r?void 0:-1,"aria-disabled":!0===r||void 0,onClick:f,onFocus:d,onPointerenter:h,onMouseenter:h,onPointermove:v,onMousemove:v,onPointerleave:g,onMouseleave:g},theirProps:{...n,...o},slot:u,attrs:n,slots:t,name:"MenuItem"})}}});function cd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18 18 6M6 6l12 12"})])}function fd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M10.5 19.5 3 12m0 0 7.5-7.5M3 12h18"})])}function dd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0L2.697 16.126ZM12 15.75h.007v.008H12v-.008Z"})])}function pd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0"})])}function hd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M2.25 12.75V12A2.25 2.25 0 0 1 4.5 9.75h15A2.25 2.25 0 0 1 21.75 12v.75m-8.69-6.44-2.12-2.12a1.5 1.5 0 0 0-1.061-.44H4.5A2.25 2.25 0 0 0 2.25 6v12a2.25 2.25 0 0 0 2.25 2.25h15A2.25 2.25 0 0 0 21.75 18V9a2.25 2.25 0 0 0-2.25-2.25h-5.379a1.5 1.5 0 0 1-1.06-.44Z"})])}function vd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3.75 9.776c.112-.017.227-.026.344-.026h15.812c.117 0 .232.009.344.026m-16.5 0a2.25 2.25 0 0 0-1.883 2.542l.857 6a2.25 2.25 0 0 0 2.227 1.932H19.05a2.25 2.25 0 0 0 2.227-1.932l.857-6a2.25 2.25 0 0 0-1.883-2.542m-16.5 0V6A2.25 2.25 0 0 1 6 3.75h3.879a1.5 1.5 0 0 1 1.06.44l2.122 2.12a1.5 1.5 0 0 0 1.06.44H18A2.25 2.25 0 0 1 20.25 9v.776"})])}function gd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m8.25 4.5 7.5 7.5-7.5 7.5"})])}function yd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 6.75a.75.75 0 1 1 0-1.5.75.75 0 0 1 0 1.5ZM12 12.75a.75.75 0 1 1 0-1.5.75.75 0 0 1 0 1.5ZM12 18.75a.75.75 0 1 1 0-1.5.75.75 0 0 1 0 1.5Z"})])}function md(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M20.25 6.375c0 2.278-3.694 4.125-8.25 4.125S3.75 8.653 3.75 6.375m16.5 0c0-2.278-3.694-4.125-8.25-4.125S3.75 4.097 3.75 6.375m16.5 0v11.25c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125V6.375m16.5 0v3.75m-16.5-3.75v3.75m16.5 0v3.75C20.25 16.153 16.556 18 12 18s-8.25-1.847-8.25-4.125v-3.75m16.5 0c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125"})])}function bd(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M16.023 9.348h4.992v-.001M2.985 19.644v-4.992m0 0h4.992m-4.993 0 3.181 3.183a8.25 8.25 0 0 0 13.803-3.7M4.031 9.865a8.25 8.25 0 0 1 13.803-3.7l3.181 3.182m0-4.991v4.99"})])}var wd=al({id:"hosts",state:function(){return{selectedHostIdentifier:null}},getters:{supportsHosts:function(){return LogViewer.supports_hosts},hosts:function(){return LogViewer.hosts||[]},hasRemoteHosts:function(){return this.hosts.some((function(e){return e.is_remote}))},selectedHost:function(){var e=this;return this.hosts.find((function(t){return t.identifier===e.selectedHostIdentifier}))},localHost:function(){return this.hosts.find((function(e){return!e.is_remote}))},hostQueryParam:function(){return this.selectedHost&&this.selectedHost.is_remote?this.selectedHost.identifier:void 0}},actions:{selectHost:function(e){var t;this.supportsHosts||(e=null),"string"==typeof e&&(e=this.hosts.find((function(t){return t.identifier===e}))),e||(e=this.hosts.find((function(e){return!e.is_remote}))),this.selectedHostIdentifier=(null===(t=e)||void 0===t?void 0:t.identifier)||null}}});var Cd;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;const _d="undefined"!=typeof window,xd=(Object.prototype.toString,e=>"function"==typeof e),Od=e=>"string"==typeof e,kd=()=>{};_d&&(null==(Cd=null==window?void 0:window.navigator)?void 0:Cd.userAgent)&&/iP(ad|hone|od)/.test(window.navigator.userAgent);function Sd(e){return"function"==typeof e?e():Mt(e)}function Ed(e,t){return function(...n){return new Promise(((r,o)=>{Promise.resolve(e((()=>t.apply(this,n)),{fn:t,thisArg:this,args:n})).then(r).catch(o)}))}}const Ld=e=>e();function Pd(e){return!!ce()&&(fe(e),!0)}Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;var Ad=Object.getOwnPropertySymbols,jd=Object.prototype.hasOwnProperty,Td=Object.prototype.propertyIsEnumerable,Rd=(e,t)=>{var n={};for(var r in e)jd.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&Ad)for(var r of Ad(e))t.indexOf(r)<0&&Td.call(e,r)&&(n[r]=e[r]);return n};function Fd(e,t,n={}){const r=n,{eventFilter:o=Ld}=r,i=Rd(r,["eventFilter"]);return fo(e,Ed(o,t),i)}Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;var Id=Object.defineProperty,Md=Object.defineProperties,Dd=Object.getOwnPropertyDescriptors,Bd=Object.getOwnPropertySymbols,Nd=Object.prototype.hasOwnProperty,Ud=Object.prototype.propertyIsEnumerable,Vd=(e,t,n)=>t in e?Id(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Hd=(e,t)=>{for(var n in t||(t={}))Nd.call(t,n)&&Vd(e,n,t[n]);if(Bd)for(var n of Bd(t))Ud.call(t,n)&&Vd(e,n,t[n]);return e},qd=(e,t)=>Md(e,Dd(t)),$d=(e,t)=>{var n={};for(var r in e)Nd.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&Bd)for(var r of Bd(e))t.indexOf(r)<0&&Ud.call(e,r)&&(n[r]=e[r]);return n};function zd(e,t,n={}){const r=n,{eventFilter:o}=r,i=$d(r,["eventFilter"]),{eventFilter:a,pause:l,resume:s,isActive:u}=function(e=Ld){const t=Tt(!0);return{isActive:yt(t),pause:function(){t.value=!1},resume:function(){t.value=!0},eventFilter:(...n)=>{t.value&&e(...n)}}}(o);return{stop:Fd(e,t,qd(Hd({},i),{eventFilter:a})),pause:l,resume:s,isActive:u}}Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;function Wd(e){var t;const n=Sd(e);return null!=(t=null==n?void 0:n.$el)?t:n}const Zd=_d?window:void 0;_d&&window.document,_d&&window.navigator,_d&&window.location;function Kd(...e){let t,n,r,o;if(Od(e[0])||Array.isArray(e[0])?([n,r,o]=e,t=Zd):[t,n,r,o]=e,!t)return kd;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const i=[],a=()=>{i.forEach((e=>e())),i.length=0},l=fo((()=>[Wd(t),Sd(o)]),(([e,t])=>{a(),e&&i.push(...n.flatMap((n=>r.map((r=>((e,t,n,r)=>(e.addEventListener(t,n,r),()=>e.removeEventListener(t,n,r)))(e,n,r,t))))))}),{immediate:!0,flush:"post"}),s=()=>{l(),a()};return Pd(s),s}Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;const Yd="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},Gd="__vueuse_ssr_handlers__";Yd[Gd]=Yd[Gd]||{};const Jd=Yd[Gd];function Qd(e,t){return Jd[e]||t}function Xd(e){return null==e?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":"boolean"==typeof e?"boolean":"string"==typeof e?"string":"object"==typeof e?"object":Number.isNaN(e)?"any":"number"}var ep=Object.defineProperty,tp=Object.getOwnPropertySymbols,np=Object.prototype.hasOwnProperty,rp=Object.prototype.propertyIsEnumerable,op=(e,t,n)=>t in e?ep(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ip=(e,t)=>{for(var n in t||(t={}))np.call(t,n)&&op(e,n,t[n]);if(tp)for(var n of tp(t))rp.call(t,n)&&op(e,n,t[n]);return e};const ap={boolean:{read:e=>"true"===e,write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},lp="vueuse-storage";function sp(e,t,n,r={}){var o;const{flush:i="pre",deep:a=!0,listenToStorageChanges:l=!0,writeDefaults:s=!0,mergeDefaults:u=!1,shallow:c,window:f=Zd,eventFilter:d,onError:p=e=>{}}=r,h=(c?Rt:Tt)(t);if(!n)try{n=Qd("getDefaultStorage",(()=>{var e;return null==(e=Zd)?void 0:e.localStorage}))()}catch(e){p(e)}if(!n)return h;const v=Sd(t),g=Xd(v),y=null!=(o=r.serializer)?o:ap[g],{pause:m,resume:b}=zd(h,(()=>function(t){try{if(null==t)n.removeItem(e);else{const r=y.write(t),o=n.getItem(e);o!==r&&(n.setItem(e,r),f&&f.dispatchEvent(new CustomEvent(lp,{detail:{key:e,oldValue:o,newValue:r,storageArea:n}})))}}catch(e){p(e)}}(h.value)),{flush:i,deep:a,eventFilter:d});return f&&l&&(Kd(f,"storage",w),Kd(f,lp,(function(e){w(e.detail)}))),w(),h;function w(t){if(!t||t.storageArea===n)if(t&&null==t.key)h.value=v;else if(!t||t.key===e){m();try{h.value=function(t){const r=t?t.newValue:n.getItem(e);if(null==r)return s&&null!==v&&n.setItem(e,y.write(v)),v;if(!t&&u){const e=y.read(r);return xd(u)?u(e,v):"object"!==g||Array.isArray(e)?e:ip(ip({},v),e)}return"string"!=typeof r?r:y.read(r)}(t)}catch(e){p(e)}finally{t?Xt(b):b()}}}}Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;new Map;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;function up(e,t,n={}){const{window:r=Zd}=n;return sp(e,t,null==r?void 0:r.localStorage,n)}Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;var cp,fp;(fp=cp||(cp={})).UP="UP",fp.RIGHT="RIGHT",fp.DOWN="DOWN",fp.LEFT="LEFT",fp.NONE="NONE";Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;var dp=Object.defineProperty,pp=Object.getOwnPropertySymbols,hp=Object.prototype.hasOwnProperty,vp=Object.prototype.propertyIsEnumerable,gp=(e,t,n)=>t in e?dp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;((e,t)=>{for(var n in t||(t={}))hp.call(t,n)&&gp(e,n,t[n]);if(pp)for(var n of pp(t))vp.call(t,n)&&gp(e,n,t[n])})({linear:function(e){return e}},{easeInSine:[.12,0,.39,0],easeOutSine:[.61,1,.88,1],easeInOutSine:[.37,0,.63,1],easeInQuad:[.11,0,.5,0],easeOutQuad:[.5,1,.89,1],easeInOutQuad:[.45,0,.55,1],easeInCubic:[.32,0,.67,0],easeOutCubic:[.33,1,.68,1],easeInOutCubic:[.65,0,.35,1],easeInQuart:[.5,0,.75,0],easeOutQuart:[.25,1,.5,1],easeInOutQuart:[.76,0,.24,1],easeInQuint:[.64,0,.78,0],easeOutQuint:[.22,1,.36,1],easeInOutQuint:[.83,0,.17,1],easeInExpo:[.7,0,.84,0],easeOutExpo:[.16,1,.3,1],easeInOutExpo:[.87,0,.13,1],easeInCirc:[.55,0,1,.45],easeOutCirc:[0,.55,.45,1],easeInOutCirc:[.85,0,.15,1],easeInBack:[.36,0,.66,-.56],easeOutBack:[.34,1.56,.64,1],easeInOutBack:[.68,-.6,.32,1.6]});var yp,mp,bp=al({id:"search",state:function(){return{query:"",searchMoreRoute:null,searching:!1,percentScanned:0,error:null}},getters:{hasQuery:function(e){return""!==String(e.query).trim()}},actions:{init:function(){this.checkSearchProgress()},setQuery:function(e){this.query=e},update:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3],o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0;this.query=e,this.error=t&&""!==t?t:null,this.searchMoreRoute=n,this.searching=r,this.percentScanned=o,this.searching&&this.checkSearchProgress()},checkSearchProgress:function(){var e=this,t=this.query;if(""!==t){var n="?"+new URLSearchParams({query:t});ku.get(this.searchMoreRoute+n).then((function(n){var r=n.data;if(e.query===t){var o=e.searching;e.searching=r.hasMoreResults,e.percentScanned=r.percentScanned,e.searching?e.checkSearchProgress():o&&!e.searching&&window.dispatchEvent(new CustomEvent("reload-results"))}}))}}}}),wp=al({id:"pagination",state:function(){return{page:1,pagination:{}}},getters:{currentPage:function(e){return 1!==e.page?Number(e.page):null},links:function(e){var t;return((null===(t=e.pagination)||void 0===t?void 0:t.links)||[]).slice(1,-1)},linksShort:function(e){var t;return((null===(t=e.pagination)||void 0===t?void 0:t.links_short)||[]).slice(1,-1)},hasPages:function(e){var t;return(null===(t=e.pagination)||void 0===t?void 0:t.last_page)>1},hasMorePages:function(e){var t;return null!==(null===(t=e.pagination)||void 0===t?void 0:t.next_page_url)}},actions:{setPagination:function(e){var t,n;(this.pagination=e,(null===(t=this.pagination)||void 0===t?void 0:t.last_page)0}))},totalResults:function(){return this.levelsFound.reduce((function(e,t){return e+t.count}),0)},levelsSelected:function(){return this.levelsFound.filter((function(e){return e.selected}))},totalResultsSelected:function(){return this.levelsSelected.reduce((function(e,t){return e+t.count}),0)}},actions:{setLevelCounts:function(e){e.hasOwnProperty("length")?this.levelCounts=e:this.levelCounts=Object.values(e),this.allLevels=e.map((function(e){return e.level}))},selectAllLevels:function(){this.excludedLevels=[],this.levelCounts.forEach((function(e){return e.selected=!0}))},deselectAllLevels:function(){this.excludedLevels=this.allLevels,this.levelCounts.forEach((function(e){return e.selected=!1}))},toggleLevel:function(e){var t=this.levelCounts.find((function(t){return t.level===e}))||{};this.excludedLevels.includes(e)?(this.excludedLevels=this.excludedLevels.filter((function(t){return t!==e})),t.selected=!0):(this.excludedLevels.push(e),t.selected=!1)}}}),_p=n(543),xp={System:"System",Light:"Light",Dark:"Dark"},Op=[{label:"Datetime",data_key:"datetime"},{label:"Severity",data_key:"level"},{label:"Message",data_key:"message"}],kp=null===(yp=null===(mp=window.LogViewer)||void 0===mp||null===(mp=mp.defaults)||void 0===mp?void 0:mp.use_local_storage)||void 0===yp||yp,Sp=al({id:"logViewer",state:function(){var e,t,n,r,o,i,a,l,s,u,c,f;return{theme:kp?up("logViewerTheme",(null===(e=window.LogViewer)||void 0===e||null===(e=e.defaults)||void 0===e?void 0:e.theme)||xp.System):(null===(t=window.LogViewer)||void 0===t||null===(t=t.defaults)||void 0===t?void 0:t.theme)||xp.System,shorterStackTraces:kp?up("logViewerShorterStackTraces",null!==(n=null===(r=window.LogViewer)||void 0===r||null===(r=r.defaults)||void 0===r?void 0:r.shorter_stack_traces)&&void 0!==n&&n):null!==(o=null===(i=window.LogViewer)||void 0===i||null===(i=i.defaults)||void 0===i?void 0:i.shorter_stack_traces)&&void 0!==o&&o,resultsPerPage:kp?up("logViewerResultsPerPage",null!==(a=null===(l=window.LogViewer)||void 0===l||null===(l=l.defaults)||void 0===l?void 0:l.per_page)&&void 0!==a?a:25):null!==(s=null===(u=window.LogViewer)||void 0===u||null===(u=u.defaults)||void 0===u?void 0:u.per_page)&&void 0!==s?s:25,direction:kp?up("logViewerDirection",(null===(c=window.LogViewer)||void 0===c||null===(c=c.defaults)||void 0===c?void 0:c.log_sorting_order)||"desc"):(null===(f=window.LogViewer)||void 0===f||null===(f=f.defaults)||void 0===f?void 0:f.log_sorting_order)||"desc",helpSlideOverOpen:!1,loading:!1,error:null,logs:[],columns:Op,levelCounts:[],performance:{},hasMoreResults:!1,percentScanned:100,abortController:null,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,stacksOpen:[],stacksInView:[],stackTops:{},containerTop:0,showLevelsDropdown:!0}},getters:{selectedFile:function(){return Rp().selectedFile},isOpen:function(e){return function(t){return e.stacksOpen.includes(t)}},isMobile:function(e){return e.viewportWidth<=1023},tableRowHeight:function(){return this.isMobile?29:36},headerHeight:function(){return this.isMobile?0:36},shouldBeSticky:function(e){var t=this;return function(n){return t.isOpen(n)&&e.stacksInView.includes(n)}},stickTopPosition:function(){var e=this;return function(t){var n=e.pixelsAboveFold(t);return n<0?Math.max(e.headerHeight-e.tableRowHeight,e.headerHeight+n)+"px":e.headerHeight+"px"}},pixelsAboveFold:function(e){var t=this;return function(n){var r=document.getElementById("tbody-"+n);if(!r)return!1;var o=r.getClientRects()[0];return o.top+o.height-t.tableRowHeight-t.headerHeight-e.containerTop}},isInViewport:function(){var e=this;return function(t){return e.pixelsAboveFold(t)>-e.tableRowHeight}},perPageOptions:function(){var e=window.LogViewer.per_page_options||[10,25,50,100,250,500];return e.includes(this.resultsPerPage)||(e.push(this.resultsPerPage),e.sort((function(e,t){return e-t}))),e}},actions:{setViewportDimensions:function(e,t){this.viewportWidth=e,this.viewportHeight=t;var n=document.querySelector(".log-item-container");n&&(this.containerTop=n.getBoundingClientRect().top)},toggleTheme:function(){switch(this.theme){case xp.System:this.theme=xp.Light;break;case xp.Light:this.theme=xp.Dark;break;default:this.theme=xp.System}this.syncTheme()},syncTheme:function(){var e=this.theme;e===xp.Dark||e===xp.System&&window.matchMedia("(prefers-color-scheme: dark)").matches?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")},toggle:function(e){this.isOpen(e)?this.stacksOpen=this.stacksOpen.filter((function(t){return t!==e})):this.stacksOpen.push(e),this.onScroll()},onScroll:function(){var e=this;this.stacksOpen.forEach((function(t){e.isInViewport(t)?(e.stacksInView.includes(t)||e.stacksInView.push(t),e.stackTops[t]=e.stickTopPosition(t)):(e.stacksInView=e.stacksInView.filter((function(e){return e!==t})),delete e.stackTops[t])}))},reset:function(){this.stacksOpen=[],this.stacksInView=[],this.stackTops={};var e=document.querySelector(".log-item-container");e&&(this.containerTop=e.getBoundingClientRect().top,e.scrollTo(0,0))},loadLogs:(0,_p.debounce)((function(){var e,t=this,n=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).silently,r=void 0!==n&&n,o=wd(),i=Rp(),a=bp(),l=wp(),s=Cp();if(0!==i.folders.length&&(this.abortController&&this.abortController.abort(),this.selectedFile||a.hasQuery)){this.abortController=new AbortController;var u={host:o.hostQueryParam,file:null===(e=this.selectedFile)||void 0===e?void 0:e.identifier,direction:this.direction,query:a.query,page:l.currentPage,per_page:this.resultsPerPage,exclude_levels:xt(s.excludedLevels),exclude_file_types:xt(i.fileTypesExcluded),shorter_stack_traces:this.shorterStackTraces};r||(this.loading=!0),ku.get("".concat(LogViewer.basePath,"/api/logs"),{params:u,signal:this.abortController.signal}).then((function(e){var n=e.data;t.logs=u.host?n.logs.map((function(e){var t={host:u.host,file:e.file_identifier,query:"log-index:".concat(e.index)};return e.url="".concat(window.location.host).concat(LogViewer.basePath,"?").concat(new URLSearchParams(t)),e})):n.logs,t.columns=n.columns||Op,t.hasMoreResults=n.hasMoreResults,t.percentScanned=n.percentScanned,t.error=n.error||null,t.performance=n.performance||{},s.setLevelCounts(n.levelCounts),l.setPagination(n.pagination),t.loading=!1,r?document.dispatchEvent(new Event("logsPageLoadedSilently")):Xt((function(){document.dispatchEvent(new Event("logsPageLoaded")),t.reset(),n.expandAutomatically&&t.stacksOpen.push(0)})),t.hasMoreResults&&t.loadLogs({silently:!0})})).catch((function(e){var n;if("ERR_CANCELED"===e.code)return t.hasMoreResults=!1,void(t.percentScanned=100);t.loading=!1,t.error=e.message,null!==(n=e.response)&&void 0!==n&&null!==(n=n.data)&&void 0!==n&&n.message&&(t.error+=": "+e.response.data.message)}))}}),10)}});function Ep(e){return Ep="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ep(e)}function Lp(e){return function(e){if(Array.isArray(e))return Pp(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Pp(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Pp(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Pp(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n0}))},files:function(e){return e.folders.flatMap((function(e){return e.files}))},selectedFile:function(e){return e.files.find((function(t){return t.identifier===e.selectedFileIdentifier}))},foldersOpen:function(e){return e.openFolderIdentifiers.map((function(t){return e.folders.find((function(e){return e.identifier===t}))}))},isOpen:function(){var e=this;return function(t){return e.foldersOpen.map((function(e){return e.identifier})).includes(t.identifier)}},isChecked:function(e){return function(t){return e.filesChecked.includes("string"==typeof t?t:t.identifier)}},shouldBeSticky:function(e){var t=this;return function(n){return t.isOpen(n)&&e.foldersInView.map((function(e){return e.identifier})).includes(n.identifier)}},isInViewport:function(){var e=this;return function(t){return e.pixelsAboveFold(t)>-36}},pixelsAboveFold:function(e){return function(t){var n=document.getElementById("folder-"+t);if(!n)return!1;var r=n.getClientRects()[0];return r.top+r.height-e.containerTop}},hasFilesChecked:function(e){return e.filesChecked.length>0},fileTypesSelected:function(e){return e.fileTypesAvailable.filter((function(t){return e.selectedFileTypes.includes(t.identifier)}))},fileTypesExcluded:function(e){return e.fileTypesAvailable.filter((function(t){return!e.selectedFileTypes.includes(t.identifier)})).map((function(e){return e.identifier}))},selectedFileTypesString:function(){var e=this.fileTypesSelected.map((function(e){return e.name}));return 0===e.length?"Please select at least one file type":1===e.length?e[0]:2===e.length?e.join(" and "):3===e.length?e.slice(0,-1).join(", ")+" and "+e.slice(-1):e.slice(0,3).join(", ")+" and "+(e.length-3)+" more"}},actions:{setDirection:function(e){this.direction=e},selectFile:function(e){this.selectedFileIdentifier!==e&&(this.selectedFileIdentifier=e,this.openFolderForActiveFile(),this.sidebarOpen=!1)},openFolderForActiveFile:function(){var e=this;if(this.selectedFile){var t=this.folders.find((function(t){return t.files.some((function(t){return t.identifier===e.selectedFile.identifier}))}));t&&!this.isOpen(t)&&this.toggle(t)}},openRootFolderIfNoneOpen:function(){var e=this.folders.find((function(e){return e.is_root}));e&&0===this.openFolderIdentifiers.length&&this.openFolderIdentifiers.push(e.identifier)},loadFolders:function(){var e=this;return this.abortController&&this.abortController.abort(),this.selectedHost?(this.abortController=new AbortController,this.loading=!0,ku.get("".concat(LogViewer.basePath,"/api/folders"),{params:{host:this.hostQueryParam,direction:this.direction},signal:this.abortController.signal}).then((function(t){var n=t.data;e.folders=n,e.error=n.error||null,e.loading=!1,0===e.openFolderIdentifiers.length&&(e.openFolderForActiveFile(),e.openRootFolderIfNoneOpen()),e.setAvailableFileTypes(n),e.onScroll()})).catch((function(t){var n;"ERR_CANCELED"!==t.code&&(e.loading=!1,e.error=t.message,null!==(n=t.response)&&void 0!==n&&null!==(n=n.data)&&void 0!==n&&n.message&&(e.error+=": "+t.response.data.message))}))):(this.folders=[],this.error=null,void(this.loading=!1))},setAvailableFileTypes:function(e){var t=e.flatMap((function(e){return e.files.map((function(e){return e.type}))})),n=Lp(new Set(t.map((function(e){return e.value}))));this.fileTypesAvailable=n.map((function(e){return{identifier:e,name:t.find((function(t){return t.value===e})).name,count:t.filter((function(t){return t.value===e})).length}})),this.selectedFileTypes&&0!==this.selectedFileTypes.length||(this.selectedFileTypes=n)},toggle:function(e){this.isOpen(e)?this.openFolderIdentifiers=this.openFolderIdentifiers.filter((function(t){return t!==e.identifier})):this.openFolderIdentifiers.push(e.identifier),this.onScroll()},onScroll:function(){var e=this;this.foldersOpen.forEach((function(t){e.isInViewport(t)?e.foldersInView.includes(t)||e.foldersInView.push(t):e.foldersInView=e.foldersInView.filter((function(e){return e!==t}))}))},reset:function(){this.openFolderIdentifiers=[],this.foldersInView=[];var e=document.getElementById("file-list-container");e&&(this.containerTop=e.getBoundingClientRect().top,e.scrollTo(0,0))},toggleSidebar:function(){this.sidebarOpen=!this.sidebarOpen},checkBoxToggle:function(e){this.isChecked(e)?this.filesChecked=this.filesChecked.filter((function(t){return t!==e})):this.filesChecked.push(e)},toggleCheckboxVisibility:function(){this.checkBoxesVisibility=!this.checkBoxesVisibility},resetChecks:function(){this.filesChecked=[],this.checkBoxesVisibility=!1},clearCacheForFile:function(e){var t=this;return this.clearingCache[e.identifier]=!0,ku.post("".concat(LogViewer.basePath,"/api/files/").concat(e.identifier,"/clear-cache"),{},{params:{host:this.hostQueryParam}}).then((function(){e.identifier===t.selectedFileIdentifier&&Sp().loadLogs(),t.cacheRecentlyCleared[e.identifier]=!0,setTimeout((function(){return t.cacheRecentlyCleared[e.identifier]=!1}),2e3)})).catch((function(e){})).finally((function(){return t.clearingCache[e.identifier]=!1}))},deleteFile:function(e){var t=this;return ku.delete("".concat(LogViewer.basePath,"/api/files/").concat(e.identifier),{params:{host:this.hostQueryParam}}).then((function(){return t.loadFolders()}))},clearCacheForFolder:function(e){var t=this;return this.clearingCache[e.identifier]=!0,ku.post("".concat(LogViewer.basePath,"/api/folders/").concat(e.identifier,"/clear-cache"),{},{params:{host:this.hostQueryParam}}).then((function(){e.files.some((function(e){return e.identifier===t.selectedFileIdentifier}))&&Sp().loadLogs(),t.cacheRecentlyCleared[e.identifier]=!0,setTimeout((function(){return t.cacheRecentlyCleared[e.identifier]=!1}),2e3)})).catch((function(e){})).finally((function(){t.clearingCache[e.identifier]=!1}))},deleteFolder:function(e){var t=this;return this.deleting[e.identifier]=!0,ku.delete("".concat(LogViewer.basePath,"/api/folders/").concat(e.identifier),{params:{host:this.hostQueryParam}}).then((function(){return t.loadFolders()})).catch((function(e){})).finally((function(){t.deleting[e.identifier]=!1}))},deleteSelectedFiles:function(){return ku.post("".concat(LogViewer.basePath,"/api/delete-multiple-files"),{files:this.filesChecked},{params:{host:this.hostQueryParam}})},clearCacheForAllFiles:function(){var e=this;this.clearingCache["*"]=!0,ku.post("".concat(LogViewer.basePath,"/api/clear-cache-all"),{},{params:{host:this.hostQueryParam}}).then((function(){e.cacheRecentlyCleared["*"]=!0,setTimeout((function(){return e.cacheRecentlyCleared["*"]=!1}),2e3),Sp().loadLogs()})).catch((function(e){})).finally((function(){return e.clearingCache["*"]=!1}))}}}),Fp=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(e=e||"",t)try{e=e.replace(new RegExp(t,"gi"),"$&")}catch(e){}return Ip(e).replace(/<mark>/g,"").replace(/<\/mark>/g,"").replace(/<br\/>/g,"
")},Ip=function(e){var t={"&":"&","<":"<",">":">",'"':""","'":"'"};return e.replace(/[&<>"']/g,(function(e){return t[e]}))},Mp=function(e){var t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t);var n=document.getSelection().rangeCount>0&&document.getSelection().getRangeAt(0);t.select(),document.execCommand("copy"),document.body.removeChild(t),n&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(n))},Dp=function(e,t,n){var r=e.currentRoute.value,o={host:r.query.host||void 0,file:r.query.file||void 0,query:r.query.query||void 0,page:r.query.page||void 0};"host"===t?(o.file=void 0,o.page=void 0):"file"===t&&void 0!==o.page&&(o.page=void 0),o[t]=n?String(n):void 0,e.push({name:"home",query:o})},Bp=function(){var e=Tt({});return{dropdownDirections:e,calculateDropdownDirection:function(t){e.value[t.dataset.toggleId]=function(e){window.innerWidth||document.documentElement.clientWidth;var t=window.innerHeight||document.documentElement.clientHeight;return e.getBoundingClientRect().bottom+1900&&e[0].focus()},Kp=function(){var e=Array.from(document.querySelectorAll(".".concat($p)));e.length>0&&e[e.length-1].focus()},Yp=function(e){"true"===e.getAttribute("aria-expanded")||e.click()},Gp=function(e){"true"===e.getAttribute("aria-expanded")&&e.click()},Jp=function(){var e=document.activeElement,t=nh(e,$p);if(!t){var n=function(){setTimeout((function(){Zp(),Yp(document.activeElement)}),50),document.removeEventListener("logsPageLoaded",n)};return document.addEventListener("logsPageLoaded",n),void document.dispatchEvent(new Event("goToNextPage"))}Gp(e),t.focus(),Yp(t)},Qp=function(){var e=document.activeElement,t=th(e,$p);if(!t){var n=function(){setTimeout((function(){Kp(),Yp(document.activeElement)}),50),document.removeEventListener("logsPageLoaded",n)};return document.addEventListener("logsPageLoaded",n),void document.dispatchEvent(new Event("goToPreviousPage"))}Gp(e),t.focus(),Yp(t)},Xp=function(){var e=nh(document.activeElement,qp);e&&e.focus()},eh=function(){var e=th(document.activeElement,qp);e&&e.focus()},th=function(e,t){for(var n=Array.from(document.querySelectorAll(".".concat(t))),r=n.findIndex((function(t){return t===e}))-1;r>=0&&null===n[r].offsetParent;)r--;return n[r]?n[r]:null},nh=function(e,t){for(var n=Array.from(document.querySelectorAll(".".concat(t))),r=n.findIndex((function(t){return t===e}))+1;rt&&(e.preventDefault(),n[t].focus())}else if("ArrowUp"===e.key){var r=th(document.activeElement,$p);r&&(e.preventDefault(),r.focus())}else if("ArrowDown"===e.key){var o=nh(document.activeElement,$p);o&&(e.preventDefault(),o.focus())}},ah=function(e){if("ArrowLeft"===e.key){var t=rh(document.activeElement,zp),n=Array.from(document.querySelectorAll(".".concat($p)));n.length>t&&(e.preventDefault(),n[t].focus())}else if("ArrowUp"===e.key){var r=th(document.activeElement,zp);r&&(e.preventDefault(),r.focus())}else if("ArrowDown"===e.key){var o=nh(document.activeElement,zp);o&&(e.preventDefault(),o.focus())}else if("Enter"===e.key||" "===e.key){e.preventDefault();var i=document.activeElement;i.click(),i.focus()}},lh=function(e){"ArrowUp"===e.key?(e.preventDefault(),eh()):"ArrowDown"===e.key?(e.preventDefault(),Xp()):"ArrowRight"===e.key&&(e.preventDefault(),document.activeElement.nextElementSibling.focus())},sh=function(e){if("ArrowLeft"===e.key)e.preventDefault(),document.activeElement.previousElementSibling.focus();else if("ArrowRight"===e.key){e.preventDefault();var t=Array.from(document.querySelectorAll(".".concat($p)));t.length>0&&t[0].focus()}};function uh(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 9.75v6.75m0 0-3-3m3 3 3-3m-8.25 6a4.5 4.5 0 0 1-1.41-8.775 5.25 5.25 0 0 1 10.233-2.33 3 3 0 0 1 3.758 3.848A3.752 3.752 0 0 1 18 19.5H6.75Z"})])}const ch={__name:"DownloadLink",props:["url"],setup:function(e){var t=e,n=function(){ku.get("".concat(t.url,"/request")).then((function(e){r(e.data.url)})).catch((function(e){e.response&&e.response.data&&alert("".concat(e.message,": ").concat(e.response.data.message,". Check developer console for more info."))}))},r=function(e){var t=document.createElement("a");t.href=e,t.setAttribute("download",""),document.body.appendChild(t),t.click(),document.body.removeChild(t)};return function(e,t){return Fo(),No("button",{onClick:n},[tr(e.$slots,"default",{},(function(){return[Wo(Mt(uh),{class:"w-4 h-4 mr-2"}),Yo(" Download ")]}))])}}};function fh(e){return fh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},fh(e)}function dh(){dh=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,o=Object.defineProperty||function(e,t,n){e[t]=n.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",l=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function c(e,t,n,r){var i=t&&t.prototype instanceof y?t:y,a=Object.create(i.prototype),l=new A(r||[]);return o(a,"_invoke",{value:S(e,n,l)}),a}function f(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=c;var d="suspendedStart",p="suspendedYield",h="executing",v="completed",g={};function y(){}function m(){}function b(){}var w={};u(w,a,(function(){return this}));var C=Object.getPrototypeOf,_=C&&C(C(j([])));_&&_!==n&&r.call(_,a)&&(w=_);var x=b.prototype=y.prototype=Object.create(w);function O(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function n(o,i,a,l){var s=f(e[o],e,i);if("throw"!==s.type){var u=s.arg,c=u.value;return c&&"object"==fh(c)&&r.call(c,"__await")?t.resolve(c.__await).then((function(e){n("next",e,a,l)}),(function(e){n("throw",e,a,l)})):t.resolve(c).then((function(e){u.value=e,a(u)}),(function(e){return n("throw",e,a,l)}))}l(s.arg)}var i;o(this,"_invoke",{value:function(e,r){function o(){return new t((function(t,o){n(e,r,t,o)}))}return i=i?i.then(o,o):o()}})}function S(t,n,r){var o=d;return function(i,a){if(o===h)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:e,done:!0}}for(r.method=i,r.arg=a;;){var l=r.delegate;if(l){var s=E(l,r);if(s){if(s===g)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(o===d)throw o=v,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);o=h;var u=f(t,n,r);if("normal"===u.type){if(o=r.done?v:p,u.arg===g)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(o=v,r.method="throw",r.arg=u.arg)}}}function E(t,n){var r=n.method,o=t.iterator[r];if(o===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,E(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),g;var i=f(o,t.iterator,n.arg);if("throw"===i.type)return n.method="throw",n.arg=i.arg,n.delegate=null,g;var a=i.arg;return a?a.done?(n[t.resultName]=a.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,g):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,g)}function L(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(L,this),this.reset(!0)}function j(t){if(t||""===t){var n=t[a];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function n(){for(;++o=0;--i){var a=this.tryEntries[i],l=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(s&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),P(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;P(n)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:j(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),g}},t}function ph(e,t,n,r,o,i,a){try{var l=e[i](a),s=l.value}catch(e){return void n(e)}l.done?t(s):Promise.resolve(s).then(r,o)}var hh={class:"file-item group"},vh={key:0,class:"sr-only"},gh={key:1,class:"sr-only"},yh={key:2,class:"my-auto mr-2"},mh=["checked","value"],bh={class:"file-name"},wh=zo("span",{class:"sr-only"},"Name:",-1),Ch={class:"file-size"},_h=zo("span",{class:"sr-only"},"Size:",-1),xh={class:"py-2"},Oh={class:"text-brand-500"},kh=zo("div",{class:"divider"},null,-1);const Sh={__name:"FileListItem",props:{logFile:{type:Object,required:!0},showSelectToggle:{type:Boolean,default:!1}},emits:["selectForDeletion"],setup:function(e,t){t.emit;var n=e,r=Rp(),o=nf(),i=Bp(),a=i.dropdownDirections,l=i.calculateDropdownDirection,s=xi((function(){return r.selectedFile&&r.selectedFile.identifier===n.logFile.identifier})),u=function(){var e=function(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){ph(i,r,o,a,l,"next",e)}function l(e){ph(i,r,o,a,l,"throw",e)}a(void 0)}))}}(dh().mark((function e(){return dh().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!confirm("Are you sure you want to delete the log file '".concat(n.logFile.name,"'? THIS ACTION CANNOT BE UNDONE."))){e.next=6;break}return e.next=3,r.deleteFile(n.logFile);case 3:return n.logFile.identifier===r.selectedFileIdentifier&&Dp(o,"file",null),e.next=6,r.loadFolders();case 6:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),c=function(){r.checkBoxToggle(n.logFile.identifier)},f=function(){r.toggleCheckboxVisibility(),c()};return function(t,n){return Fo(),No("div",{class:Y(["file-item-container",[s.value?"active":""]])},[Wo(Mt(ad),null,{default:dn((function(){return[zo("div",hh,[zo("button",{class:"file-item-info",onKeydown:n[0]||(n[0]=function(){return Mt(lh)&&Mt(lh).apply(void 0,arguments)})},[s.value?Jo("",!0):(Fo(),No("span",vh,"Select log file")),s.value?(Fo(),No("span",gh,"Deselect log file")):Jo("",!0),e.logFile.can_delete?pn((Fo(),No("span",yh,[zo("input",{type:"checkbox",onClick:xa(c,["stop"]),checked:Mt(r).isChecked(e.logFile),value:Mt(r).isChecked(e.logFile)},null,8,mh)],512)),[[Yi,Mt(r).checkBoxesVisibility]]):Jo("",!0),zo("span",bh,[wh,Yo(ne(e.logFile.name),1)]),zo("span",Ch,[_h,Yo(ne(e.logFile.size_formatted),1)])],32),Wo(Mt(ld),{as:"button",class:"file-dropdown-toggle group-hover:border-brand-600 group-hover:dark:border-brand-800","data-toggle-id":e.logFile.identifier,onKeydown:Mt(sh),onClick:n[1]||(n[1]=xa((function(e){return Mt(l)(e.target)}),["stop"]))},{default:dn((function(){return[Wo(Mt(yd),{class:"w-4 h-4 pointer-events-none"})]})),_:1},8,["data-toggle-id","onKeydown"])]),Wo(Ti,{"leave-active-class":"transition ease-in duration-100","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-90","enter-active-class":"transition ease-out duration-100","enter-from-class":"opacity-0 scale-90","enter-to-class":"opacity-100 scale-100"},{default:dn((function(){return[Wo(Mt(sd),{as:"div",class:Y(["dropdown w-48",[Mt(a)[e.logFile.identifier]]])},{default:dn((function(){return[zo("div",xh,[Wo(Mt(ud),{onClick:n[2]||(n[2]=xa((function(t){return Mt(r).clearCacheForFile(e.logFile)}),["stop","prevent"]))},{default:dn((function(t){return[zo("button",{class:Y([t.active?"active":""])},[pn(Wo(Mt(md),{class:"h-4 w-4 mr-2"},null,512),[[Yi,!Mt(r).clearingCache[e.logFile.identifier]]]),pn(Wo(Hp,null,null,512),[[Yi,Mt(r).clearingCache[e.logFile.identifier]]]),pn(zo("span",null,"Clear index",512),[[Yi,!Mt(r).cacheRecentlyCleared[e.logFile.identifier]&&!Mt(r).clearingCache[e.logFile.identifier]]]),pn(zo("span",null,"Clearing...",512),[[Yi,!Mt(r).cacheRecentlyCleared[e.logFile.identifier]&&Mt(r).clearingCache[e.logFile.identifier]]]),pn(zo("span",Oh,"Index cleared",512),[[Yi,Mt(r).cacheRecentlyCleared[e.logFile.identifier]]])],2)]})),_:1}),e.logFile.can_download?(Fo(),Uo(Mt(ud),{key:0,onClick:n[3]||(n[3]=xa((function(){}),["stop"]))},{default:dn((function(t){var n=t.active;return[Wo(ch,{url:e.logFile.download_url,class:Y([n?"active":""])},null,8,["url","class"])]})),_:1})):Jo("",!0),e.logFile.can_delete?(Fo(),No(Lo,{key:1},[kh,Wo(Mt(ud),{onClick:xa(u,["stop","prevent"])},{default:dn((function(e){return[zo("button",{class:Y([e.active?"active":""])},[Wo(Mt(pd),{class:"w-4 h-4 mr-2"}),Yo(" Delete ")],2)]})),_:1}),Wo(Mt(ud),{onClick:xa(f,["stop"])},{default:dn((function(e){return[zo("button",{class:Y([e.active?"active":""])},[Wo(Mt(pd),{class:"w-4 h-4 mr-2"}),Yo(" Delete Multiple ")],2)]})),_:1})],64)):Jo("",!0)])]})),_:1},8,["class"])]})),_:1})]})),_:1})],2)}}},Eh=Sh;function Lh(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M10.343 3.94c.09-.542.56-.94 1.11-.94h1.093c.55 0 1.02.398 1.11.94l.149.894c.07.424.384.764.78.93.398.164.855.142 1.205-.108l.737-.527a1.125 1.125 0 0 1 1.45.12l.773.774c.39.389.44 1.002.12 1.45l-.527.737c-.25.35-.272.806-.107 1.204.165.397.505.71.93.78l.893.15c.543.09.94.559.94 1.109v1.094c0 .55-.397 1.02-.94 1.11l-.894.149c-.424.07-.764.383-.929.78-.165.398-.143.854.107 1.204l.527.738c.32.447.269 1.06-.12 1.45l-.774.773a1.125 1.125 0 0 1-1.449.12l-.738-.527c-.35-.25-.806-.272-1.203-.107-.398.165-.71.505-.781.929l-.149.894c-.09.542-.56.94-1.11.94h-1.094c-.55 0-1.019-.398-1.11-.94l-.148-.894c-.071-.424-.384-.764-.781-.93-.398-.164-.854-.142-1.204.108l-.738.527c-.447.32-1.06.269-1.45-.12l-.773-.774a1.125 1.125 0 0 1-.12-1.45l.527-.737c.25-.35.272-.806.108-1.204-.165-.397-.506-.71-.93-.78l-.894-.15c-.542-.09-.94-.56-.94-1.109v-1.094c0-.55.398-1.02.94-1.11l.894-.149c.424-.07.765-.383.93-.78.165-.398.143-.854-.108-1.204l-.526-.738a1.125 1.125 0 0 1 .12-1.45l.773-.773a1.125 1.125 0 0 1 1.45-.12l.737.527c.35.25.807.272 1.204.107.397-.165.71-.505.78-.929l.15-.894Z"}),zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"})])}function Ph(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M7.217 10.907a2.25 2.25 0 1 0 0 2.186m0-2.186c.18.324.283.696.283 1.093s-.103.77-.283 1.093m0-2.186 9.566-5.314m-9.566 7.5 9.566 5.314m0 0a2.25 2.25 0 1 0 3.935 2.186 2.25 2.25 0 0 0-3.935-2.186Zm0-12.814a2.25 2.25 0 1 0 3.933-2.185 2.25 2.25 0 0 0-3.933 2.185Z"})])}function Ah(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 17.25v1.007a3 3 0 0 1-.879 2.122L7.5 21h9l-.621-.621A3 3 0 0 1 15 18.257V17.25m6-12V15a2.25 2.25 0 0 1-2.25 2.25H5.25A2.25 2.25 0 0 1 3 15V5.25m18 0A2.25 2.25 0 0 0 18.75 3H5.25A2.25 2.25 0 0 0 3 5.25m18 0V12a2.25 2.25 0 0 1-2.25 2.25H5.25A2.25 2.25 0 0 1 3 12V5.25"})])}function jh(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 3v2.25m6.364.386-1.591 1.591M21 12h-2.25m-.386 6.364-1.591-1.591M12 18.75V21m-4.773-4.227-1.591 1.591M5.25 12H3m4.227-4.773L5.636 5.636M15.75 12a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0Z"})])}function Th(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M21.752 15.002A9.72 9.72 0 0 1 18 15.75c-5.385 0-9.75-4.365-9.75-9.75 0-1.33.266-2.597.748-3.752A9.753 9.753 0 0 0 3 11.25C3 16.635 7.365 21 12.75 21a9.753 9.753 0 0 0 9.002-5.998Z"})])}function Rh(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 5.25h.008v.008H12v-.008Z"})])}function Fh(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M13.5 6H5.25A2.25 2.25 0 0 0 3 8.25v10.5A2.25 2.25 0 0 0 5.25 21h10.5A2.25 2.25 0 0 0 18 18.75V10.5m-10.5 6L21 3m0 0h-5.25M21 3v5.25"})])}function Ih(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M16.704 4.153a.75.75 0 0 1 .143 1.052l-8 10.5a.75.75 0 0 1-1.127.075l-4.5-4.5a.75.75 0 0 1 1.06-1.06l3.894 3.893 7.48-9.817a.75.75 0 0 1 1.05-.143Z","clip-rule":"evenodd"})])}var Mh={class:"checkmark w-[18px] h-[18px] bg-gray-50 dark:bg-gray-800 rounded border dark:border-gray-600 inline-flex items-center justify-center"};const Dh={__name:"Checkmark",props:{checked:{type:Boolean,required:!0}},setup:function(e){return function(t,n){return Fo(),No("div",Mh,[e.checked?(Fo(),Uo(Mt(Ih),{key:0,width:"18",height:"18",class:"w-full h-full"})):Jo("",!0)])}}};var Bh={width:"884",height:"1279",viewBox:"0 0 884 1279",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Nh=[Go('',14)];const Uh={},Vh=(0,af.A)(Uh,[["render",function(e,t){return Fo(),No("svg",Bh,Nh)}]]);var Hh=zo("span",{class:"sr-only"},"Settings dropdown",-1),qh={class:"py-2"},$h=zo("div",{class:"label"},"Settings",-1),zh=zo("span",{class:"ml-3"},"Shorter stack traces",-1),Wh=zo("div",{class:"divider"},null,-1),Zh=zo("div",{class:"label"},"Actions",-1),Kh={class:"text-brand-500"},Yh={class:"text-brand-500"},Gh=zo("div",{class:"divider"},null,-1),Jh=["innerHTML"],Qh=zo("div",{class:"divider"},null,-1),Xh={class:"w-4 h-4 mr-3 flex flex-col items-center"};const ev={__name:"SiteSettingsDropdown",setup:function(e){var t=Sp(),n=Rp(),r=Tt(!1),o=function(){Mp(window.location.href),r.value=!0,setTimeout((function(){return r.value=!1}),2e3)};return fo((function(){return t.shorterStackTraces}),(function(){return t.loadLogs()})),function(e,i){return Fo(),Uo(Mt(ad),{as:"div",class:"relative"},{default:dn((function(){return[Wo(Mt(ld),{as:"button",class:"menu-button"},{default:dn((function(){return[Hh,Wo(Mt(Lh),{class:"w-5 h-5"})]})),_:1}),Wo(Ti,{"leave-active-class":"transition ease-in duration-100","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-90","enter-active-class":"transition ease-out duration-100","enter-from-class":"opacity-0 scale-90","enter-to-class":"opacity-100 scale-100"},{default:dn((function(){return[Wo(Mt(sd),{as:"div",style:{"min-width":"250px"},class:"dropdown"},{default:dn((function(){return[zo("div",qh,[$h,Wo(Mt(ud),null,{default:dn((function(e){return[zo("button",{class:Y([e.active?"active":""]),onClick:i[0]||(i[0]=xa((function(e){return Mt(t).shorterStackTraces=!Mt(t).shorterStackTraces}),["stop","prevent"]))},[Wo(Dh,{checked:Mt(t).shorterStackTraces},null,8,["checked"]),zh],2)]})),_:1}),Wh,Zh,Wo(Mt(ud),{onClick:xa(Mt(n).clearCacheForAllFiles,["stop","prevent"])},{default:dn((function(e){return[zo("button",{class:Y([e.active?"active":""])},[pn(Wo(Mt(md),{class:"w-4 h-4 mr-1.5"},null,512),[[Yi,!Mt(n).clearingCache["*"]]]),pn(Wo(Hp,{class:"w-4 h-4 mr-1.5"},null,512),[[Yi,Mt(n).clearingCache["*"]]]),pn(zo("span",null,"Clear indices for all files",512),[[Yi,!Mt(n).cacheRecentlyCleared["*"]&&!Mt(n).clearingCache["*"]]]),pn(zo("span",null,"Please wait...",512),[[Yi,!Mt(n).cacheRecentlyCleared["*"]&&Mt(n).clearingCache["*"]]]),pn(zo("span",Kh,"File indices cleared",512),[[Yi,Mt(n).cacheRecentlyCleared["*"]]])],2)]})),_:1},8,["onClick"]),Wo(Mt(ud),{onClick:xa(o,["stop","prevent"])},{default:dn((function(e){return[zo("button",{class:Y([e.active?"active":""])},[Wo(Mt(Ph),{class:"w-4 h-4"}),pn(zo("span",null,"Share this page",512),[[Yi,!r.value]]),pn(zo("span",Yh,"Link copied!",512),[[Yi,r.value]])],2)]})),_:1}),Gh,Wo(Mt(ud),{onClick:i[1]||(i[1]=xa((function(e){return Mt(t).toggleTheme()}),["stop","prevent"]))},{default:dn((function(e){return[zo("button",{class:Y([e.active?"active":""])},[pn(Wo(Mt(Ah),{class:"w-4 h-4"},null,512),[[Yi,Mt(t).theme===Mt(xp).System]]),pn(Wo(Mt(jh),{class:"w-4 h-4"},null,512),[[Yi,Mt(t).theme===Mt(xp).Light]]),pn(Wo(Mt(Th),{class:"w-4 h-4"},null,512),[[Yi,Mt(t).theme===Mt(xp).Dark]]),zo("span",null,[Yo("Theme: "),zo("span",{innerHTML:Mt(t).theme,class:"font-semibold"},null,8,Jh)])],2)]})),_:1}),Wo(Mt(ud),null,{default:dn((function(e){var n=e.active;return[zo("button",{onClick:i[2]||(i[2]=function(e){return Mt(t).helpSlideOverOpen=!0}),class:Y([n?"active":""])},[Wo(Mt(Rh),{class:"w-4 h-4"}),Yo(" Keyboard Shortcuts ")],2)]})),_:1}),Wo(Mt(ud),null,{default:dn((function(e){return[zo("a",{href:"https://log-viewer.opcodes.io/docs",target:"_blank",class:Y([e.active?"active":""])},[Wo(Mt(Rh),{class:"w-4 h-4"}),Yo(" Documentation ")],2)]})),_:1}),Wo(Mt(ud),null,{default:dn((function(e){return[zo("a",{href:"https://www.github.com/opcodesio/log-viewer",target:"_blank",class:Y([e.active?"active":""])},[Wo(Mt(Rh),{class:"w-4 h-4"}),Yo(" Help ")],2)]})),_:1}),Qh,Wo(Mt(ud),null,{default:dn((function(e){var t=e.active;return[zo("a",{href:"https://www.buymeacoffee.com/arunas",target:"_blank",class:Y([t?"active":""])},[zo("div",Xh,[Wo(Vh,{class:"h-4 w-auto"})]),zo("strong",{class:Y([t?"text-white":"text-brand-500"])},"Show your support",2),Wo(Mt(Fh),{class:"ml-2 w-4 h-4 opacity-75"})],2)]})),_:1})])]})),_:1})]})),_:1})]})),_:1})}}};var tv=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(tv||{});let nv=Ln({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup:(e,{slots:t,attrs:n})=>()=>{var r;let{features:o,...i}=e;return Jf({ourProps:{"aria-hidden":!(2&~o)||(null!=(r=i["aria-hidden"])?r:void 0),hidden:!(4&~o)||void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...!(4&~o)&&!!(2&~o)&&{display:"none"}}},theirProps:i,slot:{},attrs:n,slots:t,name:"Hidden"})}});function rv(e={},t=null,n=[]){for(let[r,o]of Object.entries(e))iv(n,ov(t,r),o);return n}function ov(e,t){return e?e+"["+t+"]":t}function iv(e,t,n){if(Array.isArray(n))for(let[r,o]of n.entries())iv(e,ov(t,r.toString()),o);else n instanceof Date?e.push([t,n.toISOString()]):"boolean"==typeof n?e.push([t,n?"1":"0"]):"string"==typeof n?e.push([t,n]):"number"==typeof n?e.push([t,`${n}`]):null==n?e.push([t,""]):rv(n,t,e)}function av(e,t){return e===t}var lv=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(lv||{}),sv=(e=>(e[e.Single=0]="Single",e[e.Multi=1]="Multi",e))(sv||{}),uv=(e=>(e[e.Pointer=0]="Pointer",e[e.Other=1]="Other",e))(uv||{});let cv=Symbol("ListboxContext");function fv(e){let t=kr(cv,null);if(null===t){let t=new Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,fv),t}return t}let dv=Ln({name:"Listbox",emits:{"update:modelValue":e=>!0},props:{as:{type:[Object,String],default:"template"},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],default:()=>av},horizontal:{type:[Boolean],default:!1},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},multiple:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(e,{slots:t,attrs:n,emit:r}){let o=Tt(1),i=Tt(null),a=Tt(null),l=Tt(null),s=Tt([]),u=Tt(""),c=Tt(null),f=Tt(1);function d(e=e=>e){let t=null!==c.value?s.value[c.value]:null,n=Lf(e(s.value.slice()),(e=>ff(e.dataRef.domRef))),r=t?n.indexOf(t):null;return-1===r&&(r=null),{options:n,activeOptionIndex:r}}let p=xi((()=>e.multiple?1:0)),[h,v]=function(e,t,n){let r=Tt(null==n?void 0:n.value),o=xi((()=>void 0!==e.value));return[xi((()=>o.value?e.value:r.value)),function(e){return o.value||(r.value=e),null==t?void 0:t(e)}]}(xi((()=>e.modelValue)),(e=>r("update:modelValue",e)),xi((()=>e.defaultValue))),g=xi((()=>void 0===h.value?df(p.value,{1:[],0:void 0}):h.value)),y={listboxState:o,value:g,mode:p,compare(t,n){if("string"==typeof e.by){let r=e.by;return(null==t?void 0:t[r])===(null==n?void 0:n[r])}return e.by(t,n)},orientation:xi((()=>e.horizontal?"horizontal":"vertical")),labelRef:i,buttonRef:a,optionsRef:l,disabled:xi((()=>e.disabled)),options:s,searchQuery:u,activeOptionIndex:c,activationTrigger:f,closeListbox(){e.disabled||1!==o.value&&(o.value=1,c.value=null)},openListbox(){e.disabled||0!==o.value&&(o.value=0)},goToOption(t,n,r){if(e.disabled||1===o.value)return;let i=d(),a=Kf(t===Zf.Specific?{focus:Zf.Specific,id:n}:{focus:t},{resolveItems:()=>i.options,resolveActiveIndex:()=>i.activeOptionIndex,resolveId:e=>e.id,resolveDisabled:e=>e.dataRef.disabled});u.value="",c.value=a,f.value=null!=r?r:1,s.value=i.options},search(t){if(e.disabled||1===o.value)return;let n=""!==u.value?0:1;u.value+=t.toLowerCase();let r=(null!==c.value?s.value.slice(c.value+n).concat(s.value.slice(0,c.value+n)):s.value).find((e=>e.dataRef.textValue.startsWith(u.value)&&!e.dataRef.disabled)),i=r?s.value.indexOf(r):-1;-1===i||i===c.value||(c.value=i,f.value=1)},clearSearch(){e.disabled||1!==o.value&&""!==u.value&&(u.value="")},registerOption(e,t){let n=d((n=>[...n,{id:e,dataRef:t}]));s.value=n.options,c.value=n.activeOptionIndex},unregisterOption(e){let t=d((t=>{let n=t.findIndex((t=>t.id===e));return-1!==n&&t.splice(n,1),t}));s.value=t.options,c.value=t.activeOptionIndex,f.value=1},theirOnChange(t){e.disabled||v(t)},select(t){e.disabled||v(df(p.value,{0:()=>t,1:()=>{let e=xt(y.value.value).slice(),n=xt(t),r=e.findIndex((e=>y.compare(n,xt(e))));return-1===r?e.push(n):e.splice(r,1),e}}))}};Ff([a,l],((e,t)=>{var n;y.closeListbox(),xf(t,_f.Loose)||(e.preventDefault(),null==(n=ff(a))||n.focus())}),xi((()=>0===o.value))),Or(cv,y),zf(xi((()=>df(o.value,{0:qf.Open,1:qf.Closed}))));let m=xi((()=>{var e;return null==(e=ff(a))?void 0:e.closest("form")}));return Vn((()=>{fo([m],(()=>{if(m.value&&void 0!==e.defaultValue)return m.value.addEventListener("reset",t),()=>{var e;null==(e=m.value)||e.removeEventListener("reset",t)};function t(){y.theirOnChange(e.defaultValue)}}),{immediate:!0})})),()=>{let{name:r,modelValue:i,disabled:a,form:l,...s}=e,u={open:0===o.value,disabled:a,value:g.value};return Oi(Lo,[...null!=r&&null!=g.value?rv({[r]:g.value}).map((([e,t])=>Oi(nv,function(e){let t=Object.assign({},e);for(let e in t)void 0===t[e]&&delete t[e];return t}({features:tv.Hidden,key:e,as:"input",type:"hidden",hidden:!0,readOnly:!0,form:l,disabled:a,name:e,value:t})))):[],Jf({ourProps:{},theirProps:{...n,...td(s,["defaultValue","onUpdate:modelValue","horizontal","multiple","by"])},slot:u,slots:t,attrs:n,name:"Listbox"})])}}}),pv=Ln({name:"ListboxLabel",props:{as:{type:[Object,String],default:"label"},id:{type:String,default:null}},setup(e,{attrs:t,slots:n}){var r;let o=null!=(r=e.id)?r:`headlessui-listbox-label-${cf()}`,i=fv("ListboxLabel");function a(){var e;null==(e=ff(i.buttonRef))||e.focus({preventScroll:!0})}return()=>{let r={open:0===i.listboxState.value,disabled:i.disabled.value},{...l}=e;return Jf({ourProps:{id:o,ref:i.labelRef,onClick:a},theirProps:l,slot:r,attrs:t,slots:n,name:"ListboxLabel"})}}}),hv=Ln({name:"ListboxButton",props:{as:{type:[Object,String],default:"button"},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){var o;let i=null!=(o=e.id)?o:`headlessui-listbox-button-${cf()}`,a=fv("ListboxButton");function l(e){switch(e.key){case Wf.Space:case Wf.Enter:case Wf.ArrowDown:e.preventDefault(),a.openListbox(),Xt((()=>{var e;null==(e=ff(a.optionsRef))||e.focus({preventScroll:!0}),a.value.value||a.goToOption(Zf.First)}));break;case Wf.ArrowUp:e.preventDefault(),a.openListbox(),Xt((()=>{var e;null==(e=ff(a.optionsRef))||e.focus({preventScroll:!0}),a.value.value||a.goToOption(Zf.Last)}))}}function s(e){if(e.key===Wf.Space)e.preventDefault()}function u(e){a.disabled.value||(0===a.listboxState.value?(a.closeListbox(),Xt((()=>{var e;return null==(e=ff(a.buttonRef))?void 0:e.focus({preventScroll:!0})}))):(e.preventDefault(),a.openListbox(),function(e){requestAnimationFrame((()=>requestAnimationFrame(e)))}((()=>{var e;return null==(e=ff(a.optionsRef))?void 0:e.focus({preventScroll:!0})}))))}r({el:a.buttonRef,$el:a.buttonRef});let c=Mf(xi((()=>({as:e.as,type:t.type}))),a.buttonRef);return()=>{var r,o;let f={open:0===a.listboxState.value,disabled:a.disabled.value,value:a.value.value},{...d}=e;return Jf({ourProps:{ref:a.buttonRef,id:i,type:c.value,"aria-haspopup":"listbox","aria-controls":null==(r=ff(a.optionsRef))?void 0:r.id,"aria-expanded":0===a.listboxState.value,"aria-labelledby":a.labelRef.value?[null==(o=ff(a.labelRef))?void 0:o.id,i].join(" "):void 0,disabled:!0===a.disabled.value||void 0,onKeydown:l,onKeyup:s,onClick:u},theirProps:d,slot:f,attrs:t,slots:n,name:"ListboxButton"})}}}),vv=Ln({name:"ListboxOptions",props:{as:{type:[Object,String],default:"ul"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){var o;let i=null!=(o=e.id)?o:`headlessui-listbox-options-${cf()}`,a=fv("ListboxOptions"),l=Tt(null);function s(e){switch(l.value&&clearTimeout(l.value),e.key){case Wf.Space:if(""!==a.searchQuery.value)return e.preventDefault(),e.stopPropagation(),a.search(e.key);case Wf.Enter:if(e.preventDefault(),e.stopPropagation(),null!==a.activeOptionIndex.value){let e=a.options.value[a.activeOptionIndex.value];a.select(e.dataRef.value)}0===a.mode.value&&(a.closeListbox(),Xt((()=>{var e;return null==(e=ff(a.buttonRef))?void 0:e.focus({preventScroll:!0})})));break;case df(a.orientation.value,{vertical:Wf.ArrowDown,horizontal:Wf.ArrowRight}):return e.preventDefault(),e.stopPropagation(),a.goToOption(Zf.Next);case df(a.orientation.value,{vertical:Wf.ArrowUp,horizontal:Wf.ArrowLeft}):return e.preventDefault(),e.stopPropagation(),a.goToOption(Zf.Previous);case Wf.Home:case Wf.PageUp:return e.preventDefault(),e.stopPropagation(),a.goToOption(Zf.First);case Wf.End:case Wf.PageDown:return e.preventDefault(),e.stopPropagation(),a.goToOption(Zf.Last);case Wf.Escape:e.preventDefault(),e.stopPropagation(),a.closeListbox(),Xt((()=>{var e;return null==(e=ff(a.buttonRef))?void 0:e.focus({preventScroll:!0})}));break;case Wf.Tab:e.preventDefault(),e.stopPropagation();break;default:1===e.key.length&&(a.search(e.key),l.value=setTimeout((()=>a.clearSearch()),350))}}r({el:a.optionsRef,$el:a.optionsRef});let u=$f(),c=xi((()=>null!==u?(u.value&qf.Open)===qf.Open:0===a.listboxState.value));return()=>{var r,o;let l={open:0===a.listboxState.value},{...u}=e;return Jf({ourProps:{"aria-activedescendant":null===a.activeOptionIndex.value||null==(r=a.options.value[a.activeOptionIndex.value])?void 0:r.id,"aria-multiselectable":1===a.mode.value||void 0,"aria-labelledby":null==(o=ff(a.buttonRef))?void 0:o.id,"aria-orientation":a.orientation.value,id:i,onKeydown:s,role:"listbox",tabIndex:0,ref:a.optionsRef},theirProps:u,slot:l,attrs:t,slots:n,features:Yf.RenderStrategy|Yf.Static,visible:c.value,name:"ListboxOptions"})}}}),gv=Ln({name:"ListboxOption",props:{as:{type:[Object,String],default:"li"},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1},id:{type:String,default:null}},setup(e,{slots:t,attrs:n,expose:r}){var o;let i=null!=(o=e.id)?o:`headlessui-listbox-option-${cf()}`,a=fv("ListboxOption"),l=Tt(null);r({el:l,$el:l});let s=xi((()=>null!==a.activeOptionIndex.value&&a.options.value[a.activeOptionIndex.value].id===i)),u=xi((()=>df(a.mode.value,{0:()=>a.compare(xt(a.value.value),xt(e.value)),1:()=>xt(a.value.value).some((t=>a.compare(xt(t),xt(e.value))))}))),c=xi((()=>df(a.mode.value,{1:()=>{var e;let t=xt(a.value.value);return(null==(e=a.options.value.find((e=>t.some((t=>a.compare(xt(t),xt(e.dataRef.value)))))))?void 0:e.id)===i},0:()=>u.value}))),f=Nf(l),d=xi((()=>({disabled:e.disabled,value:e.value,get textValue(){return f()},domRef:l})));function p(t){if(e.disabled)return t.preventDefault();a.select(e.value),0===a.mode.value&&(a.closeListbox(),Xt((()=>{var e;return null==(e=ff(a.buttonRef))?void 0:e.focus({preventScroll:!0})})))}function h(){if(e.disabled)return a.goToOption(Zf.Nothing);a.goToOption(Zf.Specific,i)}Vn((()=>a.registerOption(i,d))),zn((()=>a.unregisterOption(i))),Vn((()=>{fo([a.listboxState,u],(()=>{0===a.listboxState.value&&u.value&&df(a.mode.value,{1:()=>{c.value&&a.goToOption(Zf.Specific,i)},0:()=>{a.goToOption(Zf.Specific,i)}})}),{immediate:!0})})),uo((()=>{0===a.listboxState.value&&s.value&&0!==a.activationTrigger.value&&Xt((()=>{var e,t;return null==(t=null==(e=ff(l))?void 0:e.scrollIntoView)?void 0:t.call(e,{block:"nearest"})}))}));let v=Vf();function g(e){v.update(e)}function y(t){v.wasMoved(t)&&(e.disabled||s.value||a.goToOption(Zf.Specific,i,0))}function m(t){v.wasMoved(t)&&(e.disabled||s.value&&a.goToOption(Zf.Nothing))}return()=>{let{disabled:r}=e,o={active:s.value,selected:u.value,disabled:r},{value:a,disabled:c,...f}=e;return Jf({ourProps:{id:i,ref:l,role:"option",tabIndex:!0===r?void 0:-1,"aria-disabled":!0===r||void 0,"aria-selected":u.value,disabled:void 0,onClick:p,onFocus:h,onPointerenter:g,onMouseenter:g,onPointermove:y,onMousemove:y,onPointerleave:m,onMouseleave:m},theirProps:f,slot:o,attrs:n,slots:t,name:"ListboxOption"})}}});function yv(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M5.22 8.22a.75.75 0 0 1 1.06 0L10 11.94l3.72-3.72a.75.75 0 1 1 1.06 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L5.22 9.28a.75.75 0 0 1 0-1.06Z","clip-rule":"evenodd"})])}var mv={class:"relative mt-1"},bv={class:"block truncate"},wv={class:"pointer-events-none absolute inset-y-0 right-0 flex items-center pr-2"};const Cv={__name:"HostSelector",setup:function(e){var t=nf(),n=wd();return fo((function(){return n.selectedHost}),(function(e){Dp(t,"host",null!=e&&e.is_remote?e.identifier:null)})),function(e,t){return Fo(),Uo(Mt(dv),{as:"div",modelValue:Mt(n).selectedHostIdentifier,"onUpdate:modelValue":t[0]||(t[0]=function(e){return Mt(n).selectedHostIdentifier=e})},{default:dn((function(){return[Wo(Mt(pv),{class:"ml-1 block text-sm text-gray-500 dark:text-gray-400"},{default:dn((function(){return[Yo("Select host")]})),_:1}),zo("div",mv,[Wo(Mt(hv),{id:"hosts-toggle-button",class:"cursor-pointer relative text-gray-800 dark:text-gray-200 w-full cursor-default rounded-md border border-gray-300 dark:border-gray-700 bg-white dark:bg-gray-800 py-2 pl-4 pr-10 text-left hover:border-brand-600 hover:dark:border-brand-800 focus:border-brand-500 focus:outline-none focus:ring-1 focus:ring-brand-500 text-sm"},{default:dn((function(){var e;return[zo("span",bv,ne((null===(e=Mt(n).selectedHost)||void 0===e?void 0:e.name)||"Please select a server"),1),zo("span",wv,[Wo(Mt(yv),{class:"h-5 w-5 text-gray-400","aria-hidden":"true"})])]})),_:1}),Wo(Ti,{"leave-active-class":"transition ease-in duration-100","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:dn((function(){return[Wo(Mt(vv),{class:"absolute z-20 mt-1 max-h-60 w-full overflow-auto rounded-md shadow-md bg-white dark:bg-gray-800 py-1 border border-gray-200 dark:border-gray-700 ring-1 ring-brand ring-opacity-5 focus:outline-none text-sm"},{default:dn((function(){return[(Fo(!0),No(Lo,null,er(Mt(n).hosts,(function(e){return Fo(),Uo(Mt(gv),{as:"template",key:e.identifier,value:e.identifier},{default:dn((function(t){var n=t.active,r=t.selected;return[zo("li",{class:Y([n?"text-white bg-brand-600":"text-gray-900 dark:text-gray-300","relative cursor-default select-none py-2 pl-3 pr-9"])},[zo("span",{class:Y([r?"font-semibold":"font-normal","block truncate"])},ne(e.name),3),r?(Fo(),No("span",{key:0,class:Y([n?"text-white":"text-brand-600","absolute inset-y-0 right-0 flex items-center pr-4"])},[Wo(Mt(Ih),{class:"h-5 w-5","aria-hidden":"true"})],2)):Jo("",!0)],2)]})),_:2},1032,["value"])})),128))]})),_:1})]})),_:1})])]})),_:1},8,["modelValue"])}}},_v=Cv;var xv={class:"relative mt-1"},Ov={class:"block truncate"},kv={class:"pointer-events-none absolute inset-y-0 right-0 flex items-center pr-2"};const Sv={__name:"FileTypeSelector",setup:function(e){nf();var t=Rp();return function(e,n){return Fo(),Uo(Mt(dv),{as:"div",modelValue:Mt(t).selectedFileTypes,"onUpdate:modelValue":n[0]||(n[0]=function(e){return Mt(t).selectedFileTypes=e}),multiple:""},{default:dn((function(){return[Wo(Mt(pv),{class:"ml-1 block text-sm text-gray-500 dark:text-gray-400"},{default:dn((function(){return[Yo("Selected file types")]})),_:1}),zo("div",xv,[Wo(Mt(hv),{id:"hosts-toggle-button",class:"cursor-pointer relative text-gray-800 dark:text-gray-200 w-full cursor-default rounded-md border border-gray-300 dark:border-gray-700 bg-white dark:bg-gray-800 py-2 pl-4 pr-10 text-left hover:border-brand-600 hover:dark:border-brand-800 focus:border-brand-500 focus:outline-none focus:ring-1 focus:ring-brand-500 text-sm"},{default:dn((function(){return[zo("span",Ov,ne(Mt(t).selectedFileTypesString),1),zo("span",kv,[Wo(Mt(yv),{class:"h-5 w-5 text-gray-400","aria-hidden":"true"})])]})),_:1}),Wo(Ti,{"leave-active-class":"transition ease-in duration-100","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:dn((function(){return[Wo(Mt(vv),{class:"absolute z-20 mt-1 max-h-60 w-full overflow-auto rounded-md shadow-md bg-white dark:bg-gray-800 py-1 border border-gray-200 dark:border-gray-700 ring-1 ring-brand ring-opacity-5 focus:outline-none text-sm"},{default:dn((function(){return[(Fo(!0),No(Lo,null,er(Mt(t).fileTypesAvailable,(function(e){return Fo(),Uo(Mt(gv),{as:"template",key:e.identifier,value:e.identifier},{default:dn((function(t){var n=t.active,r=t.selected;return[zo("li",{class:Y([n?"text-white bg-brand-600":"text-gray-900 dark:text-gray-300","relative cursor-default select-none py-2 pl-3 pr-9"])},[zo("span",{class:Y([r?"font-semibold":"font-normal","block truncate"])},ne(e.name),3),r?(Fo(),No("span",{key:0,class:Y([n?"text-white":"text-brand-600","absolute inset-y-0 right-0 flex items-center pr-4"])},[Wo(Mt(Ih),{class:"h-5 w-5","aria-hidden":"true"})],2)):Jo("",!0)],2)]})),_:2},1032,["value"])})),128))]})),_:1})]})),_:1})])]})),_:1},8,["modelValue"])}}};function Ev(e){return Ev="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ev(e)}function Lv(){Lv=function(){return t};var e,t={},n=Object.prototype,r=n.hasOwnProperty,o=Object.defineProperty||function(e,t,n){e[t]=n.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",l=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function c(e,t,n,r){var i=t&&t.prototype instanceof y?t:y,a=Object.create(i.prototype),l=new A(r||[]);return o(a,"_invoke",{value:S(e,n,l)}),a}function f(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=c;var d="suspendedStart",p="suspendedYield",h="executing",v="completed",g={};function y(){}function m(){}function b(){}var w={};u(w,a,(function(){return this}));var C=Object.getPrototypeOf,_=C&&C(C(j([])));_&&_!==n&&r.call(_,a)&&(w=_);var x=b.prototype=y.prototype=Object.create(w);function O(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function n(o,i,a,l){var s=f(e[o],e,i);if("throw"!==s.type){var u=s.arg,c=u.value;return c&&"object"==Ev(c)&&r.call(c,"__await")?t.resolve(c.__await).then((function(e){n("next",e,a,l)}),(function(e){n("throw",e,a,l)})):t.resolve(c).then((function(e){u.value=e,a(u)}),(function(e){return n("throw",e,a,l)}))}l(s.arg)}var i;o(this,"_invoke",{value:function(e,r){function o(){return new t((function(t,o){n(e,r,t,o)}))}return i=i?i.then(o,o):o()}})}function S(t,n,r){var o=d;return function(i,a){if(o===h)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:e,done:!0}}for(r.method=i,r.arg=a;;){var l=r.delegate;if(l){var s=E(l,r);if(s){if(s===g)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(o===d)throw o=v,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);o=h;var u=f(t,n,r);if("normal"===u.type){if(o=r.done?v:p,u.arg===g)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(o=v,r.method="throw",r.arg=u.arg)}}}function E(t,n){var r=n.method,o=t.iterator[r];if(o===e)return n.delegate=null,"throw"===r&&t.iterator.return&&(n.method="return",n.arg=e,E(t,n),"throw"===n.method)||"return"!==r&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+r+"' method")),g;var i=f(o,t.iterator,n.arg);if("throw"===i.type)return n.method="throw",n.arg=i.arg,n.delegate=null,g;var a=i.arg;return a?a.done?(n[t.resultName]=a.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,g):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,g)}function L(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(L,this),this.reset(!0)}function j(t){if(t||""===t){var n=t[a];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function n(){for(;++o=0;--i){var a=this.tryEntries[i],l=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(s&&u){if(this.prev=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),P(n),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;P(n)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,n,r){return this.delegate={iterator:j(t),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=e),g}},t}function Pv(e,t,n,r,o,i,a){try{var l=e[i](a),s=l.value}catch(e){return void n(e)}l.done?t(s):Promise.resolve(s).then(r,o)}function Av(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Pv(i,r,o,a,l,"next",e)}function l(e){Pv(i,r,o,a,l,"throw",e)}a(void 0)}))}}var jv={class:"flex flex-col h-full py-5"},Tv={class:"mx-3 md:mx-0 mb-1"},Rv={class:"sm:flex sm:flex-col-reverse"},Fv={class:"font-semibold text-brand-700 dark:text-brand-600 text-2xl flex items-center"},Iv=zo("a",{href:"https://www.github.com/opcodesio/log-viewer",target:"_blank",class:"rounded ml-3 text-gray-400 hover:text-brand-800 dark:hover:text-brand-600 focus:outline-none focus:ring-2 focus:ring-brand-500 dark:focus:ring-brand-700 p-1"},[zo("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-5 w-5",viewBox:"0 0 24 24",fill:"currentColor",title:""},[zo("path",{d:"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"})])],-1),Mv={class:"md:hidden flex-1 flex justify-end"},Dv={type:"button",class:"menu-button"},Bv={key:0},Nv=["href"],Uv={key:0,class:"bg-yellow-100 dark:bg-yellow-900 bg-opacity-75 dark:bg-opacity-40 border border-yellow-300 dark:border-yellow-800 rounded-md px-2 py-1 mt-2 text-xs leading-5 text-yellow-700 dark:text-yellow-400"},Vv=zo("code",{class:"font-mono px-2 py-1 bg-gray-100 dark:bg-gray-900 rounded"},"php artisan log-viewer:publish",-1),Hv={key:3,class:"flex justify-between items-baseline mt-6"},qv={class:"ml-1 block text-sm text-gray-500 dark:text-gray-400 truncate"},$v={class:"text-sm text-gray-500 dark:text-gray-400"},zv=zo("label",{for:"file-sort-direction",class:"sr-only"},"Sort direction",-1),Wv={key:0,value:"asc"},Zv={key:1,value:"desc"},Kv={key:2,value:"desc"},Yv={key:3,value:"asc"},Gv={key:4,class:"mx-1 mt-1 text-red-600 text-xs"},Jv=zo("p",{class:"text-sm text-gray-600 dark:text-gray-400"},"Please select files to delete and confirm or cancel deletion.",-1),Qv={id:"file-list-container",class:"relative h-full overflow-hidden"},Xv=["id"],eg=["onClick"],tg={class:"file-item group"},ng={key:0,class:"sr-only"},rg={key:1,class:"sr-only"},og={class:"file-icon group-hover:hidden group-focus:hidden"},ig={class:"file-icon hidden group-hover:inline-block group-focus:inline-block"},ag={class:"file-name"},lg={key:0},sg={class:"text-gray-500 dark:text-gray-400"},ug={key:1},cg=zo("span",{class:"sr-only"},"Open folder options",-1),fg={class:"py-2"},dg={class:"text-brand-500"},pg=zo("div",{class:"divider"},null,-1),hg=["onClick","disabled"],vg={class:"folder-files pl-3 ml-1 border-l border-gray-200 dark:border-gray-800"},gg={key:0,class:"text-center text-sm text-gray-600 dark:text-gray-400"},yg=zo("p",{class:"mb-5"},"No log files were found.",-1),mg={class:"flex items-center justify-center px-1"},bg=zo("div",{class:"pointer-events-none absolute z-10 bottom-0 h-4 w-full bg-gradient-to-t from-gray-100 dark:from-gray-900 to-transparent"},null,-1),wg={class:"absolute inset-y-0 left-3 right-7 lg:left-0 lg:right-0 z-10"},Cg={class:"rounded-md bg-white text-gray-800 dark:bg-gray-700 dark:text-gray-200 opacity-90 w-full h-full flex items-center justify-center"};const _g={__name:"FileList",setup:function(e){var t,n=nf(),r=rf(),o=wd(),i=Rp(),a=Bp(),l=a.dropdownDirections,s=a.calculateDropdownDirection,u=function(){var e=Av(Lv().mark((function e(t){return Lv().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!confirm("Are you sure you want to delete the log folder '".concat(t.path,"'? THIS ACTION CANNOT BE UNDONE."))){e.next=4;break}return e.next=3,i.deleteFolder(t);case 3:t.files.some((function(e){return e.identifier===i.selectedFileIdentifier}))&&Dp(n,"file",null);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),c=function(){var e=Av(Lv().mark((function e(){return Lv().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!confirm("Are you sure you want to delete selected log files? THIS ACTION CANNOT BE UNDONE.")){e.next=7;break}return e.next=3,i.deleteSelectedFiles();case 3:return i.filesChecked.includes(i.selectedFileIdentifier)&&Dp(n,"file",null),i.resetChecks(),e.next=7,i.loadFolders();case 7:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),f=(null===(t=window.LogViewer)||void 0===t?void 0:t.root_folder_prefix)||"root";return Vn(Av(Lv().mark((function e(){return Lv().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:o.selectHost(r.query.host||null);case 1:case"end":return e.stop()}}),e)})))),fo((function(){return i.direction}),(function(){return i.loadFolders()})),function(e,t){var a,d;return Fo(),No("nav",jv,[zo("div",Tv,[zo("div",Rv,[zo("h1",Fv,[Yo(" Log Viewer "),Iv,zo("span",Mv,[Wo(ev,{class:"ml-2"}),zo("button",Dv,[Wo(Mt(cd),{class:"w-5 h-5 ml-2",onClick:Mt(i).toggleSidebar},null,8,["onClick"])])])]),e.LogViewer.back_to_system_url?(Fo(),No("div",Bv,[zo("a",{href:e.LogViewer.back_to_system_url,class:"rounded shrink inline-flex items-center text-sm text-gray-500 dark:text-gray-400 hover:text-brand-800 dark:hover:text-brand-600 focus:outline-none focus:ring-2 focus:ring-brand-500 dark:focus:ring-brand-700 mt-0"},[Wo(Mt(fd),{class:"h-3 w-3 mr-1.5"}),Yo(" "+ne(e.LogViewer.back_to_system_label||"Back to ".concat(e.LogViewer.app_name)),1)],8,Nv)])):Jo("",!0)]),e.LogViewer.assets_outdated?(Fo(),No("div",Uv,[Wo(Mt(dd),{class:"h-4 w-4 mr-1 inline"}),Yo(" Front-end assets are outdated. To update, please run "),Vv])):Jo("",!0),Mt(o).supportsHosts&&Mt(o).hasRemoteHosts?(Fo(),Uo(_v,{key:1,class:"mb-8 mt-6"})):Jo("",!0),Mt(i).fileTypesAvailable&&Mt(i).fileTypesAvailable.length>1?(Fo(),Uo(Sv,{key:2,class:"mb-8 mt-6"})):Jo("",!0),(null===(a=Mt(i).filteredFolders)||void 0===a?void 0:a.length)>0?(Fo(),No("div",Hv,[zo("div",qv,"Log files on "+ne(null===(d=Mt(i).selectedHost)||void 0===d?void 0:d.name),1),zo("div",$v,[zv,pn(zo("select",{id:"file-sort-direction",class:"select","onUpdate:modelValue":t[0]||(t[0]=function(e){return Mt(i).direction=e})},[e.LogViewer.files_sort_by_time?Jo("",!0):(Fo(),No("option",Wv,"From A to Z")),e.LogViewer.files_sort_by_time?Jo("",!0):(Fo(),No("option",Zv,"From Z to A")),e.LogViewer.files_sort_by_time?(Fo(),No("option",Kv,"Newest first")):Jo("",!0),e.LogViewer.files_sort_by_time?(Fo(),No("option",Yv,"Oldest first")):Jo("",!0)],512),[[ma,Mt(i).direction]])])])):Jo("",!0),Mt(i).error?(Fo(),No("p",Gv,ne(Mt(i).error),1)):Jo("",!0)]),pn(zo("div",null,[Jv,zo("div",{class:Y(["grid grid-flow-col pr-4 mt-2",[Mt(i).hasFilesChecked?"justify-between":"justify-end"]])},[pn(zo("button",{onClick:xa(c,["stop"]),class:"button inline-flex"},[Wo(Mt(pd),{class:"w-5 mr-1"}),Yo(" Delete selected files ")],512),[[Yi,Mt(i).hasFilesChecked]]),zo("button",{class:"button inline-flex",onClick:t[1]||(t[1]=xa((function(e){return Mt(i).resetChecks()}),["stop"]))},[Yo(" Cancel "),Wo(Mt(cd),{class:"w-5 ml-1"})])],2)],512),[[Yi,Mt(i).checkBoxesVisibility]]),zo("div",Qv,[zo("div",{class:"file-list",onScroll:t[6]||(t[6]=function(e){return Mt(i).onScroll(e)})},[(Fo(!0),No(Lo,null,er(Mt(i).filteredFolders,(function(e){return Fo(),No("div",{key:e.identifier,id:"folder-".concat(e.identifier),class:"relative folder-container"},[Wo(Mt(ad),null,{default:dn((function(n){var r=n.open;return[zo("div",{class:Y(["folder-item-container",[Mt(i).isOpen(e)?"active-folder":"",Mt(i).shouldBeSticky(e)?"sticky "+(r?"z-20":"z-10"):""]]),onClick:function(t){return Mt(i).toggle(e)}},[zo("div",tg,[zo("button",{class:"file-item-info group",onKeydown:t[2]||(t[2]=function(){return Mt(lh)&&Mt(lh).apply(void 0,arguments)})},[Mt(i).isOpen(e)?Jo("",!0):(Fo(),No("span",ng,"Open folder")),Mt(i).isOpen(e)?(Fo(),No("span",rg,"Close folder")):Jo("",!0),zo("span",og,[pn(Wo(Mt(hd),{class:"w-5 h-5"},null,512),[[Yi,!Mt(i).isOpen(e)]]),pn(Wo(Mt(vd),{class:"w-5 h-5"},null,512),[[Yi,Mt(i).isOpen(e)]])]),zo("span",ig,[Wo(Mt(gd),{class:Y([Mt(i).isOpen(e)?"rotate-90":"","transition duration-100"])},null,8,["class"])]),zo("span",ag,[String(e.clean_path||"").startsWith(Mt(f))?(Fo(),No("span",lg,[zo("span",sg,ne(Mt(f)),1),Yo(ne(String(e.clean_path).substring(Mt(f).length)),1)])):(Fo(),No("span",ug,ne(e.clean_path),1))])],32),Wo(Mt(ld),{as:"button",class:"file-dropdown-toggle group-hover:border-brand-600 group-hover:dark:border-brand-800","data-toggle-id":e.identifier,onKeydown:Mt(sh),onClick:t[3]||(t[3]=xa((function(e){return Mt(s)(e.target)}),["stop"]))},{default:dn((function(){return[cg,Wo(Mt(yd),{class:"w-4 h-4 pointer-events-none"})]})),_:2},1032,["data-toggle-id","onKeydown"])]),Wo(Ti,{"leave-active-class":"transition ease-in duration-100","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-90","enter-active-class":"transition ease-out duration-100","enter-from-class":"opacity-0 scale-90","enter-to-class":"opacity-100 scale-100"},{default:dn((function(){return[pn(Wo(Mt(sd),{static:"",as:"div",class:Y(["dropdown w-48",[Mt(l)[e.identifier]]])},{default:dn((function(){return[zo("div",fg,[Wo(Mt(ud),{onClick:xa((function(t){return Mt(i).clearCacheForFolder(e)}),["stop","prevent"])},{default:dn((function(t){return[zo("button",{class:Y([t.active?"active":""])},[pn(Wo(Mt(md),{class:"w-4 h-4 mr-2"},null,512),[[Yi,!Mt(i).clearingCache[e.identifier]]]),pn(Wo(Hp,{class:"w-4 h-4 mr-2"},null,512),[[Yi,Mt(i).clearingCache[e.identifier]]]),pn(zo("span",null,"Clear indices",512),[[Yi,!Mt(i).cacheRecentlyCleared[e.identifier]&&!Mt(i).clearingCache[e.identifier]]]),pn(zo("span",null,"Clearing...",512),[[Yi,!Mt(i).cacheRecentlyCleared[e.identifier]&&Mt(i).clearingCache[e.identifier]]]),pn(zo("span",dg,"Indices cleared",512),[[Yi,Mt(i).cacheRecentlyCleared[e.identifier]]])],2)]})),_:2},1032,["onClick"]),e.can_download?(Fo(),Uo(Mt(ud),{key:0},{default:dn((function(n){var r=n.active;return[Wo(ch,{url:e.download_url,onClick:t[4]||(t[4]=xa((function(){}),["stop"])),class:Y([r?"active":""])},null,8,["url","class"])]})),_:2},1024)):Jo("",!0),e.can_delete?(Fo(),No(Lo,{key:1},[pg,Wo(Mt(ud),null,{default:dn((function(t){var n=t.active;return[zo("button",{onClick:xa((function(t){return u(e)}),["stop"]),disabled:Mt(i).deleting[e.identifier],class:Y([n?"active":""])},[pn(Wo(Mt(pd),{class:"w-4 h-4 mr-2"},null,512),[[Yi,!Mt(i).deleting[e.identifier]]]),pn(Wo(Hp,null,null,512),[[Yi,Mt(i).deleting[e.identifier]]]),Yo(" Delete ")],10,hg)]})),_:2},1024)],64)):Jo("",!0)])]})),_:2},1032,["class"]),[[Yi,r]])]})),_:2},1024)],10,eg)]})),_:2},1024),pn(zo("div",vg,[(Fo(!0),No(Lo,null,er(e.files||[],(function(e){return Fo(),Uo(Eh,{key:e.identifier,"log-file":e,onClick:function(t){return o=e.identifier,void(r.query.file&&r.query.file===o?Dp(n,"file",null):Dp(n,"file",o));var o}},null,8,["log-file","onClick"])})),128))],512),[[Yi,Mt(i).isOpen(e)]])],8,Xv)})),128)),0===Mt(i).folders.length?(Fo(),No("div",gg,[yg,zo("div",mg,[zo("button",{onClick:t[5]||(t[5]=xa((function(e){return Mt(i).loadFolders()}),["prevent"])),class:"inline-flex items-center px-4 py-2 text-left text-sm bg-white hover:bg-gray-50 outline-brand-500 dark:outline-brand-800 text-gray-900 dark:text-gray-200 rounded-md dark:bg-gray-700 dark:hover:bg-gray-600"},[Wo(Mt(bd),{class:"w-4 h-4 mr-1.5"}),Yo(" Refresh file list ")])])])):Jo("",!0)],32),bg,pn(zo("div",wg,[zo("div",Cg,[Wo(Hp,{class:"w-14 h-14"})])],512),[[Yi,Mt(i).loading]])])])}}},xg=_g;function Og(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388Zm15.408 3.352a.75.75 0 0 0-.919.53 7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035.75.75 0 0 0-.53-.918Z","clip-rule":"evenodd"})])}function kg(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M3 6.75A.75.75 0 0 1 3.75 6h16.5a.75.75 0 0 1 0 1.5H3.75A.75.75 0 0 1 3 6.75ZM3 12a.75.75 0 0 1 .75-.75h16.5a.75.75 0 0 1 0 1.5H3.75A.75.75 0 0 1 3 12Zm0 5.25a.75.75 0 0 1 .75-.75h16.5a.75.75 0 0 1 0 1.5H3.75a.75.75 0 0 1-.75-.75Z","clip-rule":"evenodd"})])}function Sg(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3"})])}var Eg={class:"pagination"},Lg={class:"previous"},Pg=["disabled"],Ag=zo("span",{class:"sm:hidden"},"Previous page",-1),jg={class:"sm:hidden border-transparent text-gray-500 dark:text-gray-400 border-t-2 pt-3 px-4 inline-flex items-center text-sm font-medium"},Tg={class:"pages"},Rg={key:0,class:"border-brand-500 text-brand-600 dark:border-brand-600 dark:text-brand-500","aria-current":"page"},Fg={key:1},Ig=["onClick"],Mg={class:"next"},Dg=["disabled"],Bg=zo("span",{class:"sm:hidden"},"Next page",-1);const Ng={__name:"Pagination",props:{loading:{type:Boolean,required:!0},short:{type:Boolean,default:!1}},setup:function(e){var t=wp(),n=nf(),r=rf(),o=(xi((function(){return Number(r.query.page)||1})),function(e){e<1&&(e=1),t.pagination&&e>t.pagination.last_page&&(e=t.pagination.last_page),Dp(n,"page",e>1?Number(e):null)}),i=function(){return o(t.page+1)},a=function(){return o(t.page-1)};return Vn((function(){document.addEventListener("goToNextPage",i),document.addEventListener("goToPreviousPage",a)})),$n((function(){document.removeEventListener("goToNextPage",i),document.removeEventListener("goToPreviousPage",a)})),function(n,r){return Fo(),No("nav",Eg,[zo("div",Lg,[1!==Mt(t).page?(Fo(),No("button",{key:0,onClick:a,disabled:e.loading,rel:"prev"},[Wo(Mt(fd),{class:"h-5 w-5"}),Ag],8,Pg)):Jo("",!0)]),zo("div",jg,[zo("span",null,ne(Mt(t).page),1)]),zo("div",Tg,[(Fo(!0),No(Lo,null,er(e.short?Mt(t).linksShort:Mt(t).links,(function(e){return Fo(),No(Lo,null,[e.active?(Fo(),No("button",Rg,ne(Number(e.label).toLocaleString()),1)):"..."===e.label?(Fo(),No("span",Fg,ne(e.label),1)):(Fo(),No("button",{key:2,onClick:function(t){return o(Number(e.label))},class:"border-transparent text-gray-500 dark:text-gray-400 hover:text-gray-700 hover:border-gray-300 dark:hover:text-gray-300 dark:hover:border-gray-400"},ne(Number(e.label).toLocaleString()),9,Ig))],64)})),256))]),zo("div",Mg,[Mt(t).hasMorePages?(Fo(),No("button",{key:0,onClick:i,disabled:e.loading,rel:"next"},[Bg,Wo(Mt(Sg),{class:"h-5 w-5"})],8,Dg)):Jo("",!0)])])}}},Ug=Ng;function Vg(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"})])}var Hg={class:"flex items-center"},qg={class:"opacity-90 mr-1"},$g={class:"font-semibold"},zg={class:"opacity-90 mr-1"},Wg={class:"font-semibold"},Zg={key:2,class:"opacity-90"},Kg={key:3,class:"opacity-90"},Yg={class:"py-2"},Gg={class:"label flex justify-between"},Jg={key:0,class:"no-results"},Qg={class:"flex-1 inline-flex justify-between"},Xg={class:"log-count"};const ey={__name:"LevelButtons",setup:function(e){var t=Sp(),n=Cp();return fo((function(){return n.excludedLevels}),(function(){return t.loadLogs()})),function(e,r){return Fo(),No("div",Hg,[Wo(Mt(ad),{as:"div",class:"mr-5 relative log-levels-selector"},{default:dn((function(){return[Wo(Mt(ld),{as:"button",id:"severity-dropdown-toggle",class:Y(["dropdown-toggle badge none",Mt(n).levelsSelected.length>0?"active":""])},{default:dn((function(){return[Mt(n).levelsSelected.length>2?(Fo(),No(Lo,{key:0},[zo("span",qg,ne(Mt(n).totalResultsSelected.toLocaleString()+(Mt(t).hasMoreResults?"+":""))+" entries in",1),zo("strong",$g,ne(Mt(n).levelsSelected[0].level_name)+" + "+ne(Mt(n).levelsSelected.length-1)+" more",1)],64)):Mt(n).levelsSelected.length>0?(Fo(),No(Lo,{key:1},[zo("span",zg,ne(Mt(n).totalResultsSelected.toLocaleString()+(Mt(t).hasMoreResults?"+":""))+" entries in",1),zo("strong",Wg,ne(Mt(n).levelsSelected.map((function(e){return e.level_name})).join(", ")),1)],64)):Mt(n).levelsFound.length>0?(Fo(),No("span",Zg,ne(Mt(n).totalResults.toLocaleString()+(Mt(t).hasMoreResults?"+":""))+" entries found. None selected",1)):(Fo(),No("span",Kg,"No entries found")),Wo(Mt(Vg),{class:"w-4 h-4"})]})),_:1},8,["class"]),Wo(Ti,{"leave-active-class":"transition ease-in duration-100","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-90","enter-active-class":"transition ease-out duration-100","enter-from-class":"opacity-0 scale-90","enter-to-class":"opacity-100 scale-100"},{default:dn((function(){return[Wo(Mt(sd),{as:"div",class:"dropdown down left min-w-[240px]"},{default:dn((function(){return[zo("div",Yg,[zo("div",Gg,[Yo(" Severity "),Mt(n).levelsFound.length>0?(Fo(),No(Lo,{key:0},[Mt(n).levelsSelected.length===Mt(n).levelsFound.length?(Fo(),Uo(Mt(ud),{key:0,onClick:xa(Mt(n).deselectAllLevels,["stop"])},{default:dn((function(e){return[zo("a",{class:Y(["inline-link px-2 -mr-2 py-1 -my-1 rounded-md cursor-pointer text-brand-700 dark:text-brand-500 font-normal",[e.active?"active":""]])}," Deselect all ",2)]})),_:1},8,["onClick"])):(Fo(),Uo(Mt(ud),{key:1,onClick:xa(Mt(n).selectAllLevels,["stop"])},{default:dn((function(e){return[zo("a",{class:Y(["inline-link px-2 -mr-2 py-1 -my-1 rounded-md cursor-pointer text-brand-700 dark:text-brand-500 font-normal",[e.active?"active":""]])}," Select all ",2)]})),_:1},8,["onClick"]))],64)):Jo("",!0)]),0===Mt(n).levelsFound.length?(Fo(),No("div",Jg,"There are no severity filters to display because no entries have been found.")):(Fo(!0),No(Lo,{key:1},er(Mt(n).levelsFound,(function(e){return Fo(),Uo(Mt(ud),{onClick:xa((function(t){return Mt(n).toggleLevel(e.level)}),["stop","prevent"])},{default:dn((function(t){return[zo("button",{class:Y([t.active?"active":""])},[Wo(Dh,{class:"checkmark mr-2.5",checked:e.selected},null,8,["checked"]),zo("span",Qg,[zo("span",{class:Y(["log-level",e.level_class])},ne(e.level_name),3),zo("span",Xg,ne(Number(e.count).toLocaleString()),1)])],2)]})),_:2},1032,["onClick"])})),256))])]})),_:1})]})),_:1})]})),_:1})])}}};function ty(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z"})])}var ny={class:"flex-1"},ry={class:"prefix-icon"},oy=zo("label",{for:"query",class:"sr-only"},"Search",-1),iy={class:"relative flex-1 m-1"},ay={class:"clear-search"},ly={class:"submit-search"},sy={key:0,disabled:"disabled"},uy={class:"hidden xl:inline ml-1"},cy={class:"hidden xl:inline ml-1"},fy={class:"relative h-0 w-full overflow-visible"},dy=["innerHTML"];const py={__name:"SearchInput",setup:function(e){var t=bp(),n=Sp(),r=nf(),o=rf(),i=xi((function(){return n.selectedFile})),a=Tt(o.query.query||""),l=function(){var e;Dp(r,"query",""===a.value?null:a.value),null===(e=document.getElementById("query-submit"))||void 0===e||e.focus()},s=function(){a.value="",l()};return fo((function(){return o.query.query}),(function(e){return a.value=e||""})),function(e,r){return Fo(),No("div",ny,[zo("div",{class:Y(["search",{"has-error":Mt(n).error}])},[zo("div",ry,[oy,pn(Wo(Mt(ty),{class:"h-4 w-4"},null,512),[[Yi,!Mt(n).hasMoreResults]]),pn(Wo(Hp,{class:"w-4 h-4"},null,512),[[Yi,Mt(n).hasMoreResults]])]),zo("div",iy,[pn(zo("input",{"onUpdate:modelValue":r[0]||(r[0]=function(e){return a.value=e}),name:"query",id:"query",type:"text",onKeydown:[ka(l,["enter"]),r[1]||(r[1]=ka((function(e){return e.target.blur()}),["esc"]))]},null,544),[[ya,a.value]]),pn(zo("div",ay,[zo("button",{onClick:s},[Wo(Mt(cd),{class:"h-4 w-4"})])],512),[[Yi,Mt(t).hasQuery]])]),zo("div",ly,[Mt(n).hasMoreResults?(Fo(),No("button",sy,[zo("span",null,[Yo("Searching"),zo("span",uy,ne(i.value?i.value.name:"all files"),1),Yo("...")])])):(Fo(),No("button",{key:1,onClick:l,id:"query-submit"},[zo("span",null,[Yo("Search"),zo("span",cy,ne(i.value?'in "'+i.value.name+'"':"all files"),1)]),Wo(Mt(Sg),{class:"h-4 w-4"})]))])],2),zo("div",fy,[pn(zo("div",{class:"search-progress-bar",style:$({width:Mt(n).percentScanned+"%"})},null,4),[[Yi,Mt(n).hasMoreResults]])]),pn(zo("p",{class:"mt-1 text-red-600 text-xs",innerHTML:Mt(n).error},null,8,dy),[[Yi,Mt(n).error]])])}}},hy=py;function vy(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12ZM12 8.25a.75.75 0 0 1 .75.75v3.75a.75.75 0 0 1-1.5 0V9a.75.75 0 0 1 .75-.75Zm0 8.25a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z","clip-rule":"evenodd"})])}function gy(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003ZM12 8.25a.75.75 0 0 1 .75.75v3.75a.75.75 0 0 1-1.5 0V9a.75.75 0 0 1 .75-.75Zm0 8.25a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z","clip-rule":"evenodd"})])}function yy(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z","clip-rule":"evenodd"})])}function my(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm8.706-1.442c1.146-.573 2.437.463 2.126 1.706l-.709 2.836.042-.02a.75.75 0 0 1 .67 1.34l-.04.022c-1.147.573-2.438-.463-2.127-1.706l.71-2.836-.042.02a.75.75 0 1 1-.671-1.34l.041-.022ZM12 9a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z","clip-rule":"evenodd"})])}function by(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"fill-rule":"evenodd",d:"M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z","clip-rule":"evenodd"})])}function wy(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622 1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244"})])}function Cy(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{d:"M7.493 18.5c-.425 0-.82-.236-.975-.632A7.48 7.48 0 0 1 6 15.125c0-1.75.599-3.358 1.602-4.634.151-.192.373-.309.6-.397.473-.183.89-.514 1.212-.924a9.042 9.042 0 0 1 2.861-2.4c.723-.384 1.35-.956 1.653-1.715a4.498 4.498 0 0 0 .322-1.672V2.75A.75.75 0 0 1 15 2a2.25 2.25 0 0 1 2.25 2.25c0 1.152-.26 2.243-.723 3.218-.266.558.107 1.282.725 1.282h3.126c1.026 0 1.945.694 2.054 1.715.045.422.068.85.068 1.285a11.95 11.95 0 0 1-2.649 7.521c-.388.482-.987.729-1.605.729H14.23c-.483 0-.964-.078-1.423-.23l-3.114-1.04a4.501 4.501 0 0 0-1.423-.23h-.777ZM2.331 10.727a11.969 11.969 0 0 0-.831 4.398 12 12 0 0 0 .52 3.507C2.28 19.482 3.105 20 3.994 20H4.9c.445 0 .72-.498.523-.898a8.963 8.963 0 0 1-.924-3.977c0-1.708.476-3.305 1.302-4.666.245-.403-.028-.959-.5-.959H4.25c-.832 0-1.612.453-1.918 1.227Z"})])}var _y={class:"sr-only"},xy={class:"text-green-600 dark:text-green-500 hidden md:inline"};const Oy={__name:"LogCopyButton",props:{log:{type:Object,required:!0}},setup:function(e){var t=e,n=Tt(!1),r=function(){Mp(t.log.url),n.value=!0,setTimeout((function(){return n.value=!1}),1e3)};return function(t,o){return Fo(),No("button",{class:"log-link group",onClick:xa(r,["stop"]),onKeydown:o[0]||(o[0]=function(){return Mt(ah)&&Mt(ah).apply(void 0,arguments)}),title:"Copy link to this log entry"},[zo("span",_y,"Log index "+ne(e.log.index)+". Click the button to copy link to this log entry.",1),pn(zo("span",{class:"hidden md:inline group-hover:underline"},ne(Number(e.log.index).toLocaleString()),513),[[Yi,!n.value]]),pn(Wo(Mt(wy),{class:"md:opacity-75 group-hover:opacity-100"},null,512),[[Yi,!n.value]]),pn(Wo(Mt(Cy),{class:"text-green-600 dark:text-green-500 md:hidden"},null,512),[[Yi,n.value]]),pn(zo("span",xy,"Copied!",512),[[Yi,n.value]])],32)}}};var ky={key:0,class:"tabs-container"},Sy={class:"border-b border-gray-200 dark:border-gray-800"},Ey={class:"-mb-px flex space-x-6","aria-label":"Tabs"},Ly=["onClick","aria-current"];const Py={__name:"TabContainer",props:{tabs:{type:Array,required:!0}},setup:function(e){var t=Tt(e.tabs[0]);Or("currentTab",t);var n=function(e){return t.value&&t.value.value===e.value};return function(r,o){return Fo(),No("div",null,[e.tabs&&e.tabs.length>1?(Fo(),No("div",ky,[zo("div",Sy,[zo("nav",Ey,[(Fo(!0),No(Lo,null,er(e.tabs,(function(e){return Fo(),No("a",{key:e.name,href:"#",onClick:xa((function(n){return t.value=e}),["prevent"]),class:Y([n(e)?"border-brand-500 dark:border-brand-400 text-brand-600 dark:text-brand-500":"border-transparent text-gray-500 dark:text-gray-400 hover:border-gray-300 hover:text-gray-700 dark:hover:text-gray-200","whitespace-nowrap border-b-2 py-2 px-1 text-sm font-medium focus:outline-brand-500"]),"aria-current":n(e)?"page":void 0},ne(e.name),11,Ly)})),128))])])])):Jo("",!0),tr(r.$slots,"default")])}}};var Ay={key:0};const jy={__name:"TabContent",props:{tabValue:{type:String,required:!0}},setup:function(e){var t=e,n=kr("currentTab"),r=xi((function(){return n.value&&n.value.value===t.tabValue}));return function(e,t){return r.value?(Fo(),No("div",Ay,[tr(e.$slots,"default")])):Jo("",!0)}}};function Ty(e,t){return Fo(),No("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon"},[zo("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m18.375 12.739-7.693 7.693a4.5 4.5 0 0 1-6.364-6.364l10.94-10.94A3 3 0 1 1 19.5 7.372L8.552 18.32m.009-.01-.01.01m5.699-9.941-7.81 7.81a1.5 1.5 0 0 0 2.112 2.13"})])}var Ry={class:"mail-preview-attributes"},Fy={key:0},Iy=zo("td",{class:"font-semibold"},"From",-1),My={key:1},Dy=zo("td",{class:"font-semibold"},"To",-1),By={key:2},Ny=zo("td",{class:"font-semibold"},"Message ID",-1),Uy={key:3},Vy=zo("td",{class:"font-semibold"},"Subject",-1),Hy={key:4},qy=zo("td",{class:"font-semibold"},"Attachments",-1),$y={class:"flex items-center"},zy={class:"opacity-60"},Wy=["onClick"];const Zy={__name:"MailPreviewAttributes",props:["mail"],setup:function(e){return function(t,n){return Fo(),No("div",Ry,[zo("table",null,[e.mail.from?(Fo(),No("tr",Fy,[Iy,zo("td",null,ne(e.mail.from),1)])):Jo("",!0),e.mail.to?(Fo(),No("tr",My,[Dy,zo("td",null,ne(e.mail.to),1)])):Jo("",!0),e.mail.id?(Fo(),No("tr",By,[Ny,zo("td",null,ne(e.mail.id),1)])):Jo("",!0),e.mail.subject?(Fo(),No("tr",Uy,[Vy,zo("td",null,ne(e.mail.subject),1)])):Jo("",!0),e.mail.attachments&&e.mail.attachments.length>0?(Fo(),No("tr",Hy,[qy,zo("td",null,[(Fo(!0),No(Lo,null,er(e.mail.attachments,(function(t,n){return Fo(),No("div",{key:"mail-".concat(e.mail.id,"-attachment-").concat(n),class:"mail-attachment-button"},[zo("div",$y,[Wo(Mt(Ty),{class:"h-4 w-4 text-gray-500 dark:text-gray-400 mr-1"}),zo("span",null,[Yo(ne(t.filename)+" ",1),zo("span",zy,"("+ne(t.size_formatted)+")",1)])]),zo("div",null,[zo("a",{href:"#",onClick:xa((function(e){return function(e){for(var t=atob(e.content),n=new Array(t.length),r=0;re.length)&&(t=e.length);for(var n=0,r=Array(t);n