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\Schemas\Schema;
|
||||||
use Filament\Support\Icons\Heroicon;
|
use Filament\Support\Icons\Heroicon;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use RalphJSmit\Filament\Upload\Filament\Forms\Components\AdvancedFileUpload;
|
||||||
|
|
||||||
class VisaMasterPaymentOrderForm
|
class VisaMasterPaymentOrderForm
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -15,7 +15,10 @@ use Filament\Schemas\Components\Tabs;
|
|||||||
use Filament\Schemas\Components\Tabs\Tab;
|
use Filament\Schemas\Components\Tabs\Tab;
|
||||||
use Filament\Schemas\Schema;
|
use Filament\Schemas\Schema;
|
||||||
use Filament\Support\Icons\Heroicon;
|
use Filament\Support\Icons\Heroicon;
|
||||||
|
use Hugomyb\FilamentMediaAction\Actions\MediaAction;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
|
use RalphJSmit\Filament\Upload\Filament\Forms\Components\AdvancedFileUpload;
|
||||||
|
use RalphJSmit\Filament\Upload\Filament\Infolists\Entries\PdfEntry;
|
||||||
|
|
||||||
class VisaMasterPaymentOrderInfolist
|
class VisaMasterPaymentOrderInfolist
|
||||||
{
|
{
|
||||||
@@ -70,36 +73,41 @@ class VisaMasterPaymentOrderInfolist
|
|||||||
Tab::make(__('Payment sender data'))
|
Tab::make(__('Payment sender data'))
|
||||||
->columns(8)
|
->columns(8)
|
||||||
->schema([
|
->schema([
|
||||||
TextEntry::make('sender_full_name')
|
Fieldset::make(__('Data'))
|
||||||
->label(__('Name, Surname, Patronic name'))
|
->columnSpan(8)
|
||||||
->columnSpan(4)
|
->columns(8)
|
||||||
->placeholder('-'),
|
->schema([
|
||||||
|
TextEntry::make('sender_full_name')
|
||||||
|
->label(__('Name, Surname, Patronic name'))
|
||||||
|
->columnSpan(4)
|
||||||
|
->placeholder('-'),
|
||||||
|
|
||||||
TextEntry::make('sender_passport')
|
TextEntry::make('sender_passport')
|
||||||
->label(__('Passport serie and number'))
|
->label(__('Passport serie and number'))
|
||||||
->formatStateUsing(function ($record) {
|
->formatStateUsing(function ($record) {
|
||||||
$serie = TurkmenPassportRepository::values()[$record->sender_passport_serie] ?? $record->sender_passport_serie;
|
$serie = TurkmenPassportRepository::values()[$record->sender_passport_serie] ?? $record->sender_passport_serie;
|
||||||
|
|
||||||
return $serie.' '.$record->sender_passport_number;
|
return $serie.' '.$record->sender_passport_number;
|
||||||
})
|
})
|
||||||
->columnSpan(2)
|
->columnSpan(2)
|
||||||
->placeholder('-'),
|
->placeholder('-'),
|
||||||
|
|
||||||
TextEntry::make('phone')
|
TextEntry::make('phone')
|
||||||
->label(__('Phone'))
|
->label(__('Phone'))
|
||||||
->formatStateUsing(fn ($state) => '+993 '.$state)
|
->formatStateUsing(fn ($state) => '+993 '.$state)
|
||||||
->columnSpan(2)
|
->columnSpan(2)
|
||||||
->placeholder('-'),
|
->placeholder('-'),
|
||||||
|
|
||||||
TextEntry::make('sender_deposit_account')
|
TextEntry::make('sender_deposit_account')
|
||||||
->label(__('Deposit account'))
|
->label(__('Deposit account'))
|
||||||
->columnSpan(4)
|
->columnSpan(4)
|
||||||
->placeholder('-'),
|
->placeholder('-'),
|
||||||
|
|
||||||
TextEntry::make('address')
|
TextEntry::make('address')
|
||||||
->label(__('Address'))
|
->label(__('Address'))
|
||||||
->columnSpan(4)
|
->columnSpan(4)
|
||||||
->placeholder('-'),
|
->placeholder('-'),
|
||||||
|
]),
|
||||||
|
|
||||||
Section::make(__('Files'))
|
Section::make(__('Files'))
|
||||||
->description('PNG, JPEG, PDF')
|
->description('PNG, JPEG, PDF')
|
||||||
|
|||||||
@@ -85,6 +85,7 @@ class WorkPanelProvider extends PanelProvider
|
|||||||
'primary' => Color::Indigo,
|
'primary' => Color::Indigo,
|
||||||
'success' => Color::Emerald,
|
'success' => Color::Emerald,
|
||||||
'warning' => Color::Orange,
|
'warning' => Color::Orange,
|
||||||
]);
|
])
|
||||||
|
->viteTheme('resources/css/filament/work/theme.css');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
"laravel/ui": "^4.6",
|
"laravel/ui": "^4.6",
|
||||||
"mpdf/mpdf": "^8.2",
|
"mpdf/mpdf": "^8.2",
|
||||||
"phpoffice/phpword": "dev-master",
|
"phpoffice/phpword": "dev-master",
|
||||||
|
"ralphjsmit/laravel-filament-upload": "^1.1",
|
||||||
"spatie/laravel-medialibrary": "^11.17",
|
"spatie/laravel-medialibrary": "^11.17",
|
||||||
"spatie/laravel-translatable": "^6.11",
|
"spatie/laravel-translatable": "^6.11",
|
||||||
"stevebauman/location": "^7.6"
|
"stevebauman/location": "^7.6"
|
||||||
@@ -49,6 +50,12 @@
|
|||||||
"Tests\\": "tests/"
|
"Tests\\": "tests/"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"repositories": [
|
||||||
|
{
|
||||||
|
"type": "composer",
|
||||||
|
"url": "https://satis.ralphjsmit.com"
|
||||||
|
}
|
||||||
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"post-autoload-dump": [
|
"post-autoload-dump": [
|
||||||
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
|
"Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
|
||||||
@@ -89,7 +96,8 @@
|
|||||||
"sort-packages": true,
|
"sort-packages": true,
|
||||||
"allow-plugins": {
|
"allow-plugins": {
|
||||||
"pestphp/pest-plugin": true,
|
"pestphp/pest-plugin": true,
|
||||||
"php-http/discovery": true
|
"php-http/discovery": true,
|
||||||
|
"ralphjsmit/packages": true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"minimum-stability": "stable",
|
"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",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "d2a574fdd5c95390e8843b9dbd8659e5",
|
"content-hash": "8042e9992721acbf0c76d534136007cd",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "abdulmajeed-jamaan/filament-translatable-tabs",
|
"name": "abdulmajeed-jamaan/filament-translatable-tabs",
|
||||||
@@ -142,6 +142,157 @@
|
|||||||
},
|
},
|
||||||
"time": "2025-07-30T15:45:57+00:00"
|
"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",
|
"name": "bezhansalleh/filament-language-switch",
|
||||||
"version": "4.0.0",
|
"version": "4.0.0",
|
||||||
@@ -4679,6 +4830,72 @@
|
|||||||
},
|
},
|
||||||
"time": "2023-05-03T06:19:36+00:00"
|
"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",
|
"name": "myclabs/deep-copy",
|
||||||
"version": "1.13.4",
|
"version": "1.13.4",
|
||||||
@@ -6316,6 +6533,137 @@
|
|||||||
},
|
},
|
||||||
"time": "2019-03-08T08:55:37+00:00"
|
"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",
|
"name": "ramsey/collection",
|
||||||
"version": "2.1.1",
|
"version": "2.1.1",
|
||||||
@@ -7222,6 +7570,56 @@
|
|||||||
],
|
],
|
||||||
"time": "2025-02-20T15:51:22+00:00"
|
"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",
|
"name": "spatie/shiki-php",
|
||||||
"version": "2.3.2",
|
"version": "2.3.2",
|
||||||
@@ -7348,6 +7746,68 @@
|
|||||||
],
|
],
|
||||||
"time": "2025-01-13T13:04:43+00:00"
|
"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",
|
"name": "stevebauman/location",
|
||||||
"version": "v7.6.0",
|
"version": "v7.6.0",
|
||||||
|
|||||||
@@ -727,5 +727,6 @@
|
|||||||
"Payment": "Töleg",
|
"Payment": "Töleg",
|
||||||
"Online payments": "Onlaýn tölegler",
|
"Online payments": "Onlaýn tölegler",
|
||||||
"USD rate": "USD kursy",
|
"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"
|
"dev": "vite"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@tailwindcss/vite": "^4.0.0",
|
"@tailwindcss/vite": "^4.1.17",
|
||||||
"axios": "^1.11.0",
|
"axios": "^1.11.0",
|
||||||
"concurrently": "^9.0.1",
|
"concurrently": "^9.0.1",
|
||||||
"laravel-vite-plugin": "^2.0.0",
|
"laravel-vite-plugin": "^2.0.0",
|
||||||
"tailwindcss": "^4.0.0",
|
"tailwindcss": "^4.1.17",
|
||||||
"vite": "^7.0.7"
|
"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({
|
export default defineConfig({
|
||||||
plugins: [
|
plugins: [
|
||||||
laravel({
|
laravel({
|
||||||
input: ['resources/css/app.css', 'resources/js/app.js'],
|
input: [
|
||||||
|
'resources/css/filament/work/theme.css'
|
||||||
|
],
|
||||||
refresh: true,
|
refresh: true,
|
||||||
}),
|
}),
|
||||||
tailwindcss(),
|
tailwindcss(),
|
||||||
|
|||||||
Reference in New Issue
Block a user