1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[21205],{727:(e,t,a)=>{a.d(t,{ProtectedImage:()=>n});var r=a(95155),i=a(5772),o=a(12115),l=a(25632);function n({protection:e="standard",watermark:t,containerClassName:a="",className:s,alt:u,style:d,...p}){let c=(0,o.useRef)(null),m=(0,o.useCallback)(e=>{e.preventDefault(),e.stopPropagation()},[]),g=(0,o.useCallback)(e=>{e.preventDefault()},[]),h=(0,o.useCallback)(()=>{c.current=setTimeout(()=>{},500)},[]),f=(0,o.useCallback)(()=>{c.current&&(clearTimeout(c.current),c.current=null)},[]),y=!0===p.fill,v=p.src,k="string"==typeof v&&(v.startsWith("http://")||v.startsWith("https://"))&&!(0,l.nD)(v)?l.ky:v;return(0,r.jsxs)("div",{className:`art-protected ${y?"absolute inset-0":"relative"} ${a}`,children:[(0,r.jsx)(i.default,{...p,src:k,alt:u,className:s,style:d,draggable:!1}),(0,r.jsx)("div",{className:"absolute inset-0",role:"presentation","aria-hidden":!0,onContextMenu:m,onDragStart:g,onTouchStart:h,onTouchEnd:f,onTouchMove:f}),(t??"maximum"===e)&&(0,r.jsx)("div",{className:"art-watermark"})]})}},8380:(e,t,a)=>{a.d(t,{tp:()=>i});var r=a(65007);let i=r.Ik({documentId:r.Yj().min(1,"documentId is required"),id:r.ai().positive().optional(),url:r.Yj().url("URL must be valid"),name:r.Yj().nullable().optional(),alternativeText:r.Yj().nullable().optional(),caption:r.Yj().nullable().optional(),width:r.ai().positive().nullable().optional(),height:r.ai().positive().nullable().optional(),formats:r.g1(r.Yj(),r.L5()).nullable().optional(),hash:r.Yj().nullable().optional(),ext:r.Yj().nullable().optional(),mime:r.Yj().nullable().optional(),size:r.ai().nonnegative().nullable().optional(),previewUrl:r.Yj().url().nullable().optional(),provider:r.Yj().nullable().optional(),provider_metadata:r.L5().nullable().optional(),folderPath:r.Yj().nullable().optional(),createdAt:r.Yj().datetime().nullable().optional(),updatedAt:r.Yj().datetime().nullable().optional(),publishedAt:r.Yj().datetime().nullable().optional(),locale:r.Yj().nullable().optional()}),o=r.Ik({page:r.ai().int().positive(),pageSize:r.ai().int().positive(),pageCount:r.ai().int().nonnegative(),total:r.ai().int().nonnegative()});r.Ik({pagination:o.optional()});let l=r.Ik({status:r.ai().optional(),name:r.Yj().optional(),message:r.Yj(),details:r.L5().optional()});r.Ik({data:r.ch().optional(),error:l})},38528:(e,t,a)=>{a.d(t,{Ay:()=>d,DC:()=>s,Es:()=>o,XW:()=>l,sf:()=>u});var r=a(90460),i=a(7603);let o=(0,r.zD)("favorites/fetchMine",async(e,{rejectWithValue:t})=>{try{let e=await fetch("/api/favorites?pageSize=200",{method:"GET",credentials:"include"});if(!e.ok)return t(`Failed to fetch favorites (${e.status})`);let a=await e.json();return(a?.data??[]).map(e=>{let t=e.artwork;return{favoriteId:String(e.documentId||e.id||""),artworkDocumentId:String(t?.documentId||"")}}).filter(e=>e.artworkDocumentId)}catch(e){return i.logger.error("Failed to fetch favorites",e instanceof Error?e:void 0),t("Network error")}},{condition:(e,{getState:t})=>"idle"===t().Favorites.status}),l=(0,r.zD)("favorites/toggleRemote",async(e,{rejectWithValue:t})=>{try{let a=await fetch("/api/favorites/toggle",{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({artworkDocumentId:e})});if(!a.ok)return t(`Failed to toggle favorite (${a.status})`);let r=await a.json(),i=r?.data||{};return{favorited:!!i.favorited,favoriteId:i.favoriteId,artworkDocumentId:i.artworkDocumentId||e}}catch(e){return i.logger.error("Failed to toggle favorite",e instanceof Error?e:void 0),t("Network error")}}),n=(0,r.Z0)({name:"Favorites",initialState:{byArtwork:{},status:"idle",error:null,hydrated:!1},reducers:{clearFavorites:e=>{e.byArtwork={},e.status="idle",e.error=null,e.hydrated=!1},toggleFavoriteLocal:(e,t)=>{let{artworkDocumentId:a,favoriteId:r}=t.payload;e.byArtwork[a]?delete e.byArtwork[a]:e.byArtwork[a]=r||"pending"}},extraReducers:e=>{e.addCase(o.pending,e=>{e.status="loading"}).addCase(o.fulfilled,(e,t)=>{e.status="succeeded",e.hydrated=!0,e.byArtwork=t.payload.reduce((e,t)=>(e[t.artworkDocumentId]=t.favoriteId,e),{})}).addCase(o.rejected,(e,t)=>{e.status="failed",e.error=t.payload||"Failed to load favorites"}).addCase(l.fulfilled,(e,t)=>{let{favorited:a,favoriteId:r,artworkDocumentId:i}=t.payload;a?e.byArtwork[i]=r||"unknown":delete e.byArtwork[i]}).addCase(l.rejected,(e,t)=>{let a=t.meta.arg;e.byArtwork[a]?delete e.byArtwork[a]:e.byArtwork[a]="rolled-back",e.error=t.payload||"Failed to toggle favorite"})}}),{clearFavorites:s,toggleFavoriteLocal:u}=n.actions,d=n.reducer},41011:(e,t,a)=>{a.d(t,{ce:()=>s,fr:()=>u});var r=a(65007),i=a(8380),o=a(7603),l=a(51452);let n=r.k5(["available","sold","reserved","not_for_sale","draft"]);r.k5(["portrait","square","landscape"]),r.Ik({width:r.ai().positive("Width must be positive"),height:r.ai().positive("Height must be positive"),depth:r.ai().positive().optional(),unit:r.k5(["cm","in","m"]).default("
1cm")}),r.Ik({documentId:r.Yj().min(1),id:r.ai().positive().optional(),title:r.Yj().min(1).max(300),slug:r.Yj().optional(),description:r.Yj().max(2200).optional().nullable(),price:r.ai().nonnegative().optional().nullable(),year:r.ai().int().min(1900).max(2100).optional(),original_width:r.ai().positive().optional(),original_height:r.ai().positive().optional(),technique:r.Yj().optional(),dimensions:r.Yj().optional(),category:r.Yj().optional(),theme:r.Yj().optional(),format:r.Yj().optional(),support:r.Yj().optional(),dominantColor:r.Yj().optional(),availability:r.Yj().optional(),status:n.optional().default("available"),image:r.YO(i.tp).optional(),artimage:r.YO(i.tp).optional(),artist:r.Ik({documentId:r.Yj(),username:r.Yj(),artistName:r.Yj().optional(),id:r.ai().optional()}).optional(),createdAt:r.Yj().datetime().nullable().optional(),updatedAt:r.Yj().datetime().nullable().optional(),publishedAt:r.Yj().datetime().nullable().optional(),locale:r.Yj().nullable().optional()});let s=r.Ik({id:r.Yj().min(1,"ID is required"),title:r.Yj().min(1,"Title is required").max(300),description:r.Yj().max(2200).optional().nullable(),artist:r.Yj().min(1,"Artist name is required"),artistDocumentId:r.Yj().default(""),artistId:r.ai().positive().optional(),artistUsername:r.Yj().default(""),price:r.ai().nonnegative("Price must be non-negative"),image:r.Yj().min(1,"Image is required").refine(e=>/^https?:\/\//i.test(e)||e.startsWith("/"),"Image must be an absolute http(s) URL or a root-relative path"),imageWidth:r.ai().positive().optional(),imageHeight:r.ai().positive().optional(),dimensions:r.Yj().default(""),technique:r.Yj().default(""),category:r.Yj().default(""),theme:r.Yj().default(""),format:r.Yj().default(""),support:r.Yj().default(""),dominantColor:r.Yj().default(""),availability:r.Yj().default("Disponible"),status:n.default("available"),year:r.ai().int().min(1900).max(2100).default(()=>new Date().getFullYear())});function u(e,t,a,r,i){let n=e.image?.[0]?.url||e.artimage?.[0]?.url,u=n?(0,l.S)(n):"/images/fallback-artwork.jpg",d=s.safeParse({id:e.documentId,title:e.title||"Sans titre",description:e.description||null,artist:t,artistDocumentId:a,artistId:i,artistUsername:r,price:e.price||0,image:u,imageWidth:e.image?.[0]?.width||e.artimage?.[0]?.width||void 0,imageHeight:e.image?.[0]?.height||e.artimage?.[0]?.height||void 0,dimensions:e.dimensions||"",technique:e.technique||"",category:e.category||"",theme:e.theme||"",format:e.format||"",support:e.support||"",dominantColor:e.dominantColor||"",availability:e.availability||"Disponible",status:e.status||"available",year:e.year||new Date().getFullYear()});if(!d.success)throw o.logger.error("[transformStrapiArtwork] Validation failed",void 0,{errors:d.error.issues}),Error(`Invalid artwork data for ${e.documentId}: ${d.error.issues.map(e=>`${e.path.join(".")}: ${e.message}`).join(", ")}`);return d.data}r.Ik({title:r.Yj().min(1,"Le titre est requis").max(300,"Le titre ne peut pas d\xe9passer 300 caract\xe8res").transform(e=>e.trim()),description:r.Yj().max(2200,"La description ne peut pas d\xe9passer 2200 caract\xe8res").transform(e=>e.trim()).optional(),price:r.ai().int("Le prix doit \xeatre un nombre entier").min(10,"Le prix minimum est de 10â¬").max(5e3,"Le prix maximum est de 5000â¬").nullable().optional()}),r.Ik({title:r.Yj().min(1).max(300).optional(),description:r.Yj().max(2200).nullable().optional(),price:r.ai().nonnegative().max(5e3).nullable().optional(),year:r.ai().int().min(1900).max(2100).optional(),technique:r.Yj().optional(),dimensions:r.Yj().optional(),category:r.Yj().optional(),theme:r.Yj().optional(),format:r.Yj().optional(),support:r.Yj().optional(),dominantColor:r.Yj().optional(),status:n.optional()})},51452:(e,t,a)=>{a.d(t,{S:()=>i});let r="https://backend.artedusa.com".trim()||"https://backend.artedusa.com".trim()||"http://localhost:8000";function i(e){return e?e.startsWith("http://")||e.startsWith("https://")?e:`${r}${e.startsWith("/")?"":"/"}${e}`:""}},55003:(e,t,a)=>{a.r(t),a.d(t,{AuthProviderClient:()=>d,useAuth:()=>p});var r=a(95155),i=a(12115),o=a(73321),l=a(58551);let n=()=>{},s=async()=>{},u=(0,i.createContext)({user:null,role:null,refresh:s,setUser:n,clear:n});function d({children:e}
1){let[t,a]=(0,i.useState)({user:null,role:null}),n=(0,o.usePathname)(),s=(0,i.useRef)(void 0),p=(0,i.useCallback)(()=>{a({user:null,role:null})},[]),c=(0,i.useCallback)((e,t)=>{a({user:e,role:t??e.role??null})},[]),m=(0,i.useCallback)(async()=>{let e=new l.A;if(!e.get("concsience-auth"))return void p();try{let t=await fetch("/api/auth/profile",{cache:"no-store"});if(!t.ok){401===t.status&&(e.remove("concsience-auth",{path:"/"}),p());return}let r=await t.json();if(r?.data){let e=r.data;a({user:{id:String(e.id),username:e.username,email:e.email,role:e.role,firstName:e.firstName,surname:e.lastName},role:e.role||null})}}catch{}},[p]);(0,i.useEffect)(()=>{let e=new l.A().get("concsience-auth")||null,t=s.current;void 0===t?e&&m():t!==e&&(e?m():p()),s.current=e},[n,m,p]);let g=(0,i.useMemo)(()=>({user:t.user,role:t.role,refresh:m,setUser:c,clear:p}),[t.user,t.role,m,c,p]);return(0,r.jsx)(u,{value:g,children:e})}let p=()=>(0,i.useContext)(u)},57101:(e,t,a)=>{a.d(t,{AISearchVisibilityProvider:()=>n,O:()=>l});var r=a(95155),i=a(12115);let o=(0,i.createContext)({shouldHideAISearch:!1,setShouldHideAISearch:()=>{},isCompactMode:!1,setIsCompactMode:()=>{}}),l=()=>(0,i.useContext)(o);function n({children:e}){let[t,a]=(0,i.useState)(!1),[l,s]=(0,i.useState)(!1);return(0,r.jsx)(o,{value:{shouldHideAISearch:t,setShouldHideAISearch:a,isCompactMode:l,setIsCompactMode:s},children:e})}},58723:(e,t,a)=>{a.d(t,{o:()=>m});var r=a(7603),i=a(25632);let o=[{slug:"painting",strapiValue:"painting",i18nKey:"painting",legacySlug:"Peinture"},{slug:"sculpture",strapiValue:"sculpture",i18nKey:"sculpture",legacySlug:"Sculpture"},{slug:"photography",strapiValue:"photography",i18nKey:"photography",legacySlug:"Photographie"},{slug:"drawings-and-illustrations",strapiValue:"drawings_illustrations",i18nKey:"drawings",legacySlug:"Dessins-et-illustrations"},{slug:"textile-art",strapiValue:"textile_art",i18nKey:"textile",legacySlug:"Art-textile"},{slug:"digital-art",strapiValue:"digital_art",i18nKey:"digital",legacySlug:"Art-num\xe9rique"},{slug:"ceramic-and-pottery",strapiValue:"ceramics_pottery",i18nKey:"ceramic",legacySlug:"C\xe9ramique-et-poterie"},{slug:"jewelry-and-accessories",strapiValue:"jewelry_accessories",i18nKey:"jewelry",legacySlug:"Bijoux-et-accessoires"},{slug:"handicraft",strapiValue:"crafts",i18nKey:"craft",legacySlug:"Artisanat"},{slug:"environmental-art",strapiValue:"environmental_art",i18nKey:"environmental",legacySlug:"Art-environnemental"},{slug:"artistic-performances",strapiValue:"performance_art",i18nKey:"performance",legacySlug:"Performances-artistiques"},{slug:"ephemeral-art",strapiValue:"ephemeral_art",i18nKey:"ephemeral",legacySlug:"Art-\xe9ph\xe9m\xe8re"},{slug:"engaged-art",strapiValue:"engaged_art",i18nKey:"engaged",legacySlug:"Art-engag\xe9"},{slug:"museum-shop",strapiValue:"museum-shop",i18nKey:"museumShop",legacySlug:"museum-shop"}],l=new Map(o.map(e=>[e.slug,e]));o.map(e=>[e.strapiValue,e]);let n=new Map(o.map(e=>[e.legacySlug,e]));function s(e){return l.get(e)?.strapiValue}function u(e){return n.get(e)}Object.fromEntries(o.filter(e=>e.legacySlug!==e.slug).map(e=>[e.legacySlug,e.slug]));var d=a(41011);function p(e){var t;return d.ce.parse({id:e.id,title:e.title,description:e.description??void 0,artist:e.artist_name?.trim()||"Artiste",artistDocumentId:"",artistUsername:e.artist_username??"",price:"number"==typeof e.price&&e.price>=0?e.price:0,image:(t=e.image_url)&&(/^https?:\/\//i.test(t)||t.startsWith("/"))?t:"/images/fallback-artwork.jpg",imageWidth:e.width&&e.width>0?e.width:void 0,imageHeight:e.height&&e.height>0?e.height:void 0,dimensions:e.dimensions??"",technique:e.technique??"",category:e.main_category??"",theme:e.artistic_theme??"",format:e.format??"",support:e.support??"",dominantColor:e.dominant_color??"",availability:e.availability??e.availability_status??"Disponible",year:e.year_of_creation&&e.year_of_creation>=1900&&e.year_of_creation<=2100?e.year_of_creation:new Date().getFullYear()})}async function c(e={},t,a){let r=e.page??1,i=e.pageSize??20,o=new URLSearchParams({limit:String(i),offset:String((r-1)*i)});for(let a of(t&&o.set("category",t),"number"==typeof e.min&&o.set("min_price",String(e.min)),"number"==typeof e.max&&o.set("max_price",String(e.max)),e.colors&&e.colors.length>0&&o.set("dominant_color",e.colors[0]),e.sort&&"recent"!==e.sort&&o.set("sort",e.sort),e.museumOnly&&o.set("museum_only","true"),e.categories??[]))
1o.append("categories",a);let l=await fetch(`${a||"https://backend.artedusa.com"}/api/v1/artworks?${o.toString()}`,{headers:{"Content-Type":"application/json"}});if(!l.ok)throw Error(`FastAPI artworks HTTP ${l.status}`);let n=(await l.json()).map(p),s=n.length===i;return{data:n,pagination:{page:r,pageSize:i,pageCount:s?r+1:r,total:(r-1)*i+n.length}}}class m{static async getAllArtworks(e,t){{let a=[...new Set([...e?.arts??[],...e?.categories??[],...e?.styles??[]].map(e=>{let t=u(e)??u(e.replace(/ /g,"-"));return t?t.strapiValue:s(e)??e}))],r=t?s(t)??t:void 0,i=r?[...new Set([r,...a])]:a,o=i.length>1;return c({page:e?.page,pageSize:e?.pageSize,min:e?.min,max:e?.max,colors:e?.colors,sort:e?.sort,museumOnly:e?.museumOnly,categories:o?i:void 0},o?void 0:function(e,t){if(t)return s(t)??t;for(let t of[e?.arts,e?.categories,e?.styles])if(t&&t.length>0){let e=t[0],a=u(e)??u(e.replace(/ /g,"-"));if(a)return a.strapiValue;return s(e)??e}}(e,t))}}static processArtwork(e){let t,a,o,l,[n]=e?.image||[],s=n?.url||n?.formats?.small?.url,u=n?.width,d=n?.height;if(Array.isArray(e.artist)){if(0===e.artist.length)throw r.logger.error("[PROCESS ARTWORK] CRITICAL ERROR: Artist array is EMPTY"),Error(`Artwork "${e.title}" (${e.documentId||e.id}) has empty artist array. This violates business rules - every artwork must have an artist.`);if(t=e.artist[0]?.artistName,a=e.artist[0]?.id,o=e.artist[0]?.documentId,l=e.artist[0]?.username,!t||!o||!l)throw r.logger.error("[PROCESS ARTWORK] CRITICAL: Artist array[0] missing required fields"),Error(`Artwork "${e.title}" (${e.documentId||e.id}) has incomplete artist data in array. Missing: ${!t?"artistName ":""}${!o?"documentId ":""}${!l?"username":""}`)}else if(e.artist&&"object"==typeof e.artist){let i=e.artist;if(t=i.artistName,a=i.id,o=i.documentId,l=i.username,!t||!o||!l)throw r.logger.error("[PROCESS ARTWORK] CRITICAL: Artist object missing required fields"),Error(`Artwork "${e.title}" (${e.documentId||e.id}) has incomplete artist data. Missing: ${!t?"artistName ":""}${!o?"documentId ":""}${!l?"username":""}`)}else throw r.logger.error(`[PROCESS ARTWORK] CRITICAL ERROR: Artwork has no artist - ID: ${e.documentId||e.id}, title: ${e.title}`),Error(`Artwork "${e.title}" (${e.documentId||e.id}) has no artist. This violates business rules - every artwork must have an artist.`);return{id:e.documentId||e.id.toString(),title:e.title||"Sans titre",description:e.description||null,artist:t,artistDocumentId:o,artistId:a,artistUsername:l,price:e.price||0,image:s?(0,i.Ay)(s):"/images/fallback-artwork.jpg",imageWidth:u||void 0,imageHeight:d||void 0,dimensions:e.dimensions||"",technique:e.technique||"",category:e.category||"",theme:e.theme||"",format:e.format||"",support:e.support||"",dominantColor:e.dominantColor||"",availability:e.availability||"Disponible",status:e.status||"available",year:e.year||new Date().getFullYear()}}}},61075:(e,t,a)=>{a.d(t,{useImageProtection:()=>i});var r=a(12115);function i(){let e=(0,r.useRef)(null),t=(0,r.useCallback)(e=>{e.preventDefault(),e.stopPropagation()},[]),a=(0,r.useCallback)(e=>{e.preventDefault()},[]);return{containerProps:{className:"art-protected relative",onContextMenu:t,onDragStart:a},overlayProps:{role:"presentation","aria-hidden":!0,className:"absolute inset-0",onContextMenu:t,onDragStart:a,onTouchStart:(0,r.useCallback)(t=>{e.current=setTimeout(()=>{},500)},[]),onTouchEnd:(0,r.useCallback)(()=>{e.current&&(clearTimeout(e.current),e.current=null)},[]),onTouchMove:(0,r.useCallback)(()=>{e.current&&(clearTimeout(e.current),e.current=null)},[])}}}},65322:(e,t,a)=>{a.d(t,{Ay:()=>I,Mm:()=>A,PQ:()=>s,Q7:()=>j,T$:()=>k,U2:()=>p,VT:()=>c,_c:()=>y,dr:()=>g,rR:()=>d,uj:()=>b,x2:()=>w,x4:()=>v,xA:()=>m});var r=a(90460),i=a(58723),o=a(96751),l=a(7603);let n={artworks:[],isLoading:!1,hasMore:!0,error:null,page:1,totalPages:1,totalItems:0,natureFilter:{...o.N5},aiMode:!1,savedArtworks:[],aiMessage:null,aiCanvasData:null,aiCta:null,filters:{sort:"recent",categories:[],artistes:[],artistCountry:[],artistGeography:[],styles:[],arts:[],thèmes:[],techniques:[],supports:[],colors:[],formats:[],min:20,max:1e4},sortBy:"recent"},s=(0,r.zD)("collection/fetchAllArtworks",async({page:e=1,filters:t,category:a})=>({response:await i.o.getAllArtworks({...t,page:e,pageSize:20},a),requestedPage:e})),u=(0,r.Z0)({name:"collection",initialState:n,reducers:{setInitialData:(e,t)=>{let{artworks:a,pagination:r}=t.payload;e.artworks=a.map(o.gv),e.page=r.page,e.totalPages=r.pageCount,e.totalItems=r.total,e.hasMore=r.page<r.pageCount,e.isLoading=!1,e.error=null},addFilter:(e,t)=>{let{filterType:a,value:r}=t.payload;if("sort"===(a=a.toLowerCase())){e.filters.sort=r,e.sortBy=r;return}let i=a;if(!(i in e.filters))return void l.logger.warn(`Invalid filterType: ${a}`);let o=e.filters[i];Array.isArray(o)?o.includes(r)||(e.filters[i]=[...o,r]):("min"===i||"max"===i||"page"===i||"pageSize"===i)&&(e.filters[i]="number"==typeof r?r:Number(r))},removeFilter:(e,t)=>{let{filterType:a,value:r}=t.payload;if("sort"===a){e.filters.sort="recent",e.sortBy="recent";return}if(!(a in e.filters))return void l.logger.warn(`Invalid filterType: ${a}`);let i=e.filters[a];Array.isArray(i)?e.filters[a]=i.filter(e=>e!==r):"min"===a||"max"===a||"page"===a||"pageSize"===a?e.filters[a]=void 0:"sort"===a&&(e.filters.sort="recent")},setPriceRange:(e,t)=>
1{e.filters.min=t.payload.min,e.filters.max=t.payload.max},resetFilters:e=>{e.filters={...n.filters},e.sortBy=n.sortBy,e.page=1,e.totalPages=1,e.totalItems=0,e.artworks=[],e.hasMore=!0},incrementPage:e=>{e.page+=1},clearArtworks:e=>{e.artworks=[],e.page=1,e.hasMore=!0,e.error=null},enterAIMode:e=>{e.aiMode||(e.savedArtworks=e.artworks,e.aiMode=!0),e.artworks=[],e.aiCanvasData=null,e.aiCta=null},setAIResults:(e,t)=>{e.aiMode||(e.savedArtworks=e.artworks),e.aiMode=!0,e.artworks=t.payload.artworks.map(e=>"kind"in e&&("master"===e.kind||"acquisition"===e.kind)?e:(0,o.gv)(e)),e.aiMessage=t.payload.message||null,e.aiCta=t.payload.cta??null,e.hasMore=!1,e.isLoading=!1},appendAIArtwork:(e,t)=>{e.aiMode||(e.savedArtworks=e.artworks,e.artworks=[],e.aiMode=!0);let a=t.payload,r="kind"in a&&("master"===a.kind||"acquisition"===a.kind)?a:(0,o.gv)(a);e.artworks=[...e.artworks,r],e.hasMore=!1,e.isLoading=!1},setAICanvasData:(e,t)=>{e.aiCanvasData=t.payload},clearAIResults:e=>{e.aiMode&&(e.artworks=e.savedArtworks,e.savedArtworks=[],e.aiMode=!1,e.aiMessage=null,e.aiCanvasData=null,e.aiCta=null,e.hasMore=!0)},toggleNatureFilter:(e,t)=>{let a=t.payload.key;e.natureFilter[a]=!e.natureFilter[a]},mergeMasters:(e,t)=>{let a=t.payload,r=e.artworks.filter(e=>"master"!==e.kind);e.artworks=[...r,...a]}},extraReducers:e=>{e.addCase(s.pending,e=>{e.isLoading=!0,e.error=null}).addCase(s.fulfilled,(e,t)=>{e.isLoading=!1;let{response:a,requestedPage:r}=t.payload,i=a.data.map(o.gv);1===r?e.artworks=i:e.artworks=[...e.artworks,...i],e.page=a.pagination.page,e.totalPages=a.pagination.pageCount,e.totalItems=a.pagination.total,e.hasMore=a.pagination.page<a.pagination.pageCount}).addCase(s.rejected,(e,t)=>{e.isLoading=!1,e.error=t.error.message||"Failed to fetch artworks",e.hasMore=!1})}}),{setInitialData:d,addFilter:p,removeFilter:c,setPriceRange:m,resetFilters:g,incrementPage:h,clearArtworks:f,enterAIMode:y,setAIResults:v,appendAIArtwork:k,setAICanvasData:w,clearAIResults:b,toggleNatureFilter:j,mergeMasters:A}=u.actions,I=u.reducer},86275:(e,t,a)=>{a.d(t,{ImageProtectionProvider:()=>o});var r=a(95155),i=a(12115);function o({children:e}){return(0,i.useEffect)(()=>{function e(e){let t=e.ctrlKey||e.metaKey;if(t&&"s"===e.key||t&&"u"===e.key||t&&e.shiftKey&&"I"===e.key||t&&e.shiftKey&&"C"===e.key)return void e.preventDefault()}return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[]),(0,r.jsx)(r.Fragment,{children:e})}},96751:(e,t,a)=>{function r(e){return{...e,kind:"acquisition"}}function i(e){return"acquisition"===e.kind}function o(e){return"master"===e.kind}function l(e,t,a){return e?t:a&&a.length>0?a.map(r):t}a.d(t,{Cy:()=>i,N5:()=>n,gv:()=>r,mB:()=>l,n6:()=>o});let n={contemporain:!0,reference:!0}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.