Merge branch 'develop' into fix-typos

This commit is contained in:
Viktor Szépe 2023-10-10 08:23:53 +02:00 committed by GitHub
commit 74aaddc0ba
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
40 changed files with 3049 additions and 6258 deletions

View File

@ -5,10 +5,17 @@ on:
branches: [ develop ] branches: [ develop ]
paths: paths:
- '**.php' - '**.php'
- 'phpcs.xml.dist'
- 'phpmd.xml'
- 'phpstan.neon.dist'
pull_request: pull_request:
branches: [ develop ] branches: [ develop ]
paths: paths:
- '**.php' - '**.php'
- 'phpcs.xml.dist'
- 'phpmd.xml'
- 'phpstan.neon.dist'
pull_request_target:
workflow_dispatch: workflow_dispatch:
env: env:
@ -25,40 +32,40 @@ jobs:
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
with:
repository: ${{ github.event.pull_request.head.repo.full_name }}
ref: ${{ github.head_ref }}
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: ${{ env.php-version }} php-version: ${{ env.php-version }}
tools: composer, cs2pr tools: cs2pr
coverage: none coverage: none
env:
fail-fast: true
- name: Get Composer cache directory - name: Cache PHPCS cache
id: composer-cache
uses: actions/cache@v3 uses: actions/cache@v3
with: with:
path: vendor path: .phpcs-cache.json
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} key: ${{ runner.os }}-phpcs-cache-${{ hashFiles('**/composer.lock', 'phpcs.xml.dist') }}
restore-keys: |
${{ runner.os }}-composer-
- name: Install dependencies - name: Install Composer dependencies
if: steps.composer-cache.outputs.cache-hit != 'true' uses: "ramsey/composer-install@v2"
run: composer install --prefer-dist --no-progress
- name: Auto fix coding standards - name: Auto fix coding standards
run: composer phpcs-fix run: composer phpcs-fix
continue-on-error: true continue-on-error: true
- name: Commit coding standards fixes - name: Commit coding standards fixes
uses: stefanzweifel/git-auto-commit-action@v4 uses: stefanzweifel/git-auto-commit-action@v5
with: with:
commit_message: Fix coding standards with phpcbf commit_message: Fix coding standards with phpcbf
branch: ${{ github.head_ref }}
- name: Check coding standards - name: Check coding standards
run: composer phpcs-ga | cs2pr run: composer phpcs -- -q -n --report=checkstyle | cs2pr
php-lint: php-lint:
@ -68,30 +75,19 @@ jobs:
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: ${{ env.php-version }} php-version: ${{ env.php-version }}
tools: composer, cs2pr tools: cs2pr, parallel-lint
coverage: none coverage: none
env:
- name: Get Composer cache directory fail-fast: true
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install dependencies
if: steps.composer-cache.outputs.cache-hit != 'true'
run: composer install --prefer-dist --no-progress
- name: Check syntax - name: Check syntax
run: composer php-lint run: parallel-lint --checkstyle . | cs2pr
phpstan: phpstan:
@ -101,29 +97,29 @@ jobs:
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
with:
repository: ${{ github.event.pull_request.head.repo.full_name }}
ref: ${{ github.head_ref }}
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: ${{ env.php-version }} php-version: ${{ env.php-version }}
tools: composer, cs2pr
coverage: none coverage: none
env:
fail-fast: true
- name: Get Composer cache directory - name: Cache PHPStan cache
id: composer-cache
uses: actions/cache@v3 uses: actions/cache@v3
with: with:
path: vendor path: .phpstan-cache
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }} key: ${{ runner.os }}-phpstan-cache-${{ hashFiles('**/composer.lock', 'phpstan.neon.dist') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install dependencies - name: Install Composer dependencies
if: steps.composer-cache.outputs.cache-hit != 'true' uses: "ramsey/composer-install@v2"
run: composer install --prefer-dist --no-progress
- name: Static Analysis - name: Analyse
id: phpstan id: phpstan
run: composer phpstan -- --error-format=github run: composer phpstan -- --error-format=github
@ -131,10 +127,9 @@ jobs:
run: composer phpstan-baseline run: composer phpstan-baseline
- name: Commit updated basefile - name: Commit updated basefile
uses: stefanzweifel/git-auto-commit-action@v4 uses: stefanzweifel/git-auto-commit-action@v5
with: with:
commit_message: Update PHPStan basefile commit_message: Update PHPStan basefile
branch: ${{ github.head_ref }}
phpmd: phpmd:
@ -144,36 +139,28 @@ jobs:
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
with:
repository: ${{ github.event.pull_request.head.repo.full_name }}
ref: ${{ github.head_ref }}
- name: Setup PHP - name: Setup PHP
uses: shivammathur/setup-php@v2 uses: shivammathur/setup-php@v2
with: with:
php-version: ${{ env.php-version }} php-version: ${{ env.php-version }}
tools: composer, cs2pr tools: phpmd
coverage: none coverage: none
env:
- name: Get Composer cache directory fail-fast: true
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install dependencies
if: steps.composer-cache.outputs.cache-hit != 'true'
run: composer install --prefer-dist --no-progress
- name: Detect mess - name: Detect mess
run: composer phpmd-ga run: phpmd . github phpmd.xml
- name: Update basefile - name: Update basefile
run: composer phpmd-baseline run: phpmd . ansi phpmd.xml --generate-baseline
- name: Commit updated basefile - name: Commit updated basefile
uses: stefanzweifel/git-auto-commit-action@v4 uses: stefanzweifel/git-auto-commit-action@v5
with: with:
commit_message: Update PHPMD basefile commit_message: Update PHPMD basefile
branch: ${{ github.head_ref }} branch: ${{ github.head_ref }}

View File

@ -17,35 +17,42 @@
} }
], ],
"require": { "require": {
"php": ">=5.6" "php": "^7.4 || ^8.0"
}, },
"require-dev": { "require-dev": {
"dealerdirect/phpcodesniffer-composer-installer": "^1.0",
"php-parallel-lint/php-parallel-lint": "^1.3.2", "php-parallel-lint/php-parallel-lint": "^1.3.2",
"phpcompatibility/phpcompatibility-wp": "^2.1.4", "phpcompatibility/phpcompatibility-wp": "^2.1.4",
"phpmd/phpmd": "^2.13.0", "phpmd/phpmd": "^2.14.1",
"phpstan/phpstan": "^1.9.0", "phpstan/phpstan": "^1.10.38",
"roave/security-advisories": "dev-master", "roave/security-advisories": "dev-latest",
"squizlabs/php_codesniffer": "^3.7.1", "squizlabs/php_codesniffer": "^3.7.2",
"szepeviktor/phpstan-wordpress": "^1.1.3", "szepeviktor/phpstan-wordpress": "^1.3.0",
"wp-coding-standards/wpcs": "^2.3.0", "wp-coding-standards/wpcs": "^2.3.0",
"wptrt/wpthemereview": "^0.2.1" "wptrt/wpthemereview": "^0.2.1"
}, },
"scripts": { "scripts": {
"php-lint": "@php ./vendor/php-parallel-lint/php-parallel-lint/parallel-lint --exclude vendor --exclude node_modules --exclude dist --exclude .git --exclude .phpstan-cache .", "php-lint": "parallel-lint --exclude vendor --exclude node_modules --exclude dist --exclude .git --exclude .phpstan-cache .",
"phpcs": "@php ./vendor/squizlabs/php_codesniffer/bin/phpcs -p", "phpcs": "phpcs -p",
"phpcs-ga": "@php ./vendor/squizlabs/php_codesniffer/bin/phpcs -n --report=checkstyle", "phpcs-fix": "phpcbf",
"phpcs-fix": "@php ./vendor/squizlabs/php_codesniffer/bin/phpcbf", "phpmd": "phpmd . ansi phpmd.xml",
"phpcs-config-set" : "@php ./vendor/squizlabs/php_codesniffer/bin/phpcs --config-set installed_paths ../../phpcompatibility/php-compatibility,../../phpcompatibility/phpcompatibility-paragonie,../../phpcompatibility/phpcompatibility-wp,../../wp-coding-standards/wpcs,../../wptrt/wpthemereview", "phpmd-baseline": "@phpmd --generate-baseline",
"phpmd": "@php ./vendor/phpmd/phpmd/src/bin/phpmd . ansi phpmd.xml", "phpstan": "phpstan analyse",
"phpmd-baseline": "@phpmd -- --generate-baseline", "phpstan-baseline": "@phpstan --generate-baseline --allow-empty-baseline"
"phpmd-ga": "@php ./vendor/phpmd/phpmd/src/bin/phpmd . github phpmd.xml",
"phpstan": "@php ./vendor/phpstan/phpstan/phpstan analyse -a src/phpstan/autoload.php",
"phpstan-baseline": "@php ./vendor/phpstan/phpstan/phpstan analyse -a src/phpstan/autoload.php --generate-baseline",
"post-install-cmd": "@phpcs-config-set",
"post-update-cmd": "@phpcs-config-set"
}, },
"support": { "support": {
"issues": "https://github.com/understrap/understrap/issues", "issues": "https://github.com/understrap/understrap/issues",
"source": "https://github.com/understrap/understrap" "source": "https://github.com/understrap/understrap"
},
"config": {
"allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": true
},
"sort-packages": true
},
"autoload": {
"psr-4": {
"Understrap\\PHPStan\\": "src/phpstan"
}
} }
} }

1002
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -846,11 +846,80 @@ progress {
} }
/*! /*!
* Bootstrap Utilities v5.2.2 (https://getbootstrap.com/) * Bootstrap Utilities v5.2.3 (https://getbootstrap.com/)
* Copyright 2011-2022 The Bootstrap Authors * Copyright 2011-2022 The Bootstrap Authors
* Copyright 2011-2022 Twitter, Inc. * Copyright 2011-2022 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
*/ */
:root {
--bs-blue: #0d6efd;
--bs-indigo: #6610f2;
--bs-purple: #5533ff;
--bs-pink: #d63384;
--bs-red: #dc3545;
--bs-orange: #fd7e14;
--bs-yellow: #ffc107;
--bs-green: #198754;
--bs-teal: #20c997;
--bs-cyan: #0dcaf0;
--bs-black: #000;
--bs-white: #fff;
--bs-gray: #6c757d;
--bs-gray-dark: #343a40;
--bs-gray-100: #f8f9fa;
--bs-gray-200: #e9ecef;
--bs-gray-300: #dee2e6;
--bs-gray-400: #ced4da;
--bs-gray-500: #adb5bd;
--bs-gray-600: #6c757d;
--bs-gray-700: #495057;
--bs-gray-800: #343a40;
--bs-gray-900: #212529;
--bs-primary: #5533ff;
--bs-secondary: #6c757d;
--bs-success: #198754;
--bs-info: #0dcaf0;
--bs-warning: #ffc107;
--bs-danger: #dc3545;
--bs-light: #f8f9fa;
--bs-dark: #212529;
--bs-primary-rgb: 85, 51, 255;
--bs-secondary-rgb: 108, 117, 125;
--bs-success-rgb: 25, 135, 84;
--bs-info-rgb: 13, 202, 240;
--bs-warning-rgb: 255, 193, 7;
--bs-danger-rgb: 220, 53, 69;
--bs-light-rgb: 248, 249, 250;
--bs-dark-rgb: 33, 37, 41;
--bs-white-rgb: 255, 255, 255;
--bs-black-rgb: 0, 0, 0;
--bs-body-color-rgb: 33, 37, 41;
--bs-body-bg-rgb: 255, 255, 255;
--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
--bs-body-font-family: var(--bs-font-sans-serif);
--bs-body-font-size: 1rem;
--bs-body-font-weight: 400;
--bs-body-line-height: 1.5;
--bs-body-color: #212529;
--bs-body-bg: #fff;
--bs-border-width: 1px;
--bs-border-style: solid;
--bs-border-color: #dee2e6;
--bs-border-color-translucent: rgba(0, 0, 0, 0.175);
--bs-border-radius: 0.375rem;
--bs-border-radius-sm: 0.25rem;
--bs-border-radius-lg: 0.5rem;
--bs-border-radius-xl: 1rem;
--bs-border-radius-2xl: 2rem;
--bs-border-radius-pill: 50rem;
--bs-link-color: #5533ff;
--bs-link-hover-color: #4429cc;
--bs-code-color: #d63384;
--bs-highlight-bg: #fff3cd;
}
.clearfix::after { .clearfix::after {
display: block; display: block;
clear: both; clear: both;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -3750,7 +3750,13 @@ input[type=button].btn-block {
.woocommerce-notices-wrapper .woocommerce-message .btn-group-toggle > a.button input[type=checkbox], .woocommerce-notices-wrapper .woocommerce-message .btn-group-toggle > a.button input[type=checkbox],
.wpcf7 .btn-group-toggle > input[type=submit] input[type=checkbox], .wpcf7 .btn-group-toggle > input[type=submit] input[type=checkbox],
.btn-group-toggle > .btn-group > .btn input[type=radio], .btn-group-toggle > .btn-group > .btn input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox] { .woocommerce-info .btn-group-toggle > .btn-group > a.button input[type=radio],
.woocommerce-notices-wrapper .woocommerce-message .btn-group-toggle > .btn-group > a.button input[type=radio],
.wpcf7 .btn-group-toggle > .btn-group > input[type=submit] input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox],
.woocommerce-info .btn-group-toggle > .btn-group > a.button input[type=checkbox],
.woocommerce-notices-wrapper .woocommerce-message .btn-group-toggle > .btn-group > a.button input[type=checkbox],
.wpcf7 .btn-group-toggle > .btn-group > input[type=submit] input[type=checkbox] {
position: absolute; position: absolute;
clip: rect(0, 0, 0, 0); clip: rect(0, 0, 0, 0);
pointer-events: none; pointer-events: none;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,6 +1,6 @@
@charset "UTF-8"; @charset "UTF-8";
/*! /*!
* Bootstrap v5.2.2 (https://getbootstrap.com/) * Bootstrap v5.2.3 (https://getbootstrap.com/)
* Copyright 2011-2022 The Bootstrap Authors * Copyright 2011-2022 The Bootstrap Authors
* Copyright 2011-2022 Twitter, Inc. * Copyright 2011-2022 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
@ -6672,7 +6672,6 @@ textarea.form-control-lg {
display: block; display: block;
} }
/* rtl:begin:ignore */
.carousel-item-next:not(.carousel-item-start), .carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end { .active.carousel-item-end {
transform: translateX(100%); transform: translateX(100%);
@ -6683,7 +6682,6 @@ textarea.form-control-lg {
transform: translateX(-100%); transform: translateX(-100%);
} }
/* rtl:end:ignore */
.carousel-fade .carousel-item { .carousel-fade .carousel-item {
opacity: 0; opacity: 0;
transition-property: opacity; transition-property: opacity;
@ -6942,8 +6940,6 @@ textarea.form-control-lg {
border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(-100%); transform: translateX(-100%);
} }
}
@media (max-width: 575.98px) {
.offcanvas-sm.offcanvas-end { .offcanvas-sm.offcanvas-end {
top: 0; top: 0;
right: 0; right: 0;
@ -6951,8 +6947,6 @@ textarea.form-control-lg {
border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(100%); transform: translateX(100%);
} }
}
@media (max-width: 575.98px) {
.offcanvas-sm.offcanvas-top { .offcanvas-sm.offcanvas-top {
top: 0; top: 0;
right: 0; right: 0;
@ -6962,8 +6956,6 @@ textarea.form-control-lg {
border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(-100%); transform: translateY(-100%);
} }
}
@media (max-width: 575.98px) {
.offcanvas-sm.offcanvas-bottom { .offcanvas-sm.offcanvas-bottom {
right: 0; right: 0;
left: 0; left: 0;
@ -6972,13 +6964,9 @@ textarea.form-control-lg {
border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(100%); transform: translateY(100%);
} }
}
@media (max-width: 575.98px) {
.offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) { .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
transform: none; transform: none;
} }
}
@media (max-width: 575.98px) {
.offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show { .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
visibility: visible; visibility: visible;
} }
@ -7030,8 +7018,6 @@ textarea.form-control-lg {
border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(-100%); transform: translateX(-100%);
} }
}
@media (max-width: 767.98px) {
.offcanvas-md.offcanvas-end { .offcanvas-md.offcanvas-end {
top: 0; top: 0;
right: 0; right: 0;
@ -7039,8 +7025,6 @@ textarea.form-control-lg {
border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(100%); transform: translateX(100%);
} }
}
@media (max-width: 767.98px) {
.offcanvas-md.offcanvas-top { .offcanvas-md.offcanvas-top {
top: 0; top: 0;
right: 0; right: 0;
@ -7050,8 +7034,6 @@ textarea.form-control-lg {
border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(-100%); transform: translateY(-100%);
} }
}
@media (max-width: 767.98px) {
.offcanvas-md.offcanvas-bottom { .offcanvas-md.offcanvas-bottom {
right: 0; right: 0;
left: 0; left: 0;
@ -7060,13 +7042,9 @@ textarea.form-control-lg {
border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(100%); transform: translateY(100%);
} }
}
@media (max-width: 767.98px) {
.offcanvas-md.showing, .offcanvas-md.show:not(.hiding) { .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
transform: none; transform: none;
} }
}
@media (max-width: 767.98px) {
.offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show { .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
visibility: visible; visibility: visible;
} }
@ -7118,8 +7096,6 @@ textarea.form-control-lg {
border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(-100%); transform: translateX(-100%);
} }
}
@media (max-width: 991.98px) {
.offcanvas-lg.offcanvas-end { .offcanvas-lg.offcanvas-end {
top: 0; top: 0;
right: 0; right: 0;
@ -7127,8 +7103,6 @@ textarea.form-control-lg {
border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(100%); transform: translateX(100%);
} }
}
@media (max-width: 991.98px) {
.offcanvas-lg.offcanvas-top { .offcanvas-lg.offcanvas-top {
top: 0; top: 0;
right: 0; right: 0;
@ -7138,8 +7112,6 @@ textarea.form-control-lg {
border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(-100%); transform: translateY(-100%);
} }
}
@media (max-width: 991.98px) {
.offcanvas-lg.offcanvas-bottom { .offcanvas-lg.offcanvas-bottom {
right: 0; right: 0;
left: 0; left: 0;
@ -7148,13 +7120,9 @@ textarea.form-control-lg {
border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(100%); transform: translateY(100%);
} }
}
@media (max-width: 991.98px) {
.offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) { .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
transform: none; transform: none;
} }
}
@media (max-width: 991.98px) {
.offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show { .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
visibility: visible; visibility: visible;
} }
@ -7206,8 +7174,6 @@ textarea.form-control-lg {
border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(-100%); transform: translateX(-100%);
} }
}
@media (max-width: 1199.98px) {
.offcanvas-xl.offcanvas-end { .offcanvas-xl.offcanvas-end {
top: 0; top: 0;
right: 0; right: 0;
@ -7215,8 +7181,6 @@ textarea.form-control-lg {
border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(100%); transform: translateX(100%);
} }
}
@media (max-width: 1199.98px) {
.offcanvas-xl.offcanvas-top { .offcanvas-xl.offcanvas-top {
top: 0; top: 0;
right: 0; right: 0;
@ -7226,8 +7190,6 @@ textarea.form-control-lg {
border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(-100%); transform: translateY(-100%);
} }
}
@media (max-width: 1199.98px) {
.offcanvas-xl.offcanvas-bottom { .offcanvas-xl.offcanvas-bottom {
right: 0; right: 0;
left: 0; left: 0;
@ -7236,13 +7198,9 @@ textarea.form-control-lg {
border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(100%); transform: translateY(100%);
} }
}
@media (max-width: 1199.98px) {
.offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) { .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
transform: none; transform: none;
} }
}
@media (max-width: 1199.98px) {
.offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show { .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
visibility: visible; visibility: visible;
} }
@ -7294,8 +7252,6 @@ textarea.form-control-lg {
border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(-100%); transform: translateX(-100%);
} }
}
@media (max-width: 1399.98px) {
.offcanvas-xxl.offcanvas-end { .offcanvas-xxl.offcanvas-end {
top: 0; top: 0;
right: 0; right: 0;
@ -7303,8 +7259,6 @@ textarea.form-control-lg {
border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateX(100%); transform: translateX(100%);
} }
}
@media (max-width: 1399.98px) {
.offcanvas-xxl.offcanvas-top { .offcanvas-xxl.offcanvas-top {
top: 0; top: 0;
right: 0; right: 0;
@ -7314,8 +7268,6 @@ textarea.form-control-lg {
border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(-100%); transform: translateY(-100%);
} }
}
@media (max-width: 1399.98px) {
.offcanvas-xxl.offcanvas-bottom { .offcanvas-xxl.offcanvas-bottom {
right: 0; right: 0;
left: 0; left: 0;
@ -7324,13 +7276,9 @@ textarea.form-control-lg {
border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color); border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
transform: translateY(100%); transform: translateY(100%);
} }
}
@media (max-width: 1399.98px) {
.offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) { .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
transform: none; transform: none;
} }
}
@media (max-width: 1399.98px) {
.offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show { .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
visibility: visible; visibility: visible;
} }

File diff suppressed because one or more lines are too long

4
css/theme.min.css vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -82,6 +82,18 @@ if ( ! function_exists( 'understrap_tiny_mce_before_init' ) ) {
} }
$settings['style_formats'] = wp_json_encode( $style_formats ); $settings['style_formats'] = wp_json_encode( $style_formats );
/*
* Fix TinyMCE editor body margin that is set to 0 by Bootstrap's
* _reboot.scss (v4 & v5). `margin: 9px 10px` is the value used by WP's
* TinyMCE skin (/wp-includes/js/tinymce/skins/wordpress/wp-content.css).
*/
if ( isset( $settings['content_style'] ) ) {
$settings['content_style'] .= ' body#tinymce { margin: 9px 10px; }';
} else {
$settings['content_style'] = 'body#tinymce { margin: 9px 10px; }';
}
return $settings; return $settings;
} }
} }

View File

@ -27,7 +27,7 @@ if ( ! function_exists( 'understrap_scripts' ) ) {
$theme_scripts = "/js/theme-bootstrap4{$suffix}.js"; $theme_scripts = "/js/theme-bootstrap4{$suffix}.js";
} }
$css_version = $theme_version . '.' . filemtime( get_template_directory() . $theme_styles ); // @phpstan-ignore-line -- file exists $css_version = $theme_version . '.' . filemtime( get_template_directory() . $theme_styles );
wp_enqueue_style( 'understrap-styles', get_template_directory_uri() . $theme_styles, array(), $css_version ); wp_enqueue_style( 'understrap-styles', get_template_directory_uri() . $theme_styles, array(), $css_version );
// Fix that the offcanvas close icon is hidden behind the admin bar. // Fix that the offcanvas close icon is hidden behind the admin bar.
@ -37,7 +37,7 @@ if ( ! function_exists( 'understrap_scripts' ) ) {
wp_enqueue_script( 'jquery' ); wp_enqueue_script( 'jquery' );
$js_version = $theme_version . '.' . filemtime( get_template_directory() . $theme_scripts ); // @phpstan-ignore-line -- file exists $js_version = $theme_version . '.' . filemtime( get_template_directory() . $theme_scripts );
wp_enqueue_script( 'understrap-scripts', get_template_directory_uri() . $theme_scripts, array(), $js_version, true ); wp_enqueue_script( 'understrap-scripts', get_template_directory_uri() . $theme_scripts, array(), $js_version, true );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) { if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' ); wp_enqueue_script( 'comment-reply' );

View File

@ -36,13 +36,13 @@ if ( ! function_exists( 'understrap_add_site_info' ) ) {
sprintf( sprintf(
/* translators: 1: Theme name, 2: Theme author */ /* translators: 1: Theme name, 2: Theme author */
esc_html__( 'Theme: %1$s by %2$s.', 'understrap' ), esc_html__( 'Theme: %1$s by %2$s.', 'understrap' ),
$the_theme->get( 'Name' ), // @phpstan-ignore-line -- theme exists $the_theme->get( 'Name' ),
'<a href="' . esc_url( __( 'https://understrap.com', 'understrap' ) ) . '">understrap.com</a>' '<a href="' . esc_url( __( 'https://understrap.com', 'understrap' ) ) . '">understrap.com</a>'
), ),
sprintf( sprintf(
/* translators: Theme version */ /* translators: Theme version */
esc_html__( 'Version: %s', 'understrap' ), esc_html__( 'Version: %s', 'understrap' ),
$the_theme->get( 'Version' ) // @phpstan-ignore-line -- theme exists $the_theme->get( 'Version' )
) )
); );

View File

@ -204,7 +204,7 @@ if ( ! function_exists( 'understrap_body_attributes' ) ) {
* @param array $atts An associative array of attributes. * @param array $atts An associative array of attributes.
*/ */
$atts = array_unique( apply_filters( 'understrap_body_attributes', $atts = array() ) ); $atts = array_unique( apply_filters( 'understrap_body_attributes', $atts = array() ) );
if ( ! is_array( $atts ) || empty( $atts ) ) { if ( empty( $atts ) ) {
return; return;
} }

View File

@ -1,6 +1,6 @@
/*! /*!
* Understrap v1.2.2 (https://understrap.com) * Understrap v1.2.2 (https://understrap.com)
* Copyright 2013-2023 The UnderStrap Authors (https://github.com/understrap/understrap/graphs/contributors) * Copyright 2013-2023 The Understrap Authors (https://github.com/understrap/understrap/graphs/contributors)
* Licensed under GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) * Licensed under GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
*/ */
(function (global, factory) { (function (global, factory) {
@ -16,6 +16,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Private TransitionEnd Helpers * Private TransitionEnd Helpers
*/ */
@ -176,6 +177,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -303,6 +305,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -475,6 +478,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -952,6 +956,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -3696,6 +3701,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -4116,6 +4122,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -4716,6 +4723,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -5302,6 +5310,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -5445,6 +5454,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -5676,6 +5686,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -5865,6 +5876,7 @@
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,6 +1,6 @@
/*! /*!
* Understrap v1.2.2 (https://understrap.com) * Understrap v1.2.2 (https://understrap.com)
* Copyright 2013-2023 The UnderStrap Authors (https://github.com/understrap/understrap/graphs/contributors) * Copyright 2013-2023 The Understrap Authors (https://github.com/understrap/understrap/graphs/contributors)
* Licensed under GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) * Licensed under GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
*/ */
(function (global, factory) { (function (global, factory) {
@ -11,7 +11,7 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/index.js * Bootstrap (v5.2.3): util/index.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
@ -279,11 +279,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): dom/event-handler.js * Bootstrap (v5.2.3): dom/event-handler.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -503,7 +504,7 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): dom/data.js * Bootstrap (v5.2.3): dom/data.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
@ -551,7 +552,7 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): dom/manipulator.js * Bootstrap (v5.2.3): dom/manipulator.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
@ -608,11 +609,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/config.js * Bootstrap (v5.2.3): util/config.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Class definition * Class definition
*/ */
@ -661,16 +663,17 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): base-component.js * Bootstrap (v5.2.3): base-component.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
const VERSION = '5.2.2'; const VERSION = '5.2.3';
/** /**
* Class definition * Class definition
@ -729,10 +732,11 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/component-functions.js * Bootstrap (v5.2.3): util/component-functions.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
const enableDismissTrigger = (component, method = 'hide') => { const enableDismissTrigger = (component, method = 'hide') => {
const clickEvent = `click.dismiss${component.EVENT_KEY}`; const clickEvent = `click.dismiss${component.EVENT_KEY}`;
const name = component.NAME; const name = component.NAME;
@ -753,11 +757,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): alert.js * Bootstrap (v5.2.3): alert.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -827,11 +832,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): button.js * Bootstrap (v5.2.3): button.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -890,11 +896,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): dom/selector-engine.js * Bootstrap (v5.2.3): dom/selector-engine.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -947,11 +954,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/swipe.js * Bootstrap (v5.2.3): util/swipe.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -1066,11 +1074,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): carousel.js * Bootstrap (v5.2.3): carousel.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -1438,11 +1447,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): collapse.js * Bootstrap (v5.2.3): collapse.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -1821,7 +1831,7 @@
function getUAString() { function getUAString() {
var uaData = navigator.userAgentData; var uaData = navigator.userAgentData;
if (uaData != null && uaData.brands) { if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {
return uaData.brands.map(function (item) { return uaData.brands.map(function (item) {
return item.brand + "/" + item.version; return item.brand + "/" + item.version;
}).join(' '); }).join(' ');
@ -2108,10 +2118,9 @@
// Zooming can change the DPR, but it seems to report a value that will // Zooming can change the DPR, but it seems to report a value that will
// cleanly divide the values into the appropriate subpixels. // cleanly divide the values into the appropriate subpixels.
function roundOffsetsByDPR(_ref) { function roundOffsetsByDPR(_ref, win) {
var x = _ref.x, var x = _ref.x,
y = _ref.y; y = _ref.y;
var win = window;
var dpr = win.devicePixelRatio || 1; var dpr = win.devicePixelRatio || 1;
return { return {
x: round(x * dpr) / dpr || 0, x: round(x * dpr) / dpr || 0,
@ -2184,7 +2193,7 @@
var _ref4 = roundOffsets === true ? roundOffsetsByDPR({ var _ref4 = roundOffsets === true ? roundOffsetsByDPR({
x: x, x: x,
y: y y: y
}) : { }, getWindow(popper)) : {
x: x, x: x,
y: y y: y
}; };
@ -3169,7 +3178,7 @@
state.orderedModifiers = orderedModifiers.filter(function (m) { state.orderedModifiers = orderedModifiers.filter(function (m) {
return m.enabled; return m.enabled;
}); // Validate the provided modifiers so that the consumer will get warned });
runModifierEffects(); runModifierEffects();
return instance.update(); return instance.update();
}, },
@ -3257,11 +3266,11 @@
// one. // one.
function runModifierEffects() { function runModifierEffects() {
state.orderedModifiers.forEach(function (_ref3) { state.orderedModifiers.forEach(function (_ref) {
var name = _ref3.name, var name = _ref.name,
_ref3$options = _ref3.options, _ref$options = _ref.options,
options = _ref3$options === void 0 ? {} : _ref3$options, options = _ref$options === void 0 ? {} : _ref$options,
effect = _ref3.effect; effect = _ref.effect;
if (typeof effect === 'function') { if (typeof effect === 'function') {
var cleanupFn = effect({ var cleanupFn = effect({
state: state, state: state,
@ -3297,53 +3306,54 @@
var Popper = /*#__PURE__*/Object.freeze({ var Popper = /*#__PURE__*/Object.freeze({
__proto__: null, __proto__: null,
popperGenerator: popperGenerator,
detectOverflow: detectOverflow,
createPopperBase: createPopper$2,
createPopper: createPopper,
createPopperLite: createPopper$1,
top: top,
bottom: bottom,
right: right,
left: left,
auto: auto,
basePlacements: basePlacements,
start: start,
end: end,
clippingParents: clippingParents,
viewport: viewport,
popper: popper,
reference: reference,
variationPlacements: variationPlacements,
placements: placements,
beforeRead: beforeRead,
read: read,
afterRead: afterRead,
beforeMain: beforeMain,
main: main,
afterMain: afterMain, afterMain: afterMain,
beforeWrite: beforeWrite, afterRead: afterRead,
write: write,
afterWrite: afterWrite, afterWrite: afterWrite,
modifierPhases: modifierPhases,
applyStyles: applyStyles$1, applyStyles: applyStyles$1,
arrow: arrow$1, arrow: arrow$1,
auto: auto,
basePlacements: basePlacements,
beforeMain: beforeMain,
beforeRead: beforeRead,
beforeWrite: beforeWrite,
bottom: bottom,
clippingParents: clippingParents,
computeStyles: computeStyles$1, computeStyles: computeStyles$1,
createPopper: createPopper,
createPopperBase: createPopper$2,
createPopperLite: createPopper$1,
detectOverflow: detectOverflow,
end: end,
eventListeners: eventListeners, eventListeners: eventListeners,
flip: flip$1, flip: flip$1,
hide: hide$1, hide: hide$1,
left: left,
main: main,
modifierPhases: modifierPhases,
offset: offset$1, offset: offset$1,
placements: placements,
popper: popper,
popperGenerator: popperGenerator,
popperOffsets: popperOffsets$1, popperOffsets: popperOffsets$1,
preventOverflow: preventOverflow$1 preventOverflow: preventOverflow$1,
read: read,
reference: reference,
right: right,
start: start,
top: top,
variationPlacements: variationPlacements,
viewport: viewport,
write: write
}); });
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): dropdown.js * Bootstrap (v5.2.3): dropdown.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -3706,11 +3716,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/scrollBar.js * Bootstrap (v5.2.3): util/scrollBar.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -3803,11 +3814,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/backdrop.js * Bootstrap (v5.2.3): util/backdrop.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -3927,11 +3939,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/focustrap.js * Bootstrap (v5.2.3): util/focustrap.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -4025,11 +4038,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): modal.js * Bootstrap (v5.2.3): modal.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -4331,11 +4345,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): offcanvas.js * Bootstrap (v5.2.3): offcanvas.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -4561,7 +4576,7 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/sanitizer.js * Bootstrap (v5.2.3): util/sanitizer.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
@ -4656,11 +4671,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): util/template-factory.js * Bootstrap (v5.2.3): util/template-factory.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -4791,11 +4807,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): tooltip.js * Bootstrap (v5.2.3): tooltip.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -4931,9 +4948,6 @@
dispose() { dispose() {
clearTimeout(this._timeout); clearTimeout(this._timeout);
EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler); EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);
if (this.tip) {
this.tip.remove();
}
if (this._element.getAttribute('data-bs-original-title')) { if (this._element.getAttribute('data-bs-original-title')) {
this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title')); this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));
} }
@ -4955,10 +4969,7 @@
} }
// todo v6 remove this OR make it optional // todo v6 remove this OR make it optional
if (this.tip) { this._disposePopper();
this.tip.remove();
this.tip = null;
}
const tip = this._getTipElement(); const tip = this._getTipElement();
this._element.setAttribute('aria-describedby', tip.getAttribute('id')); this._element.setAttribute('aria-describedby', tip.getAttribute('id'));
const { const {
@ -4968,11 +4979,7 @@
container.append(tip); container.append(tip);
EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED)); EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED));
} }
if (this._popper) { this._popper = this._createPopper(tip);
this._popper.update();
} else {
this._popper = this._createPopper(tip);
}
tip.classList.add(CLASS_NAME_SHOW$2); tip.classList.add(CLASS_NAME_SHOW$2);
// If this is a touch-enabled device we add extra // If this is a touch-enabled device we add extra
@ -5021,11 +5028,10 @@
return; return;
} }
if (!this._isHovered) { if (!this._isHovered) {
tip.remove(); this._disposePopper();
} }
this._element.removeAttribute('aria-describedby'); this._element.removeAttribute('aria-describedby');
EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN$2)); EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN$2));
this._disposePopper();
}; };
this._queueCallback(complete, this.tip, this._isAnimated()); this._queueCallback(complete, this.tip, this._isAnimated());
} }
@ -5284,6 +5290,10 @@
this._popper.destroy(); this._popper.destroy();
this._popper = null; this._popper = null;
} }
if (this.tip) {
this.tip.remove();
this.tip = null;
}
} }
// Static // Static
@ -5309,11 +5319,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): popover.js * Bootstrap (v5.2.3): popover.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -5389,11 +5400,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): scrollspy.js * Bootstrap (v5.2.3): scrollspy.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -5648,11 +5660,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): tab.js * Bootstrap (v5.2.3): tab.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */
@ -5909,11 +5922,12 @@
/** /**
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
* Bootstrap (v5.2.2): toast.js * Bootstrap (v5.2.3): toast.js
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
* -------------------------------------------------------------------------- * --------------------------------------------------------------------------
*/ */
/** /**
* Constants * Constants
*/ */

File diff suppressed because one or more lines are too long

4
js/theme.min.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

7593
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -32,7 +32,8 @@
"extends": "./src/build/babel.config.js" "extends": "./src/build/babel.config.js"
}, },
"engines": { "engines": {
"node": ">=16" "node": ">=18",
"npm": ">=8.6.0"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
@ -45,7 +46,7 @@
"bootstrap", "bootstrap",
"underscores" "underscores"
], ],
"author": "The UnderStrap Authors (https://github.com/understrap/understrap/graphs/contributors)", "author": "The Understrap Authors (https://github.com/understrap/understrap/graphs/contributors)",
"license": "GPL-3.0", "license": "GPL-3.0",
"licenseUrl": "https://www.gnu.org/licenses/gpl-3.0.html", "licenseUrl": "https://www.gnu.org/licenses/gpl-3.0.html",
"bugs": { "bugs": {
@ -53,30 +54,30 @@
}, },
"homepage": "https://understrap.com", "homepage": "https://understrap.com",
"devDependencies": { "devDependencies": {
"@babel/core": "^7.19.6", "@babel/core": "^7.23.0",
"@babel/preset-env": "^7.19.4", "@babel/preset-env": "^7.22.20",
"@popperjs/core": "^2.11.6", "@popperjs/core": "^2.11.8",
"@rollup/plugin-babel": "^6.0.2", "@rollup/plugin-babel": "^6.0.4",
"@rollup/plugin-commonjs": "^23.0.2", "@rollup/plugin-commonjs": "^25.0.5",
"@rollup/plugin-multi-entry": "^6.0.0", "@rollup/plugin-multi-entry": "^6.0.1",
"@rollup/plugin-node-resolve": "^15.0.1", "@rollup/plugin-node-resolve": "^15.2.3",
"@rollup/plugin-replace": "^5.0.1", "@rollup/plugin-replace": "^5.0.3",
"autoprefixer": "^10.4.13", "autoprefixer": "^10.4.16",
"bootstrap": "^5.2.2", "bootstrap": "~5.2.3",
"bootstrap4": "npm:bootstrap@^4.6.2", "bootstrap4": "npm:bootstrap@^4.6.2",
"browser-sync": "^2.27.10", "browser-sync": "^2.29.3",
"browserslist": "^4.21.4", "browserslist": "^4.22.1",
"caniuse-lite": "^1.0.30001430", "caniuse-lite": "^1.0.30001546",
"clean-css-cli": "^5.6.1", "clean-css-cli": "^5.6.2",
"font-awesome": "^4.7.0", "font-awesome": "^4.7.0",
"nodemon": "^2.0.20", "nodemon": "^3.0.1",
"npm-run-all": "^4.1.5", "npm-run-all": "^4.1.5",
"popper.js": "^1.16.1", "popper.js": "^1.16.1",
"postcss": "^8.4.18", "postcss": "^8.4.31",
"postcss-cli": "^10.0.0", "postcss-cli": "^10.1.0",
"postcss-understrap-palette-generator": "git+https://github.com/understrap/postcss-understrap-palette-generator.git", "postcss-understrap-palette-generator": "git+https://github.com/understrap/postcss-understrap-palette-generator.git",
"rollup": "^3.2.5", "rollup": "^4.0.2",
"sass": "^1.56.0", "sass": "^1.69.0",
"terser": "^5.15.1" "terser": "^5.21.0"
} }
} }

View File

@ -4,7 +4,7 @@
<description>Apply WordPress Coding Standards to Understrap</description> <description>Apply WordPress Coding Standards to Understrap</description>
<!-- Whenever possible, cache the scan results and re-use those for unchanged files on the next scan. --> <!-- Whenever possible, cache the scan results and re-use those for unchanged files on the next scan. -->
<arg name="cache" value=".phpcs-cache"/> <arg name="cache" value=".phpcs-cache.json"/>
<!-- Strip the filepaths down to the relevant bit. --> <!-- Strip the filepaths down to the relevant bit. -->
<arg name="basepath" value="./"/> <arg name="basepath" value="./"/>
@ -89,6 +89,11 @@
<exclude phpcs-only="true" name="Generic.Files.LineEndings"/> <exclude phpcs-only="true" name="Generic.Files.LineEndings"/>
</rule> </rule>
<!-- Ignore mixed line-endings warnings -->
<rule ref="Internal.LineEndings.Mixed">
<severity>0</severity>
</rule>
<!-- Use the WPThemeReview Ruleset --> <!-- Use the WPThemeReview Ruleset -->
<rule ref="WPThemeReview" /> <rule ref="WPThemeReview" />

View File

@ -55,3 +55,5 @@ parameters:
- '#Function understrap_tags_list\(\) has no return type specified.#' - '#Function understrap_tags_list\(\) has no return type specified.#'
- '#Function understrap_comments_popup_link\(\) has no return type specified.#' - '#Function understrap_comments_popup_link\(\) has no return type specified.#'
- '#Function understrap_offcanvas_admin_bar_inline_styles\(\) has no return type specified.#' - '#Function understrap_offcanvas_admin_bar_inline_styles\(\) has no return type specified.#'
# temorary:
- '#Parameter \#2 ...\$values of function sprintf expects bool\|float\|int\|string\|null, string\|void given.#'

View File

@ -8,27 +8,25 @@
// Exit if accessed directly. // Exit if accessed directly.
defined( 'ABSPATH' ) || exit; defined( 'ABSPATH' ) || exit;
$container = get_theme_mod( 'understrap_container_type' ); if ( ! is_active_sidebar( 'footerfull' ) ) {
return;
}
$container = get_theme_mod( 'understrap_container_type' );
?> ?>
<?php if ( is_active_sidebar( 'footerfull' ) ) : ?> <!-- ******************* The Footer Full-width Widget Area ******************* -->
<!-- ******************* The Footer Full-width Widget Area ******************* --> <div class="wrapper" id="wrapper-footer-full" role="complementary">
<div class="wrapper" id="wrapper-footer-full" role="complementary"> <div class="<?php echo esc_attr( $container ); ?>" id="footer-full-content" tabindex="-1">
<div class="<?php echo esc_attr( $container ); ?>" id="footer-full-content" tabindex="-1"> <div class="row">
<div class="row"> <?php dynamic_sidebar( 'footerfull' ); ?>
<?php dynamic_sidebar( 'footerfull' ); ?>
</div>
</div> </div>
</div><!-- #wrapper-footer-full --> </div>
<?php </div><!-- #wrapper-footer-full -->
endif;

View File

@ -7,37 +7,36 @@
// Exit if accessed directly. // Exit if accessed directly.
defined( 'ABSPATH' ) || exit; defined( 'ABSPATH' ) || exit;
if ( ! is_active_sidebar( 'hero' ) ) {
return;
}
?> ?>
<?php if ( is_active_sidebar( 'hero' ) ) : ?> <!-- ******************* The Hero Widget Area ******************* -->
<!-- ******************* The Hero Widget Area ******************* --> <div id="carouselExampleControls" class="carousel slide" data-interval="false" data-bs-ride="false">
<div id="carouselExampleControls" class="carousel slide" data-interval="false" data-bs-ride="false"> <div class="carousel-inner">
<div class="carousel-inner"> <?php dynamic_sidebar( 'hero' ); ?>
<?php dynamic_sidebar( 'hero' ); ?> </div>
</div> <a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev" data-bs-slide="prev">
<a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev" data-bs-slide="prev"> <span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="carousel-control-prev-icon" aria-hidden="true"></span> <span class="screen-reader-text"><?php echo esc_html_x( 'Previous', 'carousel control', 'understrap' ); ?></span>
<span class="screen-reader-text"><?php echo esc_html_x( 'Previous', 'carousel control', 'understrap' ); ?></span> </a>
</a> <a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next" data-bs-slide="next">
<a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next" data-bs-slide="next"> <span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="carousel-control-next-icon" aria-hidden="true"></span> <span class="screen-reader-text"><?php echo esc_html_x( 'Next', 'carousel control', 'understrap' ); ?></span>
<span class="screen-reader-text"><?php echo esc_html_x( 'Next', 'carousel control', 'understrap' ); ?></span> </a>
</a> </div><!-- .carousel -->
</div><!-- .carousel -->
<?php
endif;

View File

@ -8,26 +8,25 @@
// Exit if accessed directly. // Exit if accessed directly.
defined( 'ABSPATH' ) || exit; defined( 'ABSPATH' ) || exit;
if ( ! is_active_sidebar( 'statichero' ) ) {
return;
}
$container = get_theme_mod( 'understrap_container_type' ); $container = get_theme_mod( 'understrap_container_type' );
?> ?>
<?php if ( is_active_sidebar( 'statichero' ) ) : ?> <!-- ******************* The Hero Widget Area ******************* -->
<!-- ******************* The Hero Widget Area ******************* --> <div class="wrapper" id="wrapper-static-hero">
<div class="wrapper" id="wrapper-static-hero"> <div class="<?php echo esc_attr( $container ); ?>" id="wrapper-static-content" tabindex="-1">
<div class="<?php echo esc_attr( $container ); ?>" id="wrapper-static-content" tabindex="-1"> <div class="row">
<div class="row"> <?php dynamic_sidebar( 'statichero' ); ?>
<?php dynamic_sidebar( 'statichero' ); ?>
</div>
</div> </div>
</div><!-- #wrapper-static-hero --> </div>
<?php </div><!-- #wrapper-static-hero -->
endif;

View File

@ -11,7 +11,6 @@ use PhpParser\Node\Expr\FuncCall;
use PHPStan\Analyser\Scope; use PHPStan\Analyser\Scope;
use PHPStan\Reflection\FunctionReflection; use PHPStan\Reflection\FunctionReflection;
use PHPStan\Reflection\ParametersAcceptorSelector; use PHPStan\Reflection\ParametersAcceptorSelector;
use PHPStan\Type\Constant\ConstantStringType;
use PHPStan\Type\DynamicFunctionReturnTypeExtension; use PHPStan\Type\DynamicFunctionReturnTypeExtension;
use PHPStan\Type\MixedType; use PHPStan\Type\MixedType;
use PHPStan\Type\StringType; use PHPStan\Type\StringType;
@ -54,14 +53,20 @@ class GetThemeModReturnType implements DynamicFunctionReturnTypeExtension {
$functionReflection->getVariants() $functionReflection->getVariants()
)->getReturnType(); )->getReturnType();
if (!$argType instanceof ConstantStringType) { if (count($argType->getConstantStrings()) === 0) {
return $defaultType; return null;
} }
// Return the default value if it is not an Understrap specific theme mod. $returnType = [];
if (!in_array($argType->getValue(), self::$themeMods, true)) { foreach ($argType->getConstantStrings() as $constantString) {
return $defaultType; if (in_array($constantString->getValue(), self::$themeMods, true)) {
$returnType[] = new StringType();
} else {
$returnType[] = $defaultType;
}
} }
$returnType = TypeCombinator::union(...$returnType);
// Without second argument the default value is false, but can be filtered. // Without second argument the default value is false, but can be filtered.
$defaultType = new MixedType(); $defaultType = new MixedType();
@ -69,6 +74,6 @@ class GetThemeModReturnType implements DynamicFunctionReturnTypeExtension {
$defaultType = $scope->getType($functionCall->getArgs()[1]->value); $defaultType = $scope->getType($functionCall->getArgs()[1]->value);
} }
return TypeCombinator::union(new StringType(), $defaultType); return TypeCombinator::union($returnType, $defaultType);
} }
} }

View File

@ -1,8 +0,0 @@
<?php
/**
* Load PHPStan extensions
*
* @package Understrap
*/
require_once __DIR__ . '/GetThemeModReturnType.php';

View File

@ -42,7 +42,6 @@
display: block; display: block;
} }
/* rtl:begin:ignore */
.carousel-item-next:not(.carousel-item-start), .carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end { .active.carousel-item-end {
transform: translateX(100%); transform: translateX(100%);
@ -53,8 +52,6 @@
transform: translateX(-100%); transform: translateX(-100%);
} }
/* rtl:end:ignore */
// //
// Alternate transitions // Alternate transitions

View File

@ -198,7 +198,7 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003
// Return opaque color // Return opaque color
// opaque(#fff, rgba(0, 0, 0, .5)) => #808080 // opaque(#fff, rgba(0, 0, 0, .5)) => #808080
@function opaque($background, $foreground) { @function opaque($background, $foreground) {
@return mix(rgba($foreground, 1), $background, opacity($foreground) * 100); @return mix(rgba($foreground, 1), $background, opacity($foreground) * 100%);
} }
// scss-docs-start color-functions // scss-docs-start color-functions

View File

@ -8,6 +8,9 @@
@import "mixins"; @import "mixins";
@import "utilities"; @import "utilities";
// Layout & components
@import "root";
// Helpers // Helpers
@import "helpers"; @import "helpers";

View File

@ -1,6 +1,6 @@
@mixin bsBanner($file) { @mixin bsBanner($file) {
/*! /*!
* Bootstrap #{$file} v5.2.2 (https://getbootstrap.com/) * Bootstrap #{$file} v5.2.3 (https://getbootstrap.com/)
* Copyright 2011-2022 The Bootstrap Authors * Copyright 2011-2022 The Bootstrap Authors
* Copyright 2011-2022 Twitter, Inc. * Copyright 2011-2022 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)