feat: ship creator journey v2 and profile updates
This commit is contained in:
15
config/artwork_medals.php
Normal file
15
config/artwork_medals.php
Normal file
@@ -0,0 +1,15 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'enabled' => env('ARTWORK_MEDALS_ENABLED', true),
|
||||
|
||||
'weights' => [
|
||||
'gold' => 5,
|
||||
'silver' => 3,
|
||||
'bronze' => 1,
|
||||
],
|
||||
|
||||
'require_verified_email' => env('ARTWORK_MEDALS_REQUIRE_VERIFIED_EMAIL', true),
|
||||
'minimum_account_age_hours' => (int) env('ARTWORK_MEDALS_MINIMUM_ACCOUNT_AGE_HOURS', 24),
|
||||
'rate_limit_per_minute' => (int) env('ARTWORK_MEDALS_RATE_LIMIT_PER_MINUTE', 10),
|
||||
];
|
||||
@@ -78,6 +78,15 @@ return [
|
||||
'lock_connection' => env('REDIS_CACHE_LOCK_CONNECTION', 'default'),
|
||||
],
|
||||
|
||||
'homepage' => [
|
||||
'driver' => 'failover',
|
||||
'stores' => [
|
||||
'redis',
|
||||
'database',
|
||||
'array',
|
||||
],
|
||||
],
|
||||
|
||||
'dynamodb' => [
|
||||
'driver' => 'dynamodb',
|
||||
'key' => env('AWS_ACCESS_KEY_ID'),
|
||||
|
||||
65
config/content_types.php
Normal file
65
config/content_types.php
Normal file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'cache' => [
|
||||
'public_list_key' => 'content-types.public-list',
|
||||
'slug_map_key' => 'content-types.slug-map',
|
||||
'history_map_key' => 'content-types.slug-history-map',
|
||||
],
|
||||
|
||||
'virtual_types' => [
|
||||
'artworks' => [
|
||||
'name' => 'All Artworks',
|
||||
],
|
||||
],
|
||||
|
||||
'reserved_slugs' => [
|
||||
'news',
|
||||
'help',
|
||||
'groups',
|
||||
'creators',
|
||||
'cards',
|
||||
'search',
|
||||
'upload',
|
||||
'studio',
|
||||
'dashboard',
|
||||
'settings',
|
||||
'login',
|
||||
'register',
|
||||
'password',
|
||||
'rss',
|
||||
'sitemap',
|
||||
'robots',
|
||||
'pages',
|
||||
'tag',
|
||||
'tags',
|
||||
'categories',
|
||||
'stories',
|
||||
'blog',
|
||||
'art',
|
||||
'feed',
|
||||
'messages',
|
||||
'leaderboard',
|
||||
'following',
|
||||
'about',
|
||||
'contact',
|
||||
'faq',
|
||||
'staff',
|
||||
'members',
|
||||
'discover',
|
||||
'featured',
|
||||
'downloads',
|
||||
'comments',
|
||||
'collections',
|
||||
'community',
|
||||
'creator',
|
||||
'manage',
|
||||
'home',
|
||||
'cp',
|
||||
'admin',
|
||||
'forum',
|
||||
'legal',
|
||||
'bug-report',
|
||||
'rss-feeds',
|
||||
],
|
||||
];
|
||||
@@ -11,7 +11,7 @@ return [
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
'paths' => env('CP_ENABLE_CORS', true)
|
||||
'paths' => env('CP_ENABLE_CORS', false)
|
||||
? [
|
||||
'api/*',
|
||||
'sanctum/csrf-cookie',
|
||||
|
||||
7
config/homepage.php
Normal file
7
config/homepage.php
Normal file
@@ -0,0 +1,7 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
'cache_store' => env('HOMEPAGE_CACHE_STORE', 'homepage'),
|
||||
'guest_payload_key' => env('HOMEPAGE_GUEST_PAYLOAD_KEY', 'homepage.payload.guest'),
|
||||
'guest_payload_ttl_seconds' => (int) env('HOMEPAGE_GUEST_PAYLOAD_TTL_SECONDS', 1800),
|
||||
];
|
||||
38
config/maturity.php
Normal file
38
config/maturity.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
return [
|
||||
'viewer' => [
|
||||
'default_mode' => env('MATURITY_DEFAULT_MODE', 'blur'),
|
||||
'default_warn_on_detail' => env('MATURITY_DEFAULT_WARN_ON_DETAIL', true),
|
||||
],
|
||||
|
||||
'ai' => [
|
||||
'threshold' => (float) env('MATURITY_AI_THRESHOLD', 0.68),
|
||||
'queue' => env('MATURITY_AI_QUEUE', env('VISION_QUEUE', 'default')),
|
||||
'strong_keywords' => [
|
||||
'adult',
|
||||
'bare breasts',
|
||||
'breasts',
|
||||
'explicit',
|
||||
'genitals',
|
||||
'lingerie',
|
||||
'nude',
|
||||
'nudity',
|
||||
'nsfw',
|
||||
'porn',
|
||||
'sex',
|
||||
'sexual',
|
||||
'topless',
|
||||
],
|
||||
'medium_keywords' => [
|
||||
'bikini',
|
||||
'erotic',
|
||||
'fetish',
|
||||
'intimate',
|
||||
'sensual',
|
||||
'underwear',
|
||||
],
|
||||
],
|
||||
];
|
||||
@@ -101,11 +101,13 @@ return [
|
||||
'author_id',
|
||||
'is_public',
|
||||
'is_approved',
|
||||
'has_missing_thumbnails',
|
||||
'created_at',
|
||||
],
|
||||
'sortableAttributes' => [
|
||||
'created_at',
|
||||
'published_at_ts',
|
||||
'missing_thumbnail_rank',
|
||||
'downloads',
|
||||
'likes',
|
||||
'views',
|
||||
@@ -113,6 +115,8 @@ return [
|
||||
'trending_score_7d',
|
||||
'favorites_count',
|
||||
'awards_received_count',
|
||||
'awards_score_7d',
|
||||
'awards_score_30d',
|
||||
'downloads_count',
|
||||
'ranking_score',
|
||||
'shares_count',
|
||||
|
||||
@@ -14,7 +14,7 @@ return [
|
||||
*/
|
||||
|
||||
'max_length' => 32,
|
||||
'max_user_tags' => 15,
|
||||
'max_user_tags' => (int) env('TAGS_MAX_USER_TAGS', 30),
|
||||
|
||||
// Exact-match banned tags after normalization.
|
||||
'banned' => [
|
||||
|
||||
@@ -47,6 +47,17 @@ return [
|
||||
'connect_timeout_seconds'=> (int) env('VISION_GATEWAY_CONNECT_TIMEOUT', 3),
|
||||
],
|
||||
|
||||
'maturity' => [
|
||||
'base_url' => env('VISION_MATURITY_URL', env('VISION_GATEWAY_URL', env('CLIP_BASE_URL', ''))),
|
||||
'endpoint' => env('VISION_MATURITY_ENDPOINT', '/analyze/maturity'),
|
||||
'file_endpoint' => env('VISION_MATURITY_FILE_ENDPOINT', '/analyze/maturity/file'),
|
||||
'api_key' => env('VISION_MATURITY_API_KEY', env('VISION_GATEWAY_API_KEY', env('VISION_API_KEY', env('VISION_VECTOR_GATEWAY_API_KEY', '')))),
|
||||
'timeout_seconds' => (int) env('VISION_MATURITY_TIMEOUT', 20),
|
||||
'connect_timeout_seconds' => (int) env('VISION_MATURITY_CONNECT_TIMEOUT', 3),
|
||||
'retries' => (int) env('VISION_MATURITY_RETRIES', 1),
|
||||
'retry_delay_ms' => (int) env('VISION_MATURITY_RETRY_DELAY_MS', 200),
|
||||
],
|
||||
|
||||
'vector_gateway' => [
|
||||
'enabled' => env('VISION_VECTOR_GATEWAY_ENABLED', true),
|
||||
'base_url' => env('VISION_VECTOR_GATEWAY_URL', ''),
|
||||
|
||||
Reference in New Issue
Block a user