Compare commits
3 Commits
438e5a3f43
...
88fdc3aa7f
| Author | SHA1 | Date | |
|---|---|---|---|
| 88fdc3aa7f | |||
| 183916a62a | |||
| a9490e132d |
@@ -22,6 +22,7 @@ use Filament\Schemas\Components\Wizard\Step;
|
||||
use Filament\Schemas\Schema;
|
||||
use Filament\Support\Icons\Heroicon;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use RalphJSmit\Filament\Upload\Filament\Forms\Components\AdvancedFileUpload;
|
||||
|
||||
class VisaMasterPaymentOrderForm
|
||||
{
|
||||
|
||||
@@ -15,7 +15,10 @@ use Filament\Schemas\Components\Tabs;
|
||||
use Filament\Schemas\Components\Tabs\Tab;
|
||||
use Filament\Schemas\Schema;
|
||||
use Filament\Support\Icons\Heroicon;
|
||||
use Hugomyb\FilamentMediaAction\Actions\MediaAction;
|
||||
use Illuminate\Support\Str;
|
||||
use RalphJSmit\Filament\Upload\Filament\Forms\Components\AdvancedFileUpload;
|
||||
use RalphJSmit\Filament\Upload\Filament\Infolists\Entries\PdfEntry;
|
||||
|
||||
class VisaMasterPaymentOrderInfolist
|
||||
{
|
||||
@@ -70,36 +73,41 @@ class VisaMasterPaymentOrderInfolist
|
||||
Tab::make(__('Payment sender data'))
|
||||
->columns(8)
|
||||
->schema([
|
||||
TextEntry::make('sender_full_name')
|
||||
->label(__('Name, Surname, Patronic name'))
|
||||
->columnSpan(4)
|
||||
->placeholder('-'),
|
||||
Fieldset::make(__('Data'))
|
||||
->columnSpan(8)
|
||||
->columns(8)
|
||||
->schema([
|
||||
TextEntry::make('sender_full_name')
|
||||
->label(__('Name, Surname, Patronic name'))
|
||||
->columnSpan(4)
|
||||
->placeholder('-'),
|
||||
|
||||
TextEntry::make('sender_passport')
|
||||
->label(__('Passport serie and number'))
|
||||
->formatStateUsing(function ($record) {
|
||||
$serie = TurkmenPassportRepository::values()[$record->sender_passport_serie] ?? $record->sender_passport_serie;
|
||||
TextEntry::make('sender_passport')
|
||||
->label(__('Passport serie and number'))
|
||||
->formatStateUsing(function ($record) {
|
||||
$serie = TurkmenPassportRepository::values()[$record->sender_passport_serie] ?? $record->sender_passport_serie;
|
||||
|
||||
return $serie.' '.$record->sender_passport_number;
|
||||
})
|
||||
->columnSpan(2)
|
||||
->placeholder('-'),
|
||||
return $serie.' '.$record->sender_passport_number;
|
||||
})
|
||||
->columnSpan(2)
|
||||
->placeholder('-'),
|
||||
|
||||
TextEntry::make('phone')
|
||||
->label(__('Phone'))
|
||||
->formatStateUsing(fn ($state) => '+993 '.$state)
|
||||
->columnSpan(2)
|
||||
->placeholder('-'),
|
||||
TextEntry::make('phone')
|
||||
->label(__('Phone'))
|
||||
->formatStateUsing(fn ($state) => '+993 '.$state)
|
||||
->columnSpan(2)
|
||||
->placeholder('-'),
|
||||
|
||||
TextEntry::make('sender_deposit_account')
|
||||
->label(__('Deposit account'))
|
||||
->columnSpan(4)
|
||||
->placeholder('-'),
|
||||
TextEntry::make('sender_deposit_account')
|
||||
->label(__('Deposit account'))
|
||||
->columnSpan(4)
|
||||
->placeholder('-'),
|
||||
|
||||
TextEntry::make('address')
|
||||
->label(__('Address'))
|
||||
->columnSpan(4)
|
||||
->placeholder('-'),
|
||||
TextEntry::make('address')
|
||||
->label(__('Address'))
|
||||
->columnSpan(4)
|
||||
->placeholder('-'),
|
||||
]),
|
||||
|
||||
Section::make(__('Files'))
|
||||
->description('PNG, JPEG, PDF')
|
||||
@@ -109,7 +117,7 @@ class VisaMasterPaymentOrderInfolist
|
||||
SpatieMediaLibraryImageEntry::make('sender_passport_local')
|
||||
->collection('sender_passport_local')
|
||||
->label(__('Ugradyja degişli Türkmenistanyň raýatynyň (içki milli) pasportynyň asyl görnüşi we göçürmesi')),
|
||||
|
||||
|
||||
SpatieMediaLibraryImageEntry::make('sender_passport_international')
|
||||
->collection('sender_passport_international')
|
||||
->label(__('Ugradyja degişli Türkmenistandan çykmak we Türkmenistana girmek üçin pasportynyň asyl görnüşi we göçürmesi')),
|
||||
|
||||
@@ -85,6 +85,7 @@ class WorkPanelProvider extends PanelProvider
|
||||
'primary' => Color::Indigo,
|
||||
'success' => Color::Emerald,
|
||||
'warning' => Color::Orange,
|
||||
]);
|
||||
])
|
||||
->viteTheme('resources/css/filament/work/theme.css');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
"laravel/ui": "^4.6",
|
||||
"mpdf/mpdf": "^8.2",
|
||||
"phpoffice/phpword": "dev-master",
|
||||
"ralphjsmit/laravel-filament-upload": "^1.1",
|
||||
"spatie/laravel-medialibrary": "^11.17",
|
||||
"spatie/laravel-translatable": "^6.11",
|
||||
"stevebauman/location": "^7.6"
|
||||
@@ -49,6 +50,12 @@
|
||||
"Tests\\": "tests/"
|
||||
}
|
||||
},
|
||||
"repositories": [
|
||||
{
|
||||
"type": "composer",
|
||||
"url": "https://satis.ralphjsmit.com"
|
||||
}
|
||||
],
|
||||
"scripts": {
|
||||
"post-autoload-dump": [
|
||||
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
|
||||
@@ -89,7 +96,8 @@
|
||||
"sort-packages": true,
|
||||
"allow-plugins": {
|
||||
"pestphp/pest-plugin": true,
|
||||
"php-http/discovery": true
|
||||
"php-http/discovery": true,
|
||||
"ralphjsmit/packages": true
|
||||
}
|
||||
},
|
||||
"minimum-stability": "stable",
|
||||
|
||||
462
composer.lock
generated
462
composer.lock
generated
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "d2a574fdd5c95390e8843b9dbd8659e5",
|
||||
"content-hash": "8042e9992721acbf0c76d534136007cd",
|
||||
"packages": [
|
||||
{
|
||||
"name": "abdulmajeed-jamaan/filament-translatable-tabs",
|
||||
@@ -142,6 +142,157 @@
|
||||
},
|
||||
"time": "2025-07-30T15:45:57+00:00"
|
||||
},
|
||||
{
|
||||
"name": "aws/aws-crt-php",
|
||||
"version": "v1.2.7",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/awslabs/aws-crt-php.git",
|
||||
"reference": "d71d9906c7bb63a28295447ba12e74723bd3730e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/awslabs/aws-crt-php/zipball/d71d9906c7bb63a28295447ba12e74723bd3730e",
|
||||
"reference": "d71d9906c7bb63a28295447ba12e74723bd3730e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.5"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4.8.35||^5.6.3||^9.5",
|
||||
"yoast/phpunit-polyfills": "^1.0"
|
||||
},
|
||||
"suggest": {
|
||||
"ext-awscrt": "Make sure you install awscrt native extension to use any of the functionality."
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"classmap": [
|
||||
"src/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"Apache-2.0"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "AWS SDK Common Runtime Team",
|
||||
"email": "aws-sdk-common-runtime@amazon.com"
|
||||
}
|
||||
],
|
||||
"description": "AWS Common Runtime for PHP",
|
||||
"homepage": "https://github.com/awslabs/aws-crt-php",
|
||||
"keywords": [
|
||||
"amazon",
|
||||
"aws",
|
||||
"crt",
|
||||
"sdk"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/awslabs/aws-crt-php/issues",
|
||||
"source": "https://github.com/awslabs/aws-crt-php/tree/v1.2.7"
|
||||
},
|
||||
"time": "2024-10-18T22:15:13+00:00"
|
||||
},
|
||||
{
|
||||
"name": "aws/aws-sdk-php",
|
||||
"version": "3.360.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/aws/aws-sdk-php.git",
|
||||
"reference": "a21055795be59f3d7c5ca6e4d52a80930dcf8c20"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/a21055795be59f3d7c5ca6e4d52a80930dcf8c20",
|
||||
"reference": "a21055795be59f3d7c5ca6e4d52a80930dcf8c20",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"aws/aws-crt-php": "^1.2.3",
|
||||
"ext-json": "*",
|
||||
"ext-pcre": "*",
|
||||
"ext-simplexml": "*",
|
||||
"guzzlehttp/guzzle": "^7.4.5",
|
||||
"guzzlehttp/promises": "^2.0",
|
||||
"guzzlehttp/psr7": "^2.4.5",
|
||||
"mtdowling/jmespath.php": "^2.8.0",
|
||||
"php": ">=8.1",
|
||||
"psr/http-message": "^1.0 || ^2.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"andrewsville/php-token-reflection": "^1.4",
|
||||
"aws/aws-php-sns-message-validator": "~1.0",
|
||||
"behat/behat": "~3.0",
|
||||
"composer/composer": "^2.7.8",
|
||||
"dms/phpunit-arraysubset-asserts": "^0.4.0",
|
||||
"doctrine/cache": "~1.4",
|
||||
"ext-dom": "*",
|
||||
"ext-openssl": "*",
|
||||
"ext-pcntl": "*",
|
||||
"ext-sockets": "*",
|
||||
"phpunit/phpunit": "^5.6.3 || ^8.5 || ^9.5",
|
||||
"psr/cache": "^2.0 || ^3.0",
|
||||
"psr/simple-cache": "^2.0 || ^3.0",
|
||||
"sebastian/comparator": "^1.2.3 || ^4.0 || ^5.0",
|
||||
"symfony/filesystem": "^v6.4.0 || ^v7.1.0",
|
||||
"yoast/phpunit-polyfills": "^2.0"
|
||||
},
|
||||
"suggest": {
|
||||
"aws/aws-php-sns-message-validator": "To validate incoming SNS notifications",
|
||||
"doctrine/cache": "To use the DoctrineCacheAdapter",
|
||||
"ext-curl": "To send requests using cURL",
|
||||
"ext-openssl": "Allows working with CloudFront private distributions and verifying received SNS messages",
|
||||
"ext-sockets": "To use client-side monitoring"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "3.0-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/functions.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Aws\\": "src/"
|
||||
},
|
||||
"exclude-from-classmap": [
|
||||
"src/data/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"Apache-2.0"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Amazon Web Services",
|
||||
"homepage": "http://aws.amazon.com"
|
||||
}
|
||||
],
|
||||
"description": "AWS SDK for PHP - Use Amazon Web Services in your PHP project",
|
||||
"homepage": "http://aws.amazon.com/sdkforphp",
|
||||
"keywords": [
|
||||
"amazon",
|
||||
"aws",
|
||||
"cloud",
|
||||
"dynamodb",
|
||||
"ec2",
|
||||
"glacier",
|
||||
"s3",
|
||||
"sdk"
|
||||
],
|
||||
"support": {
|
||||
"forum": "https://github.com/aws/aws-sdk-php/discussions",
|
||||
"issues": "https://github.com/aws/aws-sdk-php/issues",
|
||||
"source": "https://github.com/aws/aws-sdk-php/tree/3.360.0"
|
||||
},
|
||||
"time": "2025-11-17T19:46:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "bezhansalleh/filament-language-switch",
|
||||
"version": "4.0.0",
|
||||
@@ -4679,6 +4830,72 @@
|
||||
},
|
||||
"time": "2023-05-03T06:19:36+00:00"
|
||||
},
|
||||
{
|
||||
"name": "mtdowling/jmespath.php",
|
||||
"version": "2.8.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/jmespath/jmespath.php.git",
|
||||
"reference": "a2a865e05d5f420b50cc2f85bb78d565db12a6bc"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/a2a865e05d5f420b50cc2f85bb78d565db12a6bc",
|
||||
"reference": "a2a865e05d5f420b50cc2f85bb78d565db12a6bc",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^7.2.5 || ^8.0",
|
||||
"symfony/polyfill-mbstring": "^1.17"
|
||||
},
|
||||
"require-dev": {
|
||||
"composer/xdebug-handler": "^3.0.3",
|
||||
"phpunit/phpunit": "^8.5.33"
|
||||
},
|
||||
"bin": [
|
||||
"bin/jp.php"
|
||||
],
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.8-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/JmesPath.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"JmesPath\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Graham Campbell",
|
||||
"email": "hello@gjcampbell.co.uk",
|
||||
"homepage": "https://github.com/GrahamCampbell"
|
||||
},
|
||||
{
|
||||
"name": "Michael Dowling",
|
||||
"email": "mtdowling@gmail.com",
|
||||
"homepage": "https://github.com/mtdowling"
|
||||
}
|
||||
],
|
||||
"description": "Declaratively specify how to extract elements from a JSON document",
|
||||
"keywords": [
|
||||
"json",
|
||||
"jsonpath"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/jmespath/jmespath.php/issues",
|
||||
"source": "https://github.com/jmespath/jmespath.php/tree/2.8.0"
|
||||
},
|
||||
"time": "2024-09-04T18:46:31+00:00"
|
||||
},
|
||||
{
|
||||
"name": "myclabs/deep-copy",
|
||||
"version": "1.13.4",
|
||||
@@ -6316,6 +6533,137 @@
|
||||
},
|
||||
"time": "2019-03-08T08:55:37+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ralphjsmit/laravel-filament-upload",
|
||||
"version": "1.1.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "git@github.com:ralphjsmit/laravel-filament-upload.git",
|
||||
"reference": "a4d296ff97577c922a5f99bfdf48802c95aac628"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://satis.ralphjsmit.com/dist/ralphjsmit/laravel-filament-upload/ralphjsmit-laravel-filament-upload-a4d296ff97577c922a5f99bfdf48802c95aac628-zip-37caec.zip",
|
||||
"reference": "a4d296ff97577c922a5f99bfdf48802c95aac628",
|
||||
"shasum": "be92377b964b7ae2c448f5692c69c836f558b15b"
|
||||
},
|
||||
"require": {
|
||||
"aws/aws-sdk-php": "^3.336",
|
||||
"filament/filament": "^v4.0.0-beta7",
|
||||
"illuminate/contracts": "^10.0|^11.0|^12.0",
|
||||
"php": "^8.1",
|
||||
"ralphjsmit/packages": "^1.4",
|
||||
"spatie/laravel-package-tools": "^1.16",
|
||||
"symfony/mime": "^7.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"laravel/pint": "^1.14",
|
||||
"league/flysystem-path-prefixing": "^3.28",
|
||||
"nunomaduro/collision": "^7.10|^8.1",
|
||||
"orchestra/testbench": "^8.22|^9.0|^10.0",
|
||||
"pestphp/pest": "^3.0",
|
||||
"pestphp/pest-plugin-arch": "^3.0",
|
||||
"pestphp/pest-plugin-laravel": "^3.0",
|
||||
"pestphp/pest-plugin-livewire": "^3.0",
|
||||
"spatie/laravel-medialibrary": "^11.13",
|
||||
"spatie/laravel-ray": "^1.35"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"laravel": {
|
||||
"providers": [
|
||||
"RalphJSmit\\Filament\\Upload\\FilamentUploadServiceProvider"
|
||||
]
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"RalphJSmit\\Filament\\Upload\\": "src/",
|
||||
"RalphJSmit\\Filament\\Upload\\Database\\Factories\\": "database/factories/"
|
||||
}
|
||||
},
|
||||
"autoload-dev": {
|
||||
"psr-4": {
|
||||
"RalphJSmit\\Filament\\Upload\\Tests\\": "tests/"
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
"test": [
|
||||
"vendor/bin/pest --order-by random --stop-on-failure --stop-on-error --fail-on-risky"
|
||||
],
|
||||
"format": [
|
||||
"vendor/bin/pint"
|
||||
]
|
||||
},
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Ralph J. Smit",
|
||||
"email": "rjs@ralphjsmit.com",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"description": "Advanced upload component for Filament.",
|
||||
"homepage": "https://github.com/ralphjsmit/laravel-filament-upload",
|
||||
"keywords": [
|
||||
"Ralph J. Smit",
|
||||
"laravel",
|
||||
"laravel-filament-upload"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/ralphjsmit/laravel-filament-upload/tree/1.1.1",
|
||||
"issues": "https://github.com/ralphjsmit/laravel-filament-upload/issues"
|
||||
},
|
||||
"time": "2025-10-22T20:05:23+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ralphjsmit/packages",
|
||||
"version": "1.4.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "git@github.com:ralphjsmit/packages.git",
|
||||
"reference": "69650da1603c282ee71bfac969293e3faca36e3f"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://satis.ralphjsmit.com/dist/ralphjsmit/packages/ralphjsmit-packages-69650da1603c282ee71bfac969293e3faca36e3f-zip-06dcad.zip",
|
||||
"reference": "69650da1603c282ee71bfac969293e3faca36e3f",
|
||||
"shasum": "a1e35fea977f8e1bbfc6ac0d82ece7268aa11b10"
|
||||
},
|
||||
"require": {
|
||||
"composer-plugin-api": "^2.0",
|
||||
"php": "^8.0",
|
||||
"spatie/url": "^2.4"
|
||||
},
|
||||
"require-dev": {
|
||||
"composer/composer": "^2.0",
|
||||
"mockery/mockery": "^1.6",
|
||||
"pestphp/pest": "^2.30",
|
||||
"spatie/ray": "^1.40"
|
||||
},
|
||||
"type": "composer-plugin",
|
||||
"extra": {
|
||||
"class": "RalphJSmit\\Packages\\Plugin",
|
||||
"plugin-modifies-downloads": true
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"RalphJSmit\\Packages\\": "src/"
|
||||
}
|
||||
},
|
||||
"scripts": {
|
||||
"test": [
|
||||
"vendor/bin/pest"
|
||||
]
|
||||
},
|
||||
"support": {
|
||||
"source": "https://github.com/ralphjsmit/packages/tree/1.4.2",
|
||||
"issues": "https://github.com/ralphjsmit/packages/issues"
|
||||
},
|
||||
"time": "2024-06-05T09:41:46+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ramsey/collection",
|
||||
"version": "2.1.1",
|
||||
@@ -7222,6 +7570,56 @@
|
||||
],
|
||||
"time": "2025-02-20T15:51:22+00:00"
|
||||
},
|
||||
{
|
||||
"name": "spatie/macroable",
|
||||
"version": "2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/spatie/macroable.git",
|
||||
"reference": "ec2c320f932e730607aff8052c44183cf3ecb072"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/spatie/macroable/zipball/ec2c320f932e730607aff8052c44183cf3ecb072",
|
||||
"reference": "ec2c320f932e730607aff8052c44183cf3ecb072",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^8.0|^9.3"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Spatie\\Macroable\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Freek Van der Herten",
|
||||
"email": "freek@spatie.be",
|
||||
"homepage": "https://spatie.be",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"description": "A trait to dynamically add methods to a class",
|
||||
"homepage": "https://github.com/spatie/macroable",
|
||||
"keywords": [
|
||||
"macroable",
|
||||
"spatie"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/spatie/macroable/issues",
|
||||
"source": "https://github.com/spatie/macroable/tree/2.0.0"
|
||||
},
|
||||
"time": "2021-03-26T22:39:02+00:00"
|
||||
},
|
||||
{
|
||||
"name": "spatie/shiki-php",
|
||||
"version": "2.3.2",
|
||||
@@ -7348,6 +7746,68 @@
|
||||
],
|
||||
"time": "2025-01-13T13:04:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "spatie/url",
|
||||
"version": "2.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/spatie/url.git",
|
||||
"reference": "93a51db743cdec22b081c64593e193887c9cd395"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/spatie/url/zipball/93a51db743cdec22b081c64593e193887c9cd395",
|
||||
"reference": "93a51db743cdec22b081c64593e193887c9cd395",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^8.0",
|
||||
"psr/http-message": "^1.0 || ^2.0",
|
||||
"spatie/macroable": "^1.0 || ^2.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"pestphp/pest": "^1.21"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Spatie\\Url\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Sebastian De Deyne",
|
||||
"email": "sebastian@spatie.be",
|
||||
"homepage": "https://spatie.be",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"description": "Parse, build and manipulate URL's",
|
||||
"homepage": "https://github.com/spatie/url",
|
||||
"keywords": [
|
||||
"spatie",
|
||||
"url"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/spatie/url/issues",
|
||||
"source": "https://github.com/spatie/url/tree/2.4.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://spatie.be/open-source/support-us",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/spatie",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-03-08T11:35:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "stevebauman/location",
|
||||
"version": "v7.6.0",
|
||||
|
||||
@@ -727,5 +727,6 @@
|
||||
"Payment": "Töleg",
|
||||
"Online payments": "Onlaýn tölegler",
|
||||
"USD rate": "USD kursy",
|
||||
"Total": "Jemi"
|
||||
"Total": "Jemi",
|
||||
"Data": "Maglumatlar"
|
||||
}
|
||||
|
||||
7
lang/vendor/filament-media-action/en/media-action.php
vendored
Normal file
7
lang/vendor/filament-media-action/en/media-action.php
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
// translations for Hugomyb/FilamentMediaAction
|
||||
return [
|
||||
'loading' => 'Loading...',
|
||||
'unsupported-media-type' => 'Unsupported media type.',
|
||||
];
|
||||
6
lang/vendor/filament-media-action/fr/media-action.php
vendored
Normal file
6
lang/vendor/filament-media-action/fr/media-action.php
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'loading' => 'Chargement...',
|
||||
'unsupported-media-type' => 'Type de média non pris en charge.',
|
||||
];
|
||||
7
lang/vendor/filament-media-action/it/media-action.php
vendored
Normal file
7
lang/vendor/filament-media-action/it/media-action.php
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
// translations for Hugomyb/FilamentMediaAction
|
||||
return [
|
||||
'loading' => 'Caricamento...',
|
||||
'unsupported-media-type' => 'Tipo di file non supportato.',
|
||||
];
|
||||
2226
package-lock.json
generated
Normal file
2226
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
@@ -7,11 +7,11 @@
|
||||
"dev": "vite"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@tailwindcss/vite": "^4.0.0",
|
||||
"@tailwindcss/vite": "^4.1.17",
|
||||
"axios": "^1.11.0",
|
||||
"concurrently": "^9.0.1",
|
||||
"laravel-vite-plugin": "^2.0.0",
|
||||
"tailwindcss": "^4.0.0",
|
||||
"tailwindcss": "^4.1.17",
|
||||
"vite": "^7.0.7"
|
||||
}
|
||||
}
|
||||
|
||||
1
public/css/filament-upload/image-editor-css.css
Normal file
1
public/css/filament-upload/image-editor-css.css
Normal file
@@ -0,0 +1 @@
|
||||
.FIE_topbar-buttons-wrapper,.FIE_topbar-reset-button{display:none!important}.FIE_canvas-node{background:none!important}
|
||||
File diff suppressed because one or more lines are too long
319
public/js/filament-upload/components/image-editor-js.js
Normal file
319
public/js/filament-upload/components/image-editor-js.js
Normal file
File diff suppressed because one or more lines are too long
5
resources/css/filament/work/theme.css
Normal file
5
resources/css/filament/work/theme.css
Normal file
@@ -0,0 +1,5 @@
|
||||
@import '../../../../vendor/filament/filament/resources/css/theme.css';
|
||||
|
||||
@source '../../../../app/Filament/**/*';
|
||||
@source '../../../../resources/views/filament/**/*';
|
||||
@source '../../../../vendor/ralphjsmit/laravel-filament-upload/resources/**/*.blade.php';
|
||||
0
resources/views/vendor/filament-media-action/.gitkeep
vendored
Normal file
0
resources/views/vendor/filament-media-action/.gitkeep
vendored
Normal file
147
resources/views/vendor/filament-media-action/actions/media-modal-content.blade.php
vendored
Normal file
147
resources/views/vendor/filament-media-action/actions/media-modal-content.blade.php
vendored
Normal file
@@ -0,0 +1,147 @@
|
||||
<div class="w-full flex flex-col justify-center items-center h-full"
|
||||
x-data="{
|
||||
loading: true,
|
||||
autoplayed: false,
|
||||
|
||||
init() {
|
||||
this.loading = true;
|
||||
let mediaElement = this.$refs.mediaFrame;
|
||||
|
||||
if (!mediaElement) {
|
||||
this.loading = false;
|
||||
return;
|
||||
}
|
||||
|
||||
if (mediaElement.tagName === 'VIDEO' || mediaElement.tagName === 'AUDIO') {
|
||||
mediaElement.load();
|
||||
|
||||
mediaElement.onload = () => {
|
||||
this.loading = false;
|
||||
};
|
||||
mediaElement.oncanplaythrough = () => {
|
||||
this.loading = false;
|
||||
};
|
||||
mediaElement.onloadstart = () => {
|
||||
this.loading = true;
|
||||
};
|
||||
mediaElement.onerror = () => {
|
||||
this.loading = false;
|
||||
};
|
||||
|
||||
if (mediaElement.readyState >= 3) {
|
||||
this.loading = false;
|
||||
}
|
||||
|
||||
// Autoplay logic
|
||||
if (@js($autoplay) && mediaElement.play) {
|
||||
this.autoplayed = true;
|
||||
mediaElement.play().catch(() => {
|
||||
console.log('Autoplay failed or was blocked.');
|
||||
});
|
||||
}
|
||||
} else {
|
||||
this.loading = true;
|
||||
|
||||
mediaElement.onload = () => {
|
||||
setTimeout(() => {
|
||||
this.loading = false;
|
||||
}, 200);
|
||||
};
|
||||
mediaElement.onerror = () => {
|
||||
this.loading = false;
|
||||
};
|
||||
}
|
||||
},
|
||||
|
||||
resetAutoplay() {
|
||||
this.autoplayed = false;
|
||||
}
|
||||
}"
|
||||
@open-modal.window="resetAutoplay"
|
||||
>
|
||||
|
||||
<div class="flex h-full flex-col justify-center items-center" x-show="loading">
|
||||
<x-filament::loading-indicator class="h-10 w-10" />
|
||||
<span class="text-center font-bold">{{ __('filament-media-action::media-action.loading') }}</span>
|
||||
</div>
|
||||
|
||||
<div class="mediaContainer w-full flex flex-col justify-center items-center h-full" x-show="!loading">
|
||||
@if ($mediaType === \Hugomyb\FilamentMediaAction\Actions\MediaAction::TYPE_YOUTUBE)
|
||||
@php
|
||||
$youtubeId = '';
|
||||
|
||||
// Parse the URL to get components
|
||||
$parsedUrl = parse_url($media);
|
||||
|
||||
if (isset($parsedUrl['host'])) {
|
||||
// Check if it's a youtu.be short URL
|
||||
if (str_contains($parsedUrl['host'], 'youtu.be')) {
|
||||
$youtubeId = ltrim($parsedUrl['path'], '/');
|
||||
}
|
||||
// Check if it's a regular youtube.com URL
|
||||
elseif (str_contains($parsedUrl['host'], 'youtube.com')) {
|
||||
parse_str($parsedUrl['query'] ?? '', $queryParams);
|
||||
$youtubeId = $queryParams['v'] ?? '';
|
||||
}
|
||||
}
|
||||
@endphp
|
||||
|
||||
@if ($youtubeId)
|
||||
<iframe x-ref="mediaFrame" class="rounded-lg" width="100%"
|
||||
src="https://www.youtube.com/embed/{{ $youtubeId }}{{ $autoplay ? '?autoplay=1' : '' }}"
|
||||
frameborder="0"
|
||||
style="aspect-ratio: 16 / 9;"
|
||||
allowfullscreen
|
||||
></iframe>
|
||||
@else
|
||||
<p>Invalid YouTube URL.</p>
|
||||
@endif
|
||||
|
||||
@elseif ($mediaType === \Hugomyb\FilamentMediaAction\Actions\MediaAction::TYPE_AUDIO)
|
||||
<audio
|
||||
x-ref="mediaFrame"
|
||||
class="rounded-lg w-full"
|
||||
style="width: 100%"
|
||||
controls
|
||||
@if($controlsList) controlsList="{{ $controlsList }}" @endif
|
||||
@canplay="loading = false"
|
||||
@loadeddata="loading = false"
|
||||
@play="loading = false"
|
||||
{{ $preload ? '' : 'preload="none"' }}
|
||||
>
|
||||
<source src="{{ $media }}" @if($mime && $mime !== 'unknown') type="{{ $mime }}" @endif>
|
||||
Your browser does not support the audio element.
|
||||
</audio>
|
||||
|
||||
@elseif ($mediaType === \Hugomyb\FilamentMediaAction\Actions\MediaAction::TYPE_VIDEO)
|
||||
<video
|
||||
x-ref="mediaFrame"
|
||||
class="rounded-lg w-full"
|
||||
width="100%"
|
||||
style="aspect-ratio: 16 / 9;"
|
||||
controls
|
||||
playsinline
|
||||
@if($controlsList) controlsList="{{ $controlsList }}" @endif
|
||||
@canplaythrough="loading = false"
|
||||
{{ $preload ? '' : 'preload="none"' }}
|
||||
>
|
||||
<source src="{{ $media }}" @if($mime && $mime !== 'unknown') type="{{ $mime }}" @endif>
|
||||
Your browser does not support the video tag.
|
||||
</video>
|
||||
|
||||
@elseif ($mediaType === \Hugomyb\FilamentMediaAction\Actions\MediaAction::TYPE_IMAGE)
|
||||
|
||||
<img x-ref="mediaFrame" class="rounded-lg" src="{{ $media }}" alt="Media Image"
|
||||
style="max-width: 100%; height: auto;" @load="loading = false">
|
||||
|
||||
@elseif ($mediaType === \Hugomyb\FilamentMediaAction\Actions\MediaAction::TYPE_PDF)
|
||||
|
||||
<iframe x-ref="mediaFrame" class="rounded-lg" style="min-height: 600px"
|
||||
src="{{ $media }}" width="100%" height="100%"
|
||||
@load="loading = false"></iframe>
|
||||
|
||||
@else
|
||||
<p>{{ __('filament-media-action::unsupported-media-type') }}</p>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@@ -5,7 +5,9 @@ import tailwindcss from '@tailwindcss/vite';
|
||||
export default defineConfig({
|
||||
plugins: [
|
||||
laravel({
|
||||
input: ['resources/css/app.css', 'resources/js/app.js'],
|
||||
input: [
|
||||
'resources/css/filament/work/theme.css'
|
||||
],
|
||||
refresh: true,
|
||||
}),
|
||||
tailwindcss(),
|
||||
|
||||
Reference in New Issue
Block a user