fjffk简å�•的咖啡店科开å�‘2方法2 环æ»�皆山也。其西å�—诸峰,林壑尤美,望之蔚然而深秀者,ç�…ç�Šä¹Ÿã€‚山行六七里,æ¸�闻水声潺潺,而泻出于两峰之间者,酿泉也 ??????????????????????????????? ??????????????/????????????????? ............/................... .........................../... ??????????????????????????????? >>>>>>>>>>>>>/>>>>>>>>>>>>>>>>> ÿØÿà JFIF    ÿÛ „  ( %!1!%)+//.383,7(-.+  -%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  Â¥2" ÿÄ     ÿÄ J    ! 1AQ"aqÂ�2‘#BR‚¡Ã�Ñ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ   ÿÄ *  !1AQa‘"2q3Â�±ð#b¡ÿÚ   ? ¼QxJQaÃ�uò¸Zö Úü8,Ã�Úú "SSn<rçù–´âE—^ªBÖ9À\†¸Â�ÔÂ�Ã�T­ÃÛ5 ëd´³Ã�#Ã�;Þ38ϔÂ� ¶H£M:wÃŽ3…³…âpÔF&‚FK¸9„â4àGEõªfÂ�ÿ ‘ñ(ßw­pŽF|È¥ù®häðÃ�Ѷ¹‘[Ã’inÙW¶ùñYËœQ{›K"išÒ[Ú8žë\F¹@-?v"ÔUâ€�,ìöžkÿ {I‡£šÃ�?e rÂ�íV ?> ......................................... ............................................................................. <<<<<<<<<<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>/>>>>>>>>>>>>>>>>>> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> dsdfPK„W]¡n�mmAuthServiceProvider.phpnu„[µü¤ */ protected $policies = [ 'App\Models\Model' => 'App\Policies\ModelPolicy', ]; /** * Register any authentication / authorization services. */ public function boot(): void { Passport::enablePasswordGrant(); $this->registerPolicies(); } } PK„W]¦%¹  EventServiceProvider.phpnu„[µü¤> */ protected $listen = [ Registered::class => [ SendEmailVerificationNotification::class, ], PaypalWebhookEvent::class => [ PaypalWebhookListener::class, ], StripeWebhookEvent::class => [ StripeWebhookListener::class, ], YokassaWebhookEvent::class => [ YokassaWebhookListener::class, ], TwoCheckoutWebhookEvent::class => [ TwoCheckoutWebhookListener::class, ], IyzicoWebhookEvent::class => [ IyzicoWebhookListener::class, ], PaystackWebhookEvent::class => [ PaystackWebhookListener::class, ], BankTransferEvent::class => [ BankTransferListener::class, ], FreePaymentEvent::class => [ FreePaymentListener::class, ], StripeLifetimeEvent::class => [ StripeLifetimeListener::class, ], PaypalLifetimeEvent::class => [ PaypalLifetimeListener::class, ], IyzicoLifetimeEvent::class => [ IyzicoLifetimeListener::class, ], PaystackLifetimeEvent::class => [ PaystackLifetimeListener::class, ], UsersActivityEvent::class => [ UsersActivityListener::class, ], ]; /** * Register any events for your application. */ public function boot(): void { // } /** * Determine if events and listeners should be automatically discovered. */ public function shouldDiscoverEvents(): bool { return false; } } PK„W]»ª*kÙ Ù ChatbotServiceProvider.phpnu„[µü¤app->singleton(\Illuminate\Foundation\Vite::class, static function () { return new Vite; }); } public function boot(Kernel $kernel): void { $this->setMiddlewareGroup($kernel); $this->registerRoutes(); } private function router(): Router|Route { return $this->app['router']; } private function setMiddlewareGroup(Kernel $kernel): void { $this->router() ->middlewareGroup('chatbot_api', [ \App\Http\Middleware\ChatbotPreflightMiddleware::class, \App\Http\Middleware\CorsMiddleware::class, \Illuminate\Routing\Middleware\ThrottleRequests::class . ':api', \Illuminate\Routing\Middleware\SubstituteBindings::class, ]); } private function registerRoutes(): void { $this->router() ->prefix('chatbot-assets') ->controller(ChatbotAssetsController::class) ->group(function () { $this->app['router']->get('/{entryPoint}', 'asset')->where('entryPoint', '.*'); }); $this->router() ->middleware('chatbot_api') ->prefix('chatbot-api') ->group(function () { Route::any('/token', ChatbotTokenController::class); Route::match(['get', 'post', 'options'], '/chat-send', [AIChatController::class, 'chatOutput']); Route::match(['get', 'post', 'options'], '/chatbot-send', [AIChatController::class, 'chatbotOutput']); Route::match(['options', 'post'], '/open-chatbot-area', [ AIChatController::class, 'openChatBotArea', ])->name('open-chatbot-area'); Route::any('embed', ChatbotEmbedController::class)->name('embed'); Route::post('/start-new-chatbot', [AIChatController::class, 'startNewChatBot']); })->name('chatbot-api.'); } } PK„W],®Ê77ExtensionServiceProvider.phpnu„[µü¤extensionProviders(); foreach ($providers as $provider) { if (class_exists($provider)) { $this->app->register($provider); } } } private function extensionProviders(): array { return [ \App\Providers\ChatbotServiceProvider::class, ]; } } PK„W]Á ŠŠRouteServiceProvider.phpnu„[µü¤configureRateLimiting(); $this->routes(function () { Route::middleware('api') ->prefix('api') ->group(base_path('routes/api.php')); Route::middleware([ 'web', ViewSharedMiddleware::class, NewExtensionInstalled::class, ])->group(base_path('routes/web.php')); }); } protected function configureRateLimiting(): void { RateLimiter::for('api', static function (Request $request) { return Limit::perMinute(60)->by($request->user()?->id ?: $request->ip()); }); } } PK„W]RPQ8ggBroadcastServiceProvider.phpnu„[µü¤forceSchemeHttps(); $this->app->useLangPath(base_path('lang')); if (Helper::dbConnectionStatus()) { Schema::defaultStringLength(191); $this->initializeTables(); $this->configSet(); $this->jobRuns(); $this->app->setLocale($this->getLocale('en')); } else { Theme::set('default'); } $this->registerHealthChecks(); $this->bootBladeDirectives(); $this->bootObservers(); } protected function configSet(): void { if (TableSchema::hasTable('settings', $this->tables) && DB::table('settings')->exists()) { $setting = Setting::getCache(); $this->setPusherConfig(); $this->setRecaptchaConfig($setting); $this->setMailConfig($setting); } } protected function setPusherConfig(): void { $this->app['config']->set('broadcasting.connections.pusher.key', setting('pusher_app_key', '')); $this->app['config']->set('broadcasting.connections.pusher.secret', setting('pusher_app_secret', '')); $this->app['config']->set('broadcasting.connections.pusher.app_id', setting('pusher_app_id', '')); $this->app['config']->set('broadcasting.connections.pusher.cluster', setting('pusher_app_cluster', 'mt1')); $this->app['config']->set('broadcasting.connections.pusher.options.host', 'api-' . setting('pusher_app_cluster', 'mt1') . '.pusher.com'); } protected function setRecaptchaConfig($setting): void { $this->app['config']->set('services.recaptcha.key', $setting->recaptcha_sitekey); $this->app['config']->set('services.recaptcha.secret', $setting->recaptcha_secretkey); } protected function setMailConfig($setting): void { $this->app['config']->set('mail.mailers.smtp.transport', config('mail.default', 'smtp')); $this->app['config']->set('mail.mailers.smtp.host', $setting->smtp_host ?? config('mail.mailers.smtp.host')); $this->app['config']->set('mail.mailers.smtp.port', (int) ($setting->smtp_port ?? config('mail.mailers.smtp.port'))); $this->app['config']->set('mail.mailers.smtp.encryption', ($setting->smtp_encryption ?? config('mail.mailers.smtp.encryption'))); $this->app['config']->set('mail.mailers.smtp.username', $setting->smtp_username ?? config('mail.mailers.smtp.username')); $this->app['config']->set('mail.mailers.smtp.password', $setting->smtp_password ?? config('mail.mailers.smtp.password')); $this->app['config']->set('mail.from.address', $setting->smtp_email ?? config('mail.from.address')); $this->app['config']->set('mail.from.name', $setting->smtp_sender_name ?? config('mail.from.name')); } protected function initializeTables(): void { $this->app->singleton('magicai_tables', fn () => (new TableSchema)->allTables()); $this->tables = app('magicai_tables'); $this->app->singleton('ai_chat_model_plan', function () { if (Helper::appIsNotDemo() && Schema::hasColumn('ai_chat_model_plans', 'entity_id')) { return AiChatModelPlan::query()->select('entity_id')->pluck('entity_id')->toArray(); } return []; }); } protected function getLocale(string $default): string { if (TableSchema::hasTable('settings_two', $this->tables)) { return Helper::settingTwo('languages_default', $default); } return $default; } protected function registerHealthChecks(): void { Health::checks([ DebugModeCheck::new(), EnvironmentCheck::new(), DatabaseCheck::new(), MemoryLimit::new(), ]); } public function bootObservers(): void { SettingTwo::observe(SettingTwoObserver::class); Setting::observe(SettingObserver::class); FrontendSectionsStatus::observe(FrontendSectionsStatusObserver::class); FrontendSetting::observe(FrontendSettingObserver::class); FeaturesMarquee::observe(FeaturesMarqueeObserver::class); BannerBottomText::observe(BannerBottomTextObserver::class); OpenAIGenerator::observe(OpenAIGeneratorObserver::class); Ad::observe(AdObserver::class); User::observe(UserObserver::class); } public function jobRuns(): void { if (Schema::hasTable('jobs')) { $wordlist = DB::table('jobs')->where('id', '>', 0)->get(); if (count($wordlist) > 0) { // change each job not default to default DB::table('jobs') ->where('queue', '<>', 'default') ->update(['queue' => 'default']); Artisan::call('queue:work --once'); } } } public function forceSchemeHttps(): void { if ($this->app->environment('production')) { URL::forceScheme('https'); } } private function bootBladeDirectives(): void { Blade::directive('formatNumber', function ($expression) { return ""; }); Blade::directive('formatNumberShort', static function ($expression) { return ""; }); Blade::directive('showCredit', static function ($model) { return "checkIfThereUnlimited() ? __('Unlimited') : {$model}->totalCredits(); ?>"; }); Blade::directive('pushOnceFor', static function ($expression) { [$name, $suffix] = str($expression)->substr(1, -1) ->trim() ->replace('-', '_') ->explode(':'); $key = '__pushonce_' . $name . '_' . $suffix; return "{$key})): \$__env->{$key} = 1; \$__env->startPush('{$name}'); ?>"; }); Blade::directive('endPushOnceFor', static function () { return 'stopPush(); endif; ?>'; }); } } PK„W]ÈàiffTelescopeServiceProvider.phpnu„[µü¤hideSensitiveRequestDetails(); $isLocal = $this->app->environment('local'); Telescope::filter(function (IncomingEntry $entry) use ($isLocal) { return $isLocal || $entry->isReportableException() || $entry->isFailedRequest() || $entry->isFailedJob() || $entry->isScheduledTask() || $entry->hasMonitoredTag(); }); } /** * Prevent sensitive request details from being logged by Telescope. */ protected function hideSensitiveRequestDetails(): void { if ($this->app->environment('local')) { return; } Telescope::hideRequestParameters(['_token']); Telescope::hideRequestHeaders([ 'cookie', 'x-csrf-token', 'x-xsrf-token', ]); } /** * Register the Telescope gate. * * This gate determines who can access Telescope in non-local environments. */ protected function gate(): void { Gate::define('viewTelescope', function ($user) { return in_array($user->email, [ // ]); }); } } PK„W]K$ö‰‰ViewServiceProvider.phpnu„[µü¤sharedAppStatus(); Paginator::useBootstrap(); if (! Helper::dbConnectionStatus()) { return; } $this->tables = app('magicai_tables'); if (! $this->hasTables(['migrations', 'settings'])) { return; } $this->shareSetting(); $this->shareAiGenerator(); $this->shareGoodForNow(); View::composer( ['components.navbar.navbar', 'panel.layout.partials.menu'], PlanComposer::class ); } protected function hasTables(array $requiredTables): bool { return collect($requiredTables)->every(fn ($table) => TableSchema::hasTable($table, $this->tables)); } protected function shareGoodForNow(): void { $goodForNow = TableSchema::hasTable('settings_two', $this->tables) && $this->settings && Helper::settingTwo('liquid_license_type'); View::share('good_for_now', $goodForNow); } protected function shareAiGenerator(): void { if (! TableSchema::hasTable('openai', $this->tables)) { return; } $generators = OpenAIGenerator::where('active', 1)->orderBy('title')->get(); View::share('aiWriters', $generators); } protected function shareSetting(): void { if ($settings = Setting::getCache()) { $this->settings = $settings; View::share('setting', $settings); } $this->shareFrontendSettings(); $this->shareOpenAiList(); $this->shareSections(); $this->shareCommissionSetting(); $this->shareSettingsTwo(); } protected function shareFrontendSettings(): void { $this->conditionallyShare('frontend_footer_settings', function () { $frontendSetting = FrontendSetting::getCache() ?? tap(new FrontendSetting)->save(); View::share('fSetting', $frontendSetting); }); $this->conditionallyShare('frontend_sections_statuses_titles', function () { $fSectSettings = FrontendSectionsStatus::getCache() ?? tap(new FrontendSectionsStatus)->save(); View::share('fSectSettings', $fSectSettings); }); } protected function shareOpenAiList(): void { if (TableSchema::hasTable('openai', $this->tables)) { View::share('openAiList', OpenAIGenerator::all()); } } protected function shareSections(): void { $sectionTables = [ 'advanced_features_section' => fn () => View::share('advanced_features_section', AdvancedFeaturesSection::all()), 'comparison_section_items' => fn () => View::share('comparison_section_items', ComparisonSectionItems::all()), 'features_marquees' => fn () => $this->shareMarqueeItems(), 'footer_items' => fn () => View::share('footer_items', FooterItem::pluck('item')->toArray()), 'banner_bottom_texts' => fn () => $this->shareBannerBottomTexts(), ]; foreach ($sectionTables as $table => $callback) { $this->conditionallyShare($table, $callback); } } protected function shareMarqueeItems(): void { $marquees = FeaturesMarquee::getCache(fn () => FeaturesMarquee::select('title', 'position')->get()); View::share('top_marquee_items', $marquees->where('position', 'top')->pluck('title')->toArray()); View::share('bottom_marquee_items', $marquees->where('position', 'bottom')->pluck('title')->toArray()); } protected function shareBannerBottomTexts(): void { $texts = BannerBottomText::getCache(fn () => BannerBottomText::pluck('text')->toArray()); View::share('banner_bottom_texts', $texts); } protected function shareCommissionSetting(): void { $this->conditionallyShare('app_settings', function () { View::share('is_onetime_commission', setting('onetime_commission', 0)); }); } protected function shareSettingsTwo(): void { $this->conditionallyShare('settings_two', function () { $settingsTwo = SettingTwo::getCache() ?? tap(new SettingTwo)->save(); View::share('settings_two', $settingsTwo); }); } protected function sharedAppStatus(): void { View::share('app_is_demo', Helper::appIsDemo()); View::share('app_is_not_demo', Helper::appIsNotDemo()); } protected function conditionallyShare(string $table, callable $callback): void { if (TableSchema::hasTable($table, $this->tables)) { $callback(); } } } PK„W]0ë¿T77AwsServiceProvider.phpnu„[µü¤app->singleton(BedrockRuntimeService::class, function () { return new BedrockRuntimeService([ 'region' => config('filesystems.disks.s3.region'), 'version' => 'latest', 'credentials' => [ 'key' => config('filesystems.disks.s3.key'), 'secret' => config('filesystems.disks.s3.secret'), ], ]); }); } /** * Bootstrap services. */ public function boot(): void { // } } PK„W]!Ðþ´´MacrosServiceProvider.phpnu„[µü¤registerResponseFactoryMacro(); } public function boot(): void { // } private function registerResponseFactoryMacro(): void { ResponseFactory::macro( 'success', fn (string $message, array $data = []) => $this->json([ 'status' => 'success', 'message' => $message, 'data' => $data, ]) ); ResponseFactory::macro( 'error', function (string $message, ?int $statusCode = 422) { return $this->json([ 'status' => 'error', 'message' => $message, ], $statusCode); }); } } PK„W]¡n�mmAuthServiceProvider.phpnu„[µü¤PK„W]¦%¹  ´EventServiceProvider.phpnu„[µü¤PK„W]»ª*kÙ Ù þChatbotServiceProvider.phpnu„[µü¤PK„W],®Ê77!ExtensionServiceProvider.phpnu„[µü¤PK„W]Á ŠŠ¤RouteServiceProvider.phpnu„[µü¤PK„W]RPQ8ggv BroadcastServiceProvider.phpnu„[µü¤PK„W]Û®À  )"AppServiceProvider.phpnu„[µü¤PK„W]Èàiff�ATelescopeServiceProvider.phpnu„[µü¤PK„W]K$ö‰‰AHViewServiceProvider.phpnu„[µü¤PK„W]0ë¿T77^AwsServiceProvider.phpnu„[µü¤PK„W]!Ðþ´´ŽaMacrosServiceProvider.phpnu„[µü¤PK Ñ‹e