diff --git a/.eslintrc.cjs b/.eslintrc.cjs index eb55c333..d87f5f13 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -3,17 +3,18 @@ module.exports = { "eslint:recommended", "plugin:vue/vue3-recommended", "plugin:vue/vue3-essential", - "plugin:vue/vue3-strongly-recommended" + "plugin:vue/vue3-strongly-recommended", ], rules: { "no-undef": 0, "vue/multi-word-component-names": 0, "vue/no-v-html": 0, "vue/require-default-prop": 0, - "indent": ["error", 4], - "quotes": ["error", "double"], + "vue/no-setup-props-destructure": 0, + indent: ["error", 4], + quotes: ["error", "double"], "object-curly-spacing": ["error", "always"], - "semi": ["error", "always"], - "comma-spacing": ["error", { "before": false, "after": true }] - } -}; \ No newline at end of file + semi: ["error", "always"], + "comma-spacing": ["error", { before: false, after: true }], + }, +}; diff --git a/.github/workflows/dependabot-auto-merge.yml b/.github/workflows/dependabot-auto-merge.yml index 4af8e6b6..ca2197dc 100644 --- a/.github/workflows/dependabot-auto-merge.yml +++ b/.github/workflows/dependabot-auto-merge.yml @@ -13,7 +13,7 @@ jobs: - name: Dependabot metadata id: metadata - uses: dependabot/fetch-metadata@v1.5.1 + uses: dependabot/fetch-metadata@v1.6.0 with: github-token: "${{ secrets.GITHUB_TOKEN }}" diff --git a/.github/workflows/fix-js-code-style-issues.yml b/.github/workflows/fix-js-code-style-issues.yml index 54b18c8b..3fde268d 100644 --- a/.github/workflows/fix-js-code-style-issues.yml +++ b/.github/workflows/fix-js-code-style-issues.yml @@ -13,18 +13,18 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v3.5.3 + uses: actions/checkout@v4.1.2 with: ref: ${{ github.head_ref }} - name: "Install Node" - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: "${{ matrix.node-version }}" - name: Cache node modules id: cache-npm - uses: actions/cache@v3 + uses: actions/cache@v4 env: cache-name: cache-node-modules with: @@ -48,6 +48,6 @@ jobs: run: "npm run eslint" - name: Commit changes - uses: stefanzweifel/git-auto-commit-action@v4 + uses: stefanzweifel/git-auto-commit-action@v5 with: commit_message: Fix styling diff --git a/.github/workflows/fix-php-code-style-issues.yml b/.github/workflows/fix-php-code-style-issues.yml index 8cdb86f9..f77d769a 100644 --- a/.github/workflows/fix-php-code-style-issues.yml +++ b/.github/workflows/fix-php-code-style-issues.yml @@ -8,14 +8,14 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v3.5.3 + uses: actions/checkout@v4.1.2 with: ref: ${{ github.head_ref }} - name: Fix PHP code style issues - uses: aglipanci/laravel-pint-action@2.3.0 + uses: aglipanci/laravel-pint-action@2.3.1 - name: Commit changes - uses: stefanzweifel/git-auto-commit-action@v4 + uses: stefanzweifel/git-auto-commit-action@v5 with: commit_message: Fix styling diff --git a/.github/workflows/run-stub-tests.yml b/.github/workflows/run-stub-tests.yml index 6f4e6a75..4ff46a5c 100644 --- a/.github/workflows/run-stub-tests.yml +++ b/.github/workflows/run-stub-tests.yml @@ -10,8 +10,8 @@ jobs: fail-fast: true matrix: os: [ubuntu-22.04, windows-latest] - php: [8.2, 8.1] - laravel: [10.2] + php: [8.3, 8.2] + laravel: [11.0, 10.2] name: Test Stubs ${{ matrix.os }} - P${{ matrix.php }} - L${{ matrix.laravel }} @@ -38,7 +38,7 @@ jobs: if: matrix.os == 'windows-latest' - name: Checkout code - uses: actions/checkout@v3.5.3 + uses: actions/checkout@v4.1.2 with: path: "vendor/protonemedia/laravel-splade" diff --git a/.github/workflows/run-table-tests.yml b/.github/workflows/run-table-tests.yml index 460ac649..71ffc614 100644 --- a/.github/workflows/run-table-tests.yml +++ b/.github/workflows/run-table-tests.yml @@ -8,25 +8,23 @@ jobs: strategy: fail-fast: true matrix: - php: [8.2, 8.1, 8.0] - laravel: [10.*, 9.*] + php: [8.3, 8.2] + laravel: [11.0, 10.0] db: [mysql, postgres, sqlite] ssr: [true, false] dependency-version: [prefer-lowest, prefer-stable] include: - - laravel: 9.* - testbench: 7.* - - laravel: 10.* + - laravel: 11.0 + testbench: 9.* + - laravel: 10.0 testbench: 8.* exclude: - - ssr: true - dependency-version: prefer-lowest - - ssr: true - php: 8.1 - - ssr: true - php: 8.0 - - laravel: 10.* - php: 8.0 + - dependency-version: prefer-lowest + ssr: true + - php: 8.2 + ssr: true + - laravel: 10.0 + ssr: true - db: mysql ssr: true - db: postgres @@ -58,11 +56,11 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v3.5.3 + uses: actions/checkout@v4.1.2 - name: Cache node modules id: cache-npm - uses: actions/cache@v3 + uses: actions/cache@v4 env: cache-name: cache-node-modules with: @@ -119,7 +117,12 @@ jobs: run: | cd app npm upgrade + composer require laravel/framework:^${{ matrix.laravel }} --no-interaction --no-suggest composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest + + - name: Prepare tests + run: | + cd app npm run build php artisan dusk:chrome-driver `/opt/google/chrome/chrome --version | cut -d " " -f3 | cut -d "." -f1` @@ -165,7 +168,7 @@ jobs: - name: Execute Dusk tests (only table tests - MySQL) if: ${{ matrix.db == 'mysql' }} - uses: nick-invision/retry@v2 + uses: nick-invision/retry@v3 with: timeout_minutes: 10 max_attempts: 3 @@ -176,7 +179,7 @@ jobs: - name: Execute Dusk tests (only table tests - PostgreSQL) if: ${{ matrix.db == 'postgres' }} - uses: nick-invision/retry@v2 + uses: nick-invision/retry@v3 with: timeout_minutes: 10 max_attempts: 3 @@ -187,7 +190,7 @@ jobs: - name: Execute Dusk tests (only table tests - SQLite) if: ${{ matrix.db == 'sqlite' }} - uses: nick-invision/retry@v2 + uses: nick-invision/retry@v3 with: timeout_minutes: 10 max_attempts: 3 @@ -196,28 +199,28 @@ jobs: - name: Upload Screenshots if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: screenshots path: app/tests/Browser/screenshots - name: Upload Snapshots if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: snapshots path: app/tests/Browser/__snapshots__ - name: Upload Console Logs if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: console path: app/tests/Browser/console - name: Upload Logs if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: logs path: app/storage/logs diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index b0f5d1b3..267ef423 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -8,34 +8,30 @@ jobs: strategy: fail-fast: true matrix: - php: [8.2, 8.1, 8.0] - laravel: [10.*, 9.*] + php: [8.3, 8.2] + laravel: [11.0, 10.0] ssr: [true, false] dependency-version: [prefer-lowest, prefer-stable] include: - - laravel: 9.* - testbench: 7.* - - laravel: 10.* + - laravel: 11.0 + testbench: 9.* + - laravel: 10.0 testbench: 8.* exclude: - ssr: true dependency-version: prefer-lowest - ssr: true - php: 8.1 - - ssr: true - php: 8.0 - - laravel: 10.* - php: 8.0 + php: 8.2 name: Test P${{ matrix.php }} - L${{ matrix.laravel }} - SSR ${{ matrix.ssr }} - ${{ matrix.dependency-version }} steps: - name: Checkout code - uses: actions/checkout@v3.5.3 + uses: actions/checkout@v4.1.2 - name: Cache node modules id: cache-npm - uses: actions/cache@v3 + uses: actions/cache@v4 env: cache-name: cache-node-modules with: @@ -77,10 +73,31 @@ jobs: cp public/1.jpeg storage/app/public/1.jpeg cp public/2.jpeg storage/app/public/2.jpeg touch database/database.sqlite + composer require laravel/framework:^${{ matrix.laravel }} --no-interaction --no-suggest composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest - npm run build php artisan storage:link php artisan migrate:fresh --seed + + - name: Prepare L10 + if: ${{ matrix.laravel == '10.0' }} + run: | + cd app + rm composer.lock + composer require illuminate/contracts:^10.48.2 spatie/phpunit-snapshot-assertions:^5.0 phpunit/phpunit:^10.4 nunomaduro/collision:^7.10 --no-interaction --no-suggest + composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest + + - name: Prepare L11 + if: ${{ matrix.laravel == '11.0' }} + run: | + cd app + rm composer.lock + composer require illuminate/contracts:^11.0.1 spatie/phpunit-snapshot-assertions:^5.0 phpunit/phpunit:^10.4 nunomaduro/collision:^8.1 --no-interaction --no-suggest + composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest + + - name: Prepare tests + run: | + cd app + npm run build php artisan dusk:chrome-driver `/opt/google/chrome/chrome --version | cut -d " " -f3 | cut -d "." -f1` - name: Start Chrome Driver @@ -88,10 +105,10 @@ jobs: cd app ./vendor/laravel/dusk/bin/chromedriver-linux & - - name: Start Laravel Websockets + - name: Start Laravel Reverb run: | cd app - php artisan websockets:serve & + php artisan reverb:start & - name: Start SSR server run: | @@ -111,37 +128,37 @@ jobs: php artisan test - name: Execute Dusk tests (except table tests) - uses: nick-invision/retry@v2 + uses: nick-invision/retry@v3 with: timeout_minutes: 10 max_attempts: 3 - command: cd app && php artisan dusk --stop-on-error --stop-on-failure --exclude-group=table + command: cd app && php artisan dusk --stop-on-failure --stop-on-error --exclude-group=table on_retry_command: cd app && php artisan migrate:fresh --seed - name: Upload Screenshots if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: screenshots path: app/tests/Browser/screenshots - name: Upload Snapshots if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: snapshots path: app/tests/Browser/__snapshots__ - name: Upload Console Logs if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: console path: app/tests/Browser/console - name: Upload Logs if: failure() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: logs path: app/storage/logs diff --git a/.github/workflows/update-changelog.yml b/.github/workflows/update-changelog.yml index 9e2ed5ab..2b731bef 100644 --- a/.github/workflows/update-changelog.yml +++ b/.github/workflows/update-changelog.yml @@ -10,7 +10,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v3.5.3 + uses: actions/checkout@v4.1.2 with: ref: main @@ -21,7 +21,7 @@ jobs: release-notes: ${{ github.event.release.body }} - name: Commit updated CHANGELOG - uses: stefanzweifel/git-auto-commit-action@v4 + uses: stefanzweifel/git-auto-commit-action@v5 with: branch: main commit_message: Update CHANGELOG diff --git a/CHANGELOG.md b/CHANGELOG.md index a6497d21..ce0295c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,64 @@ All notable changes to `laravel-splade` will be documented in this file. +## 1.4.19 - 2024-03-20 + +### What's Changed + +* Bump aglipanci/laravel-pint-action from 2.3.0 to 2.3.1 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/562 +* Bump nick-invision/retry from 2 to 3 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/558 +* Bump actions/upload-artifact from 3 to 4 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/559 +* Bump actions/cache from 3 to 4 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/560 +* Bump actions/checkout from 4.1.1 to 4.1.2 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/561 +* fix: missing translation in confirm.blade.php by @ibrunotome in https://github.com/protonemedia/laravel-splade/pull/496 +* Add blob option for Form Builder by @jamesj2 in https://github.com/protonemedia/laravel-splade/pull/461 +* Fix select duplicate queries by @KinArnaud in https://github.com/protonemedia/laravel-splade/pull/466 +* Support for `HtmlString` in Toasts by @pascalbaljet in https://github.com/protonemedia/laravel-splade/pull/563 +* Fix formbuilder events by @jamesj2 in https://github.com/protonemedia/laravel-splade/pull/479 +* #450: updated HTML tag matching Regexp in CustomBladeCompiler.php by @majortom731 in https://github.com/protonemedia/laravel-splade/pull/451 + +### New Contributors + +* @ibrunotome made their first contribution in https://github.com/protonemedia/laravel-splade/pull/496 +* @jamesj2 made their first contribution in https://github.com/protonemedia/laravel-splade/pull/461 +* @majortom731 made their first contribution in https://github.com/protonemedia/laravel-splade/pull/451 + +**Full Changelog**: https://github.com/protonemedia/laravel-splade/compare/1.4.18...1.4.19 + +## 1.4.18 - 2024-03-18 + +### What's Changed + +* Support for installing on fresh L11 installations by @pascalbaljet in https://github.com/protonemedia/laravel-splade/pull/557 + +**Full Changelog**: https://github.com/protonemedia/laravel-splade/compare/1.4.17...1.4.18 + +## 1.4.17 - 2024-03-18 + +### What's Changed + +* Bump actions/checkout from 3.5.3 to 3.6.0 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/512 +* Bump stefanzweifel/git-auto-commit-action from 4 to 5 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/528 +* Bump actions/setup-node from 3 to 4 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/530 +* Bump actions/checkout from 3.6.0 to 4.1.1 by @dependabot in https://github.com/protonemedia/laravel-splade/pull/531 +* Support for Laravel 11 and PHP 8.3 by @pascalbaljet in https://github.com/protonemedia/laravel-splade/pull/553 + +**Full Changelog**: https://github.com/protonemedia/laravel-splade/compare/1.4.16...1.4.17 + +## 1.4.16 - 2023-08-03 + +- SEO bugfix for overwriting defaults +- Workaround for missing Remote URL +- Fixed Dusk CI tests + +## 1.4.15 - 2023-06-26 + +- The Table component now preserves the scroll position when the sorting changes. +- The Link component now respects system modifiers, for example, to open a new tab. +- There's a new `pagination-scroll` attribute on the Table component to control the scroll behavior when using pagination. Valid values are `top` (default), `head`, and `preserve`. +- You may now disable the *Reset-button* on the Table component with the `reset-button` attribute. +- When using View Transitions, it will prevent a transition when the page just refreshes. + ## 1.4.14 - 2023-06-14 - Downgraded the HeadlessUI library because of a bug in the upstream package diff --git a/README.md b/README.md index 254b9209..8f64a8aa 100644 --- a/README.md +++ b/README.md @@ -9,8 +9,13 @@ Splade provides a **super easy** way to build ***Single Page Applications*** (SP [![Latest Version on Packagist](https://img.shields.io/packagist/v/protonemedia/laravel-splade.svg)](https://packagist.org/packages/protonemedia/laravel-splade) [![GitHub Tests Action Status](https://img.shields.io/github/actions/workflow/status/protonemedia/laravel-splade/run-tests.yml?branch=main&label=tests)](https://github.com/protonemedia/laravel-splade/actions?query=workflow%3Arun-tests+branch%3Amain) [![Total Downloads](https://img.shields.io/packagist/dt/protonemedia/laravel-splade.svg)](https://packagist.org/packages/protonemedia/laravel-splade) +[![Splade Discord Server](https://dcbadge.vercel.app/api/server/qGJ4MkMQWm?style=flat&theme=default-inverted)](https://discord.gg/qGJ4MkMQWm) [![GitHub Sponsors](https://img.shields.io/github/sponsors/pascalbaljet)](https://github.com/sponsors/pascalbaljet) +## Update February 23, 2024: Thoughts on Splade + +After 18 months, I took a week to reflect on Splade and its future. Please read my [blog post](https://protone.media/en/blog/thoughts-on-splade-i-took-a-week-off-to-look-around-and-reflect) if you're interested in Splade! + ## Sponsor Splade ❤️ We proudly support the community by developing Laravel packages and giving them away for free. If this package saves you time or if you're relying on it professionally, please consider [sponsoring the maintenance and development](https://github.com/sponsors/pascalbaljet). Keeping track of issues and pull requests takes time, but we're happy to help! diff --git a/app/.env.example b/app/.env.example index d0cccf34..1678c966 100644 --- a/app/.env.example +++ b/app/.env.example @@ -10,7 +10,7 @@ LOG_LEVEL=debug DB_CONNECTION=sqlite -BROADCAST_DRIVER=pusher +BROADCAST_DRIVER=reverb CACHE_DRIVER=file FILESYSTEM_DISK=local QUEUE_CONNECTION=sync @@ -32,19 +32,19 @@ MAIL_ENCRYPTION=null MAIL_FROM_ADDRESS="hello@example.com" MAIL_FROM_NAME="${APP_NAME}" -PUSHER_APP_ID=1234567 -PUSHER_APP_KEY=12345678901234567890 -PUSHER_APP_SECRET=12345678901234567890 -PUSHER_APP_CLUSTER=eu -PUSHER_HOST=127.0.0.1 -PUSHER_PORT=6001 -PUSHER_SCHEME=http - -VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}" -VITE_PUSHER_PORT="${PUSHER_PORT}" -VITE_PUSHER_SCHEME="${PUSHER_SCHEME}" -VITE_PUSHER_HOST="${PUSHER_HOST}" -VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" +REVERB_HOST=127.0.0.1 +REVERB_PORT=8080 +REVERB_APP_KEY=12345678901234567890 +REVERB_APP_SECRET=12345678901234567890 +REVERB_APP_ID=1234567 +REVERB_SCHEME=http + +VITE_REVERB_HOST="${REVERB_HOST}" +VITE_REVERB_PORT="${REVERB_PORT}" +VITE_REVERB_APP_KEY="${REVERB_APP_KEY}" +VITE_REVERB_APP_SECRET="${REVERB_APP_SECRET}" +VITE_REVERB_APP_ID="${REVERB_APP_ID}" +VITE_REVERB_SCHEME="${REVERB_SCHEME}" DEBUGBAR_ENABLED=false SPLADE_SSR_ENABLED=false \ No newline at end of file diff --git a/app/.env.example.mysql b/app/.env.example.mysql index a1ca7ec9..40aeebc1 100644 --- a/app/.env.example.mysql +++ b/app/.env.example.mysql @@ -14,7 +14,7 @@ DB_USERNAME=protone_media_db_test DB_PASSWORD=secret DB_PORT=3306 -BROADCAST_DRIVER=pusher +BROADCAST_DRIVER=reverb CACHE_DRIVER=file FILESYSTEM_DISK=local QUEUE_CONNECTION=sync @@ -36,19 +36,19 @@ MAIL_ENCRYPTION=null MAIL_FROM_ADDRESS="hello@example.com" MAIL_FROM_NAME="${APP_NAME}" -PUSHER_APP_ID=1234567 -PUSHER_APP_KEY=12345678901234567890 -PUSHER_APP_SECRET=12345678901234567890 -PUSHER_APP_CLUSTER=eu -PUSHER_HOST=127.0.0.1 -PUSHER_PORT=6001 -PUSHER_SCHEME=http - -VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}" -VITE_PUSHER_PORT="${PUSHER_PORT}" -VITE_PUSHER_SCHEME="${PUSHER_SCHEME}" -VITE_PUSHER_HOST="${PUSHER_HOST}" -VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" +REVERB_HOST=127.0.0.1 +REVERB_PORT=8080 +REVERB_APP_KEY=12345678901234567890 +REVERB_APP_SECRET=12345678901234567890 +REVERB_APP_ID=1234567 +REVERB_SCHEME=http + +VITE_REVERB_HOST="${REVERB_HOST}" +VITE_REVERB_PORT="${REVERB_PORT}" +VITE_REVERB_APP_KEY="${REVERB_APP_KEY}" +VITE_REVERB_APP_SECRET="${REVERB_APP_SECRET}" +VITE_REVERB_APP_ID="${REVERB_APP_ID}" +VITE_REVERB_SCHEME="${REVERB_SCHEME}" DEBUGBAR_ENABLED=false SPLADE_SSR_ENABLED=false \ No newline at end of file diff --git a/app/.env.example.postgres b/app/.env.example.postgres index 2bdbc0c7..94e64fd0 100644 --- a/app/.env.example.postgres +++ b/app/.env.example.postgres @@ -14,7 +14,7 @@ DB_USERNAME=protone_media_db_test DB_PASSWORD=secret DB_PORT=5432 -BROADCAST_DRIVER=pusher +BROADCAST_DRIVER=reverb CACHE_DRIVER=file FILESYSTEM_DISK=local QUEUE_CONNECTION=sync @@ -36,19 +36,19 @@ MAIL_ENCRYPTION=null MAIL_FROM_ADDRESS="hello@example.com" MAIL_FROM_NAME="${APP_NAME}" -PUSHER_APP_ID=1234567 -PUSHER_APP_KEY=12345678901234567890 -PUSHER_APP_SECRET=12345678901234567890 -PUSHER_APP_CLUSTER=eu -PUSHER_HOST=127.0.0.1 -PUSHER_PORT=6001 -PUSHER_SCHEME=http - -VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}" -VITE_PUSHER_PORT="${PUSHER_PORT}" -VITE_PUSHER_SCHEME="${PUSHER_SCHEME}" -VITE_PUSHER_HOST="${PUSHER_HOST}" -VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}" +REVERB_HOST=127.0.0.1 +REVERB_PORT=8080 +REVERB_APP_KEY=12345678901234567890 +REVERB_APP_SECRET=12345678901234567890 +REVERB_APP_ID=1234567 +REVERB_SCHEME=http + +VITE_REVERB_HOST="${REVERB_HOST}" +VITE_REVERB_PORT="${REVERB_PORT}" +VITE_REVERB_APP_KEY="${REVERB_APP_KEY}" +VITE_REVERB_APP_SECRET="${REVERB_APP_SECRET}" +VITE_REVERB_APP_ID="${REVERB_APP_ID}" +VITE_REVERB_SCHEME="${REVERB_SCHEME}" DEBUGBAR_ENABLED=false SPLADE_SSR_ENABLED=false \ No newline at end of file diff --git a/app/.phpunit.cache/test-results b/app/.phpunit.cache/test-results new file mode 100644 index 00000000..ab160c10 --- /dev/null +++ b/app/.phpunit.cache/test-results @@ -0,0 +1 @@ +{"version":1,"defects":[],"times":{"Tests\\Browser\\Form\\RelationsTest::it_can_find_the_default_value_of_a_nested_relationship":0.692,"Tests\\Browser\\Form\\RelationsTest::it_can_handle_a_belongs_to_many_relationship":0.656,"Tests\\Browser\\Form\\RelationsTest::it_can_handle_a_belongs_to_many_relationship_with_the_choices_library":3.343,"Tests\\Browser\\Form\\RelationsTest::it_can_handle_a_morph_to_many_relationship":0.602,"Tests\\Browser\\Form\\RelationsTest::it_can_handle_a_relationship_with_checkboxes":0.526,"Tests\\Browser\\Form\\RelationsTest::it_can_have_two_forms_in_a_view_without_mixing_data":0.429}} \ No newline at end of file diff --git a/app/app/Http/Controllers/ToastController.php b/app/app/Http/Controllers/ToastController.php index 18cfa621..c715f2f2 100644 --- a/app/app/Http/Controllers/ToastController.php +++ b/app/app/Http/Controllers/ToastController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use Illuminate\Support\HtmlString; use ProtoneMedia\Splade\Facades\Splade; use ProtoneMedia\Splade\Facades\Toast; @@ -31,8 +32,8 @@ public function infoRightTop() public function infoLeftCenter() { - Toast::title('Info Left Center') - ->message('This is a message') + Toast::title(new HtmlString('Info Left Center')) + ->message(new HtmlString('This is a message')) ->info() ->leftCenter(); diff --git a/app/app/Models/User.php b/app/app/Models/User.php index 17686f7a..e18f41df 100644 --- a/app/app/Models/User.php +++ b/app/app/Models/User.php @@ -6,13 +6,14 @@ use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; use Laravel\Sanctum\HasApiTokens; +use Spatie\Image\Enums\Fit; use Spatie\MediaLibrary\HasMedia; use Spatie\MediaLibrary\InteractsWithMedia; use Spatie\MediaLibrary\MediaCollections\Models\Media; class User extends Authenticatable implements HasMedia { - use HasApiTokens, HasFactory, Notifiable, InteractsWithMedia; + use HasApiTokens, HasFactory, InteractsWithMedia, Notifiable; /** * The attributes that are mass assignable. @@ -61,8 +62,8 @@ public function registerMediaCollections(): void $this->addMediaCollection('photos'); } - public function registerMediaConversions(Media $media = null): void + public function registerMediaConversions(?Media $media = null): void { - $this->addMediaConversion('thumb')->fit('contain', 50, 50); + $this->addMediaConversion('thumb')->fit(Fit::Contain, 50, 50); } } diff --git a/app/app/Providers/EventServiceProvider.php b/app/app/Providers/EventServiceProvider.php index ab8b2cf7..474b6c10 100644 --- a/app/app/Providers/EventServiceProvider.php +++ b/app/app/Providers/EventServiceProvider.php @@ -5,7 +5,6 @@ use Illuminate\Auth\Events\Registered; use Illuminate\Auth\Listeners\SendEmailVerificationNotification; use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider; -use Illuminate\Support\Facades\Event; class EventServiceProvider extends ServiceProvider { diff --git a/app/composer.json b/app/composer.json index c747a69a..28c5dd3d 100644 --- a/app/composer.json +++ b/app/composer.json @@ -8,37 +8,36 @@ ], "license": "MIT", "require": { - "php": "^8.0.2", - "beyondcode/laravel-websockets": "^1.13", + "php": "^8.3|^8.2", "guzzlehttp/guzzle": "^7.2", - "kirschbaum-development/eloquent-power-joins": "^2.6", - "laravel/framework": "^9.19", - "laravel/sanctum": "^2.14.1", + "kirschbaum-development/eloquent-power-joins": "^3.0", + "laravel/framework": "^10.48.2|^11.0.1", + "laravel/reverb": "^1.0@beta", + "laravel/sanctum": "^3.2|^4.0", "laravel/tinker": "^2.7", "maatwebsite/excel": "^3.1", + "monolog/monolog": "^3.0", "nesbot/carbon": "^2.63", "psr/simple-cache": "^2.0", - "pusher/pusher-php-server": "^7.0,<7.2.0", "ramsey/collection": "^1.2", - "spatie/laravel-medialibrary": "^10.7", + "spatie/laravel-medialibrary": "^11.0", "spatie/laravel-query-builder": "^5.0" }, "require-dev": { "barryvdh/laravel-debugbar": "^3.7", "fakerphp/faker": "^1.9.1", - "laravel/dusk": "^6.25", + "laravel/dusk": "^7.9.2|^8.0", "laravel/sail": "^1.0.1", "mockery/mockery": "^1.4.4", - "nunomaduro/collision": "^6.1", - "phpunit/phpunit": "^9.5.10", + "nunomaduro/collision": "^7.10|^8.1", + "phpunit/phpunit": "^10.4", "protonemedia/laravel-splade": "*", "spatie/ignition": "^1.4.1", "spatie/invade": "^1.1", "spatie/fractalistic": "^2.9", - "spatie/laravel-ignition": "^1.0", + "spatie/laravel-ignition": "^1.0|^2.0", "spatie/laravel-ray": "^1.31", - "spatie/phpunit-snapshot-assertions": "^4.2", - "thiagocordeiro/laravel-translator": "^1.2" + "spatie/phpunit-snapshot-assertions": "^5.0" }, "autoload": { "psr-4": { diff --git a/app/config/broadcasting.php b/app/config/broadcasting.php index ff2b30b3..d6001aa0 100644 --- a/app/config/broadcasting.php +++ b/app/config/broadcasting.php @@ -30,6 +30,22 @@ 'connections' => [ + 'reverb' => [ + 'driver' => 'reverb', + 'key' => env('REVERB_APP_KEY'), + 'secret' => env('REVERB_APP_SECRET'), + 'app_id' => env('REVERB_APP_ID'), + 'options' => [ + 'host' => env('REVERB_HOST'), + 'port' => env('REVERB_PORT', 443), + 'scheme' => env('REVERB_SCHEME', 'https'), + 'useTLS' => env('REVERB_SCHEME', 'https') === 'https', + ], + 'client_options' => [ + // Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html + ], + ], + 'pusher' => [ 'driver' => 'pusher', 'key' => env('PUSHER_APP_KEY'), diff --git a/app/config/reverb.php b/app/config/reverb.php new file mode 100644 index 00000000..c6660e66 --- /dev/null +++ b/app/config/reverb.php @@ -0,0 +1,81 @@ + env('REVERB_SERVER', 'reverb'), + + /* + |-------------------------------------------------------------------------- + | Reverb Servers + |-------------------------------------------------------------------------- + | + | Here you may define details for each of the supported Reverb servers. + | Each server has its own configuration options that are defined in + | the array below. You should ensure all the options are present. + | + */ + + 'servers' => [ + + 'reverb' => [ + 'host' => env('REVERB_SERVER_HOST', '0.0.0.0'), + 'port' => env('REVERB_SERVER_PORT', 8080), + 'hostname' => env('REVERB_HOST'), + 'options' => [ + 'tls' => [], + ], + 'scaling' => [ + 'enabled' => env('REVERB_SCALING_ENABLED', false), + 'channel' => env('REVERB_SCALING_CHANNEL', 'reverb'), + ], + 'pulse_ingest_interval' => env('REVERB_PULSE_INGEST_INTERVAL', 15), + ], + + ], + + /* + |-------------------------------------------------------------------------- + | Reverb Applications + |-------------------------------------------------------------------------- + | + | Here you may define how Reverb applications are managed. If you choose + | to use the "config" provider, you may define an array of apps which + | your server will support, including their connection credentials. + | + */ + + 'apps' => [ + + 'provider' => 'config', + + 'apps' => [ + [ + 'key' => env('REVERB_APP_KEY'), + 'secret' => env('REVERB_APP_SECRET'), + 'app_id' => env('REVERB_APP_ID'), + 'options' => [ + 'host' => env('REVERB_HOST'), + 'port' => env('REVERB_PORT', 443), + 'scheme' => env('REVERB_SCHEME', 'https'), + 'useTLS' => env('REVERB_SCHEME', 'https') === 'https', + ], + 'allowed_origins' => ['*'], + 'ping_interval' => env('REVERB_APP_PING_INTERVAL', 60), + 'max_message_size' => env('REVERB_APP_MAX_MESSAGE_SIZE', 10000), + ], + ], + + ], + +]; diff --git a/app/config/websockets.php b/app/config/websockets.php deleted file mode 100644 index 11fc1873..00000000 --- a/app/config/websockets.php +++ /dev/null @@ -1,141 +0,0 @@ - [ - 'port' => env('LARAVEL_WEBSOCKETS_PORT', 6001), - ], - - /* - * This package comes with multi tenancy out of the box. Here you can - * configure the different apps that can use the webSockets server. - * - * Optionally you specify capacity so you can limit the maximum - * concurrent connections for a specific app. - * - * Optionally you can disable client events so clients cannot send - * messages to each other via the webSockets. - */ - 'apps' => [ - [ - 'id' => env('PUSHER_APP_ID'), - 'name' => env('APP_NAME'), - 'key' => env('PUSHER_APP_KEY'), - 'secret' => env('PUSHER_APP_SECRET'), - 'path' => env('PUSHER_APP_PATH'), - 'capacity' => null, - 'enable_client_messages' => false, - 'enable_statistics' => true, - ], - ], - - /* - * This class is responsible for finding the apps. The default provider - * will use the apps defined in this config file. - * - * You can create a custom provider by implementing the - * `AppProvider` interface. - */ - 'app_provider' => BeyondCode\LaravelWebSockets\Apps\ConfigAppProvider::class, - - /* - * This array contains the hosts of which you want to allow incoming requests. - * Leave this empty if you want to accept requests from all hosts. - */ - 'allowed_origins' => [ - // - ], - - /* - * The maximum request size in kilobytes that is allowed for an incoming WebSocket request. - */ - 'max_request_size_in_kb' => 250, - - /* - * This path will be used to register the necessary routes for the package. - */ - 'path' => 'laravel-websockets', - - /* - * Dashboard Routes Middleware - * - * These middleware will be assigned to every dashboard route, giving you - * the chance to add your own middleware to this list or change any of - * the existing middleware. Or, you can simply stick with this list. - */ - 'middleware' => [ - 'web', - Authorize::class, - ], - - 'statistics' => [ - /* - * This model will be used to store the statistics of the WebSocketsServer. - * The only requirement is that the model should extend - * `WebSocketsStatisticsEntry` provided by this package. - */ - 'model' => \BeyondCode\LaravelWebSockets\Statistics\Models\WebSocketsStatisticsEntry::class, - - /** - * The Statistics Logger will, by default, handle the incoming statistics, store them - * and then release them into the database on each interval defined below. - */ - 'logger' => BeyondCode\LaravelWebSockets\Statistics\Logger\HttpStatisticsLogger::class, - - /* - * Here you can specify the interval in seconds at which statistics should be logged. - */ - 'interval_in_seconds' => 60, - - /* - * When the clean-command is executed, all recorded statistics older than - * the number of days specified here will be deleted. - */ - 'delete_statistics_older_than_days' => 60, - - /* - * Use an DNS resolver to make the requests to the statistics logger - * default is to resolve everything to 127.0.0.1. - */ - 'perform_dns_lookup' => false, - ], - - /* - * Define the optional SSL context for your WebSocket connections. - * You can see all available options at: http://php.net/manual/en/context.ssl.php - */ - 'ssl' => [ - /* - * Path to local certificate file on filesystem. It must be a PEM encoded file which - * contains your certificate and private key. It can optionally contain the - * certificate chain of issuers. The private key also may be contained - * in a separate file specified by local_pk. - */ - 'local_cert' => env('LARAVEL_WEBSOCKETS_SSL_LOCAL_CERT', null), - - /* - * Path to local private key file on filesystem in case of separate files for - * certificate (local_cert) and private key. - */ - 'local_pk' => env('LARAVEL_WEBSOCKETS_SSL_LOCAL_PK', null), - - /* - * Passphrase for your local_cert file. - */ - 'passphrase' => env('LARAVEL_WEBSOCKETS_SSL_PASSPHRASE', null), - ], - - /* - * Channel Manager - * This class handles how channel persistence is handled. - * By default, persistence is stored in an array by the running webserver. - * The only requirement is that the class should implement - * `ChannelManager` interface provided by this package. - */ - 'channel_manager' => \BeyondCode\LaravelWebSockets\WebSockets\Channels\ChannelManagers\ArrayChannelManager::class, -]; diff --git a/app/database/migrations/0000_00_00_000000_create_websockets_statistics_entries_table.php b/app/database/migrations/0000_00_00_000000_create_websockets_statistics_entries_table.php deleted file mode 100644 index 1b89b4af..00000000 --- a/app/database/migrations/0000_00_00_000000_create_websockets_statistics_entries_table.php +++ /dev/null @@ -1,35 +0,0 @@ -increments('id'); - $table->string('app_id'); - $table->integer('peak_connection_count'); - $table->integer('websocket_message_count'); - $table->integer('api_message_count'); - $table->nullableTimestamps(); - }); - } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::dropIfExists('websockets_statistics_entries'); - } -} diff --git a/app/package-lock.json b/app/package-lock.json index 921d0223..5f5b715d 100644 --- a/app/package-lock.json +++ b/app/package-lock.json @@ -5,7 +5,7 @@ "packages": { "": { "devDependencies": { - "@protonemedia/laravel-splade": "file:../protonemedia-laravel-splade-1.4.14.tgz", + "@protonemedia/laravel-splade": "file:../protonemedia-laravel-splade-1.4.19.tgz", "@tailwindcss/forms": "^0.5.2", "@tailwindcss/typography": "^0.5.2", "@vitejs/plugin-vue": "^4.1.0", @@ -34,9 +34,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", - "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.1.tgz", + "integrity": "sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -46,21 +46,21 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.5.tgz", - "integrity": "sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.1.tgz", + "integrity": "sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@esbuild/android-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", - "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], @@ -74,9 +74,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", - "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], @@ -90,9 +90,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", - "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], @@ -106,9 +106,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", - "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], @@ -122,9 +122,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", - "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], @@ -138,9 +138,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", - "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], @@ -154,9 +154,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", - "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], @@ -170,9 +170,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", - "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], @@ -186,9 +186,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", - "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], @@ -202,9 +202,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", - "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], @@ -218,9 +218,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", - "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], @@ -234,9 +234,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", - "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], @@ -250,9 +250,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", - "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], @@ -266,9 +266,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", - "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], @@ -282,9 +282,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", - "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], @@ -298,9 +298,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", - "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], @@ -314,9 +314,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", - "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], @@ -330,9 +330,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", - "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], @@ -346,9 +346,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", - "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], @@ -362,9 +362,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", - "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], @@ -378,9 +378,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", - "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], @@ -394,9 +394,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", - "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -409,33 +409,50 @@ "node": ">=12" } }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, "engines": { "node": ">=6.0.0" @@ -448,21 +465,15 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -498,10 +509,20 @@ "node": ">= 8" } }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, "node_modules/@protonemedia/laravel-splade": { - "version": "1.4.14", - "resolved": "file:../protonemedia-laravel-splade-1.4.14.tgz", - "integrity": "sha512-j/3WR3Sp/WOM85locYOG2HvzztyK1MUE458YJAGSvjgGBsxcTbcfrIXxJYG7fLZ4eTcGqK3NPkwqS0ofiigrDw==", + "version": "1.4.19", + "resolved": "file:../protonemedia-laravel-splade-1.4.19.tgz", + "integrity": "sha512-iOwFTjWpnRS3MbEgkFwSU4y+53XdlWZ9co5T+MAix6rKyy405EXsOi/uKfW8OoY2ZNmZtJjRCKoKSe7/BpmI6A==", "dev": true, "license": "MIT", "dependencies": { @@ -523,9 +544,9 @@ } }, "node_modules/@tailwindcss/forms": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.3.tgz", - "integrity": "sha512-y5mb86JUoiUgBjY/o6FJSFZSEttfb3Q5gllE4xoKjAAD+vBrnIhE4dViwUuow3va8mpH4s9jyUbUbrRGoRdc2Q==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.7.tgz", + "integrity": "sha512-QE7X69iQI+ZXwldE+rzasvbJiyV/ju1FGHH0Qn2W3FKbuYtqp8LKcy6iSw79fVUT5/Vvf+0XgLCeYVG+UV6hOw==", "dev": true, "dependencies": { "mini-svg-data-uri": "^1.2.3" @@ -535,9 +556,9 @@ } }, "node_modules/@tailwindcss/typography": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.9.tgz", - "integrity": "sha512-t8Sg3DyynFysV9f4JDOVISGsjazNb48AeIYQwcL+Bsq5uf4RYL75C1giZ43KISjeDGBaTN3Kxh7Xj/vRSMJUUg==", + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.10.tgz", + "integrity": "sha512-Pe8BuPJQJd3FfRnm6H0ulKIGoMEQS+Vq01R6M5aCrFB/ccR/shT+0kXLjouGC1gFLm9hopTFN+DMP0pfwRWzPw==", "dev": true, "dependencies": { "lodash.castarray": "^4.4.0", @@ -561,148 +582,159 @@ } }, "node_modules/@types/node": { - "version": "14.18.51", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.51.tgz", - "integrity": "sha512-P9bsdGFPpVtofEKlhWMVS2qqx1A/rt9QBfihWlklfHHpUpjtYse5AzFz6j4DWrARLYh6gRnw9+5+DJcrq3KvBA==", + "version": "14.18.63", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.63.tgz", + "integrity": "sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ==", "dev": true }, "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "version": "6.9.13", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.13.tgz", + "integrity": "sha512-iLR+1vTTJ3p0QaOUq6ACbY1mzKTODFDT/XedZI8BksOotFmL4ForwDfRQ/DZeuTHR7/2i4lI1D203gdfxuqTlA==", "dev": true }, "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", "dev": true }, "node_modules/@vitejs/plugin-vue": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.2.3.tgz", - "integrity": "sha512-R6JDUfiZbJA9cMiguQ7jxALsgiprjBeHL5ikpXfJCH62pPHtI+JdJ5xWj6Ev73yXSlYl86+blXn1kZHQ7uElxw==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.6.2.tgz", + "integrity": "sha512-kqf7SGFoG+80aZG6Pf+gsZIVvGSCKE98JbiWqcCV9cThtg91Jav0yvYFC9Zb+jKetNGF6ZKeoaxgZfND21fWKw==", "dev": true, "engines": { "node": "^14.18.0 || >=16.0.0" }, "peerDependencies": { - "vite": "^4.0.0", + "vite": "^4.0.0 || ^5.0.0", "vue": "^3.2.25" } }, "node_modules/@vue/compiler-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz", - "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.21.tgz", + "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", "dev": true, "dependencies": { - "@babel/parser": "^7.21.3", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.9", + "@vue/shared": "3.4.21", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz", - "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", + "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", "dev": true, "dependencies": { - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz", - "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", + "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-ssr": "3.3.4", - "@vue/reactivity-transform": "3.3.4", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.9", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21", "estree-walker": "^2.0.2", - "magic-string": "^0.30.0", - "postcss": "^8.1.10", + "magic-string": "^0.30.7", + "postcss": "^8.4.35", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz", - "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", + "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21" } }, "node_modules/@vue/reactivity": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz", - "integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==", - "dev": true, - "dependencies": { - "@vue/shared": "3.3.4" - } - }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz", - "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.21.tgz", + "integrity": "sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.0" + "@vue/shared": "3.4.21" } }, "node_modules/@vue/runtime-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz", - "integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.21.tgz", + "integrity": "sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==", "dev": true, "dependencies": { - "@vue/reactivity": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/reactivity": "3.4.21", + "@vue/shared": "3.4.21" } }, "node_modules/@vue/runtime-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz", - "integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.21.tgz", + "integrity": "sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==", "dev": true, "dependencies": { - "@vue/runtime-core": "3.3.4", - "@vue/shared": "3.3.4", - "csstype": "^3.1.1" + "@vue/runtime-core": "3.4.21", + "@vue/shared": "3.4.21", + "csstype": "^3.1.3" } }, "node_modules/@vue/server-renderer": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz", - "integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.21.tgz", + "integrity": "sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==", "dev": true, "dependencies": { - "@vue/compiler-ssr": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21" }, "peerDependencies": { - "vue": "3.3.4" + "vue": "3.4.21" } }, "node_modules/@vue/shared": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz", - "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.21.tgz", + "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==", "dev": true }, + "node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/any-promise": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", @@ -745,9 +777,9 @@ } }, "node_modules/autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "version": "10.4.18", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.18.tgz", + "integrity": "sha512-1DKbDfsr6KUElM6wg+0zRNkB/Q7WcKYAaK+pzXn+Xqmszm/5Xa9coeNdtP88Vi+dPzZnMjhge8GIV49ZQkDa+g==", "dev": true, "funding": [ { @@ -757,12 +789,16 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", + "browserslist": "^4.23.0", + "caniuse-lite": "^1.0.30001591", + "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" @@ -784,12 +820,12 @@ "dev": true }, "node_modules/axios": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz", - "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==", + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", + "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", "dev": true, "dependencies": { - "follow-redirects": "^1.15.0", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } @@ -801,22 +837,24 @@ "dev": true }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "balanced-match": "^1.0.0" } }, "node_modules/braces": { @@ -832,9 +870,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.8", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.8.tgz", - "integrity": "sha512-j+7xYe+v+q2Id9qbBeCI8WX5NmZSRe8es1+0xntD/+gaWXznP8tFEkv5IgSaHf5dS1YwVMbX/4W6m937mj+wQw==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, "funding": [ { @@ -851,10 +889,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001502", - "electron-to-chromium": "^1.4.428", - "node-releases": "^2.0.12", - "update-browserslist-db": "^1.0.11" + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" }, "bin": { "browserslist": "cli.js" @@ -873,9 +911,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001503", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001503.tgz", - "integrity": "sha512-Sf9NiF+wZxPfzv8Z3iS0rXM1Do+iOy2Lxvib38glFX+08TCYYYGR5fRJXk4d77C4AYwhUjgYgMsMudbh2TqCKw==", + "version": "1.0.30001599", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001599.tgz", + "integrity": "sha512-LRAQHZ4yT1+f9LemSMeqdMpMxZcc4RMWdj4tiFe3G8tNkWK+E58g+/tzotb5cU6TbcVJLr4fySiAW7XmxQvZQA==", "dev": true, "funding": [ { @@ -904,16 +942,10 @@ } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -926,6 +958,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -942,6 +977,24 @@ "node": ">= 6" } }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -963,16 +1016,10 @@ "node": ">= 6" } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, "node_modules/core-js": { - "version": "3.31.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.31.0.tgz", - "integrity": "sha512-NIp2TQSGfR6ba5aalZD+ZQ1fSxGhDo/s1w0nx3RYzf2pnJxt7YynxFlFScP6eV7+GZsKO95NSjGxyJsU3DZgeQ==", + "version": "3.36.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.36.1.tgz", + "integrity": "sha512-BTvUrwxVBezj5SZ3f10ImnX2oRByMxql3EimVqMysepbC9EeMUOpLwdy6Eoili2x6E4kf+ZUB5k/+Jv55alPfA==", "dev": true, "hasInstallScript": true, "funding": { @@ -980,6 +1027,20 @@ "url": "https://opencollective.com/core-js" } }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/cssesc": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", @@ -993,9 +1054,9 @@ } }, "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", "dev": true }, "node_modules/deepmerge": { @@ -1028,16 +1089,40 @@ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", "dev": true }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, "node_modules/electron-to-chromium": { - "version": "1.4.430", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.430.tgz", - "integrity": "sha512-FytjTbGwz///F+ToZ5XSeXbbSaXalsVRXsz2mHityI5gfxft7ieW3HqFLkU5V1aIrY42aflICqbmFoDxW10etg==", + "version": "1.4.711", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.711.tgz", + "integrity": "sha512-hRg81qzvUEibX2lDxnFlVCHACa+LtrCPIsWAxo161LDYIB3jauf57RGsMZV9mvGwE98yGH06icj3zBEoOkxd/w==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", "dev": true }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/esbuild": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", - "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1047,34 +1132,34 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.17.19", - "@esbuild/android-arm64": "0.17.19", - "@esbuild/android-x64": "0.17.19", - "@esbuild/darwin-arm64": "0.17.19", - "@esbuild/darwin-x64": "0.17.19", - "@esbuild/freebsd-arm64": "0.17.19", - "@esbuild/freebsd-x64": "0.17.19", - "@esbuild/linux-arm": "0.17.19", - "@esbuild/linux-arm64": "0.17.19", - "@esbuild/linux-ia32": "0.17.19", - "@esbuild/linux-loong64": "0.17.19", - "@esbuild/linux-mips64el": "0.17.19", - "@esbuild/linux-ppc64": "0.17.19", - "@esbuild/linux-riscv64": "0.17.19", - "@esbuild/linux-s390x": "0.17.19", - "@esbuild/linux-x64": "0.17.19", - "@esbuild/netbsd-x64": "0.17.19", - "@esbuild/openbsd-x64": "0.17.19", - "@esbuild/sunos-x64": "0.17.19", - "@esbuild/win32-arm64": "0.17.19", - "@esbuild/win32-ia32": "0.17.19", - "@esbuild/win32-x64": "0.17.19" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "dev": true, "engines": { "node": ">=6" @@ -1087,9 +1172,9 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", @@ -1115,18 +1200,18 @@ } }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, "dependencies": { "reusify": "^1.0.4" } }, "node_modules/filepond": { - "version": "4.30.4", - "resolved": "https://registry.npmjs.org/filepond/-/filepond-4.30.4.tgz", - "integrity": "sha512-FCwsMvG9iiEs6uobdDrTaKsCgsqys0NuLgPPD8n37AYVYBiiDkrPkk9MSIU5rT2FahYcL1bScYI9huIPtlzqyA==", + "version": "4.30.6", + "resolved": "https://registry.npmjs.org/filepond/-/filepond-4.30.6.tgz", + "integrity": "sha512-gBsVKJgr5HFTkQSA/3R6utne4Qt6Pue0O3+k3IjjVBbaQxMgGMI0fXwoob9SdRRoULCs8BAhWjttM28hOAi/0w==", "dev": true }, "node_modules/filepond-plugin-file-validate-size": { @@ -1139,9 +1224,9 @@ } }, "node_modules/filepond-plugin-file-validate-type": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/filepond-plugin-file-validate-type/-/filepond-plugin-file-validate-type-1.2.8.tgz", - "integrity": "sha512-UBTqIWbk5+5R0GBELI8svu01MHWjFSLfc9DfCMvFtHKXLdJMxY1p37ChC4YKQjhfODaTuvLnNVRsukMGMFZBBg==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/filepond-plugin-file-validate-type/-/filepond-plugin-file-validate-type-1.2.9.tgz", + "integrity": "sha512-Tzv07aNdZvjUXDRA3XL16QMEvh6llDrXlcZ6W0eTHQ+taHaVg/JKJTFs/AViO+6ZcpPCcQStbhYEL2HoS+vldw==", "dev": true, "peerDependencies": { "filepond": ">=1.x <5.x" @@ -1157,9 +1242,9 @@ } }, "node_modules/filepond-plugin-image-preview": { - "version": "4.6.11", - "resolved": "https://registry.npmjs.org/filepond-plugin-image-preview/-/filepond-plugin-image-preview-4.6.11.tgz", - "integrity": "sha512-0EmQ9HnOb/X0xc5rLcNRhhmdUbp7oiicRwQrcr90ZfVmPJOOZoX3ZGUEsEPj7luMI55huguhcVozdESxtqnuRw==", + "version": "4.6.12", + "resolved": "https://registry.npmjs.org/filepond-plugin-image-preview/-/filepond-plugin-image-preview-4.6.12.tgz", + "integrity": "sha512-Y8ETX5QVV0mbPB0586UH8AUmG9tZg8PuN5bdEAIlZVJFTct5ebViJ7+Am94/VhTPjLqZjBf1zmDq5JU6XRsZKw==", "dev": true, "peerDependencies": { "filepond": ">=4.x <5.x" @@ -1193,9 +1278,9 @@ "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true, "funding": [ { @@ -1212,6 +1297,22 @@ } } }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/form-data": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", @@ -1227,28 +1328,22 @@ } }, "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, "engines": { "node": "*" }, "funding": { "type": "patreon", - "url": "https://www.patreon.com/infusion" + "url": "https://github.com/sponsors/rawify" } }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -1260,10 +1355,13 @@ } }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/fuse.js": { "version": "6.6.2", @@ -1275,20 +1373,22 @@ } }, "node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -1306,34 +1406,18 @@ "node": ">=10.13.0" } }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dev": true, "dependencies": { - "function-bind": "^1.1.1" + "function-bind": "^1.1.2" }, "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "node": ">= 0.4" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -1347,12 +1431,12 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -1367,6 +1451,15 @@ "node": ">=0.10.0" } }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -1388,10 +1481,34 @@ "node": ">=0.12.0" } }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/jiti": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz", - "integrity": "sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", "dev": true, "bin": { "jiti": "bin/jiti.js" @@ -1408,9 +1525,9 @@ } }, "node_modules/laravel-echo": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/laravel-echo/-/laravel-echo-1.15.1.tgz", - "integrity": "sha512-rW9XTXqs1v3sgcSFz7aE3/MPa2lfZjnsV/hrjyS/VYecQAx1lSP0hg3KumuR6ftkeneM093tVvTkRyKFumSyXg==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/laravel-echo/-/laravel-echo-1.16.0.tgz", + "integrity": "sha512-BJGUa4tcKvYmTkzTmcBGMHiO2tq+k7Do5wPmLbRswWfzKwyfZEUR+J5iwBTPEfLLwNPZlA9Kjo6R/NV6pmyIpg==", "dev": true, "engines": { "node": ">=10" @@ -1471,13 +1588,22 @@ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true }, + "node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/magic-string": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.0.tgz", - "integrity": "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==", + "version": "0.30.8", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.8.tgz", + "integrity": "sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==", "dev": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.13" + "@jridgewell/sourcemap-codec": "^1.4.15" }, "engines": { "node": ">=12" @@ -1536,15 +1662,27 @@ } }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" } }, "node_modules/mz": { @@ -1559,9 +1697,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, "funding": [ { @@ -1577,9 +1715,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", - "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, "node_modules/normalize-path": { @@ -1624,22 +1762,13 @@ "node": ">= 6" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/path-parse": { @@ -1648,6 +1777,22 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, + "node_modules/path-scurry": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "dev": true, + "dependencies": { + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", @@ -1676,18 +1821,18 @@ } }, "node_modules/pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true, "engines": { "node": ">= 6" } }, "node_modules/postcss": { - "version": "8.4.24", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", - "integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==", + "version": "8.4.37", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.37.tgz", + "integrity": "sha512-7iB/v/r7Woof0glKLH8b1SPHrsX7uhdO+Geb41QpF/+mWZHU3uxxSlN+UXGVit1PawOYDToO+AbZzhBzWRDwbQ==", "dev": true, "funding": [ { @@ -1704,9 +1849,9 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" }, "engines": { "node": "^10 || ^12 || >=14" @@ -1749,21 +1894,27 @@ } }, "node_modules/postcss-load-config": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz", - "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "lilconfig": "^2.0.5", - "yaml": "^2.1.1" + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" }, "engines": { "node": ">= 14" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, "peerDependencies": { "postcss": ">=8.0.9", "ts-node": ">=9.0.0" @@ -1777,6 +1928,18 @@ } } }, + "node_modules/postcss-load-config/node_modules/lilconfig": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, "node_modules/postcss-nested": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", @@ -1797,9 +1960,9 @@ } }, "node_modules/postcss-nested/node_modules/postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, "dependencies": { "cssesc": "^3.0.0", @@ -1896,18 +2059,18 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", "dev": true }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -1929,9 +2092,9 @@ } }, "node_modules/rollup": { - "version": "3.25.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.25.1.tgz", - "integrity": "sha512-tywOR+rwIt5m2ZAWSe5AIJcTat8vGlnPFAv15ycCrw33t6iFsXZ6mzHVFh2psSjxQPmI+xgzMZZizUAukBI4aQ==", + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -1967,24 +2130,153 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "dev": true, "engines": { "node": ">=0.10.0" } }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/sucrase": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.32.0.tgz", - "integrity": "sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==", + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", "dev": true, "dependencies": { "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", - "glob": "7.1.6", + "glob": "^10.3.10", "lines-and-columns": "^1.1.6", "mz": "^2.7.0", "pirates": "^4.0.1", @@ -1995,7 +2287,7 @@ "sucrase-node": "bin/sucrase-node" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/supports-preserve-symlinks-flag": { @@ -2011,9 +2303,9 @@ } }, "node_modules/tailwindcss": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.2.tgz", - "integrity": "sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz", + "integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==", "dev": true, "dependencies": { "@alloc/quick-lru": "^5.2.0", @@ -2021,10 +2313,10 @@ "chokidar": "^3.5.3", "didyoumean": "^1.2.2", "dlv": "^1.1.3", - "fast-glob": "^3.2.12", + "fast-glob": "^3.3.0", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", - "jiti": "^1.18.2", + "jiti": "^1.19.1", "lilconfig": "^2.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", @@ -2036,7 +2328,6 @@ "postcss-load-config": "^4.0.1", "postcss-nested": "^6.0.1", "postcss-selector-parser": "^6.0.11", - "postcss-value-parser": "^4.2.0", "resolve": "^1.22.2", "sucrase": "^3.32.0" }, @@ -2049,9 +2340,9 @@ } }, "node_modules/tailwindcss/node_modules/postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, "dependencies": { "cssesc": "^3.0.0", @@ -2107,9 +2398,9 @@ "dev": true }, "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "funding": [ { @@ -2143,14 +2434,14 @@ "dev": true }, "node_modules/vite": { - "version": "4.3.9", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.3.9.tgz", - "integrity": "sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.2.tgz", + "integrity": "sha512-tBCZBNSBbHQkaGyhGCDUGqeo2ph8Fstyp6FMSvTtsXeZSPpSMGlviAOav2hxVTqFcx8Hj/twtWKsMJXNY0xI8w==", "dev": true, "dependencies": { - "esbuild": "^0.17.5", - "postcss": "^8.4.23", - "rollup": "^3.21.0" + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" }, "bin": { "vite": "bin/vite.js" @@ -2158,12 +2449,16 @@ "engines": { "node": "^14.18.0 || >=16.0.0" }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, "optionalDependencies": { "fsevents": "~2.3.2" }, "peerDependencies": { "@types/node": ">= 14", "less": "*", + "lightningcss": "^1.21.0", "sass": "*", "stylus": "*", "sugarss": "*", @@ -2176,6 +2471,9 @@ "less": { "optional": true }, + "lightningcss": { + "optional": true + }, "sass": { "optional": true }, @@ -2191,42 +2489,150 @@ } }, "node_modules/vite-plugin-full-reload": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/vite-plugin-full-reload/-/vite-plugin-full-reload-1.0.5.tgz", - "integrity": "sha512-kVZFDFWr0DxiHn6MuDVTQf7gnWIdETGlZh0hvTiMXzRN80vgF4PKbONSq8U1d0WtHsKaFODTQgJeakLacoPZEQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vite-plugin-full-reload/-/vite-plugin-full-reload-1.1.0.tgz", + "integrity": "sha512-3cObNDzX6DdfhD9E7kf6w2mNunFpD7drxyNgHLw+XwIYAgb+Xt16SEXo0Up4VH+TMf3n+DSVJZtW2POBGcBYAA==", "dev": true, "dependencies": { "picocolors": "^1.0.0", "picomatch": "^2.3.1" + } + }, + "node_modules/vue": { + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.21.tgz", + "integrity": "sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==", + "dev": true, + "dependencies": { + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/runtime-dom": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21" }, "peerDependencies": { - "vite": "^2 || ^3 || ^4" + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/vue": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz", - "integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==", + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-sfc": "3.3.4", - "@vue/runtime-dom": "3.3.4", - "@vue/server-renderer": "3.3.4", - "@vue/shared": "3.3.4" + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/yaml": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz", - "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.1.tgz", + "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==", "dev": true, + "bin": { + "yaml": "bin.mjs" + }, "engines": { "node": ">= 14" } diff --git a/app/package.json b/app/package.json index 4f0b271a..96b00304 100644 --- a/app/package.json +++ b/app/package.json @@ -6,7 +6,7 @@ "pre-publish": "npm upgrade && vite build" }, "devDependencies": { - "@protonemedia/laravel-splade": "file:../protonemedia-laravel-splade-1.4.14.tgz", + "@protonemedia/laravel-splade": "file:../protonemedia-laravel-splade-1.4.19.tgz", "@tailwindcss/forms": "^0.5.2", "@tailwindcss/typography": "^0.5.2", "@vitejs/plugin-vue": "^4.1.0", diff --git a/app/phpunit.xml.dist b/app/phpunit.xml.dist index 38b5f726..cc4880bb 100644 --- a/app/phpunit.xml.dist +++ b/app/phpunit.xml.dist @@ -1,26 +1,22 @@ - - - - ./tests/Unit - - - ./tests/Feature - - - - - ./app - - - - - - - - - - - - + + + + ./tests/Unit + + + ./tests/Feature + + + + + + + + + + + + + diff --git a/app/resources/js/bootstrap.js b/app/resources/js/bootstrap.js index 9ee06b1a..9f85163b 100644 --- a/app/resources/js/bootstrap.js +++ b/app/resources/js/bootstrap.js @@ -24,13 +24,12 @@ import Pusher from "pusher-js"; window.Pusher = Pusher; const echoConfig = { - broadcaster: "pusher", - cluster: "eu", - key: import.meta.env.VITE_PUSHER_APP_KEY, - wsHost: import.meta.env.VITE_PUSHER_HOST ?? `ws-${import.meta.env.VITE_PUSHER_APP_CLUSTER}.pusher.com`, - wsPort: import.meta.env.VITE_PUSHER_PORT ?? 80, - wssPort: import.meta.env.VITE_PUSHER_PORT ?? 443, - forceTLS: (import.meta.env.VITE_PUSHER_SCHEME ?? "https") === "https", + broadcaster: "reverb", + key: import.meta.env.VITE_REVERB_APP_KEY, + wsHost: import.meta.env.VITE_REVERB_HOST, + wsPort: import.meta.env.VITE_REVERB_PORT, + wssPort: import.meta.env.VITE_REVERB_PORT, + forceTLS: (import.meta.env.VITE_REVERB_SCHEME ?? "https") === "https", enabledTransports: ["ws", "wss"], }; diff --git a/app/resources/views/table/projects.blade.php b/app/resources/views/table/projects.blade.php index 566da4af..01b38cd0 100644 --- a/app/resources/views/table/projects.blade.php +++ b/app/resources/views/table/projects.blade.php @@ -1,7 +1,7 @@ @extends('layout') @section('content') +

Big header to test scroll options

- - -@endsection \ No newline at end of file + +@endsection diff --git a/app/tests/Browser.php b/app/tests/Browser.php index 52213b9c..12478a13 100644 --- a/app/tests/Browser.php +++ b/app/tests/Browser.php @@ -71,4 +71,19 @@ public function attachToFilepond($path) return false; })->pause(250); } + + /** + * Scroll screen to element at the given selector. + * + * @param string $selector + * @return $this + */ + public function scrollToOffset($top) + { + $this->ensurejQueryIsAvailable(); + + $this->driver->executeScript("jQuery(\"html, body\").animate({scrollTop: {$top}}, 0);"); + + return $this; + } } diff --git a/app/tests/Browser/Bridge/InlineTest.php b/app/tests/Browser/Bridge/InlineTest.php index b789a603..576cfb68 100644 --- a/app/tests/Browser/Bridge/InlineTest.php +++ b/app/tests/Browser/Bridge/InlineTest.php @@ -16,7 +16,7 @@ public function it_supports_inline_templates() ->assertDontSeeIn('@ip', '.') ->type('hostname', 'google.com') ->press('Find IP') - ->waitForText('.', '@ip'); + ->waitForTextIn('@ip', '.'); }); } } diff --git a/app/tests/Browser/Form/SelectDependentTest.php b/app/tests/Browser/Form/SelectDependentTest.php index e021e594..2a67cad8 100644 --- a/app/tests/Browser/Form/SelectDependentTest.php +++ b/app/tests/Browser/Form/SelectDependentTest.php @@ -7,7 +7,7 @@ class SelectDependentTest extends DuskTestCase { - public function dependentUrls() + public static function dependentUrls() { return [ ['form/components/selectAsync/dependent'], diff --git a/app/tests/Browser/ModalTest.php b/app/tests/Browser/ModalTest.php index 3b56a16f..ec3c231c 100644 --- a/app/tests/Browser/ModalTest.php +++ b/app/tests/Browser/ModalTest.php @@ -264,7 +264,7 @@ public function it_can_have_a_slideover_with_different_max_widths($size, $expect }); } - public function sizeAndPixels() + public static function sizeAndPixels() { return [ ['sm', 384], diff --git a/app/tests/Browser/Table/PaginationTest.php b/app/tests/Browser/Table/PaginationTest.php index d46a0536..7da47dc6 100644 --- a/app/tests/Browser/Table/PaginationTest.php +++ b/app/tests/Browser/Table/PaginationTest.php @@ -11,7 +11,7 @@ */ class PaginationTest extends DuskTestCase { - public function simpleUrls() + public static function simpleUrls() { return [ ['/table/users/spatie/', 'simple'], diff --git a/app/tests/Browser/Table/ScrollTest.php b/app/tests/Browser/Table/ScrollTest.php new file mode 100644 index 00000000..9dcc018b --- /dev/null +++ b/app/tests/Browser/Table/ScrollTest.php @@ -0,0 +1,80 @@ +browse(function (Browser $browser) { + $firstProject = Project::orderBy('name')->first(); + $latestProject = Project::orderByDesc('name')->first(); + + $browser + ->visit('table/relationsAndExports') + ->assertSeeIn('tr:nth-child(1) td:nth-child(2)', $firstProject->name) + ->resize(1920, 540) + ->scrollToOffset(100); + + $scrollY = $browser->script('return window.scrollY'); + + $this->assertTrue($scrollY > 0); + + $browser + ->click('@sort-name') + ->waitForText($latestProject->name) + ->assertSeeIn('tr:nth-child(1) td:nth-child(2)', $latestProject->name) + ->pause(500); + + $this->assertEquals($scrollY, $browser->script('return window.scrollY')); + }); + } + + /** + * @test + */ + public function it_can_change_the_scroll_behaviour_on_pagination() + { + $this->browse(function (Browser $browser) { + $firstProject = Project::orderBy('name')->first(); + + // Scroll to top + $browser->visit('table/relationsAndExports') + ->resize(1920, 540) + ->click('@pagination-2') + ->waitUntilMissingText($firstProject->name) + ->pause(750); + + $this->assertEquals([0], $browser->script('return window.scrollY')); + + // Scroll to head + $browser->visit('table/relationsAndExports?paginationScroll=head') + ->resize(1920, 540) + ->click('@pagination-2') + ->waitUntilMissingText($firstProject->name) + ->pause(750); + + $this->assertEquals([true], $browser->script('return window.scrollY > 0')); + + // Preserve scroll + $browser->visit('table/relationsAndExports?paginationScroll=preserve') + ->resize(1920, 540) + ->scrollTo('@pagination-2') + ->click('@pagination-2') + ->waitUntilMissingText($firstProject->name) + ->pause(750); + + $this->assertEquals([true], $browser->script('return window.scrollY > 300')); + }); + } +} diff --git a/app/tests/Browser/UsesWebsocketsServerTrait.php b/app/tests/Browser/UsesWebsocketsServerTrait.php index 60679bd0..77eb52d8 100644 --- a/app/tests/Browser/UsesWebsocketsServerTrait.php +++ b/app/tests/Browser/UsesWebsocketsServerTrait.php @@ -2,9 +2,7 @@ namespace Tests\Browser; -use Illuminate\Broadcasting\Broadcasters\PusherBroadcaster; use Illuminate\Http\Client\ConnectionException; -use Illuminate\Support\Facades\Broadcast; use Illuminate\Support\Facades\Http; use Symfony\Component\Process\Process; @@ -14,17 +12,14 @@ trait UsesWebsocketsServerTrait protected function setUpUsesWebsocketsServerTrait() { - /** @var PusherBroadcaster $connection */ - $connection = Broadcast::connection(); + $reverbServer = config('reverb.servers.reverb'); - $settings = $connection->getPusher()->getSettings(); - - $url = "{$settings['scheme']}://{$settings['host']}:{$settings['port']}"; + $url = "{$reverbServer['host']}:{$reverbServer['port']}"; try { Http::get($url); } catch (ConnectionException $e) { - $this->websocketsServerProcess = tap(Process::fromShellCommandline('php artisan websockets:serve', base_path()))->start(); + $this->websocketsServerProcess = tap(Process::fromShellCommandline('php artisan reverb:start', base_path()))->start(); retry(10, function () use ($url) { Http::get($url); diff --git a/app/tests/DuskTestCase.php b/app/tests/DuskTestCase.php index c13e903f..a3f0e2e0 100644 --- a/app/tests/DuskTestCase.php +++ b/app/tests/DuskTestCase.php @@ -27,7 +27,7 @@ protected function newBrowser($driver) return new Browser($driver); } - public function tableUrls() + public static function tableUrls() { return [ ['/table/users/spatie/'], @@ -37,7 +37,7 @@ public function tableUrls() ]; } - public function booleanDataset() + public static function booleanDataset() { return [[false], [true]]; } diff --git a/app/tests/Unit/HeadTest.php b/app/tests/Unit/HeadTest.php index 466cadd0..e1446ce9 100644 --- a/app/tests/Unit/HeadTest.php +++ b/app/tests/Unit/HeadTest.php @@ -79,6 +79,38 @@ public function it_doesnt_append_the_suffix_if_its_the_same_as_the_title() $this->assertEquals('Laravel Splade', $head->getTitle()); } + /** @test */ + public function it_can_fill_the_twitter_defaults() + { + config([ + 'splade.seo.defaults.title' => 'Default Title', + 'splade.seo.defaults.description' => 'Default Description', + 'splade.seo.twitter.auto_fill' => true, + 'splade.seo.twitter.title' => null, + 'splade.seo.twitter.description' => null, + ]); + + $head = new Head; + + $this->assertEquals($head->getMetaByName('twitter:title')->first()->content, 'Default Title'); + $this->assertEquals($head->getMetaByName('twitter:description')->first()->content, 'Default Description'); + + } + + /** @test */ + public function it_can_fill_the_open_graph_defaults() + { + config([ + 'splade.seo.open_graph.auto_fill' => true, + 'splade.seo.defaults.title' => 'Default Title', + 'splade.seo.open_graph.title' => null, + ]); + + $head = new Head; + + $this->assertEquals($head->getMetaByProperty('og:title')->first()->content, 'Default Title'); + } + /** @test */ public function it_can_fill_the_twitter_defaults_and_then_auto_fills() { diff --git a/composer.json b/composer.json index e7924c6c..bb038ea4 100644 --- a/composer.json +++ b/composer.json @@ -16,18 +16,18 @@ } ], "require": { - "php": "^8.0 || ^8.1 || ^8.2", - "illuminate/contracts": "^9.41|^10.0" + "php": "^8.2|^8.3", + "illuminate/contracts": "^10.48.2|^11.0.1" }, "require-dev": { "laravel/pint": "^1.0", - "nunomaduro/collision": "^6.0", + "nunomaduro/collision": "^7.10|^8.1", "nunomaduro/larastan": "^2.0.1", - "orchestra/testbench": "^7.7|^8.0", - "phpunit/phpunit": "^9.5" + "orchestra/testbench": "^8.0|^9.0", + "phpunit/phpunit": "^10.4" }, "suggest": { - "kirschbaum-development/eloquent-power-joins": "Required to enable support sorting by (nested) relationships in Splade Tables (^2.6)", + "kirschbaum-development/eloquent-power-joins": "Required to enable support sorting by (nested) relationships in Splade Tables (^3.0)", "maatwebsite/excel": "Required to enable support exports in Splade Tables (^3.1)", "spatie/fractalistic": "Required to enable support for Fractal transformers (^2.9)" }, diff --git a/dist/CompilerErrorMessages-46cd4e60.cjs b/dist/CompilerErrorMessages-46cd4e60.cjs deleted file mode 100644 index fc5f98e3..00000000 --- a/dist/CompilerErrorMessages-46cd4e60.cjs +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={[0]:"Illegal comment.",[1]:"CDATA section is allowed only in XML context.",[2]:"Duplicate attribute.",[3]:"End tag cannot have attributes.",[4]:"Illegal '/' in tags.",[5]:"Unexpected EOF in tag.",[6]:"Unexpected EOF in CDATA section.",[7]:"Unexpected EOF in comment.",[8]:"Unexpected EOF in script.",[9]:"Unexpected EOF in tag.",[10]:"Incorrectly closed comment.",[11]:"Incorrectly opened comment.",[12]:"Illegal tag name. Use '<' to print '<'.",[13]:"Attribute value was expected.",[14]:"End tag name was expected.",[15]:"Whitespace was expected.",[16]:"Unexpected '`; - }), (!l || !o) && (s += ``)) : (l && Rt.value++, (!l || !o) && (ie.value++, tt[ie.value] = tt[ie.value] || new vi(ie.value))); + const o = Object.keys(R.value.dynamics).length > 0, l = Object.keys(a).length > 0; + t ? (l && te(a, (f, h) => { + a[h] += ``; + }), (!l || !o) && (s += ``)) : (l && Mt.value++, (!l || !o) && (ie.value++, tt[ie.value] = tt[ie.value] || new yi(ie.value))); let u = e.data.splade.persistentLayout && i === e.data.splade.persistentLayout, c = 0; - !$e && t && e.data.splade.preserveScroll && (c = window.scrollY), Hr( - u ? B.value.html : s, - c + !$e && e.data.splade.preserveScroll && (c = window.scrollY), Ur( + u ? R.value.html : s, + c, + !t && !e.data.splade.preventViewTransition ); - const m = Dr( + const v = Dr( n, e.data.splade.head, - u ? B.value.html : s, + u ? R.value.html : s, a, - B.value.rememberedState ? { ...B.value.rememberedState } : {}, + R.value.rememberedState ? { ...R.value.rememberedState } : {}, ie.value, - Rt.value, + Mt.value, e.data.splade.persistentLayout ); - t ? gi(m) : po(m); + t ? bi(v) : ho(v); } -function go() { - ae.value--, Gt(bo(ae.value)); +function yo() { + ae.value--, Gt(wo(ae.value)); } -const yi = y({}), bi = (e) => yi.value[e], yo = (e) => Object.keys(bi.value[e]).length > 0, wi = y({}), bo = (e) => wi.value[e], Si = y({}), wo = (e) => Si.value[e], rt = y([]); -function So(e) { +const wi = y({}), Si = (e) => wi.value[e], bo = (e) => Object.keys(Si.value[e]).length > 0, Oi = y({}), wo = (e) => Oi.value[e], $i = y({}), So = (e) => $i.value[e], rt = y([]); +function Oo(e) { rt.value.push(e); } -const Oo = x(() => uo(rt.value)); -function $o(e) { +const $o = x(() => co(rt.value)); +function Eo(e) { rt.value[e].dismissed = !0, rt.value[e].html = null; } const Vr = y(null); -function Eo(e, t, r, n, i, s, a) { +function To(e, t, r, n, i, s, a) { let o, l; typeof i > "u" && (i = !1), typeof s > "u" && (s = !1), typeof a > "u" && (a = !1); - const u = new Promise((c, m) => { - o = c, l = m; + const u = new Promise((c, v) => { + o = c, l = v; }); return Vr.value = { title: e, @@ -321,48 +322,58 @@ function Eo(e, t, r, n, i, s, a) { confirmDanger: a }, u; } -function To() { +function xo() { Vr.value = null; } -const Oi = y({}); -function Ur(e) { - Nr.value = e.persistentLayout, Oi.value = e.shared ? e.shared : {}, Si.value[ae.value] = e.flash ? e.flash : {}, wi.value[ae.value] = e.head ? e.head : {}, ao(e.toasts ? e.toasts : [], (t) => { +const Ei = y({}); +function Hr(e) { + Nr.value = e.persistentLayout, Ei.value = e.shared ? e.shared : {}, $i.value[ae.value] = e.flash ? e.flash : {}, Oi.value[ae.value] = e.head ? e.head : {}, oo(e.toasts ? e.toasts : [], (t) => { rt.value.push(t); - }), yi.value[ae.value] = e.errors ? e.errors : {}; + }), wi.value[ae.value] = e.errors ? e.errors : {}; } -const $i = y(() => { -}), Ei = y(() => { -}), Ti = y(() => { +const Ti = y(() => { }), xi = y(() => { +}), _i = y(() => { +}), Ii = y(() => { }); function Gt(e) { - $i.value(e); + Ti.value(e); } -function Hr(e, t) { - Ei.value(e, t); +function Ur(e, t, r) { + xi.value(e, t, r === !0); } -function _i(e, t) { - zt.value[ae.value] = !0, Ti.value(e, t); +function Ai(e, t) { + zt.value[ae.value] = !0, _i.value(e, t); } -function xo(e) { +function _o(e) { return zt.value[e]; } -function Ai(e) { - xi.value(e); +function Pi(e) { + Ii.value(e); } -const Ii = y({}); -function Pi(e, t, r) { - Ii.value[e] = t, r && _o(e, t); +const Wr = y({}); +function qi(e, t, r) { + Wr.value[e] = t, r && Io(e, t); +} +function zr() { + return JSON.parse(localStorage.getItem("splade") || "{}") || {}; } -function _o(e, t) { - let r = JSON.parse(localStorage.getItem("splade") || "{}") || {}; +function Io(e, t) { + let r = zr(); r[e] = t, localStorage.setItem("splade", JSON.stringify(r)); } function Ao(e, t) { - return t ? (JSON.parse(localStorage.getItem("splade") || "{}") || {})[e] : Ii.value[e]; + return t ? zr()[e] : Wr.value[e]; +} +function Po(e, t) { + if (t) { + let r = zr(); + delete r[e], localStorage.setItem("splade", JSON.stringify(r)); + } + delete Wr.value[e]; } function Ke(e, t, r, n, i, s) { - if ($e || Pi("scrollY", window.scrollY), t.toUpperCase() === "GET") { + if ($e || qi("scrollY", window.scrollY), t.toUpperCase() === "GET") { const o = new URLSearchParams(r).toString(); o != "" && (e = `${e.split("?")[0]}?${o}`), r = {}; } @@ -384,7 +395,7 @@ function Ke(e, t, r, n, i, s) { }); return a.then((o) => { const l = e.split("#")[1] || ""; - vo(o, i, l), ye("internal:request-response", { url: e, method: t, data: r, headers: n, replace: i, response: o }); + go(o, i, l), ye("internal:request-response", { url: e, method: t, data: r, headers: n, replace: i, response: o }); }).catch(async (o) => { if (ye("internal:request-error", { url: e, method: t, data: r, headers: n, replace: i, error: o }), !o.response) return; @@ -397,115 +408,116 @@ function Ke(e, t, r, n, i, s) { l.data.type === "application/json" && typeof c == "string" ? u = JSON.parse(c) || {} : l.data.html = c; } else u = l.data.splade; - u && !u.lazy && !u.rehydrate && Ur(u), l.status != 422 && Ai( + u && !u.lazy && !u.rehydrate && Hr(u), l.status != 422 && Pi( l.data.html ? l.data.html : l.data ); }), a; } -function qi(e, t) { +function Ci(e, t) { return typeof t > "u" && (t = {}), Ke(e, "GET", {}, t, !0); } -function Io(e, t) { +function qo(e, t) { return typeof t > "u" && (t = {}), Ke(e, "GET", {}, t, !1); } -function Po(e) { +function Co(e) { return Ke(e, "GET", {}, { "X-Splade-Modal": "modal" }, !1); } -const Wr = y({}); -function qo(e) { - const t = Wr.value[e]; - return t ? (ae.value++, _i(t.html, t.type), !0) : !1; +const Gr = y({}); +function Fo(e) { + const t = Gr.value[e]; + return t ? (ae.value++, Ai(t.html, t.type), !0) : !1; } -function Co(e, t, r) { - Wr.value[e] = { html: t, type: r }; +function ko(e, t, r) { + Gr.value[e] = { html: t, type: r }; } -function Fo(e) { +function Lo(e) { return Ke(e, "GET", {}, { "X-Splade-Modal": "slideover" }, !1); } -function ko(e, t) { +function Ro(e, t) { return Ke(e, "GET", {}, { "X-Splade-Lazy": t }, !1); } -function Lo(e, t) { +function Bo(e, t) { return Ke(e, "GET", {}, { "X-Splade-Rehydrate": t }, !1); } -function Bo(e) { +function jo(e) { typeof e > "u" && (e = !1); const t = { "X-Splade-Refresh": !0 }; - return e && (t["X-Splade-Preserve-Scroll"] = !0), qi(B.value.url, t); + return e && (t["X-Splade-Preserve-Scroll"] = !0), Ci(R.value.url, t); } -function jo(e, t) { +function Mo(e, t) { tt[ie.value].on(e, t); } -function Mo(e, t) { +function Do(e, t) { tt[ie.value].off(e, t); } function ye(e, t) { typeof t > "u" && (t = {}), tt[ie.value].emit(e, t), $e || document.dispatchEvent(new CustomEvent(`splade:${e}`, { detail: t })); } -const v = { - init: co, - replace: qi, - visit: Io, - modal: Po, - slideover: Fo, - refresh: Bo, +const p = { + init: fo, + replace: Ci, + visit: qo, + modal: Co, + slideover: Lo, + refresh: jo, request: Ke, - lazy: ko, - rehydrate: Lo, - replaceUrlOfCurrentPage: ho, + lazy: Ro, + rehydrate: Bo, + replaceUrlOfCurrentPage: mo, htmlForDynamicComponent(e) { - return B.value.dynamics[e]; + return R.value.dynamics[e]; }, setOnHead(e) { - $i.value = e; + Ti.value = e; }, setOnHtml(e) { - Ei.value = e; + xi.value = e; }, setOnModal(e) { - Ti.value = e; + _i.value = e; }, setOnServerError(e) { - xi.value = e; + Ii.value = e; }, - onServerError: Ai, - hasValidationErrors: yo, - validationErrors: bi, - sharedData: Oi, + onServerError: Pi, + hasValidationErrors: bo, + validationErrors: Si, + sharedData: Ei, // ref - flashData: wo, + flashData: So, toasts: rt, // ref - toastsReversed: Oo, + toastsReversed: $o, // ref confirmModal: Vr, // ref - confirm: Eo, - clearConfirmModal: To, - pushToast: So, - dismissToast: $o, + confirm: To, + clearConfirmModal: xo, + pushToast: Oo, + dismissToast: Eo, restore: Ao, - remember: Pi, - popStack: go, + remember: qi, + forget: Po, + popStack: yo, currentStack: ae, // ref - stackType: xo, - pageVisitId: x(() => B.value.pageVisitId), + stackType: _o, + pageVisitId: x(() => R.value.pageVisitId), // ref - dynamicVisitId: x(() => B.value.dynamicVisitId), + dynamicVisitId: x(() => R.value.dynamicVisitId), // ref isSsr: $e, - openPreloadedModal: qo, - registerPreloadedModal: Co, - on: jo, - off: Mo, + openPreloadedModal: Fo, + registerPreloadedModal: ko, + on: Mo, + off: Do, emit: ye }; -var Ro = "[object String]"; +var No = "[object String]"; function se(e) { - return typeof e == "string" || !R(e) && Le(e) && je(e) == Ro; + return typeof e == "string" || !M(e) && Le(e) && Be(e) == No; } const ue = { __name: "Render", @@ -532,12 +544,12 @@ const ue = { return { ...t.passthrough }; } }), Oe(() => { - v.emit("rendered"); + p.emit("rendered"); }); } - return ot(() => t.html, n, { immediate: !0 }), (i, s) => e.html ? (j(), X(ee(r), { key: 0 })) : Fr("", !0); + return ot(() => t.html, n, { immediate: !0 }), (i, s) => e.html ? (B(), X(ee(r), { key: 0 })) : Fr("", !0); } -}, Do = { +}, Vo = { __name: "ServerError", props: { html: { @@ -547,33 +559,33 @@ const ue = { }, emits: ["close"], setup(e, { emit: t }) { - const r = e, n = y(null); - function i() { - const o = document.createElement("html"); - o.innerHTML = r.html, o.querySelectorAll("a").forEach((u) => u.setAttribute("target", "_top")), document.body.style.overflow = "hidden"; - const l = n.value; - if (!l.contentWindow) + const r = e, n = t, i = y(null); + function s() { + const l = document.createElement("html"); + l.innerHTML = r.html, l.querySelectorAll("a").forEach((c) => c.setAttribute("target", "_top")), document.body.style.overflow = "hidden"; + const u = i.value; + if (!u.contentWindow) throw new Error("iframe not yet ready."); - l.contentWindow.document.open(), l.contentWindow.document.write(o.outerHTML), l.contentWindow.document.close(), document.addEventListener("keydown", s); + u.contentWindow.document.open(), u.contentWindow.document.write(l.outerHTML), u.contentWindow.document.close(), document.addEventListener("keydown", a); } - function s(o) { - o.keyCode === 27 && a(); + function a(l) { + l.keyCode === 27 && o(); } - function a() { - document.body.style.overflow = "visible", document.removeEventListener("keydown", s), t("close"); + function o() { + document.body.style.overflow = "visible", document.removeEventListener("keydown", a), n("close"); } - return V(() => i()), (o, l) => (j(), ce("div", { + return V(() => s()), (l, u) => (B(), ce("div", { style: { position: "fixed", top: "0px", right: "0px", bottom: "0px", left: "0px", "z-index": "200000", "box-sizing": "border-box", height: "100vh", width: "100vw", "background-color": "rgb(0 0 0 / 0.75)", padding: "2rem" }, - onClick: a + onClick: o }, [ gr("iframe", { ref_key: "iframeElement", - ref: n, + ref: i, class: "bg-white w-full h-full" }, null, 512) ])); } -}, No = { +}, Ho = { __name: "SpladeApp", props: { el: { @@ -585,7 +597,7 @@ const ue = { type: String, required: !1, default: (e) => { - if (!v.isSsr) { + if (!p.isSsr) { const t = se(e.el) ? document.getElementById(e.el) : e.el; return JSON.parse(t.dataset.components) || ""; } @@ -595,7 +607,7 @@ const ue = { type: String, required: !1, default: (e) => { - if (!v.isSsr) { + if (!p.isSsr) { const t = se(e.el) ? document.getElementById(e.el) : e.el; return JSON.parse(t.dataset.html) || ""; } @@ -605,7 +617,7 @@ const ue = { type: Object, required: !1, default: (e) => { - if (!v.isSsr) { + if (!p.isSsr) { const t = se(e.el) ? document.getElementById(e.el) : e.el; return JSON.parse(t.dataset.dynamics) || {}; } @@ -615,7 +627,7 @@ const ue = { type: Object, required: !1, default: (e) => { - if (!v.isSsr) { + if (!p.isSsr) { const t = se(e.el) ? document.getElementById(e.el) : e.el; return JSON.parse(t.dataset.splade) || {}; } @@ -625,7 +637,7 @@ const ue = { setup(e) { const t = e; de("stack", 0); - const r = y(), n = y([]), i = y(null), s = y(null), a = y(!0), o = z("$spladeOptions") || {}, l = x(() => v.currentStack.value < 1 ? [] : { + const r = y(), n = y([]), i = y(null), s = y(null), a = y(!0), o = z("$spladeOptions") || {}, l = x(() => p.currentStack.value < 1 ? [] : { filter: "blur(4px)", "transition-property": "filter", "transition-duration": "150ms", @@ -634,101 +646,99 @@ const ue = { function u() { i.value = null; } - function c(p) { - n.value[p] = null, v.popStack(); + function c(h) { + n.value[h] = null, p.popStack(); } - function m(p) { - const h = document.createElement("meta"); - te(p, (d, b) => { - h[b] = d; - }), document.getElementsByTagName("head")[0].appendChild(h); + function v(h) { + const m = document.createElement("meta"); + te(h, (d, b) => { + m[b] = d; + }), document.getElementsByTagName("head")[0].appendChild(m); } - function g(p) { + function g(h) { var d; - let h = "meta"; - te(p, (b, O) => { - h = `${h}[${O}="${b}"]`; + let m = "meta"; + te(h, (b, O) => { + m = `${m}[${O}="${b}"]`; }); try { - (d = document.querySelector(h)) == null || d.remove(); + (d = document.querySelector(m)) == null || d.remove(); } catch { } } - v.setOnHead((p) => { - var h; - if (!v.isSsr) { + p.setOnHead((h) => { + var m; + if (!p.isSsr) { if (s.value === null) { - s.value = p.meta; + s.value = h.meta; return; } if (s.value.forEach((d) => { g(d); - }), s.value = p.meta, document.title = p.title, p.meta.forEach((d) => { - m(d); - }), (h = document.querySelector('link[rel="canonical"]')) == null || h.remove(), p.canonical) { + }), s.value = h.meta, document.title = h.title, h.meta.forEach((d) => { + v(d); + }), (m = document.querySelector('link[rel="canonical"]')) == null || m.remove(), h.canonical) { const d = document.createElement("link"); - d.rel = "canonical", d.href = p.canonical, document.getElementsByTagName("head")[0].appendChild(d); + d.rel = "canonical", d.href = h.canonical, document.getElementsByTagName("head")[0].appendChild(d); } } }); - const f = (p, h) => { - n.value = [], r.value = p, Oe(() => { - if (!v.isSsr) { + const f = (h, m) => { + n.value = [], r.value = h, Oe(() => { + if (!p.isSsr) { const d = window.location.hash; - d && document.getElementById(d.substring(1)) ? window.location.hash = d : window.scrollTo(0, h); + d && document.getElementById(d.substring(1)) ? window.location.hash = d : window.scrollTo(0, m); } o.transform_anchors && [...document.querySelectorAll("a")].forEach((d) => { d.href == "" || d.href.charAt(0) == "#" || d.__vnode.dynamicProps === null && (d.hasAttribute("download") || (d.onclick = function(b) { - b.preventDefault(), v.visit(d.href); + b.preventDefault(), p.visit(d.href); })); }); }); }; - return v.setOnHtml((p, h) => { - if (v.isSsr || !document.startViewTransition || !o.view_transitions) { - f(p, h); - return; - } - document.startViewTransition(() => f(p, h)); - }), v.setOnModal(function(p, h) { - n.value[v.currentStack.value] && (a.value = !1), n.value[v.currentStack.value] = { html: p, type: h }, Oe(() => { + return p.setOnHtml((h, m, d) => { + if (!p.isSsr && document.startViewTransition && o.view_transitions && d) + return document.startViewTransition(() => f(h, m)); + f(h, m); + }), p.setOnModal(function(h, m) { + n.value[p.currentStack.value] && (a.value = !1), n.value[p.currentStack.value] = { html: h, type: m }, Oe(() => { a.value = !0; }); - }), v.setOnServerError(function(p) { - i.value = p; - }), v.init(t.initialHtml, t.initialDynamics, t.initialSpladeData), V(() => { - if (v.isSsr) + }), p.setOnServerError(function(h) { + i.value = h; + }), p.init(t.initialHtml, t.initialDynamics, t.initialSpladeData), V(() => { + if (p.isSsr) return; - const p = se(t.el) ? document.getElementById(t.el) : t.el; - ["components", "html", "dynamics", "splade"].forEach((h) => { - delete p.dataset[h]; + const h = se(t.el) ? document.getElementById(t.el) : t.el; + ["components", "html", "dynamics", "splade"].forEach((m) => { + delete h.dataset[m]; }); - }), (p, h) => (j(), ce("div", null, [ - ee(v).isSsr ? (j(), X(ue, { - key: `visit.${ee(v).pageVisitId.value}`, - style: Mt(l.value), + }), (h, m) => (B(), ce("div", null, [ + ee(p).isSsr ? (B(), X(ue, { + key: `visit.${ee(p).pageVisitId.value}`, + style: jt(l.value), html: r.value - }, null, 8, ["style", "html"])) : (j(), X(ni, { + }, null, 8, ["style", "html"])) : (B(), X(si, { key: 0, max: ee(o).max_keep_alive }, [ - (j(), X(ue, { - key: `visit.${ee(v).pageVisitId.value}`, - style: Mt(l.value), + (B(), X(ue, { + key: `visit.${ee(p).pageVisitId.value}`, + style: jt(l.value), html: r.value }, null, 8, ["style", "html"])) ], 1032, ["max"])), - xs(ue, { html: e.components }, null, 8, ["html"]), - (j(!0), ce(kr, null, _s(ee(v).currentStack.value, (d) => (j(), X(ue, { + _s(ue, { html: e.components }, null, 8, ["html"]), + (B(!0), ce(kr, null, Is(ee(p).currentStack.value, (d) => (B(), X(ue, { key: `modal.${d}`, type: n.value[d].type, html: n.value[d].html, stack: d, - "on-top-of-stack": ee(v).currentStack.value === d, + "on-top-of-stack": ee(p).currentStack.value === d, animate: a.value, onClose: (b) => c(d) }, null, 8, ["type", "html", "stack", "on-top-of-stack", "animate", "onClose"]))), 128)), - i.value ? (j(), X(Do, { + i.value ? (B(), X(Vo, { key: 2, html: i.value, onClose: u @@ -736,38 +746,38 @@ const ue = { ])); } }; -function Pp(e) { - return () => N(No, e); +function Cp(e) { + return () => N(Ho, e); } -var Vo = Object.prototype, Uo = Vo.hasOwnProperty; -function Ho(e, t) { - return e != null && Uo.call(e, t); +var Uo = Object.prototype, Wo = Uo.hasOwnProperty; +function zo(e, t) { + return e != null && Wo.call(e, t); } -var Wo = "[object Symbol]"; +var Go = "[object Symbol]"; function Xt(e) { - return typeof e == "symbol" || Le(e) && je(e) == Wo; + return typeof e == "symbol" || Le(e) && Be(e) == Go; } -var zo = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, Go = /^\w*$/; -function zr(e, t) { - if (R(e)) +var Xo = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, Ko = /^\w*$/; +function Xr(e, t) { + if (M(e)) return !1; var r = typeof e; - return r == "number" || r == "symbol" || r == "boolean" || e == null || Xt(e) ? !0 : Go.test(e) || !zo.test(e) || t != null && e in Object(t); + return r == "number" || r == "symbol" || r == "boolean" || e == null || Xt(e) ? !0 : Ko.test(e) || !Xo.test(e) || t != null && e in Object(t); } -var Xo = ve["__core-js_shared__"]; -const cr = Xo; -var _n = function() { +var Jo = ve["__core-js_shared__"]; +const cr = Jo; +var An = function() { var e = /[^.]+$/.exec(cr && cr.keys && cr.keys.IE_PROTO || ""); return e ? "Symbol(src)_1." + e : ""; }(); -function Ko(e) { - return !!_n && _n in e; +function Qo(e) { + return !!An && An in e; } -var Jo = Function.prototype, Qo = Jo.toString; +var Yo = Function.prototype, Zo = Yo.toString; function Je(e) { if (e != null) { try { - return Qo.call(e); + return Zo.call(e); } catch { } try { @@ -777,49 +787,49 @@ function Je(e) { } return ""; } -var Yo = /[\\^$.*+?()[\]{}|]/g, Zo = /^\[object .+?Constructor\]$/, el = Function.prototype, tl = Object.prototype, rl = el.toString, nl = tl.hasOwnProperty, il = RegExp( - "^" + rl.call(nl).replace(Yo, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" +var el = /[\\^$.*+?()[\]{}|]/g, tl = /^\[object .+?Constructor\]$/, rl = Function.prototype, nl = Object.prototype, il = rl.toString, sl = nl.hasOwnProperty, al = RegExp( + "^" + il.call(sl).replace(el, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); -function sl(e) { - if (!J(e) || Ko(e)) +function ol(e) { + if (!J(e) || Qo(e)) return !1; - var t = pi(e) ? il : Zo; + var t = mi(e) ? al : tl; return t.test(Je(e)); } -function al(e, t) { +function ll(e, t) { return e == null ? void 0 : e[t]; } function Qe(e, t) { - var r = al(e, t); - return sl(r) ? r : void 0; + var r = ll(e, t); + return ol(r) ? r : void 0; } -var ol = Qe(Object, "create"); -const bt = ol; -function ll() { +var ul = Qe(Object, "create"); +const bt = ul; +function cl() { this.__data__ = bt ? bt(null) : {}, this.size = 0; } -function ul(e) { +function dl(e) { var t = this.has(e) && delete this.__data__[e]; return this.size -= t ? 1 : 0, t; } -var cl = "__lodash_hash_undefined__", dl = Object.prototype, fl = dl.hasOwnProperty; -function pl(e) { +var fl = "__lodash_hash_undefined__", pl = Object.prototype, hl = pl.hasOwnProperty; +function ml(e) { var t = this.__data__; if (bt) { var r = t[e]; - return r === cl ? void 0 : r; + return r === fl ? void 0 : r; } - return fl.call(t, e) ? t[e] : void 0; + return hl.call(t, e) ? t[e] : void 0; } -var hl = Object.prototype, ml = hl.hasOwnProperty; -function vl(e) { +var vl = Object.prototype, gl = vl.hasOwnProperty; +function yl(e) { var t = this.__data__; - return bt ? t[e] !== void 0 : ml.call(t, e); + return bt ? t[e] !== void 0 : gl.call(t, e); } -var gl = "__lodash_hash_undefined__"; -function yl(e, t) { +var bl = "__lodash_hash_undefined__"; +function wl(e, t) { var r = this.__data__; - return this.size += this.has(e) ? 0 : 1, r[e] = bt && t === void 0 ? gl : t, this; + return this.size += this.has(e) ? 0 : 1, r[e] = bt && t === void 0 ? bl : t, this; } function Ge(e) { var t = -1, r = e == null ? 0 : e.length; @@ -828,39 +838,39 @@ function Ge(e) { this.set(n[0], n[1]); } } -Ge.prototype.clear = ll; -Ge.prototype.delete = ul; -Ge.prototype.get = pl; -Ge.prototype.has = vl; -Ge.prototype.set = yl; -function bl() { +Ge.prototype.clear = cl; +Ge.prototype.delete = dl; +Ge.prototype.get = ml; +Ge.prototype.has = yl; +Ge.prototype.set = wl; +function Sl() { this.__data__ = [], this.size = 0; } -function Gr(e, t) { +function Kr(e, t) { return e === t || e !== e && t !== t; } function Kt(e, t) { for (var r = e.length; r--; ) - if (Gr(e[r][0], t)) + if (Kr(e[r][0], t)) return r; return -1; } -var wl = Array.prototype, Sl = wl.splice; -function Ol(e) { +var Ol = Array.prototype, $l = Ol.splice; +function El(e) { var t = this.__data__, r = Kt(t, e); if (r < 0) return !1; var n = t.length - 1; - return r == n ? t.pop() : Sl.call(t, r, 1), --this.size, !0; + return r == n ? t.pop() : $l.call(t, r, 1), --this.size, !0; } -function $l(e) { +function Tl(e) { var t = this.__data__, r = Kt(t, e); return r < 0 ? void 0 : t[r][1]; } -function El(e) { +function xl(e) { return Kt(this.__data__, e) > -1; } -function Tl(e, t) { +function _l(e, t) { var r = this.__data__, n = Kt(r, e); return n < 0 ? (++this.size, r.push([e, t])) : r[n][1] = t, this; } @@ -871,39 +881,39 @@ function Te(e) { this.set(n[0], n[1]); } } -Te.prototype.clear = bl; -Te.prototype.delete = Ol; -Te.prototype.get = $l; -Te.prototype.has = El; -Te.prototype.set = Tl; -var xl = Qe(ve, "Map"); -const wt = xl; -function _l() { +Te.prototype.clear = Sl; +Te.prototype.delete = El; +Te.prototype.get = Tl; +Te.prototype.has = xl; +Te.prototype.set = _l; +var Il = Qe(ve, "Map"); +const wt = Il; +function Al() { this.size = 0, this.__data__ = { hash: new Ge(), map: new (wt || Te)(), string: new Ge() }; } -function Al(e) { +function Pl(e) { var t = typeof e; return t == "string" || t == "number" || t == "symbol" || t == "boolean" ? e !== "__proto__" : e === null; } function Jt(e, t) { var r = e.__data__; - return Al(t) ? r[typeof t == "string" ? "string" : "hash"] : r.map; + return Pl(t) ? r[typeof t == "string" ? "string" : "hash"] : r.map; } -function Il(e) { +function ql(e) { var t = Jt(this, e).delete(e); return this.size -= t ? 1 : 0, t; } -function Pl(e) { +function Cl(e) { return Jt(this, e).get(e); } -function ql(e) { +function Fl(e) { return Jt(this, e).has(e); } -function Cl(e, t) { +function kl(e, t) { var r = Jt(this, e), n = r.size; return r.set(e, t), this.size += r.size == n ? 0 : 1, this; } @@ -914,15 +924,15 @@ function xe(e) { this.set(n[0], n[1]); } } -xe.prototype.clear = _l; -xe.prototype.delete = Il; -xe.prototype.get = Pl; -xe.prototype.has = ql; -xe.prototype.set = Cl; -var Fl = "Expected a function"; -function Xr(e, t) { +xe.prototype.clear = Al; +xe.prototype.delete = ql; +xe.prototype.get = Cl; +xe.prototype.has = Fl; +xe.prototype.set = kl; +var Ll = "Expected a function"; +function Jr(e, t) { if (typeof e != "function" || t != null && typeof t != "function") - throw new TypeError(Fl); + throw new TypeError(Ll); var r = function() { var n = arguments, i = t ? t.apply(this, n) : n[0], s = r.cache; if (s.has(i)) @@ -930,66 +940,66 @@ function Xr(e, t) { var a = e.apply(this, n); return r.cache = s.set(i, a) || s, a; }; - return r.cache = new (Xr.Cache || xe)(), r; + return r.cache = new (Jr.Cache || xe)(), r; } -Xr.Cache = xe; -var kl = 500; -function Ll(e) { - var t = Xr(e, function(n) { - return r.size === kl && r.clear(), n; +Jr.Cache = xe; +var Rl = 500; +function Bl(e) { + var t = Jr(e, function(n) { + return r.size === Rl && r.clear(), n; }), r = t.cache; return t; } -var Bl = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, jl = /\\(\\)?/g, Ml = Ll(function(e) { +var jl = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, Ml = /\\(\\)?/g, Dl = Bl(function(e) { var t = []; - return e.charCodeAt(0) === 46 && t.push(""), e.replace(Bl, function(r, n, i, s) { - t.push(i ? s.replace(jl, "$1") : n || r); + return e.charCodeAt(0) === 46 && t.push(""), e.replace(jl, function(r, n, i, s) { + t.push(i ? s.replace(Ml, "$1") : n || r); }), t; }); -const Rl = Ml; -function Ci(e, t) { +const Nl = Dl; +function Fi(e, t) { for (var r = -1, n = e == null ? 0 : e.length, i = Array(n); ++r < n; ) i[r] = t(e[r], r, e); return i; } -var Dl = 1 / 0, An = ke ? ke.prototype : void 0, In = An ? An.toString : void 0; +var Vl = 1 / 0, Pn = ke ? ke.prototype : void 0, qn = Pn ? Pn.toString : void 0; function Qt(e) { if (typeof e == "string") return e; - if (R(e)) - return Ci(e, Qt) + ""; + if (M(e)) + return Fi(e, Qt) + ""; if (Xt(e)) - return In ? In.call(e) : ""; + return qn ? qn.call(e) : ""; var t = e + ""; - return t == "0" && 1 / e == -Dl ? "-0" : t; + return t == "0" && 1 / e == -Vl ? "-0" : t; } -function Kr(e) { +function Qr(e) { return e == null ? "" : Qt(e); } -function Jr(e, t) { - return R(e) ? e : zr(e, t) ? [e] : Rl(Kr(e)); +function Yr(e, t) { + return M(e) ? e : Xr(e, t) ? [e] : Nl(Qr(e)); } -var Nl = 1 / 0; +var Hl = 1 / 0; function $t(e) { if (typeof e == "string" || Xt(e)) return e; var t = e + ""; - return t == "0" && 1 / e == -Nl ? "-0" : t; + return t == "0" && 1 / e == -Hl ? "-0" : t; } -function Fi(e, t, r) { - t = Jr(t, e); +function ki(e, t, r) { + t = Yr(t, e); for (var n = -1, i = t.length, s = !1; ++n < i; ) { var a = $t(t[n]); if (!(s = e != null && r(e, a))) break; e = e[a]; } - return s || ++n != i ? s : (i = e == null ? 0 : e.length, !!i && jr(i) && Br(a, i) && (R(e) || ui(e))); + return s || ++n != i ? s : (i = e == null ? 0 : e.length, !!i && Br(i) && Rr(a, i) && (M(e) || di(e))); } function W(e, t) { - return e != null && Fi(e, t, Ho); + return e != null && ki(e, t, zo); } -const Vl = { +const Ul = { props: { spinner: { type: Boolean, @@ -1014,14 +1024,14 @@ function fe(e, t, ...r) { var Dt = ((e) => (e[e.None = 0] = "None", e[e.RenderStrategy = 1] = "RenderStrategy", e[e.Static = 2] = "Static", e))(Dt || {}), Ce = ((e) => (e[e.Unmount = 0] = "Unmount", e[e.Hidden = 1] = "Hidden", e))(Ce || {}); function Z({ visible: e = !0, features: t = 0, ourProps: r, theirProps: n, ...i }) { var s; - let a = Li(n, r), o = Object.assign(i, { props: a }); + let a = Ri(n, r), o = Object.assign(i, { props: a }); if (e || t & 2 && a.static) return dr(o); if (t & 1) { let l = (s = a.unmount) == null || s ? 0 : 1; - return fe(l, { [0]() { + return fe(l, { 0() { return null; - }, [1]() { + }, 1() { return dr({ ...i, props: { ...a, hidden: !0, style: { display: "none" } } }); } }); } @@ -1031,32 +1041,32 @@ function dr({ props: e, attrs: t, slots: r, slot: n, name: i }) { var s, a; let { as: o, ...l } = Bi(e, ["unmount", "static"]), u = (s = r.default) == null ? void 0 : s.call(r, n), c = {}; if (n) { - let m = !1, g = []; - for (let [f, p] of Object.entries(n)) - typeof p == "boolean" && (m = !0), p === !0 && g.push(f); - m && (c["data-headlessui-state"] = g.join(" ")); + let v = !1, g = []; + for (let [f, h] of Object.entries(n)) + typeof h == "boolean" && (v = !0), h === !0 && g.push(f); + v && (c["data-headlessui-state"] = g.join(" ")); } if (o === "template") { - if (u = ki(u ?? []), Object.keys(l).length > 0 || Object.keys(t).length > 0) { - let [m, ...g] = u ?? []; - if (!Ul(m) || g.length > 0) - throw new Error(['Passing props on "template"!', "", `The current component <${i} /> is rendering a "template".`, "However we need to passthrough the following props:", Object.keys(l).concat(Object.keys(t)).map((h) => h.trim()).filter((h, d, b) => b.indexOf(h) === d).sort((h, d) => h.localeCompare(d)).map((h) => ` - ${h}`).join(` -`), "", "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((h) => ` - ${h}`).join(` + if (u = Li(u ?? []), Object.keys(l).length > 0 || Object.keys(t).length > 0) { + let [v, ...g] = u ?? []; + if (!Wl(v) || g.length > 0) + throw new Error(['Passing props on "template"!', "", `The current component <${i} /> is rendering a "template".`, "However we need to passthrough the following props:", Object.keys(l).concat(Object.keys(t)).map((m) => m.trim()).filter((m, d, b) => b.indexOf(m) === d).sort((m, d) => m.localeCompare(d)).map((m) => ` - ${m}`).join(` +`), "", "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((m) => ` - ${m}`).join(` `)].join(` `)); - let f = Li((a = m.props) != null ? a : {}, l), p = As(m, f); - for (let h in f) - h.startsWith("on") && (p.props || (p.props = {}), p.props[h] = f[h]); - return p; + let f = Ri((a = v.props) != null ? a : {}, l), h = As(v, f); + for (let m in f) + m.startsWith("on") && (h.props || (h.props = {}), h.props[m] = f[m]); + return h; } return Array.isArray(u) && u.length === 1 ? u[0] : u; } return N(o, Object.assign({}, l, c), { default: () => u }); } -function ki(e) { - return e.flatMap((t) => t.type === kr ? ki(t.children) : [t]); +function Li(e) { + return e.flatMap((t) => t.type === kr ? Li(t.children) : [t]); } -function Li(...e) { +function Ri(...e) { if (e.length === 0) return {}; if (e.length === 1) @@ -1084,15 +1094,15 @@ function Bi(e, t = []) { n in r && delete r[n]; return r; } -function Ul(e) { +function Wl(e) { return e == null ? !1 : typeof e.type == "string" || typeof e.type == "object" || typeof e.type == "function"; } -let Hl = 0; -function Wl() { - return ++Hl; +let zl = 0; +function Gl() { + return ++zl; } function Ye() { - return Wl(); + return Gl(); } var ji = ((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))(ji || {}); function D(e) { @@ -1101,19 +1111,19 @@ function D(e) { } let Mi = Symbol("Context"); var G = ((e) => (e[e.Open = 1] = "Open", e[e.Closed = 2] = "Closed", e[e.Closing = 4] = "Closing", e[e.Opening = 8] = "Opening", e))(G || {}); -function zl() { - return Qr() !== null; +function Xl() { + return Zr() !== null; } -function Qr() { +function Zr() { return z(Mi, null); } -function Gl(e) { +function Kl(e) { de(Mi, e); } -var Xl = Object.defineProperty, Kl = (e, t, r) => t in e ? Xl(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, Pn = (e, t, r) => (Kl(e, typeof t != "symbol" ? t + "" : t, r), r); -class Jl { +var Jl = Object.defineProperty, Ql = (e, t, r) => t in e ? Jl(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, Cn = (e, t, r) => (Ql(e, typeof t != "symbol" ? t + "" : t, r), r); +class Yl { constructor() { - Pn(this, "current", this.detect()), Pn(this, "currentId", 0); + Cn(this, "current", this.detect()), Cn(this, "currentId", 0); } set(t) { this.current !== t && (this.currentId = 0, this.current = t); @@ -1134,7 +1144,7 @@ class Jl { return typeof window > "u" || typeof document > "u" ? "server" : "client"; } } -let Et = new Jl(); +let Et = new Yl(); function Tt(e) { if (Et.isServer) return null; @@ -1148,16 +1158,16 @@ function Tt(e) { return document; } let br = ["[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 qe = ((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))(qe || {}), Ri = ((e) => (e[e.Error = 0] = "Error", e[e.Overflow = 1] = "Overflow", e[e.Success = 2] = "Success", e[e.Underflow = 3] = "Underflow", e))(Ri || {}), Ql = ((e) => (e[e.Previous = -1] = "Previous", e[e.Next = 1] = "Next", e))(Ql || {}); -function Yl(e = document.body) { +var qe = ((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))(qe || {}), Di = ((e) => (e[e.Error = 0] = "Error", e[e.Overflow = 1] = "Overflow", e[e.Success = 2] = "Success", e[e.Underflow = 3] = "Underflow", e))(Di || {}), Zl = ((e) => (e[e.Previous = -1] = "Previous", e[e.Next = 1] = "Next", e))(Zl || {}); +function eu(e = document.body) { return e == null ? [] : Array.from(e.querySelectorAll(br)).sort((t, r) => Math.sign((t.tabIndex || Number.MAX_SAFE_INTEGER) - (r.tabIndex || Number.MAX_SAFE_INTEGER))); } -var Di = ((e) => (e[e.Strict = 0] = "Strict", e[e.Loose = 1] = "Loose", e))(Di || {}); -function Zl(e, t = 0) { +var Ni = ((e) => (e[e.Strict = 0] = "Strict", e[e.Loose = 1] = "Loose", e))(Ni || {}); +function tu(e, t = 0) { var r; - return e === ((r = Tt(e)) == null ? void 0 : r.body) ? !1 : fe(t, { [0]() { + return e === ((r = Tt(e)) == null ? void 0 : r.body) ? !1 : fe(t, { 0() { return e.matches(br); - }, [1]() { + }, 1() { let n = e; for (; n !== null; ) { if (n.matches(br)) @@ -1167,7 +1177,7 @@ function Zl(e, t = 0) { return !1; } }); } -var eu = ((e) => (e[e.Keyboard = 0] = "Keyboard", e[e.Mouse = 1] = "Mouse", e))(eu || {}); +var ru = ((e) => (e[e.Keyboard = 0] = "Keyboard", e[e.Mouse = 1] = "Mouse", e))(ru || {}); typeof window < "u" && typeof document < "u" && (document.addEventListener("keydown", (e) => { e.metaKey || e.altKey || e.ctrlKey || (document.documentElement.dataset.headlessuiFocusVisible = ""); }, !0), document.addEventListener("click", (e) => { @@ -1176,12 +1186,12 @@ typeof window < "u" && typeof document < "u" && (document.addEventListener("keyd function We(e) { e == null || e.focus({ preventScroll: !0 }); } -let tu = ["textarea", "input"].join(","); -function ru(e) { +let nu = ["textarea", "input"].join(","); +function iu(e) { var t, r; - return (r = (t = e == null ? void 0 : e.matches) == null ? void 0 : t.call(e, tu)) != null ? r : !1; + return (r = (t = e == null ? void 0 : e.matches) == null ? void 0 : t.call(e, nu)) != null ? r : !1; } -function nu(e, t = (r) => r) { +function su(e, t = (r) => r) { return e.slice().sort((r, n) => { let i = t(r), s = t(n); if (i === null || s === null) @@ -1192,8 +1202,8 @@ function nu(e, t = (r) => r) { } function Lt(e, t, { sorted: r = !0, relativeTo: n = null, skipElements: i = [] } = {}) { var s; - let a = (s = Array.isArray(e) ? e.length > 0 ? e[0].ownerDocument : document : e == null ? void 0 : e.ownerDocument) != null ? s : document, o = Array.isArray(e) ? r ? nu(e) : e : Yl(e); - i.length > 0 && o.length > 1 && (o = o.filter((p) => !i.includes(p))), n = n ?? a.activeElement; + let a = (s = Array.isArray(e) ? e.length > 0 ? e[0].ownerDocument : document : e == null ? void 0 : e.ownerDocument) != null ? s : document, o = Array.isArray(e) ? r ? su(e) : e : eu(e); + i.length > 0 && o.length > 1 && (o = o.filter((h) => !i.includes(h))), n = n ?? a.activeElement; let l = (() => { if (t & 5) return 1; @@ -1210,29 +1220,29 @@ function Lt(e, t, { sorted: r = !0, relativeTo: n = null, skipElements: i = [] } if (t & 8) return o.length - 1; throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last"); - })(), c = t & 32 ? { preventScroll: !0 } : {}, m = 0, g = o.length, f; + })(), c = t & 32 ? { preventScroll: !0 } : {}, v = 0, g = o.length, f; do { - if (m >= g || m + g <= 0) + if (v >= g || v + g <= 0) return 0; - let p = u + m; + let h = u + v; if (t & 16) - p = (p + g) % g; + h = (h + g) % g; else { - if (p < 0) + if (h < 0) return 3; - if (p >= g) + if (h >= g) return 1; } - f = o[p], f == null || f.focus(c), m += l; + f = o[h], f == null || f.focus(c), v += l; } while (f !== a.activeElement); - return t & 6 && ru(f) && f.select(), 2; + return t & 6 && iu(f) && f.select(), 2; } function fr(e, t, r) { Et.isServer || le((n) => { document.addEventListener(e, t, r), n(() => document.removeEventListener(e, t, r)); }); } -function iu(e, t, r = x(() => !0)) { +function au(e, t, r = x(() => !0)) { function n(s, a) { if (!r.value || s.defaultPrevented) return; @@ -1249,7 +1259,7 @@ function iu(e, t, r = x(() => !0)) { if (c != null && c.contains(o) || s.composed && s.composedPath().includes(c)) return; } - return !Zl(o, Di.Loose) && o.tabIndex !== -1 && s.preventDefault(), t(s, o); + return !tu(o, Ni.Loose) && o.tabIndex !== -1 && s.preventDefault(), t(s, o); } let i = y(null); fr("mousedown", (s) => { @@ -1266,32 +1276,32 @@ let wr = Y({ name: "Hidden", props: { as: { type: [Object, String], default: "di return Z({ ourProps: s, theirProps: i, slot: {}, attrs: r, slots: t, name: "Hidden" }); }; } }); -function su() { +function ou() { return /iPhone/gi.test(window.navigator.platform) || /Mac/gi.test(window.navigator.platform) && window.navigator.maxTouchPoints > 0; } -function au(e, t, r) { +function lu(e, t, r) { Et.isServer || le((n) => { window.addEventListener(e, t, r), n(() => window.removeEventListener(e, t, r)); }); } var vt = ((e) => (e[e.Forwards = 0] = "Forwards", e[e.Backwards = 1] = "Backwards", e))(vt || {}); -function ou() { +function uu() { let e = y(0); - return au("keydown", (t) => { + return lu("keydown", (t) => { t.key === "Tab" && (e.value = t.shiftKey ? 1 : 0); }), e; } -function Ni(e, t, r, n) { +function Vi(e, t, r, n) { Et.isServer || le((i) => { e = e ?? window, e.addEventListener(t, r, n), i(() => e.removeEventListener(t, r, n)); }); } -function Vi(e) { +function Hi(e) { typeof queueMicrotask == "function" ? queueMicrotask(e) : Promise.resolve().then(e).catch((t) => setTimeout(() => { throw t; })); } -function lu(e) { +function cu(e) { function t() { document.readyState !== "loading" && (e(), document.removeEventListener("DOMContentLoaded", t)); } @@ -1309,27 +1319,27 @@ function Ui(e) { } return t; } -var Hi = ((e) => (e[e.None = 1] = "None", e[e.InitialFocus = 2] = "InitialFocus", e[e.TabLock = 4] = "TabLock", e[e.FocusLock = 8] = "FocusLock", e[e.RestoreFocus = 16] = "RestoreFocus", e[e.All = 30] = "All", e))(Hi || {}); +var Wi = ((e) => (e[e.None = 1] = "None", e[e.InitialFocus = 2] = "InitialFocus", e[e.TabLock = 4] = "TabLock", e[e.FocusLock = 8] = "FocusLock", e[e.RestoreFocus = 16] = "RestoreFocus", e[e.All = 30] = "All", e))(Wi || {}); let pt = Object.assign(Y({ name: "FocusTrap", props: { as: { type: [Object, String], default: "div" }, initialFocus: { type: Object, default: null }, features: { type: Number, default: 30 }, containers: { type: [Object, Function], default: y(/* @__PURE__ */ new Set()) } }, inheritAttrs: !1, setup(e, { attrs: t, slots: r, expose: n }) { let i = y(null); n({ el: i, $el: i }); let s = x(() => Tt(i)), a = y(!1); - V(() => a.value = !0), me(() => a.value = !1), cu({ ownerDocument: s }, x(() => a.value && !!(e.features & 16))); - let o = du({ ownerDocument: s, container: i, initialFocus: x(() => e.initialFocus) }, x(() => a.value && !!(e.features & 2))); - fu({ ownerDocument: s, container: i, containers: e.containers, previousActiveElement: o }, x(() => a.value && !!(e.features & 8))); - let l = ou(); + V(() => a.value = !0), me(() => a.value = !1), fu({ ownerDocument: s }, x(() => a.value && !!(e.features & 16))); + let o = pu({ ownerDocument: s, container: i, initialFocus: x(() => e.initialFocus) }, x(() => a.value && !!(e.features & 2))); + hu({ ownerDocument: s, container: i, containers: e.containers, previousActiveElement: o }, x(() => a.value && !!(e.features & 8))); + let l = uu(); function u(f) { - let p = D(i); - p && ((h) => h())(() => { + let h = D(i); + h && ((m) => m())(() => { fe(l.value, { [vt.Forwards]: () => { - Lt(p, qe.First, { skipElements: [f.relatedTarget] }); + Lt(h, qe.First, { skipElements: [f.relatedTarget] }); }, [vt.Backwards]: () => { - Lt(p, qe.Last, { skipElements: [f.relatedTarget] }); + Lt(h, qe.Last, { skipElements: [f.relatedTarget] }); } }); }); } let c = y(!1); - function m(f) { + function v(f) { f.key === "Tab" && (c.value = !0, requestAnimationFrame(() => { c.value = !1; })); @@ -1337,35 +1347,35 @@ let pt = Object.assign(Y({ name: "FocusTrap", props: { as: { type: [Object, Stri function g(f) { if (!a.value) return; - let p = Ui(e.containers); - D(i) instanceof HTMLElement && p.add(D(i)); - let h = f.relatedTarget; - h instanceof HTMLElement && h.dataset.headlessuiFocusGuard !== "true" && (Wi(p, h) || (c.value ? Lt(D(i), fe(l.value, { [vt.Forwards]: () => qe.Next, [vt.Backwards]: () => qe.Previous }) | qe.WrapAround, { relativeTo: f.target }) : f.target instanceof HTMLElement && We(f.target))); + let h = Ui(e.containers); + D(i) instanceof HTMLElement && h.add(D(i)); + let m = f.relatedTarget; + m instanceof HTMLElement && m.dataset.headlessuiFocusGuard !== "true" && (zi(h, m) || (c.value ? Lt(D(i), fe(l.value, { [vt.Forwards]: () => qe.Next, [vt.Backwards]: () => qe.Previous }) | qe.WrapAround, { relativeTo: f.target }) : f.target instanceof HTMLElement && We(f.target))); } return () => { - let f = {}, p = { ref: i, onKeydown: m, onFocusout: g }, { features: h, initialFocus: d, containers: b, ...O } = e; - return N(kr, [!!(h & 4) && N(wr, { as: "button", type: "button", "data-headlessui-focus-guard": !0, onFocus: u, features: Nt.Focusable }), Z({ ourProps: p, theirProps: { ...t, ...O }, slot: f, attrs: t, slots: r, name: "FocusTrap" }), !!(h & 4) && N(wr, { as: "button", type: "button", "data-headlessui-focus-guard": !0, onFocus: u, features: Nt.Focusable })]); + let f = {}, h = { ref: i, onKeydown: v, onFocusout: g }, { features: m, initialFocus: d, containers: b, ...O } = e; + return N(kr, [!!(m & 4) && N(wr, { as: "button", type: "button", "data-headlessui-focus-guard": !0, onFocus: u, features: Nt.Focusable }), Z({ ourProps: h, theirProps: { ...t, ...O }, slot: f, attrs: t, slots: r, name: "FocusTrap" }), !!(m & 4) && N(wr, { as: "button", type: "button", "data-headlessui-focus-guard": !0, onFocus: u, features: Nt.Focusable })]); }; -} }), { features: Hi }), Ue = []; -lu(() => { +} }), { features: Wi }), He = []; +cu(() => { function e(t) { - t.target instanceof HTMLElement && t.target !== document.body && Ue[0] !== t.target && (Ue.unshift(t.target), Ue = Ue.filter((r) => r != null && r.isConnected), Ue.splice(10)); + t.target instanceof HTMLElement && t.target !== document.body && He[0] !== t.target && (He.unshift(t.target), He = He.filter((r) => r != null && r.isConnected), He.splice(10)); } window.addEventListener("click", e, { capture: !0 }), window.addEventListener("mousedown", e, { capture: !0 }), window.addEventListener("focus", e, { capture: !0 }), document.body.addEventListener("click", e, { capture: !0 }), document.body.addEventListener("mousedown", e, { capture: !0 }), document.body.addEventListener("focus", e, { capture: !0 }); }); -function uu(e) { - let t = y(Ue.slice()); +function du(e) { + let t = y(He.slice()); return ot([e], ([r], [n]) => { - n === !0 && r === !1 ? Vi(() => { + n === !0 && r === !1 ? Hi(() => { t.value.splice(0); - }) : n === !1 && r === !0 && (t.value = Ue.slice()); + }) : n === !1 && r === !0 && (t.value = He.slice()); }, { flush: "post" }), () => { var r; return (r = t.value.find((n) => n != null && n.isConnected)) != null ? r : null; }; } -function cu({ ownerDocument: e }, t) { - let r = uu(t); +function fu({ ownerDocument: e }, t) { + let r = du(t); V(() => { le(() => { var n, i; @@ -1375,20 +1385,20 @@ function cu({ ownerDocument: e }, t) { We(r()); }); } -function du({ ownerDocument: e, container: t, initialFocus: r }, n) { +function pu({ ownerDocument: e, container: t, initialFocus: r }, n) { let i = y(null), s = y(!1); return V(() => s.value = !0), me(() => s.value = !1), V(() => { ot([t, r, n], (a, o) => { if (a.every((u, c) => (o == null ? void 0 : o[c]) === u) || !n.value) return; let l = D(t); - l && Vi(() => { + l && Hi(() => { var u, c; if (!s.value) return; - let m = D(r), g = (u = e.value) == null ? void 0 : u.activeElement; - if (m) { - if (m === g) { + let v = D(r), g = (u = e.value) == null ? void 0 : u.activeElement; + if (v) { + if (v === g) { i.value = g; return; } @@ -1396,14 +1406,14 @@ function du({ ownerDocument: e, container: t, initialFocus: r }, n) { i.value = g; return; } - m ? We(m) : Lt(l, qe.First | qe.NoScroll) === Ri.Error && console.warn("There are no focusable elements inside the "), i.value = (c = e.value) == null ? void 0 : c.activeElement; + v ? We(v) : Lt(l, qe.First | qe.NoScroll) === Di.Error && console.warn("There are no focusable elements inside the "), i.value = (c = e.value) == null ? void 0 : c.activeElement; }); }, { immediate: !0, flush: "post" }); }), i; } -function fu({ ownerDocument: e, container: t, containers: r, previousActiveElement: n }, i) { +function hu({ ownerDocument: e, container: t, containers: r, previousActiveElement: n }, i) { var s; - Ni((s = e.value) == null ? void 0 : s.defaultView, "focus", (a) => { + Vi((s = e.value) == null ? void 0 : s.defaultView, "focus", (a) => { if (!i.value) return; let o = Ui(r); @@ -1412,17 +1422,17 @@ function fu({ ownerDocument: e, container: t, containers: r, previousActiveEleme if (!l) return; let u = a.target; - u && u instanceof HTMLElement ? Wi(o, u) ? (n.value = u, We(u)) : (a.preventDefault(), a.stopPropagation(), We(l)) : We(n.value); + u && u instanceof HTMLElement ? zi(o, u) ? (n.value = u, We(u)) : (a.preventDefault(), a.stopPropagation(), We(l)) : We(n.value); }, !0); } -function Wi(e, t) { +function zi(e, t) { for (let r of e) if (r.contains(t)) return !0; return !1; } let pr = /* @__PURE__ */ new Map(), ht = /* @__PURE__ */ new Map(); -function qn(e, t = y(!0)) { +function Fn(e, t = y(!0)) { le((r) => { var n; if (!t.value) @@ -1444,17 +1454,17 @@ function qn(e, t = y(!0)) { ht.set(i, s + 1), s === 0 && (pr.set(i, { "aria-hidden": i.getAttribute("aria-hidden"), inert: i.inert }), i.setAttribute("aria-hidden", "true"), i.inert = !0); }); } -let zi = Symbol("ForcePortalRootContext"); -function pu() { - return z(zi, !1); +let Gi = Symbol("ForcePortalRootContext"); +function mu() { + return z(Gi, !1); } let Sr = Y({ name: "ForcePortalRoot", props: { as: { type: [Object, String], default: "template" }, force: { type: Boolean, default: !1 } }, setup(e, { slots: t, attrs: r }) { - return de(zi, e.force), () => { + return de(Gi, e.force), () => { let { force: n, ...i } = e; return Z({ theirProps: i, ourProps: {}, slot: {}, slots: t, attrs: r, name: "ForcePortalRoot" }); }; } }); -function hu(e) { +function vu(e) { let t = Tt(e); if (!t) { if (e === null) @@ -1467,8 +1477,8 @@ function hu(e) { let n = t.createElement("div"); return n.setAttribute("id", "headlessui-portal-root"), t.body.appendChild(n); } -let Gi = Y({ name: "Portal", props: { as: { type: [Object, String], default: "div" } }, setup(e, { slots: t, attrs: r }) { - let n = y(null), i = x(() => Tt(n)), s = pu(), a = z(Xi, null), o = y(s === !0 || a == null ? hu(n.value) : a.resolveTarget()); +let Xi = Y({ name: "Portal", props: { as: { type: [Object, String], default: "div" } }, setup(e, { slots: t, attrs: r }) { + let n = y(null), i = x(() => Tt(n)), s = mu(), a = z(Ki, null), o = y(s === !0 || a == null ? vu(n.value) : a.resolveTarget()); return le(() => { s || a != null && (o.value = a.resolveTarget()); }), me(() => { @@ -1479,24 +1489,24 @@ let Gi = Y({ name: "Portal", props: { as: { type: [Object, String], default: "di if (o.value === null) return null; let l = { ref: n, "data-headlessui-portal": "" }; - return N(ii, { to: o.value }, Z({ ourProps: l, theirProps: e, slot: {}, attrs: r, slots: t, name: "Portal" })); + return N(ai, { to: o.value }, Z({ ourProps: l, theirProps: e, slot: {}, attrs: r, slots: t, name: "Portal" })); }; -} }), Xi = Symbol("PortalGroupContext"), mu = Y({ name: "PortalGroup", props: { as: { type: [Object, String], default: "template" }, target: { type: Object, default: null } }, setup(e, { attrs: t, slots: r }) { - let n = Is({ resolveTarget() { +} }), Ki = Symbol("PortalGroupContext"), gu = Y({ name: "PortalGroup", props: { as: { type: [Object, String], default: "template" }, target: { type: Object, default: null } }, setup(e, { attrs: t, slots: r }) { + let n = Ps({ resolveTarget() { return e.target; } }); - return de(Xi, n), () => { + return de(Ki, n), () => { let { target: i, ...s } = e; return Z({ theirProps: s, ourProps: {}, slot: {}, attrs: t, slots: r, name: "PortalGroup" }); }; -} }), Ki = Symbol("StackContext"); +} }), Ji = Symbol("StackContext"); var Or = ((e) => (e[e.Add = 0] = "Add", e[e.Remove = 1] = "Remove", e))(Or || {}); -function vu() { - return z(Ki, () => { +function yu() { + return z(Ji, () => { }); } -function gu({ type: e, enabled: t, element: r, onUpdate: n }) { - let i = vu(); +function bu({ type: e, enabled: t, element: r, onUpdate: n }) { + let i = yu(); function s(...a) { n == null || n(...a), i(...a); } @@ -1506,16 +1516,16 @@ function gu({ type: e, enabled: t, element: r, onUpdate: n }) { }, { immediate: !0, flush: "sync" }); }), me(() => { t.value && s(1, e, r); - }), de(Ki, s); + }), de(Ji, s); } -let Ji = Symbol("DescriptionContext"); -function yu() { - let e = z(Ji, null); +let Qi = Symbol("DescriptionContext"); +function wu() { + let e = z(Qi, null); if (e === null) throw new Error("Missing parent"); return e; } -function bu({ slot: e = y({}), name: t = "Description", props: r = {} } = {}) { +function Su({ slot: e = y({}), name: t = "Description", props: r = {} } = {}) { let n = y([]); function i(s) { return n.value.push(s), () => { @@ -1523,17 +1533,17 @@ function bu({ slot: e = y({}), name: t = "Description", props: r = {} } = {}) { a !== -1 && n.value.splice(a, 1); }; } - return de(Ji, { register: i, slot: e, name: t, props: r }), x(() => n.value.length > 0 ? n.value.join(" ") : void 0); + return de(Qi, { register: i, slot: e, name: t, props: r }), x(() => n.value.length > 0 ? n.value.join(" ") : void 0); } Y({ name: "Description", props: { as: { type: [Object, String], default: "p" }, id: { type: String, default: () => `headlessui-description-${Ye()}` } }, setup(e, { attrs: t, slots: r }) { - let n = yu(); + let n = wu(); return V(() => me(n.register(e.id))), () => { - let { name: i = "Description", slot: s = y({}), props: a = {} } = n, { id: o, ...l } = e, u = { ...Object.entries(a).reduce((c, [m, g]) => Object.assign(c, { [m]: ee(g) }), {}), id: o }; + let { name: i = "Description", slot: s = y({}), props: a = {} } = n, { id: o, ...l } = e, u = { ...Object.entries(a).reduce((c, [v, g]) => Object.assign(c, { [v]: ee(g) }), {}), id: o }; return Z({ ourProps: u, theirProps: l, slot: s.value, attrs: t, slots: r, name: i }); }; } }); -function wu(e) { - let t = Ps(e.getSnapshot()); +function Ou(e) { + let t = qs(e.getSnapshot()); return me(e.subscribe(() => { t.value = e.getSnapshot(); })), t; @@ -1572,7 +1582,7 @@ function Yt() { } }; return t; } -function Su(e, t) { +function $u(e, t) { let r = e(), n = /* @__PURE__ */ new Set(); return { getSnapshot() { return r; @@ -1583,7 +1593,7 @@ function Su(e, t) { a && (r = a, n.forEach((o) => o())); } }; } -function Ou() { +function Eu() { let e; return { before({ doc: t }) { var r; @@ -1594,8 +1604,8 @@ function Ou() { r.style(n, "paddingRight", `${s}px`); } }; } -function $u() { - if (!su()) +function Tu() { + if (!ou()) return {}; let e; return { before() { @@ -1623,18 +1633,18 @@ function $u() { }); } }; } -function Eu() { +function xu() { return { before({ doc: e, d: t }) { t.style(e.documentElement, "overflow", "hidden"); } }; } -function Tu(e) { +function _u(e) { let t = {}; for (let r of e) Object.assign(t, r(t)); return t; } -let He = Su(() => /* @__PURE__ */ new Map(), { PUSH(e, t) { +let Ue = $u(() => /* @__PURE__ */ new Map(), { PUSH(e, t) { var r; let n = (r = this.get(e)) != null ? r : { doc: e, count: 0, d: Yt(), meta: /* @__PURE__ */ new Set() }; return n.count++, n.meta.add(t), this.set(e, n), this; @@ -1642,38 +1652,38 @@ let He = Su(() => /* @__PURE__ */ new Map(), { PUSH(e, t) { let r = this.get(e); return r && (r.count--, r.meta.delete(t)), this; }, SCROLL_PREVENT({ doc: e, d: t, meta: r }) { - let n = { doc: e, d: t, meta: Tu(r) }, i = [$u(), Ou(), Eu()]; + let n = { doc: e, d: t, meta: _u(r) }, i = [Tu(), Eu(), xu()]; i.forEach(({ before: s }) => s == null ? void 0 : s(n)), i.forEach(({ after: s }) => s == null ? void 0 : s(n)); }, SCROLL_ALLOW({ d: e }) { e.dispose(); }, TEARDOWN({ doc: e }) { this.delete(e); } }); -He.subscribe(() => { - let e = He.getSnapshot(), t = /* @__PURE__ */ new Map(); +Ue.subscribe(() => { + let e = Ue.getSnapshot(), t = /* @__PURE__ */ new Map(); for (let [r] of e) t.set(r, r.documentElement.style.overflow); for (let r of e.values()) { let n = t.get(r.doc) === "hidden", i = r.count !== 0; - (i && !n || !i && n) && He.dispatch(r.count > 0 ? "SCROLL_PREVENT" : "SCROLL_ALLOW", r), r.count === 0 && He.dispatch("TEARDOWN", r); + (i && !n || !i && n) && Ue.dispatch(r.count > 0 ? "SCROLL_PREVENT" : "SCROLL_ALLOW", r), r.count === 0 && Ue.dispatch("TEARDOWN", r); } }); -function xu(e, t, r) { - let n = wu(He), i = x(() => { +function Iu(e, t, r) { + let n = Ou(Ue), i = x(() => { let s = e.value ? n.value.get(e.value) : void 0; return s ? s.count > 0 : !1; }); return ot([e, t], ([s, a], [o], l) => { if (!s || !a) return; - He.dispatch("PUSH", s, r); + Ue.dispatch("PUSH", s, r); let u = !1; l(() => { - u || (He.dispatch("POP", o ?? s, r), u = !0); + u || (Ue.dispatch("POP", o ?? s, r), u = !0); }); }, { immediate: !0 }), i; } -var _u = ((e) => (e[e.Open = 0] = "Open", e[e.Closed = 1] = "Closed", e))(_u || {}); +var Au = ((e) => (e[e.Open = 0] = "Open", e[e.Closed = 1] = "Closed", e))(Au || {}); let $r = Symbol("DialogContext"); function xt(e) { let t = z($r, null); @@ -1683,50 +1693,50 @@ function xt(e) { } return t; } -let qt = "DC8F892D-2EBD-447C-A4C8-A03058436FF4", Yr = Y({ name: "Dialog", inheritAttrs: !1, props: { as: { type: [Object, String], default: "div" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, open: { type: [Boolean, String], default: qt }, initialFocus: { type: Object, default: null }, id: { type: String, default: () => `headlessui-dialog-${Ye()}` } }, emits: { close: (e) => !0 }, setup(e, { emit: t, attrs: r, slots: n, expose: i }) { +let qt = "DC8F892D-2EBD-447C-A4C8-A03058436FF4", en = Y({ name: "Dialog", inheritAttrs: !1, props: { as: { type: [Object, String], default: "div" }, static: { type: Boolean, default: !1 }, unmount: { type: Boolean, default: !0 }, open: { type: [Boolean, String], default: qt }, initialFocus: { type: Object, default: null }, id: { type: String, default: () => `headlessui-dialog-${Ye()}` } }, emits: { close: (e) => !0 }, setup(e, { emit: t, attrs: r, slots: n, expose: i }) { var s; let a = y(!1); V(() => { a.value = !0; }); - let o = y(0), l = Qr(), u = x(() => e.open === qt && l !== null ? (l.value & G.Open) === G.Open : e.open), c = y(null), m = y(null), g = x(() => Tt(c)); + let o = y(0), l = Zr(), u = x(() => e.open === qt && l !== null ? (l.value & G.Open) === G.Open : e.open), c = y(null), v = y(null), g = x(() => Tt(c)); if (i({ el: c, $el: c }), !(e.open !== qt || l !== null)) throw new Error("You forgot to provide an `open` prop to the `Dialog`."); if (typeof u.value != "boolean") throw new Error(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${u.value === qt ? void 0 : e.open}`); - let f = x(() => a.value && u.value ? 0 : 1), p = x(() => f.value === 0), h = x(() => o.value > 1), d = z($r, null) !== null, b = x(() => h.value ? "parent" : "leaf"), O = x(() => l !== null ? (l.value & G.Closing) === G.Closing : !1), I = x(() => d || O.value ? !1 : p.value), S = x(() => { - var E, T, A; - return (A = Array.from((T = (E = g.value) == null ? void 0 : E.querySelectorAll("body > *")) != null ? T : []).find((C) => C.id === "headlessui-portal-root" ? !1 : C.contains(D(m)) && C instanceof HTMLElement)) != null ? A : null; + let f = x(() => a.value && u.value ? 0 : 1), h = x(() => f.value === 0), m = x(() => o.value > 1), d = z($r, null) !== null, b = x(() => m.value ? "parent" : "leaf"), O = x(() => l !== null ? (l.value & G.Closing) === G.Closing : !1), A = x(() => d || O.value ? !1 : h.value), S = x(() => { + var E, T, I; + return (I = Array.from((T = (E = g.value) == null ? void 0 : E.querySelectorAll("body > *")) != null ? T : []).find((C) => C.id === "headlessui-portal-root" ? !1 : C.contains(D(v)) && C instanceof HTMLElement)) != null ? I : null; }); - qn(S, I); - let $ = x(() => h.value ? !0 : p.value), w = x(() => { - var E, T, A; - return (A = Array.from((T = (E = g.value) == null ? void 0 : E.querySelectorAll("[data-headlessui-portal]")) != null ? T : []).find((C) => C.contains(D(m)) && C instanceof HTMLElement)) != null ? A : null; + Fn(S, A); + let $ = x(() => m.value ? !0 : h.value), w = x(() => { + var E, T, I; + return (I = Array.from((T = (E = g.value) == null ? void 0 : E.querySelectorAll("[data-headlessui-portal]")) != null ? T : []).find((C) => C.contains(D(v)) && C instanceof HTMLElement)) != null ? I : null; }); - qn(w, $), gu({ type: "Dialog", enabled: x(() => f.value === 0), element: c, onUpdate: (E, T) => { + Fn(w, $), bu({ type: "Dialog", enabled: x(() => f.value === 0), element: c, onUpdate: (E, T) => { if (T === "Dialog") return fe(E, { [Or.Add]: () => o.value += 1, [Or.Remove]: () => o.value -= 1 }); } }); - let _ = bu({ name: "DialogDescription", slot: x(() => ({ open: u.value })) }), q = y(null), P = { titleId: q, panelRef: y(null), dialogState: f, setTitleId(E) { + let _ = Su({ name: "DialogDescription", slot: x(() => ({ open: u.value })) }), q = y(null), P = { titleId: q, panelRef: y(null), dialogState: f, setTitleId(E) { q.value !== E && (q.value = E); }, close() { t("close", !1); } }; de($r, P); function k() { - var E, T, A; - return [...Array.from((T = (E = g.value) == null ? void 0 : E.querySelectorAll("html > *, body > *, [data-headlessui-portal]")) != null ? T : []).filter((C) => !(C === document.body || C === document.head || !(C instanceof HTMLElement) || C.contains(D(m)) || P.panelRef.value && C.contains(P.panelRef.value))), (A = P.panelRef.value) != null ? A : c.value]; + var E, T, I; + return [...Array.from((T = (E = g.value) == null ? void 0 : E.querySelectorAll("html > *, body > *, [data-headlessui-portal]")) != null ? T : []).filter((C) => !(C === document.body || C === document.head || !(C instanceof HTMLElement) || C.contains(D(v)) || P.panelRef.value && C.contains(P.panelRef.value))), (I = P.panelRef.value) != null ? I : c.value]; } - let M = x(() => !(!p.value || h.value)); - iu(() => k(), (E, T) => { + let j = x(() => !(!h.value || m.value)); + au(() => k(), (E, T) => { P.close(), Oe(() => T == null ? void 0 : T.focus()); - }, M); - let U = x(() => !(h.value || f.value !== 0)); - Ni((s = g.value) == null ? void 0 : s.defaultView, "keydown", (E) => { - U.value && (E.defaultPrevented || E.key === ji.Escape && (E.preventDefault(), E.stopPropagation(), P.close())); + }, j); + let H = x(() => !(m.value || f.value !== 0)); + Vi((s = g.value) == null ? void 0 : s.defaultView, "keydown", (E) => { + H.value && (E.defaultPrevented || E.key === ji.Escape && (E.preventDefault(), E.stopPropagation(), P.close())); }); let F = x(() => !(O.value || f.value !== 0 || d)); - return xu(g, F, (E) => { + return Iu(g, F, (E) => { var T; return { containers: [...(T = E.containers) != null ? T : [], k] }; }), le((E) => { @@ -1735,16 +1745,16 @@ let qt = "DC8F892D-2EBD-447C-A4C8-A03058436FF4", Yr = Y({ name: "Dialog", inheri let T = D(c); if (!T) return; - let A = new ResizeObserver((C) => { + let I = new ResizeObserver((C) => { for (let ge of C) { - let H = ge.target.getBoundingClientRect(); - H.x === 0 && H.y === 0 && H.width === 0 && H.height === 0 && P.close(); + let U = ge.target.getBoundingClientRect(); + U.x === 0 && U.y === 0 && U.width === 0 && U.height === 0 && P.close(); } }); - A.observe(T), E(() => A.disconnect()); + I.observe(T), E(() => I.disconnect()); }), () => { - let { id: E, open: T, initialFocus: A, ...C } = e, ge = { ...r, ref: c, id: E, role: "dialog", "aria-modal": f.value === 0 ? !0 : void 0, "aria-labelledby": q.value, "aria-describedby": _.value }, H = { open: f.value === 0 }; - return N(Sr, { force: !0 }, () => [N(Gi, () => N(mu, { target: c.value }, () => N(Sr, { force: !1 }, () => N(pt, { initialFocus: A, containers: k, features: p.value ? fe(b.value, { parent: pt.features.RestoreFocus, leaf: pt.features.All & ~pt.features.FocusLock }) : pt.features.None }, () => Z({ ourProps: ge, theirProps: C, slot: H, attrs: r, slots: n, visible: f.value === 0, features: Dt.RenderStrategy | Dt.Static, name: "Dialog" }))))), N(wr, { features: Nt.Hidden, ref: m })]); + let { id: E, open: T, initialFocus: I, ...C } = e, ge = { ...r, ref: c, id: E, role: "dialog", "aria-modal": f.value === 0 ? !0 : void 0, "aria-labelledby": q.value, "aria-describedby": _.value }, U = { open: f.value === 0 }; + return N(Sr, { force: !0 }, () => [N(Xi, () => N(gu, { target: c.value }, () => N(Sr, { force: !1 }, () => N(pt, { initialFocus: I, containers: k, features: h.value ? fe(b.value, { parent: pt.features.RestoreFocus, leaf: pt.features.All & ~pt.features.FocusLock }) : pt.features.None }, () => Z({ ourProps: ge, theirProps: C, slot: U, attrs: r, slots: n, visible: f.value === 0, features: Dt.RenderStrategy | Dt.Static, name: "Dialog" }))))), N(wr, { features: Nt.Hidden, ref: v })]); }; } }); Y({ name: "DialogOverlay", props: { as: { type: [Object, String], default: "div" }, id: { type: String, default: () => `headlessui-dialog-overlay-${Ye()}` } }, setup(e, { attrs: t, slots: r }) { @@ -1764,10 +1774,10 @@ Y({ name: "DialogBackdrop", props: { as: { type: [Object, String], default: "div throw new Error("A component is being used, but a component is missing."); }), () => { let { id: a, ...o } = e, l = { id: a, ref: s, "aria-hidden": !0 }; - return N(Sr, { force: !0 }, () => N(Gi, () => Z({ ourProps: l, theirProps: { ...t, ...o }, slot: { open: i.dialogState.value === 0 }, attrs: t, slots: r, name: "DialogBackdrop" }))); + return N(Sr, { force: !0 }, () => N(Xi, () => Z({ ourProps: l, theirProps: { ...t, ...o }, slot: { open: i.dialogState.value === 0 }, attrs: t, slots: r, name: "DialogBackdrop" }))); }; } }); -let Zr = Y({ name: "DialogPanel", props: { as: { type: [Object, String], default: "div" }, id: { type: String, default: () => `headlessui-dialog-panel-${Ye()}` } }, setup(e, { attrs: t, slots: r, expose: n }) { +let tn = Y({ name: "DialogPanel", props: { as: { type: [Object, String], default: "div" }, id: { type: String, default: () => `headlessui-dialog-panel-${Ye()}` } }, setup(e, { attrs: t, slots: r, expose: n }) { let i = xt("DialogPanel"); n({ el: i.panelRef, $el: i.panelRef }); function s(a) { @@ -1787,7 +1797,7 @@ Y({ name: "DialogTitle", props: { as: { type: [Object, String], default: "h2" }, return Z({ ourProps: { id: i }, theirProps: s, slot: { open: n.dialogState.value === 0 }, attrs: t, slots: r, name: "DialogTitle" }); }; } }); -function Au(e) { +function Pu(e) { let t = { called: !1 }; return (...r) => { if (!t.called) @@ -1801,7 +1811,7 @@ function Ct(e, ...t) { e && t.length > 0 && e.classList.remove(...t); } var Er = ((e) => (e.Finished = "finished", e.Cancelled = "cancelled", e))(Er || {}); -function Iu(e, t) { +function qu(e, t) { let r = Yt(); if (!e) return r.dispose; @@ -1811,38 +1821,38 @@ function Iu(e, t) { }); return s !== 0 ? r.setTimeout(() => t("finished"), s + a) : t("finished"), r.add(() => t("cancelled")), r.dispose; } -function Cn(e, t, r, n, i, s) { - let a = Yt(), o = s !== void 0 ? Au(s) : () => { +function kn(e, t, r, n, i, s) { + let a = Yt(), o = s !== void 0 ? Pu(s) : () => { }; return Ct(e, ...i), hr(e, ...t, ...r), a.nextFrame(() => { - Ct(e, ...r), hr(e, ...n), a.add(Iu(e, (l) => (Ct(e, ...n, ...t), hr(e, ...i), o(l)))); + Ct(e, ...r), hr(e, ...n), a.add(qu(e, (l) => (Ct(e, ...n, ...t), hr(e, ...i), o(l)))); }), a.add(() => Ct(e, ...t, ...r, ...n, ...i)), a.add(() => o("cancelled")), a.dispose; } function Ne(e = "") { return e.split(" ").filter((t) => t.trim().length > 1); } -let en = Symbol("TransitionContext"); -var Pu = ((e) => (e.Visible = "visible", e.Hidden = "hidden", e))(Pu || {}); -function qu() { - return z(en, null) !== null; +let rn = Symbol("TransitionContext"); +var Cu = ((e) => (e.Visible = "visible", e.Hidden = "hidden", e))(Cu || {}); +function Fu() { + return z(rn, null) !== null; } -function Cu() { - let e = z(en, null); +function ku() { + let e = z(rn, null); if (e === null) throw new Error("A is used but it is missing a parent ."); return e; } -function Fu() { - let e = z(tn, null); +function Lu() { + let e = z(nn, null); if (e === null) throw new Error("A is used but it is missing a parent ."); return e; } -let tn = Symbol("NestingContext"); +let nn = Symbol("NestingContext"); function Zt(e) { return "children" in e ? Zt(e.children) : e.value.filter(({ state: t }) => t === "visible").length > 0; } -function Qi(e) { +function Yi(e) { let t = y([]), r = y(!1); V(() => r.value = !0), me(() => r.value = !1); function n(s, a = Ce.Hidden) { @@ -1859,7 +1869,7 @@ function Qi(e) { } return { children: t, register: i, unregister: n }; } -let Yi = Dt.RenderStrategy, lt = Y({ props: { as: { type: [Object, String], default: "div" }, show: { type: [Boolean], default: null }, unmount: { type: [Boolean], default: !0 }, appear: { type: [Boolean], default: !1 }, enter: { type: [String], default: "" }, enterFrom: { type: [String], default: "" }, enterTo: { type: [String], default: "" }, entered: { type: [String], default: "" }, leave: { type: [String], default: "" }, leaveFrom: { type: [String], default: "" }, leaveTo: { type: [String], default: "" } }, emits: { beforeEnter: () => !0, afterEnter: () => !0, beforeLeave: () => !0, afterLeave: () => !0 }, setup(e, { emit: t, attrs: r, slots: n, expose: i }) { +let Zi = Dt.RenderStrategy, lt = Y({ props: { as: { type: [Object, String], default: "div" }, show: { type: [Boolean], default: null }, unmount: { type: [Boolean], default: !0 }, appear: { type: [Boolean], default: !1 }, enter: { type: [String], default: "" }, enterFrom: { type: [String], default: "" }, enterTo: { type: [String], default: "" }, entered: { type: [String], default: "" }, leave: { type: [String], default: "" }, leaveFrom: { type: [String], default: "" }, leaveTo: { type: [String], default: "" } }, emits: { beforeEnter: () => !0, afterEnter: () => !0, beforeLeave: () => !0, afterLeave: () => !0 }, setup(e, { emit: t, attrs: r, slots: n, expose: i }) { let s = y(0); function a() { s.value |= G.Opening, t("beforeEnter"); @@ -1873,26 +1883,26 @@ let Yi = Dt.RenderStrategy, lt = Y({ props: { as: { type: [Object, String], defa function u() { s.value &= ~G.Closing, t("afterLeave"); } - if (!qu() && zl()) + if (!Fu() && Xl()) return () => N(ut, { ...e, onBeforeEnter: a, onAfterEnter: o, onBeforeLeave: l, onAfterLeave: u }, n); - let c = y(null), m = x(() => e.unmount ? Ce.Unmount : Ce.Hidden); + let c = y(null), v = x(() => e.unmount ? Ce.Unmount : Ce.Hidden); i({ el: c, $el: c }); - let { show: g, appear: f } = Cu(), { register: p, unregister: h } = Fu(), d = y(g.value ? "visible" : "hidden"), b = { value: !0 }, O = Ye(), I = { value: !1 }, S = Qi(() => { - !I.value && d.value !== "hidden" && (d.value = "hidden", h(O), u()); + let { show: g, appear: f } = ku(), { register: h, unregister: m } = Lu(), d = y(g.value ? "visible" : "hidden"), b = { value: !0 }, O = Ye(), A = { value: !1 }, S = Yi(() => { + !A.value && d.value !== "hidden" && (d.value = "hidden", m(O), u()); }); V(() => { - let F = p(O); + let F = h(O); me(F); }), le(() => { - if (m.value === Ce.Hidden && O) { + if (v.value === Ce.Hidden && O) { if (g.value && d.value !== "visible") { d.value = "visible"; return; } - fe(d.value, { hidden: () => h(O), visible: () => p(O) }); + fe(d.value, { hidden: () => m(O), visible: () => h(O) }); } }); - let $ = Ne(e.enter), w = Ne(e.enterFrom), _ = Ne(e.enterTo), q = Ne(e.entered), P = Ne(e.leave), k = Ne(e.leaveFrom), M = Ne(e.leaveTo); + let $ = Ne(e.enter), w = Ne(e.enterFrom), _ = Ne(e.enterTo), q = Ne(e.entered), P = Ne(e.leave), k = Ne(e.leaveFrom), j = Ne(e.leaveTo); V(() => { le(() => { if (d.value === "visible") { @@ -1902,41 +1912,41 @@ let Yi = Dt.RenderStrategy, lt = Y({ props: { as: { type: [Object, String], defa } }); }); - function U(F) { + function H(F) { let E = b.value && !f.value, T = D(c); - !T || !(T instanceof HTMLElement) || E || (I.value = !0, g.value && a(), g.value || l(), F(g.value ? Cn(T, $, w, _, q, (A) => { - I.value = !1, A === Er.Finished && o(); - }) : Cn(T, P, k, M, q, (A) => { - I.value = !1, A === Er.Finished && (Zt(S) || (d.value = "hidden", h(O), u())); + !T || !(T instanceof HTMLElement) || E || (A.value = !0, g.value && a(), g.value || l(), F(g.value ? kn(T, $, w, _, q, (I) => { + A.value = !1, I === Er.Finished && o(); + }) : kn(T, P, k, j, q, (I) => { + A.value = !1, I === Er.Finished && (Zt(S) || (d.value = "hidden", m(O), u())); }))); } return V(() => { ot([g], (F, E, T) => { - U(T), b.value = !1; + H(T), b.value = !1; }, { immediate: !0 }); - }), de(tn, S), Gl(x(() => fe(d.value, { visible: G.Open, hidden: G.Closed }) | s.value)), () => { - let { appear: F, show: E, enter: T, enterFrom: A, enterTo: C, entered: ge, leave: H, leaveFrom: ct, leaveTo: At, ...Ae } = e, Ze = { ref: c }, Ie = { ...Ae, ...f.value && g.value && Et.isServer ? { class: qs([r.class, Ae.class, ...$, ...w]) } : {} }; - return Z({ theirProps: Ie, ourProps: Ze, slot: {}, slots: n, attrs: r, features: Yi, visible: d.value === "visible", name: "TransitionChild" }); + }), de(nn, S), Kl(x(() => fe(d.value, { visible: G.Open, hidden: G.Closed }) | s.value)), () => { + let { appear: F, show: E, enter: T, enterFrom: I, enterTo: C, entered: ge, leave: U, leaveFrom: ct, leaveTo: It, ...Ie } = e, Ze = { ref: c }, Ae = { ...Ie, ...f.value && g.value && Et.isServer ? { class: Cs([r.class, Ie.class, ...$, ...w]) } : {} }; + return Z({ theirProps: Ae, ourProps: Ze, slot: {}, slots: n, attrs: r, features: Zi, visible: d.value === "visible", name: "TransitionChild" }); }; -} }), ku = lt, ut = Y({ inheritAttrs: !1, props: { as: { type: [Object, String], default: "div" }, show: { type: [Boolean], default: null }, unmount: { type: [Boolean], default: !0 }, appear: { type: [Boolean], default: !1 }, enter: { type: [String], default: "" }, enterFrom: { type: [String], default: "" }, enterTo: { type: [String], default: "" }, entered: { type: [String], default: "" }, leave: { type: [String], default: "" }, leaveFrom: { type: [String], default: "" }, leaveTo: { type: [String], default: "" } }, emits: { beforeEnter: () => !0, afterEnter: () => !0, beforeLeave: () => !0, afterLeave: () => !0 }, setup(e, { emit: t, attrs: r, slots: n }) { - let i = Qr(), s = x(() => e.show === null && i !== null ? (i.value & G.Open) === G.Open : e.show); +} }), Ru = lt, ut = Y({ inheritAttrs: !1, props: { as: { type: [Object, String], default: "div" }, show: { type: [Boolean], default: null }, unmount: { type: [Boolean], default: !0 }, appear: { type: [Boolean], default: !1 }, enter: { type: [String], default: "" }, enterFrom: { type: [String], default: "" }, enterTo: { type: [String], default: "" }, entered: { type: [String], default: "" }, leave: { type: [String], default: "" }, leaveFrom: { type: [String], default: "" }, leaveTo: { type: [String], default: "" } }, emits: { beforeEnter: () => !0, afterEnter: () => !0, beforeLeave: () => !0, afterLeave: () => !0 }, setup(e, { emit: t, attrs: r, slots: n }) { + let i = Zr(), s = x(() => e.show === null && i !== null ? (i.value & G.Open) === G.Open : e.show); le(() => { if (![!0, !1].includes(s.value)) throw new Error('A is used but it is missing a `:show="true | false"` prop.'); }); - let a = y(s.value ? "visible" : "hidden"), o = Qi(() => { + let a = y(s.value ? "visible" : "hidden"), o = Yi(() => { a.value = "hidden"; }), l = y(!0), u = { show: s, appear: x(() => e.appear || !l.value) }; return V(() => { le(() => { l.value = !1, s.value ? a.value = "visible" : Zt(o) || (a.value = "hidden"); }); - }), de(tn, o), de(en, u), () => { - let c = Bi(e, ["show", "appear", "unmount", "onBeforeEnter", "onBeforeLeave", "onAfterEnter", "onAfterLeave"]), m = { unmount: e.unmount }; - return Z({ ourProps: { ...m, as: "template" }, theirProps: {}, slot: {}, slots: { ...n, default: () => [N(ku, { onBeforeEnter: () => t("beforeEnter"), onAfterEnter: () => t("afterEnter"), onBeforeLeave: () => t("beforeLeave"), onAfterLeave: () => t("afterLeave"), ...r, ...m, ...c }, n.default)] }, attrs: {}, features: Yi, visible: a.value === "visible", name: "Transition" }); + }), de(nn, o), de(rn, u), () => { + let c = Bi(e, ["show", "appear", "unmount", "onBeforeEnter", "onBeforeLeave", "onAfterEnter", "onAfterLeave"]), v = { unmount: e.unmount }; + return Z({ ourProps: { ...v, as: "template" }, theirProps: {}, slot: {}, slots: { ...n, default: () => [N(Ru, { onBeforeEnter: () => t("beforeEnter"), onAfterEnter: () => t("afterEnter"), onBeforeLeave: () => t("beforeLeave"), onAfterLeave: () => t("afterLeave"), ...r, ...v, ...c }, n.default)] }, attrs: {}, features: Zi, visible: a.value === "visible", name: "Transition" }); }; } }); -const Lu = { +const Bu = { props: { defaultTitle: { type: String, @@ -1983,34 +1993,34 @@ const Lu = { }; }, computed: { - hasConfirmModal: () => !!v.confirmModal.value, + hasConfirmModal: () => !!p.confirmModal.value, title: function() { var e; - return (e = v.confirmModal.value) != null && e.title ? v.confirmModal.value.title : this.defaultTitle; + return (e = p.confirmModal.value) != null && e.title ? p.confirmModal.value.title : this.defaultTitle; }, text: function() { var e; - return (e = v.confirmModal.value) != null && e.text ? v.confirmModal.value.text : this.confirmPassword ? this.defaultPasswordText : this.defaultText; + return (e = p.confirmModal.value) != null && e.text ? p.confirmModal.value.text : this.confirmPassword ? this.defaultPasswordText : this.defaultText; }, confirmButton: function() { var e; - return (e = v.confirmModal.value) != null && e.confirmButton ? v.confirmModal.value.confirmButton : this.defaultConfirmButton; + return (e = p.confirmModal.value) != null && e.confirmButton ? p.confirmModal.value.confirmButton : this.defaultConfirmButton; }, cancelButton: function() { var e; - return (e = v.confirmModal.value) != null && e.cancelButton ? v.confirmModal.value.cancelButton : this.defaultCancelButton; + return (e = p.confirmModal.value) != null && e.cancelButton ? p.confirmModal.value.cancelButton : this.defaultCancelButton; }, confirmPassword: function() { var e; - return (e = v.confirmModal.value) != null && e.confirmPassword ? v.confirmModal.value.confirmPassword : !1; + return (e = p.confirmModal.value) != null && e.confirmPassword ? p.confirmModal.value.confirmPassword : !1; }, confirmPasswordOnce: function() { var e; - return (e = v.confirmModal.value) != null && e.confirmPasswordOnce ? v.confirmModal.value.confirmPasswordOnce : !1; + return (e = p.confirmModal.value) != null && e.confirmPasswordOnce ? p.confirmModal.value.confirmPasswordOnce : !1; }, confirmDanger: function() { var e; - return (e = v.confirmModal.value) != null && e.confirmDanger ? v.confirmModal.value.confirmDanger : !1; + return (e = p.confirmModal.value) != null && e.confirmDanger ? p.confirmModal.value.confirmDanger : !1; } }, watch: { @@ -2020,7 +2030,7 @@ const Lu = { }, methods: { cancel() { - v.confirmModal.value.rejectPromise(), this.setIsOpen(!1), this.resetPassword(); + p.confirmModal.value.rejectPromise(), this.setIsOpen(!1), this.resetPassword(); }, resetPassword() { this.password = "", this.passwordError = ""; @@ -2042,13 +2052,13 @@ const Lu = { }); }, handleSuccess(e) { - v.confirmModal.value.resolvePromise(e), this.setIsOpen(!1), this.resetPassword(); + p.confirmModal.value.resolvePromise(e), this.setIsOpen(!1), this.resetPassword(); }, async setIsOpen(e) { if (e && this.confirmPassword && this.confirmPasswordOnce) try { if ((await ne.get(this.confirmedPasswordStatusRoute)).status === 200) { - this.handleSuccess(null), v.clearConfirmModal(); + this.handleSuccess(null), p.clearConfirmModal(); return; } } catch { @@ -2056,7 +2066,7 @@ const Lu = { this.isOpen = e; }, emitClose() { - this.resetPassword(), v.clearConfirmModal(); + this.resetPassword(), p.clearConfirmModal(); }, setPassword(e) { this.password = e; @@ -2079,64 +2089,64 @@ const Lu = { passwordError: this.passwordError, submitting: this.submitting, // These HeadlessUI exports will be removed in v1.0 - Dialog: Yr, - DialogPanel: Zr, + Dialog: en, + DialogPanel: tn, TransitionRoot: ut, TransitionChild: lt }); } }; -function Zi(e, t) { - t = Jr(t, e); +function es(e, t) { + t = Yr(t, e); for (var r = 0, n = t.length; e != null && r < n; ) e = e[$t(t[r++])]; return r && r == n ? e : void 0; } function be(e, t, r) { - var n = e == null ? void 0 : Zi(e, t); + var n = e == null ? void 0 : es(e, t); return n === void 0 ? r : n; } -var Bu = function() { +var ju = function() { try { var e = Qe(Object, "defineProperty"); return e({}, "", {}), e; } catch { } }(); -const Fn = Bu; -function es(e, t, r) { - t == "__proto__" && Fn ? Fn(e, t, { +const Ln = ju; +function ts(e, t, r) { + t == "__proto__" && Ln ? Ln(e, t, { configurable: !0, enumerable: !0, value: r, writable: !0 }) : e[t] = r; } -var ju = Object.prototype, Mu = ju.hasOwnProperty; -function Ru(e, t, r) { +var Mu = Object.prototype, Du = Mu.hasOwnProperty; +function Nu(e, t, r) { var n = e[t]; - (!(Mu.call(e, t) && Gr(n, r)) || r === void 0 && !(t in e)) && es(e, t, r); + (!(Du.call(e, t) && Kr(n, r)) || r === void 0 && !(t in e)) && ts(e, t, r); } -function Du(e, t, r, n) { +function Vu(e, t, r, n) { if (!J(e)) return e; - t = Jr(t, e); + t = Yr(t, e); for (var i = -1, s = t.length, a = s - 1, o = e; o != null && ++i < s; ) { var l = $t(t[i]), u = r; if (l === "__proto__" || l === "constructor" || l === "prototype") return e; if (i != a) { var c = o[l]; - u = n ? n(c, l, o) : void 0, u === void 0 && (u = J(c) ? c : Br(t[i + 1]) ? [] : {}); + u = n ? n(c, l, o) : void 0, u === void 0 && (u = J(c) ? c : Rr(t[i + 1]) ? [] : {}); } - Ru(o, l, u), o = o[l]; + Nu(o, l, u), o = o[l]; } return e; } function St(e, t, r) { - return e == null ? e : Du(e, t, r); + return e == null ? e : Vu(e, t, r); } -const Nu = { +const Hu = { props: { default: { type: Object, @@ -2161,12 +2171,12 @@ const Nu = { }, beforeMount() { if (this.remember) { - let e = v.restore(this.remember, this.localStorage); + let e = p.restore(this.remember, this.localStorage); e || (e = {}), this.values = Object.assign({}, { ...this.default, ...e }); } }, updated() { - this.remember && v.remember(this.remember, { ...this.values }, this.localStorage); + this.remember && p.remember(this.remember, { ...this.values }, this.localStorage); }, render() { const e = this; @@ -2184,7 +2194,7 @@ const Nu = { }) ) : null; } -}, Vu = { +}, Uu = { props: { parsed: { type: Object, @@ -2210,13 +2220,13 @@ const Nu = { }, beforeMount() { this.remember.forEach((e) => { - let t = v.restore(e, this.localStorage.includes(e)); + let t = p.restore(e, this.localStorage.includes(e)); this.stores[e] = { ...this.stores[e], ...t }; }); }, updated() { this.remember.forEach((e) => { - v.remember(e, { ...this.stores[e] }, this.localStorage.includes(e)); + p.remember(e, { ...this.stores[e] }, this.localStorage.includes(e)); }); }, render() { @@ -2236,67 +2246,67 @@ const Nu = { ) : null; } }; -var Uu = function() { +var Wu = function() { return ve.Date.now(); }; -const mr = Uu; -var Hu = /\s/; -function Wu(e) { - for (var t = e.length; t-- && Hu.test(e.charAt(t)); ) +const mr = Wu; +var zu = /\s/; +function Gu(e) { + for (var t = e.length; t-- && zu.test(e.charAt(t)); ) ; return t; } -var zu = /^\s+/; -function Gu(e) { - return e && e.slice(0, Wu(e) + 1).replace(zu, ""); +var Xu = /^\s+/; +function Ku(e) { + return e && e.slice(0, Gu(e) + 1).replace(Xu, ""); } -var kn = 0 / 0, Xu = /^[-+]0x[0-9a-f]+$/i, Ku = /^0b[01]+$/i, Ju = /^0o[0-7]+$/i, Qu = parseInt; +var Rn = 0 / 0, Ju = /^[-+]0x[0-9a-f]+$/i, Qu = /^0b[01]+$/i, Yu = /^0o[0-7]+$/i, Zu = parseInt; function Tr(e) { if (typeof e == "number") return e; if (Xt(e)) - return kn; + return Rn; if (J(e)) { var t = typeof e.valueOf == "function" ? e.valueOf() : e; e = J(t) ? t + "" : t; } if (typeof e != "string") return e === 0 ? e : +e; - e = Gu(e); - var r = Ku.test(e); - return r || Ju.test(e) ? Qu(e.slice(2), r ? 2 : 8) : Xu.test(e) ? kn : +e; + e = Ku(e); + var r = Qu.test(e); + return r || Yu.test(e) ? Zu(e.slice(2), r ? 2 : 8) : Ju.test(e) ? Rn : +e; } -var Yu = "Expected a function", Zu = Math.max, ec = Math.min; +var ec = "Expected a function", tc = Math.max, rc = Math.min; function er(e, t, r) { - var n, i, s, a, o, l, u = 0, c = !1, m = !1, g = !0; + var n, i, s, a, o, l, u = 0, c = !1, v = !1, g = !0; if (typeof e != "function") - throw new TypeError(Yu); - t = Tr(t) || 0, J(r) && (c = !!r.leading, m = "maxWait" in r, s = m ? Zu(Tr(r.maxWait) || 0, t) : s, g = "trailing" in r ? !!r.trailing : g); + throw new TypeError(ec); + t = Tr(t) || 0, J(r) && (c = !!r.leading, v = "maxWait" in r, s = v ? tc(Tr(r.maxWait) || 0, t) : s, g = "trailing" in r ? !!r.trailing : g); function f(w) { var _ = n, q = i; return n = i = void 0, u = w, a = e.apply(q, _), a; } - function p(w) { + function h(w) { return u = w, o = setTimeout(b, t), c ? f(w) : a; } - function h(w) { + function m(w) { var _ = w - l, q = w - u, P = t - _; - return m ? ec(P, s - q) : P; + return v ? rc(P, s - q) : P; } function d(w) { var _ = w - l, q = w - u; - return l === void 0 || _ >= t || _ < 0 || m && q >= s; + return l === void 0 || _ >= t || _ < 0 || v && q >= s; } function b() { var w = mr(); if (d(w)) return O(w); - o = setTimeout(b, h(w)); + o = setTimeout(b, m(w)); } function O(w) { return o = void 0, g && n ? f(w) : (n = i = void 0, a); } - function I() { + function A() { o !== void 0 && clearTimeout(o), u = 0, n = l = i = o = void 0; } function S() { @@ -2306,15 +2316,15 @@ function er(e, t, r) { var w = mr(), _ = d(w); if (n = arguments, i = this, l = w, _) { if (o === void 0) - return p(l); - if (m) + return h(l); + if (v) return clearTimeout(o), o = setTimeout(b, t), f(l); } return o === void 0 && (o = setTimeout(b, t)), a; } - return $.cancel = I, $.flush = S, $; + return $.cancel = A, $.flush = S, $; } -const tc = { +const nc = { props: { url: { type: String, @@ -2418,7 +2428,7 @@ const tc = { reload: this.performRequest }); } -}, rc = { +}, ic = { data() { return { isActivated: !0 @@ -2432,12 +2442,12 @@ const tc = { }, render() { return this.$slots.default({ - Dialog: Yr, - DialogPanel: Zr, + Dialog: en, + DialogPanel: tn, isActivated: this.isActivated }); } -}, ts = { +}, rs = { __name: "OnClickOutside", props: { do: { @@ -2467,9 +2477,9 @@ const tc = { }, document.addEventListener("click", r.value), document.addEventListener("touchstart", r.value), t.closeOnEscape && (i.value = (s) => { t.opened && s.key === "Escape" && t.do(); }, document.addEventListener("keydown", i.value)); - }), Cs(() => { + }), Fs(() => { document.removeEventListener("click", r.value), document.removeEventListener("touchstart", r.value), t.closeOnEscape && document.removeEventListener("keydown", i.value); - }), (s, a) => (j(), ce("div", { + }), (s, a) => (B(), ce("div", { ref_key: "root", ref: n }, [ @@ -2494,7 +2504,7 @@ function re(e) { var t = Q(e).HTMLElement; return e instanceof t || e instanceof HTMLElement; } -function rn(e) { +function sn(e) { if (typeof ShadowRoot > "u") return !1; var t = Q(e).ShadowRoot; @@ -2507,67 +2517,67 @@ function xr() { return t.brand + "/" + t.version; }).join(" ") : navigator.userAgent; } -function rs() { +function ns() { return !/^((?!chrome|android).)*safari/i.test(xr()); } function it(e, t, r) { t === void 0 && (t = !1), r === void 0 && (r = !1); var n = e.getBoundingClientRect(), i = 1, s = 1; t && re(e) && (i = e.offsetWidth > 0 && nt(n.width) / e.offsetWidth || 1, s = e.offsetHeight > 0 && nt(n.height) / e.offsetHeight || 1); - var a = Xe(e) ? Q(e) : window, o = a.visualViewport, l = !rs() && r, u = (n.left + (l && o ? o.offsetLeft : 0)) / i, c = (n.top + (l && o ? o.offsetTop : 0)) / s, m = n.width / i, g = n.height / s; + var a = Xe(e) ? Q(e) : window, o = a.visualViewport, l = !ns() && r, u = (n.left + (l && o ? o.offsetLeft : 0)) / i, c = (n.top + (l && o ? o.offsetTop : 0)) / s, v = n.width / i, g = n.height / s; return { - width: m, + width: v, height: g, top: c, - right: u + m, + right: u + v, bottom: c + g, left: u, x: u, y: c }; } -function nn(e) { +function an(e) { var t = Q(e), r = t.pageXOffset, n = t.pageYOffset; return { scrollLeft: r, scrollTop: n }; } -function nc(e) { +function sc(e) { return { scrollLeft: e.scrollLeft, scrollTop: e.scrollTop }; } -function ic(e) { - return e === Q(e) || !re(e) ? nn(e) : nc(e); +function ac(e) { + return e === Q(e) || !re(e) ? an(e) : sc(e); } function pe(e) { return e ? (e.nodeName || "").toLowerCase() : null; } -function Me(e) { +function je(e) { return ((Xe(e) ? e.ownerDocument : ( // $FlowFixMe[prop-missing] e.document )) || window.document).documentElement; } -function sn(e) { - return it(Me(e)).left + nn(e).scrollLeft; +function on(e) { + return it(je(e)).left + an(e).scrollLeft; } function Ee(e) { return Q(e).getComputedStyle(e); } -function an(e) { +function ln(e) { var t = Ee(e), r = t.overflow, n = t.overflowX, i = t.overflowY; return /auto|scroll|overlay|hidden/.test(r + i + n); } -function sc(e) { +function oc(e) { var t = e.getBoundingClientRect(), r = nt(t.width) / e.offsetWidth || 1, n = nt(t.height) / e.offsetHeight || 1; return r !== 1 || n !== 1; } -function ac(e, t, r) { +function lc(e, t, r) { r === void 0 && (r = !1); - var n = re(t), i = re(t) && sc(t), s = Me(t), a = it(e, i, r), o = { + var n = re(t), i = re(t) && oc(t), s = je(t), a = it(e, i, r), o = { scrollLeft: 0, scrollTop: 0 }, l = { @@ -2575,14 +2585,14 @@ function ac(e, t, r) { y: 0 }; return (n || !n && !r) && ((pe(t) !== "body" || // https://github.com/popperjs/popper-core/issues/1078 - an(s)) && (o = ic(t)), re(t) ? (l = it(t, !0), l.x += t.clientLeft, l.y += t.clientTop) : s && (l.x = sn(s))), { + ln(s)) && (o = ac(t)), re(t) ? (l = it(t, !0), l.x += t.clientLeft, l.y += t.clientTop) : s && (l.x = on(s))), { x: a.left + o.scrollLeft - l.x, y: a.top + o.scrollTop - l.y, width: a.width, height: a.height }; } -function ns(e) { +function is(e) { var t = it(e), r = e.offsetWidth, n = e.offsetHeight; return Math.abs(t.width - r) <= 1 && (r = t.width), Math.abs(t.height - n) <= 1 && (n = t.height), { x: e.offsetLeft, @@ -2598,31 +2608,31 @@ function tr(e) { // $FlowFixMe[prop-missing] e.assignedSlot || // step into the shadow DOM of the parent of a slotted node e.parentNode || // DOM Element detected - (rn(e) ? e.host : null) || // ShadowRoot detected + (sn(e) ? e.host : null) || // ShadowRoot detected // $FlowFixMe[incompatible-call]: HTMLElement is a Node - Me(e) + je(e) ); } -function is(e) { - return ["html", "body", "#document"].indexOf(pe(e)) >= 0 ? e.ownerDocument.body : re(e) && an(e) ? e : is(tr(e)); +function ss(e) { + return ["html", "body", "#document"].indexOf(pe(e)) >= 0 ? e.ownerDocument.body : re(e) && ln(e) ? e : ss(tr(e)); } function yt(e, t) { var r; t === void 0 && (t = []); - var n = is(e), i = n === ((r = e.ownerDocument) == null ? void 0 : r.body), s = Q(n), a = i ? [s].concat(s.visualViewport || [], an(n) ? n : []) : n, o = t.concat(a); + var n = ss(e), i = n === ((r = e.ownerDocument) == null ? void 0 : r.body), s = Q(n), a = i ? [s].concat(s.visualViewport || [], ln(n) ? n : []) : n, o = t.concat(a); return i ? o : ( // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here o.concat(yt(tr(a))) ); } -function oc(e) { +function uc(e) { return ["table", "td", "th"].indexOf(pe(e)) >= 0; } -function Ln(e) { +function Bn(e) { return !re(e) || // https://github.com/popperjs/popper-core/issues/837 Ee(e).position === "fixed" ? null : e.offsetParent; } -function lc(e) { +function cc(e) { var t = /firefox/i.test(xr()), r = /Trident/i.test(xr()); if (r && re(e)) { var n = Ee(e); @@ -2630,7 +2640,7 @@ function lc(e) { return null; } var i = tr(e); - for (rn(i) && (i = i.host); re(i) && ["html", "body"].indexOf(pe(i)) < 0; ) { + for (sn(i) && (i = i.host); re(i) && ["html", "body"].indexOf(pe(i)) < 0; ) { var s = Ee(i); if (s.transform !== "none" || s.perspective !== "none" || s.contain === "paint" || ["transform", "perspective"].indexOf(s.willChange) !== -1 || t && s.willChange === "filter" || t && s.filter && s.filter !== "none") return i; @@ -2639,16 +2649,16 @@ function lc(e) { return null; } function rr(e) { - for (var t = Q(e), r = Ln(e); r && oc(r) && Ee(r).position === "static"; ) - r = Ln(r); - return r && (pe(r) === "html" || pe(r) === "body" && Ee(r).position === "static") ? t : r || lc(e) || t; + for (var t = Q(e), r = Bn(e); r && uc(r) && Ee(r).position === "static"; ) + r = Bn(r); + return r && (pe(r) === "html" || pe(r) === "body" && Ee(r).position === "static") ? t : r || cc(e) || t; } -var oe = "top", he = "bottom", Be = "right", we = "left", on = "auto", nr = [oe, he, Be, we], st = "start", Ot = "end", uc = "clippingParents", ss = "viewport", mt = "popper", cc = "reference", Bn = /* @__PURE__ */ nr.reduce(function(e, t) { +var oe = "top", he = "bottom", Re = "right", we = "left", un = "auto", nr = [oe, he, Re, we], st = "start", Ot = "end", dc = "clippingParents", as = "viewport", mt = "popper", fc = "reference", jn = /* @__PURE__ */ nr.reduce(function(e, t) { return e.concat([t + "-" + st, t + "-" + Ot]); -}, []), dc = /* @__PURE__ */ [].concat(nr, [on]).reduce(function(e, t) { +}, []), pc = /* @__PURE__ */ [].concat(nr, [un]).reduce(function(e, t) { return e.concat([t, t + "-" + st, t + "-" + Ot]); -}, []), fc = "beforeRead", pc = "read", hc = "afterRead", mc = "beforeMain", vc = "main", gc = "afterMain", yc = "beforeWrite", bc = "write", wc = "afterWrite", Sc = [fc, pc, hc, mc, vc, gc, yc, bc, wc]; -function Oc(e) { +}, []), hc = "beforeRead", mc = "read", vc = "afterRead", gc = "beforeMain", yc = "main", bc = "afterMain", wc = "beforeWrite", Sc = "write", Oc = "afterWrite", $c = [hc, mc, vc, gc, yc, bc, wc, Sc, Oc]; +function Ec(e) { var t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set(), n = []; e.forEach(function(s) { t.set(s.name, s); @@ -2667,15 +2677,15 @@ function Oc(e) { r.has(s.name) || i(s); }), n; } -function $c(e) { - var t = Oc(e); - return Sc.reduce(function(r, n) { +function Tc(e) { + var t = Ec(e); + return $c.reduce(function(r, n) { return r.concat(t.filter(function(i) { return i.phase === n; })); }, []); } -function Ec(e) { +function xc(e) { var t; return function() { return t || (t = new Promise(function(r) { @@ -2685,7 +2695,7 @@ function Ec(e) { })), t; }; } -function Tc(e) { +function _c(e) { var t = e.reduce(function(r, n) { var i = r[n.name]; return r[n.name] = i ? Object.assign({}, i, n, { @@ -2697,22 +2707,22 @@ function Tc(e) { return t[r]; }); } -function xc(e, t) { - var r = Q(e), n = Me(e), i = r.visualViewport, s = n.clientWidth, a = n.clientHeight, o = 0, l = 0; +function Ic(e, t) { + var r = Q(e), n = je(e), i = r.visualViewport, s = n.clientWidth, a = n.clientHeight, o = 0, l = 0; if (i) { s = i.width, a = i.height; - var u = rs(); + var u = ns(); (u || !u && t === "fixed") && (o = i.offsetLeft, l = i.offsetTop); } return { width: s, height: a, - x: o + sn(e), + x: o + on(e), y: l }; } -function _c(e) { - var t, r = Me(e), n = nn(e), i = (t = e.ownerDocument) == null ? void 0 : t.body, s = ze(r.scrollWidth, r.clientWidth, i ? i.scrollWidth : 0, i ? i.clientWidth : 0), a = ze(r.scrollHeight, r.clientHeight, i ? i.scrollHeight : 0, i ? i.clientHeight : 0), o = -n.scrollLeft + sn(e), l = -n.scrollTop; +function Ac(e) { + var t, r = je(e), n = an(e), i = (t = e.ownerDocument) == null ? void 0 : t.body, s = ze(r.scrollWidth, r.clientWidth, i ? i.scrollWidth : 0, i ? i.clientWidth : 0), a = ze(r.scrollHeight, r.clientHeight, i ? i.scrollHeight : 0, i ? i.clientHeight : 0), o = -n.scrollLeft + on(e), l = -n.scrollTop; return Ee(i || r).direction === "rtl" && (o += ze(r.clientWidth, i ? i.clientWidth : 0) - s), { width: s, height: a, @@ -2720,11 +2730,11 @@ function _c(e) { y: l }; } -function Ac(e, t) { +function Pc(e, t) { var r = t.getRootNode && t.getRootNode(); if (e.contains(t)) return !0; - if (r && rn(r)) { + if (r && sn(r)) { var n = t; do { if (n && e.isSameNode(n)) @@ -2742,24 +2752,24 @@ function _r(e) { bottom: e.y + e.height }); } -function Ic(e, t) { +function qc(e, t) { var r = it(e, !1, t === "fixed"); return r.top = r.top + e.clientTop, r.left = r.left + e.clientLeft, r.bottom = r.top + e.clientHeight, r.right = r.left + e.clientWidth, r.width = e.clientWidth, r.height = e.clientHeight, r.x = r.left, r.y = r.top, r; } -function jn(e, t, r) { - return t === ss ? _r(xc(e, r)) : Xe(t) ? Ic(t, r) : _r(_c(Me(e))); +function Mn(e, t, r) { + return t === as ? _r(Ic(e, r)) : Xe(t) ? qc(t, r) : _r(Ac(je(e))); } -function Pc(e) { +function Cc(e) { var t = yt(tr(e)), r = ["absolute", "fixed"].indexOf(Ee(e).position) >= 0, n = r && re(e) ? rr(e) : e; return Xe(n) ? t.filter(function(i) { - return Xe(i) && Ac(i, n) && pe(i) !== "body"; + return Xe(i) && Pc(i, n) && pe(i) !== "body"; }) : []; } -function qc(e, t, r, n) { - var i = t === "clippingParents" ? Pc(e) : [].concat(t), s = [].concat(i, [r]), a = s[0], o = s.reduce(function(l, u) { - var c = jn(e, u, n); +function Fc(e, t, r, n) { + var i = t === "clippingParents" ? Cc(e) : [].concat(t), s = [].concat(i, [r]), a = s[0], o = s.reduce(function(l, u) { + var c = Mn(e, u, n); return l.top = ze(c.top, l.top), l.right = Vt(c.right, l.right), l.bottom = Vt(c.bottom, l.bottom), l.left = ze(c.left, l.left), l; - }, jn(e, a, n)); + }, Mn(e, a, n)); return o.width = o.right - o.left, o.height = o.bottom - o.top, o.x = o.left, o.y = o.top, o; } function Fe(e) { @@ -2768,10 +2778,10 @@ function Fe(e) { function at(e) { return e.split("-")[1]; } -function as(e) { +function os(e) { return ["top", "bottom"].indexOf(e) >= 0 ? "x" : "y"; } -function os(e) { +function ls(e) { var t = e.reference, r = e.element, n = e.placement, i = n ? Fe(n) : null, s = n ? at(n) : null, a = t.x + t.width / 2 - r.width / 2, o = t.y + t.height / 2 - r.height / 2, l; switch (i) { case oe: @@ -2786,7 +2796,7 @@ function os(e) { y: t.y + t.height }; break; - case Be: + case Re: l = { x: t.x + t.width, y: o @@ -2804,7 +2814,7 @@ function os(e) { y: t.y }; } - var u = i ? as(i) : null; + var u = i ? os(i) : null; if (u != null) { var c = u === "y" ? "height" : "width"; switch (s) { @@ -2818,7 +2828,7 @@ function os(e) { } return l; } -function ls() { +function us() { return { top: 0, right: 0, @@ -2826,57 +2836,57 @@ function ls() { left: 0 }; } -function Cc(e) { - return Object.assign({}, ls(), e); +function kc(e) { + return Object.assign({}, us(), e); } -function Fc(e, t) { +function Lc(e, t) { return t.reduce(function(r, n) { return r[n] = e, r; }, {}); } -function ln(e, t) { +function cn(e, t) { t === void 0 && (t = {}); - var r = t, n = r.placement, i = n === void 0 ? e.placement : n, s = r.strategy, a = s === void 0 ? e.strategy : s, o = r.boundary, l = o === void 0 ? uc : o, u = r.rootBoundary, c = u === void 0 ? ss : u, m = r.elementContext, g = m === void 0 ? mt : m, f = r.altBoundary, p = f === void 0 ? !1 : f, h = r.padding, d = h === void 0 ? 0 : h, b = Cc(typeof d != "number" ? d : Fc(d, nr)), O = g === mt ? cc : mt, I = e.rects.popper, S = e.elements[p ? O : g], $ = qc(Xe(S) ? S : S.contextElement || Me(e.elements.popper), l, c, a), w = it(e.elements.reference), _ = os({ + var r = t, n = r.placement, i = n === void 0 ? e.placement : n, s = r.strategy, a = s === void 0 ? e.strategy : s, o = r.boundary, l = o === void 0 ? dc : o, u = r.rootBoundary, c = u === void 0 ? as : u, v = r.elementContext, g = v === void 0 ? mt : v, f = r.altBoundary, h = f === void 0 ? !1 : f, m = r.padding, d = m === void 0 ? 0 : m, b = kc(typeof d != "number" ? d : Lc(d, nr)), O = g === mt ? fc : mt, A = e.rects.popper, S = e.elements[h ? O : g], $ = Fc(Xe(S) ? S : S.contextElement || je(e.elements.popper), l, c, a), w = it(e.elements.reference), _ = ls({ reference: w, - element: I, + element: A, strategy: "absolute", placement: i - }), q = _r(Object.assign({}, I, _)), P = g === mt ? q : w, k = { + }), q = _r(Object.assign({}, A, _)), P = g === mt ? q : w, k = { top: $.top - P.top + b.top, bottom: P.bottom - $.bottom + b.bottom, left: $.left - P.left + b.left, right: P.right - $.right + b.right - }, M = e.modifiersData.offset; - if (g === mt && M) { - var U = M[i]; + }, j = e.modifiersData.offset; + if (g === mt && j) { + var H = j[i]; Object.keys(k).forEach(function(F) { - var E = [Be, he].indexOf(F) >= 0 ? 1 : -1, T = [oe, he].indexOf(F) >= 0 ? "y" : "x"; - k[F] += U[T] * E; + var E = [Re, he].indexOf(F) >= 0 ? 1 : -1, T = [oe, he].indexOf(F) >= 0 ? "y" : "x"; + k[F] += H[T] * E; }); } return k; } -var Mn = { +var Dn = { placement: "bottom", modifiers: [], strategy: "absolute" }; -function Rn() { +function Nn() { for (var e = arguments.length, t = new Array(e), r = 0; r < e; r++) t[r] = arguments[r]; return !t.some(function(n) { return !(n && typeof n.getBoundingClientRect == "function"); }); } -function kc(e) { +function Rc(e) { e === void 0 && (e = {}); - var t = e, r = t.defaultModifiers, n = r === void 0 ? [] : r, i = t.defaultOptions, s = i === void 0 ? Mn : i; + var t = e, r = t.defaultModifiers, n = r === void 0 ? [] : r, i = t.defaultOptions, s = i === void 0 ? Dn : i; return function(o, l, u) { u === void 0 && (u = s); var c = { placement: "bottom", orderedModifiers: [], - options: Object.assign({}, Mn, s), + options: Object.assign({}, Dn, s), modifiersData: {}, elements: { reference: o, @@ -2884,18 +2894,18 @@ function kc(e) { }, attributes: {}, styles: {} - }, m = [], g = !1, f = { + }, v = [], g = !1, f = { state: c, setOptions: function(b) { var O = typeof b == "function" ? b(c.options) : b; - h(), c.options = Object.assign({}, s, c.options, O), c.scrollParents = { + m(), c.options = Object.assign({}, s, c.options, O), c.scrollParents = { reference: Xe(o) ? yt(o) : o.contextElement ? yt(o.contextElement) : [], popper: yt(l) }; - var I = $c(Tc([].concat(n, c.options.modifiers))); - return c.orderedModifiers = I.filter(function(S) { + var A = Tc(_c([].concat(n, c.options.modifiers))); + return c.orderedModifiers = A.filter(function(S) { return S.enabled; - }), p(), f.update(); + }), h(), f.update(); }, // Sync update – it will always be executed, even if not necessary. This // is useful for low frequency updates where sync behavior simplifies the @@ -2904,11 +2914,11 @@ function kc(e) { // prefer the async Popper#update method forceUpdate: function() { if (!g) { - var b = c.elements, O = b.reference, I = b.popper; - if (Rn(O, I)) { + var b = c.elements, O = b.reference, A = b.popper; + if (Nn(O, A)) { c.rects = { - reference: ac(O, rr(I), c.options.strategy === "fixed"), - popper: ns(I) + reference: lc(O, rr(A), c.options.strategy === "fixed"), + popper: is(A) }, c.reset = !1, c.placement = c.options.placement, c.orderedModifiers.forEach(function(k) { return c.modifiersData[k.name] = Object.assign({}, k.data); }); @@ -2930,39 +2940,39 @@ function kc(e) { }, // Async and optimistically optimized update – it will not be executed if // not necessary (debounced to run at most once-per-tick) - update: Ec(function() { + update: xc(function() { return new Promise(function(d) { f.forceUpdate(), d(c); }); }), destroy: function() { - h(), g = !0; + m(), g = !0; } }; - if (!Rn(o, l)) + if (!Nn(o, l)) return f; f.setOptions(u).then(function(d) { !g && u.onFirstUpdate && u.onFirstUpdate(d); }); - function p() { + function h() { c.orderedModifiers.forEach(function(d) { - var b = d.name, O = d.options, I = O === void 0 ? {} : O, S = d.effect; + var b = d.name, O = d.options, A = O === void 0 ? {} : O, S = d.effect; if (typeof S == "function") { var $ = S({ state: c, name: b, instance: f, - options: I + options: A }), w = function() { }; - m.push($ || w); + v.push($ || w); } }); } - function h() { - m.forEach(function(d) { + function m() { + v.forEach(function(d) { return d(); - }), m = []; + }), v = []; } return f; }; @@ -2970,7 +2980,7 @@ function kc(e) { var Ft = { passive: !0 }; -function Lc(e) { +function Bc(e) { var t = e.state, r = e.instance, n = e.options, i = n.scroll, s = i === void 0 ? !0 : i, a = n.resize, o = a === void 0 ? !0 : a, l = Q(t.elements.popper), u = [].concat(t.scrollParents.reference, t.scrollParents.popper); return s && u.forEach(function(c) { c.addEventListener("scroll", r.update, Ft); @@ -2980,89 +2990,89 @@ function Lc(e) { }), o && l.removeEventListener("resize", r.update, Ft); }; } -const Bc = { +const jc = { name: "eventListeners", enabled: !0, phase: "write", fn: function() { }, - effect: Lc, + effect: Bc, data: {} }; -function jc(e) { +function Mc(e) { var t = e.state, r = e.name; - t.modifiersData[r] = os({ + t.modifiersData[r] = ls({ reference: t.rects.reference, element: t.rects.popper, strategy: "absolute", placement: t.placement }); } -const Mc = { +const Dc = { name: "popperOffsets", enabled: !0, phase: "read", - fn: jc, + fn: Mc, data: {} }; -var Rc = { +var Nc = { top: "auto", right: "auto", bottom: "auto", left: "auto" }; -function Dc(e, t) { +function Vc(e, t) { var r = e.x, n = e.y, i = t.devicePixelRatio || 1; return { x: nt(r * i) / i || 0, y: nt(n * i) / i || 0 }; } -function Dn(e) { - var t, r = e.popper, n = e.popperRect, i = e.placement, s = e.variation, a = e.offsets, o = e.position, l = e.gpuAcceleration, u = e.adaptive, c = e.roundOffsets, m = e.isFixed, g = a.x, f = g === void 0 ? 0 : g, p = a.y, h = p === void 0 ? 0 : p, d = typeof c == "function" ? c({ +function Vn(e) { + var t, r = e.popper, n = e.popperRect, i = e.placement, s = e.variation, a = e.offsets, o = e.position, l = e.gpuAcceleration, u = e.adaptive, c = e.roundOffsets, v = e.isFixed, g = a.x, f = g === void 0 ? 0 : g, h = a.y, m = h === void 0 ? 0 : h, d = typeof c == "function" ? c({ x: f, - y: h + y: m }) : { x: f, - y: h + y: m }; - f = d.x, h = d.y; - var b = a.hasOwnProperty("x"), O = a.hasOwnProperty("y"), I = we, S = oe, $ = window; + f = d.x, m = d.y; + var b = a.hasOwnProperty("x"), O = a.hasOwnProperty("y"), A = we, S = oe, $ = window; if (u) { var w = rr(r), _ = "clientHeight", q = "clientWidth"; - if (w === Q(r) && (w = Me(r), Ee(w).position !== "static" && o === "absolute" && (_ = "scrollHeight", q = "scrollWidth")), w = w, i === oe || (i === we || i === Be) && s === Ot) { + if (w === Q(r) && (w = je(r), Ee(w).position !== "static" && o === "absolute" && (_ = "scrollHeight", q = "scrollWidth")), w = w, i === oe || (i === we || i === Re) && s === Ot) { S = he; - var P = m && w === $ && $.visualViewport ? $.visualViewport.height : ( + var P = v && w === $ && $.visualViewport ? $.visualViewport.height : ( // $FlowFixMe[prop-missing] w[_] ); - h -= P - n.height, h *= l ? 1 : -1; + m -= P - n.height, m *= l ? 1 : -1; } if (i === we || (i === oe || i === he) && s === Ot) { - I = Be; - var k = m && w === $ && $.visualViewport ? $.visualViewport.width : ( + A = Re; + var k = v && w === $ && $.visualViewport ? $.visualViewport.width : ( // $FlowFixMe[prop-missing] w[q] ); f -= k - n.width, f *= l ? 1 : -1; } } - var M = Object.assign({ + var j = Object.assign({ position: o - }, u && Rc), U = c === !0 ? Dc({ + }, u && Nc), H = c === !0 ? Vc({ x: f, - y: h + y: m }, Q(r)) : { x: f, - y: h + y: m }; - if (f = U.x, h = U.y, l) { + if (f = H.x, m = H.y, l) { var F; - return Object.assign({}, M, (F = {}, F[S] = O ? "0" : "", F[I] = b ? "0" : "", F.transform = ($.devicePixelRatio || 1) <= 1 ? "translate(" + f + "px, " + h + "px)" : "translate3d(" + f + "px, " + h + "px, 0)", F)); + return Object.assign({}, j, (F = {}, F[S] = O ? "0" : "", F[A] = b ? "0" : "", F.transform = ($.devicePixelRatio || 1) <= 1 ? "translate(" + f + "px, " + m + "px)" : "translate3d(" + f + "px, " + m + "px, 0)", F)); } - return Object.assign({}, M, (t = {}, t[S] = O ? h + "px" : "", t[I] = b ? f + "px" : "", t.transform = "", t)); + return Object.assign({}, j, (t = {}, t[S] = O ? m + "px" : "", t[A] = b ? f + "px" : "", t.transform = "", t)); } -function Nc(e) { +function Hc(e) { var t = e.state, r = e.options, n = r.gpuAcceleration, i = n === void 0 ? !0 : n, s = r.adaptive, a = s === void 0 ? !0 : s, o = r.roundOffsets, l = o === void 0 ? !0 : o, u = { placement: Fe(t.placement), variation: at(t.placement), @@ -3071,12 +3081,12 @@ function Nc(e) { gpuAcceleration: i, isFixed: t.options.strategy === "fixed" }; - t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper, Dn(Object.assign({}, u, { + t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper, Vn(Object.assign({}, u, { offsets: t.modifiersData.popperOffsets, position: t.options.strategy, adaptive: a, roundOffsets: l - })))), t.modifiersData.arrow != null && (t.styles.arrow = Object.assign({}, t.styles.arrow, Dn(Object.assign({}, u, { + })))), t.modifiersData.arrow != null && (t.styles.arrow = Object.assign({}, t.styles.arrow, Vn(Object.assign({}, u, { offsets: t.modifiersData.arrow, position: "absolute", adaptive: !1, @@ -3085,14 +3095,14 @@ function Nc(e) { "data-popper-placement": t.placement }); } -const Vc = { +const Uc = { name: "computeStyles", enabled: !0, phase: "beforeWrite", - fn: Nc, + fn: Hc, data: {} }; -function Uc(e) { +function Wc(e) { var t = e.state; Object.keys(t.elements).forEach(function(r) { var n = t.styles[r] || {}, i = t.attributes[r] || {}, s = t.elements[r]; @@ -3102,7 +3112,7 @@ function Uc(e) { })); }); } -function Hc(e) { +function zc(e) { var t = e.state, r = { popper: { position: t.options.strategy, @@ -3126,167 +3136,167 @@ function Hc(e) { }); }; } -const Wc = { +const Gc = { name: "applyStyles", enabled: !0, phase: "write", - fn: Uc, - effect: Hc, + fn: Wc, + effect: zc, requires: ["computeStyles"] }; -var zc = [Bc, Mc, Vc, Wc], Gc = /* @__PURE__ */ kc({ - defaultModifiers: zc +var Xc = [jc, Dc, Uc, Gc], Kc = /* @__PURE__ */ Rc({ + defaultModifiers: Xc }); -function Xc(e) { +function Jc(e) { return e === "x" ? "y" : "x"; } -function Bt(e, t, r) { +function Rt(e, t, r) { return ze(e, Vt(t, r)); } -function Kc(e, t, r) { - var n = Bt(e, t, r); +function Qc(e, t, r) { + var n = Rt(e, t, r); return n > r ? r : n; } -function Jc(e) { - var t = e.state, r = e.options, n = e.name, i = r.mainAxis, s = i === void 0 ? !0 : i, a = r.altAxis, o = a === void 0 ? !1 : a, l = r.boundary, u = r.rootBoundary, c = r.altBoundary, m = r.padding, g = r.tether, f = g === void 0 ? !0 : g, p = r.tetherOffset, h = p === void 0 ? 0 : p, d = ln(t, { +function Yc(e) { + var t = e.state, r = e.options, n = e.name, i = r.mainAxis, s = i === void 0 ? !0 : i, a = r.altAxis, o = a === void 0 ? !1 : a, l = r.boundary, u = r.rootBoundary, c = r.altBoundary, v = r.padding, g = r.tether, f = g === void 0 ? !0 : g, h = r.tetherOffset, m = h === void 0 ? 0 : h, d = cn(t, { boundary: l, rootBoundary: u, - padding: m, + padding: v, altBoundary: c - }), b = Fe(t.placement), O = at(t.placement), I = !O, S = as(b), $ = Xc(S), w = t.modifiersData.popperOffsets, _ = t.rects.reference, q = t.rects.popper, P = typeof h == "function" ? h(Object.assign({}, t.rects, { + }), b = Fe(t.placement), O = at(t.placement), A = !O, S = os(b), $ = Jc(S), w = t.modifiersData.popperOffsets, _ = t.rects.reference, q = t.rects.popper, P = typeof m == "function" ? m(Object.assign({}, t.rects, { placement: t.placement - })) : h, k = typeof P == "number" ? { + })) : m, k = typeof P == "number" ? { mainAxis: P, altAxis: P } : Object.assign({ mainAxis: 0, altAxis: 0 - }, P), M = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null, U = { + }, P), j = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null, H = { x: 0, y: 0 }; if (w) { if (s) { - var F, E = S === "y" ? oe : we, T = S === "y" ? he : Be, A = S === "y" ? "height" : "width", C = w[S], ge = C + d[E], H = C - d[T], ct = f ? -q[A] / 2 : 0, At = O === st ? _[A] : q[A], Ae = O === st ? -q[A] : -_[A], Ze = t.elements.arrow, Ie = f && Ze ? ns(Ze) : { + var F, E = S === "y" ? oe : we, T = S === "y" ? he : Re, I = S === "y" ? "height" : "width", C = w[S], ge = C + d[E], U = C - d[T], ct = f ? -q[I] / 2 : 0, It = O === st ? _[I] : q[I], Ie = O === st ? -q[I] : -_[I], Ze = t.elements.arrow, Ae = f && Ze ? is(Ze) : { width: 0, height: 0 - }, Pe = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : ls(), dt = Pe[E], It = Pe[T], Re = Bt(0, _[A], Ie[A]), sr = I ? _[A] / 2 - ct - Re - dt - k.mainAxis : At - Re - dt - k.mainAxis, ws = I ? -_[A] / 2 + ct + Re + It + k.mainAxis : Ae + Re + It + k.mainAxis, ar = t.elements.arrow && rr(t.elements.arrow), Ss = ar ? S === "y" ? ar.clientTop || 0 : ar.clientLeft || 0 : 0, fn = (F = M == null ? void 0 : M[S]) != null ? F : 0, Os = C + sr - fn - Ss, $s = C + ws - fn, pn = Bt(f ? Vt(ge, Os) : ge, C, f ? ze(H, $s) : H); - w[S] = pn, U[S] = pn - C; + }, Pe = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : us(), dt = Pe[E], At = Pe[T], Me = Rt(0, _[I], Ae[I]), sr = A ? _[I] / 2 - ct - Me - dt - k.mainAxis : It - Me - dt - k.mainAxis, Ss = A ? -_[I] / 2 + ct + Me + At + k.mainAxis : Ie + Me + At + k.mainAxis, ar = t.elements.arrow && rr(t.elements.arrow), Os = ar ? S === "y" ? ar.clientTop || 0 : ar.clientLeft || 0 : 0, hn = (F = j == null ? void 0 : j[S]) != null ? F : 0, $s = C + sr - hn - Os, Es = C + Ss - hn, mn = Rt(f ? Vt(ge, $s) : ge, C, f ? ze(U, Es) : U); + w[S] = mn, H[S] = mn - C; } if (o) { - var hn, Es = S === "x" ? oe : we, Ts = S === "x" ? he : Be, De = w[$], Pt = $ === "y" ? "height" : "width", mn = De + d[Es], vn = De - d[Ts], or = [oe, we].indexOf(b) !== -1, gn = (hn = M == null ? void 0 : M[$]) != null ? hn : 0, yn = or ? mn : De - _[Pt] - q[Pt] - gn + k.altAxis, bn = or ? De + _[Pt] + q[Pt] - gn - k.altAxis : vn, wn = f && or ? Kc(yn, De, bn) : Bt(f ? yn : mn, De, f ? bn : vn); - w[$] = wn, U[$] = wn - De; + var vn, Ts = S === "x" ? oe : we, xs = S === "x" ? he : Re, De = w[$], Pt = $ === "y" ? "height" : "width", gn = De + d[Ts], yn = De - d[xs], or = [oe, we].indexOf(b) !== -1, bn = (vn = j == null ? void 0 : j[$]) != null ? vn : 0, wn = or ? gn : De - _[Pt] - q[Pt] - bn + k.altAxis, Sn = or ? De + _[Pt] + q[Pt] - bn - k.altAxis : yn, On = f && or ? Qc(wn, De, Sn) : Rt(f ? wn : gn, De, f ? Sn : yn); + w[$] = On, H[$] = On - De; } - t.modifiersData[n] = U; + t.modifiersData[n] = H; } } -const Qc = { +const Zc = { name: "preventOverflow", enabled: !0, phase: "main", - fn: Jc, + fn: Yc, requiresIfExists: ["offset"] }; -var Yc = { +var ed = { left: "right", right: "left", bottom: "top", top: "bottom" }; -function jt(e) { +function Bt(e) { return e.replace(/left|right|bottom|top/g, function(t) { - return Yc[t]; + return ed[t]; }); } -var Zc = { +var td = { start: "end", end: "start" }; -function Nn(e) { +function Hn(e) { return e.replace(/start|end/g, function(t) { - return Zc[t]; + return td[t]; }); } -function ed(e, t) { +function rd(e, t) { t === void 0 && (t = {}); - var r = t, n = r.placement, i = r.boundary, s = r.rootBoundary, a = r.padding, o = r.flipVariations, l = r.allowedAutoPlacements, u = l === void 0 ? dc : l, c = at(n), m = c ? o ? Bn : Bn.filter(function(p) { - return at(p) === c; - }) : nr, g = m.filter(function(p) { - return u.indexOf(p) >= 0; + var r = t, n = r.placement, i = r.boundary, s = r.rootBoundary, a = r.padding, o = r.flipVariations, l = r.allowedAutoPlacements, u = l === void 0 ? pc : l, c = at(n), v = c ? o ? jn : jn.filter(function(h) { + return at(h) === c; + }) : nr, g = v.filter(function(h) { + return u.indexOf(h) >= 0; }); - g.length === 0 && (g = m); - var f = g.reduce(function(p, h) { - return p[h] = ln(e, { - placement: h, + g.length === 0 && (g = v); + var f = g.reduce(function(h, m) { + return h[m] = cn(e, { + placement: m, boundary: i, rootBoundary: s, padding: a - })[Fe(h)], p; + })[Fe(m)], h; }, {}); - return Object.keys(f).sort(function(p, h) { - return f[p] - f[h]; + return Object.keys(f).sort(function(h, m) { + return f[h] - f[m]; }); } -function td(e) { - if (Fe(e) === on) +function nd(e) { + if (Fe(e) === un) return []; - var t = jt(e); - return [Nn(e), t, Nn(t)]; + var t = Bt(e); + return [Hn(e), t, Hn(t)]; } -function rd(e) { +function id(e) { var t = e.state, r = e.options, n = e.name; if (!t.modifiersData[n]._skip) { - for (var i = r.mainAxis, s = i === void 0 ? !0 : i, a = r.altAxis, o = a === void 0 ? !0 : a, l = r.fallbackPlacements, u = r.padding, c = r.boundary, m = r.rootBoundary, g = r.altBoundary, f = r.flipVariations, p = f === void 0 ? !0 : f, h = r.allowedAutoPlacements, d = t.options.placement, b = Fe(d), O = b === d, I = l || (O || !p ? [jt(d)] : td(d)), S = [d].concat(I).reduce(function(Ie, Pe) { - return Ie.concat(Fe(Pe) === on ? ed(t, { + for (var i = r.mainAxis, s = i === void 0 ? !0 : i, a = r.altAxis, o = a === void 0 ? !0 : a, l = r.fallbackPlacements, u = r.padding, c = r.boundary, v = r.rootBoundary, g = r.altBoundary, f = r.flipVariations, h = f === void 0 ? !0 : f, m = r.allowedAutoPlacements, d = t.options.placement, b = Fe(d), O = b === d, A = l || (O || !h ? [Bt(d)] : nd(d)), S = [d].concat(A).reduce(function(Ae, Pe) { + return Ae.concat(Fe(Pe) === un ? rd(t, { placement: Pe, boundary: c, - rootBoundary: m, + rootBoundary: v, padding: u, - flipVariations: p, - allowedAutoPlacements: h + flipVariations: h, + allowedAutoPlacements: m }) : Pe); }, []), $ = t.rects.reference, w = t.rects.popper, _ = /* @__PURE__ */ new Map(), q = !0, P = S[0], k = 0; k < S.length; k++) { - var M = S[k], U = Fe(M), F = at(M) === st, E = [oe, he].indexOf(U) >= 0, T = E ? "width" : "height", A = ln(t, { - placement: M, + var j = S[k], H = Fe(j), F = at(j) === st, E = [oe, he].indexOf(H) >= 0, T = E ? "width" : "height", I = cn(t, { + placement: j, boundary: c, - rootBoundary: m, + rootBoundary: v, altBoundary: g, padding: u - }), C = E ? F ? Be : we : F ? he : oe; - $[T] > w[T] && (C = jt(C)); - var ge = jt(C), H = []; - if (s && H.push(A[U] <= 0), o && H.push(A[C] <= 0, A[ge] <= 0), H.every(function(Ie) { - return Ie; + }), C = E ? F ? Re : we : F ? he : oe; + $[T] > w[T] && (C = Bt(C)); + var ge = Bt(C), U = []; + if (s && U.push(I[H] <= 0), o && U.push(I[C] <= 0, I[ge] <= 0), U.every(function(Ae) { + return Ae; })) { - P = M, q = !1; + P = j, q = !1; break; } - _.set(M, H); + _.set(j, U); } if (q) - for (var ct = p ? 3 : 1, At = function(Pe) { - var dt = S.find(function(It) { - var Re = _.get(It); - if (Re) - return Re.slice(0, Pe).every(function(sr) { + for (var ct = h ? 3 : 1, It = function(Pe) { + var dt = S.find(function(At) { + var Me = _.get(At); + if (Me) + return Me.slice(0, Pe).every(function(sr) { return sr; }); }); if (dt) return P = dt, "break"; - }, Ae = ct; Ae > 0; Ae--) { - var Ze = At(Ae); + }, Ie = ct; Ie > 0; Ie--) { + var Ze = It(Ie); if (Ze === "break") break; } t.placement !== P && (t.modifiersData[n]._skip = !0, t.placement = P, t.reset = !0); } } -const nd = { +const sd = { name: "flip", enabled: !0, phase: "main", - fn: rd, + fn: id, requiresIfExists: ["offset"], data: { _skip: !1 @@ -3296,9 +3306,9 @@ const nd = { for (const [n, i] of t) r[n] = i; return r; -}, id = { +}, ad = { components: { - OnClickOutside: ts + OnClickOutside: rs }, props: { spladeId: { @@ -3359,9 +3369,9 @@ const nd = { mounted: async function() { this.teleport && await Oe(); const e = this.teleport ? document.querySelector(`div[data-splade-dropdown-id="${this.spladeId}"]`) : this.$refs.tooltip.children[0]; - this.popper = Gc(this.$refs.button, e, { + this.popper = Kc(this.$refs.button, e, { placement: this.placement, - modifiers: [nd, Qc], + modifiers: [sd, Zc], strategy: this.strategy }); }, @@ -3373,26 +3383,26 @@ const nd = { this.opened = !1; } } -}, sd = { ref: "tooltip" }; -function ad(e, t, r, n, i, s) { +}, od = { ref: "tooltip" }; +function ld(e, t, r, n, i, s) { const a = Lr("OnClickOutside"); - return j(), X(a, { - style: Mt(s.wrapperStyle), + return B(), X(a, { + style: jt(s.wrapperStyle), do: s.hide, opened: i.opened, "ignore-inner-targets": !r.closeOnClick }, { - default: si(() => [ + default: oi(() => [ gr("div", { ref: "button", - style: Mt(s.buttonStyle) + style: jt(s.buttonStyle) }, [ K(e.$slots, "button", { toggle: s.toggle, disabled: r.disabled }) ], 4), - gr("div", sd, [ + gr("div", od, [ K(e.$slots, "default", { hide: s.hide, opened: i.opened @@ -3402,7 +3412,7 @@ function ad(e, t, r, n, i, s) { _: 3 }, 8, ["style", "do", "opened", "ignore-inner-targets"]); } -const od = /* @__PURE__ */ _e(id, [["render", ad]]), ld = { +const ud = /* @__PURE__ */ _e(ad, [["render", ld]]), cd = { __name: "DynamicHtml", props: { keepAliveKey: { @@ -3423,15 +3433,15 @@ const od = /* @__PURE__ */ _e(id, [["render", ad]]), ld = { }, setup(e) { const t = z("$splade") || {}, r = z("$spladeOptions") || {}; - return (n, i) => ee(t).isSsr ? (j(), X(ue, { + return (n, i) => ee(t).isSsr ? (B(), X(ue, { key: e.keepAliveKey, html: ee(t).htmlForDynamicComponent(e.name), passthrough: e.passthrough - }, null, 8, ["html", "passthrough"])) : (j(), X(ni, { + }, null, 8, ["html", "passthrough"])) : (B(), X(si, { key: 0, max: ee(r).max_keep_alive }, [ - (j(), X(ue, { + (B(), X(ue, { key: e.keepAliveKey, html: ee(t).htmlForDynamicComponent(e.name), passthrough: e.passthrough @@ -3439,14 +3449,14 @@ const od = /* @__PURE__ */ _e(id, [["render", ad]]), ld = { ], 1032, ["max"])); } }; -function us(e) { +function cs(e) { return e && e.length ? e[0] : void 0; } -const ud = { +const dd = { inject: ["stack"], computed: { values() { - return v.validationErrors(this.stack); + return p.validationErrors(this.stack); } }, render() { @@ -3456,13 +3466,13 @@ const ud = { return W(e.values, t); }, first(t) { - return us(e.values[t] || []); + return cs(e.values[t] || []); }, all: { ...this.values }, ...this.values }); } -}, cd = { +}, fd = { inject: ["stack"], props: { private: { @@ -3497,7 +3507,7 @@ const ud = { }, computed: { currentStack() { - return v.currentStack.value; + return p.currentStack.value; } }, watch: { @@ -3519,10 +3529,10 @@ const ud = { }, methods: { handlePendingVisit() { - this.pendingVisit && v.currentStack.value === this.stack && (v.visit(this.pendingVisit), this.pendingVisit = null); + this.pendingVisit && p.currentStack.value === this.stack && (p.visit(this.pendingVisit), this.pendingVisit = null); }, handlePendingRefresh() { - this.pendingRefresh && v.currentStack.value === this.stack && (v.refresh(this.pendingRefresh.preserveScroll || this.preserveScroll), this.pendingRefresh = !1); + this.pendingRefresh && p.currentStack.value === this.stack && (p.refresh(this.pendingRefresh.preserveScroll || this.preserveScroll), this.pendingRefresh = !1); }, bindListeners() { this.subscription.on("pusher:subscription_succeeded", () => { @@ -3532,10 +3542,10 @@ const ud = { this.$emit("event", { name: e, data: r }); const n = "splade.preserveScroll", i = "splade.redirect", s = "splade.refresh", a = "splade.toast"; let o = null, l = !1, u = !1, c = []; - te(r, (m) => { - J(m) && (i in m && (o = m[i]), n in m && (l = m[n]), s in m && (u = m[s]), a in m && c.push(m)); - }), o ? this.pendingVisit = o : u ? this.pendingRefresh = { preserveScroll: l } : this.events.push({ name: e, data: r }), c.length > 0 && c.forEach((m) => { - v.pushToast(m); + te(r, (v) => { + J(v) && (i in v && (o = v[i]), n in v && (l = v[n]), s in v && (u = v[s]), a in v && c.push(v)); + }), o ? this.pendingVisit = o : u ? this.pendingRefresh = { preserveScroll: l } : this.events.push({ name: e, data: r }), c.length > 0 && c.forEach((v) => { + p.pushToast(v); }), this.$root.$emit(`event.${e}`, r); }); this.subscriptions.push(t); @@ -3552,25 +3562,25 @@ const ud = { }); } }; -function dd() { +function pd() { this.__data__ = new Te(), this.size = 0; } -function fd(e) { +function hd(e) { var t = this.__data__, r = t.delete(e); return this.size = t.size, r; } -function pd(e) { +function md(e) { return this.__data__.get(e); } -function hd(e) { +function vd(e) { return this.__data__.has(e); } -var md = 200; -function vd(e, t) { +var gd = 200; +function yd(e, t) { var r = this.__data__; if (r instanceof Te) { var n = r.__data__; - if (!wt || n.length < md - 1) + if (!wt || n.length < gd - 1) return n.push([e, t]), this.size = ++r.size, this; r = this.__data__ = new xe(n); } @@ -3580,47 +3590,47 @@ function Se(e) { var t = this.__data__ = new Te(e); this.size = t.size; } -Se.prototype.clear = dd; -Se.prototype.delete = fd; -Se.prototype.get = pd; -Se.prototype.has = hd; -Se.prototype.set = vd; -var gd = "__lodash_hash_undefined__"; -function yd(e) { - return this.__data__.set(e, gd), this; +Se.prototype.clear = pd; +Se.prototype.delete = hd; +Se.prototype.get = md; +Se.prototype.has = vd; +Se.prototype.set = yd; +var bd = "__lodash_hash_undefined__"; +function wd(e) { + return this.__data__.set(e, bd), this; } -function bd(e) { +function Sd(e) { return this.__data__.has(e); } -function Ut(e) { +function Ht(e) { var t = -1, r = e == null ? 0 : e.length; for (this.__data__ = new xe(); ++t < r; ) this.add(e[t]); } -Ut.prototype.add = Ut.prototype.push = yd; -Ut.prototype.has = bd; -function wd(e, t) { +Ht.prototype.add = Ht.prototype.push = wd; +Ht.prototype.has = Sd; +function Od(e, t) { for (var r = -1, n = e == null ? 0 : e.length; ++r < n; ) if (t(e[r], r, e)) return !0; return !1; } -function Sd(e, t) { +function $d(e, t) { return e.has(t); } -var Od = 1, $d = 2; -function cs(e, t, r, n, i, s) { - var a = r & Od, o = e.length, l = t.length; +var Ed = 1, Td = 2; +function ds(e, t, r, n, i, s) { + var a = r & Ed, o = e.length, l = t.length; if (o != l && !(a && l > o)) return !1; var u = s.get(e), c = s.get(t); if (u && c) return u == t && c == e; - var m = -1, g = !0, f = r & $d ? new Ut() : void 0; - for (s.set(e, t), s.set(t, e); ++m < o; ) { - var p = e[m], h = t[m]; + var v = -1, g = !0, f = r & Td ? new Ht() : void 0; + for (s.set(e, t), s.set(t, e); ++v < o; ) { + var h = e[v], m = t[v]; if (n) - var d = a ? n(h, p, m, t, e, s) : n(p, h, m, e, t, s); + var d = a ? n(m, h, v, t, e, s) : n(h, m, v, e, t, s); if (d !== void 0) { if (d) continue; @@ -3628,183 +3638,183 @@ function cs(e, t, r, n, i, s) { break; } if (f) { - if (!wd(t, function(b, O) { - if (!Sd(f, O) && (p === b || i(p, b, r, n, s))) + if (!Od(t, function(b, O) { + if (!$d(f, O) && (h === b || i(h, b, r, n, s))) return f.push(O); })) { g = !1; break; } - } else if (!(p === h || i(p, h, r, n, s))) { + } else if (!(h === m || i(h, m, r, n, s))) { g = !1; break; } } return s.delete(e), s.delete(t), g; } -var Ed = ve.Uint8Array; -const Vn = Ed; -function Td(e) { +var xd = ve.Uint8Array; +const Un = xd; +function _d(e) { var t = -1, r = Array(e.size); return e.forEach(function(n, i) { r[++t] = [i, n]; }), r; } -function xd(e) { +function Id(e) { var t = -1, r = Array(e.size); return e.forEach(function(n) { r[++t] = n; }), r; } -var _d = 1, Ad = 2, Id = "[object Boolean]", Pd = "[object Date]", qd = "[object Error]", Cd = "[object Map]", Fd = "[object Number]", kd = "[object RegExp]", Ld = "[object Set]", Bd = "[object String]", jd = "[object Symbol]", Md = "[object ArrayBuffer]", Rd = "[object DataView]", Un = ke ? ke.prototype : void 0, vr = Un ? Un.valueOf : void 0; -function Dd(e, t, r, n, i, s, a) { +var Ad = 1, Pd = 2, qd = "[object Boolean]", Cd = "[object Date]", Fd = "[object Error]", kd = "[object Map]", Ld = "[object Number]", Rd = "[object RegExp]", Bd = "[object Set]", jd = "[object String]", Md = "[object Symbol]", Dd = "[object ArrayBuffer]", Nd = "[object DataView]", Wn = ke ? ke.prototype : void 0, vr = Wn ? Wn.valueOf : void 0; +function Vd(e, t, r, n, i, s, a) { switch (r) { - case Rd: + case Nd: if (e.byteLength != t.byteLength || e.byteOffset != t.byteOffset) return !1; e = e.buffer, t = t.buffer; - case Md: - return !(e.byteLength != t.byteLength || !s(new Vn(e), new Vn(t))); - case Id: - case Pd: - case Fd: - return Gr(+e, +t); + case Dd: + return !(e.byteLength != t.byteLength || !s(new Un(e), new Un(t))); case qd: + case Cd: + case Ld: + return Kr(+e, +t); + case Fd: return e.name == t.name && e.message == t.message; + case Rd: + case jd: + return e == t + ""; case kd: + var o = _d; case Bd: - return e == t + ""; - case Cd: - var o = Td; - case Ld: - var l = n & _d; - if (o || (o = xd), e.size != t.size && !l) + var l = n & Ad; + if (o || (o = Id), e.size != t.size && !l) return !1; var u = a.get(e); if (u) return u == t; - n |= Ad, a.set(e, t); - var c = cs(o(e), o(t), n, i, s, a); + n |= Pd, a.set(e, t); + var c = ds(o(e), o(t), n, i, s, a); return a.delete(e), c; - case jd: + case Md: if (vr) return vr.call(e) == vr.call(t); } return !1; } -function Nd(e, t) { +function Hd(e, t) { for (var r = -1, n = t.length, i = e.length; ++r < n; ) e[i + r] = t[r]; return e; } -function Vd(e, t, r) { +function Ud(e, t, r) { var n = t(e); - return R(e) ? n : Nd(n, r(e)); + return M(e) ? n : Hd(n, r(e)); } -function ds(e, t) { +function fs(e, t) { for (var r = -1, n = e == null ? 0 : e.length, i = 0, s = []; ++r < n; ) { var a = e[r]; t(a, r, e) && (s[i++] = a); } return s; } -function Ud() { +function Wd() { return []; } -var Hd = Object.prototype, Wd = Hd.propertyIsEnumerable, Hn = Object.getOwnPropertySymbols, zd = Hn ? function(e) { - return e == null ? [] : (e = Object(e), ds(Hn(e), function(t) { - return Wd.call(e, t); +var zd = Object.prototype, Gd = zd.propertyIsEnumerable, zn = Object.getOwnPropertySymbols, Xd = zn ? function(e) { + return e == null ? [] : (e = Object(e), fs(zn(e), function(t) { + return Gd.call(e, t); })); -} : Ud; -const Gd = zd; -function Wn(e) { - return Vd(e, Wt, Gd); -} -var Xd = 1, Kd = Object.prototype, Jd = Kd.hasOwnProperty; -function Qd(e, t, r, n, i, s) { - var a = r & Xd, o = Wn(e), l = o.length, u = Wn(t), c = u.length; +} : Wd; +const Kd = Xd; +function Gn(e) { + return Ud(e, Wt, Kd); +} +var Jd = 1, Qd = Object.prototype, Yd = Qd.hasOwnProperty; +function Zd(e, t, r, n, i, s) { + var a = r & Jd, o = Gn(e), l = o.length, u = Gn(t), c = u.length; if (l != c && !a) return !1; - for (var m = l; m--; ) { - var g = o[m]; - if (!(a ? g in t : Jd.call(t, g))) + for (var v = l; v--; ) { + var g = o[v]; + if (!(a ? g in t : Yd.call(t, g))) return !1; } - var f = s.get(e), p = s.get(t); - if (f && p) - return f == t && p == e; - var h = !0; + var f = s.get(e), h = s.get(t); + if (f && h) + return f == t && h == e; + var m = !0; s.set(e, t), s.set(t, e); - for (var d = a; ++m < l; ) { - g = o[m]; + for (var d = a; ++v < l; ) { + g = o[v]; var b = e[g], O = t[g]; if (n) - var I = a ? n(O, b, g, t, e, s) : n(b, O, g, e, t, s); - if (!(I === void 0 ? b === O || i(b, O, r, n, s) : I)) { - h = !1; + var A = a ? n(O, b, g, t, e, s) : n(b, O, g, e, t, s); + if (!(A === void 0 ? b === O || i(b, O, r, n, s) : A)) { + m = !1; break; } d || (d = g == "constructor"); } - if (h && !d) { + if (m && !d) { var S = e.constructor, $ = t.constructor; - S != $ && "constructor" in e && "constructor" in t && !(typeof S == "function" && S instanceof S && typeof $ == "function" && $ instanceof $) && (h = !1); + S != $ && "constructor" in e && "constructor" in t && !(typeof S == "function" && S instanceof S && typeof $ == "function" && $ instanceof $) && (m = !1); } - return s.delete(e), s.delete(t), h; -} -var Yd = Qe(ve, "DataView"); -const Ar = Yd; -var Zd = Qe(ve, "Promise"); -const Ir = Zd; -var ef = Qe(ve, "Set"); -const Pr = ef; -var tf = Qe(ve, "WeakMap"); -const qr = tf; -var zn = "[object Map]", rf = "[object Object]", Gn = "[object Promise]", Xn = "[object Set]", Kn = "[object WeakMap]", Jn = "[object DataView]", nf = Je(Ar), sf = Je(wt), af = Je(Ir), of = Je(Pr), lf = Je(qr), Ve = je; -(Ar && Ve(new Ar(new ArrayBuffer(1))) != Jn || wt && Ve(new wt()) != zn || Ir && Ve(Ir.resolve()) != Gn || Pr && Ve(new Pr()) != Xn || qr && Ve(new qr()) != Kn) && (Ve = function(e) { - var t = je(e), r = t == rf ? e.constructor : void 0, n = r ? Je(r) : ""; + return s.delete(e), s.delete(t), m; +} +var ef = Qe(ve, "DataView"); +const Ir = ef; +var tf = Qe(ve, "Promise"); +const Ar = tf; +var rf = Qe(ve, "Set"); +const Pr = rf; +var nf = Qe(ve, "WeakMap"); +const qr = nf; +var Xn = "[object Map]", sf = "[object Object]", Kn = "[object Promise]", Jn = "[object Set]", Qn = "[object WeakMap]", Yn = "[object DataView]", af = Je(Ir), of = Je(wt), lf = Je(Ar), uf = Je(Pr), cf = Je(qr), Ve = Be; +(Ir && Ve(new Ir(new ArrayBuffer(1))) != Yn || wt && Ve(new wt()) != Xn || Ar && Ve(Ar.resolve()) != Kn || Pr && Ve(new Pr()) != Jn || qr && Ve(new qr()) != Qn) && (Ve = function(e) { + var t = Be(e), r = t == sf ? e.constructor : void 0, n = r ? Je(r) : ""; if (n) switch (n) { - case nf: - return Jn; - case sf: - return zn; case af: - return Gn; + return Yn; case of: return Xn; case lf: return Kn; + case uf: + return Jn; + case cf: + return Qn; } return t; }); -const Qn = Ve; -var uf = 1, Yn = "[object Arguments]", Zn = "[object Array]", kt = "[object Object]", cf = Object.prototype, ei = cf.hasOwnProperty; -function df(e, t, r, n, i, s) { - var a = R(e), o = R(t), l = a ? Zn : Qn(e), u = o ? Zn : Qn(t); - l = l == Yn ? kt : l, u = u == Yn ? kt : u; - var c = l == kt, m = u == kt, g = l == u; +const Zn = Ve; +var df = 1, ei = "[object Arguments]", ti = "[object Array]", kt = "[object Object]", ff = Object.prototype, ri = ff.hasOwnProperty; +function pf(e, t, r, n, i, s) { + var a = M(e), o = M(t), l = a ? ti : Zn(e), u = o ? ti : Zn(t); + l = l == ei ? kt : l, u = u == ei ? kt : u; + var c = l == kt, v = u == kt, g = l == u; if (g && yr(e)) { if (!yr(t)) return !1; a = !0, c = !1; } if (g && !c) - return s || (s = new Se()), a || fi(e) ? cs(e, t, r, n, i, s) : Dd(e, t, l, r, n, i, s); - if (!(r & uf)) { - var f = c && ei.call(e, "__wrapped__"), p = m && ei.call(t, "__wrapped__"); - if (f || p) { - var h = f ? e.value() : e, d = p ? t.value() : t; - return s || (s = new Se()), i(h, d, r, n, s); + return s || (s = new Se()), a || hi(e) ? ds(e, t, r, n, i, s) : Vd(e, t, l, r, n, i, s); + if (!(r & df)) { + var f = c && ri.call(e, "__wrapped__"), h = v && ri.call(t, "__wrapped__"); + if (f || h) { + var m = f ? e.value() : e, d = h ? t.value() : t; + return s || (s = new Se()), i(m, d, r, n, s); } } - return g ? (s || (s = new Se()), Qd(e, t, r, n, i, s)) : !1; + return g ? (s || (s = new Se()), Zd(e, t, r, n, i, s)) : !1; } function ir(e, t, r, n, i) { - return e === t ? !0 : e == null || t == null || !Le(e) && !Le(t) ? e !== e && t !== t : df(e, t, r, n, ir, i); + return e === t ? !0 : e == null || t == null || !Le(e) && !Le(t) ? e !== e && t !== t : pf(e, t, r, n, ir, i); } -var ff = 1, pf = 2; -function hf(e, t, r, n) { +var hf = 1, mf = 2; +function vf(e, t, r, n) { var i = r.length, s = i, a = !n; if (e == null) return !s; @@ -3820,69 +3830,69 @@ function hf(e, t, r, n) { if (u === void 0 && !(l in e)) return !1; } else { - var m = new Se(); + var v = new Se(); if (n) - var g = n(u, c, l, e, t, m); - if (!(g === void 0 ? ir(c, u, ff | pf, n, m) : g)) + var g = n(u, c, l, e, t, v); + if (!(g === void 0 ? ir(c, u, hf | mf, n, v) : g)) return !1; } } return !0; } -function fs(e) { +function ps(e) { return e === e && !J(e); } -function mf(e) { +function gf(e) { for (var t = Wt(e), r = t.length; r--; ) { var n = t[r], i = e[n]; - t[r] = [n, i, fs(i)]; + t[r] = [n, i, ps(i)]; } return t; } -function ps(e, t) { +function hs(e, t) { return function(r) { return r == null ? !1 : r[e] === t && (t !== void 0 || e in Object(r)); }; } -function vf(e) { - var t = mf(e); - return t.length == 1 && t[0][2] ? ps(t[0][0], t[0][1]) : function(r) { - return r === e || hf(r, e, t); +function yf(e) { + var t = gf(e); + return t.length == 1 && t[0][2] ? hs(t[0][0], t[0][1]) : function(r) { + return r === e || vf(r, e, t); }; } -function gf(e, t) { +function bf(e, t) { return e != null && t in Object(e); } -function yf(e, t) { - return e != null && Fi(e, t, gf); +function wf(e, t) { + return e != null && ki(e, t, bf); } -var bf = 1, wf = 2; -function Sf(e, t) { - return zr(e) && fs(t) ? ps($t(e), t) : function(r) { +var Sf = 1, Of = 2; +function $f(e, t) { + return Xr(e) && ps(t) ? hs($t(e), t) : function(r) { var n = be(r, e); - return n === void 0 && n === t ? yf(r, e) : ir(t, n, bf | wf); + return n === void 0 && n === t ? wf(r, e) : ir(t, n, Sf | Of); }; } -function Of(e) { +function Ef(e) { return function(t) { return t == null ? void 0 : t[e]; }; } -function $f(e) { +function Tf(e) { return function(t) { - return Zi(t, e); + return es(t, e); }; } -function Ef(e) { - return zr(e) ? Of($t(e)) : $f(e); +function xf(e) { + return Xr(e) ? Ef($t(e)) : Tf(e); } function _t(e) { - return typeof e == "function" ? e : e == null ? hi : typeof e == "object" ? R(e) ? Sf(e[0], e[1]) : vf(e) : Ef(e); + return typeof e == "function" ? e : e == null ? vi : typeof e == "object" ? M(e) ? $f(e[0], e[1]) : yf(e) : xf(e); } -function Tf(e) { +function _f(e) { return function(t, r, n) { var i = Object(t); - if (!Ht(t)) { + if (!Ut(t)) { var s = _t(r); t = Wt(t), r = function(o) { return s(i[o], o, i); @@ -3892,36 +3902,36 @@ function Tf(e) { return a > -1 ? i[s ? t[a] : a] : void 0; }; } -function xf(e, t, r, n) { +function If(e, t, r, n) { for (var i = e.length, s = r + (n ? 1 : -1); n ? s-- : ++s < i; ) if (t(e[s], s, e)) return s; return -1; } -var ti = 1 / 0, _f = 17976931348623157e292; -function Af(e) { +var ni = 1 / 0, Af = 17976931348623157e292; +function Pf(e) { if (!e) return e === 0 ? e : 0; - if (e = Tr(e), e === ti || e === -ti) { + if (e = Tr(e), e === ni || e === -ni) { var t = e < 0 ? -1 : 1; - return t * _f; + return t * Af; } return e === e ? e : 0; } -function un(e) { - var t = Af(e), r = t % 1; +function dn(e) { + var t = Pf(e), r = t % 1; return t === t ? r ? t - r : t : 0; } -var If = Math.max; -function Pf(e, t, r) { +var qf = Math.max; +function Cf(e, t, r) { var n = e == null ? 0 : e.length; if (!n) return -1; - var i = r == null ? 0 : un(r); - return i < 0 && (i = If(n + i, 0)), xf(e, _t(t), i); + var i = r == null ? 0 : dn(r); + return i < 0 && (i = qf(n + i, 0)), If(e, _t(t), i); } -var qf = Tf(Pf); -const cn = qf, Cf = { +var Ff = _f(Cf); +const fn = Ff, kf = { props: { form: { type: Object, @@ -4054,7 +4064,7 @@ const cn = qf, Cf = { * This extracts the encrypted string from the backend data. */ extractMetadataFromExistingFile(e) { - return e ? se(e) ? e : R(e) ? e.map(this.extractMetadataFromExistingFile) : J(e) ? e.options.metadata.metadata : null : null; + return e ? se(e) ? e : M(e) ? e.map(this.extractMetadataFromExistingFile) : J(e) ? e.options.metadata.metadata : null : null; }, /** * This sets the existing files on the form. @@ -4066,7 +4076,7 @@ const cn = qf, Cf = { * This determines the order of all files, existing and new, and sets it on the form. */ setOrder() { - if (!this.multiple || !this.handlesExistingFiles || !this.filepondInstance) + if (!this.multiple || !this.filepondInstance) return; const t = this.filepondInstance.getFiles().filter((n) => !n.getMetadata("identifier")), r = this.filepondInstance.getFiles().map((n) => { const i = n.getMetadata("identifier"); @@ -4131,8 +4141,8 @@ const cn = qf, Cf = { cancelToken: g.token, responseType: "blob" }).then((f) => { - const p = new File([f.data], a.name, { type: a.type }); - o(p); + const h = new File([f.data], a.name, { type: a.type }); + o(h); }).catch(function(f) { axios.isCancel(f) || l(f); }), { @@ -4141,17 +4151,17 @@ const cn = qf, Cf = { } }; } - }, this.server && (s.server.process = (a, o, l, u, c, m, g) => { + }, this.server && (s.server.process = (a, o, l, u, c, v, g) => { const f = new FormData(); f.append("file", o, o.name); - const h = ne.CancelToken.source(); + const m = ne.CancelToken.source(); ne({ url: r.server, method: "POST", data: f, - cancelToken: h.token, + cancelToken: m.token, onUploadProgress: (d) => { - m(d.lengthComputable, d.loaded, d.total); + v(d.lengthComputable, d.loaded, d.total); } }).then((d) => { d.status >= 200 && d.status < 300 ? u(d.data) : c(d.statusText); @@ -4177,7 +4187,7 @@ const cn = qf, Cf = { }); }, removeFile(e) { - this.server && (e = cn(this.uploadedFiles, (t) => t.file === e).serverId), this.form.$put(this.field, this.multiple ? this.form[this.field].filter((t) => t !== e) : null); + this.server && (e = fn(this.uploadedFiles, (t) => t.file === e).serverId), this.form.$put(this.field, this.multiple ? this.form[this.field].filter((t) => t !== e) : null); }, addFiles(e) { if (this.multiple) { @@ -4202,20 +4212,20 @@ const cn = qf, Cf = { this.addFiles(t); } } -}, Ff = { ref: "file" }; -function kf(e, t, r, n, i, s) { - return j(), ce("div", Ff, [ +}, Lf = { ref: "file" }; +function Rf(e, t, r, n, i, s) { + return B(), ce("div", Lf, [ K(e.$slots, "default", { handleFileInput: s.handleFileInput, filenames: i.filenames }) ], 512); } -const Lf = /* @__PURE__ */ _e(Cf, [["render", kf]]), Bf = { +const Bf = /* @__PURE__ */ _e(kf, [["render", Rf]]), jf = { inject: ["stack"], computed: { values() { - return v.flashData(this.stack); + return p.flashData(this.stack); } }, render() { @@ -4228,18 +4238,18 @@ const Lf = /* @__PURE__ */ _e(Cf, [["render", kf]]), Bf = { }); } }; -function dn(e, t, r) { +function pn(e, t, r) { e = e || {}, t = t || new FormData(), r = r || null; for (const n in e) - Object.prototype.hasOwnProperty.call(e, n) && ms(t, hs(r, n), e[n]); + Object.prototype.hasOwnProperty.call(e, n) && vs(t, ms(r, n), e[n]); return t; } -function hs(e, t) { +function ms(e, t) { return e ? e + "[" + t + "]" : t; } -function ms(e, t, r) { +function vs(e, t, r) { if (Array.isArray(r)) - return Array.from(r.keys()).forEach((n) => ms(e, hs(t, n.toString()), r[n])); + return Array.from(r.keys()).forEach((n) => vs(e, ms(t, n.toString()), r[n])); if (r instanceof Date) return e.append(t, r.toISOString()); if (r instanceof File) @@ -4254,25 +4264,25 @@ function ms(e, t, r) { return e.append(t, `${r}`); if (r == null) return e.append(t, ""); - dn(r, e, t); + pn(r, e, t); } -var jf = "[object Boolean]"; -function vs(e) { - return e === !0 || e === !1 || Le(e) && je(e) == jf; +var Mf = "[object Boolean]"; +function gs(e) { + return e === !0 || e === !1 || Le(e) && Be(e) == Mf; } -function gs(e, t) { +function ys(e, t) { var r = {}; - return t = _t(t), Mr(e, function(n, i, s) { - es(r, i, t(n, i, s)); + return t = _t(t), jr(e, function(n, i, s) { + ts(r, i, t(n, i, s)); }), r; } -function ys(e, t, r) { +function bs(e, t, r) { return e === e && (r !== void 0 && (e = e <= r ? e : r), t !== void 0 && (e = e >= t ? e : t)), e; } function et(e, t, r) { - return e = Kr(e), r = r == null ? 0 : ys(un(r), 0, e.length), t = Qt(t), e.slice(r, r + t.length) == t; + return e = Qr(e), r = r == null ? 0 : bs(dn(r), 0, e.length), t = Qt(t), e.slice(r, r + t.length) == t; } -const Mf = { +const Df = { inject: ["stack"], props: { spladeId: { @@ -4284,7 +4294,7 @@ const Mf = { type: String, required: !1, default() { - return v.isSsr ? "" : location.href; + return p.isSsr ? "" : location.href; } }, method: { @@ -4431,13 +4441,13 @@ const Mf = { * instances based on the current stack. */ rawErrors() { - return v.validationErrors(this.stack); + return p.validationErrors(this.stack); }, /* * Flattens the raw errors. */ errors() { - return gs(this.rawErrors, (e) => e.join(` + return ys(this.rawErrors, (e) => e.join(` `)); } }, @@ -4458,7 +4468,7 @@ const Mf = { i ? n = i.type === "checkbox" ? !1 : "" : e.querySelector(`[name="${r}[]"]`) ? n = [] : (e.querySelector(`[name^="${r}."]`) || e.querySelector(`[name^="${r}["]`)) && (n = {}), this.$put(r, n); }), this.missingAttributes = [], this.submitOnChange === !0 ? this.$watch("values", () => { this.background && (this.processingInBackground = !0), this.$nextTick(() => this.debounce ? this.debounceFunction() : this.request(this.background)); - }, { deep: !0 }) : R(this.submitOnChange) && this.submitOnChange.forEach((r) => { + }, { deep: !0 }) : M(this.submitOnChange) && this.submitOnChange.forEach((r) => { this.$watch(`values.${r}`, () => { this.background && (this.processingInBackground = !0), this.$nextTick(() => this.debounce ? this.debounceFunction() : this.request(this.background)); }, { deep: !0 }); @@ -4547,8 +4557,8 @@ const Mf = { } if (!this.confirm) return this.request(); - v.confirm( - vs(this.confirm) ? "" : this.confirm, + p.confirm( + gs(this.confirm) ? "" : this.confirm, this.confirmText, this.confirmButton, this.cancelButton, @@ -4577,8 +4587,8 @@ const Mf = { return; } await this.$nextTick(), this.background ? this.processingInBackground = !0 : this.processing = !0, this.response = null, this.wasSuccessful = !1, this.recentlySuccessful = !1, clearTimeout(this.recentlySuccessfulTimeoutId), this.wasUnsuccessful = !1, this.recentlyUnsuccessful = !1, clearTimeout(this.recentlyUnsuccessfulTimeoutId); - const t = this.values instanceof FormData ? this.values : dn(this.values), r = {}; - this.acceptHeader && (r.Accept = this.acceptHeader), (this.stay || e) && (r["X-Splade-Prevent-Refresh"] = !0), this.preserveScroll && (r["X-Splade-Preserve-Scroll"] = !0), this.stack > 0 && this.keepModal && (r["X-Splade-Modal"] = v.stackType(this.stack), r["X-Splade-Modal-Target"] = this.stack); + const t = this.values instanceof FormData ? this.values : pn(this.values), r = {}; + this.acceptHeader && (r.Accept = this.acceptHeader), (this.stay || e) && (r["X-Splade-Prevent-Refresh"] = !0), this.preserveScroll && (r["X-Splade-Preserve-Scroll"] = !0), this.stack > 0 && this.keepModal && (r["X-Splade-Modal"] = p.stackType(this.stack), r["X-Splade-Modal-Target"] = this.stack); let n = this.method.toUpperCase(); n !== "GET" && n !== "POST" && (t.append("_method", n), n = "POST"); const i = (s) => { @@ -4586,11 +4596,11 @@ const Mf = { }; if (this.action === "#") return i(Object.fromEntries(t)); - v.request(this.action, n, t, { ...r, ...this.headers }, !1, this.blob).then(i).catch(async (s) => { + p.request(this.action, n, t, { ...r, ...this.headers }, !1, this.blob).then(i).catch(async (s) => { if (this.processing = !1, this.processingInBackground = !1, this.wasUnsuccessful = !0, this.recentlyUnsuccessful = !0, this.recentlyUnsuccessfulTimeoutId = setTimeout(() => this.recentlyUnsuccessful = !1, 2e3), this.$emit("error", s), !this.scrollOnError) return; await this.$nextTick(); - const a = cn(Object.keys(this.errors), (o) => this.formElement.querySelector(`[data-validation-key="${o}"]`)); + const a = fn(Object.keys(this.errors), (o) => this.formElement.querySelector(`[data-validation-key="${o}"]`)); a && this.focusAndScrollToElement( this.formElement.querySelector(`[data-validation-key="${a}"]`) ); @@ -4642,7 +4652,7 @@ const Mf = { ) ); } -}, Rf = { +}, Nf = { props: { flatpickr: { type: [Boolean, Object], @@ -4702,13 +4712,13 @@ const Mf = { }); } } -}, Df = { ref: "input" }; -function Nf(e, t, r, n, i, s) { - return j(), ce("div", Df, [ +}, Vf = { ref: "input" }; +function Hf(e, t, r, n, i, s) { + return B(), ce("div", Vf, [ K(e.$slots, "default", { disabled: i.disabled }) ], 512); } -const Vf = /* @__PURE__ */ _e(Rf, [["render", Nf]]), Uf = { +const Uf = /* @__PURE__ */ _e(Nf, [["render", Hf]]), Wf = { props: { options: { type: Object, @@ -4748,13 +4758,13 @@ const Vf = /* @__PURE__ */ _e(Rf, [["render", Nf]]), Uf = { beforeUnmount() { this.instance.destruct(); } -}, Hf = { ref: "jodit" }; -function Wf(e, t, r, n, i, s) { - return j(), ce("div", Hf, [ +}, zf = { ref: "jodit" }; +function Gf(e, t, r, n, i, s) { + return B(), ce("div", zf, [ K(e.$slots, "default") ], 512); } -const zf = /* @__PURE__ */ _e(Uf, [["render", Wf]]), Gf = { +const Xf = /* @__PURE__ */ _e(Wf, [["render", Gf]]), Kf = { components: { Render: ue }, props: { name: { @@ -4765,7 +4775,7 @@ const zf = /* @__PURE__ */ _e(Uf, [["render", Wf]]), Gf = { type: String, required: !1, default() { - return v.isSsr ? "" : window.location.href; + return p.isSsr ? "" : window.location.href; } }, show: { @@ -4797,21 +4807,21 @@ const zf = /* @__PURE__ */ _e(Uf, [["render", Wf]]), Gf = { }, methods: { async request() { - this.html = null, v.lazy(this.url, this.name).then((e) => { + this.html = null, p.lazy(this.url, this.name).then((e) => { this.html = e.data.html, this.$emit("loaded"); }); } } }; -function Xf(e, t, r, n, i, s) { +function Jf(e, t, r, n, i, s) { const a = Lr("Render"); - return i.html ? (j(), X(a, { + return i.html ? (B(), X(a, { key: 0, html: i.html, passthrough: r.passthrough }, null, 8, ["html", "passthrough"])) : r.show ? K(e.$slots, "default", { key: 1 }) : Fr("", !0); } -const Kf = /* @__PURE__ */ _e(Gf, [["render", Xf]]), Jf = ["href", "onClick"], Qf = { +const Qf = /* @__PURE__ */ _e(Kf, [["render", Jf]]), Yf = ["href"], Zf = { __name: "Link", props: { href: { @@ -4901,57 +4911,57 @@ const Kf = /* @__PURE__ */ _e(Gf, [["render", Xf]]), Jf = ["href", "onClick"], Q } }, setup(e) { - const t = e, r = z("stack"), n = y(null); + const t = z("stack"), r = y(null), n = e; function i() { - if (n.value = null, !t.confirm) + if (r.value = null, !n.confirm) return s(); - v.confirm( - vs(t.confirm) ? "" : t.confirm, - t.confirmText, - t.confirmButton, - t.cancelButton, - !!t.requirePassword, - t.requirePasswordOnce, - !!t.confirmDanger + p.confirm( + gs(n.confirm) ? "" : n.confirm, + n.confirmText, + n.confirmButton, + n.cancelButton, + !!n.requirePassword, + n.requirePasswordOnce, + !!n.confirmDanger ).then((a) => { - if (!t.requirePassword) { + if (!n.requirePassword) { s(); return; } - a && (n.value = a), s(); + a && (r.value = a), s(); }).catch(() => { }); } function s() { - if (t.away) - return window.location = t.href; - const o = r > 0 && t.keepModal; - if (t.modal && !o) - return v.modal(t.href); - if (t.slideover && !o) - return v.slideover(t.href); - if (et(t.href, "#")) { - if (v.openPreloadedModal(t.href.substring(1))) + if (n.away) + return window.location = n.href; + const o = t > 0 && n.keepModal; + if (n.modal && !o) + return p.modal(n.href); + if (n.slideover && !o) + return p.slideover(n.href); + if (et(n.href, "#")) { + if (p.openPreloadedModal(n.href.substring(1))) return; - console.log("No preloaded modal found for " + t.href); + console.log("No preloaded modal found for " + n.href); } - let l = t.method.trim().toUpperCase(); + let l = n.method.trim().toUpperCase(); const u = { - ...t.headers + ...n.headers }; - if (o && (u["X-Splade-Modal"] = v.stackType(r), u["X-Splade-Modal-Target"] = r), t.preserveScroll && (u["X-Splade-Preserve-Scroll"] = !0), l === "GET") - return t.replace ? v.replace(t.href, u) : v.visit(t.href, u); - const c = t.data instanceof FormData ? t.data : dn(t.data); - l !== "POST" && (c.append("_method", l), l = "POST"), n.value && (c.append(se(t.requirePassword) && t.requirePassword ? t.requirePassword : "password", n.value), n.value = null), v.request(t.href, l, c, u, t.replace); + if (o && (u["X-Splade-Modal"] = p.stackType(t), u["X-Splade-Modal-Target"] = t), n.preserveScroll && (u["X-Splade-Preserve-Scroll"] = !0), l === "GET") + return n.replace ? p.replace(n.href, u) : p.visit(n.href, u); + const c = n.data instanceof FormData ? n.data : pn(n.data); + l !== "POST" && (c.append("_method", l), l = "POST"), r.value && (c.append(se(n.requirePassword) && n.requirePassword ? n.requirePassword : "password", r.value), r.value = null), p.request(n.href, l, c, u, n.replace); } - return (a, o) => (j(), ce("a", { + return (a, o) => (B(), ce("a", { href: e.href, - onClick: Fs(i, ["prevent"]) + onClick: ks(i, ["exact", "prevent"]) }, [ K(a.$slots, "default") - ], 8, Jf)); + ], 8, Yf)); } -}, Yf = { +}, ep = { provide() { return { stack: this.stack @@ -5032,13 +5042,13 @@ const Kf = /* @__PURE__ */ _e(Gf, [["render", Xf]]), Jf = ["href", "onClick"], Q animate: this.staticAnimate, position: this.position, // These HeadlessUI exports will be removed in v1.0 - Dialog: Yr, - DialogPanel: Zr, + Dialog: en, + DialogPanel: tn, TransitionRoot: ut, TransitionChild: lt }); } -}, Zf = { +}, tp = { __name: "PreloadedModal", props: { name: { @@ -5062,10 +5072,10 @@ const Kf = /* @__PURE__ */ _e(Gf, [["render", Xf]]), Jf = ["href", "onClick"], Q }, setup(e) { const t = e; - return v.registerPreloadedModal(t.name, t.html, t.type), t.opened && v.openPreloadedModal(t.name), () => { + return p.registerPreloadedModal(t.name, t.html, t.type), t.opened && p.openPreloadedModal(t.name), () => { }; } -}, ep = { +}, rp = { components: { Render: ue }, props: { name: { @@ -5080,7 +5090,7 @@ const Kf = /* @__PURE__ */ _e(Gf, [["render", Xf]]), Jf = ["href", "onClick"], Q type: String, required: !1, default() { - return v.isSsr ? "" : window.location.href; + return p.isSsr ? "" : window.location.href; } }, poll: { @@ -5112,7 +5122,7 @@ const Kf = /* @__PURE__ */ _e(Gf, [["render", Xf]]), Jf = ["href", "onClick"], Q }, methods: { async request() { - this.loading = !0, v.rehydrate(this.url, this.name).then((e) => { + this.loading = !0, p.rehydrate(this.url, this.name).then((e) => { this.html = e.data.html, this.loading = !1, this.$emit("loaded"), this.poll && setTimeout(() => { this.request(); }, this.poll); @@ -5120,15 +5130,15 @@ const Kf = /* @__PURE__ */ _e(Gf, [["render", Xf]]), Jf = ["href", "onClick"], Q } } }; -function tp(e, t, r, n, i, s) { +function np(e, t, r, n, i, s) { const a = Lr("Render"); - return i.html ? (j(), X(a, { + return i.html ? (B(), X(a, { key: 0, html: i.html, passthrough: r.passthrough }, null, 8, ["html", "passthrough"])) : i.loading ? K(e.$slots, "placeholder", { key: 1 }) : K(e.$slots, "default", { key: 2 }); } -const rp = /* @__PURE__ */ _e(ep, [["render", tp]]), np = { +const ip = /* @__PURE__ */ _e(rp, [["render", np]]), sp = { props: { script: { type: String, @@ -5143,17 +5153,17 @@ const rp = /* @__PURE__ */ _e(ep, [["render", tp]]), np = { return ""; } }; -function ip(e, t) { - var r = -1, n = Ht(e) ? Array(e.length) : []; - return Rr(e, function(i, s, a) { +function ap(e, t) { + var r = -1, n = Ut(e) ? Array(e.length) : []; + return Mr(e, function(i, s, a) { n[++r] = t(i, s, a); }), n; } -function bs(e, t) { - var r = R(e) ? Ci : ip; +function ws(e, t) { + var r = M(e) ? Fi : ap; return r(e, _t(t)); } -const sp = { +const op = { inject: ["stack"], props: { choices: { @@ -5242,7 +5252,7 @@ const sp = { * section, apply it to the Choices instance. */ modelValue(e, t) { - if (!this.choicesInstance && this.multiple && R(e)) { + if (!this.choicesInstance && this.multiple && M(e)) { const r = e.filter((n) => n !== "" && n !== null && n !== void 0); if (JSON.stringify(r) != JSON.stringify(e)) { this.$emit("update:modelValue", r); @@ -5331,7 +5341,7 @@ const sp = { * Transforms the options from the remote URL into an array of objects. */ normalizeOptions(e, t) { - const r = R(e); + const r = M(e); if (!r && J(e)) if (this.optionValue && this.optionLabel) { let n = be(e, this.optionValue); @@ -5353,14 +5363,14 @@ const sp = { * Set the given value on the Choices.js instance. */ setValueOnChoices(e) { - Array.isArray(e) && (e = bs(e, (t) => `${t}`), this.choicesInstance.removeActiveItems()), e == null ? e = "" : Array.isArray(e) || (e = `${e}`), this.choicesInstance.setChoiceByValue(e), this.updateHasSelectionAttribute(), this.handlePlaceholderVisibility(); + Array.isArray(e) && (e = ws(e, (t) => `${t}`), this.choicesInstance.removeActiveItems()), e == null ? e = "" : Array.isArray(e) || (e = `${e}`), this.choicesInstance.setChoiceByValue(e), this.updateHasSelectionAttribute(), this.handlePlaceholderVisibility(); }, /* * Returns the internal Choices.js item that is currently selected. */ getItemOfCurrentModel() { const e = this.modelValue; - return cn(this.choicesInstance._store.choices, (t) => t.value == e); + return fn(this.choicesInstance._store.choices, (t) => t.value == e); }, /* * This method handles the visibility of the placeholder @@ -5427,16 +5437,16 @@ const sp = { ); } } -}, ap = { ref: "select" }; -function op(e, t, r, n, i, s) { - return j(), ce("div", ap, [ +}, lp = { ref: "select" }; +function up(e, t, r, n, i, s) { + return B(), ce("div", lp, [ K(e.$slots, "default", { loading: i.loading }) ], 512); } -const lp = /* @__PURE__ */ _e(sp, [["render", op]]), up = { +const cp = /* @__PURE__ */ _e(op, [["render", up]]), dp = { inject: ["stack"], render() { - const e = v.validationErrors(this.stack), t = v.flashData(this.stack), r = v.sharedData.value, n = gs(e, (i) => i.join(` + const e = p.validationErrors(this.stack), t = p.flashData(this.stack), r = p.sharedData.value, n = ys(e, (i) => i.join(` `)); return this.$slots.default({ flash: t, @@ -5456,29 +5466,33 @@ const lp = /* @__PURE__ */ _e(sp, [["render", op]]), up = { }); } }; -function cp(e, t, r) { - e = Kr(e), t = Qt(t); +function fp(e, t, r) { + e = Qr(e), t = Qt(t); var n = e.length; - r = r === void 0 ? n : ys(un(r), 0, n); + r = r === void 0 ? n : bs(dn(r), 0, n); var i = r; return r -= t.length, r >= 0 && e.slice(r, i) == t; } -function dp(e, t) { +function pp(e, t) { var r = []; - return Rr(e, function(n, i, s) { + return Mr(e, function(n, i, s) { t(n, i, s) && r.push(n); }), r; } -function fp(e, t) { - var r = R(e) ? ds : dp; +function hp(e, t) { + var r = M(e) ? fs : pp; return r(e, _t(t)); } -function ri(e, t) { +function ii(e, t) { return ir(e, t); } -const pp = { +const mp = { inject: ["stack"], props: { + spladeId: { + type: String, + required: !0 + }, baseUrl: { type: String, required: !1, @@ -5513,6 +5527,11 @@ const pp = { type: Number, required: !1, default: 0 + }, + paginationScroll: { + type: String, + required: !1, + default: "top" } }, data() { @@ -5531,7 +5550,7 @@ const pp = { * differ from the default set of visible columns. */ columnsAreToggled() { - return !ri(this.visibleColumns, this.defaultVisibleToggleableColumns); + return !ii(this.visibleColumns, this.defaultVisibleToggleableColumns); }, /* * Returns a boolean whether there are Search Inputs visible @@ -5553,6 +5572,9 @@ const pp = { totalSelectedItems() { const e = this.selectedItems.length; return e === 1 && this.selectedItems[0] === "*" ? this.itemsOnAllPages : e; + }, + scrollToHeadRememberKey() { + return `spladeTableScrollToHead-${this.spladeId}`; } }, created() { @@ -5567,13 +5589,29 @@ const pp = { const i = n.split("["), s = i[1].substring(0, i[1].length - 1); this.forcedVisibleSearchInputs = [...this.forcedVisibleSearchInputs, s]; } - }), t.length === 0 ? this.visibleColumns = this.defaultVisibleToggleableColumns : this.visibleColumns = t; + }), t.length === 0 ? this.visibleColumns = this.defaultVisibleToggleableColumns : this.visibleColumns = t, p.restore(this.scrollToHeadRememberKey) && this.$nextTick(() => { + document.querySelector(`div[data-splade-id="${this.spladeId}"]`).scrollIntoView({ + behavior: "smooth", + block: "start", + inline: "nearest" + }); + }), p.forget(this.scrollToHeadRememberKey); }, methods: { + navigate(e, t) { + const r = { + "X-Splade-Modal": p.stackType(this.stack), + "X-Splade-Modal-Target": this.stack, + "X-Splade-Prevent-View-Transition": !0 + }; + (this.paginationScroll !== "top" || !t) && (r["X-Splade-Preserve-Scroll"] = !0), p.request(e, "GET", {}, r, !1).then(() => { + !p.isSsr && this.paginationScroll === "head" && t && p.remember(this.scrollToHeadRememberKey, !0); + }); + }, visitLink(e, t, r) { var n, i; if (!(((n = r == null ? void 0 : r.target) == null ? void 0 : n.tagName) === "A" || ((i = r == null ? void 0 : r.target) == null ? void 0 : i.tagName) === "BUTTON")) - return t === "modal" ? v.modal(e) : t === "slideover" ? v.slideover(e) : v.visit(e); + return t === "modal" ? p.modal(e) : t === "slideover" ? p.slideover(e) : p.visit(e); }, /** * Resets the table to its initial state. @@ -5595,9 +5633,9 @@ const pp = { * Toggles the column key. */ toggleColumn(e) { - const t = !this.columnIsVisible(e), r = fp(this.columns, (i) => i.can_be_hidden ? i.key === e ? t : this.visibleColumns.includes(i.key) : !0); - let n = bs(r, (i) => i.key).sort(); - ri(n, this.defaultVisibleToggleableColumns) && (n = []), this.visibleColumns = n.length === 0 ? this.defaultVisibleToggleableColumns : n, this.updateQuery("columns", n, null, !1); + const t = !this.columnIsVisible(e), r = hp(this.columns, (i) => i.can_be_hidden ? i.key === e ? t : this.visibleColumns.includes(i.key) : !0); + let n = ws(r, (i) => i.key).sort(); + ii(n, this.defaultVisibleToggleableColumns) && (n = []), this.visibleColumns = n.length === 0 ? this.defaultVisibleToggleableColumns : n, this.updateQuery("columns", n, null, !1); }, /** * Removes the key from being forcefully visible, and sets the value to null. @@ -5630,12 +5668,12 @@ const pp = { return e.substring(1).split("&").forEach((r) => { const n = decodeURIComponent(r).split("="); let i = n[0]; - if (!cp(i, "]")) { + if (!fp(i, "]")) { t[i] = n[1]; return; } const s = i.split("["), a = s[1].substring(0, s[1].length - 1); - parseInt(a) == a ? (i = s[0], R(t[i]) || (t[i] = []), t[i].push(n[1])) : t[i] = n[1]; + parseInt(a) == a ? (i = s[0], M(t[i]) || (t[i] = []), t[i].push(n[1])) : t[i] = n[1]; }), t; }, /* @@ -5651,12 +5689,12 @@ const pp = { typeof r > "u" && (r = !0); let n = {}; te(e, (u, c) => { - if (!R(u)) { + if (!M(u)) { n[c] = u; return; } - u.length !== 0 && u.forEach((m, g) => { - n[`${c}[${g}]`] = m; + u.length !== 0 && u.forEach((v, g) => { + n[`${c}[${g}]`] = v; }); }); let i = ""; @@ -5665,15 +5703,15 @@ const pp = { }), i && (i = "?" + i); const s = this.baseUrl + i; if (!r) - return this.stack > 0 ? void 0 : v.replaceUrlOfCurrentPage(s); + return this.stack > 0 ? void 0 : p.replaceUrlOfCurrentPage(s); this.isLoading = !0; let a = null; typeof t < "u" && t && (a = (l = document.querySelector(`[name="${t.name}"]`)) == null ? void 0 : l.value); const o = this.stack > 0 ? { - "X-Splade-Modal": v.stackType(this.stack), + "X-Splade-Modal": p.stackType(this.stack), "X-Splade-Modal-Target": this.stack } : {}; - v.replace(s, o).then(() => { + p.replace(s, o).then(() => { this.isLoading = !1, typeof t < "u" && t && Oe(() => { const u = document.querySelector(`[name="${t.name}"]`); u.focus(), a && (u.value = a); @@ -5685,7 +5723,7 @@ const pp = { let a = null; if (t) try { - a = await v.confirm(t === !0 ? "" : t, r, n, i, !!s); + a = await p.confirm(t === !0 ? "" : t, r, n, i, !!s); } catch { return !1; } @@ -5695,14 +5733,14 @@ const pp = { const l = se(s) && s ? s : "password"; o[l] = a; } - v.request(e, "POST", o, {}, !1).then((l) => { + p.request(e, "POST", o, {}, !1).then((l) => { l.data; }).catch(() => { this.isLoading = !1; }); }, setSelectedItems(e) { - this.selectedItems = R(e) ? e : []; + this.selectedItems = M(e) ? e : []; }, itemIsSelected(e) { return this.selectedItems.length == 1 && this.selectedItems[0] == "*" ? !0 : this.selectedItems.includes(e); @@ -5724,6 +5762,7 @@ const pp = { striped: this.striped, toggleColumn: this.toggleColumn, updateQuery: this.updateQuery, + navigate: this.navigate, visit: this.visitLink, totalSelectedItems: this.totalSelectedItems, allItemsFromAllPagesAreSelected: this.allItemsFromAllPagesAreSelected, @@ -5737,12 +5776,12 @@ const pp = { isLoading: this.isLoading }); } -}, hp = { +}, vp = { inheritAttrs: !1, data() { return { isMounted: !1, - Teleport: ii + Teleport: ai }; }, /* @@ -5753,9 +5792,9 @@ const pp = { this.isMounted = !0; } }; -function mp(e, t, r, n, i, s) { - return ks((j(), X(Ls(i.isMounted ? i.Teleport : "div"), Bs(js(e.$attrs)), { - default: si(() => [ +function gp(e, t, r, n, i, s) { + return Ls((B(), X(Rs(i.isMounted ? i.Teleport : "div"), Bs(js(e.$attrs)), { + default: oi(() => [ K(e.$slots, "default") ]), _: 3 @@ -5763,7 +5802,7 @@ function mp(e, t, r, n, i, s) { [Ms, i.isMounted] ]); } -const vp = /* @__PURE__ */ _e(hp, [["render", mp]]), gp = { +const yp = /* @__PURE__ */ _e(vp, [["render", gp]]), bp = { props: { autosize: { type: Boolean, @@ -5801,13 +5840,13 @@ const vp = /* @__PURE__ */ _e(hp, [["render", mp]]), gp = { e.default.destroy(this.element); }); } -}, yp = { ref: "textarea" }; -function bp(e, t, r, n, i, s) { - return j(), ce("div", yp, [ +}, wp = { ref: "textarea" }; +function Sp(e, t, r, n, i, s) { + return B(), ce("div", wp, [ K(e.$slots, "default") ], 512); } -const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { +const Op = /* @__PURE__ */ _e(bp, [["render", Sp]]), $p = { props: { toastKey: { type: Number, @@ -5849,7 +5888,7 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { TransitionChild: lt }); } -}, Op = [ +}, Ep = [ "left-top", "center-top", "right-top", @@ -5859,29 +5898,29 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { "left-bottom", "center-bottom", "right-bottom" -], $p = { +], Tp = { computed: { /* * Retrieves the toasts from the Splade instance. */ toasts: function() { - return v.toastsReversed.value; + return p.toastsReversed.value; }, /* * Determine whether a backdrop should be shown. */ hasBackdrop: function() { - return v.toasts.value.filter((e) => !e.dismissed && e.backdrop && e.html).length > 0; + return p.toasts.value.filter((e) => !e.dismissed && e.backdrop && e.html).length > 0; } }, methods: { dismissToast(e) { - v.dismissToast(e); + p.dismissToast(e); } }, render() { return this.$slots.default({ - positions: Op, + positions: Ep, toasts: this.toasts, dismissToast: this.dismissToast, hasBackdrop: this.hasBackdrop, @@ -5891,7 +5930,7 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { TransitionChild: lt }); } -}, Ep = { +}, xp = { props: { default: { type: Object, @@ -5925,7 +5964,7 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { }, get(t, r) { const n = Object.keys(e.toggles); - if (n.length === 1 && us(n) === "default") { + if (n.length === 1 && cs(n) === "default") { if (r === "toggled") return e.toggled("default"); if (r === "setToggle") @@ -5947,14 +5986,14 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { ) ); } -}, Tp = { +}, _p = { render() { return this.$slots.default({ TransitionRoot: ut, TransitionChild: lt }); } -}, xp = { +}, Ip = { props: { backendRoute: { type: String, @@ -6024,27 +6063,27 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { Accept: "text/html, application/xhtml+xml" } }), this.$emit("success", i.data); } catch (s) { - this.$emit("error", s.response.data), v.onServerError(s.response.data); + this.$emit("error", s.response.data), p.onServerError(s.response.data); return; } return this.instance = i.data.instance, this.signature = i.data.signature, te(i.data.data, (s, a) => { St(this.values, a, s); - }), i.data.redirect ? v.visit(i.data.redirect) : (i.data.toasts.forEach((s) => { - v.pushToast(s); + }), i.data.redirect ? p.visit(i.data.redirect) : (i.data.toasts.forEach((s) => { + p.pushToast(s); }), i.data.result); }; }), this.$slots.default(t); } -}, _p = { +}, Ap = { created: (e, t) => { - if (v.isSsr) + if (p.isSsr) return; - const r = `preserveScroll-${t.arg}`, n = v.restore(r); + const r = `preserveScroll-${t.arg}`, n = p.restore(r); n && Oe(() => { typeof e.scrollTo == "function" ? e.scrollTo(n.left, n.top) : (e.scrollTop = n.top, e.scrollLeft = n.left); }); const i = function() { - v.remember(r, { + p.remember(r, { top: e.scrollTop, left: e.scrollLeft }); @@ -6153,7 +6192,7 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { document.addEventListener("splade:internal:request-progress", (s) => t.progress(s, r.default)), document.addEventListener("splade:internal:request-response", (s) => i(s)), document.addEventListener("splade:internal:request-error", (s) => i(s)), r.default.configure({ showSpinner: e.spinner }), e.css && this.injectCSS(e.color); }); } -}, qp = { +}, Fp = { /** * Registers all Splade components and makes the configured * options and the Splade core globally available. @@ -6161,7 +6200,7 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { install: (e, t) => { t = t || {}, t.max_keep_alive = W(t, "max_keep_alive") ? t.max_keep_alive : 10, t.prefix = W(t, "prefix") ? t.prefix : "Splade", t.transform_anchors = W(t, "transform_anchors") ? t.transform_anchors : !1, t.link_component = W(t, "link_component") ? t.link_component : "Link", t.progress_bar = W(t, "progress_bar") ? t.progress_bar : !1, t.components = W(t, "components") ? t.components : {}, t.view_transitions = W(t, "view_transitions") ? t.view_transitions : !1, t.suppress_compile_errors = W(t, "suppress_compile_errors") ? t.suppress_compile_errors : !1; const r = t.prefix; - if (e.component(`${r}Button`, Vl).component(`${r}Confirm`, Lu).component(`${r}DataStores`, Vu).component(`${r}Data`, Nu).component(`${r}Defer`, tc).component(`${r}Dialog`, rc).component(`${r}Dropdown`, od).component(`${r}DynamicHtml`, ld).component(`${r}Errors`, ud).component(`${r}Event`, cd).component(`${r}File`, Lf).component(`${r}Flash`, Bf).component(`${r}Form`, Mf).component(`${r}Input`, Vf).component(`${r}JoditEditor`, zf).component(`${r}VueBridge`, xp).component(`${r}Lazy`, Kf).component(`${r}Modal`, Yf).component(`${r}OnClickOutside`, ts).component(`${r}PreloadedModal`, Zf).component(`${r}Rehydrate`, rp).component(`${r}Render`, ue).component(`${r}Script`, np).component(`${r}Select`, lp).component(`${r}State`, up).component(`${r}Table`, pp).component(`${r}Teleport`, vp).component(`${r}Textarea`, wp).component(`${r}Toast`, Sp).component(`${r}Toasts`, $p).component(`${r}Toggle`, Ep).component(`${r}Transition`, Tp).component(t.link_component, Qf).directive(`${r}PreserveScroll`, _p), Object.defineProperty(e.config.globalProperties, "$splade", { get: () => v }), Object.defineProperty(e.config.globalProperties, "$spladeOptions", { get: () => Object.assign({}, { ...t }) }), e.provide("$splade", e.config.globalProperties.$splade), e.provide("$spladeOptions", e.config.globalProperties.$spladeOptions), t.progress_bar) { + if (e.component(`${r}Button`, Ul).component(`${r}Confirm`, Bu).component(`${r}DataStores`, Uu).component(`${r}Data`, Hu).component(`${r}Defer`, nc).component(`${r}Dialog`, ic).component(`${r}Dropdown`, ud).component(`${r}DynamicHtml`, cd).component(`${r}Errors`, dd).component(`${r}Event`, fd).component(`${r}File`, Bf).component(`${r}Flash`, jf).component(`${r}Form`, Df).component(`${r}Input`, Uf).component(`${r}JoditEditor`, Xf).component(`${r}VueBridge`, Ip).component(`${r}Lazy`, Qf).component(`${r}Modal`, ep).component(`${r}OnClickOutside`, rs).component(`${r}PreloadedModal`, tp).component(`${r}Rehydrate`, ip).component(`${r}Render`, ue).component(`${r}Script`, sp).component(`${r}Select`, cp).component(`${r}State`, dp).component(`${r}Table`, mp).component(`${r}Teleport`, yp).component(`${r}Textarea`, Op).component(`${r}Toast`, $p).component(`${r}Toasts`, Tp).component(`${r}Toggle`, xp).component(`${r}Transition`, _p).component(t.link_component, Zf).directive(`${r}PreserveScroll`, Ap), Object.defineProperty(e.config.globalProperties, "$splade", { get: () => p }), Object.defineProperty(e.config.globalProperties, "$spladeOptions", { get: () => Object.assign({}, { ...t }) }), e.provide("$splade", e.config.globalProperties.$splade), e.provide("$spladeOptions", e.config.globalProperties.$spladeOptions), t.progress_bar) { const n = { delay: 250, color: "#4B5563", @@ -6173,7 +6212,7 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { }), Cr.init(t.progress_bar); } t.suppress_compile_errors && (e.config.compilerOptions.onError = (n) => { - import("./CompilerErrorMessages-4a55bbec.js").then((i) => { + import("./CompilerErrorMessages-6b34f14b.js").then((i) => { console.error({ message: i.default[n.code] || "Unknown compiler error", lineNumber: n.lineNumber, @@ -6185,7 +6224,7 @@ const wp = /* @__PURE__ */ _e(gp, [["render", bp]]), Sp = { }); } }; -function Cp(e, t, r) { +function kp(e, t, r) { const n = {}; process.argv.slice(2).forEach((s) => { const a = s.replace(/^-+/, "").split("="); @@ -6208,9 +6247,9 @@ function Cp(e, t, r) { }).listen(i, () => console.log(`Splade SSR server started on port ${i}.`)); } export { - v as Splade, - No as SpladeApp, - qp as SpladePlugin, - Pp as renderSpladeApp, - Cp as startServer + p as Splade, + Ho as SpladeApp, + Fp as SpladePlugin, + Cp as renderSpladeApp, + kp as startServer }; diff --git a/dist/style.css b/dist/style.css index 60582c7e..189d2281 100644 --- a/dist/style.css +++ b/dist/style.css @@ -1,9 +1,9 @@ -.choices{position:relative;overflow:hidden;margin-bottom:24px;font-size:16px}.choices:focus{outline:none}.choices:last-child{margin-bottom:0}.choices.is-open{overflow:visible}.choices.is-disabled .choices__inner,.choices.is-disabled .choices__input{background-color:#eaeaea;cursor:not-allowed;user-select:none}.choices.is-disabled .choices__item{cursor:not-allowed}.choices [hidden]{display:none!important}.choices[data-type*=select-one]{cursor:pointer}.choices[data-type*=select-one] .choices__inner{padding-bottom:7.5px}.choices[data-type*=select-one] .choices__input{display:block;width:100%;padding:10px;border-bottom:1px solid #ddd;background-color:#fff;margin:0}.choices[data-type*=select-one] .choices__button{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);padding:0;background-size:8px;position:absolute;top:50%;right:0;margin-top:-10px;margin-right:25px;height:20px;width:20px;border-radius:10em;opacity:.25}.choices[data-type*=select-one] .choices__button:hover,.choices[data-type*=select-one] .choices__button:focus{opacity:1}.choices[data-type*=select-one] .choices__button:focus{box-shadow:0 0 0 2px #00bcd4}.choices[data-type*=select-one] .choices__item[data-value=""] .choices__button{display:none}.choices[data-type*=select-one]:after{content:"";height:0;width:0;border-style:solid;border-color:#333 transparent transparent transparent;border-width:5px;position:absolute;right:11.5px;top:50%;margin-top:-2.5px;pointer-events:none}.choices[data-type*=select-one].is-open:after{border-color:transparent transparent #333 transparent;margin-top:-7.5px}.choices[data-type*=select-one][dir=rtl]:after{left:11.5px;right:auto}.choices[data-type*=select-one][dir=rtl] .choices__button{right:auto;left:0;margin-left:25px;margin-right:0}.choices[data-type*=select-multiple] .choices__inner,.choices[data-type*=text] .choices__inner{cursor:text}.choices[data-type*=select-multiple] .choices__button,.choices[data-type*=text] .choices__button{position:relative;display:inline-block;margin:0 -4px 0 8px;padding-left:16px;border-left:1px solid #008fa1;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);background-size:8px;width:8px;line-height:1;opacity:.75;border-radius:0}.choices[data-type*=select-multiple] .choices__button:hover,.choices[data-type*=select-multiple] .choices__button:focus,.choices[data-type*=text] .choices__button:hover,.choices[data-type*=text] .choices__button:focus{opacity:1}.choices__inner{display:inline-block;vertical-align:top;width:100%;background-color:#fff;padding:7.5px 7.5px 3.75px;border:1px solid #ddd;border-radius:2.5px;font-size:14px;min-height:44px;overflow:hidden}.is-focused .choices__inner,.is-open .choices__inner{border-color:#b7b7b7}.is-open .choices__inner{border-radius:2.5px 2.5px 0 0}.is-flipped.is-open .choices__inner{border-radius:0 0 2.5px 2.5px}.choices__list{margin:0;padding-left:0;list-style:none}.choices__list--single{display:inline-block;padding:4px 16px 4px 4px;width:100%}[dir=rtl] .choices__list--single{padding-right:4px;padding-left:16px}.choices__list--single .choices__item{width:100%}.choices__list--multiple{display:inline}.choices__list--multiple .choices__item{display:inline-block;vertical-align:middle;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:500;margin-right:3.75px;margin-bottom:3.75px;background-color:#00bcd4;border:1px solid #00a5bb;color:#fff;word-break:break-all;box-sizing:border-box}.choices__list--multiple .choices__item[data-deletable]{padding-right:5px}[dir=rtl] .choices__list--multiple .choices__item{margin-right:0;margin-left:3.75px}.choices__list--multiple .choices__item.is-highlighted{background-color:#00a5bb;border:1px solid #008fa1}.is-disabled .choices__list--multiple .choices__item{background-color:#aaa;border:1px solid #919191}.choices__list--dropdown,.choices__list[aria-expanded]{visibility:hidden;z-index:1;position:absolute;width:100%;background-color:#fff;border:1px solid #ddd;top:100%;margin-top:-1px;border-bottom-left-radius:2.5px;border-bottom-right-radius:2.5px;overflow:hidden;word-break:break-all;will-change:visibility}.is-active.choices__list--dropdown,.is-active.choices__list[aria-expanded]{visibility:visible}.is-open .choices__list--dropdown,.is-open .choices__list[aria-expanded]{border-color:#b7b7b7}.is-flipped .choices__list--dropdown,.is-flipped .choices__list[aria-expanded]{top:auto;bottom:100%;margin-top:0;margin-bottom:-1px;border-radius:.25rem .25rem 0 0}.choices__list--dropdown .choices__list,.choices__list[aria-expanded] .choices__list{position:relative;max-height:300px;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position}.choices__list--dropdown .choices__item,.choices__list[aria-expanded] .choices__item{position:relative;padding:10px;font-size:14px}[dir=rtl] .choices__list--dropdown .choices__item,[dir=rtl] .choices__list[aria-expanded] .choices__item{text-align:right}@media (min-width: 640px){.choices__list--dropdown .choices__item--selectable,.choices__list[aria-expanded] .choices__item--selectable{padding-right:100px}.choices__list--dropdown .choices__item--selectable:after,.choices__list[aria-expanded] .choices__item--selectable:after{content:attr(data-select-text);font-size:12px;opacity:0;position:absolute;right:10px;top:50%;transform:translateY(-50%)}[dir=rtl] .choices__list--dropdown .choices__item--selectable,[dir=rtl] .choices__list[aria-expanded] .choices__item--selectable{text-align:right;padding-left:100px;padding-right:10px}[dir=rtl] .choices__list--dropdown .choices__item--selectable:after,[dir=rtl] .choices__list[aria-expanded] .choices__item--selectable:after{right:auto;left:10px}}.choices__list--dropdown .choices__item--selectable.is-highlighted,.choices__list[aria-expanded] .choices__item--selectable.is-highlighted{background-color:#f2f2f2}.choices__list--dropdown .choices__item--selectable.is-highlighted:after,.choices__list[aria-expanded] .choices__item--selectable.is-highlighted:after{opacity:.5}.choices__item{cursor:default}.choices__item--selectable{cursor:pointer}.choices__item--disabled{cursor:not-allowed;user-select:none;opacity:.5}.choices__heading{font-weight:600;font-size:12px;padding:10px;border-bottom:1px solid #f7f7f7;color:gray}.choices__button{text-indent:-9999px;appearance:none;border:0;background-color:transparent;background-repeat:no-repeat;background-position:center;cursor:pointer}.choices__button:focus{outline:none}.choices__input{display:inline-block;vertical-align:baseline;background-color:#fff;font-size:14px;margin-bottom:5px;border:0;border-radius:0;max-width:100%;padding:4px 0 4px 2px}.choices__input:focus{outline:0}.choices__input::-webkit-search-decoration,.choices__input::-webkit-search-cancel-button,.choices__input::-webkit-search-results-button,.choices__input::-webkit-search-results-decoration{display:none}.choices__input::-ms-clear,.choices__input::-ms-reveal{display:none;width:0;height:0}[dir=rtl] .choices__input{padding-right:2px;padding-left:0}.choices__placeholder{opacity:.5}span+.choices{@apply mt-1;}fieldset:disabled .choices{@apply opacity-50;}fieldset:disabled .choices .choices__button:hover{@apply opacity-25;}.choices{@apply shadow-sm;}.choices .choices__inner{@apply block rounded-md border-gray-300 shadow-sm w-full py-2;min-height:auto}.choices.is-focused .choices__inner{@apply border-indigo-300 ring ring-indigo-200 ring-opacity-50;}.choices .choices__inner{@apply px-3 text-base bg-no-repeat;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-size:1.5em 1.5em;background-repeat:no-repeat}.choices .choices__inner .choices__input:focus{box-shadow:none}.choices[data-type*=select-one] .choices__inner{@apply py-2;}.choices[data-type*=select-one] .choices__input{@apply px-4 text-base;box-shadow:none}.choices[data-type*=select-one] .choices__input::placeholder{@apply text-gray-700;}.choices[data-type*=select-one]:after{@apply hidden;}.choices[data-type*=select-one].is-disabled .choices__button{@apply hidden;}.choices .choices__list{@apply py-0 pl-0;}.choices .choices__list--dropdown{@apply mt-1 shadow-lg rounded-md border-gray-300;}.choices .choices__list--dropdown .choices__item.choices__placeholder{@apply hidden;}.choices .choices__list--dropdown .choices__item--selectable{@apply text-gray-900 text-base px-4;}.choices .choices__list--dropdown .choices__item--selectable.is-highlighted{@apply bg-indigo-500 text-white;}.choices .choices__list--multiple{@apply mb-0;}.choices .choices__list--multiple .choices__item{@apply bg-indigo-500 border-indigo-500 rounded-md font-medium py-1 text-sm mb-0;line-height:1}.choices .choices__list--multiple .choices__item:hover{@apply bg-indigo-700 border-indigo-700;}.choices[data-type*=select-multiple] .choices__inner{@apply pr-8 py-2;}.choices[data-type*=select-multiple] .choices__inner[data-has-selection=true]{@apply pt-1.5 pb-2;}.choices[data-type*=select-multiple] .choices__button{@apply border-none px-3 mx-0;}.choices[data-type*=select-multiple] .choices__input{@apply m-0 py-px pl-0 text-base min-w-0 leading-none;}.choices__placeholder{@apply opacity-100 text-gray-500;}/*! -* FilePond 4.30.4 +.choices{position:relative;overflow:hidden;margin-bottom:24px;font-size:16px}.choices:focus{outline:none}.choices:last-child{margin-bottom:0}.choices.is-open{overflow:visible}.choices.is-disabled .choices__inner,.choices.is-disabled .choices__input{background-color:#eaeaea;cursor:not-allowed;-webkit-user-select:none;user-select:none}.choices.is-disabled .choices__item{cursor:not-allowed}.choices [hidden]{display:none!important}.choices[data-type*=select-one]{cursor:pointer}.choices[data-type*=select-one] .choices__inner{padding-bottom:7.5px}.choices[data-type*=select-one] .choices__input{display:block;width:100%;padding:10px;border-bottom:1px solid #ddd;background-color:#fff;margin:0}.choices[data-type*=select-one] .choices__button{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);padding:0;background-size:8px;position:absolute;top:50%;right:0;margin-top:-10px;margin-right:25px;height:20px;width:20px;border-radius:10em;opacity:.25}.choices[data-type*=select-one] .choices__button:hover,.choices[data-type*=select-one] .choices__button:focus{opacity:1}.choices[data-type*=select-one] .choices__button:focus{box-shadow:0 0 0 2px #00bcd4}.choices[data-type*=select-one] .choices__item[data-value=""] .choices__button{display:none}.choices[data-type*=select-one]:after{content:"";height:0;width:0;border-style:solid;border-color:#333 transparent transparent transparent;border-width:5px;position:absolute;right:11.5px;top:50%;margin-top:-2.5px;pointer-events:none}.choices[data-type*=select-one].is-open:after{border-color:transparent transparent #333 transparent;margin-top:-7.5px}.choices[data-type*=select-one][dir=rtl]:after{left:11.5px;right:auto}.choices[data-type*=select-one][dir=rtl] .choices__button{right:auto;left:0;margin-left:25px;margin-right:0}.choices[data-type*=select-multiple] .choices__inner,.choices[data-type*=text] .choices__inner{cursor:text}.choices[data-type*=select-multiple] .choices__button,.choices[data-type*=text] .choices__button{position:relative;display:inline-block;margin:0 -4px 0 8px;padding-left:16px;border-left:1px solid #008fa1;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);background-size:8px;width:8px;line-height:1;opacity:.75;border-radius:0}.choices[data-type*=select-multiple] .choices__button:hover,.choices[data-type*=select-multiple] .choices__button:focus,.choices[data-type*=text] .choices__button:hover,.choices[data-type*=text] .choices__button:focus{opacity:1}.choices__inner{display:inline-block;vertical-align:top;width:100%;background-color:#fff;padding:7.5px 7.5px 3.75px;border:1px solid #ddd;border-radius:2.5px;font-size:14px;min-height:44px;overflow:hidden}.is-focused .choices__inner,.is-open .choices__inner{border-color:#b7b7b7}.is-open .choices__inner{border-radius:2.5px 2.5px 0 0}.is-flipped.is-open .choices__inner{border-radius:0 0 2.5px 2.5px}.choices__list{margin:0;padding-left:0;list-style:none}.choices__list--single{display:inline-block;padding:4px 16px 4px 4px;width:100%}[dir=rtl] .choices__list--single{padding-right:4px;padding-left:16px}.choices__list--single .choices__item{width:100%}.choices__list--multiple{display:inline}.choices__list--multiple .choices__item{display:inline-block;vertical-align:middle;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:500;margin-right:3.75px;margin-bottom:3.75px;background-color:#00bcd4;border:1px solid #00a5bb;color:#fff;word-break:break-all;box-sizing:border-box}.choices__list--multiple .choices__item[data-deletable]{padding-right:5px}[dir=rtl] .choices__list--multiple .choices__item{margin-right:0;margin-left:3.75px}.choices__list--multiple .choices__item.is-highlighted{background-color:#00a5bb;border:1px solid #008fa1}.is-disabled .choices__list--multiple .choices__item{background-color:#aaa;border:1px solid #919191}.choices__list--dropdown,.choices__list[aria-expanded]{visibility:hidden;z-index:1;position:absolute;width:100%;background-color:#fff;border:1px solid #ddd;top:100%;margin-top:-1px;border-bottom-left-radius:2.5px;border-bottom-right-radius:2.5px;overflow:hidden;word-break:break-all;will-change:visibility}.is-active.choices__list--dropdown,.is-active.choices__list[aria-expanded]{visibility:visible}.is-open .choices__list--dropdown,.is-open .choices__list[aria-expanded]{border-color:#b7b7b7}.is-flipped .choices__list--dropdown,.is-flipped .choices__list[aria-expanded]{top:auto;bottom:100%;margin-top:0;margin-bottom:-1px;border-radius:.25rem .25rem 0 0}.choices__list--dropdown .choices__list,.choices__list[aria-expanded] .choices__list{position:relative;max-height:300px;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position}.choices__list--dropdown .choices__item,.choices__list[aria-expanded] .choices__item{position:relative;padding:10px;font-size:14px}[dir=rtl] .choices__list--dropdown .choices__item,[dir=rtl] .choices__list[aria-expanded] .choices__item{text-align:right}@media (min-width: 640px){.choices__list--dropdown .choices__item--selectable,.choices__list[aria-expanded] .choices__item--selectable{padding-right:100px}.choices__list--dropdown .choices__item--selectable:after,.choices__list[aria-expanded] .choices__item--selectable:after{content:attr(data-select-text);font-size:12px;opacity:0;position:absolute;right:10px;top:50%;transform:translateY(-50%)}[dir=rtl] .choices__list--dropdown .choices__item--selectable,[dir=rtl] .choices__list[aria-expanded] .choices__item--selectable{text-align:right;padding-left:100px;padding-right:10px}[dir=rtl] .choices__list--dropdown .choices__item--selectable:after,[dir=rtl] .choices__list[aria-expanded] .choices__item--selectable:after{right:auto;left:10px}}.choices__list--dropdown .choices__item--selectable.is-highlighted,.choices__list[aria-expanded] .choices__item--selectable.is-highlighted{background-color:#f2f2f2}.choices__list--dropdown .choices__item--selectable.is-highlighted:after,.choices__list[aria-expanded] .choices__item--selectable.is-highlighted:after{opacity:.5}.choices__item{cursor:default}.choices__item--selectable{cursor:pointer}.choices__item--disabled{cursor:not-allowed;-webkit-user-select:none;user-select:none;opacity:.5}.choices__heading{font-weight:600;font-size:12px;padding:10px;border-bottom:1px solid #f7f7f7;color:gray}.choices__button{text-indent:-9999px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background-color:transparent;background-repeat:no-repeat;background-position:center;cursor:pointer}.choices__button:focus{outline:none}.choices__input{display:inline-block;vertical-align:baseline;background-color:#fff;font-size:14px;margin-bottom:5px;border:0;border-radius:0;max-width:100%;padding:4px 0 4px 2px}.choices__input:focus{outline:0}.choices__input::-webkit-search-decoration,.choices__input::-webkit-search-cancel-button,.choices__input::-webkit-search-results-button,.choices__input::-webkit-search-results-decoration{display:none}.choices__input::-ms-clear,.choices__input::-ms-reveal{display:none;width:0;height:0}[dir=rtl] .choices__input{padding-right:2px;padding-left:0}.choices__placeholder{opacity:.5}span+.choices{@apply mt-1;}fieldset:disabled .choices{@apply opacity-50;}fieldset:disabled .choices .choices__button:hover{@apply opacity-25;}.choices{@apply shadow-sm;}.choices .choices__inner{@apply block rounded-md border-gray-300 shadow-sm w-full py-2;min-height:auto}.choices.is-focused .choices__inner{@apply border-indigo-300 ring ring-indigo-200 ring-opacity-50;}.choices .choices__inner{@apply px-3 text-base bg-no-repeat;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-size:1.5em 1.5em;background-repeat:no-repeat}.choices .choices__inner .choices__input:focus{box-shadow:none}.choices[data-type*=select-one] .choices__inner{@apply py-2;}.choices[data-type*=select-one] .choices__input{@apply px-4 text-base;box-shadow:none}.choices[data-type*=select-one] .choices__input::placeholder{@apply text-gray-700;}.choices[data-type*=select-one]:after{@apply hidden;}.choices[data-type*=select-one].is-disabled .choices__button{@apply hidden;}.choices .choices__list{@apply py-0 pl-0;}.choices .choices__list--dropdown{@apply mt-1 shadow-lg rounded-md border-gray-300;}.choices .choices__list--dropdown .choices__item.choices__placeholder{@apply hidden;}.choices .choices__list--dropdown .choices__item--selectable{@apply text-gray-900 text-base px-4;}.choices .choices__list--dropdown .choices__item--selectable.is-highlighted{@apply bg-indigo-500 text-white;}.choices .choices__list--multiple{@apply mb-0;}.choices .choices__list--multiple .choices__item{@apply bg-indigo-500 border-indigo-500 rounded-md font-medium py-1 text-sm mb-0;line-height:1}.choices .choices__list--multiple .choices__item:hover{@apply bg-indigo-700 border-indigo-700;}.choices[data-type*=select-multiple] .choices__inner{@apply pr-8 py-2;}.choices[data-type*=select-multiple] .choices__inner[data-has-selection=true]{@apply pt-1.5 pb-2;}.choices[data-type*=select-multiple] .choices__button{@apply border-none px-3 mx-0;}.choices[data-type*=select-multiple] .choices__input{@apply m-0 py-px pl-0 text-base min-w-0 leading-none;}.choices__placeholder{@apply opacity-100 text-gray-500;}/*! +* FilePond 4.30.6 * Licensed under MIT, https://opensource.org/licenses/MIT/ * Please visit https://pqina.nl/filepond/ for details. -*/.filepond--assistant{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--browser.filepond--browser{position:absolute;margin:0;padding:0;left:1em;top:1.75em;width:calc(100% - 2em);opacity:0;font-size:0}.filepond--data{position:absolute;width:0;height:0;padding:0;margin:0;border:none;visibility:hidden;pointer-events:none;contain:strict}.filepond--drip{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;opacity:.1;pointer-events:none;border-radius:.5em;background:rgba(0,0,0,.01)}.filepond--drip-blob{position:absolute;-webkit-transform-origin:center center;transform-origin:center center;top:0;left:0;width:8em;height:8em;margin-left:-4em;margin-top:-4em;background:#292625;border-radius:50%;will-change:transform,opacity}.filepond--drop-label{position:absolute;left:0;right:0;top:0;margin:0;color:#4f4f4f;display:flex;justify-content:center;align-items:center;height:0px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;will-change:transform,opacity}.filepond--drop-label.filepond--drop-label label{display:block;margin:0;padding:.5em}.filepond--drop-label label{cursor:default;font-size:.875em;font-weight:400;text-align:center;line-height:1.5}.filepond--label-action{text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto;-webkit-text-decoration-color:#a7a4a4;text-decoration-color:#a7a4a4;cursor:pointer}.filepond--root[data-disabled] .filepond--drop-label label{opacity:.5}.filepond--file-action-button.filepond--file-action-button{font-size:1em;width:1.625em;height:1.625em;font-family:inherit;line-height:inherit;margin:0;padding:0;border:none;outline:none;will-change:transform,opacity}.filepond--file-action-button.filepond--file-action-button span{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--file-action-button.filepond--file-action-button svg{width:100%;height:100%}.filepond--file-action-button.filepond--file-action-button:after{position:absolute;left:-.75em;right:-.75em;top:-.75em;bottom:-.75em;content:""}.filepond--file-action-button{cursor:auto;color:#fff;border-radius:50%;background-color:#00000080;background-image:none;box-shadow:0 0 #fff0;transition:box-shadow .25s ease-in}.filepond--file-action-button:hover,.filepond--file-action-button:focus{box-shadow:0 0 0 .125em #ffffffe6}.filepond--file-action-button[disabled]{color:#ffffff80;background-color:#00000040}.filepond--file-action-button[hidden]{display:none}.filepond--action-edit-item.filepond--action-edit-item{width:2em;height:2em;padding:.1875em}.filepond--action-edit-item.filepond--action-edit-item[data-align*=center]{margin-left:-.1875em}.filepond--action-edit-item.filepond--action-edit-item[data-align*=bottom]{margin-bottom:-.1875em}.filepond--action-edit-item-alt{border:none;line-height:inherit;background:transparent;font-family:inherit;color:inherit;outline:none;padding:0;margin:0 0 0 .25em;pointer-events:all;position:absolute}.filepond--action-edit-item-alt svg{width:1.3125em;height:1.3125em}.filepond--action-edit-item-alt span{font-size:0;opacity:0}.filepond--file-info{position:static;display:flex;flex-direction:column;align-items:flex-start;flex:1;margin:0 .5em 0 0;min-width:0;will-change:transform,opacity;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--file-info *{margin:0}.filepond--file-info .filepond--file-info-main{font-size:.75em;line-height:1.2;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:100%}.filepond--file-info .filepond--file-info-sub{font-size:.625em;opacity:.5;transition:opacity .25s ease-in-out;white-space:nowrap}.filepond--file-info .filepond--file-info-sub:empty{display:none}.filepond--file-status{position:static;display:flex;flex-direction:column;align-items:flex-end;flex-grow:0;flex-shrink:0;margin:0;min-width:2.25em;text-align:right;will-change:transform,opacity;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--file-status *{margin:0;white-space:nowrap}.filepond--file-status .filepond--file-status-main{font-size:.75em;line-height:1.2}.filepond--file-status .filepond--file-status-sub{font-size:.625em;opacity:.5;transition:opacity .25s ease-in-out}.filepond--file-wrapper.filepond--file-wrapper{border:none;margin:0;padding:0;min-width:0;height:100%}.filepond--file-wrapper.filepond--file-wrapper>legend{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--file{position:static;display:flex;height:100%;align-items:flex-start;padding:.5625em;color:#fff;border-radius:.5em}.filepond--file .filepond--file-status{margin-left:auto;margin-right:2.25em}.filepond--file .filepond--processing-complete-indicator{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:3}.filepond--file .filepond--processing-complete-indicator,.filepond--file .filepond--progress-indicator,.filepond--file .filepond--file-action-button{position:absolute}.filepond--file [data-align*=left]{left:.5625em}.filepond--file [data-align*=right]{right:.5625em}.filepond--file [data-align*=center]{left:calc(50% - .8125em)}.filepond--file [data-align*=bottom]{bottom:1.125em}.filepond--file [data-align=center]{top:calc(50% - .8125em)}.filepond--file .filepond--progress-indicator{margin-top:.1875em}.filepond--file .filepond--progress-indicator[data-align*=right]{margin-right:.1875em}.filepond--file .filepond--progress-indicator[data-align*=left]{margin-left:.1875em}[data-filepond-item-state=cancelled] .filepond--file-info,[data-filepond-item-state*=invalid] .filepond--file-info,[data-filepond-item-state*=error] .filepond--file-info{margin-right:2.25em}[data-filepond-item-state~=processing] .filepond--file-status-sub{opacity:0}[data-filepond-item-state~=processing] .filepond--action-abort-item-processing~.filepond--file-status .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-error] .filepond--file-status-sub{opacity:0}[data-filepond-item-state=processing-error] .filepond--action-retry-item-processing~.filepond--file-status .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-complete] .filepond--action-revert-item-processing svg{-webkit-animation:fall .5s .125s linear both;animation:fall .5s .125s linear both}[data-filepond-item-state=processing-complete] .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-complete] .filepond--processing-complete-indicator:not([style*="hidden"])~.filepond--file-status .filepond--file-status-sub{opacity:0}[data-filepond-item-state=processing-complete] .filepond--file-info-sub{opacity:0}[data-filepond-item-state=processing-complete] .filepond--action-revert-item-processing~.filepond--file-info .filepond--file-info-sub{opacity:.5}[data-filepond-item-state*=invalid] .filepond--panel,[data-filepond-item-state*=invalid] .filepond--file-wrapper,[data-filepond-item-state*=error] .filepond--panel,[data-filepond-item-state*=error] .filepond--file-wrapper{-webkit-animation:shake .65s linear both;animation:shake .65s linear both}[data-filepond-item-state*=busy] .filepond--progress-indicator svg{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotateZ(0deg);transform:rotate(0)}to{-webkit-transform:rotateZ(360deg);transform:rotate(360deg)}}@keyframes spin{0%{-webkit-transform:rotateZ(0deg);transform:rotate(0)}to{-webkit-transform:rotateZ(360deg);transform:rotate(360deg)}}@-webkit-keyframes shake{10%,90%{-webkit-transform:translateX(-.0625em);transform:translate(-.0625em)}20%,80%{-webkit-transform:translateX(.125em);transform:translate(.125em)}30%,50%,70%{-webkit-transform:translateX(-.25em);transform:translate(-.25em)}40%,60%{-webkit-transform:translateX(.25em);transform:translate(.25em)}}@keyframes shake{10%,90%{-webkit-transform:translateX(-.0625em);transform:translate(-.0625em)}20%,80%{-webkit-transform:translateX(.125em);transform:translate(.125em)}30%,50%,70%{-webkit-transform:translateX(-.25em);transform:translate(-.25em)}40%,60%{-webkit-transform:translateX(.25em);transform:translate(.25em)}}@-webkit-keyframes fall{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}70%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}to{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes fall{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}70%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}to{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.filepond--hopper[data-hopper-state=drag-over]>*{pointer-events:none}.filepond--hopper[data-hopper-state=drag-over]:after{content:"";position:absolute;left:0;top:0;right:0;bottom:0;z-index:100}.filepond--progress-indicator{z-index:103}.filepond--file-action-button{z-index:102}.filepond--file-status{z-index:101}.filepond--file-info{z-index:100}.filepond--item{position:absolute;top:0;left:0;right:0;z-index:1;padding:0;margin:.25em;will-change:transform,opacity}.filepond--item>.filepond--panel{z-index:-1}.filepond--item>.filepond--panel .filepond--panel-bottom{box-shadow:0 .0625em .125em -.0625em #00000040}.filepond--item>.filepond--file-wrapper,.filepond--item>.filepond--panel{transition:opacity .15s ease-out}.filepond--item[data-drag-state]{cursor:-webkit-grab;cursor:grab}.filepond--item[data-drag-state]>.filepond--panel{transition:box-shadow .125s ease-in-out;box-shadow:0 0 #0000}.filepond--item[data-drag-state=drag]{cursor:-webkit-grabbing;cursor:grabbing}.filepond--item[data-drag-state=drag]>.filepond--panel{box-shadow:0 .125em .3125em #00000053}.filepond--item[data-drag-state]:not([data-drag-state="idle"]){z-index:2}.filepond--item-panel{background-color:#64605e}[data-filepond-item-state=processing-complete] .filepond--item-panel{background-color:#369763}[data-filepond-item-state*=invalid] .filepond--item-panel,[data-filepond-item-state*=error] .filepond--item-panel{background-color:#c44e47}.filepond--item-panel{border-radius:.5em;transition:background-color .25s}.filepond--list-scroller{position:absolute;top:0;left:0;right:0;margin:0;will-change:transform}.filepond--list-scroller[data-state=overflow] .filepond--list{bottom:0;right:0}.filepond--list-scroller[data-state=overflow]{overflow-y:scroll;overflow-x:hidden;-webkit-overflow-scrolling:touch;-webkit-mask:linear-gradient(to bottom,#000 calc(100% - .5em),transparent 100%);mask:linear-gradient(to bottom,#000 calc(100% - .5em),transparent 100%)}.filepond--list-scroller::-webkit-scrollbar{background:transparent}.filepond--list-scroller::-webkit-scrollbar:vertical{width:1em}.filepond--list-scroller::-webkit-scrollbar:horizontal{height:0}.filepond--list-scroller::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:99999px;border:.3125em solid transparent;background-clip:content-box}.filepond--list.filepond--list{position:absolute;top:0;margin:0;padding:0;list-style-type:none;will-change:transform}.filepond--list{left:.75em;right:.75em}.filepond--root[data-style-panel-layout~=integrated]{width:100%;height:100%;max-width:none;margin:0}.filepond--root[data-style-panel-layout~=circle] .filepond--panel-root,.filepond--root[data-style-panel-layout~=integrated] .filepond--panel-root{border-radius:0}.filepond--root[data-style-panel-layout~=circle] .filepond--panel-root>*,.filepond--root[data-style-panel-layout~=integrated] .filepond--panel-root>*{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--drop-label,.filepond--root[data-style-panel-layout~=integrated] .filepond--drop-label{bottom:0;height:auto;display:flex;justify-content:center;align-items:center;z-index:7}.filepond--root[data-style-panel-layout~=circle] .filepond--item-panel,.filepond--root[data-style-panel-layout~=integrated] .filepond--item-panel{display:none}.filepond--root[data-style-panel-layout~=compact] .filepond--list-scroller,.filepond--root[data-style-panel-layout~=integrated] .filepond--list-scroller{overflow:hidden;height:100%;margin-top:0;margin-bottom:0}.filepond--root[data-style-panel-layout~=compact] .filepond--list,.filepond--root[data-style-panel-layout~=integrated] .filepond--list{left:0;right:0;height:100%}.filepond--root[data-style-panel-layout~=compact] .filepond--item,.filepond--root[data-style-panel-layout~=integrated] .filepond--item{margin:0}.filepond--root[data-style-panel-layout~=compact] .filepond--file-wrapper,.filepond--root[data-style-panel-layout~=integrated] .filepond--file-wrapper{height:100%}.filepond--root[data-style-panel-layout~=compact] .filepond--drop-label,.filepond--root[data-style-panel-layout~=integrated] .filepond--drop-label{z-index:7}.filepond--root[data-style-panel-layout~=circle]{border-radius:99999rem;overflow:hidden}.filepond--root[data-style-panel-layout~=circle]>.filepond--panel{border-radius:inherit}.filepond--root[data-style-panel-layout~=circle]>.filepond--panel>*{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--file-info,.filepond--root[data-style-panel-layout~=circle] .filepond--file-status{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--action-edit-item{opacity:1!important;visibility:visible!important}@media not all and (min-resolution: .001dpcm){@supports (-webkit-appearance: none) and (stroke-color: transparent){.filepond--root[data-style-panel-layout~=circle]{will-change:transform}}}.filepond--panel-root{border-radius:.5em;background-color:#f1f0ef}.filepond--panel{position:absolute;left:0;top:0;right:0;margin:0;height:100%!important;pointer-events:none}.filepond-panel:not([data-scalable="false"]){height:auto!important}.filepond--panel[data-scalable=false]>div{display:none}.filepond--panel[data-scalable=true]{-webkit-transform-style:preserve-3d;transform-style:preserve-3d;background-color:transparent!important;border:none!important}.filepond--panel-top,.filepond--panel-bottom,.filepond--panel-center{position:absolute;left:0;top:0;right:0;margin:0;padding:0}.filepond--panel-top,.filepond--panel-bottom{height:.5em}.filepond--panel-top{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;border-bottom:none!important}.filepond--panel-top:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-1px;background-color:inherit}.filepond--panel-center,.filepond--panel-bottom{will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:translate3d(0,.5em,0);transform:translate3d(0,.5em,0)}.filepond--panel-bottom{border-top-left-radius:0!important;border-top-right-radius:0!important;border-top:none!important}.filepond--panel-bottom:before{content:"";position:absolute;height:2px;left:0;right:0;top:-1px;background-color:inherit}.filepond--panel-center{height:100px!important;border-top:none!important;border-bottom:none!important;border-radius:0!important}.filepond--panel-center:not([style]){visibility:hidden}.filepond--progress-indicator{position:static;width:1.25em;height:1.25em;color:#fff;margin:0;pointer-events:none;will-change:transform,opacity}.filepond--progress-indicator svg{width:100%;height:100%;vertical-align:top;transform-box:fill-box}.filepond--progress-indicator path{fill:none;stroke:currentColor}.filepond--list-scroller{z-index:6}.filepond--drop-label{z-index:5}.filepond--drip{z-index:3}.filepond--root>.filepond--panel{z-index:2}.filepond--browser{z-index:1}.filepond--root{box-sizing:border-box;position:relative;margin-bottom:1em;font-size:1rem;line-height:normal;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-weight:450;text-align:left;text-rendering:optimizeLegibility;direction:ltr;contain:layout style size}.filepond--root *{box-sizing:inherit;line-height:inherit}.filepond--root *:not(text){font-size:inherit}.filepond--root[data-disabled]{pointer-events:none}.filepond--root[data-disabled] .filepond--list-scroller{pointer-events:all}.filepond--root[data-disabled] .filepond--list{pointer-events:none}.filepond--root .filepond--drop-label{min-height:4.75em}.filepond--root .filepond--list-scroller{margin-top:1em;margin-bottom:1em}.filepond--root .filepond--credits{position:absolute;right:0;opacity:.175;line-height:.85;font-size:11px;color:inherit;text-decoration:none;z-index:3;bottom:-14px}.filepond--root .filepond--credits[style]{top:0;bottom:auto;margin-top:14px}/*! - * FilePondPluginImagePreview 4.6.11 +*/.filepond--assistant{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--browser.filepond--browser{position:absolute;margin:0;padding:0;left:1em;top:1.75em;width:calc(100% - 2em);opacity:0;font-size:0}.filepond--data{position:absolute;width:0;height:0;padding:0;margin:0;border:none;visibility:hidden;pointer-events:none;contain:strict}.filepond--drip{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;opacity:.1;pointer-events:none;border-radius:.5em;background:rgba(0,0,0,.01)}.filepond--drip-blob{position:absolute;-webkit-transform-origin:center center;transform-origin:center center;top:0;left:0;width:8em;height:8em;margin-left:-4em;margin-top:-4em;background:#292625;border-radius:50%;will-change:transform,opacity}.filepond--drop-label{position:absolute;left:0;right:0;top:0;margin:0;color:#4f4f4f;display:flex;justify-content:center;align-items:center;height:0px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;will-change:transform,opacity}.filepond--drop-label.filepond--drop-label label{display:block;margin:0;padding:.5em}.filepond--drop-label label{cursor:default;font-size:.875em;font-weight:400;text-align:center;line-height:1.5}.filepond--label-action{text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto;-webkit-text-decoration-color:#a7a4a4;text-decoration-color:#a7a4a4;cursor:pointer}.filepond--root[data-disabled] .filepond--drop-label label{opacity:.5}.filepond--file-action-button.filepond--file-action-button{font-size:1em;width:1.625em;height:1.625em;font-family:inherit;line-height:inherit;margin:0;padding:0;border:none;outline:none;will-change:transform,opacity}.filepond--file-action-button.filepond--file-action-button span{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--file-action-button.filepond--file-action-button svg{width:100%;height:100%}.filepond--file-action-button.filepond--file-action-button:after{position:absolute;left:-.75em;right:-.75em;top:-.75em;bottom:-.75em;content:""}.filepond--file-action-button{cursor:auto;color:#fff;border-radius:50%;background-color:#00000080;background-image:none;box-shadow:0 0 #fff0;transition:box-shadow .25s ease-in}.filepond--file-action-button:hover,.filepond--file-action-button:focus{box-shadow:0 0 0 .125em #ffffffe6}.filepond--file-action-button[disabled]{color:#ffffff80;background-color:#00000040}.filepond--file-action-button[hidden]{display:none}.filepond--action-edit-item.filepond--action-edit-item{width:2em;height:2em;padding:.1875em}.filepond--action-edit-item.filepond--action-edit-item[data-align*=center]{margin-left:-.1875em}.filepond--action-edit-item.filepond--action-edit-item[data-align*=bottom]{margin-bottom:-.1875em}.filepond--action-edit-item-alt{border:none;line-height:inherit;background:transparent;font-family:inherit;color:inherit;outline:none;padding:0;margin:0 0 0 .25em;pointer-events:all;position:absolute}.filepond--action-edit-item-alt svg{width:1.3125em;height:1.3125em}.filepond--action-edit-item-alt span{font-size:0;opacity:0}.filepond--file-info{position:static;display:flex;flex-direction:column;align-items:flex-start;flex:1;margin:0 .5em 0 0;min-width:0;will-change:transform,opacity;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--file-info *{margin:0}.filepond--file-info .filepond--file-info-main{font-size:.75em;line-height:1.2;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:100%}.filepond--file-info .filepond--file-info-sub{font-size:.625em;opacity:.5;transition:opacity .25s ease-in-out;white-space:nowrap}.filepond--file-info .filepond--file-info-sub:empty{display:none}.filepond--file-status{position:static;display:flex;flex-direction:column;align-items:flex-end;flex-grow:0;flex-shrink:0;margin:0;min-width:2.25em;text-align:right;will-change:transform,opacity;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--file-status *{margin:0;white-space:nowrap}.filepond--file-status .filepond--file-status-main{font-size:.75em;line-height:1.2}.filepond--file-status .filepond--file-status-sub{font-size:.625em;opacity:.5;transition:opacity .25s ease-in-out}.filepond--file-wrapper.filepond--file-wrapper{border:none;margin:0;padding:0;min-width:0;height:100%}.filepond--file-wrapper.filepond--file-wrapper>legend{position:absolute;overflow:hidden;height:1px;width:1px;padding:0;border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.filepond--file{position:static;display:flex;height:100%;align-items:flex-start;padding:.5625em;color:#fff;border-radius:.5em}.filepond--file .filepond--file-status{margin-left:auto;margin-right:2.25em}.filepond--file .filepond--processing-complete-indicator{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:3}.filepond--file .filepond--processing-complete-indicator,.filepond--file .filepond--progress-indicator,.filepond--file .filepond--file-action-button{position:absolute}.filepond--file [data-align*=left]{left:.5625em}.filepond--file [data-align*=right]{right:.5625em}.filepond--file [data-align*=center]{left:calc(50% - .8125em)}.filepond--file [data-align*=bottom]{bottom:1.125em}.filepond--file [data-align=center]{top:calc(50% - .8125em)}.filepond--file .filepond--progress-indicator{margin-top:.1875em}.filepond--file .filepond--progress-indicator[data-align*=right]{margin-right:.1875em}.filepond--file .filepond--progress-indicator[data-align*=left]{margin-left:.1875em}[data-filepond-item-state=cancelled] .filepond--file-info,[data-filepond-item-state*=invalid] .filepond--file-info,[data-filepond-item-state*=error] .filepond--file-info{margin-right:2.25em}[data-filepond-item-state~=processing] .filepond--file-status-sub{opacity:0}[data-filepond-item-state~=processing] .filepond--action-abort-item-processing~.filepond--file-status .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-error] .filepond--file-status-sub{opacity:0}[data-filepond-item-state=processing-error] .filepond--action-retry-item-processing~.filepond--file-status .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-complete] .filepond--action-revert-item-processing svg{-webkit-animation:fall .5s .125s linear both;animation:fall .5s .125s linear both}[data-filepond-item-state=processing-complete] .filepond--file-status-sub{opacity:.5}[data-filepond-item-state=processing-complete] .filepond--processing-complete-indicator:not([style*=hidden])~.filepond--file-status .filepond--file-status-sub{opacity:0}[data-filepond-item-state=processing-complete] .filepond--file-info-sub{opacity:0}[data-filepond-item-state=processing-complete] .filepond--action-revert-item-processing~.filepond--file-info .filepond--file-info-sub{opacity:.5}[data-filepond-item-state*=invalid] .filepond--panel,[data-filepond-item-state*=invalid] .filepond--file-wrapper,[data-filepond-item-state*=error] .filepond--panel,[data-filepond-item-state*=error] .filepond--file-wrapper{-webkit-animation:shake .65s linear both;animation:shake .65s linear both}[data-filepond-item-state*=busy] .filepond--progress-indicator svg{-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotateZ(0deg);transform:rotate(0)}to{-webkit-transform:rotateZ(360deg);transform:rotate(360deg)}}@keyframes spin{0%{-webkit-transform:rotateZ(0deg);transform:rotate(0)}to{-webkit-transform:rotateZ(360deg);transform:rotate(360deg)}}@-webkit-keyframes shake{10%,90%{-webkit-transform:translateX(-.0625em);transform:translate(-.0625em)}20%,80%{-webkit-transform:translateX(.125em);transform:translate(.125em)}30%,50%,70%{-webkit-transform:translateX(-.25em);transform:translate(-.25em)}40%,60%{-webkit-transform:translateX(.25em);transform:translate(.25em)}}@keyframes shake{10%,90%{-webkit-transform:translateX(-.0625em);transform:translate(-.0625em)}20%,80%{-webkit-transform:translateX(.125em);transform:translate(.125em)}30%,50%,70%{-webkit-transform:translateX(-.25em);transform:translate(-.25em)}40%,60%{-webkit-transform:translateX(.25em);transform:translate(.25em)}}@-webkit-keyframes fall{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}70%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}to{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes fall{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}70%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}to{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.filepond--hopper[data-hopper-state=drag-over]>*{pointer-events:none}.filepond--hopper[data-hopper-state=drag-over]:after{content:"";position:absolute;left:0;top:0;right:0;bottom:0;z-index:100}.filepond--progress-indicator{z-index:103}.filepond--file-action-button{z-index:102}.filepond--file-status{z-index:101}.filepond--file-info{z-index:100}.filepond--item{position:absolute;top:0;left:0;right:0;z-index:1;padding:0;margin:.25em;will-change:transform,opacity}.filepond--item>.filepond--panel{z-index:-1}.filepond--item>.filepond--panel .filepond--panel-bottom{box-shadow:0 .0625em .125em -.0625em #00000040}.filepond--item>.filepond--file-wrapper,.filepond--item>.filepond--panel{transition:opacity .15s ease-out}.filepond--item[data-drag-state]{cursor:-webkit-grab;cursor:grab}.filepond--item[data-drag-state]>.filepond--panel{transition:box-shadow .125s ease-in-out;box-shadow:0 0 #0000}.filepond--item[data-drag-state=drag]{cursor:-webkit-grabbing;cursor:grabbing}.filepond--item[data-drag-state=drag]>.filepond--panel{box-shadow:0 .125em .3125em #00000053}.filepond--item[data-drag-state]:not([data-drag-state=idle]){z-index:2}.filepond--item-panel{background-color:#64605e}[data-filepond-item-state=processing-complete] .filepond--item-panel{background-color:#369763}[data-filepond-item-state*=invalid] .filepond--item-panel,[data-filepond-item-state*=error] .filepond--item-panel{background-color:#c44e47}.filepond--item-panel{border-radius:.5em;transition:background-color .25s}.filepond--list-scroller{position:absolute;top:0;left:0;right:0;margin:0;will-change:transform}.filepond--list-scroller[data-state=overflow] .filepond--list{bottom:0;right:0}.filepond--list-scroller[data-state=overflow]{overflow-y:scroll;overflow-x:hidden;-webkit-overflow-scrolling:touch;-webkit-mask:linear-gradient(to bottom,#000 calc(100% - .5em),transparent 100%);mask:linear-gradient(to bottom,#000 calc(100% - .5em),transparent 100%)}.filepond--list-scroller::-webkit-scrollbar{background:transparent}.filepond--list-scroller::-webkit-scrollbar:vertical{width:1em}.filepond--list-scroller::-webkit-scrollbar:horizontal{height:0}.filepond--list-scroller::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:99999px;border:.3125em solid transparent;background-clip:content-box}.filepond--list.filepond--list{position:absolute;top:0;margin:0;padding:0;list-style-type:none;will-change:transform}.filepond--list{left:.75em;right:.75em}.filepond--root[data-style-panel-layout~=integrated]{width:100%;height:100%;max-width:none;margin:0}.filepond--root[data-style-panel-layout~=circle] .filepond--panel-root,.filepond--root[data-style-panel-layout~=integrated] .filepond--panel-root{border-radius:0}.filepond--root[data-style-panel-layout~=circle] .filepond--panel-root>*,.filepond--root[data-style-panel-layout~=integrated] .filepond--panel-root>*{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--drop-label,.filepond--root[data-style-panel-layout~=integrated] .filepond--drop-label{bottom:0;height:auto;display:flex;justify-content:center;align-items:center;z-index:7}.filepond--root[data-style-panel-layout~=circle] .filepond--item-panel,.filepond--root[data-style-panel-layout~=integrated] .filepond--item-panel{display:none}.filepond--root[data-style-panel-layout~=compact] .filepond--list-scroller,.filepond--root[data-style-panel-layout~=integrated] .filepond--list-scroller{overflow:hidden;height:100%;margin-top:0;margin-bottom:0}.filepond--root[data-style-panel-layout~=compact] .filepond--list,.filepond--root[data-style-panel-layout~=integrated] .filepond--list{left:0;right:0;height:100%}.filepond--root[data-style-panel-layout~=compact] .filepond--item,.filepond--root[data-style-panel-layout~=integrated] .filepond--item{margin:0}.filepond--root[data-style-panel-layout~=compact] .filepond--file-wrapper,.filepond--root[data-style-panel-layout~=integrated] .filepond--file-wrapper{height:100%}.filepond--root[data-style-panel-layout~=compact] .filepond--drop-label,.filepond--root[data-style-panel-layout~=integrated] .filepond--drop-label{z-index:7}.filepond--root[data-style-panel-layout~=circle]{border-radius:99999rem;overflow:hidden}.filepond--root[data-style-panel-layout~=circle]>.filepond--panel{border-radius:inherit}.filepond--root[data-style-panel-layout~=circle]>.filepond--panel>*{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--file-info,.filepond--root[data-style-panel-layout~=circle] .filepond--file-status{display:none}.filepond--root[data-style-panel-layout~=circle] .filepond--action-edit-item{opacity:1!important;visibility:visible!important}@media not all and (min-resolution: .001dpcm){@supports (-webkit-appearance: none) and (stroke-color: transparent){.filepond--root[data-style-panel-layout~=circle]{will-change:transform}}}.filepond--panel-root{border-radius:.5em;background-color:#f1f0ef}.filepond--panel{position:absolute;left:0;top:0;right:0;margin:0;height:100%!important;pointer-events:none}.filepond-panel:not([data-scalable=false]){height:auto!important}.filepond--panel[data-scalable=false]>div{display:none}.filepond--panel[data-scalable=true]{-webkit-transform-style:preserve-3d;transform-style:preserve-3d;background-color:transparent!important;border:none!important}.filepond--panel-top,.filepond--panel-bottom,.filepond--panel-center{position:absolute;left:0;top:0;right:0;margin:0;padding:0}.filepond--panel-top,.filepond--panel-bottom{height:.5em}.filepond--panel-top{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;border-bottom:none!important}.filepond--panel-top:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-1px;background-color:inherit}.filepond--panel-center,.filepond--panel-bottom{will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:translate3d(0,.5em,0);transform:translate3d(0,.5em,0)}.filepond--panel-bottom{border-top-left-radius:0!important;border-top-right-radius:0!important;border-top:none!important}.filepond--panel-bottom:before{content:"";position:absolute;height:2px;left:0;right:0;top:-1px;background-color:inherit}.filepond--panel-center{height:100px!important;border-top:none!important;border-bottom:none!important;border-radius:0!important}.filepond--panel-center:not([style]){visibility:hidden}.filepond--progress-indicator{position:static;width:1.25em;height:1.25em;color:#fff;margin:0;pointer-events:none;will-change:transform,opacity}.filepond--progress-indicator svg{width:100%;height:100%;vertical-align:top;transform-box:fill-box}.filepond--progress-indicator path{fill:none;stroke:currentColor}.filepond--list-scroller{z-index:6}.filepond--drop-label{z-index:5}.filepond--drip{z-index:3}.filepond--root>.filepond--panel{z-index:2}.filepond--browser{z-index:1}.filepond--root{box-sizing:border-box;position:relative;margin-bottom:1em;font-size:1rem;line-height:normal;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-weight:450;text-align:left;text-rendering:optimizeLegibility;direction:ltr;contain:layout style size}.filepond--root *{box-sizing:inherit;line-height:inherit}.filepond--root *:not(text){font-size:inherit}.filepond--root[data-disabled]{pointer-events:none}.filepond--root[data-disabled] .filepond--list-scroller{pointer-events:all}.filepond--root[data-disabled] .filepond--list{pointer-events:none}.filepond--root .filepond--drop-label{min-height:4.75em}.filepond--root .filepond--list-scroller{margin-top:1em;margin-bottom:1em}.filepond--root .filepond--credits{position:absolute;right:0;opacity:.175;line-height:.85;font-size:11px;color:inherit;text-decoration:none;z-index:3;bottom:-14px}.filepond--root .filepond--credits[style]{top:0;bottom:auto;margin-top:14px}/*! + * FilePondPluginImagePreview 4.6.12 * Licensed under MIT, https://opensource.org/licenses/MIT/ * Please visit https://pqina.nl/filepond/ for details. - */.filepond--image-preview-markup{position:absolute;left:0;top:0}.filepond--image-preview-wrapper{z-index:2}.filepond--image-preview-overlay{display:block;position:absolute;left:0;top:0;width:100%;min-height:5rem;max-height:7rem;margin:0;opacity:0;z-index:2;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--image-preview-overlay svg{width:100%;height:auto;color:inherit;max-height:inherit}.filepond--image-preview-overlay-idle{mix-blend-mode:multiply;color:#282828d9}.filepond--image-preview-overlay-success{mix-blend-mode:normal;color:#369763}.filepond--image-preview-overlay-failure{mix-blend-mode:normal;color:#c44e47}@supports (-webkit-marquee-repetition: infinite) and ((-o-object-fit: fill) or (object-fit: fill)){.filepond--image-preview-overlay-idle{mix-blend-mode:normal}}.filepond--image-preview-wrapper{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;left:0;top:0;right:0;height:100%;margin:0;border-radius:.45em;overflow:hidden;background:rgba(0,0,0,.01)}.filepond--image-preview{position:absolute;left:0;top:0;z-index:1;display:flex;align-items:center;height:100%;width:100%;pointer-events:none;background:#222;will-change:transform,opacity}.filepond--image-clip{position:relative;overflow:hidden;margin:0 auto}.filepond--image-clip[data-transparency-indicator=grid] img,.filepond--image-clip[data-transparency-indicator=grid] canvas{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' fill='%23eee'%3E%3Cpath d='M0 0 H50 V50 H0'/%3E%3Cpath d='M50 50 H100 V100 H50'/%3E%3C/svg%3E");background-size:1.25em 1.25em}.filepond--image-bitmap,.filepond--image-vector{position:absolute;left:0;top:0;will-change:transform}.filepond--root[data-style-panel-layout~=integrated] .filepond--image-preview-wrapper{border-radius:0}.filepond--root[data-style-panel-layout~=integrated] .filepond--image-preview{height:100%;display:flex;justify-content:center;align-items:center}.filepond--root[data-style-panel-layout~=circle] .filepond--image-preview-wrapper{border-radius:99999rem}.filepond--root[data-style-panel-layout~=circle] .filepond--image-preview-overlay{top:auto;bottom:0;-webkit-transform:scaleY(-1);transform:scaleY(-1)}.filepond--root[data-style-panel-layout~=circle] .filepond--file .filepond--file-action-button[data-align*=bottom]:not([data-align*="center"]){margin-bottom:.325em}.filepond--root[data-style-panel-layout~=circle] .filepond--file [data-align*=left]{left:calc(50% - 3em)}.filepond--root[data-style-panel-layout~=circle] .filepond--file [data-align*=right]{right:calc(50% - 3em)}.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=left],.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=right]{margin-bottom:.5125em}.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=center]{margin-top:0;margin-bottom:.1875em;margin-left:.1875em}.filepond--root{@apply mb-0;}.filepond--root .filepond--drop-label{@apply min-h-[2.625rem];}.filepond--panel-root{@apply bg-white rounded-md border border-gray-300 shadow-sm;}.filepond--drop-label{@apply text-black justify-start text-gray-500 px-2;}.filepond--item-panel{@apply bg-indigo-500;}.filepond--file-action-button{@apply bg-indigo-700;}.filepond--file,.filepond--item-panel,.filepond--image-preview-wrapper{@apply rounded-md;}.filepond--image-preview-overlay-success{@apply text-gray-900;}.filepond--file-info .filepond--file-info-sub{@apply opacity-75;}[data-filepond-item-state*=invalid] .filepond--item-panel,[data-filepond-item-state*=error] .filepond--item-panel{@apply bg-red-500;}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;box-sizing:border-box;touch-action:manipulation;background:#fff;box-shadow:1px 0 #d1d5db,-1px 0 #d1d5db,0 1px #d1d5db,0 -1px #d1d5db,0 3px 13px #00000014}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){box-shadow:-2px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #d1d5db}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:"";height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#d1d5db}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#d1d5db}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:flex}.flatpickr-months .flatpickr-month{background:transparent;color:#111827;fill:#111827;height:34px;line-height:1;text-align:center;position:relative;user-select:none;overflow:hidden;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#111827;fill:#111827}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#6366f1}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(55,65,81,.15);box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,.1)}.numInputWrapper span:active{background:rgba(0,0,0,.2)}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(55,65,81,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(55,65,81,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:#11182780}.numInputWrapper:hover{background:rgba(0,0,0,.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0;line-height:1;height:34px;display:inline-block;text-align:center;transform:translateZ(0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch�;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#111827}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#111827}.flatpickr-current-month input.cur-year{background:transparent;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:#11182780;background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0;outline:none;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:flex;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:flex;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:#d1d5db;line-height:1;margin:0;text-align:center;display:block;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0}.flatpickr-days{position:relative;overflow:hidden;display:flex;align-items:flex-start;width:307.875px}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:flex;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-around;transform:translateZ(0);opacity:1}.dayContainer+.dayContainer{box-shadow:-1px 0 #d1d5db}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;box-sizing:border-box;color:#374151;cursor:pointer;font-weight:400;width:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#f3f4f6;border-color:#f3f4f6}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#6366f1;box-shadow:none;color:#fff;border-color:#6366f1}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){box-shadow:-10px 0 #6366f1}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;box-shadow:-5px 0 #f3f4f6,5px 0 #f3f4f6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#3741514d;background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#3741511a}.flatpickr-day.week.selected{border-radius:0;box-shadow:-5px 0 #6366f1,5px 0 #6366f1}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;box-shadow:1px 0 #d1d5db}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:#3741514d;background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:flex;box-sizing:border-box;overflow:hidden}.flatpickr-rContainer{display:inline-block;padding:0;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;box-sizing:border-box;overflow:hidden;display:flex}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#374151}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#374151}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#374151;font-size:14px;position:relative;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#374151;font-weight:700;width:2%;user-select:none;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#fcfcfd}.flatpickr-input[readonly]{cursor:pointer}@-moz-keyframes fpFadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@-webkit-keyframes fpFadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@-o-keyframes fpFadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes fpFadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}.flatpickr-calendar{border-radius:.375rem;margin-top:1px}.flatpickr-calendar:before,.flatpickr-calendar:after{display:none}.flatpickr-wrapper{width:100%}.flatpickr-current-month .flatpickr-monthDropdown-months,.flatpickr-current-month input.cur-year{font-size:1rem}.flatpickr-time input:focus{box-shadow:none} + */.filepond--image-preview-markup{position:absolute;left:0;top:0}.filepond--image-preview-wrapper{z-index:2}.filepond--image-preview-overlay{display:block;position:absolute;left:0;top:0;width:100%;min-height:5rem;max-height:7rem;margin:0;opacity:0;z-index:2;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.filepond--image-preview-overlay svg{width:100%;height:auto;color:inherit;max-height:inherit}.filepond--image-preview-overlay-idle{mix-blend-mode:multiply;color:#282828d9}.filepond--image-preview-overlay-success{mix-blend-mode:normal;color:#369763}.filepond--image-preview-overlay-failure{mix-blend-mode:normal;color:#c44e47}@supports (-webkit-marquee-repetition: infinite) and ((-o-object-fit: fill) or (object-fit: fill)){.filepond--image-preview-overlay-idle{mix-blend-mode:normal}}.filepond--image-preview-wrapper{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;left:0;top:0;right:0;height:100%;margin:0;border-radius:.45em;overflow:hidden;background:rgba(0,0,0,.01)}.filepond--image-preview{position:absolute;left:0;top:0;z-index:1;display:flex;align-items:center;height:100%;width:100%;pointer-events:none;background:#222;will-change:transform,opacity}.filepond--image-clip{position:relative;overflow:hidden;margin:0 auto}.filepond--image-clip[data-transparency-indicator=grid] img,.filepond--image-clip[data-transparency-indicator=grid] canvas{background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg' fill='%23eee'%3E%3Cpath d='M0 0 H50 V50 H0'/%3E%3Cpath d='M50 50 H100 V100 H50'/%3E%3C/svg%3E");background-size:1.25em 1.25em}.filepond--image-bitmap,.filepond--image-vector{position:absolute;left:0;top:0;will-change:transform}.filepond--root[data-style-panel-layout~=integrated] .filepond--image-preview-wrapper{border-radius:0}.filepond--root[data-style-panel-layout~=integrated] .filepond--image-preview{height:100%;display:flex;justify-content:center;align-items:center}.filepond--root[data-style-panel-layout~=circle] .filepond--image-preview-wrapper{border-radius:99999rem}.filepond--root[data-style-panel-layout~=circle] .filepond--image-preview-overlay{top:auto;bottom:0;-webkit-transform:scaleY(-1);transform:scaleY(-1)}.filepond--root[data-style-panel-layout~=circle] .filepond--file .filepond--file-action-button[data-align*=bottom]:not([data-align*=center]){margin-bottom:.325em}.filepond--root[data-style-panel-layout~=circle] .filepond--file [data-align*=left]{left:calc(50% - 3em)}.filepond--root[data-style-panel-layout~=circle] .filepond--file [data-align*=right]{right:calc(50% - 3em)}.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=left],.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=right]{margin-bottom:.5125em}.filepond--root[data-style-panel-layout~=circle] .filepond--progress-indicator[data-align*=bottom][data-align*=center]{margin-top:0;margin-bottom:.1875em;margin-left:.1875em}.filepond--root{@apply mb-0;}.filepond--root .filepond--drop-label{@apply min-h-[2.625rem];}.filepond--panel-root{@apply bg-white rounded-md border border-gray-300 shadow-sm;}.filepond--drop-label{@apply text-black justify-start text-gray-500 px-2;}.filepond--item-panel{@apply bg-indigo-500;}.filepond--file-action-button{@apply bg-indigo-700;}.filepond--file,.filepond--item-panel,.filepond--image-preview-wrapper{@apply rounded-md;}.filepond--image-preview-overlay-success{@apply text-gray-900;}.filepond--file-info .filepond--file-info-sub{@apply opacity-75;}[data-filepond-item-state*=invalid] .filepond--item-panel,[data-filepond-item-state*=error] .filepond--item-panel{@apply bg-red-500;}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;box-sizing:border-box;touch-action:manipulation;background:#fff;box-shadow:1px 0 #d1d5db,-1px 0 #d1d5db,0 1px #d1d5db,0 -1px #d1d5db,0 3px 13px #00000014}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){box-shadow:-2px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #d1d5db}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:"";height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#d1d5db}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#d1d5db}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:flex}.flatpickr-months .flatpickr-month{background:transparent;color:#111827;fill:#111827;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#111827;fill:#111827}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#6366f1}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(55,65,81,.15);box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,.1)}.numInputWrapper span:active{background:rgba(0,0,0,.2)}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(55,65,81,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(55,65,81,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:#11182780}.numInputWrapper:hover{background:rgba(0,0,0,.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0;line-height:1;height:34px;display:inline-block;text-align:center;transform:translateZ(0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch�;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#111827}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#111827}.flatpickr-current-month input.cur-year{background:transparent;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:#11182780;background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0;outline:none;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:flex;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:flex;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:#d1d5db;line-height:1;margin:0;text-align:center;display:block;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0}.flatpickr-days{position:relative;overflow:hidden;display:flex;align-items:flex-start;width:307.875px}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:flex;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-around;transform:translateZ(0);opacity:1}.dayContainer+.dayContainer{box-shadow:-1px 0 #d1d5db}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;box-sizing:border-box;color:#374151;cursor:pointer;font-weight:400;width:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#f3f4f6;border-color:#f3f4f6}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#6366f1;box-shadow:none;color:#fff;border-color:#6366f1}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){box-shadow:-10px 0 #6366f1}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;box-shadow:-5px 0 #f3f4f6,5px 0 #f3f4f6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#3741514d;background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#3741511a}.flatpickr-day.week.selected{border-radius:0;box-shadow:-5px 0 #6366f1,5px 0 #6366f1}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;box-shadow:1px 0 #d1d5db}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:#3741514d;background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:flex;box-sizing:border-box;overflow:hidden}.flatpickr-rContainer{display:inline-block;padding:0;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;box-sizing:border-box;overflow:hidden;display:flex}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#374151}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#374151}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#374151;font-size:14px;position:relative;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#374151;font-weight:700;width:2%;-webkit-user-select:none;user-select:none;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#fcfcfd}.flatpickr-input[readonly]{cursor:pointer}@-moz-keyframes fpFadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@-webkit-keyframes fpFadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@-o-keyframes fpFadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes fpFadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:translateZ(0)}}.flatpickr-calendar{border-radius:.375rem;margin-top:1px}.flatpickr-calendar:before,.flatpickr-calendar:after{display:none}.flatpickr-wrapper{width:100%}.flatpickr-current-month .flatpickr-monthDropdown-months,.flatpickr-current-month input.cur-year{font-size:1rem}.flatpickr-time input:focus{box-shadow:none} diff --git a/lib/Components/File.vue b/lib/Components/File.vue index 6db30ea8..d6d7f7e9 100644 --- a/lib/Components/File.vue +++ b/lib/Components/File.vue @@ -226,10 +226,6 @@ export default { return; } - if(!this.handlesExistingFiles) { - return; - } - if(!this.filepondInstance) { return; } diff --git a/lib/Components/Link.vue b/lib/Components/Link.vue index 76961d81..4ecc5eec 100644 --- a/lib/Components/Link.vue +++ b/lib/Components/Link.vue @@ -1,7 +1,7 @@ diff --git a/lib/Components/Table.vue b/lib/Components/Table.vue index 86552f36..75e26e1d 100644 --- a/lib/Components/Table.vue +++ b/lib/Components/Table.vue @@ -16,6 +16,11 @@ export default { inject: ["stack"], props: { + spladeId: { + type: String, + required: true, + }, + baseUrl: { type: String, required: false, @@ -56,6 +61,12 @@ export default { type: Number, required: false, default: 0 + }, + + paginationScroll: { + type: String, + required: false, + default: "top" } }, @@ -117,7 +128,11 @@ export default { } return selectedItemsCount; - } + }, + + scrollToHeadRememberKey() { + return `spladeTableScrollToHead-${this.spladeId}`; + }, }, created() { @@ -151,9 +166,41 @@ export default { } else { this.visibleColumns = columns; } + + if(Splade.restore(this.scrollToHeadRememberKey)) { + this.$nextTick(() => { + const tableElement = document.querySelector(`div[data-splade-id="${this.spladeId}"]`); + + tableElement.scrollIntoView({ + behavior: "smooth", + block: "start", + inline: "nearest" + }); + }); + } + + Splade.forget(this.scrollToHeadRememberKey); }, methods: { + navigate(url, isPagination) { + const headers = { + "X-Splade-Modal": Splade.stackType(this.stack), + "X-Splade-Modal-Target": this.stack, + "X-Splade-Prevent-View-Transition": true + }; + + if(this.paginationScroll !== "top" || !isPagination) { + headers["X-Splade-Preserve-Scroll"] = true; + } + + Splade.request(url, "GET", {}, headers, false).then(() => { + if(!Splade.isSsr && this.paginationScroll === "head" && isPagination) { + Splade.remember(this.scrollToHeadRememberKey, true); + } + }); + }, + visitLink(url, type, $event) { if($event?.target?.tagName === "A" || $event?.target?.tagName === "BUTTON") { return; @@ -486,6 +533,7 @@ export default { striped: this.striped, toggleColumn: this.toggleColumn, updateQuery: this.updateQuery, + navigate: this.navigate, visit: this.visitLink, totalSelectedItems: this.totalSelectedItems, allItemsFromAllPagesAreSelected: this.allItemsFromAllPagesAreSelected, diff --git a/lib/Splade.js b/lib/Splade.js index fb2a3221..ea05b1ad 100644 --- a/lib/Splade.js +++ b/lib/Splade.js @@ -268,14 +268,15 @@ function newPageFromResponse(response, replace, hash) { let scrollY = 0; - if (!isSsr && replace && response.data.splade.preserveScroll) { + if (!isSsr && response.data.splade.preserveScroll) { scrollY = window.scrollY; } // Bring the HTML to the Vue app. onHtml( preventHtmlRefresh ? currentPage.value.html : html, - scrollY + scrollY, + !replace && !response.data.splade.preventViewTransition ); // Initialize a new page object. @@ -453,8 +454,8 @@ function onHead(head) { /** * Passes the given HTML and scroll position to the configurable 'onHtml' function. */ -function onHtml(html, scrollY) { - onHtmlFunction.value(html, scrollY); +function onHtml(html, scrollY, animate) { + onHtmlFunction.value(html, scrollY, animate === true); } /** @@ -490,11 +491,18 @@ function remember(key, data, useLocalStorage) { } } +/** + * Helper method to retrieve the remembered data from the browser's local storage. + */ +function getSpladeDataFromLocalStorage() { + return JSON.parse(localStorage.getItem("splade") || "{}") || {}; +} + /** * Stores the given data in the browser's local storage. */ function storeInLocalStorage(key, data) { - let allData = JSON.parse(localStorage.getItem("splade") || "{}") || {}; + let allData = getSpladeDataFromLocalStorage(); allData[key] = data; @@ -506,7 +514,7 @@ function storeInLocalStorage(key, data) { */ function restore(key, useLocalStorage) { if (useLocalStorage) { - const spladeData = JSON.parse(localStorage.getItem("splade") || "{}") || {}; + const spladeData = getSpladeDataFromLocalStorage(); return spladeData[key]; } @@ -514,6 +522,20 @@ function restore(key, useLocalStorage) { return rememberedData.value[key]; } +/** + * Removes an item from the remember-object or from the browser's local storage. + */ +function forget(key, useLocalStorage) { + if (useLocalStorage) { + let allData = getSpladeDataFromLocalStorage(); + + delete allData[key]; + + localStorage.setItem("splade", JSON.stringify(allData)); + } + + delete rememberedData.value[key]; +} /** * Performes an ajax request and returns the promise. */ @@ -775,6 +797,7 @@ const Splade = { dismissToast, restore, remember, + forget, popStack, currentStack: stack, // ref stackType: stackType, diff --git a/lib/SpladeApp.vue b/lib/SpladeApp.vue index dd9ce66c..41aeec35 100644 --- a/lib/SpladeApp.vue +++ b/lib/SpladeApp.vue @@ -275,15 +275,14 @@ const onHtml = (newHtml, scrollY) => { }); }; -Splade.setOnHtml((newHtml, scrollY) => { - // Fallback for browsers that don't support this API: - if (Splade.isSsr || !document.startViewTransition || !$spladeOptions.view_transitions) { - onHtml(newHtml, scrollY); - return; +Splade.setOnHtml((newHtml, scrollY, animate) => { + if (!Splade.isSsr && document.startViewTransition && $spladeOptions.view_transitions && animate) { + // With a transition: + return document.startViewTransition(() => onHtml(newHtml, scrollY)); } - // With a transition: - document.startViewTransition(() => onHtml(newHtml, scrollY)); + // SSR, no animation configruation, and fallback for unsupported browsers: + onHtml(newHtml, scrollY, false); }); /** diff --git a/package-lock.json b/package-lock.json index 871e3cb7..0aa5b09d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@protonemedia/laravel-splade", - "version": "1.4.14", + "version": "1.4.19", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@protonemedia/laravel-splade", - "version": "1.4.14", + "version": "1.4.19", "license": "MIT", "dependencies": { "autosize": "^5.0.1", @@ -37,16 +37,25 @@ "vue": "^3.2.47" } }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@adobe/css-tools": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", - "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.3.tgz", + "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==", "dev": true }, "node_modules/@babel/parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.5.tgz", - "integrity": "sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.1.tgz", + "integrity": "sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==", "peer": true, "bin": { "parser": "bin/babel-parser.js" @@ -56,20 +65,20 @@ } }, "node_modules/@babel/runtime": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.5.tgz", - "integrity": "sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.1.tgz", + "integrity": "sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ==", "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@esbuild/android-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", - "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], @@ -83,9 +92,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", - "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], @@ -99,9 +108,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", - "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], @@ -115,9 +124,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", - "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], @@ -131,9 +140,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", - "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], @@ -147,9 +156,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", - "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], @@ -163,9 +172,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", - "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], @@ -179,9 +188,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", - "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], @@ -195,9 +204,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", - "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], @@ -211,9 +220,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", - "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], @@ -227,9 +236,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", - "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], @@ -243,9 +252,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", - "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], @@ -259,9 +268,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", - "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], @@ -275,9 +284,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", - "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], @@ -291,9 +300,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", - "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], @@ -307,9 +316,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", - "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], @@ -323,9 +332,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", - "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], @@ -339,9 +348,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", - "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], @@ -355,9 +364,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", - "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], @@ -371,9 +380,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", - "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], @@ -387,9 +396,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", - "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], @@ -403,9 +412,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", - "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], @@ -434,23 +443,23 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.5.1.tgz", - "integrity": "sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", "dev": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz", - "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.5.2", + "espree": "^9.6.0", "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", @@ -466,9 +475,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.42.0.tgz", - "integrity": "sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", + "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -487,13 +496,13 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", - "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" }, "engines": { @@ -514,9 +523,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "node_modules/@jridgewell/sourcemap-codec": { @@ -570,135 +579,128 @@ "url": "https://opencollective.com/popperjs" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "node_modules/@vitejs/plugin-vue": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.2.3.tgz", - "integrity": "sha512-R6JDUfiZbJA9cMiguQ7jxALsgiprjBeHL5ikpXfJCH62pPHtI+JdJ5xWj6Ev73yXSlYl86+blXn1kZHQ7uElxw==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.6.2.tgz", + "integrity": "sha512-kqf7SGFoG+80aZG6Pf+gsZIVvGSCKE98JbiWqcCV9cThtg91Jav0yvYFC9Zb+jKetNGF6ZKeoaxgZfND21fWKw==", "dev": true, "engines": { "node": "^14.18.0 || >=16.0.0" }, "peerDependencies": { - "vite": "^4.0.0", + "vite": "^4.0.0 || ^5.0.0", "vue": "^3.2.25" } }, "node_modules/@vue/compiler-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz", - "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.21.tgz", + "integrity": "sha512-MjXawxZf2SbZszLPYxaFCjxfibYrzr3eYbKxwpLR9EQN+oaziSu3qKVbwBERj1IFIB8OLUewxB5m/BFzi613og==", "peer": true, "dependencies": { - "@babel/parser": "^7.21.3", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.9", + "@vue/shared": "3.4.21", + "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz", - "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.21.tgz", + "integrity": "sha512-IZC6FKowtT1sl0CR5DpXSiEB5ayw75oT2bma1BEhV7RRR1+cfwLrxc2Z8Zq/RGFzJ8w5r9QtCOvTjQgdn0IKmA==", "peer": true, "dependencies": { - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-core": "3.4.21", + "@vue/shared": "3.4.21" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz", - "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.21.tgz", + "integrity": "sha512-me7epoTxYlY+2CUM7hy9PCDdpMPfIwrOvAXud2Upk10g4YLv9UBW7kL798TvMeDhPthkZ0CONNrK2GoeI1ODiQ==", "peer": true, "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-ssr": "3.3.4", - "@vue/reactivity-transform": "3.3.4", - "@vue/shared": "3.3.4", + "@babel/parser": "^7.23.9", + "@vue/compiler-core": "3.4.21", + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21", "estree-walker": "^2.0.2", - "magic-string": "^0.30.0", - "postcss": "^8.1.10", + "magic-string": "^0.30.7", + "postcss": "^8.4.35", "source-map-js": "^1.0.2" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz", - "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.21.tgz", + "integrity": "sha512-M5+9nI2lPpAsgXOGQobnIueVqc9sisBFexh5yMIMRAPYLa7+5wEJs8iqOZc1WAa9WQbx9GR2twgznU8LTIiZ4Q==", "peer": true, "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-dom": "3.4.21", + "@vue/shared": "3.4.21" } }, "node_modules/@vue/reactivity": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz", - "integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.21.tgz", + "integrity": "sha512-UhenImdc0L0/4ahGCyEzc/pZNwVgcglGy9HVzJ1Bq2Mm9qXOpP8RyNTjookw/gOCUlXSEtuZ2fUg5nrHcoqJcw==", "peer": true, "dependencies": { - "@vue/shared": "3.3.4" - } - }, - "node_modules/@vue/reactivity-transform": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz", - "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==", - "peer": true, - "dependencies": { - "@babel/parser": "^7.20.15", - "@vue/compiler-core": "3.3.4", - "@vue/shared": "3.3.4", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.0" + "@vue/shared": "3.4.21" } }, "node_modules/@vue/runtime-core": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz", - "integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.21.tgz", + "integrity": "sha512-pQthsuYzE1XcGZznTKn73G0s14eCJcjaLvp3/DKeYWoFacD9glJoqlNBxt3W2c5S40t6CCcpPf+jG01N3ULyrA==", "peer": true, "dependencies": { - "@vue/reactivity": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/reactivity": "3.4.21", + "@vue/shared": "3.4.21" } }, "node_modules/@vue/runtime-dom": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz", - "integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.21.tgz", + "integrity": "sha512-gvf+C9cFpevsQxbkRBS1NpU8CqxKw0ebqMvLwcGQrNpx6gqRDodqKqA+A2VZZpQ9RpK2f9yfg8VbW/EpdFUOJw==", "peer": true, "dependencies": { - "@vue/runtime-core": "3.3.4", - "@vue/shared": "3.3.4", - "csstype": "^3.1.1" + "@vue/runtime-core": "3.4.21", + "@vue/shared": "3.4.21", + "csstype": "^3.1.3" } }, "node_modules/@vue/server-renderer": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz", - "integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.21.tgz", + "integrity": "sha512-aV1gXyKSN6Rz+6kZ6kr5+Ll14YzmIbeuWe7ryJl5muJ4uwSwY/aStXTixx76TwkZFJLm1aAlA/HSWEJ4EyiMkg==", "peer": true, "dependencies": { - "@vue/compiler-ssr": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-ssr": "3.4.21", + "@vue/shared": "3.4.21" }, "peerDependencies": { - "vue": "3.3.4" + "vue": "3.4.21" } }, "node_modules/@vue/shared": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz", - "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.21.tgz", + "integrity": "sha512-PuJe7vDIi6VYSinuEbUIQgMIRZGgM8e4R+G+/dQTk0X1NEdvgvvgv7m+rfmDH1gZzyA1OjjoWskvHlfRNfQf3g==", "peer": true }, "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -796,12 +798,12 @@ "integrity": "sha512-FPVt5ynkqUAA9gcMZnJHka1XfQgr1WNd/yRfIjmj5WGmjua+u5Hl9hn8M2nU5CNy2bEIcj1ZUwXq7IOHsfZG9w==" }, "node_modules/axios": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz", - "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==", + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", + "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", "peer": true, "dependencies": { - "follow-redirects": "^1.15.0", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } @@ -813,12 +815,15 @@ "dev": true }, "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/boolbase": { @@ -885,16 +890,10 @@ } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -907,6 +906,9 @@ "engines": { "node": ">= 8.10.0" }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, "optionalDependencies": { "fsevents": "~2.3.2" } @@ -960,9 +962,9 @@ "dev": true }, "node_modules/core-js": { - "version": "3.31.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.31.0.tgz", - "integrity": "sha512-NIp2TQSGfR6ba5aalZD+ZQ1fSxGhDo/s1w0nx3RYzf2pnJxt7YynxFlFScP6eV7+GZsKO95NSjGxyJsU3DZgeQ==", + "version": "3.36.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.36.1.tgz", + "integrity": "sha512-BTvUrwxVBezj5SZ3f10ImnX2oRByMxql3EimVqMysepbC9EeMUOpLwdy6Eoili2x6E4kf+ZUB5k/+Jv55alPfA==", "hasInstallScript": true, "funding": { "type": "opencollective", @@ -996,9 +998,9 @@ } }, "node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", "peer": true }, "node_modules/debug": { @@ -1053,10 +1055,22 @@ "node": ">=6.0.0" } }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "peer": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/esbuild": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", - "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, "bin": { @@ -1066,28 +1080,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.17.19", - "@esbuild/android-arm64": "0.17.19", - "@esbuild/android-x64": "0.17.19", - "@esbuild/darwin-arm64": "0.17.19", - "@esbuild/darwin-x64": "0.17.19", - "@esbuild/freebsd-arm64": "0.17.19", - "@esbuild/freebsd-x64": "0.17.19", - "@esbuild/linux-arm": "0.17.19", - "@esbuild/linux-arm64": "0.17.19", - "@esbuild/linux-ia32": "0.17.19", - "@esbuild/linux-loong64": "0.17.19", - "@esbuild/linux-mips64el": "0.17.19", - "@esbuild/linux-ppc64": "0.17.19", - "@esbuild/linux-riscv64": "0.17.19", - "@esbuild/linux-s390x": "0.17.19", - "@esbuild/linux-x64": "0.17.19", - "@esbuild/netbsd-x64": "0.17.19", - "@esbuild/openbsd-x64": "0.17.19", - "@esbuild/sunos-x64": "0.17.19", - "@esbuild/win32-arm64": "0.17.19", - "@esbuild/win32-ia32": "0.17.19", - "@esbuild/win32-x64": "0.17.19" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/escape-string-regexp": { @@ -1103,27 +1117,28 @@ } }, "node_modules/eslint": { - "version": "8.42.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.42.0.tgz", - "integrity": "sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.0.3", - "@eslint/js": "8.42.0", - "@humanwhocodes/config-array": "^0.11.10", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.0", + "@humanwhocodes/config-array": "^0.11.14", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.5.2", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -1133,7 +1148,6 @@ "globals": "^13.19.0", "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", @@ -1143,9 +1157,8 @@ "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "bin": { @@ -1159,17 +1172,17 @@ } }, "node_modules/eslint-plugin-vue": { - "version": "9.14.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.14.1.tgz", - "integrity": "sha512-LQazDB1qkNEKejLe/b5a9VfEbtbczcOaui5lQ4Qw0tbRBbQYREyxxOV5BQgNDTqGPs9pxqiEpbMi9ywuIaF7vw==", + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.23.0.tgz", + "integrity": "sha512-Bqd/b7hGYGrlV+wP/g77tjyFmp81lh5TMw0be9093X02SyelxRRfCI6/IsGq/J7Um0YwB9s0Ry0wlFyjPdmtUw==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.3.0", + "@eslint-community/eslint-utils": "^4.4.0", "natural-compare": "^1.4.0", - "nth-check": "^2.0.1", - "postcss-selector-parser": "^6.0.9", - "semver": "^7.3.5", - "vue-eslint-parser": "^9.3.0", + "nth-check": "^2.1.1", + "postcss-selector-parser": "^6.0.15", + "semver": "^7.6.0", + "vue-eslint-parser": "^9.4.2", "xml-name-validator": "^4.0.0" }, "engines": { @@ -1180,9 +1193,9 @@ } }, "node_modules/eslint-scope": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz", - "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { "esrecurse": "^4.3.0", @@ -1196,9 +1209,9 @@ } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -1208,12 +1221,12 @@ } }, "node_modules/espree": { - "version": "9.5.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", - "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "dependencies": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.4.1" }, @@ -1291,9 +1304,9 @@ "dev": true }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, "dependencies": { "reusify": "^1.0.4" @@ -1312,9 +1325,9 @@ } }, "node_modules/filepond": { - "version": "4.30.4", - "resolved": "https://registry.npmjs.org/filepond/-/filepond-4.30.4.tgz", - "integrity": "sha512-FCwsMvG9iiEs6uobdDrTaKsCgsqys0NuLgPPD8n37AYVYBiiDkrPkk9MSIU5rT2FahYcL1bScYI9huIPtlzqyA==" + "version": "4.30.6", + "resolved": "https://registry.npmjs.org/filepond/-/filepond-4.30.6.tgz", + "integrity": "sha512-gBsVKJgr5HFTkQSA/3R6utne4Qt6Pue0O3+k3IjjVBbaQxMgGMI0fXwoob9SdRRoULCs8BAhWjttM28hOAi/0w==" }, "node_modules/filepond-plugin-file-validate-size": { "version": "2.2.8", @@ -1325,9 +1338,9 @@ } }, "node_modules/filepond-plugin-file-validate-type": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/filepond-plugin-file-validate-type/-/filepond-plugin-file-validate-type-1.2.8.tgz", - "integrity": "sha512-UBTqIWbk5+5R0GBELI8svu01MHWjFSLfc9DfCMvFtHKXLdJMxY1p37ChC4YKQjhfODaTuvLnNVRsukMGMFZBBg==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/filepond-plugin-file-validate-type/-/filepond-plugin-file-validate-type-1.2.9.tgz", + "integrity": "sha512-Tzv07aNdZvjUXDRA3XL16QMEvh6llDrXlcZ6W0eTHQ+taHaVg/JKJTFs/AViO+6ZcpPCcQStbhYEL2HoS+vldw==", "peerDependencies": { "filepond": ">=1.x <5.x" } @@ -1341,9 +1354,9 @@ } }, "node_modules/filepond-plugin-image-preview": { - "version": "4.6.11", - "resolved": "https://registry.npmjs.org/filepond-plugin-image-preview/-/filepond-plugin-image-preview-4.6.11.tgz", - "integrity": "sha512-0EmQ9HnOb/X0xc5rLcNRhhmdUbp7oiicRwQrcr90ZfVmPJOOZoX3ZGUEsEPj7luMI55huguhcVozdESxtqnuRw==", + "version": "4.6.12", + "resolved": "https://registry.npmjs.org/filepond-plugin-image-preview/-/filepond-plugin-image-preview-4.6.12.tgz", + "integrity": "sha512-Y8ETX5QVV0mbPB0586UH8AUmG9tZg8PuN5bdEAIlZVJFTct5ebViJ7+Am94/VhTPjLqZjBf1zmDq5JU6XRsZKw==", "peerDependencies": { "filepond": ">=4.x <5.x" } @@ -1385,12 +1398,13 @@ } }, "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "dependencies": { - "flatted": "^3.1.0", + "flatted": "^3.2.9", + "keyv": "^4.5.3", "rimraf": "^3.0.2" }, "engines": { @@ -1403,15 +1417,15 @@ "integrity": "sha512-97PMG/aywoYpB4IvbvUJi0RQi8vearvU0oov1WW3k0WZPBMrTQVqekSX5CjSG/M4Q3i6A/0FKXC7RyAoAUUSPw==" }, "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "funding": [ { "type": "individual", @@ -1449,9 +1463,9 @@ "dev": true }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "optional": true, @@ -1503,9 +1517,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -1533,18 +1547,18 @@ } }, "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "engines": { "node": ">= 4" } }, "node_modules/immutable": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", - "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", "dev": true }, "node_modules/import-fresh": { @@ -1666,6 +1680,12 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -1678,6 +1698,15 @@ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -1737,12 +1766,12 @@ } }, "node_modules/magic-string": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.0.tgz", - "integrity": "sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==", + "version": "0.30.8", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.8.tgz", + "integrity": "sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==", "peer": true, "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.13" + "@jridgewell/sourcemap-codec": "^1.4.15" }, "engines": { "node": ">=12" @@ -1788,9 +1817,9 @@ "dev": true }, "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "funding": [ { "type": "github", @@ -1846,17 +1875,17 @@ } }, "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" }, "engines": { "node": ">= 0.8.0" @@ -1949,9 +1978,9 @@ } }, "node_modules/postcss": { - "version": "8.4.24", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.24.tgz", - "integrity": "sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==", + "version": "8.4.37", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.37.tgz", + "integrity": "sha512-7iB/v/r7Woof0glKLH8b1SPHrsX7uhdO+Geb41QpF/+mWZHU3uxxSlN+UXGVit1PawOYDToO+AbZzhBzWRDwbQ==", "funding": [ { "type": "opencollective", @@ -1967,18 +1996,18 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "source-map-js": "^1.2.0" }, "engines": { "node": "^10 || ^12 || >=14" } }, "node_modules/postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, "dependencies": { "cssesc": "^3.0.0", @@ -2004,9 +2033,9 @@ "peer": true }, "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "engines": { "node": ">=6" @@ -2053,9 +2082,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" }, "node_modules/resolve-from": { "version": "4.0.0", @@ -2092,9 +2121,9 @@ } }, "node_modules/rollup": { - "version": "3.25.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.25.1.tgz", - "integrity": "sha512-tywOR+rwIt5m2ZAWSe5AIJcTat8vGlnPFAv15ycCrw33t6iFsXZ6mzHVFh2psSjxQPmI+xgzMZZizUAukBI4aQ==", + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -2131,9 +2160,9 @@ } }, "node_modules/sass": { - "version": "1.63.4", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.63.4.tgz", - "integrity": "sha512-Sx/+weUmK+oiIlI+9sdD0wZHsqpbgQg8wSwSnGBjwb5GwqFhYNwwnI+UWZtLjKvKyFlKkatRK235qQ3mokyPoQ==", + "version": "1.72.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.72.0.tgz", + "integrity": "sha512-Gpczt3WA56Ly0Mn8Sl21Vj94s1axi9hDIzDFn9Ph9x3C3p4nNyvsqJoQyVXKou6cBlfFWEgRW4rT8Tb4i3XnVA==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -2154,9 +2183,9 @@ "dev": true }, "node_modules/semver": { - "version": "7.5.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", - "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -2199,9 +2228,9 @@ } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", + "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "engines": { "node": ">=0.10.0" } @@ -2322,14 +2351,14 @@ "dev": true }, "node_modules/vite": { - "version": "4.3.9", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.3.9.tgz", - "integrity": "sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.2.tgz", + "integrity": "sha512-tBCZBNSBbHQkaGyhGCDUGqeo2ph8Fstyp6FMSvTtsXeZSPpSMGlviAOav2hxVTqFcx8Hj/twtWKsMJXNY0xI8w==", "dev": true, "dependencies": { - "esbuild": "^0.17.5", - "postcss": "^8.4.23", - "rollup": "^3.21.0" + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" }, "bin": { "vite": "bin/vite.js" @@ -2337,12 +2366,16 @@ "engines": { "node": "^14.18.0 || >=16.0.0" }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, "optionalDependencies": { "fsevents": "~2.3.2" }, "peerDependencies": { "@types/node": ">= 14", "less": "*", + "lightningcss": "^1.21.0", "sass": "*", "stylus": "*", "sugarss": "*", @@ -2355,6 +2388,9 @@ "less": { "optional": true }, + "lightningcss": { + "optional": true + }, "sass": { "optional": true }, @@ -2370,22 +2406,30 @@ } }, "node_modules/vue": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz", - "integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==", + "version": "3.4.21", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.21.tgz", + "integrity": "sha512-5hjyV/jLEIKD/jYl4cavMcnzKwjMKohureP8ejn3hhEjwhWIhWeuzL2kJAjzl/WyVsgPY56Sy4Z40C3lVshxXA==", "peer": true, "dependencies": { - "@vue/compiler-dom": "3.3.4", - "@vue/compiler-sfc": "3.3.4", - "@vue/runtime-dom": "3.3.4", - "@vue/server-renderer": "3.3.4", - "@vue/shared": "3.3.4" + "@vue/compiler-dom": "3.4.21", + "@vue/compiler-sfc": "3.4.21", + "@vue/runtime-dom": "3.4.21", + "@vue/server-renderer": "3.4.21", + "@vue/shared": "3.4.21" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "node_modules/vue-eslint-parser": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.3.1.tgz", - "integrity": "sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g==", + "version": "9.4.2", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.4.2.tgz", + "integrity": "sha512-Ry9oiGmCAK91HrKMtCrKFWmSFWvYkpGglCeFAIqDdr9zdXmMMpJOmUJS7WWsW7fX81h6mwHmUZCQQ1E0PkSwYQ==", "dev": true, "dependencies": { "debug": "^4.3.4", @@ -2421,15 +2465,6 @@ "node": ">= 8" } }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", diff --git a/package.json b/package.json index 37de42d9..654e1b87 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@protonemedia/laravel-splade", - "version": "1.4.14", + "version": "1.4.19", "description": "Laravel Splade: the magic of Inertia.js with the simplicity of Blade.", "private": false, "author": "Pascal Baljet ", diff --git a/phpunit.xml.dist b/phpunit.xml.dist deleted file mode 100644 index f0117d91..00000000 --- a/phpunit.xml.dist +++ /dev/null @@ -1,39 +0,0 @@ - - - - - tests - - - - - ./src - - - - - - - - - - - diff --git a/resources/views/components/confirm.blade.php b/resources/views/components/confirm.blade.php index 1291bddb..a5603bd2 100644 --- a/resources/views/components/confirm.blade.php +++ b/resources/views/components/confirm.blade.php @@ -32,7 +32,7 @@ class="fixed z-30 inset-0 bg-black/75" getOption('restore_on_success')" :preserve-scroll="$form->getOption('preserve_scroll')" + :blob="$form->getOption('blob')" + + {{ $attributes->rejectWhenBlank('id')->except('class') }} > @foreach($form->getFields() as $field) {!! $field->render() !!} @endforeach {{ $slot ?? '' }} - \ No newline at end of file + diff --git a/resources/views/table/head.blade.php b/resources/views/table/head.blade.php index 1a938769..cfc230d3 100644 --- a/resources/views/table/head.blade.php +++ b/resources/views/table/head.blade.php @@ -12,7 +12,7 @@ class="@if($loop->first && $hasBulkActions) pr-6 @else px-6 @endif py-3 text-left text-xs font-medium tracking-wide text-gray-500 {{ $column->classes }}" > @if($column->sortable) - + @endif @@ -32,7 +32,7 @@ class="@if($loop->first && $hasBulkActions) pr-6 @else px-6 @endif py-3 text-lef @if($column->sortable) - + @endif @endforeach diff --git a/resources/views/table/pagination.blade.php b/resources/views/table/pagination.blade.php index 8097a8f4..65c6f041 100644 --- a/resources/views/table/pagination.blade.php +++ b/resources/views/table/pagination.blade.php @@ -5,17 +5,17 @@ {!! __('pagination.previous') !!} @else - + {!! __('pagination.previous') !!} - + @endif @includeWhen($hasPerPageOptions ?? true, 'splade::table.per-page-selector') @if ($paginator->hasMorePages()) - + {!! __('pagination.next') !!} - + @else {!! __('pagination.next') !!} @@ -55,11 +55,11 @@ @else - + @endif {{-- Pagination Elements --}} @@ -79,9 +79,9 @@ {{ $page }} @else - + {{ $page }} - + @endif @endforeach @endif @@ -89,11 +89,11 @@ {{-- Next Page Link --}} @if ($paginator->hasMorePages()) - + @else @else - + @endif @includeWhen($hasPerPageOptions ?? true, 'splade::table.per-page-selector') {{-- Next Page Link --}} @if ($paginator->hasMorePages()) - + @else {!! __('pagination.next') !!} diff --git a/resources/views/table/table.blade.php b/resources/views/table/table.blade.php index ba299653..554fe4d0 100644 --- a/resources/views/table/table.blade.php +++ b/resources/views/table/table.blade.php @@ -6,9 +6,11 @@ :items-on-this-page="@js($table->totalOnThisPage())" :items-on-all-pages="@js($table->totalOnAllPages())" :base-url="@js(request()->url())" + :pagination-scroll="@js($paginationScroll)" + :splade-id="@js($spladeId = $table->getSpladeId())" >