Files
SkinbaseNova/config/scout.php

168 lines
5.2 KiB
PHP

<?php
return [
/*
|--------------------------------------------------------------------------
| Default Search Engine
|--------------------------------------------------------------------------
*/
'driver' => env('SCOUT_DRIVER', 'meilisearch'),
/*
|--------------------------------------------------------------------------
| Index Prefix
|--------------------------------------------------------------------------
*/
'prefix' => env('SCOUT_PREFIX', env('MEILI_PREFIX', '')),
/*
|--------------------------------------------------------------------------
| Queue Data Syncing
|--------------------------------------------------------------------------
| Always queue Scout index operations so they never block HTTP requests.
*/
'queue' => [
'connection' => env('SCOUT_QUEUE_CONNECTION', env('QUEUE_CONNECTION', 'redis')),
'queue' => env('SCOUT_QUEUE_NAME', 'search'),
],
/*
|--------------------------------------------------------------------------
| Database Transactions
|--------------------------------------------------------------------------
*/
'after_commit' => true,
/*
|--------------------------------------------------------------------------
| Chunk Sizes
|--------------------------------------------------------------------------
*/
'chunk' => [
'searchable' => 500,
'unsearchable' => 500,
],
/*
|--------------------------------------------------------------------------
| Soft Deletes
|--------------------------------------------------------------------------
*/
'soft_delete' => false,
/*
|--------------------------------------------------------------------------
| Identify User
|--------------------------------------------------------------------------
*/
'identify' => env('SCOUT_IDENTIFY', false),
/*
|--------------------------------------------------------------------------
| Meilisearch
|--------------------------------------------------------------------------
*/
'meilisearch' => [
'host' => env('MEILISEARCH_HOST', 'http://localhost:7700'),
'key' => env('MEILISEARCH_KEY'),
/*
| Index-level settings pushed via: php artisan scout:sync-index-settings
*/
'index-settings' => [
/*
* Key must match the full Meilisearch index name (prefix + model index).
* Prefix is controlled by MEILI_PREFIX / SCOUT_PREFIX env variable.
* Default local dev: 'artworks'. Production: 'skinbase_prod_artworks'.
*/
env('SCOUT_PREFIX', env('MEILI_PREFIX', '')) . 'artworks' => [
'searchableAttributes' => [
'title',
'tags',
'author_name',
'description',
],
'filterableAttributes' => [
'id',
'tags',
'category',
'content_type',
'orientation',
'resolution',
'author_id',
'is_public',
'is_approved',
'created_at',
],
'sortableAttributes' => [
'created_at',
'downloads',
'likes',
'views',
'trending_score_24h',
'trending_score_7d',
'favorites_count',
'awards_received_count',
'downloads_count',
'ranking_score',
'shares_count',
'engagement_velocity',
'comments_count',
'heat_score',
],
'rankingRules' => [
'words',
'typo',
'proximity',
'attribute',
'sort',
'exactness',
],
'typoTolerance' => [
'enabled' => true,
'minWordSizeForTypos' => [
'oneTypo' => 4,
'twoTypos' => 8,
],
],
],
env('SCOUT_PREFIX', env('MEILI_PREFIX', '')) . 'messages' => [
'searchableAttributes' => [
'body_text',
'sender_username',
],
'filterableAttributes' => [
'conversation_id',
'sender_id',
'has_attachments',
],
'sortableAttributes' => [
'created_at',
],
],
],
],
/*
|--------------------------------------------------------------------------
| Algolia (unused but required by package)
|--------------------------------------------------------------------------
*/
'algolia' => [
'id' => env('ALGOLIA_APP_ID', ''),
'secret' => env('ALGOLIA_SECRET', ''),
],
];