- ArtworkCard: add w-full to nova-card-media, use absolute inset-0 on img so object-cover fills the max-height capped box instead of collapsing the width - MasonryGallery.css: add width:100% to media container, position img absolutely so top/bottom is cropped rather than leaving dark gaps - Add React MasonryGallery + ArtworkCard components and entry point - Add recommendation system: UserRecoProfile model/DTO/migration, SuggestedCreatorsController, SuggestedTagsController, Recommendation services, config/recommendations.php - SimilarArtworksController, DiscoverController, HomepageService updates - Update routes (api + web) and discover/for-you views - Refresh favicon assets, update vite.config.js
32 lines
1.0 KiB
JavaScript
32 lines
1.0 KiB
JavaScript
import { defineConfig } from 'vite';
|
|
import laravel from 'laravel-vite-plugin';
|
|
|
|
export default defineConfig({
|
|
plugins: [
|
|
laravel({
|
|
input: [
|
|
'resources/css/app.css',
|
|
'resources/css/nova-grid.css',
|
|
'resources/js/app.js',
|
|
'resources/scss/nova.scss',
|
|
'resources/js/nova.js',
|
|
'resources/js/entry-topbar.jsx',
|
|
'resources/js/entry-search.jsx',
|
|
'resources/js/entry-masonry-gallery.jsx',
|
|
'resources/js/upload.jsx',
|
|
'resources/js/Pages/ArtworkPage.jsx',
|
|
'resources/js/Pages/Home/HomePage.jsx',
|
|
'resources/js/Pages/Community/LatestCommentsPage.jsx',
|
|
'resources/js/Pages/Messages/Index.jsx',
|
|
],
|
|
refresh: true,
|
|
}),
|
|
],
|
|
test: {
|
|
environment: 'jsdom',
|
|
globals: true,
|
|
setupFiles: ['resources/js/test/setupTests.js'],
|
|
include: ['resources/js/**/*.test.{js,jsx}'],
|
|
},
|
|
});
|