tighten / ziggy

Use your Laravel routes in JavaScript.
MIT License
3.87k stars 247 forks source link

Error in render: "Error: Ziggy error: 'iso_code' parameter is required for route ,even while it set #553

Closed odion-cloud closed 2 years ago

odion-cloud commented 2 years ago

Ziggy version

^1.4.6

Laravel version

^8.65

Description

default parameter not working, but showing on every Tab link

//route

 Route::group(
        [
            'prefix' => '{iso_code}',
            'where' => ['iso_code' => '[a-zA-Z]{2}'],
            'middleware' => ['setlocale'],
        ],
        function () {

            Auth::routes(['verify' => true]);
            Auth::routes();

            Route::middleware(['role:user', 'auth', 'verified'])->group(function () {
                Route::get('/dashboard', 'HomeController@index')->name('home');

        });
});

//middleware

        $info = json_decode(json_encode(getIpInfo()), true);
        $country_code = @implode(" ",$info['code']);
        if (!Auth::guest()) {
        URL::defaults(['iso_code' => auth()->user()->iso_code]);
        }else {
        URL::defaults(['iso_code' => strtolower($country_code)]);
        }

        if (!Auth::guest()) {
            $requestLocale = $request->segment(1);
            $userLocale = auth()->user()->iso_code;

            if ($requestLocale !== $userLocale)
            {
                $segments = $request->segments();
                array_shift($segments);
                array_unshift($segments, $userLocale);

                return redirect()->to(implode('/', $segments));
            }
        }

        return $next($request);

// Tab link show correctly http://domain.com/us/dashboard

//Ziggy Errors [Vue warn]: Error in render: "Error: Ziggy error: 'iso_code' parameter is required for route 'user.home'."

Ziggy call and context

route('user.home')

Ziggy configuration

const Ziggy = {"url":"http:\/\/domain.com","port":null,"defaults":{"iso_code":"us"}

Route definition

Route::group(
        [
            'prefix' => '{iso_code}',
            'where' => ['iso_code' => '[a-zA-Z]{2}'],
            'middleware' => ['setlocale'],
        ],
        function () {

            Auth::routes(['verify' => true]);
            Auth::routes();

            Route::middleware(['role:user', 'auth', 'verified'])->group(function () {
                Route::get('/dashboard', 'HomeController@index')->name('home');

        });
});
bakerkretzmar commented 2 years ago

Is that route you included user.home? I just see the name home but your Ziggy error is on the user.home route.

Are you using the @routes Blade directive or loading Ziggy another way?

odion-cloud commented 2 years ago

this is the correct route and it work well on tab URL as

// http://domain.com/us/dashboard

but shows error on zizzy
"Error in render: "Error: Ziggy error: 'iso_code' parameter is required for route "

Route::namespace('User')->name('user.')->group(function () {

Route::group(
        [
            'prefix' => '{iso_code}',
            'where' => ['iso_code' => '[a-zA-Z]{2}'],
            'middleware' => ['setlocale'],
        ],
        function () {

            Auth::routes(['verify' => true]);
            Auth::routes();

            Route::middleware(['role:user', 'auth', 'verified'])->group(function () {
                Route::get('/dashboard', 'HomeController@index')->name('home');

        });
});
});

i also use the @routes blade directive

bakerkretzmar commented 2 years ago

Thanks for your patience. I'm almost certain this is an issue with your middleware—I can only reproduce it locally when there actually isn't a default value for the iso_code parameter. It seems like this can happen if the current user doesn't have an iso_code set or if your resolution of the country/code from the IP address info fails, leaving $country_code null.

Can you look into those things and try to narrow this down to a reproducible error? Maybe share what your getIpInfo() function is doing and remove the @ before implode to see if it's emitting any errors?

odion-cloud commented 2 years ago

Thanks for your patience. I'm almost certain this is an issue with your middleware—I can only reproduce it locally when there actually isn't a default value for the iso_code parameter. It seems like this can happen if the current user doesn't have an iso_code set or if your resolution of the country/code from the IP address info fails, leaving $country_code null.

Can you look into those things and try to narrow this down to a reproducible error? Maybe share what your getIpInfo() function is doing and remove the @ before implode to see if it's emitting any errors?

this is the middleware

<?php

namespace App\Http\Middleware\Custom;

use Closure;
use Illuminate\Support\Facades\Auth;
use Illuminate\Http\Request;
use Illuminate\Contracts\Auth\Guard;
use Illuminate\Support\Facades\URL;
class SetLocale
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {

        $info = json_decode(json_encode(getIpInfo()), true);
        $country_code = implode(" ",$info['code']);
        if (!Auth::guest()) {
        URL::defaults(['iso_code' => auth()->user()->iso_code]);
        }else {

        URL::defaults(['iso_code' => strtolower($country_code)]);
        }

        if (!Auth::guest()) {
            $requestLocale = $request->segment(1);
            $userLocale = auth()->user()->iso_code;

            if ($requestLocale !== $userLocale)
            {
                $segments = $request->segments();
                array_shift($segments);
                array_unshift($segments, $userLocale);

                return redirect()->to(implode('/', $segments));
            }

        }

        return $next($request);
    }
}

this is the kernel which point to the route group 'setlocale' => \App\Http\Middleware\Custom\SetLocale::class,

auth()->user()->iso_code return us ,and it appears on the window tab link as http:domain.com/us/dashbaord

out of ziggy Vue it works fine, and it get the iso_code correctly

Vue also compile successfully <a class="nav-item" :href="route('user.home')">Return</a>

but on consule it returns Error in render: "Error: Ziggy error: 'iso_code' parameter is required for route and as we refuse to load the component with that a Tag on windows TAB

bakerkretzmar commented 2 years ago

Okay I didn't realize you were using Vue as well, can you share your setup there? How are you importing and registering Ziggy and your routes?

odion-cloud commented 2 years ago

i install Ziggy with composer and add @routes to my main blade layout that return thevue single page vue component,

then on webpack.mix,js

mix.alias({
    ziggy: path.resolve('vendor/tightenco/ziggy/dist'),
});

on my app.js file in resource

import Vue from 'vue';
import route from 'ziggy';
import { Ziggy } from './ziggy';

Vue.mixin({
    methods: {
        route: (name, params, absolute, config = Ziggy) => route(name, params, absolute, config),
    },
  });
bakerkretzmar commented 2 years ago

What's in that './ziggy' file you're importing in your app.js?

odion-cloud commented 2 years ago

What's in that './ziggy' file you're importing in your app.js?

const Ziggy = {"url":"http:\/\/domain.com","port":null,"defaults":{},"routes":{"debugbar.openhandler":{"uri":"_debugbar\/open","methods":["GET","HEAD"]},"debugbar.clockwork":{"uri":"_debugbar\/clockwork\/{id}","methods":["GET","HEAD"]},"debugbar.assets.css":{"uri":"_debugbar\/assets\/stylesheets","methods":["GET","HEAD"]},"debugbar.assets.js":{"uri":"_debugbar\/assets\/javascript","methods":["GET","HEAD"]},"debugbar.cache.delete":{"uri":"_debugbar\/cache\/{key}\/{tags?}","methods":["DELETE"]},"livewire.message":{"uri":"livewire\/message\/{name}","methods":["POST"]},"livewire.upload-file":{"uri":"livewire\/upload-file","methods":["POST"]},"livewire.preview-file":{"uri":"livewire\/preview-file\/{filename}","methods":["GET","HEAD"]},"livewire-spa.app":{"uri":"app","methods":["GET","HEAD"]},"livewire-spa.assets":{"uri":"app\/assets\/{file}","methods":["GET","HEAD"],"wheres":{"file":".*"}},"livewire-spa.error-page":{"uri":"app\/error","methods":["GET","HEAD"]},"initiate.payment":{"uri":"payment\/initiate","methods":["GET","POST","HEAD"],"domain":"api.auttransfer.co"},"initiate.payment.auth.view":{"uri":"initiate\/payment\/checkout","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"payment.check.email":{"uri":"initiate\/payment\/check-mail","methods":["POST"],"domain":"api.auttransfer.co"},"payment.verify":{"uri":"verify\/payment","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"confirm.payment":{"uri":"confirm\/payment","methods":["POST"],"domain":"api.auttransfer.co"},"resend.code":{"uri":"resend\/verify\/code","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"cancel.payment":{"uri":"cancel\/payment","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"test.initiate.payment":{"uri":"sandbox\/payment\/initiate","methods":["GET","POST","HEAD"],"domain":"api.auttransfer.co"},"test.initiate.payment.auth.view":{"uri":"sandbox\/initiate\/payment\/checkout","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"test.payment.check.email":{"uri":"sandbox\/initiate\/payment\/check-mail","methods":["POST"],"domain":"api.auttransfer.co"},"test.payment.verify":{"uri":"sandbox\/verify\/payment","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"test.confirm.payment":{"uri":"sandbox\/confirm\/payment","methods":["POST"],"domain":"api.auttransfer.co"},"test.cancel.payment":{"uri":"sandbox\/cancel\/payment","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"checkout.popup":{"uri":"checkoutnow\/{pageTitle}\/{apiPayment}\/{mailCheckRoute}","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"cron.fiat.rate":{"uri":"cron\/fiat-rate","methods":["GET","HEAD"],"domain":"domain.com"},"cron.crypto.rate":{"uri":"cron\/crypto-rate","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Paypal":{"uri":"ipn\/paypal","methods":["POST"],"domain":"domain.com"},"ipn.PaypalSdk":{"uri":"ipn\/paypal-sdk","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.PerfectMoney":{"uri":"ipn\/perfect-money","methods":["POST"],"domain":"domain.com"},"ipn.Stripe":{"uri":"ipn\/stripe","methods":["POST"],"domain":"domain.com"},"ipn.StripeJs":{"uri":"ipn\/stripe-js","methods":["POST"],"domain":"domain.com"},"ipn.StripeV3":{"uri":"ipn\/stripe-v3","methods":["POST"],"domain":"domain.com"},"ipn.Skrill":{"uri":"ipn\/skrill","methods":["POST"],"domain":"domain.com"},"ipn.Paytm":{"uri":"ipn\/paytm","methods":["POST"],"domain":"domain.com"},"ipn.Payeer":{"uri":"ipn\/payeer","methods":["POST"],"domain":"domain.com"},"ipn.Paystack":{"uri":"ipn\/paystack","methods":["POST"],"domain":"domain.com"},"ipn.Voguepay":{"uri":"ipn\/voguepay","methods":["POST"],"domain":"domain.com"},"ipn.Flutterwave":{"uri":"ipn\/flutterwave\/{trx}\/{type}","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Razorpay":{"uri":"ipn\/razorpay","methods":["POST"],"domain":"domain.com"},"ipn.Instamojo":{"uri":"ipn\/instamojo","methods":["POST"],"domain":"domain.com"},"ipn.Blockchain":{"uri":"ipn\/blockchain","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Blockio":{"uri":"ipn\/blockio","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Coinpayments":{"uri":"ipn\/coinpayments","methods":["POST"],"domain":"domain.com"},"ipn.CoinpaymentsFiat":{"uri":"ipn\/coinpayments-fiat","methods":["POST"],"domain":"domain.com"},"ipn.Coingate":{"uri":"ipn\/coingate","methods":["POST"],"domain":"domain.com"},"ipn.CoinbaseCommerce":{"uri":"ipn\/coinbase-commerce","methods":["POST"],"domain":"domain.com"},"ipn.Mollie":{"uri":"ipn\/mollie","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Cashmaal":{"uri":"ipn\/cashmaal","methods":["POST"],"domain":"domain.com"},"ipn.MercadoPago":{"uri":"ipn\/mercado-pago","methods":["POST"],"domain":"domain.com"},"user.":{"uri":"{iso_code}\/password\/confirm","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"aut_assets":{"uri":"aut-assets","methods":["GET","HEAD"],"domain":"domain.com"},"user.login":{"uri":"{iso_code}\/login","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.logout":{"uri":"{iso_code}\/logout","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.register":{"uri":"{iso_code}\/register","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.request":{"uri":"{iso_code}\/password\/reset","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.email":{"uri":"{iso_code}\/password\/email","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.reset":{"uri":"{iso_code}\/password\/reset\/{token}","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.update":{"uri":"{iso_code}\/password\/reset","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.confirm":{"uri":"{iso_code}\/password\/confirm","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.verification.notice":{"uri":"{iso_code}\/email\/verify","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.verification.verify":{"uri":"{iso_code}\/email\/verify\/{id}\/{hash}","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.verification.resend":{"uri":"{iso_code}\/email\/resend","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.home":{"uri":"{iso_code}\/dashboard","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.notify.index":{"uri":"{iso_code}\/notify","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.notify.edit":{"uri":"{iso_code}\/notify\/{id}\/edit","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.notify.delete":{"uri":"{iso_code}\/notify\/{id}\/delete","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"superadmin.login":{"uri":"super-admin\/login","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.":{"uri":"super-admin\/password\/confirm","methods":["POST"],"domain":"domain.com"},"superadmin.logout":{"uri":"super-admin\/logout","methods":["POST"],"domain":"domain.com"},"superadmin.register":{"uri":"super-admin\/register","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.password.request":{"uri":"super-admin\/password\/reset","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.password.email":{"uri":"super-admin\/password\/email","methods":["POST"],"domain":"domain.com"},"superadmin.password.reset":{"uri":"super-admin\/password\/reset\/{token}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.password.update":{"uri":"super-admin\/password\/reset","methods":["POST"],"domain":"domain.com"},"superadmin.password.confirm":{"uri":"super-admin\/password\/confirm","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.home":{"uri":"super-admin","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.profile.index":{"uri":"super-admin\/profile","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.profile.edit":{"uri":"super-admin\/profile\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.profile.update":{"uri":"super-admin\/profile\/edit","methods":["POST"],"domain":"domain.com"},"superadmin.currencies.index":{"uri":"super-admin\/currencies","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.currencies.store":{"uri":"super-admin\/currencies\/store","methods":["POST"],"domain":"domain.com"},"superadmin.currencies.update":{"uri":"super-admin\/currencies\/update","methods":["POST"],"domain":"domain.com"},"superadmin.currencies.api.update":{"uri":"super-admin\/currencies\/api-key\/update","methods":["POST"],"domain":"domain.com"},"superadmin.transaction-charges.index":{"uri":"super-admin\/transaction-charges","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.transaction-charges.update":{"uri":"super-admin\/transaction-charges\/update","methods":["POST"],"domain":"domain.com"},"superadmin.notify.index":{"uri":"super-admin\/notify","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.edit":{"uri":"super-admin\/notify\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.delete":{"uri":"super-admin\/notify\/{id}\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.all.index":{"uri":"super-admin\/notify\/all","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.all.edit":{"uri":"super-admin\/notify\/{id}\/all","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.all.delete":{"uri":"super-admin\/notify\/{id}\/all\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.index":{"uri":"super-admin\/user","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.verified":{"uri":"super-admin\/user\/verified","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.unverified":{"uri":"super-admin\/user\/unverified","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.store":{"uri":"super-admin\/user\/createuser","methods":["POST"],"domain":"domain.com"},"superadmin.user.delete":{"uri":"super-admin\/user\/{id}\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.edit":{"uri":"super-admin\/user\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.update":{"uri":"super-admin\/user\/{id}\/edit","methods":["POST"],"domain":"domain.com"},"superadmin.user.createuserpaymentandcreatedocument":{"uri":"super-admin\/user\/{id}\/createpandd","methods":["POST"],"domain":"domain.com"},"superadmin.user.paymentaccountdestroy":{"uri":"super-admin\/user\/{id}\/paymentdelete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.impersonate":{"uri":"super-admin\/user\/impersonate\/user\/{id}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.kyc.unapproved":{"uri":"super-admin\/kyc\/unapproved","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.kyc.update":{"uri":"super-admin\/kyc\/update","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.kyc.updateDoc":{"uri":"super-admin\/kyc\/update\/{id}","methods":["POST"],"domain":"domain.com"},"superadmin.permisionrole.indexroles":{"uri":"super-admin\/permisionrole\/roles","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.indexpermisions":{"uri":"super-admin\/permisionrole\/permission","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.role.edit":{"uri":"super-admin\/permisionrole\/role\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.permission.edit":{"uri":"super-admin\/permisionrole\/permission\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.role.update":{"uri":"super-admin\/permisionrole\/role\/{id}\/edit","methods":["POST"],"domain":"domain.com"},"superadmin.permisionrole.permission.update":{"uri":"super-admin\/permisionrole\/permission\/{id}\/edit","methods":["POST"],"domain":"domain.com"},"superadmin.permisionrole.role.delete":{"uri":"super-admin\/permisionrole\/role\/{id}\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.permission.delete":{"uri":"super-admin\/permisionrole\/permission\/{id}\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.role.store":{"uri":"super-admin\/permisionrole\/createrole","methods":["POST"],"domain":"domain.com"},"superadmin.permisionrole.permission.store":{"uri":"super-admin\/permisionrole\/createpermission","methods":["POST"],"domain":"domain.com"},"superadmin.gateway.index":{"uri":"super-admin\/gateway","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.gateway.edit":{"uri":"super-admin\/gateway\/gateway-edit\/{id}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.gateway.create":{"uri":"super-admin\/gateway\/cryptopaymentgateway","methods":["POST"],"domain":"domain.com"},"superadmin.gateway.update":{"uri":"super-admin\/gateway\/gateway-update\/{id}","methods":["PUT"],"domain":"domain.com"},"superadmin.gateway.update_form":{"uri":"super-admin\/gateway\/gateway-form-update\/{id}","methods":["PUT"],"domain":"domain.com"},"superadmin.gateway.delete":{"uri":"super-admin\/gateway\/gateway-delete\/{id}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.email.template.global":{"uri":"super-admin\/email\/email-template\/global","methods":["POST"],"domain":"domain.com"},"superadmin.email.template.setting":{"uri":"super-admin\/email\/email-template\/setting","methods":["POST"],"domain":"domain.com"},"superadmin.email.template.index":{"uri":"super-admin\/email\/email-template\/index","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.email.template.edit":{"uri":"super-admin\/email\/email-template\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.email.template.update":{"uri":"super-admin\/email\/email-template\/{id}\/update","methods":["POST"],"domain":"domain.com"},"superadmin.email.template.sendTestMail":{"uri":"super-admin\/email\/email-template\/send-test-mail","methods":["POST"],"domain":"domain.com"},"superadmin.sms.template.global":{"uri":"super-admin\/sms\/sms-template\/global","methods":["POST"],"domain":"domain.com"},"superadmin.sms.template.index":{"uri":"super-admin\/sms\/sms-template\/index","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.sms.template.edit":{"uri":"super-admin\/sms\/sms-template\/edit\/{id}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.sms.template.update":{"uri":"super-admin\/sms\/sms-template\/update\/{id}","methods":["POST"],"domain":"domain.com"},"superadmin.sms.template.sendTestSMS":{"uri":"super-admin\/sms\/email-template\/send-test-sms","methods":["POST"],"domain":"domain.com"},"superadmin.settings.index":{"uri":"super-admin\/settings","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.settings.store":{"uri":"super-admin\/settings","methods":["POST"],"domain":"domain.com"},"superadmin.settings.update":{"uri":"super-admin\/settings","methods":["PUT"],"domain":"domain.com"},"superadmin.settings.delete":{"uri":"super-admin\/settings\/{id}","methods":["DELETE"],"domain":"domain.com"},"superadmin.settings.move_up":{"uri":"super-admin\/settings\/{id}\/move_up","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.settings.move_down":{"uri":"super-admin\/settings\/{id}\/move_down","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.settings.delete_value":{"uri":"super-admin\/settings\/{id}\/delete_value","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.settings.upload":{"uri":"super-admin\/settings\/upload","methods":["POST"],"domain":"domain.com"}}};

if (typeof window !== 'undefined' && typeof window.Ziggy !== 'undefined') { Object.assign(Ziggy.routes, window.Ziggy.routes); }

export { Ziggy };

bakerkretzmar commented 2 years ago

There's your issue: "defaults":{}. I didn't realize you were using the generated routes file.

Because you're setting the URL defaults in a middleware, they don't get applied when you run php artisan ziggy:generate. You should set the initial default/fallback value by calling URL::defaults() in a service provider boot method, and conditionally override that default with a new one in the middleware.

Also, you can either use the @routes Blade directive or import route and Ziggy in your app.js and set up that Vue mixin, you don't need to do both. Usually doing both is fine, but it makes things like this a lot harder to debug, because this.route() inside your Vue components and route() in the Browser console are actually using two different Ziggy configs.

Feel free to comment again if you have other questions!

odion-cloud commented 2 years ago

There's your issue: "defaults":{}. I didn't realize you were using the generated routes file.

Because you're setting the URL parameter default values in a middleware, they don't get applied when you run php artisan ziggy:generate. You should set the initial default/fallback value in a service provider boot method, and conditionally override that default with a new one in the middleware.

Also, you can either use the @routes Blade directive or import route and Ziggy in your app.js and set up that Vue mixin, you don't need to do both. Usually doing both is fine, but it makes things like this a lot harder to debug, because this.route() inside your Vue components and route() in the Browser console are actually using two different Ziggy configs.

Feel free to comment again if you have other questions!

this is what @routes generate when in inpect the code ,which include default iso_code as us

        <html>
<body>
<!--StartFragment-->

<script type="text/javascript">
--
  | const Ziggy = {"url":"http:\/\/domain.com","port":null,"`defaults":{"iso_code":"us"}`,"routes":{"debugbar.openhandler":{"uri":"_debugbar\/open","methods":["GET","HEAD"]},"debugbar.clockwork":{"uri":"_debugbar\/clockwork\/{id}","methods":["GET","HEAD"]},"debugbar.assets.css":{"uri":"_debugbar\/assets\/stylesheets","methods":["GET","HEAD"]},"debugbar.assets.js":{"uri":"_debugbar\/assets\/javascript","methods":["GET","HEAD"]},"debugbar.cache.delete":{"uri":"_debugbar\/cache\/{key}\/{tags?}","methods":["DELETE"]},"ignition.healthCheck":{"uri":"_ignition\/health-check","methods":["GET","HEAD"]},"ignition.executeSolution":{"uri":"_ignition\/execute-solution","methods":["POST"]},"ignition.shareReport":{"uri":"_ignition\/share-report","methods":["POST"]},"ignition.scripts":{"uri":"_ignition\/scripts\/{script}","methods":["GET","HEAD"]},"ignition.styles":{"uri":"_ignition\/styles\/{style}","methods":["GET","HEAD"]},"livewire.message":{"uri":"livewire\/message\/{name}","methods":["POST"]},"livewire.upload-file":{"uri":"livewire\/upload-file","methods":["POST"]},"livewire.preview-file":{"uri":"livewire\/preview-file\/{filename}","methods":["GET","HEAD"]},"livewire-spa.app":{"uri":"app","methods":["GET","HEAD"]},"livewire-spa.assets":{"uri":"app\/assets\/{file}","methods":["GET","HEAD"],"wheres":{"file":".*"}},"livewire-spa.error-page":{"uri":"app\/error","methods":["GET","HEAD"]},"initiate.payment":{"uri":"payment\/initiate","methods":["GET","POST","HEAD"],"domain":"api.auttransfer.co"},"initiate.payment.auth.view":{"uri":"initiate\/payment\/checkout","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"payment.check.email":{"uri":"initiate\/payment\/check-mail","methods":["POST"],"domain":"api.auttransfer.co"},"payment.verify":{"uri":"verify\/payment","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"confirm.payment":{"uri":"confirm\/payment","methods":["POST"],"domain":"api.auttransfer.co"},"resend.code":{"uri":"resend\/verify\/code","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"cancel.payment":{"uri":"cancel\/payment","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"test.initiate.payment":{"uri":"sandbox\/payment\/initiate","methods":["GET","POST","HEAD"],"domain":"api.auttransfer.co"},"test.initiate.payment.auth.view":{"uri":"sandbox\/initiate\/payment\/checkout","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"test.payment.check.email":{"uri":"sandbox\/initiate\/payment\/check-mail","methods":["POST"],"domain":"api.auttransfer.co"},"test.payment.verify":{"uri":"sandbox\/verify\/payment","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"test.confirm.payment":{"uri":"sandbox\/confirm\/payment","methods":["POST"],"domain":"api.auttransfer.co"},"test.cancel.payment":{"uri":"sandbox\/cancel\/payment","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"checkout.popup":{"uri":"checkoutnow\/{pageTitle}\/{apiPayment}\/{mailCheckRoute}","methods":["GET","HEAD"],"domain":"api.auttransfer.co"},"cron.fiat.rate":{"uri":"cron\/fiat-rate","methods":["GET","HEAD"],"domain":"domain.com"},"cron.crypto.rate":{"uri":"cron\/crypto-rate","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Paypal":{"uri":"ipn\/paypal","methods":["POST"],"domain":"domain.com"},"ipn.PaypalSdk":{"uri":"ipn\/paypal-sdk","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.PerfectMoney":{"uri":"ipn\/perfect-money","methods":["POST"],"domain":"domain.com"},"ipn.Stripe":{"uri":"ipn\/stripe","methods":["POST"],"domain":"domain.com"},"ipn.StripeJs":{"uri":"ipn\/stripe-js","methods":["POST"],"domain":"domain.com"},"ipn.StripeV3":{"uri":"ipn\/stripe-v3","methods":["POST"],"domain":"domain.com"},"ipn.Skrill":{"uri":"ipn\/skrill","methods":["POST"],"domain":"domain.com"},"ipn.Paytm":{"uri":"ipn\/paytm","methods":["POST"],"domain":"domain.com"},"ipn.Payeer":{"uri":"ipn\/payeer","methods":["POST"],"domain":"domain.com"},"ipn.Paystack":{"uri":"ipn\/paystack","methods":["POST"],"domain":"domain.com"},"ipn.Voguepay":{"uri":"ipn\/voguepay","methods":["POST"],"domain":"domain.com"},"ipn.Flutterwave":{"uri":"ipn\/flutterwave\/{trx}\/{type}","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Razorpay":{"uri":"ipn\/razorpay","methods":["POST"],"domain":"domain.com"},"ipn.Instamojo":{"uri":"ipn\/instamojo","methods":["POST"],"domain":"domain.com"},"ipn.Blockchain":{"uri":"ipn\/blockchain","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Blockio":{"uri":"ipn\/blockio","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Coinpayments":{"uri":"ipn\/coinpayments","methods":["POST"],"domain":"domain.com"},"ipn.CoinpaymentsFiat":{"uri":"ipn\/coinpayments-fiat","methods":["POST"],"domain":"domain.com"},"ipn.Coingate":{"uri":"ipn\/coingate","methods":["POST"],"domain":"domain.com"},"ipn.CoinbaseCommerce":{"uri":"ipn\/coinbase-commerce","methods":["POST"],"domain":"domain.com"},"ipn.Mollie":{"uri":"ipn\/mollie","methods":["GET","HEAD"],"domain":"domain.com"},"ipn.Cashmaal":{"uri":"ipn\/cashmaal","methods":["POST"],"domain":"domain.com"},"ipn.MercadoPago":{"uri":"ipn\/mercado-pago","methods":["POST"],"domain":"domain.com"},"user.":{"uri":"{iso_code}\/password\/confirm","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"aut_assets":{"uri":"aut-assets","methods":["GET","HEAD"],"domain":"domain.com"},"user.login":{"uri":"{iso_code}\/login","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.logout":{"uri":"{iso_code}\/logout","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.register":{"uri":"{iso_code}\/register","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.request":{"uri":"{iso_code}\/password\/reset","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.email":{"uri":"{iso_code}\/password\/email","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.reset":{"uri":"{iso_code}\/password\/reset\/{token}","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.update":{"uri":"{iso_code}\/password\/reset","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.password.confirm":{"uri":"{iso_code}\/password\/confirm","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.verification.notice":{"uri":"{iso_code}\/email\/verify","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.verification.verify":{"uri":"{iso_code}\/email\/verify\/{id}\/{hash}","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.verification.resend":{"uri":"{iso_code}\/email\/resend","methods":["POST"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.home":{"uri":"{iso_code}\/dashboard","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.notify.index":{"uri":"{iso_code}\/notify","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.notify.edit":{"uri":"{iso_code}\/notify\/{id}\/edit","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"user.notify.delete":{"uri":"{iso_code}\/notify\/{id}\/delete","methods":["GET","HEAD"],"wheres":{"iso_code":"[a-zA-Z]{2}"},"domain":"domain.com"},"superadmin.login":{"uri":"super-admin\/login","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.":{"uri":"super-admin\/password\/confirm","methods":["POST"],"domain":"domain.com"},"superadmin.logout":{"uri":"super-admin\/logout","methods":["POST"],"domain":"domain.com"},"superadmin.register":{"uri":"super-admin\/register","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.password.request":{"uri":"super-admin\/password\/reset","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.password.email":{"uri":"super-admin\/password\/email","methods":["POST"],"domain":"domain.com"},"superadmin.password.reset":{"uri":"super-admin\/password\/reset\/{token}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.password.update":{"uri":"super-admin\/password\/reset","methods":["POST"],"domain":"domain.com"},"superadmin.password.confirm":{"uri":"super-admin\/password\/confirm","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.home":{"uri":"super-admin","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.profile.index":{"uri":"super-admin\/profile","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.profile.edit":{"uri":"super-admin\/profile\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.profile.update":{"uri":"super-admin\/profile\/edit","methods":["POST"],"domain":"domain.com"},"superadmin.currencies.index":{"uri":"super-admin\/currencies","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.currencies.store":{"uri":"super-admin\/currencies\/store","methods":["POST"],"domain":"domain.com"},"superadmin.currencies.update":{"uri":"super-admin\/currencies\/update","methods":["POST"],"domain":"domain.com"},"superadmin.currencies.api.update":{"uri":"super-admin\/currencies\/api-key\/update","methods":["POST"],"domain":"domain.com"},"superadmin.transaction-charges.index":{"uri":"super-admin\/transaction-charges","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.transaction-charges.update":{"uri":"super-admin\/transaction-charges\/update","methods":["POST"],"domain":"domain.com"},"superadmin.notify.index":{"uri":"super-admin\/notify","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.edit":{"uri":"super-admin\/notify\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.delete":{"uri":"super-admin\/notify\/{id}\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.all.index":{"uri":"super-admin\/notify\/all","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.all.edit":{"uri":"super-admin\/notify\/{id}\/all","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.notify.all.delete":{"uri":"super-admin\/notify\/{id}\/all\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.index":{"uri":"super-admin\/user","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.verified":{"uri":"super-admin\/user\/verified","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.unverified":{"uri":"super-admin\/user\/unverified","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.store":{"uri":"super-admin\/user\/createuser","methods":["POST"],"domain":"domain.com"},"superadmin.user.delete":{"uri":"super-admin\/user\/{id}\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.edit":{"uri":"super-admin\/user\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.update":{"uri":"super-admin\/user\/{id}\/edit","methods":["POST"],"domain":"domain.com"},"superadmin.user.createuserpaymentandcreatedocument":{"uri":"super-admin\/user\/{id}\/createpandd","methods":["POST"],"domain":"domain.com"},"superadmin.user.paymentaccountdestroy":{"uri":"super-admin\/user\/{id}\/paymentdelete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.user.impersonate":{"uri":"super-admin\/user\/impersonate\/user\/{id}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.kyc.unapproved":{"uri":"super-admin\/kyc\/unapproved","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.kyc.update":{"uri":"super-admin\/kyc\/update","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.kyc.updateDoc":{"uri":"super-admin\/kyc\/update\/{id}","methods":["POST"],"domain":"domain.com"},"superadmin.permisionrole.indexroles":{"uri":"super-admin\/permisionrole\/roles","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.indexpermisions":{"uri":"super-admin\/permisionrole\/permission","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.role.edit":{"uri":"super-admin\/permisionrole\/role\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.permission.edit":{"uri":"super-admin\/permisionrole\/permission\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.role.update":{"uri":"super-admin\/permisionrole\/role\/{id}\/edit","methods":["POST"],"domain":"domain.com"},"superadmin.permisionrole.permission.update":{"uri":"super-admin\/permisionrole\/permission\/{id}\/edit","methods":["POST"],"domain":"domain.com"},"superadmin.permisionrole.role.delete":{"uri":"super-admin\/permisionrole\/role\/{id}\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.permission.delete":{"uri":"super-admin\/permisionrole\/permission\/{id}\/delete","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.permisionrole.role.store":{"uri":"super-admin\/permisionrole\/createrole","methods":["POST"],"domain":"domain.com"},"superadmin.permisionrole.permission.store":{"uri":"super-admin\/permisionrole\/createpermission","methods":["POST"],"domain":"domain.com"},"superadmin.gateway.index":{"uri":"super-admin\/gateway","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.gateway.edit":{"uri":"super-admin\/gateway\/gateway-edit\/{id}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.gateway.create":{"uri":"super-admin\/gateway\/cryptopaymentgateway","methods":["POST"],"domain":"domain.com"},"superadmin.gateway.update":{"uri":"super-admin\/gateway\/gateway-update\/{id}","methods":["PUT"],"domain":"domain.com"},"superadmin.gateway.update_form":{"uri":"super-admin\/gateway\/gateway-form-update\/{id}","methods":["PUT"],"domain":"domain.com"},"superadmin.gateway.delete":{"uri":"super-admin\/gateway\/gateway-delete\/{id}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.email.template.global":{"uri":"super-admin\/email\/email-template\/global","methods":["POST"],"domain":"domain.com"},"superadmin.email.template.setting":{"uri":"super-admin\/email\/email-template\/setting","methods":["POST"],"domain":"domain.com"},"superadmin.email.template.index":{"uri":"super-admin\/email\/email-template\/index","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.email.template.edit":{"uri":"super-admin\/email\/email-template\/{id}\/edit","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.email.template.update":{"uri":"super-admin\/email\/email-template\/{id}\/update","methods":["POST"],"domain":"domain.com"},"superadmin.email.template.sendTestMail":{"uri":"super-admin\/email\/email-template\/send-test-mail","methods":["POST"],"domain":"domain.com"},"superadmin.sms.template.global":{"uri":"super-admin\/sms\/sms-template\/global","methods":["POST"],"domain":"domain.com"},"superadmin.sms.template.index":{"uri":"super-admin\/sms\/sms-template\/index","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.sms.template.edit":{"uri":"super-admin\/sms\/sms-template\/edit\/{id}","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.sms.template.update":{"uri":"super-admin\/sms\/sms-template\/update\/{id}","methods":["POST"],"domain":"domain.com"},"superadmin.sms.template.sendTestSMS":{"uri":"super-admin\/sms\/email-template\/send-test-sms","methods":["POST"],"domain":"domain.com"},"superadmin.settings.index":{"uri":"super-admin\/settings","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.settings.store":{"uri":"super-admin\/settings","methods":["POST"],"domain":"domain.com"},"superadmin.settings.update":{"uri":"super-admin\/settings","methods":["PUT"],"domain":"domain.com"},"superadmin.settings.delete":{"uri":"super-admin\/settings\/{id}","methods":["DELETE"],"domain":"domain.com"},"superadmin.settings.move_up":{"uri":"super-admin\/settings\/{id}\/move_up","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.settings.move_down":{"uri":"super-admin\/settings\/{id}\/move_down","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.settings.delete_value":{"uri":"super-admin\/settings\/{id}\/delete_value","methods":["GET","HEAD"],"domain":"domain.com"},"superadmin.settings.upload":{"uri":"super-admin\/settings\/upload","methods":["POST"],"domain":"domain.com"}}};
  |  
  | !function(t,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define(r):(t\|\|self).route=r()}(this,function(){function t(t,r){for(var n=0;n<r.length;n++){var e=r[n];e.enumerable=e.enumerable\|\|!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(t,e.key,e)}}function r(r,n,e){return n&&t(r.prototype,n),e&&t(r,e),Object.defineProperty(r,"prototype",{writable:!1}),r}function n(){return n=Object.assign\|\|function(t){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var e in n)Object.prototype.hasOwnProperty.call(n,e)&&(t[e]=n[e])}return t},n.apply(this,arguments)}function e(t){return e=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__\|\|Object.getPrototypeOf(t)},e(t)}function o(t,r){return o=Object.setPrototypeOf\|\|function(t,r){return t.__proto__=r,t},o(t,r)}function i(){if("undefined"==typeof Reflect\|\|!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(t){return!1}}function u(t,r,n){return u=i()?Reflect.construct:function(t,r,n){var e=[null];e.push.apply(e,r);var i=new(Function.bind.apply(t,e));return n&&o(i,n.prototype),i},u.apply(null,arguments)}function f(t){var r="function"==typeof Map?new Map:void 0;return f=function(t){if(null===t\|\|-1===Function.toString.call(t).indexOf("[native code]"))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(t))return r.get(t);r.set(t,n)}function n(){return u(t,arguments,e(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),o(n,t)},f(t)}var a=String.prototype.replace,c=/%20/g,l="RFC3986",s={default:l,formatters:{RFC1738:function(t){return a.call(t,c,"+")},RFC3986:function(t){return String(t)}},RFC1738:"RFC1738",RFC3986:l},v=Object.prototype.hasOwnProperty,p=Array.isArray,y=function(){for(var t=[],r=0;r<256;++r)t.push("%"+((r<16?"0":"")+r.toString(16)).toUpperCase());return t}(),d=function(t,r){for(var n=r&&r.plainObjects?Object.create(null):{},e=0;e<t.length;++e)void 0!==t[e]&&(n[e]=t[e]);return n},b={arrayToObject:d,assign:function(t,r){return Object.keys(r).reduce(function(t,n){return t[n]=r[n],t},t)},combine:function(t,r){return[].concat(t,r)},compact:function(t){for(var r=[{obj:{o:t},prop:"o"}],n=[],e=0;e<r.length;++e)for(var o=r[e],i=o.obj[o.prop],u=Object.keys(i),f=0;f<u.length;++f){var a=u[f],c=i[a];"object"==typeof c&&null!==c&&-1===n.indexOf(c)&&(r.push({obj:i,prop:a}),n.push(c))}return function(t){for(;t.length>1;){var r=t.pop(),n=r.obj[r.prop];if(p(n)){for(var e=[],o=0;o<n.length;++o)void 0!==n[o]&&e.push(n[o]);r.obj[r.prop]=e}}}(r),t},decode:function(t,r,n){var e=t.replace(/\+/g," ");if("iso-8859-1"===n)return e.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(e)}catch(t){return e}},encode:function(t,r,n,e,o){if(0===t.length)return t;var i=t;if("symbol"==typeof t?i=Symbol.prototype.toString.call(t):"string"!=typeof t&&(i=String(t)),"iso-8859-1"===n)return escape(i).replace(/%u[0-9a-f]{4}/gi,function(t){return"%26%23"+parseInt(t.slice(2),16)+"%3B"});for(var u="",f=0;f<i.length;++f){var a=i.charCodeAt(f);45===a\|\|46===a\|\|95===a\|\|126===a\|\|a>=48&&a<=57\|\|a>=65&&a<=90\|\|a>=97&&a<=122\|\|o===s.RFC1738&&(40===a\|\|41===a)?u+=i.charAt(f):a<128?u+=y[a]:a<2048?u+=y[192\|a>>6]+y[128\|63&a]:a<55296\|\|a>=57344?u+=y[224\|a>>12]+y[128\|a>>6&63]+y[128\|63&a]:(a=65536+((1023&a)<<10\|1023&i.charCodeAt(f+=1)),u+=y[240\|a>>18]+y[128\|a>>12&63]+y[128\|a>>6&63]+y[128\|63&a])}return u},isBuffer:function(t){return!(!t\|\|"object"!=typeof t\|\|!(t.constructor&&t.constructor.isBuffer&&t.constructor.isBuffer(t)))},isRegExp:function(t){return"[object RegExp]"===Object.prototype.toString.call(t)},maybeMap:function(t,r){if(p(t)){for(var n=[],e=0;e<t.length;e+=1)n.push(r(t[e]));return n}return r(t)},merge:function t(r,n,e){if(!n)return r;if("object"!=typeof n){if(p(r))r.push(n);else{if(!r\|\|"object"!=typeof r)return[r,n];(e&&(e.plainObjects\|\|e.allowPrototypes)\|\|!v.call(Object.prototype,n))&&(r[n]=!0)}return r}if(!r\|\|"object"!=typeof r)return[r].concat(n);var o=r;return p(r)&&!p(n)&&(o=d(r,e)),p(r)&&p(n)?(n.forEach(function(n,o){if(v.call(r,o)){var i=r[o];i&&"object"==typeof i&&n&&"object"==typeof n?r[o]=t(i,n,e):r.push(n)}else r[o]=n}),r):Object.keys(n).reduce(function(r,o){var i=n[o];return r[o]=v.call(r,o)?t(r[o],i,e):i,r},o)}},h=Object.prototype.hasOwnProperty,m={brackets:function(t){return t+"[]"},comma:"comma",indices:function(t,r){return t+"["+r+"]"},repeat:function(t){return t}},g=Array.isArray,j=String.prototype.split,w=Array.prototype.push,O=function(t,r){w.apply(t,g(r)?r:[r])},E=Date.prototype.toISOString,R=s.default,S={addQueryPrefix:!1,allowDots:!1,charset:"utf-8",charsetSentinel:!1,delimiter:"&",encode:!0,encoder:b.encode,encodeValuesOnly:!1,format:R,formatter:s.formatters[R],indices:!1,serializeDate:function(t){return E.call(t)},skipNulls:!1,strictNullHandling:!1},T=function t(r,n,e,o,i,u,f,a,c,l,s,v,p,y){var d,h=r;if("function"==typeof f?h=f(n,h):h instanceof Date?h=l(h):"comma"===e&&g(h)&&(h=b.maybeMap(h,function(t){return t instanceof Date?l(t):t})),null===h){if(o)return u&&!p?u(n,S.encoder,y,"key",s):n;h=""}if("string"==typeof(d=h)\|\|"number"==typeof d\|\|"boolean"==typeof d\|\|"symbol"==typeof d\|\|"bigint"==typeof d\|\|b.isBuffer(h)){if(u){var m=p?n:u(n,S.encoder,y,"key",s);if("comma"===e&&p){for(var w=j.call(String(h),","),E="",R=0;R<w.length;++R)E+=(0===R?"":",")+v(u(w[R],S.encoder,y,"value",s));return[v(m)+"="+E]}return[v(m)+"="+v(u(h,S.encoder,y,"value",s))]}return[v(n)+"="+v(String(h))]}var T,k=[];if(void 0===h)return k;if("comma"===e&&g(h))T=[{value:h.length>0?h.join(",")\|\|null:void 0}];else if(g(f))T=f;else{var x=Object.keys(h);T=a?x.sort(a):x}for(var N=0;N<T.length;++N){var C=T[N],D="object"==typeof C&&void 0!==C.value?C.value:h[C];if(!i\|\|null!==D){var F=g(h)?"function"==typeof e?e(n,C):n:n+(c?"."+C:"["+C+"]");O(k,t(D,F,e,o,i,u,f,a,c,l,s,v,p,y))}}return k},k=Object.prototype.hasOwnProperty,x=Array.isArray,N={allowDots:!1,allowPrototypes:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decoder:b.decode,delimiter:"&",depth:5,ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},C=function(t){return t.replace(/&#(\d+);/g,function(t,r){return String.fromCharCode(parseInt(r,10))})},D=function(t,r){return t&&"string"==typeof t&&r.comma&&t.indexOf(",")>-1?t.split(","):t},F=function(t,r,n,e){if(t){var o=n.allowDots?t.replace(/\.([^.[]+)/g,"[$1]"):t,i=/(\[[^[\]]*])/g,u=n.depth>0&&/(\[[^[\]]*])/.exec(o),f=u?o.slice(0,u.index):o,a=[];if(f){if(!n.plainObjects&&k.call(Object.prototype,f)&&!n.allowPrototypes)return;a.push(f)}for(var c=0;n.depth>0&&null!==(u=i.exec(o))&&c<n.depth;){if(c+=1,!n.plainObjects&&k.call(Object.prototype,u[1].slice(1,-1))&&!n.allowPrototypes)return;a.push(u[1])}return u&&a.push("["+o.slice(u.index)+"]"),function(t,r,n,e){for(var o=e?r:D(r,n),i=t.length-1;i>=0;--i){var u,f=t[i];if("[]"===f&&n.parseArrays)u=[].concat(o);else{u=n.plainObjects?Object.create(null):{};var a="["===f.charAt(0)&&"]"===f.charAt(f.length-1)?f.slice(1,-1):f,c=parseInt(a,10);n.parseArrays\|\|""!==a?!isNaN(c)&&f!==a&&String(c)===a&&c>=0&&n.parseArrays&&c<=n.arrayLimit?(u=[])[c]=o:"__proto__"!==a&&(u[a]=o):u={0:o}}o=u}return o}(a,r,n,e)}},$=function(t,r){var n=function(t){if(!t)return N;if(null!=t.decoder&&"function"!=typeof t.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==t.charset&&"utf-8"!==t.charset&&"iso-8859-1"!==t.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");return{allowDots:void 0===t.allowDots?N.allowDots:!!t.allowDots,allowPrototypes:"boolean"==typeof t.allowPrototypes?t.allowPrototypes:N.allowPrototypes,arrayLimit:"number"==typeof t.arrayLimit?t.arrayLimit:N.arrayLimit,charset:void 0===t.charset?N.charset:t.charset,charsetSentinel:"boolean"==typeof t.charsetSentinel?t.charsetSentinel:N.charsetSentinel,comma:"boolean"==typeof t.comma?t.comma:N.comma,decoder:"function"==typeof t.decoder?t.decoder:N.decoder,delimiter:"string"==typeof t.delimiter\|\|b.isRegExp(t.delimiter)?t.delimiter:N.delimiter,depth:"number"==typeof t.depth\|\|!1===t.depth?+t.depth:N.depth,ignoreQueryPrefix:!0===t.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof t.interpretNumericEntities?t.interpretNumericEntities:N.interpretNumericEntities,parameterLimit:"number"==typeof t.parameterLimit?t.parameterLimit:N.parameterLimit,parseArrays:!1!==t.parseArrays,plainObjects:"boolean"==typeof t.plainObjects?t.plainObjects:N.plainObjects,strictNullHandling:"boolean"==typeof t.strictNullHandling?t.strictNullHandling:N.strictNullHandling}}(r);if(""===t\|\|null==t)return n.plainObjects?Object.create(null):{};for(var e="string"==typeof t?function(t,r){var n,e={},o=(r.ignoreQueryPrefix?t.replace(/^\?/,""):t).split(r.delimiter,Infinity===r.parameterLimit?void 0:r.parameterLimit),i=-1,u=r.charset;if(r.charsetSentinel)for(n=0;n<o.length;++n)0===o[n].indexOf("utf8=")&&("utf8=%E2%9C%93"===o[n]?u="utf-8":"utf8=%26%2310003%3B"===o[n]&&(u="iso-8859-1"),i=n,n=o.length);for(n=0;n<o.length;++n)if(n!==i){var f,a,c=o[n],l=c.indexOf("]="),s=-1===l?c.indexOf("="):l+1;-1===s?(f=r.decoder(c,N.decoder,u,"key"),a=r.strictNullHandling?null:""):(f=r.decoder(c.slice(0,s),N.decoder,u,"key"),a=b.maybeMap(D(c.slice(s+1),r),function(t){return r.decoder(t,N.decoder,u,"value")})),a&&r.interpretNumericEntities&&"iso-8859-1"===u&&(a=C(a)),c.indexOf("[]=")>-1&&(a=x(a)?[a]:a),e[f]=k.call(e,f)?b.combine(e[f],a):a}return e}(t,n):t,o=n.plainObjects?Object.create(null):{},i=Object.keys(e),u=0;u<i.length;++u){var f=i[u],a=F(f,e[f],n,"string"==typeof t);o=b.merge(o,a,n)}return b.compact(o)},A=/*#__PURE__*/function(){function t(t,r,n){var e,o;this.name=t,this.definition=r,this.bindings=null!=(e=r.bindings)?e:{},this.wheres=null!=(o=r.wheres)?o:{},this.config=n}var n=t.prototype;return n.matchesUrl=function(t){var r=this;if(!this.definition.methods.includes("GET"))return!1;var n=this.template.replace(/(\/?){([^}?]*)(\??)}/g,function(t,n,e,o){var i,u="(?<"+e+">"+((null==(i=r.wheres[e])?void 0:i.replace(/(^\^)\|(\$)/g,""))\|\|"[^/?]+")+")";return o?"("+n+u+")?":""+n+u}).replace(/^\w+:\/\//,""),e=t.replace(/^\w+:\/\//,"").split("?"),o=e[0],i=e[1],u=new RegExp("^"+n+"/?$").exec(o);return!!u&&{params:u.groups,query:$(i)}},n.compile=function(t){var r=this,n=this.parameterSegments;return n.length?this.template.replace(/{([^}?]+)(\??)}/g,function(e,o,i){var u,f,a;if(!i&&[null,void 0].includes(t[o]))throw new Error("Ziggy error: '"+o+"' parameter is required for route '"+r.name+"'.");if(n[n.length-1].name===o&&".*"===r.wheres[o])return encodeURIComponent(null!=(a=t[o])?a:"").replace(/%2F/g,"/");if(r.wheres[o]&&!new RegExp("^"+(i?"("+r.wheres[o]+")?":r.wheres[o])+"$").test(null!=(u=t[o])?u:""))throw new Error("Ziggy error: '"+o+"' parameter does not match required format '"+r.wheres[o]+"' for route '"+r.name+"'.");return encodeURIComponent(null!=(f=t[o])?f:"")}).replace(/\/+$/,""):this.template},r(t,[{key:"template",get:function(){return((this.config.absolute?this.definition.domain?""+this.config.url.match(/^\w+:\/\//)[0]+this.definition.domain+(this.config.port?":"+this.config.port:""):this.config.url:"")+"/"+this.definition.uri).replace(/\/+$/,"")}},{key:"parameterSegments",get:function(){var t,r;return null!=(t=null==(r=this.template.match(/{[^}?]+\??}/g))?void 0:r.map(function(t){return{name:t.replace(/{\|\??}/g,""),required:!/\?}$/.test(t)}}))?t:[]}}]),t}(),P=/*#__PURE__*/function(t){var e,i;function u(r,e,o,i){var u;if(void 0===o&&(o=!0),(u=t.call(this)\|\|this).t=null!=i?i:"undefined"!=typeof Ziggy?Ziggy:null==globalThis?void 0:globalThis.Ziggy,u.t=n({},u.t,{absolute:o}),r){if(!u.t.routes[r])throw new Error("Ziggy error: route '"+r+"' is not in the route list.");u.i=new A(r,u.t.routes[r],u.t),u.u=u.l(e)}return u}i=t,(e=u).prototype=Object.create(i.prototype),e.prototype.constructor=e,o(e,i);var f=u.prototype;return f.toString=function(){var t=this,r=Object.keys(this.u).filter(function(r){return!t.i.parameterSegments.some(function(t){return t.name===r})}).filter(function(t){return"_query"!==t}).reduce(function(r,e){var o;return n({},r,((o={})[e]=t.u[e],o))},{});return this.i.compile(this.u)+function(t,r){var n,e=t,o=function(t){if(!t)return S;if(null!=t.encoder&&"function"!=typeof t.encoder)throw new TypeError("Encoder has to be a function.");var r=t.charset\|\|S.charset;if(void 0!==t.charset&&"utf-8"!==t.charset&&"iso-8859-1"!==t.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var n=s.default;if(void 0!==t.format){if(!h.call(s.formatters,t.format))throw new TypeError("Unknown format option provided.");n=t.format}var e=s.formatters[n],o=S.filter;return("function"==typeof t.filter\|\|g(t.filter))&&(o=t.filter),{addQueryPrefix:"boolean"==typeof t.addQueryPrefix?t.addQueryPrefix:S.addQueryPrefix,allowDots:void 0===t.allowDots?S.allowDots:!!t.allowDots,charset:r,charsetSentinel:"boolean"==typeof t.charsetSentinel?t.charsetSentinel:S.charsetSentinel,delimiter:void 0===t.delimiter?S.delimiter:t.delimiter,encode:"boolean"==typeof t.encode?t.encode:S.encode,encoder:"function"==typeof t.encoder?t.encoder:S.encoder,encodeValuesOnly:"boolean"==typeof t.encodeValuesOnly?t.encodeValuesOnly:S.encodeValuesOnly,filter:o,format:n,formatter:e,serializeDate:"function"==typeof t.serializeDate?t.serializeDate:S.serializeDate,skipNulls:"boolean"==typeof t.skipNulls?t.skipNulls:S.skipNulls,sort:"function"==typeof t.sort?t.sort:null,strictNullHandling:"boolean"==typeof t.strictNullHandling?t.strictNullHandling:S.strictNullHandling}}(r);"function"==typeof o.filter?e=(0,o.filter)("",e):g(o.filter)&&(n=o.filter);var i=[];if("object"!=typeof e\|\|null===e)return"";var u=m[r&&r.arrayFormat in m?r.arrayFormat:r&&"indices"in r?r.indices?"indices":"repeat":"indices"];n\|\|(n=Object.keys(e)),o.sort&&n.sort(o.sort);for(var f=0;f<n.length;++f){var a=n[f];o.skipNulls&&null===e[a]\|\|O(i,T(e[a],a,u,o.strictNullHandling,o.skipNulls,o.encode?o.encoder:null,o.filter,o.sort,o.allowDots,o.serializeDate,o.format,o.formatter,o.encodeValuesOnly,o.charset))}var c=i.join(o.delimiter),l=!0===o.addQueryPrefix?"?":"";return o.charsetSentinel&&(l+="iso-8859-1"===o.charset?"utf8=%26%2310003%3B&":"utf8=%E2%9C%93&"),c.length>0?l+c:""}(n({},r,this.u._query),{addQueryPrefix:!0,arrayFormat:"indices",encodeValuesOnly:!0,skipNulls:!0,encoder:function(t,r){return"boolean"==typeof t?Number(t):r(t)}})},f.v=function(t){var r=this;t?this.t.absolute&&t.startsWith("/")&&(t=this.p().host+t):t=this.h();var e={},o=Object.entries(this.t.routes).find(function(n){return e=new A(n[0],n[1],r.t).matchesUrl(t)})\|\|[void 0,void 0];return n({name:o[0]},e,{route:o[1]})},f.h=function(){var t=this.p(),r=t.pathname,n=t.search;return(this.t.absolute?t.host+r:r.replace(this.t.url.replace(/^\w*:\/\/[^/]+/,""),"").replace(/^\/+/,"/"))+n},f.current=function(t,r){var e=this.v(),o=e.name,i=e.params,u=e.query,f=e.route;if(!t)return o;var a=new RegExp("^"+t.replace(/\./g,"\\.").replace(/\*/g,".*")+"$").test(o);if([null,void 0].includes(r)\|\|!a)return a;var c=new A(o,f,this.t);r=this.l(r,c);var l=n({},i,u);return!(!Object.values(r).every(function(t){return!t})\|\|Object.values(l).some(function(t){return void 0!==t}))\|\|Object.entries(r).every(function(t){return l[t[0]]==t[1]})},f.p=function(){var t,r,n,e,o,i,u="undefined"!=typeof window?window.location:{},f=u.host,a=u.pathname,c=u.search;return{host:null!=(t=null==(r=this.t.location)?void 0:r.host)?t:void 0===f?"":f,pathname:null!=(n=null==(e=this.t.location)?void 0:e.pathname)?n:void 0===a?"":a,search:null!=(o=null==(i=this.t.location)?void 0:i.search)?o:void 0===c?"":c}},f.has=function(t){return Object.keys(this.t.routes).includes(t)},f.l=function(t,r){var e=this;void 0===t&&(t={}),void 0===r&&(r=this.i),t=["string","number"].includes(typeof t)?[t]:t;var o=r.parameterSegments.filter(function(t){return!e.t.defaults[t.name]});if(Array.isArray(t))t=t.reduce(function(t,r,e){var i,u;return n({},t,o[e]?((i={})[o[e].name]=r,i):"object"==typeof r?r:((u={})[r]="",u))},{});else if(1===o.length&&!t[o[0].name]&&(t.hasOwnProperty(Object.values(r.bindings)[0])\|\|t.hasOwnProperty("id"))){var i;(i={})[o[0].name]=t,t=i}return n({},this.m(r),this.g(t,r))},f.m=function(t){var r=this;return t.parameterSegments.filter(function(t){return r.t.defaults[t.name]}).reduce(function(t,e,o){var i,u=e.name;return n({},t,((i={})[u]=r.t.defaults[u],i))},{})},f.g=function(t,r){var e=r.bindings,o=r.parameterSegments;return Object.entries(t).reduce(function(t,r){var i,u,f=r[0],a=r[1];if(!a\|\|"object"!=typeof a\|\|Array.isArray(a)\|\|!o.some(function(t){return t.name===f}))return n({},t,((u={})[f]=a,u));if(!a.hasOwnProperty(e[f])){if(!a.hasOwnProperty("id"))throw new Error("Ziggy error: object passed as '"+f+"' parameter is missing route model binding key '"+e[f]+"'.");e[f]="id"}return n({},t,((i={})[f]=a[e[f]],i))},{})},f.valueOf=function(){return this.toString()},f.check=function(t){return this.has(t)},r(u,[{key:"params",get:function(){var t=this.v();return n({},t.params,t.query)}}]),u}(/*#__PURE__*/f(String));return function(t,r,n,e){var o=new P(t,r,n,e);return t?o.toString():o}});
  |  
  | </script>

<!--EndFragment-->
</body>
</html>
bakerkretzmar commented 2 years ago

Yes, but your Vue components aren't using that config, they're using the config from your Vue mixin, which is coming from the ziggy.js file.

odion-cloud commented 2 years ago

Yes, but your Vue components aren't using that config, they're using the config from your Vue mixin, which is coming from the ziggy.js file.

wow this works ,big big thanks alot

odion-cloud commented 2 years ago

Yes, but your Vue components aren't using that config, they're using the config from your Vue mixin, which is coming from the ziggy.js file.

@route works, but is make all my route public in the view is there a way i can make it not to be public?

bakerkretzmar commented 2 years ago

Take a look at the docs on Filtering Routes, you can't really make them completely private but you can filter which ones are available client-side.

Also, if you're only calling route() inside Vue components, you can remove the @routes Blade directive completely. Your routes will still technically be public because they'll be bundled inside your app javascript, but they'll be much harder to find there.