*/ public static $model = \App\Models\Order\Card\CardTransaction\CardTransaction::class; /** * The single value that should be used to represent the resource when being displayed. * * @var string */ public static $title = 'unique_id'; /** * The columns that should be searched. * * @var array */ public static $search = [ 'unique_id', ]; /** * Get the displayable label of the resource. */ public static function label(): string { return __('Card transactions'); } /** * Get the displayable singular label of the resource. */ public static function singularLabel(): string { return __('Card transaction'); } /** * Get the fields displayed by the resource. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request * @return array */ public function fields(NovaRequest $request): array { return [ ID::make()->sortable(), Hidden::make('user_id') ->default(auth()->id()) ->hideWhenUpdating(), Select::make(__('Passport serie'), 'passport_serie') ->displayUsingLabels() ->searchable() ->options(PassportRepo::values()) ->size('w-1/2') ->rules('required'), NovaInputmask::make(__('Passport id'), 'passport_id') ->mask('999999') ->size('w-1/2') ->rules('required', 'numeric', 'digits:6'), NovaInputmask::make(__('Card number'), 'card_number') ->mask('9999-9999-9999-9999') ->storeRawValue() ->size('md:w-1/2') ->rules('required', 'digits:16'), Select::make(__('Card').' '.__('Expiration month'), 'card_month') ->searchable() ->options(DateHelperRepository::staticNumberMonths()) ->size('md:w-1/4') ->rules('required'), Select::make(__('Card').' '.__('Expiration year'), 'card_year') ->searchable() ->options(DateHelperRepository::staticNumberYears()) ->size('md:w-1/4') ->rules('required'), ]; } /** * Get the cards available for the request. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request * @return array */ public function cards(NovaRequest $request) { return []; } /** * Get the filters available for the resource. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request * @return array */ public function filters(NovaRequest $request) { return []; } /** * Get the lenses available for the resource. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request * @return array */ public function lenses(NovaRequest $request) { return []; } /** * Get the actions available for the resource. * * @param \Laravel\Nova\Http\Requests\NovaRequest $request * @return array */ public function actions(NovaRequest $request) { return [ DownloadCardTransaction::make() ->icon('arrow-down-tray') ->sole(), ]; } }