mirror of
https://github.com/filamentphp/filament.git
synced 2026-09-24 15:42:09 +08:00
Merge branch '3.x' into panels-navigation-documentation
This commit is contained in:
+5
-5
@@ -2,11 +2,11 @@
|
||||
|
||||
## Supported Versions
|
||||
|
||||
| Version | Supported |
|
||||
|---------| ------------------ |
|
||||
| 1.x | :white_check_mark: |
|
||||
| 2.x | :white_check_mark: |
|
||||
| 3.x | :white_check_mark: |
|
||||
| Version | Supported | EOSL Date |
|
||||
|---------| --------- | ---------------- |
|
||||
| 1.x | ⚠️ | 1st July 2025 |
|
||||
| 2.x | ⚠️ | 1st January 2026 |
|
||||
| 3.x | ✅ | TBA |
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
|
||||
+2
-2
@@ -9,11 +9,11 @@
|
||||
},
|
||||
"require-dev": {
|
||||
"anourvalar/eloquent-serialize": "^1.2",
|
||||
"danharrin/livewire-rate-limiting": "^0.3|^1.0",
|
||||
"danharrin/livewire-rate-limiting": "^0.3|^1.0|^2.0",
|
||||
"filament/support": "*",
|
||||
"larastan/larastan": "^2.2",
|
||||
"laravel/pint": "^1.0",
|
||||
"league/csv": "^9.14",
|
||||
"league/csv": "^9.16",
|
||||
"league/flysystem-aws-s3-v3": "^3.0",
|
||||
"nunomaduro/termwind": "^1.0|^2.0",
|
||||
"openspout/openspout": "^4.23",
|
||||
|
||||
Generated
+484
-477
File diff suppressed because it is too large
Load Diff
@@ -10,6 +10,7 @@ use App\Http\Middleware\TrimStrings;
|
||||
use App\Http\Middleware\TrustProxies;
|
||||
use App\Http\Middleware\ValidateSignature;
|
||||
use App\Http\Middleware\VerifyCsrfToken;
|
||||
use Filament\Http\Middleware\AuthenticateSession;
|
||||
use Illuminate\Auth\Middleware\AuthenticateWithBasicAuth;
|
||||
use Illuminate\Auth\Middleware\Authorize;
|
||||
use Illuminate\Auth\Middleware\EnsureEmailIsVerified;
|
||||
@@ -22,7 +23,6 @@ use Illuminate\Http\Middleware\HandleCors;
|
||||
use Illuminate\Http\Middleware\SetCacheHeaders;
|
||||
use Illuminate\Routing\Middleware\SubstituteBindings;
|
||||
use Illuminate\Routing\Middleware\ThrottleRequests;
|
||||
use Illuminate\Session\Middleware\AuthenticateSession;
|
||||
use Illuminate\Session\Middleware\StartSession;
|
||||
use Illuminate\View\Middleware\ShareErrorsFromSession;
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
namespace App\Providers\Filament;
|
||||
|
||||
use Filament\Http\Middleware\Authenticate;
|
||||
use Filament\Http\Middleware\AuthenticateSession;
|
||||
use Filament\Http\Middleware\DisableBladeIconComponents;
|
||||
use Filament\Http\Middleware\DispatchServingFilamentEvent;
|
||||
use Filament\Pages;
|
||||
@@ -14,7 +15,6 @@ use Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse;
|
||||
use Illuminate\Cookie\Middleware\EncryptCookies;
|
||||
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken;
|
||||
use Illuminate\Routing\Middleware\SubstituteBindings;
|
||||
use Illuminate\Session\Middleware\AuthenticateSession;
|
||||
use Illuminate\Session\Middleware\StartSession;
|
||||
use Illuminate\View\Middleware\ShareErrorsFromSession;
|
||||
|
||||
|
||||
Generated
+591
-516
File diff suppressed because it is too large
Load Diff
Generated
+165
-164
@@ -373,9 +373,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jridgewell/gen-mapping": {
|
||||
"version": "0.3.5",
|
||||
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
|
||||
"integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
|
||||
"version": "0.3.8",
|
||||
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz",
|
||||
"integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==",
|
||||
"dependencies": {
|
||||
"@jridgewell/set-array": "^1.2.1",
|
||||
"@jridgewell/sourcemap-codec": "^1.4.10",
|
||||
@@ -402,9 +402,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jridgewell/sourcemap-codec": {
|
||||
"version": "1.4.15",
|
||||
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
|
||||
"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
|
||||
"version": "1.5.0",
|
||||
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
|
||||
"integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ=="
|
||||
},
|
||||
"node_modules/@jridgewell/trace-mapping": {
|
||||
"version": "0.3.25",
|
||||
@@ -457,20 +457,20 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@tailwindcss/forms": {
|
||||
"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==",
|
||||
"version": "0.5.9",
|
||||
"resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.9.tgz",
|
||||
"integrity": "sha512-tM4XVr2+UVTxXJzey9Twx48c1gcxFStqn1pQz0tRsX8o3DvxhN5oY5pvyAbUx7VTaZxpej4Zzvc6h+1RJBzpIg==",
|
||||
"dependencies": {
|
||||
"mini-svg-data-uri": "^1.2.3"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1"
|
||||
"tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1 || >= 4.0.0-alpha.20"
|
||||
}
|
||||
},
|
||||
"node_modules/@tailwindcss/typography": {
|
||||
"version": "0.5.10",
|
||||
"resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.10.tgz",
|
||||
"integrity": "sha512-Pe8BuPJQJd3FfRnm6H0ulKIGoMEQS+Vq01R6M5aCrFB/ccR/shT+0kXLjouGC1gFLm9hopTFN+DMP0pfwRWzPw==",
|
||||
"version": "0.5.15",
|
||||
"resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.15.tgz",
|
||||
"integrity": "sha512-AqhlCXl+8grUz8uqExv5OTtgpjuVIwFTSXTrh8y9/pw6q2ek7fJ+Y8ZEVw7EB2DCcuCOtEjf9w3+J3rzts01uA==",
|
||||
"dependencies": {
|
||||
"lodash.castarray": "^4.4.0",
|
||||
"lodash.isplainobject": "^4.0.6",
|
||||
@@ -478,13 +478,13 @@
|
||||
"postcss-selector-parser": "6.0.10"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"tailwindcss": ">=3.0.0 || insiders"
|
||||
"tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20"
|
||||
}
|
||||
},
|
||||
"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==",
|
||||
"version": "6.1.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
|
||||
"integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
@@ -526,9 +526,9 @@
|
||||
"integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg=="
|
||||
},
|
||||
"node_modules/autoprefixer": {
|
||||
"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==",
|
||||
"version": "10.4.20",
|
||||
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz",
|
||||
"integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
@@ -544,11 +544,11 @@
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"browserslist": "^4.23.0",
|
||||
"caniuse-lite": "^1.0.30001591",
|
||||
"browserslist": "^4.23.3",
|
||||
"caniuse-lite": "^1.0.30001646",
|
||||
"fraction.js": "^4.3.7",
|
||||
"normalize-range": "^0.1.2",
|
||||
"picocolors": "^1.0.0",
|
||||
"picocolors": "^1.0.1",
|
||||
"postcss-value-parser": "^4.2.0"
|
||||
},
|
||||
"bin": {
|
||||
@@ -567,11 +567,14 @@
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
|
||||
},
|
||||
"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==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/brace-expansion": {
|
||||
@@ -594,9 +597,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/browserslist": {
|
||||
"version": "4.23.0",
|
||||
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
|
||||
"integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
|
||||
"version": "4.24.3",
|
||||
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.3.tgz",
|
||||
"integrity": "sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
@@ -612,10 +615,10 @@
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"caniuse-lite": "^1.0.30001587",
|
||||
"electron-to-chromium": "^1.4.668",
|
||||
"node-releases": "^2.0.14",
|
||||
"update-browserslist-db": "^1.0.13"
|
||||
"caniuse-lite": "^1.0.30001688",
|
||||
"electron-to-chromium": "^1.5.73",
|
||||
"node-releases": "^2.0.19",
|
||||
"update-browserslist-db": "^1.1.1"
|
||||
},
|
||||
"bin": {
|
||||
"browserslist": "cli.js"
|
||||
@@ -633,9 +636,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/caniuse-lite": {
|
||||
"version": "1.0.30001593",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001593.tgz",
|
||||
"integrity": "sha512-UWM1zlo3cZfkpBysd7AS+z+v007q9G1+fLTUU42rQnY6t2axoogPW/xol6T7juU5EUoOhML4WgBIdG+9yYqAjQ==",
|
||||
"version": "1.0.30001689",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001689.tgz",
|
||||
"integrity": "sha512-CmeR2VBycfa+5/jOfnp/NpWPGd06nf1XYiefUvhXFfZE4GkRc9jv+eGPS4nT558WS/8lYCzV8SlANCIPvbWP1g==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
@@ -749,9 +752,9 @@
|
||||
"integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA=="
|
||||
},
|
||||
"node_modules/electron-to-chromium": {
|
||||
"version": "1.4.690",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.690.tgz",
|
||||
"integrity": "sha512-+2OAGjUx68xElQhydpcbqH50hE8Vs2K6TkAeLhICYfndb67CVH0UsZaijmRUE3rHlIxU1u0jxwhgVe6fK3YANA=="
|
||||
"version": "1.5.74",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.74.tgz",
|
||||
"integrity": "sha512-ck3//9RC+6oss/1Bh9tiAVFy5vfSKbRHAFh7Z3/eTRkEqJeWgymloShB17Vg3Z4nmDNp35vAd1BZ6CMW4Wt6Iw=="
|
||||
},
|
||||
"node_modules/emoji-regex": {
|
||||
"version": "9.2.2",
|
||||
@@ -795,9 +798,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/escalade": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz",
|
||||
"integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==",
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
|
||||
"integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
@@ -848,9 +851,9 @@
|
||||
}
|
||||
},
|
||||
"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==",
|
||||
"version": "3.3.0",
|
||||
"resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz",
|
||||
"integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==",
|
||||
"dependencies": {
|
||||
"cross-spawn": "^7.0.0",
|
||||
"signal-exit": "^4.0.1"
|
||||
@@ -896,22 +899,20 @@
|
||||
}
|
||||
},
|
||||
"node_modules/glob": {
|
||||
"version": "10.3.10",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz",
|
||||
"integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==",
|
||||
"version": "10.4.5",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
|
||||
"integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
|
||||
"dependencies": {
|
||||
"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"
|
||||
"jackspeak": "^3.1.2",
|
||||
"minimatch": "^9.0.4",
|
||||
"minipass": "^7.1.2",
|
||||
"package-json-from-dist": "^1.0.0",
|
||||
"path-scurry": "^1.11.1"
|
||||
},
|
||||
"bin": {
|
||||
"glob": "dist/esm/bin.mjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
@@ -928,9 +929,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/hasown": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz",
|
||||
"integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==",
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
|
||||
"integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
|
||||
"dependencies": {
|
||||
"function-bind": "^1.1.2"
|
||||
},
|
||||
@@ -950,11 +951,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/is-core-module": {
|
||||
"version": "2.13.1",
|
||||
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz",
|
||||
"integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==",
|
||||
"version": "2.16.0",
|
||||
"resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.0.tgz",
|
||||
"integrity": "sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==",
|
||||
"dependencies": {
|
||||
"hasown": "^2.0.0"
|
||||
"hasown": "^2.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.4"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/ljharb"
|
||||
@@ -1001,15 +1005,12 @@
|
||||
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
|
||||
},
|
||||
"node_modules/jackspeak": {
|
||||
"version": "2.3.6",
|
||||
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz",
|
||||
"integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==",
|
||||
"version": "3.4.3",
|
||||
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
|
||||
"integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
|
||||
"dependencies": {
|
||||
"@isaacs/cliui": "^8.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
},
|
||||
@@ -1018,9 +1019,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jiti": {
|
||||
"version": "1.21.0",
|
||||
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz",
|
||||
"integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==",
|
||||
"version": "1.21.6",
|
||||
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz",
|
||||
"integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==",
|
||||
"bin": {
|
||||
"jiti": "bin/jiti.js"
|
||||
}
|
||||
@@ -1041,11 +1042,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/lilconfig": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz",
|
||||
"integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==",
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz",
|
||||
"integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==",
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
"node": ">=14"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/antonk52"
|
||||
}
|
||||
},
|
||||
"node_modules/lines-and-columns": {
|
||||
@@ -1069,12 +1073,9 @@
|
||||
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
|
||||
},
|
||||
"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==",
|
||||
"engines": {
|
||||
"node": "14 || >=16.14"
|
||||
}
|
||||
"version": "10.4.3",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
|
||||
"integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="
|
||||
},
|
||||
"node_modules/merge2": {
|
||||
"version": "1.4.1",
|
||||
@@ -1105,9 +1106,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/minimatch": {
|
||||
"version": "9.0.3",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
|
||||
"integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
|
||||
"version": "9.0.5",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
|
||||
"integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
|
||||
"dependencies": {
|
||||
"brace-expansion": "^2.0.1"
|
||||
},
|
||||
@@ -1119,9 +1120,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/minipass": {
|
||||
"version": "7.0.4",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
|
||||
"integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
|
||||
"version": "7.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
|
||||
"integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
}
|
||||
@@ -1137,9 +1138,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/nanoid": {
|
||||
"version": "3.3.7",
|
||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
|
||||
"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
|
||||
"version": "3.3.8",
|
||||
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz",
|
||||
"integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
@@ -1154,9 +1155,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/node-releases": {
|
||||
"version": "2.0.14",
|
||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
|
||||
"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw=="
|
||||
"version": "2.0.19",
|
||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz",
|
||||
"integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw=="
|
||||
},
|
||||
"node_modules/normalize-path": {
|
||||
"version": "3.0.0",
|
||||
@@ -1190,6 +1191,11 @@
|
||||
"node": ">= 6"
|
||||
}
|
||||
},
|
||||
"node_modules/package-json-from-dist": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
|
||||
"integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw=="
|
||||
},
|
||||
"node_modules/path-key": {
|
||||
"version": "3.1.1",
|
||||
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
|
||||
@@ -1204,24 +1210,24 @@
|
||||
"integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
|
||||
},
|
||||
"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==",
|
||||
"version": "1.11.1",
|
||||
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
|
||||
"integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
|
||||
"dependencies": {
|
||||
"lru-cache": "^9.1.1 || ^10.0.0",
|
||||
"lru-cache": "^10.2.0",
|
||||
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
"node": ">=16 || 14 >=14.18"
|
||||
},
|
||||
"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",
|
||||
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
|
||||
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="
|
||||
},
|
||||
"node_modules/picomatch": {
|
||||
"version": "2.3.1",
|
||||
@@ -1251,9 +1257,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/postcss": {
|
||||
"version": "8.4.35",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.35.tgz",
|
||||
"integrity": "sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==",
|
||||
"version": "8.4.49",
|
||||
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz",
|
||||
"integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
@@ -1270,8 +1276,8 @@
|
||||
],
|
||||
"dependencies": {
|
||||
"nanoid": "^3.3.7",
|
||||
"picocolors": "^1.0.0",
|
||||
"source-map-js": "^1.0.2"
|
||||
"picocolors": "^1.1.1",
|
||||
"source-map-js": "^1.2.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^10 || ^12 || >=14"
|
||||
@@ -1345,39 +1351,34 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"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==",
|
||||
"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",
|
||||
"integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==",
|
||||
"version": "6.2.0",
|
||||
"resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz",
|
||||
"integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/postcss/"
|
||||
},
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/ai"
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"postcss-selector-parser": "^6.0.11"
|
||||
"postcss-selector-parser": "^6.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/postcss/"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"postcss": "^8.2.14"
|
||||
}
|
||||
},
|
||||
"node_modules/postcss-nested/node_modules/postcss-selector-parser": {
|
||||
"version": "6.0.15",
|
||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz",
|
||||
"integrity": "sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==",
|
||||
"version": "6.1.2",
|
||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
|
||||
"integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
|
||||
"dependencies": {
|
||||
"cssesc": "^3.0.0",
|
||||
"util-deprecate": "^1.0.2"
|
||||
@@ -1522,11 +1523,11 @@
|
||||
}
|
||||
},
|
||||
"node_modules/resolve": {
|
||||
"version": "1.22.8",
|
||||
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
|
||||
"integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
|
||||
"version": "1.22.9",
|
||||
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.9.tgz",
|
||||
"integrity": "sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==",
|
||||
"dependencies": {
|
||||
"is-core-module": "^2.13.0",
|
||||
"is-core-module": "^2.16.0",
|
||||
"path-parse": "^1.0.7",
|
||||
"supports-preserve-symlinks-flag": "^1.0.0"
|
||||
},
|
||||
@@ -1614,9 +1615,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.1",
|
||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
|
||||
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
@@ -1742,32 +1743,32 @@
|
||||
}
|
||||
},
|
||||
"node_modules/tailwindcss": {
|
||||
"version": "3.4.1",
|
||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz",
|
||||
"integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==",
|
||||
"version": "3.4.16",
|
||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.16.tgz",
|
||||
"integrity": "sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==",
|
||||
"dependencies": {
|
||||
"@alloc/quick-lru": "^5.2.0",
|
||||
"arg": "^5.0.2",
|
||||
"chokidar": "^3.5.3",
|
||||
"chokidar": "^3.6.0",
|
||||
"didyoumean": "^1.2.2",
|
||||
"dlv": "^1.1.3",
|
||||
"fast-glob": "^3.3.0",
|
||||
"fast-glob": "^3.3.2",
|
||||
"glob-parent": "^6.0.2",
|
||||
"is-glob": "^4.0.3",
|
||||
"jiti": "^1.19.1",
|
||||
"lilconfig": "^2.1.0",
|
||||
"micromatch": "^4.0.5",
|
||||
"jiti": "^1.21.6",
|
||||
"lilconfig": "^3.1.3",
|
||||
"micromatch": "^4.0.8",
|
||||
"normalize-path": "^3.0.0",
|
||||
"object-hash": "^3.0.0",
|
||||
"picocolors": "^1.0.0",
|
||||
"postcss": "^8.4.23",
|
||||
"picocolors": "^1.1.1",
|
||||
"postcss": "^8.4.47",
|
||||
"postcss-import": "^15.1.0",
|
||||
"postcss-js": "^4.0.1",
|
||||
"postcss-load-config": "^4.0.1",
|
||||
"postcss-nested": "^6.0.1",
|
||||
"postcss-selector-parser": "^6.0.11",
|
||||
"resolve": "^1.22.2",
|
||||
"sucrase": "^3.32.0"
|
||||
"postcss-load-config": "^4.0.2",
|
||||
"postcss-nested": "^6.2.0",
|
||||
"postcss-selector-parser": "^6.1.2",
|
||||
"resolve": "^1.22.8",
|
||||
"sucrase": "^3.35.0"
|
||||
},
|
||||
"bin": {
|
||||
"tailwind": "lib/cli.js",
|
||||
@@ -1778,9 +1779,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/tailwindcss/node_modules/postcss-selector-parser": {
|
||||
"version": "6.0.15",
|
||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz",
|
||||
"integrity": "sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==",
|
||||
"version": "6.1.2",
|
||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
|
||||
"integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
|
||||
"dependencies": {
|
||||
"cssesc": "^3.0.0",
|
||||
"util-deprecate": "^1.0.2"
|
||||
@@ -1825,9 +1826,9 @@
|
||||
"integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA=="
|
||||
},
|
||||
"node_modules/update-browserslist-db": {
|
||||
"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==",
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz",
|
||||
"integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
@@ -1843,8 +1844,8 @@
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"escalade": "^3.1.1",
|
||||
"picocolors": "^1.0.0"
|
||||
"escalade": "^3.2.0",
|
||||
"picocolors": "^1.1.0"
|
||||
},
|
||||
"bin": {
|
||||
"update-browserslist-db": "cli.js"
|
||||
@@ -1913,9 +1914,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/vite-plugin-full-reload": {
|
||||
"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==",
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/vite-plugin-full-reload/-/vite-plugin-full-reload-1.2.0.tgz",
|
||||
"integrity": "sha512-kz18NW79x0IHbxRSHm0jttP4zoO9P9gXh+n6UTwlNKnviTTEpOlum6oS9SmecrTtSr+muHEn5TUuC75UovQzcA==",
|
||||
"dependencies": {
|
||||
"picocolors": "^1.0.0",
|
||||
"picomatch": "^2.3.1"
|
||||
@@ -2020,9 +2021,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/yaml": {
|
||||
"version": "2.4.0",
|
||||
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.0.tgz",
|
||||
"integrity": "sha512-j9iR8g+/t0lArF4V6NE/QCfT+CO7iLqrXAHZbJdo+LfjqP1vR8Fg5bSiaq6Q2lOD1AUEVrEVIgABvBFYojJVYQ==",
|
||||
"version": "2.6.1",
|
||||
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.1.tgz",
|
||||
"integrity": "sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==",
|
||||
"bin": {
|
||||
"yaml": "bin.mjs"
|
||||
},
|
||||
|
||||
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
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
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
Generated
+1914
-2642
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -62,6 +62,6 @@
|
||||
"tippy.js": "^6.3.7",
|
||||
"trix": "^2.1",
|
||||
"uuid-browser": "^3.1.0",
|
||||
"vanilla-colorful": "^0.6.2"
|
||||
"vanilla-colorful": "^0.7.2"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
"illuminate/contracts": "^10.45|^11.0",
|
||||
"illuminate/database": "^10.45|^11.0",
|
||||
"illuminate/support": "^10.45|^11.0",
|
||||
"league/csv": "^9.14",
|
||||
"league/csv": "^9.16",
|
||||
"openspout/openspout": "^4.23",
|
||||
"spatie/laravel-package-tools": "^1.9"
|
||||
},
|
||||
|
||||
@@ -47,7 +47,7 @@ php artisan filament:install --actions
|
||||
Run the following command to install Tailwind CSS with the Tailwind Forms and Typography plugins:
|
||||
|
||||
```bash
|
||||
npm install tailwindcss @tailwindcss/forms @tailwindcss/typography postcss postcss-nesting autoprefixer --save-dev
|
||||
npm install tailwindcss@3 @tailwindcss/forms @tailwindcss/typography postcss postcss-nesting autoprefixer --save-dev
|
||||
```
|
||||
|
||||
Create a new `tailwind.config.js` file and add the Filament `preset` *(includes the Filament color scheme and the required Tailwind plugins)*:
|
||||
|
||||
@@ -840,7 +840,7 @@ The current record (if it exists yet) is accessible in `$this->record`, and the
|
||||
|
||||
## Authorization
|
||||
|
||||
By default, only the user who started the import may access the failure CSV file that gets generated if part of an import fails. If you'd like to customize the authorization logic, you may create an `ImportPolicy` class, and [register it in your `AuthServiceProvider`](https://laravel.com/docs/10.x/authorization#registering-policies):
|
||||
By default, only the user who started the import may access the failure CSV file that gets generated if part of an import fails. If you'd like to customize the authorization logic, you may create an `ImportPolicy` class, and [register it in your `AuthServiceProvider`](https://laravel.com/docs/authorization#registering-policies):
|
||||
|
||||
```php
|
||||
use App\Policies\ImportPolicy;
|
||||
|
||||
@@ -690,7 +690,7 @@ public function getJobBatchName(): ?string
|
||||
|
||||
## Authorization
|
||||
|
||||
By default, only the user who started the export may download files that get generated. If you'd like to customize the authorization logic, you may create an `ExportPolicy` class, and [register it in your `AuthServiceProvider`](https://laravel.com/docs/10.x/authorization#registering-policies):
|
||||
By default, only the user who started the export may download files that get generated. If you'd like to customize the authorization logic, you may create an `ExportPolicy` class, and [register it in your `AuthServiceProvider`](https://laravel.com/docs/authorization#registering-policies):
|
||||
|
||||
```php
|
||||
use App\Policies\ExportPolicy;
|
||||
|
||||
@@ -13,7 +13,7 @@ return [
|
||||
'actions' => [
|
||||
|
||||
'create' => [
|
||||
'label' => 'دروستکرن',
|
||||
'label' => 'دروستکردن',
|
||||
],
|
||||
|
||||
'create_another' => [
|
||||
|
||||
@@ -25,7 +25,7 @@ return [
|
||||
],
|
||||
|
||||
'attach_another' => [
|
||||
'label' => 'Priloži i priloži drugi',
|
||||
'label' => 'Priloži i dodaj još jedan',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
@@ -17,7 +17,7 @@ return [
|
||||
],
|
||||
|
||||
'create_another' => [
|
||||
'label' => 'Napravi i napravi drugi',
|
||||
'label' => 'Napravi i dodaj još jedan',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
@@ -36,7 +36,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Obriši odabrano :label',
|
||||
'heading' => 'Obriši odabrano',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'label' => 'Izvezi :label',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Izvezi :label',
|
||||
|
||||
'form' => [
|
||||
|
||||
'columns' => [
|
||||
|
||||
'label' => 'Stupci',
|
||||
|
||||
'form' => [
|
||||
|
||||
'is_enabled' => [
|
||||
'label' => ':column je omogućen',
|
||||
],
|
||||
|
||||
'label' => [
|
||||
'label' => ':column oznaka',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'actions' => [
|
||||
|
||||
'export' => [
|
||||
'label' => 'Izvoz',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'notifications' => [
|
||||
|
||||
'completed' => [
|
||||
|
||||
'title' => 'Izvoz podataka završen',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_csv' => [
|
||||
'label' => 'Preuzmi .csv',
|
||||
],
|
||||
|
||||
'download_xlsx' => [
|
||||
'label' => 'Preuzmi .xlsx',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'max_rows' => [
|
||||
'title' => 'Datoteka za preuzimanje je prevelika',
|
||||
'body' => '{1} Ne možeš preuzeti više od jednog reda odjednom.|[2,4] Ne možeš preuzeti više od :count reda odjednom.|[5,*] Ne možeš preuzeti više od :count redova odjednom.',
|
||||
],
|
||||
|
||||
'started' => [
|
||||
'title' => 'Izvoz datoteka je započeo',
|
||||
'body' => '{1} Tvoj izvoz datoteka je započeo i jedan red će se obraditi u pozadini. Dobit ćeš obavijest kada je izrađena poveznica za preuzimanje.|[2,4] Tvoj izvoz datoteka je započeo i :count reda će se obraditi u pozadini. Dobit ćeš obavijest kada je izrađena poveznica za preuzimanje.|[5,*] Tvoj izvoz datoteka je započeo i :count redova će se obraditi u pozadini. Dobit ćeš obavijest kada je izrađena poveznica za preuzimanje.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'file_name' => 'export-:export_id-:model',
|
||||
|
||||
];
|
||||
@@ -4,11 +4,11 @@ return [
|
||||
|
||||
'single' => [
|
||||
|
||||
'label' => 'Prisilno izbriši',
|
||||
'label' => 'Prisilno obriši',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Prisilno izbriši :label',
|
||||
'heading' => 'Prisilno obriši :label',
|
||||
|
||||
'actions' => [
|
||||
|
||||
@@ -32,11 +32,11 @@ return [
|
||||
|
||||
'multiple' => [
|
||||
|
||||
'label' => 'Prisilno izbriši odabrano',
|
||||
'label' => 'Prisilno obriši odabrano',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Prisilno izbriši odabrano :label',
|
||||
'heading' => 'Prisilno obriši odabrano',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'label' => 'Uvezi :label',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Uvezi :label',
|
||||
|
||||
'form' => [
|
||||
|
||||
'file' => [
|
||||
|
||||
'label' => 'File',
|
||||
|
||||
'placeholder' => 'Prenesi CSV datoteku',
|
||||
// Ovdje nisam bio siguran je li moramo i to pravilo prevesti
|
||||
'rules' => [
|
||||
'duplicate_columns' => '{0} The file must not contain more than one empty column header.|{1,*} The file must not contain duplicate column headers: :columns.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'columns' => [
|
||||
'label' => 'Stupac',
|
||||
'placeholder' => 'Odaberi stupac',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_example' => [
|
||||
'label' => 'Preuzmi primjer CSV datoteke',
|
||||
],
|
||||
|
||||
'import' => [
|
||||
'label' => 'Uvoz',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'notifications' => [
|
||||
|
||||
'completed' => [
|
||||
|
||||
'title' => 'Uvoz je završen',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_failed_rows_csv' => [
|
||||
'label' => 'Preuzmi informaciju o neuspjelom pokušaju preuzimanja retka|Preuzmi informaciju o neuspjelom pokušaju preuzimanja redaka',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'max_rows' => [
|
||||
'title' => 'Poslana CSV datoteka je prevelika',
|
||||
'body' => '{1} Ne možeš uvesti više od jednog reda odjednom.|[2,4] Ne možeš uvesti više od :count reda odjednom.|[5,*] Ne možeš uvesti više od :count redova odjednom.',
|
||||
],
|
||||
|
||||
'started' => [
|
||||
'title' => 'Uvoz je započeo',
|
||||
'body' => '{1} Uvoz je započeo i jedan red će se obraditi u pozadini.|[2,4] Uvoz je započeo i :count reda će se obraditi u pozadini.|[5,*] Uvoz je započeo i :count redova će se obraditi u pozadini.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'example_csv' => [
|
||||
'file_name' => ':importer-example',
|
||||
],
|
||||
|
||||
'failure_csv' => [
|
||||
'file_name' => 'import-:import_id-:csv_name-failed-rows',
|
||||
'error_header' => 'error',
|
||||
'system_error' => 'System error, please contact support.',
|
||||
'column_mapping_required_for_new_record' => 'The :attribute column was not mapped to a column in the file, but it is required for creating new records.',
|
||||
],
|
||||
|
||||
];
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
return [
|
||||
|
||||
'confirmation' => 'Jeste li sigurni da želite to učiniti?',
|
||||
'confirmation' => 'Jesi li siguran da želiš to učiniti?',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => ':label lecstolása',
|
||||
'heading' => ':label lecsatolása',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ return [
|
||||
|
||||
'completed' => [
|
||||
|
||||
'title' => 'AZ exportálás befejeződött',
|
||||
'title' => 'Az exportálás befejeződött',
|
||||
|
||||
'actions' => [
|
||||
|
||||
@@ -67,7 +67,7 @@ return [
|
||||
|
||||
'started' => [
|
||||
'title' => 'Az exportálás elkezdődött',
|
||||
'body' => 'Elkezdődött 1 exportálása a háttérben.|Elkezdődött :count sor exportálása a háttérben.',
|
||||
'body' => 'Elkezdődött 1 sor exportálása a háttérben. Ha elkészült, akkor a letöltési hivatkozás egy új értesítésben fog megjelenni.|Elkezdődött :count sor exportálása a háttérben. Ha elkészült, akkor a letöltési hivatkozás egy új értesítésben fog megjelenni.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
@@ -13,6 +13,9 @@ return [
|
||||
'file' => [
|
||||
'label' => 'Fájl',
|
||||
'placeholder' => 'Tölts fel egy CSV fájlt',
|
||||
'rules' => [
|
||||
'duplicate_columns' => '{0} A fájl nem tartalmazhat egynél több üres oszlopfejlécet.|{1,*} A fájl nem tartalmazhat ismétlődő oszlopfejléceket: :columns.',
|
||||
],
|
||||
],
|
||||
|
||||
'columns' => [
|
||||
@@ -72,6 +75,7 @@ return [
|
||||
'file_name' => 'importálás-:import_id-:csv_name-sikertelen-sorok',
|
||||
'error_header' => 'hiba',
|
||||
'system_error' => 'Rendszerhiba, kérlek lépj kapcsolatba az ügyfélszolgálattal.',
|
||||
'column_mapping_required_for_new_record' => 'A :attribute oszlopot a fájlban lévő oszlopok egyikéhez sem sikerült hozzárendelni, így nem hozhatóak létre új rekordok.',
|
||||
],
|
||||
|
||||
];
|
||||
|
||||
@@ -8,7 +8,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Ջնջել :label',
|
||||
'heading' => 'Ջնջել :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
@@ -36,7 +36,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Ջնջել ընտրված :label',
|
||||
'heading' => 'Ջնջել ընտրված :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Անջատել ընտրված :label',
|
||||
'heading' => 'Անջատել ընտրված :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Տարանջատել ընտրված :label',
|
||||
'heading' => 'Տարանջատել ընտրված :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Խմբագրել :label',
|
||||
'heading' => 'Խմբագրել :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'label' => 'Արտահանել :label',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Արտահանել :label',
|
||||
|
||||
'form' => [
|
||||
|
||||
'columns' => [
|
||||
|
||||
'label' => 'Սյունակներ',
|
||||
|
||||
'form' => [
|
||||
|
||||
'is_enabled' => [
|
||||
'label' => ':column միացված է',
|
||||
],
|
||||
|
||||
'label' => [
|
||||
'label' => ':column պիտակ',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'actions' => [
|
||||
|
||||
'export' => [
|
||||
'label' => 'Արտահանել',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'notifications' => [
|
||||
|
||||
'completed' => [
|
||||
|
||||
'title' => 'Արտահանումն ավարտված է',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_csv' => [
|
||||
'label' => 'Ներբեռնել .csv',
|
||||
],
|
||||
|
||||
'download_xlsx' => [
|
||||
'label' => 'Ներբեռնել .xlsx',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'max_rows' => [
|
||||
'title' => 'Արտահանումը չափազանց մեծ է',
|
||||
'body' => 'Դուք չեք կարող միաժամանակ արտահանել ավելի քան 1 տող։|Դուք չեք կարող միաժամանակ արտահանել ավելի քան :count տող։',
|
||||
],
|
||||
|
||||
'started' => [
|
||||
'title' => 'Արտահանումը սկսվել է',
|
||||
'body' => 'Ձեր արտահանումը սկսվել է, և 1 տողը կմշակվի հետին պլանում։ Ավարտվելուց հետո դուք կստանաք ծանուցում ներբեռնման հղումով։|Ձեր արտահանումը սկսվել է, և :count տողը կմշակվի հետին պլանում։ Ավարտվելուց հետո դուք կստանաք ծանուցում ներբեռնման հղումով։',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'file_name' => 'export-:export_id-:model',
|
||||
|
||||
];
|
||||
@@ -8,7 +8,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Հարկադրված ջնջել :label',
|
||||
'heading' => 'Հարկադրված ջնջել :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
@@ -36,7 +36,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Հարկադրված ջնջել ընտրված :label',
|
||||
'heading' => 'Հարկադրված ջնջել ընտրված :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'label' => 'Ներմուծել :label',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Ներմուծել :label',
|
||||
|
||||
'form' => [
|
||||
|
||||
'file' => [
|
||||
|
||||
'label' => 'Ֆայլ',
|
||||
|
||||
'placeholder' => 'Վերբեռնել CSV ֆայլը',
|
||||
|
||||
'rules' => [
|
||||
'duplicate_columns' => '{0} ֆայլը չպետք է պարունակի մեկից ավելի դատարկ սյունակի վերնագիր։ |{1,*} ֆայլը չպետք է պարունակի կրկնօրինակ սյունակի :columns վերնագրեր։',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'columns' => [
|
||||
'label' => 'Սյունակներ',
|
||||
'placeholder' => 'Ընտրեք սյունակը',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_example' => [
|
||||
'label' => 'Ներբեռնել CSV ֆայլի օրինակ',
|
||||
],
|
||||
|
||||
'import' => [
|
||||
'label' => 'Ներմուծել',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'notifications' => [
|
||||
|
||||
'completed' => [
|
||||
|
||||
'title' => 'Ներմուծումն ավարտված է',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_failed_rows_csv' => [
|
||||
'label' => 'Ներբեռնել սխալ տողի տեղեկատվությունը|Ներբեռնել սխալ տողերի տեղեկատվությունը',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'max_rows' => [
|
||||
'title' => 'Ներբեռնված CSV ֆայլը չափազանց մեծ է',
|
||||
'body' => 'Դուք չեք կարող միաժամանակ ներմուծել ավելի քան 1 տող։/ Դուք չեք կարող միաժամանակ ներմուծել ավելի քան :count տող։',
|
||||
],
|
||||
|
||||
'started' => [
|
||||
'title' => 'Ներմուծումը սկսվել է',
|
||||
'body' => 'Ձեր ներմուծումը սկսվել է, և 1 տողը կմշակվի հետին պլանում։|Ձեր ներմուծումը սկսվել է, և :count տող կվերամշակվեն հետին պլանում։',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'example_csv' => [
|
||||
'file_name' => ':importer-example',
|
||||
],
|
||||
|
||||
'failure_csv' => [
|
||||
'file_name' => 'import-:import_id-:csv_name-failed-rows',
|
||||
'error_header' => 'սխալ',
|
||||
'system_error' => 'Համակարգի սխալ, խնդրում ենք կապվել սպասարկման կենտրոնի հետ։',
|
||||
'column_mapping_required_for_new_record' => 'Այս :attribute սյունակը համատեղված չէ ֆայլի սյունակում, բայց պահանջվում է նոր գրառումներ ստեղծելու համար։',
|
||||
],
|
||||
|
||||
];
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
return [
|
||||
|
||||
'confirmation' => 'Վստա՞հ եք, որ ցանկանում եք դա անել:',
|
||||
'confirmation' => 'Վստա՞հ եք, որ ցանկանում եք դա անել։',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Կրկնօրինակել :label',
|
||||
'heading' => 'Կրկնօրինակել :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Վերականգնել :label',
|
||||
'heading' => 'Վերականգնել :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
@@ -23,7 +23,7 @@ return [
|
||||
'notifications' => [
|
||||
|
||||
'restored' => [
|
||||
'title' => 'Գրառումը վերականգնել է',
|
||||
'title' => 'Գրառումը վերականգնվել է',
|
||||
],
|
||||
|
||||
],
|
||||
@@ -36,7 +36,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Վերականգնել ընտրված :label',
|
||||
'heading' => 'Վերականգնել ընտրված :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
@@ -51,7 +51,7 @@ return [
|
||||
'notifications' => [
|
||||
|
||||
'restored' => [
|
||||
'title' => 'Գրառումները վերականգնել են',
|
||||
'title' => 'Գրառումները վերականգնվել են։',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
@@ -8,7 +8,7 @@ return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Դիտել :label',
|
||||
'heading' => 'Դիտել :labelը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ return [
|
||||
'actions' => [
|
||||
|
||||
'create' => [
|
||||
'label' => 'دروستکرن',
|
||||
'label' => 'دروستکردن',
|
||||
],
|
||||
|
||||
'create_another' => [
|
||||
|
||||
@@ -78,6 +78,7 @@ return [
|
||||
'file_name' => 'import-:import_id-:csv_name-failed-rows',
|
||||
'error_header' => 'ralat',
|
||||
'system_error' => 'Ralat sistem, sila hubungi sokongan.',
|
||||
'column_mapping_required_for_new_record' => 'Lajur :attribute tidak dipetakan ke lajur dalam fail, tetapi ia diperlukan untuk mencipta rekod baharu.',
|
||||
],
|
||||
|
||||
];
|
||||
|
||||
@@ -11,8 +11,15 @@ return [
|
||||
'form' => [
|
||||
|
||||
'file' => [
|
||||
|
||||
'label' => 'Plik',
|
||||
|
||||
'placeholder' => 'Wybierz plik CSV',
|
||||
|
||||
'rules' => [
|
||||
'duplicate_columns' => '{0} Plik nie może zawierać więcej niż jednego pustego nagłówka kolumny.|{1,*} Plik nie może zawierać duplikatów nagłówków kolumn: :columns.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'columns' => [
|
||||
@@ -72,6 +79,7 @@ return [
|
||||
'file_name' => 'import-:import_id-:csv_name-failed-rows',
|
||||
'error_header' => 'błąd',
|
||||
'system_error' => 'Błąd systemu, skontaktuj się z pomocą techniczną.',
|
||||
'column_mapping_required_for_new_record' => 'Kolumna :attribute nie została odwzorowana na kolumnę w pliku, ale jest wymagana do tworzenia nowych rekordów.',
|
||||
],
|
||||
|
||||
];
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'label' => ':labelni export qilish',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => ':labelni export qilish',
|
||||
|
||||
'form' => [
|
||||
|
||||
'columns' => [
|
||||
|
||||
'label' => 'Ustunlar',
|
||||
|
||||
'form' => [
|
||||
|
||||
'is_enabled' => [
|
||||
'label' => ':column yoqilgan',
|
||||
],
|
||||
|
||||
'label' => [
|
||||
'label' => ':column belgi',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'actions' => [
|
||||
|
||||
'export' => [
|
||||
'label' => 'Export',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'notifications' => [
|
||||
|
||||
'completed' => [
|
||||
|
||||
'title' => 'Export yakunlandi',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_csv' => [
|
||||
'label' => 'Yuklab olish .csv',
|
||||
],
|
||||
|
||||
'download_xlsx' => [
|
||||
'label' => 'Yuklab olish .xlsx',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'max_rows' => [
|
||||
'title' => 'Export qilish uchun juda katta',
|
||||
'body' => 'Bir vaqtning o\'zida 1 tadan ortiq qatorni eksport qila olmaysiz.|Bir vaqtning o\'zida :count satrdan ortiq eksport qila olmaysiz.',
|
||||
],
|
||||
|
||||
'started' => [
|
||||
'title' => 'Export boshlandi',
|
||||
'body' => 'Eksportingiz boshlandi va 1 qator fonda qayta ishlanadi. Tugallangach, yuklab olish havolasi bilan bildirishnoma olasiz.|Eksportingiz boshlandi va :count qatorlari fonda qayta ishlanadi. Yuklab olish tugallangandan so\'ng siz yuklab olish havolasi bilan bildirishnoma olasiz.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'file_name' => 'export-:export_id-:model',
|
||||
|
||||
];
|
||||
@@ -0,0 +1,85 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'label' => ':labelni import qilish',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => ':labelni import qilish',
|
||||
|
||||
'form' => [
|
||||
|
||||
'file' => [
|
||||
|
||||
'label' => 'Fayl',
|
||||
|
||||
'placeholder' => 'CSV faylini yuklang',
|
||||
|
||||
'rules' => [
|
||||
'duplicate_columns' => '{0} Faylda bittadan ortiq boʻsh ustun sarlavhasi boʻlmasligi kerak.|{1,*} Faylda ikki nusxadagi ustun sarlavhalari boʻlmasligi kerak: :columns.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'columns' => [
|
||||
'label' => 'Ustunlar',
|
||||
'placeholder' => 'Ustunni tanlang',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_example' => [
|
||||
'label' => 'Na\'muna CSV faylni yuklab oling',
|
||||
],
|
||||
|
||||
'import' => [
|
||||
'label' => 'Import',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'notifications' => [
|
||||
|
||||
'completed' => [
|
||||
|
||||
'title' => 'Import yakunlandi',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'download_failed_rows_csv' => [
|
||||
'label' => 'Muvaffaqiyatsiz satr haqida ma\'lumotni yuklab oling|Muvaffaqiyatsiz qatorlar haqida ma\'lumotni yuklab oling',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'max_rows' => [
|
||||
'title' => 'Yuklangan CSV fayl juda katta',
|
||||
'body' => 'Bir vaqtning o\'zida 1 tadan ortiq qatorni import qila olmaysiz.|Bir vaqtning o\'zida :count dan ortiq qatorni import qila olmaysiz.',
|
||||
],
|
||||
|
||||
'started' => [
|
||||
'title' => 'Import boshlandi',
|
||||
'body' => 'Importingiz boshlandi va 1 qator fonda qayta ishlanadi.|Importingiz boshlandi va :count qatorlari fonda qayta ishlanadi.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'example_csv' => [
|
||||
'file_name' => ':importer-example',
|
||||
],
|
||||
|
||||
'failure_csv' => [
|
||||
'file_name' => 'import-:import_id-:csv_name-failed-rows',
|
||||
'error_header' => 'xatolik',
|
||||
'system_error' => 'Tizim xatosi, yordam xizmatiga murojaat qiling.',
|
||||
'column_mapping_required_for_new_record' => ':atribut ustuni fayldagi ustunga moslashtirilmagan, lekin u yangi yozuvlar yaratish uchun talab qilinadi.',
|
||||
],
|
||||
|
||||
];
|
||||
@@ -240,7 +240,10 @@ trait CanExportRecords
|
||||
)
|
||||
->dispatch();
|
||||
|
||||
if ($jobConnection !== 'sync') {
|
||||
if (
|
||||
(filled($jobConnection) && ($jobConnection !== 'sync')) ||
|
||||
(blank($jobConnection) && (config('queue.default') !== 'sync'))
|
||||
) {
|
||||
Notification::make()
|
||||
->title($action->getSuccessNotificationTitle())
|
||||
->body(trans_choice('filament-actions::export.notifications.started.body', $export->total_rows, [
|
||||
|
||||
@@ -32,7 +32,7 @@ use Illuminate\Support\Number;
|
||||
use Illuminate\Support\Str;
|
||||
use Illuminate\Validation\Rules\File;
|
||||
use Illuminate\Validation\ValidationException;
|
||||
use League\Csv\ByteSequence;
|
||||
use League\Csv\Bom;
|
||||
use League\Csv\CharsetConverter;
|
||||
use League\Csv\Info;
|
||||
use League\Csv\Reader as CsvReader;
|
||||
@@ -269,7 +269,7 @@ trait CanImportRecords
|
||||
filled($jobBatchName = $importer->getJobBatchName()),
|
||||
fn (PendingBatch $batch) => $batch->name($jobBatchName),
|
||||
)
|
||||
->finally(function () use ($import, $columnMap, $options) {
|
||||
->finally(function () use ($columnMap, $import, $jobConnection, $options) {
|
||||
$import->touch('completed_at');
|
||||
|
||||
event(new ImportCompleted($import, $columnMap, $options));
|
||||
@@ -307,17 +307,29 @@ trait CanImportRecords
|
||||
->markAsRead(),
|
||||
]),
|
||||
)
|
||||
->sendToDatabase($import->user, isEventDispatched: true);
|
||||
->when(
|
||||
($jobConnection === 'sync') ||
|
||||
(blank($jobConnection) && (config('queue.default') === 'sync')),
|
||||
fn (Notification $notification) => $notification
|
||||
->persistent()
|
||||
->send(),
|
||||
fn (Notification $notification) => $notification->sendToDatabase($import->user, isEventDispatched: true),
|
||||
);
|
||||
})
|
||||
->dispatch();
|
||||
|
||||
Notification::make()
|
||||
->title($action->getSuccessNotificationTitle())
|
||||
->body(trans_choice('filament-actions::import.notifications.started.body', $import->total_rows, [
|
||||
'count' => Number::format($import->total_rows),
|
||||
]))
|
||||
->success()
|
||||
->send();
|
||||
if (
|
||||
(filled($jobConnection) && ($jobConnection !== 'sync')) ||
|
||||
(blank($jobConnection) && (config('queue.default') !== 'sync'))
|
||||
) {
|
||||
Notification::make()
|
||||
->title($action->getSuccessNotificationTitle())
|
||||
->body(trans_choice('filament-actions::import.notifications.started.body', $import->total_rows, [
|
||||
'count' => Number::format($import->total_rows),
|
||||
]))
|
||||
->success()
|
||||
->send();
|
||||
}
|
||||
});
|
||||
|
||||
$this->registerModalActions([
|
||||
@@ -331,7 +343,7 @@ trait CanImportRecords
|
||||
$columns = $this->getImporter()::getColumns();
|
||||
|
||||
$csv = Writer::createFromFileObject(new SplTempFileObject);
|
||||
$csv->setOutputBOM(ByteSequence::BOM_UTF8);
|
||||
$csv->setOutputBOM(Bom::Utf8);
|
||||
|
||||
if (filled($csvDelimiter = $this->getCsvDelimiter())) {
|
||||
$csv->setDelimiter($csvDelimiter);
|
||||
|
||||
@@ -75,7 +75,8 @@ class ExportCompletion implements ShouldQueue
|
||||
)),
|
||||
)
|
||||
->when(
|
||||
$this->connection === 'sync',
|
||||
($this->connection === 'sync') ||
|
||||
(blank($this->connection) && (config('queue.default') === 'sync')),
|
||||
fn (Notification $notification) => $notification
|
||||
->persistent()
|
||||
->send(),
|
||||
|
||||
@@ -15,7 +15,7 @@ use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Collection;
|
||||
use League\Csv\ByteSequence;
|
||||
use League\Csv\Bom;
|
||||
use League\Csv\Writer;
|
||||
use SplTempFileObject;
|
||||
|
||||
@@ -53,7 +53,7 @@ class PrepareCsvExport implements ShouldQueue
|
||||
public function handle(): void
|
||||
{
|
||||
$csv = Writer::createFromFileObject(new SplTempFileObject);
|
||||
$csv->setOutputBOM(ByteSequence::BOM_UTF8);
|
||||
$csv->setOutputBOM(Bom::Utf8);
|
||||
$csv->setDelimiter($this->exporter::getCsvDelimiter());
|
||||
$csv->insertOne(array_values($this->columnMap));
|
||||
|
||||
@@ -69,13 +69,18 @@ class PrepareCsvExport implements ShouldQueue
|
||||
|
||||
if ($databaseConnection->getDriverName() === 'pgsql') {
|
||||
$originalOrders = collect($query->getQuery()->orders)
|
||||
->reject(fn (array $order): bool => in_array($order['column'] ?? null, [$keyName, $qualifiedKeyName]))
|
||||
->reject(fn (array $order): bool => ($order['column'] ?? null) === $qualifiedKeyName)
|
||||
->unique('column');
|
||||
|
||||
/** @var array<string, mixed> $originalBindings */
|
||||
$originalBindings = $query->getRawBindings();
|
||||
|
||||
$query->reorder($qualifiedKeyName);
|
||||
if (! empty($originalOrders->all())) {
|
||||
$query->reorder($originalOrders[0]['column'], $originalOrders[0]['direction']);
|
||||
$originalOrders->forget(0);
|
||||
} else {
|
||||
$query->reorder($qualifiedKeyName);
|
||||
}
|
||||
|
||||
foreach ($originalOrders as $order) {
|
||||
if (blank($order['column'] ?? null) || blank($order['direction'] ?? null)) {
|
||||
@@ -144,7 +149,10 @@ class PrepareCsvExport implements ShouldQueue
|
||||
$chunkKeySize = $this->chunkSize * 10;
|
||||
|
||||
$baseQuery = $query->toBase();
|
||||
$baseQuery->distinct($qualifiedKeyName);
|
||||
|
||||
if (in_array($query->getQuery()->orders[0]['column'] ?? null, [$keyName, $qualifiedKeyName])) {
|
||||
$baseQuery->distinct($qualifiedKeyName);
|
||||
}
|
||||
|
||||
/** @phpstan-ignore-next-line */
|
||||
$baseQueryOrders = $baseQuery->orders ?? [];
|
||||
|
||||
@@ -5,7 +5,7 @@ namespace Filament\Actions\Imports\Http\Controllers;
|
||||
use Filament\Actions\Imports\Models\FailedImportRow;
|
||||
use Filament\Actions\Imports\Models\Import;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
use League\Csv\ByteSequence;
|
||||
use League\Csv\Bom;
|
||||
use League\Csv\Writer;
|
||||
use SplTempFileObject;
|
||||
use Symfony\Component\HttpFoundation\StreamedResponse;
|
||||
@@ -23,7 +23,7 @@ class DownloadImportFailureCsv
|
||||
}
|
||||
|
||||
$csv = Writer::createFromFileObject(new SplTempFileObject);
|
||||
$csv->setOutputBOM(ByteSequence::BOM_UTF8);
|
||||
$csv->setOutputBOM(Bom::Utf8);
|
||||
|
||||
$firstFailedRow = $import->failedRows()->first();
|
||||
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+10
-10
File diff suppressed because one or more lines are too long
+58
-52
File diff suppressed because one or more lines are too long
Vendored
+2
-2
File diff suppressed because one or more lines are too long
@@ -47,7 +47,7 @@ php artisan filament:install --forms
|
||||
Run the following command to install Tailwind CSS with the Tailwind Forms and Typography plugins:
|
||||
|
||||
```bash
|
||||
npm install tailwindcss @tailwindcss/forms @tailwindcss/typography postcss postcss-nesting autoprefixer --save-dev
|
||||
npm install tailwindcss@3 @tailwindcss/forms @tailwindcss/typography postcss postcss-nesting autoprefixer --save-dev
|
||||
```
|
||||
|
||||
Create a new `tailwind.config.js` file and add the Filament `preset` *(includes the Filament color scheme and the required Tailwind plugins)*:
|
||||
|
||||
@@ -70,6 +70,20 @@ class Message extends Model
|
||||
}
|
||||
```
|
||||
|
||||
### Controlling the maximum parallel uploads
|
||||
|
||||
You can control the maximum number of parallel uploads using the `maxParallelUploads()` method:
|
||||
|
||||
```php
|
||||
use Filament\Forms\Components\FileUpload;
|
||||
|
||||
FileUpload::make('attachments')
|
||||
->multiple()
|
||||
->maxParallelUploads(1)
|
||||
```
|
||||
|
||||
This will limit the number of parallel uploads to `1`. If unset, we'll use the [default FilePond value](https://pqina.nl/filepond/docs/api/instance/properties/#core-properties) which is `2`.
|
||||
|
||||
## Controlling file names
|
||||
|
||||
By default, a random file name will be generated for newly-uploaded files. This is to ensure that there are never any conflicts with existing files.
|
||||
|
||||
@@ -580,6 +580,23 @@ Repeater::make('members')
|
||||
|
||||
This method will automatically enable the `distinct()` and `live()` methods on the field.
|
||||
|
||||
In case you want to add another condition to [disable options](../select#disabling-specific-options) with, you can chain `disableOptionWhen()` with the `merge: true` argument:
|
||||
|
||||
```php
|
||||
use Filament\Forms\Components\Repeater;
|
||||
use Filament\Forms\Components\Select;
|
||||
|
||||
Repeater::make('members')
|
||||
->schema([
|
||||
Select::make('role')
|
||||
->options([
|
||||
// ...
|
||||
])
|
||||
->disableOptionsWhenSelectedInSiblingRepeaterItems()
|
||||
->disableOptionWhen(fn (string $value): bool => $value === 'super_admin', merge: true),
|
||||
])
|
||||
```
|
||||
|
||||
## Customizing the repeater item actions
|
||||
|
||||
This field uses action objects for easy customization of buttons within it. You can customize these buttons by passing a function to an action registration method. The function has access to the `$action` object, which you can use to [customize it](../../actions/trigger-button). The following methods are available to customize the actions:
|
||||
|
||||
@@ -51,7 +51,7 @@ Textarea::make('description')
|
||||
|
||||
There are a few differences, compared to [`disabled()`](getting-started#disabling-a-field):
|
||||
|
||||
- When using `readOnly()`, the field will still be sent to the server when the form is submitted. It can be mutated with the browser console, or via JavaScript. You can use [`dehydrated(false)`](advanced#preventing-a-field-from-being-dehydrated) to prevent this.
|
||||
- When using `readOnly()`, the field will still be sent to the server when the form is submitted. It can be mutated with the browser console, or via JavaScript. You can use [`dehydrated(false)`](../advanced#preventing-a-field-from-being-dehydrated) to prevent this.
|
||||
- There are no styling changes, such as less opacity, when using `readOnly()`.
|
||||
- The field is still focusable when using `readOnly()`.
|
||||
|
||||
|
||||
@@ -227,7 +227,7 @@ Section::make('Comments')
|
||||
```php
|
||||
use function Pest\Livewire\livewire;
|
||||
|
||||
test('comments section exists' function () {
|
||||
test('comments section exists', function () {
|
||||
livewire(EditPost::class)
|
||||
->assertFormComponentExists('comments-section');
|
||||
});
|
||||
@@ -251,7 +251,7 @@ use Filament\Forms\Components\Component;
|
||||
|
||||
use function Pest\Livewire\livewire;
|
||||
|
||||
test('comments section has heading' function () {
|
||||
test('comments section has heading', function () {
|
||||
livewire(EditPost::class)
|
||||
->assertFormComponentExists(
|
||||
'comments-section',
|
||||
@@ -270,7 +270,7 @@ use Illuminate\Testing\Assert;
|
||||
|
||||
use function Pest\Livewire\livewire;
|
||||
|
||||
test('comments section is enabled' function () {
|
||||
test('comments section is enabled', function () {
|
||||
livewire(EditPost::class)
|
||||
->assertFormComponentExists(
|
||||
'comments-section',
|
||||
|
||||
@@ -57,6 +57,7 @@ export default function fileUploadFormComponent({
|
||||
maxFiles,
|
||||
maxSize,
|
||||
minSize,
|
||||
maxParallelUploads,
|
||||
panelAspectRatio,
|
||||
panelLayout,
|
||||
placeholder,
|
||||
@@ -122,6 +123,7 @@ export default function fileUploadFormComponent({
|
||||
maxFiles,
|
||||
maxFileSize: maxSize,
|
||||
minFileSize: minSize,
|
||||
...(maxParallelUploads && { maxParallelUploads }),
|
||||
styleButtonProcessItemPosition: uploadButtonPosition,
|
||||
styleButtonRemoveItemPosition: removeUploadedFileButtonPosition,
|
||||
styleItemPanelAspectRatio: itemPanelAspectRatio,
|
||||
|
||||
@@ -404,6 +404,8 @@ return [
|
||||
|
||||
'create_option' => [
|
||||
|
||||
'label' => 'إضافة',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'إضافة',
|
||||
@@ -426,6 +428,8 @@ return [
|
||||
|
||||
'edit_option' => [
|
||||
|
||||
'label' => 'تعديل',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'تحرير',
|
||||
|
||||
@@ -408,6 +408,8 @@ return [
|
||||
|
||||
'create_option' => [
|
||||
|
||||
'label' => 'Create',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Create',
|
||||
@@ -430,6 +432,8 @@ return [
|
||||
|
||||
'edit_option' => [
|
||||
|
||||
'label' => 'Edit',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Edit',
|
||||
|
||||
@@ -12,16 +12,64 @@ return [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Dodaj na :label',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Dodaj na :label',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Dodaj',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
],
|
||||
|
||||
'add_between' => [
|
||||
'label' => 'Umetni između blokova',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Dodaj na :label',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Dodaj',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
],
|
||||
|
||||
'delete' => [
|
||||
'label' => 'Obriši',
|
||||
],
|
||||
|
||||
'edit' => [
|
||||
|
||||
'label' => 'Uredi',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Uredi blok',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'save' => [
|
||||
'label' => 'Spremi promjene',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'reorder' => [
|
||||
'label' => 'Pomakni',
|
||||
],
|
||||
@@ -117,11 +165,11 @@ return [
|
||||
],
|
||||
|
||||
'rotate_left' => [
|
||||
'label' => 'Rotiraj sliku ulijevo',
|
||||
'label' => 'Zaokreni sliku ulijevo',
|
||||
],
|
||||
|
||||
'rotate_right' => [
|
||||
'label' => 'Rotiraj sliku udesno',
|
||||
'label' => 'Zaokreni sliku udesno',
|
||||
],
|
||||
|
||||
'set_aspect_ratio' => [
|
||||
@@ -133,7 +181,7 @@ return [
|
||||
],
|
||||
|
||||
'zoom_100' => [
|
||||
'label' => 'Zumiraj sliku na 100%',
|
||||
'label' => 'Uvećaj sliku na 100%',
|
||||
],
|
||||
|
||||
'zoom_in' => [
|
||||
@@ -185,6 +233,15 @@ return [
|
||||
|
||||
],
|
||||
|
||||
'svg' => [
|
||||
|
||||
'messages' => [
|
||||
'confirmation' => 'Obrađivanje SVG datoteka nije preporučljivo i može dovesti do gubitka kvalitete kada se skalira.\n Jesi li siguran da želiš nastaviti?',
|
||||
'disabled' => 'Onemogućena je obrada SVG datoteka jer može dovesti do gubitka kvalitete kada se skalira.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
@@ -225,10 +282,10 @@ return [
|
||||
|
||||
'toolbar_buttons' => [
|
||||
'attach_files' => 'Dodaj datoteke',
|
||||
'blockquote' => 'Blockquote',
|
||||
'blockquote' => 'Blok citat',
|
||||
'bold' => 'Podebljano',
|
||||
'bullet_list' => 'Lista',
|
||||
'code_block' => 'Blok koda',
|
||||
'code_block' => 'Blok kôda',
|
||||
'heading' => 'Zaglavlje',
|
||||
'italic' => 'Kurziv',
|
||||
'link' => 'Poveznica',
|
||||
@@ -241,6 +298,15 @@ return [
|
||||
|
||||
],
|
||||
|
||||
'radio' => [
|
||||
|
||||
'boolean' => [
|
||||
'true' => 'Da',
|
||||
'false' => 'Ne',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'repeater' => [
|
||||
|
||||
'actions' => [
|
||||
@@ -249,6 +315,10 @@ return [
|
||||
'label' => 'Dodaj na :label',
|
||||
],
|
||||
|
||||
'add_between' => [
|
||||
'label' => 'Umetni između',
|
||||
],
|
||||
|
||||
'delete' => [
|
||||
'label' => 'Obriši',
|
||||
],
|
||||
@@ -310,10 +380,10 @@ return [
|
||||
|
||||
'toolbar_buttons' => [
|
||||
'attach_files' => 'Dodaj datoteke',
|
||||
'blockquote' => 'Blockquote',
|
||||
'blockquote' => 'Blok citat',
|
||||
'bold' => 'Podebljano',
|
||||
'bullet_list' => 'Lista',
|
||||
'code_block' => 'Blok koda',
|
||||
'code_block' => 'Blok kôda',
|
||||
'h1' => 'Naslov',
|
||||
'h2' => 'Zaglavlje',
|
||||
'h3' => 'Podnaslov',
|
||||
@@ -345,7 +415,7 @@ return [
|
||||
],
|
||||
|
||||
'create_another' => [
|
||||
'label' => 'Napravi i napravi drugi',
|
||||
'label' => 'Napravi i dodaj još jedan',
|
||||
],
|
||||
|
||||
],
|
||||
@@ -383,18 +453,43 @@ return [
|
||||
|
||||
'max_items_message' => 'Samo :count može biti odabrano.',
|
||||
|
||||
'no_search_results_message' => 'Nema opcija koje odgovaraju vašem pretraživanju.',
|
||||
'no_search_results_message' => 'Nema opcija koje odgovaraju tvojem pretraživanju.',
|
||||
|
||||
'placeholder' => 'Odaberi opciju',
|
||||
|
||||
'searching_message' => 'Pretraživanje...',
|
||||
|
||||
'search_prompt' => 'Počnite tipkati za pretragu...',
|
||||
'search_prompt' => 'Počni tipkati za pretragu...',
|
||||
|
||||
],
|
||||
|
||||
'tags_input' => [
|
||||
'placeholder' => 'Novi tag',
|
||||
'placeholder' => 'Nova oznaka',
|
||||
],
|
||||
|
||||
'text_input' => [
|
||||
|
||||
'actions' => [
|
||||
|
||||
'hide_password' => [
|
||||
'label' => 'Sakrij lozinku',
|
||||
],
|
||||
|
||||
'show_password' => [
|
||||
'label' => 'Prikaži lozinku',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'toggle_buttons' => [
|
||||
|
||||
'boolean' => [
|
||||
'true' => 'Da',
|
||||
'false' => 'Ne',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'wizard' => [
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'distinct' => [
|
||||
'must_be_selected' => 'Najmanje jedan :attribute mora biti odabran.',
|
||||
'only_one_must_be_selected' => 'Samo jedan :attribute može biti odabrab.',
|
||||
],
|
||||
|
||||
];
|
||||
@@ -12,16 +12,44 @@ return [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Új :label',
|
||||
'modal' => [
|
||||
'heading' => 'Új :label',
|
||||
'actions' => [
|
||||
'add' => [
|
||||
'label' => 'Új',
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'add_between' => [
|
||||
'label' => 'Beillesztés blokkok közé',
|
||||
'modal' => [
|
||||
'heading' => 'Új :label',
|
||||
'actions' => [
|
||||
'add' => [
|
||||
'label' => 'Új',
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'delete' => [
|
||||
'label' => 'Törlés',
|
||||
],
|
||||
|
||||
'edit' => [
|
||||
'label' => 'Szerkesztés',
|
||||
'modal' => [
|
||||
'heading' => 'Blokk szerkesztése',
|
||||
'actions' => [
|
||||
'save' => [
|
||||
'label' => 'Változtatások mentése',
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'reorder' => [
|
||||
'label' => 'Mozgatás',
|
||||
],
|
||||
@@ -405,7 +433,7 @@ return [
|
||||
|
||||
'max_items_message' => 'Csak :count elem választható ki.',
|
||||
|
||||
'no_search_results_message' => 'Nincs találat',
|
||||
'no_search_results_message' => 'Nincs találat.',
|
||||
|
||||
'placeholder' => 'Válassz ki egy elemet',
|
||||
|
||||
|
||||
@@ -6,16 +6,80 @@ return [
|
||||
|
||||
'actions' => [
|
||||
|
||||
'clone' => [
|
||||
'label' => 'Կրկնօրինակել',
|
||||
],
|
||||
|
||||
'add' => [
|
||||
'label' => 'Ավելացնել :label',
|
||||
|
||||
'label' => 'Ավելացնել:label',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Ավելացնել :label',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Ավելացնել',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'add_between' => [
|
||||
|
||||
'label' => 'Տեղադրել բլոկների միջև',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Ավելացնել :label',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Ավելացնել',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'delete' => [
|
||||
'label' => 'Ջնջել',
|
||||
],
|
||||
|
||||
'edit' => [
|
||||
|
||||
'label' => 'Խմբագրել',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Խմբագրել բլոկը',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'save' => [
|
||||
'label' => 'Պահպանել փոփոխությունները',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'reorder' => [
|
||||
'label' => 'Վերադասավորել',
|
||||
],
|
||||
|
||||
'move_down' => [
|
||||
'label' => 'Իջեցնել',
|
||||
'label' => 'Իջացնել',
|
||||
],
|
||||
|
||||
'move_up' => [
|
||||
@@ -42,6 +106,150 @@ return [
|
||||
|
||||
],
|
||||
|
||||
'checkbox_list' => [
|
||||
|
||||
'actions' => [
|
||||
|
||||
'deselect_all' => [
|
||||
'label' => 'Ապանշել բոլորը',
|
||||
],
|
||||
|
||||
'select_all' => [
|
||||
'label' => 'Ընտրել բոլորը',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'file_upload' => [
|
||||
|
||||
'editor' => [
|
||||
|
||||
'actions' => [
|
||||
|
||||
'cancel' => [
|
||||
'label' => 'Չեղարկել',
|
||||
],
|
||||
|
||||
'drag_crop' => [
|
||||
'label' => 'Քաշեք և թողեք «կտրել» ռեժիմը',
|
||||
],
|
||||
|
||||
'drag_move' => [
|
||||
'label' => 'Քաշեք և թողեք «տեղափոխել» ռեժիմը',
|
||||
],
|
||||
|
||||
'flip_horizontal' => [
|
||||
'label' => 'Պատկերը հորիզոնական շրջել',
|
||||
],
|
||||
|
||||
'flip_vertical' => [
|
||||
'label' => 'Պատկերը ուղղահայաց շրջել',
|
||||
],
|
||||
|
||||
'move_down' => [
|
||||
'label' => 'Պատկերը տեղափոխել ներքև',
|
||||
],
|
||||
|
||||
'move_left' => [
|
||||
'label' => 'Պատկերը տեղափոխել ձախ',
|
||||
],
|
||||
|
||||
'move_right' => [
|
||||
'label' => 'Պատկերը տեղափոխել աջ',
|
||||
],
|
||||
|
||||
'move_up' => [
|
||||
'label' => 'Պատկերը տեղափոխել վերև',
|
||||
],
|
||||
|
||||
'reset' => [
|
||||
'label' => 'Վերականգնել',
|
||||
],
|
||||
|
||||
'rotate_left' => [
|
||||
'label' => 'Պատկերը պտտել ձախ',
|
||||
],
|
||||
|
||||
'rotate_right' => [
|
||||
'label' => 'Պատկերը պտտել աջ',
|
||||
],
|
||||
|
||||
'set_aspect_ratio' => [
|
||||
'label' => 'Սահմանել կողմերի հարաբերակցությունը այնպես, որ',
|
||||
],
|
||||
|
||||
'save' => [
|
||||
'label' => 'Պահպանել',
|
||||
],
|
||||
|
||||
'zoom_100' => [
|
||||
'label' => 'Պատկերը մեծացնել 100%-ի',
|
||||
],
|
||||
|
||||
'zoom_in' => [
|
||||
'label' => 'Մեծացնել',
|
||||
],
|
||||
|
||||
'zoom_out' => [
|
||||
'label' => 'Փոքրացնել',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
|
||||
'height' => [
|
||||
'label' => 'Բարձր.',
|
||||
'unit' => 'փիքսել',
|
||||
],
|
||||
|
||||
'rotation' => [
|
||||
'label' => 'Պտույտ',
|
||||
'unit' => 'աստ.',
|
||||
],
|
||||
|
||||
'width' => [
|
||||
'label' => 'Լայն.',
|
||||
'unit' => 'փիքսել',
|
||||
],
|
||||
|
||||
'x_position' => [
|
||||
'label' => 'X',
|
||||
'unit' => 'փքս',
|
||||
],
|
||||
|
||||
'y_position' => [
|
||||
'label' => 'Y',
|
||||
'unit' => 'փքս',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'aspect_ratios' => [
|
||||
|
||||
'label' => 'Կողմերի հարաբերակցություններ',
|
||||
|
||||
'no_fixed' => [
|
||||
'label' => 'Ազատ',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'svg' => [
|
||||
|
||||
'messages' => [
|
||||
'confirmation' => 'SVG ֆայլերը խմբագրելը խորհուրդ չի տրվում, քանի որ դա կարող է հանգեցնել որակի կորստի, երբ այն մասշտաբավորվում է:',
|
||||
'disabled' => 'SVG ֆայլերի խմբագրումն անջատված է, քանի որ դա կարող է հանգեցնել որակի կորստի, երբ մասշտաբավորվում է:',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'key_value' => [
|
||||
|
||||
'actions' => [
|
||||
@@ -54,6 +262,10 @@ return [
|
||||
'label' => 'Ջնջել տողը',
|
||||
],
|
||||
|
||||
'reorder' => [
|
||||
'label' => 'Վերադասավորել տողերը',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
@@ -74,15 +286,27 @@ return [
|
||||
|
||||
'toolbar_buttons' => [
|
||||
'attach_files' => 'Կցել ֆայլեր',
|
||||
'bold' => 'Bold',
|
||||
'bullet_list' => 'Bullet list',
|
||||
'code_block' => 'Կոդի բլոկ',
|
||||
'edit' => 'Խմբագրել',
|
||||
'italic' => 'Շեղագիր',
|
||||
'blockquote' => 'Մեջբերում',
|
||||
'bold' => 'Թավ',
|
||||
'bullet_list' => 'Կետային ցուցակ',
|
||||
'code_block' => 'Կոդային բլոկ',
|
||||
'heading' => 'Վերնագիր',
|
||||
'italic' => 'Շեղատառ',
|
||||
'link' => 'Հղում',
|
||||
'ordered_list' => 'Համարակալված ցուցակ',
|
||||
'preview' => 'Նախադիտում',
|
||||
'strike' => 'Strikethrough',
|
||||
'redo' => 'Վերափոխել',
|
||||
'strike' => 'Խաչված',
|
||||
'table' => 'Աղյուսակ',
|
||||
'undo' => 'Հետարկել',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'radio' => [
|
||||
|
||||
'boolean' => [
|
||||
'true' => 'Այո',
|
||||
'false' => 'Ոչ',
|
||||
],
|
||||
|
||||
],
|
||||
@@ -92,15 +316,27 @@ return [
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Ավելացնել :label',
|
||||
'label' => 'Ավելացնել:label',
|
||||
],
|
||||
|
||||
'add_between' => [
|
||||
'label' => 'Տեղադրել միջև',
|
||||
],
|
||||
|
||||
'delete' => [
|
||||
'label' => 'Ջնջել',
|
||||
],
|
||||
|
||||
'clone' => [
|
||||
'label' => 'Կրկնօրինակել',
|
||||
],
|
||||
|
||||
'reorder' => [
|
||||
'label' => 'Վերադասավորել',
|
||||
],
|
||||
|
||||
'move_down' => [
|
||||
'label' => 'Իջեցնել',
|
||||
'label' => 'Իջացնել',
|
||||
],
|
||||
|
||||
'move_up' => [
|
||||
@@ -112,7 +348,7 @@ return [
|
||||
],
|
||||
|
||||
'expand' => [
|
||||
'label' => 'Ընդարձակել',
|
||||
'label' => 'Ընդլայնել',
|
||||
],
|
||||
|
||||
'collapse_all' => [
|
||||
@@ -120,7 +356,7 @@ return [
|
||||
],
|
||||
|
||||
'expand_all' => [
|
||||
'label' => 'Ընդարձակել բոլորը',
|
||||
'label' => 'Ընդլայնել բոլորը',
|
||||
],
|
||||
|
||||
],
|
||||
@@ -135,12 +371,12 @@ return [
|
||||
|
||||
'actions' => [
|
||||
'link' => 'Հղում',
|
||||
'unlink' => 'Չեղարկել հղումը',
|
||||
'unlink' => 'Անջատել',
|
||||
],
|
||||
|
||||
'label' => 'URL',
|
||||
|
||||
'placeholder' => 'Մուտքագրեք URL',
|
||||
'placeholder' => 'Մուտքագրեք URL-ը',
|
||||
|
||||
],
|
||||
|
||||
@@ -148,18 +384,19 @@ return [
|
||||
|
||||
'toolbar_buttons' => [
|
||||
'attach_files' => 'Կցել ֆայլեր',
|
||||
'blockquote' => 'Արգելափակման մեջբերում',
|
||||
'bold' => 'Bold',
|
||||
'bullet_list' => 'Bullet list',
|
||||
'code_block' => 'Կոդի բլոկ',
|
||||
'blockquote' => 'Մեջբերում բլոկից',
|
||||
'bold' => 'Թավ',
|
||||
'bullet_list' => 'Կետավոր ցանկ',
|
||||
'code_block' => 'Կոդային բլոկ',
|
||||
'h1' => 'Անվանում',
|
||||
'h2' => 'Վերնագիր',
|
||||
'h3' => 'Ենթավերնագիր',
|
||||
'italic' => 'Շեղագիր',
|
||||
'italic' => 'Շեղատառ',
|
||||
'link' => 'Հղում',
|
||||
'ordered_list' => 'Համարակալված ցուցակ',
|
||||
'redo' => 'Կրկնել',
|
||||
'strike' => 'Strikethrough',
|
||||
'redo' => 'Վերափոխել',
|
||||
'strike' => 'Խաչված',
|
||||
'underline' => 'Ընդգծել',
|
||||
'undo' => 'Չեղարկել',
|
||||
],
|
||||
|
||||
@@ -171,6 +408,8 @@ return [
|
||||
|
||||
'create_option' => [
|
||||
|
||||
'label' => 'Ստեղծել',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Ստեղծել',
|
||||
@@ -181,6 +420,30 @@ return [
|
||||
'label' => 'Ստեղծել',
|
||||
],
|
||||
|
||||
'create_another' => [
|
||||
'label' => 'Ստեղծել և ստեղծել մեկ այլ',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'edit_option' => [
|
||||
|
||||
'label' => 'Խմբագրել',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Խմբագրել',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'save' => [
|
||||
'label' => 'Պահպանել',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
@@ -194,11 +457,13 @@ return [
|
||||
'false' => 'Ոչ',
|
||||
],
|
||||
|
||||
'loading_message' => 'Բեռնվում է...',
|
||||
'loading_message' => 'Բեռնում...',
|
||||
|
||||
'no_search_results_message' => 'Ոչ մի տարբերակ չի համապատասխանում ձեր որոնմանը։',
|
||||
'max_items_message' => 'Կարող եք :count ընտրել միայն մեկը:',
|
||||
|
||||
'placeholder' => 'Ընտրեք տարբերակ',
|
||||
'no_search_results_message' => 'Ոչ մի տվյալ չի համապատասխանում ձեր հարցմանը:',
|
||||
|
||||
'placeholder' => 'Ընտրեք ցանկալի հարցում',
|
||||
|
||||
'searching_message' => 'Որոնում...',
|
||||
|
||||
@@ -207,7 +472,32 @@ return [
|
||||
],
|
||||
|
||||
'tags_input' => [
|
||||
'placeholder' => 'Նոր հատկորոշում',
|
||||
'placeholder' => 'Նոր պիտակ',
|
||||
],
|
||||
|
||||
'text_input' => [
|
||||
|
||||
'actions' => [
|
||||
|
||||
'hide_password' => [
|
||||
'label' => 'Թաքցնել գաղտնաբառը',
|
||||
],
|
||||
|
||||
'show_password' => [
|
||||
'label' => 'Ցույց տալ գաղտնաբառը',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'toggle_buttons' => [
|
||||
|
||||
'boolean' => [
|
||||
'true' => 'Այո',
|
||||
'false' => 'Ոչ',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'wizard' => [
|
||||
@@ -215,7 +505,7 @@ return [
|
||||
'actions' => [
|
||||
|
||||
'previous_step' => [
|
||||
'label' => 'Ետ',
|
||||
'label' => 'Նախորդը',
|
||||
],
|
||||
|
||||
'next_step' => [
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'distinct' => [
|
||||
'must_be_selected' => 'Առնվազն մեկ :attribute դաշտ պետք է ընտրվի։',
|
||||
'only_one_must_be_selected' => 'Պետք է ընտրվի միայն մեկ :attribute դաշտ։',
|
||||
],
|
||||
|
||||
];
|
||||
@@ -407,6 +407,7 @@ return [
|
||||
'actions' => [
|
||||
|
||||
'create_option' => [
|
||||
'label' => 'Cipta',
|
||||
|
||||
'modal' => [
|
||||
|
||||
@@ -429,6 +430,7 @@ return [
|
||||
],
|
||||
|
||||
'edit_option' => [
|
||||
'label' => 'Sunting',
|
||||
|
||||
'modal' => [
|
||||
|
||||
|
||||
@@ -408,6 +408,8 @@ return [
|
||||
|
||||
'create_option' => [
|
||||
|
||||
'label' => 'Aanmaken',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Aanmaken',
|
||||
@@ -430,6 +432,8 @@ return [
|
||||
|
||||
'edit_option' => [
|
||||
|
||||
'label' => 'Bewerken',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Bewerken',
|
||||
|
||||
@@ -11,17 +11,69 @@ return [
|
||||
],
|
||||
|
||||
'add' => [
|
||||
|
||||
'label' => 'Dodaj do :label',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Dodaj do :label',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Dodaj',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'add_between' => [
|
||||
'label' => 'Wstaw',
|
||||
|
||||
'label' => 'Wstaw pomiędzy',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Dodaj do :label',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Dodaj',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'delete' => [
|
||||
'label' => 'Usuń',
|
||||
],
|
||||
|
||||
'edit' => [
|
||||
|
||||
'label' => 'Edytuj',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Edytuj blok',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'save' => [
|
||||
'label' => 'Zapisz zmiany',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'reorder' => [
|
||||
'label' => 'Przesuń',
|
||||
],
|
||||
@@ -185,6 +237,15 @@ return [
|
||||
|
||||
],
|
||||
|
||||
'svg' => [
|
||||
|
||||
'messages' => [
|
||||
'confirmation' => 'Edycja plików SVG nie jest zalecana, ponieważ może to prowadzić do utraty jakości podczas skalowania.\n Czy na pewno chcesz kontynuować?',
|
||||
'disabled' => 'Edycja plików SVG jest wyłączona, ponieważ może to prowadzić do utraty jakości podczas skalowania.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
@@ -241,6 +302,15 @@ return [
|
||||
|
||||
],
|
||||
|
||||
'radio' => [
|
||||
|
||||
'boolean' => [
|
||||
'true' => 'Tak',
|
||||
'false' => 'Nie',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'repeater' => [
|
||||
|
||||
'actions' => [
|
||||
@@ -249,6 +319,10 @@ return [
|
||||
'label' => 'Dodaj do :label',
|
||||
],
|
||||
|
||||
'add_between' => [
|
||||
'label' => 'Dodaj pomiędzy',
|
||||
],
|
||||
|
||||
'delete' => [
|
||||
'label' => 'Usuń',
|
||||
],
|
||||
@@ -334,6 +408,8 @@ return [
|
||||
|
||||
'create_option' => [
|
||||
|
||||
'label' => 'Utwórz',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Utwórz',
|
||||
@@ -356,6 +432,8 @@ return [
|
||||
|
||||
'edit_option' => [
|
||||
|
||||
'label' => 'Edytuj',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Edytuj',
|
||||
@@ -397,6 +475,31 @@ return [
|
||||
'placeholder' => 'Nowy tag',
|
||||
],
|
||||
|
||||
'text_input' => [
|
||||
|
||||
'actions' => [
|
||||
|
||||
'hide_password' => [
|
||||
'label' => 'Ukryj hasło',
|
||||
],
|
||||
|
||||
'show_password' => [
|
||||
'label' => 'Pokaż hasło',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'toggle_buttons' => [
|
||||
|
||||
'boolean' => [
|
||||
'true' => 'Tak',
|
||||
'false' => 'Nie',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'wizard' => [
|
||||
|
||||
'actions' => [
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'distinct' => [
|
||||
'must_be_selected' => 'Przynajmniej jedno pole :attribute musi być zaznaczone.',
|
||||
'only_one_must_be_selected' => 'Tylko jedno pole :attribute musi być zaznaczone.',
|
||||
],
|
||||
|
||||
];
|
||||
@@ -404,6 +404,8 @@ return [
|
||||
|
||||
'create_option' => [
|
||||
|
||||
'label' => 'Створити',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Створити',
|
||||
@@ -425,6 +427,8 @@ return [
|
||||
|
||||
'edit_option' => [
|
||||
|
||||
'label' => 'Змінити',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Змінити',
|
||||
|
||||
@@ -12,16 +12,64 @@ return [
|
||||
|
||||
'add' => [
|
||||
'label' => ':labelga qo\'shish',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => ':labelga qo\'shish',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Qo\'shish',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
],
|
||||
|
||||
'add_between' => [
|
||||
'label' => 'Orasiga kiritish',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => ':labelga qo\'shish',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'add' => [
|
||||
'label' => 'Qo\'shish',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
],
|
||||
|
||||
'delete' => [
|
||||
'label' => 'O\'chirish',
|
||||
],
|
||||
|
||||
'edit' => [
|
||||
|
||||
'label' => 'O\'zgartirish',
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'O\'zgartirish',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'save' => [
|
||||
'label' => 'O\'zgarishlarni saqlash',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'reorder' => [
|
||||
'label' => 'Ko\'chirish',
|
||||
],
|
||||
@@ -406,6 +454,31 @@ return [
|
||||
'placeholder' => 'Yangi teg',
|
||||
],
|
||||
|
||||
'text_input' => [
|
||||
|
||||
'actions' => [
|
||||
|
||||
'hide_password' => [
|
||||
'label' => 'Parolni yashirish',
|
||||
],
|
||||
|
||||
'show_password' => [
|
||||
'label' => 'Parolni ko\'rsatish',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'toggle_buttons' => [
|
||||
|
||||
'boolean' => [
|
||||
'true' => 'Ha',
|
||||
'false' => 'Yo\'q',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'wizard' => [
|
||||
|
||||
'actions' => [
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
aria-label="{{ $getPlaceholder() }}"
|
||||
type="button"
|
||||
tabindex="-1"
|
||||
@disabled($isDisabled)
|
||||
@disabled($isDisabled || $isReadOnly())
|
||||
{{
|
||||
$getExtraTriggerAttributeBag()->class([
|
||||
'w-full',
|
||||
|
||||
@@ -71,6 +71,7 @@
|
||||
maxFiles: @js($getMaxFiles()),
|
||||
maxSize: @js(($size = $getMaxSize()) ? "{$size}KB" : null),
|
||||
minSize: @js(($size = $getMinSize()) ? "{$size}KB" : null),
|
||||
maxParallelUploads: @js($getMaxParallelUploads()),
|
||||
removeUploadedFileUsing: async (fileKey) => {
|
||||
return await $wire.removeFormUploadedFile(@js($statePath), fileKey)
|
||||
},
|
||||
|
||||
@@ -1,4 +1,12 @@
|
||||
<div>
|
||||
<div
|
||||
{{
|
||||
$attributes
|
||||
->merge([
|
||||
'id' => $getId(),
|
||||
], escape: false)
|
||||
->merge($getExtraAttributes(), escape: false)
|
||||
}}
|
||||
>
|
||||
@if (filled($key = $getKey()))
|
||||
@livewire($getComponent(), $getComponentProperties(), key($key))
|
||||
@else
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
|
||||
<x-slot
|
||||
name="deleteButton"
|
||||
x-on:click="deleteTag(tag)"
|
||||
x-on:click.stop="deleteTag(tag)"
|
||||
></x-slot>
|
||||
</x-filament::badge>
|
||||
</template>
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
@if ($datalistOptions)
|
||||
<datalist id="{{ $id }}-list">
|
||||
@foreach ($datalistOptions as $option)
|
||||
<option value="{{ $option }}" />
|
||||
<option value="{{ $option }}"></option>
|
||||
@endforeach
|
||||
</datalist>
|
||||
@endif
|
||||
|
||||
@@ -292,12 +292,12 @@
|
||||
)
|
||||
"
|
||||
@endif
|
||||
x-show="! isLastStep()"
|
||||
x-bind:class="{ 'hidden': isLastStep(), 'block': !isLastStep() }"
|
||||
>
|
||||
{{ $nextAction }}
|
||||
</span>
|
||||
|
||||
<span x-show="isLastStep()">
|
||||
<span x-bind:class="{ 'hidden': !isLastStep(), 'block': isLastStep() }">
|
||||
{{ $getSubmitAction() }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -46,6 +46,8 @@ class BaseFileUpload extends Field implements Contracts\HasNestedRecursiveValida
|
||||
|
||||
protected int | Closure | null $minSize = null;
|
||||
|
||||
protected int | Closure | null $maxParallelUploads = null;
|
||||
|
||||
protected int | Closure | null $maxFiles = null;
|
||||
|
||||
protected int | Closure | null $minFiles = null;
|
||||
@@ -393,6 +395,13 @@ class BaseFileUpload extends Field implements Contracts\HasNestedRecursiveValida
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function maxParallelUploads(int | Closure | null $count): static
|
||||
{
|
||||
$this->maxParallelUploads = $count;
|
||||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function maxFiles(int | Closure | null $count): static
|
||||
{
|
||||
$this->maxFiles = $count;
|
||||
@@ -540,6 +549,11 @@ class BaseFileUpload extends Field implements Contracts\HasNestedRecursiveValida
|
||||
return $this->evaluate($this->minSize);
|
||||
}
|
||||
|
||||
public function getMaxParallelUploads(): ?int
|
||||
{
|
||||
return $this->evaluate($this->maxParallelUploads);
|
||||
}
|
||||
|
||||
public function getVisibility(): string
|
||||
{
|
||||
return $this->evaluate($this->visibility);
|
||||
|
||||
@@ -3,15 +3,23 @@
|
||||
namespace Filament\Forms\Components\Concerns;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Collection;
|
||||
|
||||
trait CanDisableOptions
|
||||
{
|
||||
protected bool | Closure | null $isOptionDisabled = null;
|
||||
/**
|
||||
* @var array<bool | Closure>
|
||||
*/
|
||||
protected array $isOptionDisabled = [];
|
||||
|
||||
public function disableOptionWhen(bool | Closure $callback): static
|
||||
public function disableOptionWhen(bool | Closure | null $callback, bool $merge = false): static
|
||||
{
|
||||
$this->isOptionDisabled = $callback;
|
||||
if ($merge) {
|
||||
$this->isOptionDisabled[] = $callback;
|
||||
} else {
|
||||
$this->isOptionDisabled = Arr::wrap($callback);
|
||||
}
|
||||
|
||||
return $this;
|
||||
}
|
||||
@@ -38,18 +46,16 @@ trait CanDisableOptions
|
||||
*/
|
||||
public function isOptionDisabled($value, string $label): bool
|
||||
{
|
||||
if ($this->isOptionDisabled === null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return (bool) $this->evaluate($this->isOptionDisabled, [
|
||||
'label' => $label,
|
||||
'value' => $value,
|
||||
]);
|
||||
return collect($this->isOptionDisabled)
|
||||
->contains(fn (bool | Closure $isOptionDisabled): bool => (bool) $this->evaluate($isOptionDisabled, [
|
||||
'label' => $label,
|
||||
'value' => $value,
|
||||
]));
|
||||
}
|
||||
|
||||
public function hasDynamicDisabledOptions(): bool
|
||||
{
|
||||
return $this->isOptionDisabled instanceof Closure;
|
||||
return collect($this->isOptionDisabled)
|
||||
->contains(fn (bool | Closure $isOptionDisabled): bool => $isOptionDisabled instanceof Closure);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\Relations\HasManyThrough;
|
||||
use Illuminate\Database\Eloquent\Relations\HasOne;
|
||||
use Illuminate\Database\Eloquent\Relations\HasOneOrMany;
|
||||
use Illuminate\Database\Eloquent\Relations\HasOneOrManyThrough;
|
||||
use Illuminate\Database\Eloquent\Relations\Relation;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Str;
|
||||
@@ -275,6 +276,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has
|
||||
}
|
||||
|
||||
$action = Action::make($this->getCreateOptionActionName())
|
||||
->label(__('filament-forms::components.select.actions.create_option.label'))
|
||||
->form(function (Select $component, Form $form): array | Form | null {
|
||||
return $component->getCreateOptionActionForm($form->model(
|
||||
$component->getRelationship() ? $component->getRelationship()->getModel()::class : null,
|
||||
@@ -429,6 +431,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has
|
||||
}
|
||||
|
||||
$action = Action::make($this->getEditOptionActionName())
|
||||
->label(__('filament-forms::components.select.actions.edit_option.label'))
|
||||
->form(function (Select $component, Form $form): array | Form | null {
|
||||
return $component->getEditOptionActionForm(
|
||||
$form->model($component->getSelectedRecord()),
|
||||
@@ -814,7 +817,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has
|
||||
|
||||
if (
|
||||
($relationship instanceof BelongsToMany) ||
|
||||
($relationship instanceof HasManyThrough)
|
||||
($relationship instanceof (class_exists(HasOneOrManyThrough::class) ? HasOneOrManyThrough::class : HasManyThrough::class))
|
||||
) {
|
||||
if ($modifyQueryUsing) {
|
||||
$component->evaluate($modifyQueryUsing, [
|
||||
@@ -987,7 +990,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has
|
||||
|
||||
if (
|
||||
($relationship instanceof HasOneOrMany) ||
|
||||
($relationship instanceof HasManyThrough) ||
|
||||
($relationship instanceof (class_exists(HasOneOrManyThrough::class) ? HasOneOrManyThrough::class : HasManyThrough::class)) ||
|
||||
($relationship instanceof BelongsToThrough)
|
||||
) {
|
||||
return;
|
||||
@@ -1142,7 +1145,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has
|
||||
return parent::getLabel();
|
||||
}
|
||||
|
||||
public function getRelationship(): BelongsTo | BelongsToMany | HasOneOrMany | HasManyThrough | BelongsToThrough | null
|
||||
public function getRelationship(): BelongsTo | BelongsToMany | HasOneOrMany | HasManyThrough | HasOneOrManyThrough | BelongsToThrough | null
|
||||
{
|
||||
if (blank($this->getRelationshipName())) {
|
||||
return null;
|
||||
@@ -1267,7 +1270,7 @@ class Select extends Field implements Contracts\CanDisableOptions, Contracts\Has
|
||||
return $relationship->getQualifiedRelatedKeyName();
|
||||
}
|
||||
|
||||
if ($relationship instanceof HasManyThrough) {
|
||||
if ($relationship instanceof (class_exists(HasOneOrManyThrough::class) ? HasOneOrManyThrough::class : HasManyThrough::class)) {
|
||||
return $relationship->getQualifiedForeignKeyName();
|
||||
}
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ class Tab extends Component implements CanConcealComponents
|
||||
final public function __construct(string $label)
|
||||
{
|
||||
$this->label($label);
|
||||
$this->id(Str::slug($label));
|
||||
$this->id(Str::slug(Str::transliterate($label, strict: true)));
|
||||
}
|
||||
|
||||
public static function make(string $label): static
|
||||
|
||||
@@ -27,7 +27,7 @@ class Step extends Component implements CanConcealComponents
|
||||
final public function __construct(string $label)
|
||||
{
|
||||
$this->label($label);
|
||||
$this->id(Str::slug($label));
|
||||
$this->id(Str::slug(Str::transliterate($label, strict: true)));
|
||||
}
|
||||
|
||||
public static function make(string $label): static
|
||||
|
||||
@@ -47,7 +47,7 @@ php artisan filament:install --infolists
|
||||
Run the following command to install Tailwind CSS with the Tailwind Forms and Typography plugins:
|
||||
|
||||
```bash
|
||||
npm install tailwindcss @tailwindcss/forms @tailwindcss/typography postcss postcss-nesting autoprefixer --save-dev
|
||||
npm install tailwindcss@3 @tailwindcss/forms @tailwindcss/typography postcss postcss-nesting autoprefixer --save-dev
|
||||
```
|
||||
|
||||
Create a new `tailwind.config.js` file and add the Filament `preset` *(includes the Filament color scheme and the required Tailwind plugins)*:
|
||||
|
||||
@@ -2,8 +2,37 @@
|
||||
|
||||
return [
|
||||
|
||||
'text_entry' => [
|
||||
'more_list_items' => 'i :count još',
|
||||
'entries' => [
|
||||
|
||||
'text' => [
|
||||
|
||||
'actions' => [
|
||||
'collapse_list' => 'Prikaži :count manje',
|
||||
'expand_list' => 'Prikaži :count više',
|
||||
],
|
||||
|
||||
'more_list_items' => 'and :count more',
|
||||
|
||||
],
|
||||
|
||||
'key_value' => [
|
||||
|
||||
'columns' => [
|
||||
|
||||
'key' => [
|
||||
'label' => 'Ključ',
|
||||
],
|
||||
|
||||
'value' => [
|
||||
'label' => 'Vrijednost',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'placeholder' => 'Nema unosa',
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
];
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'entries' => [
|
||||
|
||||
'text' => [
|
||||
|
||||
'actions' => [
|
||||
'collapse_list' => 'Ցույց տալ :count-ից ավելի քիչ',
|
||||
'expand_list' => 'Ցույց տալ :count-ից ավելին',
|
||||
],
|
||||
|
||||
'more_list_items' => 'և :count-ից ավելին',
|
||||
|
||||
],
|
||||
|
||||
'key_value' => [
|
||||
|
||||
'columns' => [
|
||||
|
||||
'key' => [
|
||||
'label' => 'Բանալի',
|
||||
],
|
||||
|
||||
'value' => [
|
||||
'label' => 'Արժեք',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'placeholder' => 'Գրառումներ չկան',
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
];
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'entries' => [
|
||||
|
||||
'text' => [
|
||||
|
||||
'actions' => [
|
||||
'collapse_list' => 'Pokaż :count mniej',
|
||||
'expand_list' => 'Pokaż :count więcej',
|
||||
],
|
||||
|
||||
'more_list_items' => 'dodaj :count więcej',
|
||||
|
||||
],
|
||||
|
||||
'key_value' => [
|
||||
|
||||
'columns' => [
|
||||
|
||||
'key' => [
|
||||
'label' => 'Klucz',
|
||||
],
|
||||
|
||||
'value' => [
|
||||
'label' => 'Wartość',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'placeholder' => 'Brak wpisów',
|
||||
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
];
|
||||
@@ -1,4 +1,12 @@
|
||||
<div>
|
||||
<div
|
||||
{{
|
||||
$attributes
|
||||
->merge([
|
||||
'id' => $getId(),
|
||||
], escape: false)
|
||||
->merge($getExtraAttributes(), escape: false)
|
||||
}}
|
||||
>
|
||||
@if (filled($key = $getKey()))
|
||||
@livewire($getComponent(), $getComponentProperties(), key($key))
|
||||
@else
|
||||
|
||||
@@ -20,7 +20,7 @@ class Tab extends Component
|
||||
final public function __construct(string $label)
|
||||
{
|
||||
$this->label($label);
|
||||
$this->id(Str::slug($label));
|
||||
$this->id(Str::slug(Str::transliterate($label, strict: true)));
|
||||
}
|
||||
|
||||
public static function make(string $label): static
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
@@ -45,7 +45,7 @@ php artisan filament:install --notifications
|
||||
Run the following command to install Tailwind CSS with the Tailwind Forms and Typography plugins:
|
||||
|
||||
```bash
|
||||
npm install tailwindcss @tailwindcss/forms @tailwindcss/typography postcss postcss-nesting autoprefixer --save-dev
|
||||
npm install tailwindcss@3 @tailwindcss/forms @tailwindcss/typography postcss postcss-nesting autoprefixer --save-dev
|
||||
```
|
||||
|
||||
Create a new `tailwind.config.js` file and add the Filament `preset` *(includes the Filament color scheme and the required Tailwind plugins)*:
|
||||
|
||||
@@ -86,38 +86,43 @@ export default (Alpine) => {
|
||||
return
|
||||
}
|
||||
|
||||
const getTop = () => this.$el.getBoundingClientRect().top
|
||||
const oldTop = getTop()
|
||||
// Calling `el.getBoundingClientRect()` from outside `requestAnimationFrame()` can
|
||||
// occasionally cause the page to scroll to the top.
|
||||
requestAnimationFrame(() => {
|
||||
const getTop = () =>
|
||||
this.$el.getBoundingClientRect().top
|
||||
const oldTop = getTop()
|
||||
|
||||
respond(() => {
|
||||
animation = () => {
|
||||
if (!this.isShown) {
|
||||
return
|
||||
respond(() => {
|
||||
animation = () => {
|
||||
if (!this.isShown) {
|
||||
return
|
||||
}
|
||||
|
||||
this.$el.animate(
|
||||
[
|
||||
{
|
||||
transform: `translateY(${
|
||||
oldTop - getTop()
|
||||
}px)`,
|
||||
},
|
||||
{ transform: 'translateY(0px)' },
|
||||
],
|
||||
{
|
||||
duration: this.transitionDuration,
|
||||
easing: this.transitionEasing,
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
this.$el.animate(
|
||||
[
|
||||
{
|
||||
transform: `translateY(${
|
||||
oldTop - getTop()
|
||||
}px)`,
|
||||
},
|
||||
{ transform: 'translateY(0px)' },
|
||||
],
|
||||
{
|
||||
duration: this.transitionDuration,
|
||||
easing: this.transitionEasing,
|
||||
},
|
||||
)
|
||||
}
|
||||
this.$el
|
||||
.getAnimations()
|
||||
.forEach((animation) => animation.finish())
|
||||
})
|
||||
|
||||
this.$el
|
||||
.getAnimations()
|
||||
.forEach((animation) => animation.finish())
|
||||
})
|
||||
|
||||
succeed(({ snapshot, effect }) => {
|
||||
animation()
|
||||
succeed(({ snapshot, effect }) => {
|
||||
animation()
|
||||
})
|
||||
})
|
||||
},
|
||||
)
|
||||
|
||||
@@ -20,7 +20,7 @@ return [
|
||||
|
||||
'empty' => [
|
||||
'heading' => 'Nema obavijesti',
|
||||
'description' => 'Molim provjerite ponovno kasnije.',
|
||||
'description' => 'Molim te, provjeri ponovno kasnije.',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'modal' => [
|
||||
|
||||
'heading' => 'Ծանուցումներ',
|
||||
|
||||
'actions' => [
|
||||
|
||||
'clear' => [
|
||||
'label' => 'Ջնջել',
|
||||
],
|
||||
|
||||
'mark_all_as_read' => [
|
||||
'label' => 'Նշել բոլորը որպես կարդացված',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
'empty' => [
|
||||
'heading' => 'Ոչ մի ծանուցում',
|
||||
'description' => 'Խնդրում ենք ավելի ուշ կրկին ստուգել։',
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
];
|
||||
@@ -9,7 +9,7 @@
|
||||
},
|
||||
"require": {
|
||||
"php": "^8.1",
|
||||
"danharrin/livewire-rate-limiting": "^0.3|^1.0",
|
||||
"danharrin/livewire-rate-limiting": "^0.3|^1.0|^2.0",
|
||||
"filament/actions": "self.version",
|
||||
"filament/forms": "self.version",
|
||||
"filament/infolists": "self.version",
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user