@scaleflex/asset-picker 0.2.9 → 0.2.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- "use strict";var Ts=Object.create;var qt=Object.defineProperty;var Ms=Object.getOwnPropertyDescriptor;var Ls=Object.getOwnPropertyNames;var Os=Object.getPrototypeOf,Ps=Object.prototype.hasOwnProperty;var Is=(t,e,s,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Ls(e))!Ps.call(t,a)&&a!==s&&qt(t,a,{get:()=>e[a],enumerable:!(i=Ms(e,a))||i.enumerable});return t};var Ds=(t,e,s)=>(s=t!=null?Ts(Os(t)):{},Is(e||!t||!t.__esModule?qt(s,"default",{value:t,enumerable:!0}):s,t));const o=require("lit"),c=require("lit/decorators.js");class zs{constructor(e){this.listeners=new Set,this._notifying=!1,this._pendingState=null,this.state=e}getState(){return this.state}setState(e){if(this._notifying){this._pendingState={...this._pendingState||{},...e};return}const s=this.state;this.state={...s,...e},this._notifying=!0;try{this.listeners.forEach(i=>i(this.state,s))}finally{this._notifying=!1}if(this._pendingState){const i=this._pendingState;this._pendingState=null,this.setState(i)}}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}destroy(){this.listeners.clear()}}function Rs(){return new zs({config:null,projectToken:"",sassKey:"",brandColor:"",isOpen:!1,activeTab:"assets",viewMode:"grid",searchQuery:"",sortBy:"modified_at",sortDirection:"desc",previewAsset:null,isPreviewOpen:!1,assets:[],folders:[],folderPreviews:{},labels:[],tags:[],currentFolder:null,currentFolderPath:"/",breadcrumb:[],offset:0,limit:100,totalCount:0,totalFolderCount:0,isLoading:!1,isSelectingAll:!1,hasMore:!1,filters:{metadata:{pinned:[],visible:[],applied:{}},pinned:[],visible:[],applied:{}},metadataFields:[],regionalVariantGroups:[],regionalFilters:{},selectedAssets:new Map,selectedFolders:new Map,isResolvingFolders:!1})}class Ns{constructor(e,s){this.host=e,this.store=s,e.addController(this)}get state(){return this.store.getState()}setState(e){this.store.setState(e)}hostConnected(){this.unsubscribe=this.store.subscribe(()=>{this.host.requestUpdate()})}hostDisconnected(){var e;(e=this.unsubscribe)==null||e.call(this)}}function js(t){return"extension"in t&&!("path"in t)}class Bs{constructor(e,s){this.lastClickedIndex=-1,this.host=e,this.store=s,e.addController(this)}hostConnected(){}hostDisconnected(){}get _folderSelectionEnabled(){var e;return((e=this.store.getState().config)==null?void 0:e.folderSelection)===!0}_getCombinedList(){const e=this.store.getState();return this._folderSelectionEnabled?[...e.folders,...e.assets]:e.assets}_applyRangeSelection(e,s,i,a){const r=this._getCombinedList();for(let n=e;n<=s;n++){const l=r[n];l&&(js(l)?i.set(l.uuid,l):a.set(l.uuid,l))}}handleSelect(e,s,i){var l,d,h,u;const a=this.store.getState(),r=new Map(a.selectedAssets);if(!(((l=a.config)==null?void 0:l.multiSelect)??!0)){r.clear(),r.set(e.uuid,e),this.store.setState({selectedAssets:r,selectedFolders:new Map}),this.lastClickedIndex=s;return}if(i.shiftKey&&this.lastClickedIndex>=0)if(this._folderSelectionEnabled){const f=Math.min(this.lastClickedIndex,s),p=Math.max(this.lastClickedIndex,s),g=new Map(a.selectedFolders);this._applyRangeSelection(f,p,r,g);const m=(d=a.config)==null?void 0:d.maxSelections;if(m&&r.size+g.size>m)return;this.store.setState({selectedAssets:r,selectedFolders:g})}else{const f=Math.min(this.lastClickedIndex,s),p=Math.max(this.lastClickedIndex,s),g=a.assets;for(let _=f;_<=p;_++)g[_]&&r.set(g[_].uuid,g[_]);const m=(h=a.config)==null?void 0:h.maxSelections;if(m&&r.size>m)return;this.store.setState({selectedAssets:r})}else if(i.metaKey||i.ctrlKey){r.has(e.uuid)?r.delete(e.uuid):r.set(e.uuid,e);const f=(u=a.config)==null?void 0:u.maxSelections,p=r.size+(this._folderSelectionEnabled?a.selectedFolders.size:0);if(f&&p>f)return;this.store.setState({selectedAssets:r})}else r.clear(),r.set(e.uuid,e),this.store.setState({selectedAssets:r,selectedFolders:new Map});this.lastClickedIndex=s}handleFolderSelect(e,s,i){var l,d,h;if(!this._folderSelectionEnabled)return;const a=this.store.getState(),r=new Map(a.selectedFolders);if(!(((l=a.config)==null?void 0:l.multiSelect)??!0)){r.clear(),r.set(e.uuid,e),this.store.setState({selectedFolders:r,selectedAssets:new Map}),this.lastClickedIndex=s;return}if(i.shiftKey&&this.lastClickedIndex>=0){const u=Math.min(this.lastClickedIndex,s),f=Math.max(this.lastClickedIndex,s),p=new Map(a.selectedAssets);this._applyRangeSelection(u,f,p,r);const g=(d=a.config)==null?void 0:d.maxSelections;if(g&&p.size+r.size>g)return;this.store.setState({selectedAssets:p,selectedFolders:r})}else if(i.metaKey||i.ctrlKey){r.has(e.uuid)?r.delete(e.uuid):r.set(e.uuid,e);const u=(h=a.config)==null?void 0:h.maxSelections,f=r.size+a.selectedAssets.size;if(u&&f>u)return;this.store.setState({selectedFolders:r})}else r.clear(),r.set(e.uuid,e),this.store.setState({selectedFolders:r,selectedAssets:new Map});this.lastClickedIndex=s}isSelected(e){return this.store.getState().selectedAssets.has(e)}isFolderSelected(e){return this.store.getState().selectedFolders.has(e)}resetRange(){this.lastClickedIndex=-1}selectAll(e){var l;const s=this.store.getState(),i=(l=s.config)==null?void 0:l.maxSelections,a=this._folderSelectionEnabled?s.selectedFolders.size:0,r=new Map,n=i?Math.max(0,Math.min(e.length,i-a)):e.length;for(let d=0;d<n;d++)r.set(e[d].uuid,e[d]);return this.store.setState({selectedAssets:r}),this.lastClickedIndex=-1,r.size}selectAllFolders(e){var n;if(!this._folderSelectionEnabled)return;const s=this.store.getState(),i=(n=s.config)==null?void 0:n.maxSelections,a=new Map,r=i?Math.max(0,Math.min(e.length,i-s.selectedAssets.size)):e.length;for(let l=0;l<r;l++)a.set(e[l].uuid,e[l]);this.store.setState({selectedFolders:a})}clearSelection(){this.store.setState({selectedAssets:new Map,selectedFolders:new Map}),this.lastClickedIndex=-1}getSelectedAssets(){return Array.from(this.store.getState().selectedAssets.values())}getSelectedFolders(){return Array.from(this.store.getState().selectedFolders.values())}}class Us{constructor(e,s){this.host=e,this.onLoadMore=s,e.addController(this)}hostConnected(){}hostDisconnected(){this.disconnect()}observe(e,s){this.disconnect(),this.sentinel=e,this.observer=new IntersectionObserver(i=>{var a;(a=i[0])!=null&&a.isIntersecting&&this.onLoadMore()},{root:s??null,rootMargin:"200px"}),this.observer.observe(e)}disconnect(){this.observer&&this.sentinel&&(this.observer.unobserve(this.sentinel),this.observer.disconnect()),this.observer=void 0,this.sentinel=void 0}}const Ht=5,Te=40,Kt=15;class Vs{constructor(e,s){this.startX=0,this.startY=0,this.startClientX=0,this.startClientY=0,this.preMarqueeSelection=new Map,this.preMarqueeFolderSelection=new Map,this._dragging=!1,this._scrollRAF=null,this._lastMouseEvent=null,this.isActive=!1,this.rect={x:0,y:0,width:0,height:0},this.handleMouseDown=i=>this.onMouseDown(i),this.handleMouseMove=i=>this.onMouseMove(i),this.handleMouseUp=()=>this.onMouseUp(),this.preventSelect=i=>i.preventDefault(),this.host=e,this.store=s,e.addController(this)}hostConnected(){}hostDisconnected(){this.detach()}attach(e){this.detach(),this.container=e,e.addEventListener("mousedown",this.handleMouseDown)}detach(){this.container&&this.container.removeEventListener("mousedown",this.handleMouseDown),document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("mouseup",this.handleMouseUp),document.removeEventListener("selectstart",this.preventSelect),this.stopAutoScroll(),this._lastMouseEvent=null}isInteractiveTarget(e){return e.composedPath().some(i=>{if(!(i instanceof HTMLElement))return!1;if(i instanceof HTMLButtonElement||i instanceof HTMLInputElement)return!0;const a=i.tagName.toLowerCase();return!!(a.startsWith("ap-asset-")||a.startsWith("ap-folder-")||i.classList.contains("check")||i.classList.contains("check-box"))})}onMouseDown(e){var a;if(e.button!==0||this.isInteractiveTarget(e)||!(((a=this.store.getState().config)==null?void 0:a.multiSelect)??!0))return;const i=this.container.getBoundingClientRect();this.startX=e.clientX-i.left+this.container.scrollLeft,this.startY=e.clientY-i.top+this.container.scrollTop,this.startClientX=e.clientX,this.startClientY=e.clientY,this._dragging=!1,this.isActive=!1,document.addEventListener("mousemove",this.handleMouseMove),document.addEventListener("mouseup",this.handleMouseUp)}onMouseMove(e){var s;if(this.container){if(!this._dragging){const i=Math.abs(e.clientX-this.startClientX),a=Math.abs(e.clientY-this.startClientY);if(i<Ht&&a<Ht)return;this._dragging=!0,this.isActive=!0,document.addEventListener("selectstart",this.preventSelect),(s=window.getSelection())==null||s.removeAllRanges(),this.preMarqueeSelection=new Map(this.store.getState().selectedAssets),this.preMarqueeFolderSelection=new Map(this.store.getState().selectedFolders)}this._lastMouseEvent=e,this.updateMarqueeRect(e),this.startAutoScroll(e)}}updateMarqueeRect(e){if(!this.container)return;const s=this.container.getBoundingClientRect(),i=e.clientX-s.left+this.container.scrollLeft,a=e.clientY-s.top+this.container.scrollTop;let r=Math.min(this.startX,i),n=Math.min(this.startY,a),l=Math.abs(i-this.startX),d=Math.abs(a-this.startY);const h=this.container.scrollWidth,u=this.container.scrollHeight;r+l>h&&(l=h-r),n+d>u&&(d=u-n),r<0&&(l+=r,r=0),n<0&&(d+=n,n=0),this.rect={x:r,y:n,width:l,height:d},this.host.requestUpdate(),this.selectIntersecting()}startAutoScroll(e){if(!this.container)return;if(this.container.scrollHeight<=this.container.clientHeight){this.stopAutoScroll();return}const s=this.container.getBoundingClientRect(),i=e.clientY-s.top,a=s.bottom-e.clientY,r=i<Te||a<Te;r&&!this._scrollRAF?this._scrollRAF=requestAnimationFrame(()=>this.autoScrollTick()):r||this.stopAutoScroll()}autoScrollTick(){if(this._scrollRAF=null,!this.container||!this._dragging||!this._lastMouseEvent||this.container.scrollHeight<=this.container.clientHeight)return;const e=this.container.getBoundingClientRect(),s=this._lastMouseEvent,i=s.clientY-e.top,a=e.bottom-s.clientY;let r=0;i<Te?r=-Kt*(1-i/Te):a<Te&&(r=Kt*(1-a/Te)),r!==0&&(this.container.scrollTop+=r,this.updateMarqueeRect(s),this._scrollRAF=requestAnimationFrame(()=>this.autoScrollTick()))}stopAutoScroll(){this._scrollRAF&&(cancelAnimationFrame(this._scrollRAF),this._scrollRAF=null)}onMouseUp(){document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("mouseup",this.handleMouseUp),document.removeEventListener("selectstart",this.preventSelect),this.stopAutoScroll(),this._lastMouseEvent=null,this._dragging&&(this.isActive=!1,this._dragging=!1,this.rect={x:0,y:0,width:0,height:0},this.host.requestUpdate())}querySelectableElements(){const e=[],s=[];for(const i of Array.from(this.container.children))if(i.shadowRoot){const a=i.shadowRoot.querySelectorAll("[data-asset-uuid]");a.length>0&&e.push(...Array.from(a));const r=i.shadowRoot.querySelectorAll("[data-folder-uuid]");r.length>0&&s.push(...Array.from(r))}return e.length===0&&e.push(...Array.from(this.container.querySelectorAll("[data-asset-uuid]"))),s.length===0&&s.push(...Array.from(this.container.querySelectorAll("[data-folder-uuid]"))),{assetCards:e,folderCards:s}}getCardRelativeRect(e){const s=e.getBoundingClientRect(),i=this.container.getBoundingClientRect();return{x:s.left-i.left+this.container.scrollLeft,y:s.top-i.top+this.container.scrollTop,width:s.width,height:s.height}}intersectsMarquee(e){return this.rect.x<e.x+e.width&&this.rect.x+this.rect.width>e.x&&this.rect.y<e.y+e.height&&this.rect.y+this.rect.height>e.y}selectIntersecting(){var h,u;if(!this.container)return;const e=this.store.getState(),s=((h=e.config)==null?void 0:h.folderSelection)===!0,{assetCards:i,folderCards:a}=this.querySelectableElements(),r=new Map(this.preMarqueeSelection),n=s?new Map(this.preMarqueeFolderSelection):e.selectedFolders;i.forEach(f=>{const p=this.getCardRelativeRect(f),g=f.dataset.assetUuid;if(this.intersectsMarquee(p)){const m=e.assets.find(_=>_.uuid===g);m&&r.set(g,m)}}),s&&a.forEach(f=>{const p=this.getCardRelativeRect(f),g=f.dataset.folderUuid;if(this.intersectsMarquee(p)){const m=e.folders.find(_=>_.uuid===g);m&&n.set(g,m)}});const l=(u=e.config)==null?void 0:u.maxSelections,d=r.size+(s?n.size:0);if(l&&d>l){const f=Array.from(r.entries()).slice(0,Math.max(0,l-n.size));this.store.setState({selectedAssets:new Map(f),...s?{selectedFolders:n}:{}})}else this.store.setState({selectedAssets:r,...s?{selectedFolders:n}:{}})}}class qs{constructor(e,s){this.auth=e;const i=e.projectToken;this.baseUrl=s||`https://api.filerobot.com/${i}/v5`,e.mode==="sassKey"&&(this.sassKey=e.sassKey)}setSassKey(e){this.sassKey=e}getSecurityTemplateKey(){if(this.auth.mode==="securityTemplate")return this.auth.securityTemplateKey}_applyAuthHeaders(e){this.sassKey?e["X-Filerobot-Key"]=this.sassKey:this.auth.mode==="securityTemplate"&&(e["X-Filerobot-Key"]=this.auth.securityTemplateKey)}async request(e,s){const i=new URL(`${this.baseUrl}${e}`);s&&Object.entries(s).forEach(([l,d])=>{d!=null&&(Array.isArray(d)?i.searchParams.set(l,d.join(",")):i.searchParams.set(l,String(d)))});const a={};this._applyAuthHeaders(a);const r=new AbortController,n=setTimeout(()=>r.abort(),3e4);try{const l=await fetch(i.toString(),{headers:a,signal:r.signal});if(clearTimeout(n),!l.ok){let h=`API error: ${l.status} ${l.statusText}`;try{const u=await l.json();u.msg&&(h=`API error: ${l.status} - ${u.msg}`)}catch{}throw new Error(h)}const d=await l.json();if(d.status==="error")throw new Error(`API error: ${d.msg||"Unknown error"}`);return d}catch(l){throw clearTimeout(n),l instanceof DOMException&&l.name==="AbortError"?new Error("API request timed out"):l}}async post(e,s){const i=new URL(`${this.baseUrl}${e}`),a={"Content-Type":"application/json"};this._applyAuthHeaders(a);const r=new AbortController,n=setTimeout(()=>r.abort(),3e4);try{const l=await fetch(i.toString(),{method:"POST",headers:a,body:JSON.stringify(s),signal:r.signal});if(clearTimeout(n),!l.ok){let h=`API error: ${l.status} ${l.statusText}`;try{const u=await l.json();u.msg&&(h=`API error: ${l.status} - ${u.msg}`)}catch{}throw new Error(h)}const d=await l.json();if(d.status==="error")throw new Error(`API error: ${d.msg||"Unknown error"}`);return d}catch(l){throw clearTimeout(n),l instanceof DOMException&&l.name==="AbortError"?new Error("API request timed out"):l}}}function Hs(t){const e={offset:t.offset??0,limit:t.limit??100,format:"json,regvar:api,select:internal",preview:2301,recursive:t.recursive??1},s=t.sort_by??"created_at",i=t.sort_direction??"desc",a={created_at:"created_at",modified_at:"modified_at",name:"name",size:"size",type:"type"};e.sort=`${a[s]||s}:${i}`,t.folder&&(e.folder=t.folder);const r=[];return t.search&&r.push(t.search),t.q&&r.push(t.q),r.length>0&&(e.q=r.join(" ")),e}async function Ve(t,e){const s=Hs(e);return t.request("/files",s)}async function Gt(t,e){const s={folder:e.folder,recursive:e.recursive??1},i=[];return e.search&&i.push(e.search),e.q&&i.push(e.q),i.length>0&&(s.q=i.join(" ")),t.request("/files/stats",s)}async function Ks(t,e){const s={recursive:(e==null?void 0:e.recursive)??0,folder:(e==null?void 0:e.folderPath)??"/",limit:(e==null?void 0:e.limit)??1e3,offset:(e==null?void 0:e.offset)??0};e!=null&&e.q&&(s.q=e.q);const i=(e==null?void 0:e.sort_by)??"created_at",a=(e==null?void 0:e.sort_direction)??"asc",r={created_at:"created_at",modified_at:"modified_at",name:"name"};return s.sort=`${r[i]||i}:${a}`,await t.request("/folders",s)}async function Gs(t,e){return e.length===0?{}:(await t.post("/folders/previews",{folders:e})).folders||{}}async function Ys(t){return await t.request("/labels")}async function Xs(t){return((await t.request("/tags")).tags||[]).map(i=>({...i,label:i.names.en||Object.values(i.names)[0]||""})).filter(i=>i.label).sort((i,a)=>i.label.localeCompare(a.label))}async function Ws(t){const e=t.getSecurityTemplateKey();if(!e)throw new Error("Security template key is required for SASS key exchange");return(await t.request(`/key/${e}`)).key}const v={TYPE:"type",MIME_TYPE:"mimetype",METADATA:"metadata",DATE:"date",APPROVAL:"approval",SIZE:"size",LICENSE_EXPIRY:"asset_expiration",TAGS:"tags",IMAGE:"image",LABELS:"labels",PRODUCT_REF:"product_ref",FACES:"faces",COLOR:"color"},R={STATUS:"approval_status",APPROVER:"task_approver",REQUESTOR:"task_requester",DUE_DATE:"task_duedate"},x={IS:":",RANGE:"..",IS_NOT:":-",IS_EXACT:":=",CONTAINS:"~",CONTAINS_IN_TEXT:"~~~",GREATER_THAN_OR_EQUAL:">=",LESS_THAN_OR_EQUAL:"<="},Qs={AND:"AND"},b={NUMERIC:"numeric",SELECT_ONE:"select-one",MULTI_SELECT:"multi-select",TEXT_AREA:"textarea",TEXT:"text",SUPERTAGS:"tags",DATE:"date",BOOLEAN:"boolean",ATTACHMENTS_ASSETS:"attachments-assets",ATTACHMENT_URI:"attachment-uri",GEO_POINT:"geopoint",DECIMAL2:"decimal2",INTEGER_LIST:"integer-list"},ft={[b.DATE]:"date_",[b.BOOLEAN]:"bool_",[b.NUMERIC]:"num_",[b.DECIMAL2]:"dec_",[b.ATTACHMENTS_ASSETS]:"attach_",[b.ATTACHMENT_URI]:"uri_",[b.SELECT_ONE]:"one_",[b.MULTI_SELECT]:"multi_",[b.SUPERTAGS]:"tags_",[b.TEXT]:"text_",[b.TEXT_AREA]:"area_",[b.GEO_POINT]:"geo_",[b.INTEGER_LIST]:"intlist_"};Object.fromEntries(Object.entries(ft).map(([t,e])=>[e,t]));const as=Object.values(ft),qe={PRESET:"preset",AFTER:"after",BEFORE:"before",BETWEEN:"between",SPECIFIC:"specific"},Yt={EMPTY:"empty",NOT_EMPTY:"non-empty"},q="empty",H="non-empty",be="specific",wt=10,$t=10,st=10,rs="filters:pinned:",os="metadata:pinned:",Xt=[v.DATE,v.TYPE,v.SIZE],ns=x.IS,at="20",rt="1",Zs=0,Js=[{key:v.DATE,label:"Date",icon:"calendar",type:"date"},{key:v.TYPE,label:"Format",icon:"file-type",type:"string"},{key:v.SIZE,label:"Size",icon:"scaling",type:"string"},{key:v.LICENSE_EXPIRY,label:"License expiry",icon:"history",type:"date"},{key:v.TAGS,label:"Tags",icon:"hash",type:"string"},{key:v.LABELS,label:"Labels",icon:"tag",type:"string"},{key:v.PRODUCT_REF,label:"Products",icon:"box",type:"string"},{key:v.IMAGE,label:"Image",icon:"image",type:"string"},{key:v.COLOR,label:"Color",icon:"swatch-book",type:"string"}],ei={key:v.METADATA,label:"Metadata",icon:"file-text",type:"string"},ti={key:v.APPROVAL,label:"Approval",icon:"badge-check",type:"string"},Lt=[ei,...Js,ti],Me={[v.TYPE]:"Format",[v.DATE]:"Date",[v.SIZE]:"Size",[v.LICENSE_EXPIRY]:"License expiry",[v.TAGS]:"Tags",[v.LABELS]:"Labels",[v.PRODUCT_REF]:"Products",[v.IMAGE]:"Image",[v.COLOR]:"Color",[v.METADATA]:"Metadata",[v.APPROVAL]:"Approval"},ce={IMAGE:"image",VIDEO:"video",AUDIO:"audio",DOCUMENT:"document",ARCHIVE:"archive",DESIGN_TEMPLATE:"template_fdt",OTHER:"other",FONTS:"font"},ls=[{value:ce.IMAGE,label:"Image",icon:"image"},{value:ce.VIDEO,label:"Video",icon:"clapperboard"},{value:ce.AUDIO,label:"Audio",icon:"music"},{value:ce.DOCUMENT,label:"Document",icon:"document"},{value:ce.ARCHIVE,label:"Archive",icon:"archive"},{value:ce.DESIGN_TEMPLATE,label:"Design template",icon:"layout-template"},{value:ce.FONTS,label:"Fonts",icon:"text"},{value:ce.OTHER,label:"Other",icon:"layout-grid"}],kt={RESOLUTION:0,ORIENTATION:1,FACES:2},si=[{value:"small",label:"Small"},{value:"medium",label:"Medium"},{value:"large",label:"Large"}],ii=[{value:"portrait",label:"Portrait"},{value:"landscape",label:"Landscape"},{value:"square",label:"Square"},{value:"panorama",label:"Panorama"}],ai=[{value:"none",label:"None"},{value:"1",label:"1"},{value:"2",label:"2"},{value:"3..",label:"3+"}],cs=[{value:"created",label:"Created at"},{value:"updated",label:"Updated at"}],Pt=[{value:"today",label:"Today"},{value:"before",label:"Before date"},{value:"last_week",label:"Last week"},{value:"after",label:"After date"},{value:"last_month",label:"Last month"},{value:"between",label:"Between dates"},{value:"last_year",label:"Last year"}],ds=[{value:"today",label:"Today"},{value:"before",label:"Before date"},{value:"within_week",label:"Within week"},{value:"after",label:"After date"},{value:"within_month",label:"Within month"},{value:"between",label:"Between dates"},{value:"within_year",label:"Within year"},{value:"specific",label:"Specific date"}],ri=[{value:"today",label:"Today"},{value:"before",label:"Before date"},{value:"within_week",label:"Within week"},{value:"after",label:"After date"},{value:"within_month",label:"Within month"},{value:"between",label:"Between dates"},{value:"within_year",label:"Within year"},{value:"specific",label:"Specific date"}],oi=["#ffffff","#99a1af","#000000","#894b00","#e7000b","#ff8904","#fdc700","#9ae600","#008236","#00bcff","#1447e6","#7f22fe","#e60076"],ni=[{label:"None (Exact)",value:"0"},{label:"Small",value:"1"},{label:"Medium",value:"2"},{label:"Large",value:"4"}],St=[{label:"Is",value:x.IS},{label:"Contains",value:x.CONTAINS_IN_TEXT}],ie=[{label:"Is",value:x.IS},{label:"Is not",value:x.IS_NOT}],Ct=[{label:"Is",value:x.IS_EXACT},{label:"Contains",value:x.IS},{label:"Does not contain",value:x.IS_NOT}],Et=[{label:"Is",value:x.IS},{label:"Greater than",value:x.GREATER_THAN_OR_EQUAL},{label:"Is not",value:x.IS_NOT},{label:"Less than",value:x.LESS_THAN_OR_EQUAL},{label:"Between",value:x.RANGE}],li=[{label:"Is",value:x.IS_EXACT},{label:"Is not",value:x.IS_NOT}],Wt=[{label:"Contains",value:x.CONTAINS},{label:"Does not contain",value:x.IS_NOT}],ci=[{value:"APPROVED",label:"Approved",icon:"circle-check-big",iconColor:"var(--ap-success, oklch(0.637 0.17 151.295))"},{value:"PENDING",label:"Pending",icon:"clock",iconColor:"var(--ap-warning, oklch(0.734 0.157 69.419))"},{value:"REJECTED",label:"Rejected",icon:"x-circle",iconColor:"var(--ap-destructive, oklch(0.577 0.215 27.325))"},{value:"CANCELLED",label:"Cancelled",icon:"ban",iconColor:"var(--ap-muted-foreground, oklch(0.685 0.033 249.82))"}],ye=[{label:"Empty",value:q},{label:"Not empty",value:H}],Ft=[...ye,{label:"Specific",value:be}],di=[{label:"Empty",value:q},{label:"Not empty",value:H},{label:"True",value:"true"},{label:"False",value:"false"}],ot={[b.DATE]:"calendar",[b.BOOLEAN]:"toggle-left",[b.NUMERIC]:"file-digit",[b.DECIMAL2]:"decimals-arrow-right",[b.ATTACHMENTS_ASSETS]:"paperclip",[b.ATTACHMENT_URI]:"link-2",[b.SELECT_ONE]:"circle-dot",[b.MULTI_SELECT]:"square-check",[b.SUPERTAGS]:"hash",[b.TEXT]:"text-initial",[b.TEXT_AREA]:"text-align-justify",[b.GEO_POINT]:"locate",[b.INTEGER_LIST]:"list-ordered"},pi={[b.TEXT]:"text",[b.TEXT_AREA]:"text",[b.NUMERIC]:"number",[b.DECIMAL2]:"number",[b.BOOLEAN]:"boolean",[b.SELECT_ONE]:"select-one",[b.MULTI_SELECT]:"multi-select",[b.SUPERTAGS]:"tags",[b.DATE]:"date",[b.GEO_POINT]:"geo",[b.ATTACHMENTS_ASSETS]:"attachment",[b.ATTACHMENT_URI]:"attachment",[b.INTEGER_LIST]:"attachment"};async function hi(t){var m,_;const e=await t.request("/settings"),s=e.settings??e,i=(s==null?void 0:s.metadata)??e.metadata,r=((i==null?void 0:i.model)??[])[Zs],n=i==null?void 0:i.store,d=((n==null?void 0:n.regional_variants_groups)??[]).map(y=>({uuid:y.uuid,label:y.label??y.name??"",variants:(y.variants??[]).map(S=>({api_value:S.api_value??S.value??"",internal_unique_value:S.internal_unique_value??S.api_value??"",label:S.label??S.name??""}))})).filter(y=>y.variants.length>1),h={};for(const y of d)h[y.uuid]=((m=y.variants[0])==null?void 0:m.api_value)??"";const u=(s==null?void 0:s.project_branding)??((_=e.settings)==null?void 0:_.project_branding),f=u==null?void 0:u.brandColor;if(!r)return{fields:[],regionalVariantGroups:d,regionalFilters:h,brandColor:f};const p=r.groups??[],g=[];for(const y of p){const S=y.name||"Root fields";for(const w of y.fields??[]){const E=w.possible_values,M=E==null?void 0:E.map($=>({api_value:$.api_value??$.value??"",internal_unique_value:$.internal_unique_value??$.api_value??"",label:$.label??$.name??$.api_value??""}));g.push({key:w.key??w.ckey,label:w.title??w.label??w.key??"",type:w.type??"text",slug:w.slug,ckey:w.ckey,possible_values:M,group:S,regionalVariantsGroupUuid:w.regional_variants_group_uuid})}}return{fields:g,regionalVariantGroups:d,regionalFilters:h,brandColor:f}}function _e(t){return t.toLocaleDateString("en-CA")}function it(){return _e(new Date)}function ps(t){const e=new Date;switch(t){case"today":return{from:it(),to:null};case"last_week":{const s=new Date(e);return s.setDate(s.getDate()-7),{from:_e(s),to:null}}case"within_week":{const s=new Date(e);return s.setDate(s.getDate()+7),{from:it(),to:_e(s)}}case"last_month":{const s=new Date(e);return s.setDate(s.getDate()-30),{from:_e(s),to:null}}case"within_month":{const s=new Date(e);return s.setDate(s.getDate()+30),{from:it(),to:_e(s)}}case"last_year":{const s=new Date(e);return s.setDate(s.getDate()-365),{from:_e(s),to:null}}case"within_year":{const s=new Date(e);return s.setDate(s.getDate()+365),{from:it(),to:_e(s)}}default:return null}}function Qt(t,e){return e?e.type==="date"?ui(e):e.type==="string"?gi(e):!0:!1}function ui(t){return!(!t.kind&&!t.preset||t.kind==="preset"&&!t.preset||t.kind==="between"&&!t.from&&!t.to||t.kind==="after"&&!t.from||t.kind==="before"&&!t.to||t.kind==="specific"&&!t.from||t.from&&t.to&&new Date(t.from)>new Date(t.to))}function gi(t){return!t.values||!Array.isArray(t.values)?!1:t.values.filter(Boolean).length>0}function fi(t,e={}){const s=[];for(const[i,a]of Object.entries(t)){if(!a||!Qt(i,a))continue;const r=vi(i,a);s.push(...r)}for(const[i,a]of Object.entries(e)){if(!a||!Qt(i,a))continue;const r=wi(i,a);s.push(...r)}return mi(s)}function mi(t){const e=[],s=[],i=[];for(const a of t)a.startsWith("type:")||a.startsWith("type=")?e.push(a):a.startsWith("mimetype:")||a.startsWith("mimetype=")?s.push(a):i.push(a);if(e.length>0&&s.length>0){const a=[...e,...s].join(" , ");i.push(a)}else i.push(...e,...s);return i}function vi(t,e){if(e.type==="date")return hs(t,e);if(t===v.IMAGE)return xi(e);const s=e,{operator:i=ns,values:a=[],logic:r}=s;if(a.length===0)return[];switch(t){case v.SIZE:return bi(t,a,"..");case v.FACES:return _i(t,i,a);case v.TAGS:return xe(t,i,Jt(a),",",r);case v.LABELS:return xe(t,i,Jt(a),",",r);case v.COLOR:return yi(i,a,r);case v.TYPE:return Zt(t,a,i);case v.MIME_TYPE:return Zt(t,a,i);case v.PRODUCT_REF:return xe(t,"=%",a,",",r);default:return xe(t,i,a,",",r)}}function hs(t,e){const s=e.field||"created";if(e.kind===qe.PRESET&&e.preset){if(e.preset===Yt.EMPTY)return[`${s}:"empty"`];if(e.preset===Yt.NOT_EMPTY)return[`${s}:"non-empty"`];const i=ps(e.preset);return i?i.to===null?[`${s}>"${i.from}"`]:[`${s}:"${i.from}..${i.to}"`]:[]}if(e.kind===qe.AFTER&&e.from)return[`${s}:>"${e.from}"`];if(e.kind===qe.BEFORE&&e.to)return[`${s}:<"${e.to}"`];if(e.kind===qe.BETWEEN){if(e.from&&e.to)return[`${s}:"${e.from}..${e.to}"`];if(e.from&&!e.to)return[`${s}:>"${e.from}"`];if(!e.from&&e.to)return[`${s}:<"${e.to}"`]}return e.kind===qe.SPECIFIC&&e.from?[`${s}:"${e.from}"`]:[]}function bi(t,e,s){return e.length===0?[]:[`${t}:"${e.join(s)}"`]}function _i(t,e,s){return s.length===0?[]:[`${t}${e}"${s.join(",")}"`]}function xe(t,e,s,i,a){if(s.length===0)return[];if(a===Qs.AND)return s.map(n=>`${t}${e}"${n}"`);const r=s.map(n=>`"${n}"`).join(i);return[`${t}${e}${r}`]}function yi(t,e,s){const i=[],a=xe("color_search",t,e,",",s);return i.push(...a),i.push('color_operator:"AND"'),i}function Zt(t,e,s,i){if(e.length===0)return[];const a=e.map(r=>`"${r}"`).join(",");return[`${t}${s}${a}`]}function xi(t){const e=[];if(typeof t=="object"&&t!==null&&!Array.isArray(t)){const n=t,l=n.resolution,d=n.orientation,h=n.faces;return l!=null&&l.length&&e.push(`resolution:"${l.join(",")}"`),d!=null&&d.length&&e.push(`orientation:"${d.join(",")}"`),h!=null&&h.length&&e.push(`faces:"${h.join(",")}"`),e}const s=t,i=s[kt.RESOLUTION],a=s[kt.ORIENTATION],r=s[kt.FACES];return i&&e.push(`resolution:"${i}"`),a&&e.push(`orientation:"${a}"`),r&&e.push(`faces:"${r}"`),e}function wi(t,e){const s=Si(t),i=ki(t);if(e.type==="date")return $i(s,e,i);const a=e,{operator:r=ns,values:n=[],logic:l,metadataType:d}=a;if(n.length===0)return[];if(n.length===1&&(n[0]===q||n[0]===H)){const h=d===b.GEO_POINT?x.IS+"~":x.IS;return[`${s}${h}"${n[0]}"`]}if((d===b.NUMERIC||d===b.DECIMAL2)&&r===x.RANGE)return[`${s}${x.IS}"${n.join('","')}"`];if(d===b.GEO_POINT){const h=n.map(u=>{const f=u.indexOf("..");if(f===-1)return`(${u})`;const p=u.slice(0,f),g=u.slice(f);return`(${p})${g}`});return xe(s,r+"~",h,",",l)}return xe(s,r,n,",",l)}function $i(t,e,s){const i=hs(t,e);return!s||i.length===0?i:i.map(a=>{const r=a.search(/[^a-zA-Z0-9_]/);if(r===-1)return`"${a}"`;const n=a.slice(0,r),d=a.slice(r).replace(/"/g,"");return`"${n}${d}"`})}function ki(t){return t.startsWith("date_")}function Si(t){for(const e of as)if(t.startsWith(e))return t.slice(e.length);return t}function Jt(t){return t.map(e=>e.replace(/#/g,""))}const Ci=new Set([v.DATE,v.LICENSE_EXPIRY,R.DUE_DATE]);function He(t){if(!t)return{};const e={};for(const[s,i]of Object.entries(t))i&&(e[s]=Ei(s,i));return e}function Ei(t,e){return e.type==="string"||e.type==="date"?e:Ci.has(t)?{type:"date",field:e.field??"created",kind:e.kind??null,preset:e.preset??null,from:e.from??null,to:e.to??null}:{type:"string",values:e.values,...e.operator!==void 0&&{operator:e.operator},...e.logic!==void 0&&{logic:e.logic}}}function Fi(t){const e=localStorage.getItem(rs+t),s=localStorage.getItem(os+t);let i;try{i=e?JSON.parse(e):[...Xt]}catch{i=[...Xt]}let a;try{a=s?JSON.parse(s):[]}catch{a=[]}return{pinnedFilters:i,pinnedMetadata:a}}function Ai(t,e){localStorage.setItem(rs+t,JSON.stringify(e))}function Ti(t,e){localStorage.setItem(os+t,JSON.stringify(e))}const us="sort-by",gs="sort-order";function es(t,e){try{localStorage.setItem(us,t),localStorage.setItem(gs,e)}catch{}}function Mi(){try{const t=localStorage.getItem(us),e=localStorage.getItem(gs);return{sortBy:t,sortDirection:e}}catch{return{sortBy:null,sortDirection:null}}}const fs="ap-last-folder",ms="ap-last-view",vs="ap-last-tab";function ts(t){try{localStorage.setItem(fs,t)}catch{}}function ss(){try{return localStorage.getItem(fs)}catch{return null}}function Li(t){try{localStorage.setItem(ms,t)}catch{}}function Oi(){try{return localStorage.getItem(ms)}catch{return null}}function Pi(t){try{localStorage.setItem(vs,t)}catch{}}function Ii(){try{const t=localStorage.getItem(vs);return t==="assets"||t==="folders"?t:null}catch{return null}}function Di(t){const e=t.replace("#",""),s=e.length===3?e[0]+e[0]+e[1]+e[1]+e[2]+e[2]:e,i=parseInt(s.slice(0,2),16)/255,a=parseInt(s.slice(2,4),16)/255,r=parseInt(s.slice(4,6),16)/255;return[i,a,r]}function At(t){return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function zi(t,e,s){const i=At(t),a=At(e),r=At(s),n=.4122214708*i+.5363325363*a+.0514459929*r,l=.2119034982*i+.6806995451*a+.1073969566*r,d=.0883024619*i+.2817188376*a+.6299787005*r,h=Math.cbrt(n),u=Math.cbrt(l),f=Math.cbrt(d),p=.2104542553*h+.793617785*u-.0040720468*f,g=1.9779984951*h-2.428592205*u+.4505937099*f,m=.0259040371*h+.7827717662*u-.808675766*f,_=Math.sqrt(g*g+m*m);let y=Math.atan2(m,g)*(180/Math.PI);return y<0&&(y+=360),[p,_,y]}function Ri(t){return t>.7}function Ni(t,e){const s=["--ap-primary","--ap-primary-foreground","--ap-primary-10","--ap-primary-20","--ap-accent","--ap-accent-foreground","--ap-ring","--ap-selection-bg"];if(!e){for(const f of s)t.style.removeProperty(f);return}const[i,a,r]=Di(e),[n,l,d]=zi(i,a,r),h=`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)})`,u=Ri(n)?"#000":"#fff";t.style.setProperty("--ap-primary",h),t.style.setProperty("--ap-primary-foreground",u),t.style.setProperty("--ap-primary-10",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.1)`),t.style.setProperty("--ap-primary-20",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.2)`),t.style.setProperty("--ap-accent",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.07)`),t.style.setProperty("--ap-accent-foreground",h),t.style.setProperty("--ap-ring",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.7)`),t.style.setProperty("--ap-selection-bg",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.08)`)}const It=[{value:"name",label:"Name"},{value:"created_at",label:"Uploaded"},{value:"modified_at",label:"Modified"},{value:"size",label:"Size"},{value:"type",label:"Format"}],ji=[{value:"relevance",label:"Relevance"},...It],Bi=[{value:"name",label:"Name"},{value:"created_at",label:"Uploaded"},{value:"modified_at",label:"Modified"},{value:"files_count_recursive",label:"Assets count"},{value:"files_size_recursive",label:"Assets size"}];var Ui=Object.defineProperty,Vi=Object.getOwnPropertyDescriptor,Dt=(t,e,s,i)=>{for(var a=i>1?void 0:i?Vi(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ui(e,s,a),a};let Ge=class extends o.LitElement{constructor(){super(...arguments),this.open=!1}updated(t){var e;super.updated(t),t.has("open")&&(this.open?this.dialog&&!this.dialog.open&&this.dialog.showModal():(e=this.dialog)!=null&&e.open&&this._animateClose())}_animateClose(){const t=this.dialog;if(t){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches){t.close();return}t.classList.add("closing"),t.addEventListener("animationend",()=>{t.classList.remove("closing"),t.close()},{once:!0})}}_handleBackdropClick(t){t.target===this.dialog&&this.dispatchEvent(new CustomEvent("ap-cancel",{detail:{reason:"backdrop"},bubbles:!0,composed:!0}))}_handleCancel(t){t.preventDefault(),this.dispatchEvent(new CustomEvent("ap-cancel",{detail:{reason:"escape"},bubbles:!0,composed:!0}))}render(){return o.html`
1
+ "use strict";var Ts=Object.create;var Gt=Object.defineProperty;var Ms=Object.getOwnPropertyDescriptor;var Ls=Object.getOwnPropertyNames;var Os=Object.getPrototypeOf,Ps=Object.prototype.hasOwnProperty;var Is=(t,e,s,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Ls(e))!Ps.call(t,a)&&a!==s&&Gt(t,a,{get:()=>e[a],enumerable:!(i=Ms(e,a))||i.enumerable});return t};var Ds=(t,e,s)=>(s=t!=null?Ts(Os(t)):{},Is(e||!t||!t.__esModule?Gt(s,"default",{value:t,enumerable:!0}):s,t));const o=require("lit"),c=require("lit/decorators.js");class zs{constructor(e){this.listeners=new Set,this._notifying=!1,this._pendingState=null,this.state=e}getState(){return this.state}setState(e){if(this._notifying){this._pendingState={...this._pendingState||{},...e};return}const s=this.state;this.state={...s,...e},this._notifying=!0;try{this.listeners.forEach(i=>i(this.state,s))}finally{this._notifying=!1}if(this._pendingState){const i=this._pendingState;this._pendingState=null,this.setState(i)}}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}destroy(){this.listeners.clear()}}function Rs(){return new zs({config:null,projectToken:"",sassKey:"",brandColor:"",isOpen:!1,activeTab:"assets",viewMode:"grid",searchQuery:"",sortBy:"modified_at",sortDirection:"desc",previewAsset:null,isPreviewOpen:!1,assets:[],folders:[],folderPreviews:{},labels:[],tags:[],currentFolder:null,currentFolderPath:"/",breadcrumb:[],offset:0,limit:100,totalCount:0,totalFolderCount:0,isLoading:!1,isSelectingAll:!1,hasMore:!1,filters:{metadata:{pinned:[],visible:[],applied:{}},pinned:[],visible:[],applied:{}},fileTypes:[],metadataFields:[],regionalVariantGroups:[],regionalFilters:{},selectedAssets:new Map,selectedFolders:new Map,isResolvingFolders:!1})}class js{constructor(e,s){this.host=e,this.store=s,e.addController(this)}get state(){return this.store.getState()}setState(e){this.store.setState(e)}hostConnected(){this.unsubscribe=this.store.subscribe(()=>{this.host.requestUpdate()})}hostDisconnected(){var e;(e=this.unsubscribe)==null||e.call(this)}}function Ns(t){return"extension"in t&&!("path"in t)}class Bs{constructor(e,s){this.lastClickedIndex=-1,this.host=e,this.store=s,e.addController(this)}hostConnected(){}hostDisconnected(){}get _folderSelectionEnabled(){var e;return((e=this.store.getState().config)==null?void 0:e.folderSelection)===!0}_getCombinedList(){const e=this.store.getState();return this._folderSelectionEnabled?[...e.folders,...e.assets]:e.assets}_applyRangeSelection(e,s,i,a){const r=this._getCombinedList();for(let n=e;n<=s;n++){const l=r[n];l&&(Ns(l)?i.set(l.uuid,l):a.set(l.uuid,l))}}handleSelect(e,s,i){var l,d,h,u;const a=this.store.getState(),r=new Map(a.selectedAssets);if(!(((l=a.config)==null?void 0:l.multiSelect)??!0)){r.clear(),r.set(e.uuid,e),this.store.setState({selectedAssets:r,selectedFolders:new Map}),this.lastClickedIndex=s;return}if(i.shiftKey&&this.lastClickedIndex>=0)if(this._folderSelectionEnabled){const f=Math.min(this.lastClickedIndex,s),p=Math.max(this.lastClickedIndex,s),g=new Map(a.selectedFolders);this._applyRangeSelection(f,p,r,g);const m=(d=a.config)==null?void 0:d.maxSelections;if(m&&r.size+g.size>m)return;this.store.setState({selectedAssets:r,selectedFolders:g})}else{const f=Math.min(this.lastClickedIndex,s),p=Math.max(this.lastClickedIndex,s),g=a.assets;for(let _=f;_<=p;_++)g[_]&&r.set(g[_].uuid,g[_]);const m=(h=a.config)==null?void 0:h.maxSelections;if(m&&r.size>m)return;this.store.setState({selectedAssets:r})}else if(i.metaKey||i.ctrlKey){r.has(e.uuid)?r.delete(e.uuid):r.set(e.uuid,e);const f=(u=a.config)==null?void 0:u.maxSelections,p=r.size+(this._folderSelectionEnabled?a.selectedFolders.size:0);if(f&&p>f)return;this.store.setState({selectedAssets:r})}else r.clear(),r.set(e.uuid,e),this.store.setState({selectedAssets:r,selectedFolders:new Map});this.lastClickedIndex=s}handleFolderSelect(e,s,i){var l,d,h;if(!this._folderSelectionEnabled)return;const a=this.store.getState(),r=new Map(a.selectedFolders);if(!(((l=a.config)==null?void 0:l.multiSelect)??!0)){r.clear(),r.set(e.uuid,e),this.store.setState({selectedFolders:r,selectedAssets:new Map}),this.lastClickedIndex=s;return}if(i.shiftKey&&this.lastClickedIndex>=0){const u=Math.min(this.lastClickedIndex,s),f=Math.max(this.lastClickedIndex,s),p=new Map(a.selectedAssets);this._applyRangeSelection(u,f,p,r);const g=(d=a.config)==null?void 0:d.maxSelections;if(g&&p.size+r.size>g)return;this.store.setState({selectedAssets:p,selectedFolders:r})}else if(i.metaKey||i.ctrlKey){r.has(e.uuid)?r.delete(e.uuid):r.set(e.uuid,e);const u=(h=a.config)==null?void 0:h.maxSelections,f=r.size+a.selectedAssets.size;if(u&&f>u)return;this.store.setState({selectedFolders:r})}else r.clear(),r.set(e.uuid,e),this.store.setState({selectedFolders:r,selectedAssets:new Map});this.lastClickedIndex=s}isSelected(e){return this.store.getState().selectedAssets.has(e)}isFolderSelected(e){return this.store.getState().selectedFolders.has(e)}resetRange(){this.lastClickedIndex=-1}selectAll(e){var l;const s=this.store.getState(),i=(l=s.config)==null?void 0:l.maxSelections,a=this._folderSelectionEnabled?s.selectedFolders.size:0,r=new Map,n=i?Math.max(0,Math.min(e.length,i-a)):e.length;for(let d=0;d<n;d++)r.set(e[d].uuid,e[d]);return this.store.setState({selectedAssets:r}),this.lastClickedIndex=-1,r.size}selectAllFolders(e){var n;if(!this._folderSelectionEnabled)return;const s=this.store.getState(),i=(n=s.config)==null?void 0:n.maxSelections,a=new Map,r=i?Math.max(0,Math.min(e.length,i-s.selectedAssets.size)):e.length;for(let l=0;l<r;l++)a.set(e[l].uuid,e[l]);this.store.setState({selectedFolders:a})}clearSelection(){this.store.setState({selectedAssets:new Map,selectedFolders:new Map}),this.lastClickedIndex=-1}getSelectedAssets(){return Array.from(this.store.getState().selectedAssets.values())}getSelectedFolders(){return Array.from(this.store.getState().selectedFolders.values())}}class Us{constructor(e,s){this.host=e,this.onLoadMore=s,e.addController(this)}hostConnected(){}hostDisconnected(){this.disconnect()}observe(e,s){this.disconnect(),this.sentinel=e,this.observer=new IntersectionObserver(i=>{var a;(a=i[0])!=null&&a.isIntersecting&&this.onLoadMore()},{root:s??null,rootMargin:"200px"}),this.observer.observe(e)}disconnect(){this.observer&&this.sentinel&&(this.observer.unobserve(this.sentinel),this.observer.disconnect()),this.observer=void 0,this.sentinel=void 0}}const Kt=5,Me=40,Yt=15;class Vs{constructor(e,s){this.startX=0,this.startY=0,this.startClientX=0,this.startClientY=0,this.preMarqueeSelection=new Map,this.preMarqueeFolderSelection=new Map,this._dragging=!1,this._scrollRAF=null,this._lastMouseEvent=null,this.isActive=!1,this.rect={x:0,y:0,width:0,height:0},this.handleMouseDown=i=>this.onMouseDown(i),this.handleMouseMove=i=>this.onMouseMove(i),this.handleMouseUp=()=>this.onMouseUp(),this.preventSelect=i=>i.preventDefault(),this.host=e,this.store=s,e.addController(this)}hostConnected(){}hostDisconnected(){this.detach()}attach(e){this.detach(),this.container=e,e.addEventListener("mousedown",this.handleMouseDown)}detach(){this.container&&this.container.removeEventListener("mousedown",this.handleMouseDown),document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("mouseup",this.handleMouseUp),document.removeEventListener("selectstart",this.preventSelect),this.stopAutoScroll(),this._lastMouseEvent=null}isInteractiveTarget(e){return e.composedPath().some(i=>{if(!(i instanceof HTMLElement))return!1;if(i instanceof HTMLButtonElement||i instanceof HTMLInputElement)return!0;const a=i.tagName.toLowerCase();return!!(a.startsWith("ap-asset-")||a.startsWith("ap-folder-")||i.classList.contains("check")||i.classList.contains("check-box"))})}onMouseDown(e){var a;if(e.button!==0||this.isInteractiveTarget(e)||!(((a=this.store.getState().config)==null?void 0:a.multiSelect)??!0))return;const i=this.container.getBoundingClientRect();this.startX=e.clientX-i.left+this.container.scrollLeft,this.startY=e.clientY-i.top+this.container.scrollTop,this.startClientX=e.clientX,this.startClientY=e.clientY,this._dragging=!1,this.isActive=!1,document.addEventListener("mousemove",this.handleMouseMove),document.addEventListener("mouseup",this.handleMouseUp)}onMouseMove(e){var s;if(this.container){if(!this._dragging){const i=Math.abs(e.clientX-this.startClientX),a=Math.abs(e.clientY-this.startClientY);if(i<Kt&&a<Kt)return;this._dragging=!0,this.isActive=!0,document.addEventListener("selectstart",this.preventSelect),(s=window.getSelection())==null||s.removeAllRanges(),this.preMarqueeSelection=new Map(this.store.getState().selectedAssets),this.preMarqueeFolderSelection=new Map(this.store.getState().selectedFolders)}this._lastMouseEvent=e,this.updateMarqueeRect(e),this.startAutoScroll(e)}}updateMarqueeRect(e){if(!this.container)return;const s=this.container.getBoundingClientRect(),i=e.clientX-s.left+this.container.scrollLeft,a=e.clientY-s.top+this.container.scrollTop;let r=Math.min(this.startX,i),n=Math.min(this.startY,a),l=Math.abs(i-this.startX),d=Math.abs(a-this.startY);const h=this.container.scrollWidth,u=this.container.scrollHeight;r+l>h&&(l=h-r),n+d>u&&(d=u-n),r<0&&(l+=r,r=0),n<0&&(d+=n,n=0),this.rect={x:r,y:n,width:l,height:d},this.host.requestUpdate(),this.selectIntersecting()}startAutoScroll(e){if(!this.container)return;if(this.container.scrollHeight<=this.container.clientHeight){this.stopAutoScroll();return}const s=this.container.getBoundingClientRect(),i=e.clientY-s.top,a=s.bottom-e.clientY,r=i<Me||a<Me;r&&!this._scrollRAF?this._scrollRAF=requestAnimationFrame(()=>this.autoScrollTick()):r||this.stopAutoScroll()}autoScrollTick(){if(this._scrollRAF=null,!this.container||!this._dragging||!this._lastMouseEvent||this.container.scrollHeight<=this.container.clientHeight)return;const e=this.container.getBoundingClientRect(),s=this._lastMouseEvent,i=s.clientY-e.top,a=e.bottom-s.clientY;let r=0;i<Me?r=-Yt*(1-i/Me):a<Me&&(r=Yt*(1-a/Me)),r!==0&&(this.container.scrollTop+=r,this.updateMarqueeRect(s),this._scrollRAF=requestAnimationFrame(()=>this.autoScrollTick()))}stopAutoScroll(){this._scrollRAF&&(cancelAnimationFrame(this._scrollRAF),this._scrollRAF=null)}onMouseUp(){document.removeEventListener("mousemove",this.handleMouseMove),document.removeEventListener("mouseup",this.handleMouseUp),document.removeEventListener("selectstart",this.preventSelect),this.stopAutoScroll(),this._lastMouseEvent=null,this._dragging&&(this.isActive=!1,this._dragging=!1,this.rect={x:0,y:0,width:0,height:0},this.host.requestUpdate())}querySelectableElements(){const e=[],s=[];for(const i of Array.from(this.container.children))if(i.shadowRoot){const a=i.shadowRoot.querySelectorAll("[data-asset-uuid]");a.length>0&&e.push(...Array.from(a));const r=i.shadowRoot.querySelectorAll("[data-folder-uuid]");r.length>0&&s.push(...Array.from(r))}return e.length===0&&e.push(...Array.from(this.container.querySelectorAll("[data-asset-uuid]"))),s.length===0&&s.push(...Array.from(this.container.querySelectorAll("[data-folder-uuid]"))),{assetCards:e,folderCards:s}}getCardRelativeRect(e){const s=e.getBoundingClientRect(),i=this.container.getBoundingClientRect();return{x:s.left-i.left+this.container.scrollLeft,y:s.top-i.top+this.container.scrollTop,width:s.width,height:s.height}}intersectsMarquee(e){return this.rect.x<e.x+e.width&&this.rect.x+this.rect.width>e.x&&this.rect.y<e.y+e.height&&this.rect.y+this.rect.height>e.y}selectIntersecting(){var h,u;if(!this.container)return;const e=this.store.getState(),s=((h=e.config)==null?void 0:h.folderSelection)===!0,{assetCards:i,folderCards:a}=this.querySelectableElements(),r=new Map(this.preMarqueeSelection),n=s?new Map(this.preMarqueeFolderSelection):e.selectedFolders;i.forEach(f=>{const p=this.getCardRelativeRect(f),g=f.dataset.assetUuid;if(this.intersectsMarquee(p)){const m=e.assets.find(_=>_.uuid===g);m&&r.set(g,m)}}),s&&a.forEach(f=>{const p=this.getCardRelativeRect(f),g=f.dataset.folderUuid;if(this.intersectsMarquee(p)){const m=e.folders.find(_=>_.uuid===g);m&&n.set(g,m)}});const l=(u=e.config)==null?void 0:u.maxSelections,d=r.size+(s?n.size:0);if(l&&d>l){const f=Array.from(r.entries()).slice(0,Math.max(0,l-n.size));this.store.setState({selectedAssets:new Map(f),...s?{selectedFolders:n}:{}})}else this.store.setState({selectedAssets:r,...s?{selectedFolders:n}:{}})}}class qs{constructor(e,s){this.auth=e;const i=e.projectToken;this.baseUrl=s||`https://api.filerobot.com/${i}/v5`,e.mode==="sassKey"&&(this.sassKey=e.sassKey)}setSassKey(e){this.sassKey=e}getSecurityTemplateKey(){if(this.auth.mode==="securityTemplate")return this.auth.securityTemplateKey}_applyAuthHeaders(e){this.sassKey?e["X-Filerobot-Key"]=this.sassKey:this.auth.mode==="securityTemplate"&&(e["X-Filerobot-Key"]=this.auth.securityTemplateKey)}async request(e,s){const i=new URL(`${this.baseUrl}${e}`);s&&Object.entries(s).forEach(([l,d])=>{d!=null&&(Array.isArray(d)?i.searchParams.set(l,d.join(",")):i.searchParams.set(l,String(d)))});const a={};this._applyAuthHeaders(a);const r=new AbortController,n=setTimeout(()=>r.abort(),3e4);try{const l=await fetch(i.toString(),{headers:a,signal:r.signal});if(clearTimeout(n),!l.ok){let h=`API error: ${l.status} ${l.statusText}`;try{const u=await l.json();u.msg&&(h=`API error: ${l.status} - ${u.msg}`)}catch{}throw new Error(h)}const d=await l.json();if(d.status==="error")throw new Error(`API error: ${d.msg||"Unknown error"}`);return d}catch(l){throw clearTimeout(n),l instanceof DOMException&&l.name==="AbortError"?new Error("API request timed out"):l}}async post(e,s){const i=new URL(`${this.baseUrl}${e}`),a={"Content-Type":"application/json"};this._applyAuthHeaders(a);const r=new AbortController,n=setTimeout(()=>r.abort(),3e4);try{const l=await fetch(i.toString(),{method:"POST",headers:a,body:JSON.stringify(s),signal:r.signal});if(clearTimeout(n),!l.ok){let h=`API error: ${l.status} ${l.statusText}`;try{const u=await l.json();u.msg&&(h=`API error: ${l.status} - ${u.msg}`)}catch{}throw new Error(h)}const d=await l.json();if(d.status==="error")throw new Error(`API error: ${d.msg||"Unknown error"}`);return d}catch(l){throw clearTimeout(n),l instanceof DOMException&&l.name==="AbortError"?new Error("API request timed out"):l}}}function Hs(t){const e={offset:t.offset??0,limit:t.limit??100,format:"json,regvar:api,select:internal",preview:2301,recursive:t.recursive??1},s=t.sort_by??"created_at",i=t.sort_direction??"desc",a={created_at:"created_at",modified_at:"modified_at",name:"name",size:"size",type:"type"};e.sort=`${a[s]||s}:${i}`,t.folder&&(e.folder=t.folder);const r=[];return t.search&&r.push(t.search),t.q&&r.push(t.q),r.length>0&&(e.q=r.join(" ")),e}async function qe(t,e){const s=Hs(e);return t.request("/files",s)}async function Xt(t,e){const s={folder:e.folder,recursive:e.recursive??1},i=[];return e.search&&i.push(e.search),e.q&&i.push(e.q),i.length>0&&(s.q=i.join(" ")),t.request("/files/stats",s)}async function Gs(t,e){const s={recursive:(e==null?void 0:e.recursive)??0,folder:(e==null?void 0:e.folderPath)??"/",limit:(e==null?void 0:e.limit)??1e3,offset:(e==null?void 0:e.offset)??0};e!=null&&e.q&&(s.q=e.q);const i=(e==null?void 0:e.sort_by)??"created_at",a=(e==null?void 0:e.sort_direction)??"asc",r={created_at:"created_at",modified_at:"modified_at",name:"name"};return s.sort=`${r[i]||i}:${a}`,await t.request("/folders",s)}async function Ks(t,e){return e.length===0?{}:(await t.post("/folders/previews",{folders:e})).folders||{}}async function Ys(t){return await t.request("/labels")}async function Xs(t){return((await t.request("/tags")).tags||[]).map(i=>({...i,label:i.names.en||Object.values(i.names)[0]||""})).filter(i=>i.label).sort((i,a)=>i.label.localeCompare(a.label))}async function Ws(t){const e=t.getSecurityTemplateKey();if(!e)throw new Error("Security template key is required for SASS key exchange");return(await t.request(`/key/${e}`)).key}const v={TYPE:"type",MIME_TYPE:"mimetype",METADATA:"metadata",DATE:"date",APPROVAL:"approval",SIZE:"size",LICENSE_EXPIRY:"asset_expiration",TAGS:"tags",IMAGE:"image",LABELS:"labels",PRODUCT_REF:"product_ref",FACES:"faces",COLOR:"color"},R={STATUS:"approval_status",APPROVER:"task_approver",REQUESTOR:"task_requester",DUE_DATE:"task_duedate"},x={IS:":",RANGE:"..",IS_NOT:":-",IS_EXACT:":=",CONTAINS:"~",CONTAINS_IN_TEXT:"~~~",GREATER_THAN_OR_EQUAL:">=",LESS_THAN_OR_EQUAL:"<="},Qs={AND:"AND"},b={NUMERIC:"numeric",SELECT_ONE:"select-one",MULTI_SELECT:"multi-select",TEXT_AREA:"textarea",TEXT:"text",SUPERTAGS:"tags",DATE:"date",BOOLEAN:"boolean",ATTACHMENTS_ASSETS:"attachments-assets",ATTACHMENT_URI:"attachment-uri",GEO_POINT:"geopoint",DECIMAL2:"decimal2",INTEGER_LIST:"integer-list"},vt={[b.DATE]:"date_",[b.BOOLEAN]:"bool_",[b.NUMERIC]:"num_",[b.DECIMAL2]:"dec_",[b.ATTACHMENTS_ASSETS]:"attach_",[b.ATTACHMENT_URI]:"uri_",[b.SELECT_ONE]:"one_",[b.MULTI_SELECT]:"multi_",[b.SUPERTAGS]:"tags_",[b.TEXT]:"text_",[b.TEXT_AREA]:"area_",[b.GEO_POINT]:"geo_",[b.INTEGER_LIST]:"intlist_"};Object.fromEntries(Object.entries(vt).map(([t,e])=>[e,t]));const os=Object.values(vt),He={PRESET:"preset",AFTER:"after",BEFORE:"before",BETWEEN:"between",SPECIFIC:"specific"},Wt={EMPTY:"empty",NOT_EMPTY:"non-empty"},H="empty",G="non-empty",be="specific",kt=10,St=10,at=10,ns="filters:pinned:",ls="metadata:pinned:",Qt=[v.DATE,v.TYPE,v.SIZE],cs=x.IS,ot="20",nt="1",Zs=0,Js=[{key:v.DATE,label:"Date",icon:"calendar",type:"date"},{key:v.TYPE,label:"Format",icon:"file-type",type:"string"},{key:v.SIZE,label:"Size",icon:"scaling",type:"string"},{key:v.LICENSE_EXPIRY,label:"License expiry",icon:"history",type:"date"},{key:v.TAGS,label:"Tags",icon:"hash",type:"string"},{key:v.LABELS,label:"Labels",icon:"tag",type:"string"},{key:v.PRODUCT_REF,label:"Products",icon:"box",type:"string"},{key:v.IMAGE,label:"Image",icon:"image",type:"string"},{key:v.COLOR,label:"Color",icon:"swatch-book",type:"string"}],ei={key:v.METADATA,label:"Metadata",icon:"file-text",type:"string"},ti={key:v.APPROVAL,label:"Approval",icon:"badge-check",type:"string"},Pt=[ei,...Js,ti],Le={[v.TYPE]:"Format",[v.DATE]:"Date",[v.SIZE]:"Size",[v.LICENSE_EXPIRY]:"License expiry",[v.TAGS]:"Tags",[v.LABELS]:"Labels",[v.PRODUCT_REF]:"Products",[v.IMAGE]:"Image",[v.COLOR]:"Color",[v.METADATA]:"Metadata",[v.APPROVAL]:"Approval"},j={IMAGE:"image",VIDEO:"video",AUDIO:"audio",DOCUMENT:"document",ARCHIVE:"archive",DESIGN_TEMPLATE:"template_fdt",OTHER:"other",FONTS:"font"},ct=[{value:j.IMAGE,label:"Image",icon:"image"},{value:j.VIDEO,label:"Video",icon:"clapperboard"},{value:j.AUDIO,label:"Audio",icon:"music"},{value:j.DOCUMENT,label:"Document",icon:"document"},{value:j.ARCHIVE,label:"Archive",icon:"archive"},{value:j.DESIGN_TEMPLATE,label:"Design template",icon:"layout-template"},{value:j.FONTS,label:"Fonts",icon:"text"},{value:j.OTHER,label:"Other",icon:"layout-grid"}],si={[j.IMAGE]:["jpg","jpeg","png","gif","webp","svg","bmp","ico","tiff","tif","avif","heic","heif","psd","eps"],[j.VIDEO]:["mp4","webm","ogg","mov","avi","mkv","flv","wmv","m4v"],[j.AUDIO]:["mp3","wav","ogg","flac","aac","wma","m4a","opus"],[j.DOCUMENT]:["pdf","doc","docx","xls","xlsx","ppt","pptx","txt","csv","rtf","odt","ods","odp","html"],[j.ARCHIVE]:["zip","rar","7z","tar","gz","bz2","xz"],[j.FONTS]:["ttf","otf","woff","woff2","eot"]},Ct={RESOLUTION:0,ORIENTATION:1,FACES:2},ii=[{value:"small",label:"Small"},{value:"medium",label:"Medium"},{value:"large",label:"Large"}],ai=[{value:"portrait",label:"Portrait"},{value:"landscape",label:"Landscape"},{value:"square",label:"Square"},{value:"panorama",label:"Panorama"}],ri=[{value:"none",label:"None"},{value:"1",label:"1"},{value:"2",label:"2"},{value:"3..",label:"3+"}],ds=[{value:"created",label:"Created at"},{value:"updated",label:"Updated at"}],Dt=[{value:"today",label:"Today"},{value:"before",label:"Before date"},{value:"last_week",label:"Last week"},{value:"after",label:"After date"},{value:"last_month",label:"Last month"},{value:"between",label:"Between dates"},{value:"last_year",label:"Last year"}],ps=[{value:"today",label:"Today"},{value:"before",label:"Before date"},{value:"within_week",label:"Within week"},{value:"after",label:"After date"},{value:"within_month",label:"Within month"},{value:"between",label:"Between dates"},{value:"within_year",label:"Within year"},{value:"specific",label:"Specific date"}],oi=[{value:"today",label:"Today"},{value:"before",label:"Before date"},{value:"within_week",label:"Within week"},{value:"after",label:"After date"},{value:"within_month",label:"Within month"},{value:"between",label:"Between dates"},{value:"within_year",label:"Within year"},{value:"specific",label:"Specific date"}],ni=["#ffffff","#99a1af","#000000","#894b00","#e7000b","#ff8904","#fdc700","#9ae600","#008236","#00bcff","#1447e6","#7f22fe","#e60076"],li=[{label:"None (Exact)",value:"0"},{label:"Small",value:"1"},{label:"Medium",value:"2"},{label:"Large",value:"4"}],Et=[{label:"Is",value:x.IS},{label:"Contains",value:x.CONTAINS_IN_TEXT}],ae=[{label:"Is",value:x.IS},{label:"Is not",value:x.IS_NOT}],Ft=[{label:"Is",value:x.IS_EXACT},{label:"Contains",value:x.IS},{label:"Does not contain",value:x.IS_NOT}],At=[{label:"Is",value:x.IS},{label:"Greater than",value:x.GREATER_THAN_OR_EQUAL},{label:"Is not",value:x.IS_NOT},{label:"Less than",value:x.LESS_THAN_OR_EQUAL},{label:"Between",value:x.RANGE}],ci=[{label:"Is",value:x.IS_EXACT},{label:"Is not",value:x.IS_NOT}],Zt=[{label:"Contains",value:x.CONTAINS},{label:"Does not contain",value:x.IS_NOT}],di=[{value:"APPROVED",label:"Approved",icon:"circle-check-big",iconColor:"var(--ap-success, oklch(0.637 0.17 151.295))"},{value:"PENDING",label:"Pending",icon:"clock",iconColor:"var(--ap-warning, oklch(0.734 0.157 69.419))"},{value:"REJECTED",label:"Rejected",icon:"x-circle",iconColor:"var(--ap-destructive, oklch(0.577 0.215 27.325))"},{value:"CANCELLED",label:"Cancelled",icon:"ban",iconColor:"var(--ap-muted-foreground, oklch(0.685 0.033 249.82))"}],ye=[{label:"Empty",value:H},{label:"Not empty",value:G}],Tt=[...ye,{label:"Specific",value:be}],pi=[{label:"Empty",value:H},{label:"Not empty",value:G},{label:"True",value:"true"},{label:"False",value:"false"}],lt={[b.DATE]:"calendar",[b.BOOLEAN]:"toggle-left",[b.NUMERIC]:"file-digit",[b.DECIMAL2]:"decimals-arrow-right",[b.ATTACHMENTS_ASSETS]:"paperclip",[b.ATTACHMENT_URI]:"link-2",[b.SELECT_ONE]:"circle-dot",[b.MULTI_SELECT]:"square-check",[b.SUPERTAGS]:"hash",[b.TEXT]:"text-initial",[b.TEXT_AREA]:"text-align-justify",[b.GEO_POINT]:"locate",[b.INTEGER_LIST]:"list-ordered"},hi={[b.TEXT]:"text",[b.TEXT_AREA]:"text",[b.NUMERIC]:"number",[b.DECIMAL2]:"number",[b.BOOLEAN]:"boolean",[b.SELECT_ONE]:"select-one",[b.MULTI_SELECT]:"multi-select",[b.SUPERTAGS]:"tags",[b.DATE]:"date",[b.GEO_POINT]:"geo",[b.ATTACHMENTS_ASSETS]:"attachment",[b.ATTACHMENT_URI]:"attachment",[b.INTEGER_LIST]:"attachment"};async function ui(t){var i;return(((i=(await t.request("/filters",{filter_by:"filetype",format:"list",limit:200})).filters)==null?void 0:i.file_types)??[]).map(a=>({name:a.name,value:a.value,count:a.count,category:a.category??a.value.split("_")[0],label:gi(a.name)}))}function gi(t){const e=t.indexOf("›");return(e!==-1?t.slice(e+1).trim():t).toUpperCase()}async function fi(t){var m,_;const e=await t.request("/settings"),s=e.settings??e,i=(s==null?void 0:s.metadata)??e.metadata,r=((i==null?void 0:i.model)??[])[Zs],n=i==null?void 0:i.store,d=((n==null?void 0:n.regional_variants_groups)??[]).map(y=>({uuid:y.uuid,label:y.label??y.name??"",variants:(y.variants??[]).map(S=>({api_value:S.api_value??S.value??"",internal_unique_value:S.internal_unique_value??S.api_value??"",label:S.label??S.name??""}))})).filter(y=>y.variants.length>1),h={};for(const y of d)h[y.uuid]=((m=y.variants[0])==null?void 0:m.api_value)??"";const u=(s==null?void 0:s.project_branding)??((_=e.settings)==null?void 0:_.project_branding),f=u==null?void 0:u.brandColor;if(!r)return{fields:[],regionalVariantGroups:d,regionalFilters:h,brandColor:f};const p=r.groups??[],g=[];for(const y of p){const S=y.name||"Root fields";for(const w of y.fields??[]){const E=w.possible_values,M=E==null?void 0:E.map($=>({api_value:$.api_value??$.value??"",internal_unique_value:$.internal_unique_value??$.api_value??"",label:$.label??$.name??$.api_value??""}));g.push({key:w.key??w.ckey,label:w.title??w.label??w.key??"",type:w.type??"text",slug:w.slug,ckey:w.ckey,possible_values:M,group:S,regionalVariantsGroupUuid:w.regional_variants_group_uuid})}}return{fields:g,regionalVariantGroups:d,regionalFilters:h,brandColor:f}}function _e(t){return t.toLocaleDateString("en-CA")}function rt(){return _e(new Date)}function hs(t){const e=new Date;switch(t){case"today":return{from:rt(),to:null};case"last_week":{const s=new Date(e);return s.setDate(s.getDate()-7),{from:_e(s),to:null}}case"within_week":{const s=new Date(e);return s.setDate(s.getDate()+7),{from:rt(),to:_e(s)}}case"last_month":{const s=new Date(e);return s.setDate(s.getDate()-30),{from:_e(s),to:null}}case"within_month":{const s=new Date(e);return s.setDate(s.getDate()+30),{from:rt(),to:_e(s)}}case"last_year":{const s=new Date(e);return s.setDate(s.getDate()-365),{from:_e(s),to:null}}case"within_year":{const s=new Date(e);return s.setDate(s.getDate()+365),{from:rt(),to:_e(s)}}default:return null}}function Jt(t,e){return e?e.type==="date"?mi(e):e.type==="string"?vi(e):!0:!1}function mi(t){return!(!t.kind&&!t.preset||t.kind==="preset"&&!t.preset||t.kind==="between"&&!t.from&&!t.to||t.kind==="after"&&!t.from||t.kind==="before"&&!t.to||t.kind==="specific"&&!t.from||t.from&&t.to&&new Date(t.from)>new Date(t.to))}function vi(t){return!t.values||!Array.isArray(t.values)?!1:t.values.filter(Boolean).length>0}function bi(t,e={}){const s=[];for(const[i,a]of Object.entries(t)){if(!a||!Jt(i,a))continue;const r=yi(i,a);s.push(...r)}for(const[i,a]of Object.entries(e)){if(!a||!Jt(i,a))continue;const r=Ei(i,a);s.push(...r)}return _i(s)}function _i(t){const e=[],s=[],i=[];for(const a of t)a.startsWith("type:")||a.startsWith("type=")?e.push(a):a.startsWith("mimetype:")||a.startsWith("mimetype=")?s.push(a):i.push(a);if(e.length>0&&s.length>0){const a=[...e,...s].join(" , ");i.push(a)}else i.push(...e,...s);return i}function yi(t,e){if(e.type==="date")return us(t,e);if(t===v.IMAGE)return Ci(e);const s=e,{operator:i=cs,values:a=[],logic:r}=s;if(a.length===0)return[];switch(t){case v.SIZE:return xi(t,a,"..");case v.FACES:return wi(t,i,a);case v.TAGS:return xe(t,i,es(a),",",r);case v.LABELS:return xe(t,i,es(a),",",r);case v.COLOR:return $i(i,a,r);case v.TYPE:return ki(a,i);case v.MIME_TYPE:return Si(t,a,i);case v.PRODUCT_REF:return xe(t,"=%",a,",",r);default:return xe(t,i,a,",",r)}}function us(t,e){const s=e.field||"created";if(e.kind===He.PRESET&&e.preset){if(e.preset===Wt.EMPTY)return[`${s}:"empty"`];if(e.preset===Wt.NOT_EMPTY)return[`${s}:"non-empty"`];const i=hs(e.preset);return i?i.to===null?[`${s}>"${i.from}"`]:[`${s}:"${i.from}..${i.to}"`]:[]}if(e.kind===He.AFTER&&e.from)return[`${s}:>"${e.from}"`];if(e.kind===He.BEFORE&&e.to)return[`${s}:<"${e.to}"`];if(e.kind===He.BETWEEN){if(e.from&&e.to)return[`${s}:"${e.from}..${e.to}"`];if(e.from&&!e.to)return[`${s}:>"${e.from}"`];if(!e.from&&e.to)return[`${s}:<"${e.to}"`]}return e.kind===He.SPECIFIC&&e.from?[`${s}:"${e.from}"`]:[]}function xi(t,e,s){return e.length===0?[]:[`${t}:"${e.join(s)}"`]}function wi(t,e,s){return s.length===0?[]:[`${t}${e}"${s.join(",")}"`]}function xe(t,e,s,i,a){if(s.length===0)return[];if(a===Qs.AND)return s.map(n=>`${t}${e}"${n}"`);const r=s.map(n=>`"${n}"`).join(i);return[`${t}${e}${r}`]}function $i(t,e,s){const i=[],a=xe("color_search",t,e,",",s);return i.push(...a),i.push('color_operator:"AND"'),i}function ki(t,e){if(t.length===0)return[];const s=new Set,i=[];for(const r of t){const n=si[r];if(n)for(const l of n){const d=`${r}_${l}`;s.has(d)||(s.add(d),i.push(d))}else s.has(r)||(s.add(r),i.push(r))}const a=i.map(r=>`"${r}"`).join(",");return[`type${e}${a}`]}function Si(t,e,s,i){if(e.length===0)return[];const a=e.map(r=>`"${r}"`).join(",");return[`${t}${s}${a}`]}function Ci(t){const e=[];if(typeof t=="object"&&t!==null&&!Array.isArray(t)){const n=t,l=n.resolution,d=n.orientation,h=n.faces;return l!=null&&l.length&&e.push(`resolution:"${l.join(",")}"`),d!=null&&d.length&&e.push(`orientation:"${d.join(",")}"`),h!=null&&h.length&&e.push(`faces:"${h.join(",")}"`),e}const s=t,i=s[Ct.RESOLUTION],a=s[Ct.ORIENTATION],r=s[Ct.FACES];return i&&e.push(`resolution:"${i}"`),a&&e.push(`orientation:"${a}"`),r&&e.push(`faces:"${r}"`),e}function Ei(t,e){const s=Ti(t),i=Ai(t);if(e.type==="date")return Fi(s,e,i);const a=e,{operator:r=cs,values:n=[],logic:l,metadataType:d}=a;if(n.length===0)return[];if(n.length===1&&(n[0]===H||n[0]===G)){const h=d===b.GEO_POINT?x.IS+"~":x.IS;return[`${s}${h}"${n[0]}"`]}if((d===b.NUMERIC||d===b.DECIMAL2)&&r===x.RANGE)return[`${s}${x.IS}"${n.join('","')}"`];if(d===b.GEO_POINT){const h=n.map(u=>{const f=u.indexOf("..");if(f===-1)return`(${u})`;const p=u.slice(0,f),g=u.slice(f);return`(${p})${g}`});return xe(s,r+"~",h,",",l)}return xe(s,r,n,",",l)}function Fi(t,e,s){const i=us(t,e);return!s||i.length===0?i:i.map(a=>{const r=a.search(/[^a-zA-Z0-9_]/);if(r===-1)return`"${a}"`;const n=a.slice(0,r),d=a.slice(r).replace(/"/g,"");return`"${n}${d}"`})}function Ai(t){return t.startsWith("date_")}function Ti(t){for(const e of os)if(t.startsWith(e))return t.slice(e.length);return t}function es(t){return t.map(e=>e.replace(/#/g,""))}const Mi=new Set([v.DATE,v.LICENSE_EXPIRY,R.DUE_DATE]);function Ge(t){if(!t)return{};const e={};for(const[s,i]of Object.entries(t))i&&(e[s]=Li(s,i));return e}function Li(t,e){return e.type==="string"||e.type==="date"?e:Mi.has(t)?{type:"date",field:e.field??"created",kind:e.kind??null,preset:e.preset??null,from:e.from??null,to:e.to??null}:{type:"string",values:e.values,...e.operator!==void 0&&{operator:e.operator},...e.logic!==void 0&&{logic:e.logic}}}function Oi(t){const e=localStorage.getItem(ns+t),s=localStorage.getItem(ls+t);let i;try{i=e?JSON.parse(e):[...Qt]}catch{i=[...Qt]}let a;try{a=s?JSON.parse(s):[]}catch{a=[]}return{pinnedFilters:i,pinnedMetadata:a}}function Pi(t,e){localStorage.setItem(ns+t,JSON.stringify(e))}function Ii(t,e){localStorage.setItem(ls+t,JSON.stringify(e))}const gs="sort-by",fs="sort-order";function ts(t,e){try{localStorage.setItem(gs,t),localStorage.setItem(fs,e)}catch{}}function Di(){try{const t=localStorage.getItem(gs),e=localStorage.getItem(fs);return{sortBy:t,sortDirection:e}}catch{return{sortBy:null,sortDirection:null}}}const ms="ap-last-folder",vs="ap-last-view",bs="ap-last-tab";function ss(t){try{localStorage.setItem(ms,t)}catch{}}function is(){try{return localStorage.getItem(ms)}catch{return null}}function zi(t){try{localStorage.setItem(vs,t)}catch{}}function Ri(){try{return localStorage.getItem(vs)}catch{return null}}function ji(t){try{localStorage.setItem(bs,t)}catch{}}function Ni(){try{const t=localStorage.getItem(bs);return t==="assets"||t==="folders"?t:null}catch{return null}}function Bi(t){const e=t.replace("#",""),s=e.length===3?e[0]+e[0]+e[1]+e[1]+e[2]+e[2]:e,i=parseInt(s.slice(0,2),16)/255,a=parseInt(s.slice(2,4),16)/255,r=parseInt(s.slice(4,6),16)/255;return[i,a,r]}function Mt(t){return t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Ui(t,e,s){const i=Mt(t),a=Mt(e),r=Mt(s),n=.4122214708*i+.5363325363*a+.0514459929*r,l=.2119034982*i+.6806995451*a+.1073969566*r,d=.0883024619*i+.2817188376*a+.6299787005*r,h=Math.cbrt(n),u=Math.cbrt(l),f=Math.cbrt(d),p=.2104542553*h+.793617785*u-.0040720468*f,g=1.9779984951*h-2.428592205*u+.4505937099*f,m=.0259040371*h+.7827717662*u-.808675766*f,_=Math.sqrt(g*g+m*m);let y=Math.atan2(m,g)*(180/Math.PI);return y<0&&(y+=360),[p,_,y]}function Vi(t){return t>.7}function qi(t,e){const s=["--ap-primary","--ap-primary-foreground","--ap-primary-10","--ap-primary-20","--ap-accent","--ap-accent-foreground","--ap-ring","--ap-selection-bg"];if(!e){for(const f of s)t.style.removeProperty(f);return}const[i,a,r]=Bi(e),[n,l,d]=Ui(i,a,r),h=`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)})`,u=Vi(n)?"#000":"#fff";t.style.setProperty("--ap-primary",h),t.style.setProperty("--ap-primary-foreground",u),t.style.setProperty("--ap-primary-10",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.1)`),t.style.setProperty("--ap-primary-20",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.2)`),t.style.setProperty("--ap-accent",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.07)`),t.style.setProperty("--ap-accent-foreground",h),t.style.setProperty("--ap-ring",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.7)`),t.style.setProperty("--ap-selection-bg",`oklch(${n.toFixed(3)} ${l.toFixed(3)} ${d.toFixed(1)} / 0.08)`)}const zt=[{value:"name",label:"Name"},{value:"created_at",label:"Uploaded"},{value:"modified_at",label:"Modified"},{value:"size",label:"Size"},{value:"type",label:"Format"}],Hi=[{value:"relevance",label:"Relevance"},...zt],Gi=[{value:"name",label:"Name"},{value:"created_at",label:"Uploaded"},{value:"modified_at",label:"Modified"},{value:"files_count_recursive",label:"Assets count"},{value:"files_size_recursive",label:"Assets size"}];var Ki=Object.defineProperty,Yi=Object.getOwnPropertyDescriptor,Rt=(t,e,s,i)=>{for(var a=i>1?void 0:i?Yi(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ki(e,s,a),a};let Ye=class extends o.LitElement{constructor(){super(...arguments),this.open=!1}updated(t){var e;super.updated(t),t.has("open")&&(this.open?this.dialog&&!this.dialog.open&&this.dialog.showModal():(e=this.dialog)!=null&&e.open&&this._animateClose())}_animateClose(){const t=this.dialog;if(t){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches){t.close();return}t.classList.add("closing"),t.addEventListener("animationend",()=>{t.classList.remove("closing"),t.close()},{once:!0})}}_handleBackdropClick(t){t.target===this.dialog&&this.dispatchEvent(new CustomEvent("ap-cancel",{detail:{reason:"backdrop"},bubbles:!0,composed:!0}))}_handleCancel(t){t.preventDefault(),this.dispatchEvent(new CustomEvent("ap-cancel",{detail:{reason:"escape"},bubbles:!0,composed:!0}))}render(){return o.html`
2
2
  <dialog
3
3
  @click=${this._handleBackdropClick}
4
4
  @cancel=${this._handleCancel}
@@ -15,7 +15,7 @@
15
15
  </div>
16
16
  </div>
17
17
  </dialog>
18
- `}};Ge.styles=o.css`
18
+ `}};Ye.styles=o.css`
19
19
  :host {
20
20
  display: contents;
21
21
  }
@@ -88,11 +88,11 @@
88
88
  animation: none;
89
89
  }
90
90
  }
91
- `;Dt([c.property({type:Boolean})],Ge.prototype,"open",2);Dt([c.query("dialog")],Ge.prototype,"dialog",2);Ge=Dt([c.customElement("ap-modal")],Ge);function qi(t,e){let s;const i=((...a)=>{clearTimeout(s),s=setTimeout(()=>t(...a),e)});return i.cancel=()=>clearTimeout(s),i}const J=o.css`
91
+ `;Rt([c.property({type:Boolean})],Ye.prototype,"open",2);Rt([c.query("dialog")],Ye.prototype,"dialog",2);Ye=Rt([c.customElement("ap-modal")],Ye);function Xi(t,e){let s;const i=((...a)=>{clearTimeout(s),s=setTimeout(()=>t(...a),e)});return i.cancel=()=>clearTimeout(s),i}const ee=o.css`
92
92
  *, *::before, *::after {
93
93
  box-sizing: border-box;
94
94
  }
95
- `;var Hi=Object.defineProperty,Ki=Object.getOwnPropertyDescriptor,mt=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ki(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Hi(e,s,a),a};let Oe=class extends o.LitElement{constructor(){super(...arguments),this.groups=[],this.selectedFilters={},this._open=!1,this._handleOutsideClick=t=>{this._open&&!t.composedPath().includes(this)&&(this._open=!1)}}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this._handleOutsideClick)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this._handleOutsideClick)}_selectVariant(t,e){this.dispatchEvent(new CustomEvent("regional-change",{detail:{groupUuid:t,value:e},bubbles:!0,composed:!0}))}render(){const t=this.groups.length>0;return o.html`
95
+ `;var Wi=Object.defineProperty,Qi=Object.getOwnPropertyDescriptor,bt=(t,e,s,i)=>{for(var a=i>1?void 0:i?Qi(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Wi(e,s,a),a};let Pe=class extends o.LitElement{constructor(){super(...arguments),this.groups=[],this.selectedFilters={},this._open=!1,this._handleOutsideClick=t=>{this._open&&!t.composedPath().includes(this)&&(this._open=!1)}}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this._handleOutsideClick)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this._handleOutsideClick)}_selectVariant(t,e){this.dispatchEvent(new CustomEvent("regional-change",{detail:{groupUuid:t,value:e},bubbles:!0,composed:!0}))}render(){const t=this.groups.length>0;return o.html`
96
96
  <button
97
97
  class="trigger ${this._open?"active":""}"
98
98
  @click=${()=>this._open=!this._open}
@@ -123,7 +123,7 @@
123
123
  </div>
124
124
  `)}
125
125
  </div>
126
- `}};Oe.styles=o.css`
126
+ `}};Pe.styles=o.css`
127
127
  :host {
128
128
  position: relative;
129
129
  display: inline-block;
@@ -208,7 +208,7 @@
208
208
  width: 16px;
209
209
  flex-shrink: 0;
210
210
  }
211
- `;mt([c.property({type:Array})],Oe.prototype,"groups",2);mt([c.property({type:Object})],Oe.prototype,"selectedFilters",2);mt([c.state()],Oe.prototype,"_open",2);Oe=mt([c.customElement("ap-regional-settings")],Oe);var Gi=Object.defineProperty,Yi=Object.getOwnPropertyDescriptor,ne=(t,e,s,i)=>{for(var a=i>1?void 0:i?Yi(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Gi(e,s,a),a};const Xi=[{value:"assets",label:"Assets",icon:"gallery-vertical-end"},{value:"folders",label:"Folders",icon:"folder-open"}];let W=class extends o.LitElement{constructor(){super(...arguments),this.activeTab="assets",this.tabs=["assets","folders"],this.viewMode="grid",this.searchQuery="",this.regionalGroups=[],this.regionalFilters={},this.hideClose=!1,this._localSearch="",this._debouncedSearch=qi(t=>{(t.length===0||t.length>=3)&&this.dispatchEvent(new CustomEvent("search-change",{detail:{value:t},bubbles:!0,composed:!0}))},300)}disconnectedCallback(){super.disconnectedCallback(),this._debouncedSearch.cancel()}willUpdate(t){t.has("searchQuery")&&(this._localSearch=this.searchQuery)}_handleInput(t){const e=t.target.value;this._localSearch=e,this._debouncedSearch(e)}_clearSearch(){this._localSearch="",this._debouncedSearch.cancel(),this.dispatchEvent(new CustomEvent("search-change",{detail:{value:""},bubbles:!0,composed:!0}))}_toggleView(){const t=this.viewMode==="grid"?"list":"grid";this.dispatchEvent(new CustomEvent("view-change",{detail:{mode:t},bubbles:!0,composed:!0}))}_handleTabChange(t){this.dispatchEvent(new CustomEvent("tab-change",{detail:{tab:t.detail.value},bubbles:!0,composed:!0}))}_handleRegionalChange(t){this.dispatchEvent(new CustomEvent("regional-change",{detail:t.detail,bubbles:!0,composed:!0}))}_handleClose(){this.dispatchEvent(new CustomEvent("ap-close",{bubbles:!0,composed:!0}))}render(){var e,s;const t=Xi.filter(i=>this.tabs.includes(i.value));return((e=t.find(i=>i.value===this.activeTab))==null?void 0:e.label)??((s=t[0])==null||s.label),o.html`
211
+ `;bt([c.property({type:Array})],Pe.prototype,"groups",2);bt([c.property({type:Object})],Pe.prototype,"selectedFilters",2);bt([c.state()],Pe.prototype,"_open",2);Pe=bt([c.customElement("ap-regional-settings")],Pe);var Zi=Object.defineProperty,Ji=Object.getOwnPropertyDescriptor,le=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ji(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Zi(e,s,a),a};const ea=[{value:"assets",label:"Assets",icon:"gallery-vertical-end"},{value:"folders",label:"Folders",icon:"folder-open"}];let Q=class extends o.LitElement{constructor(){super(...arguments),this.activeTab="assets",this.tabs=["assets","folders"],this.viewMode="grid",this.searchQuery="",this.regionalGroups=[],this.regionalFilters={},this.hideClose=!1,this._localSearch="",this._debouncedSearch=Xi(t=>{(t.length===0||t.length>=3)&&this.dispatchEvent(new CustomEvent("search-change",{detail:{value:t},bubbles:!0,composed:!0}))},300)}disconnectedCallback(){super.disconnectedCallback(),this._debouncedSearch.cancel()}willUpdate(t){t.has("searchQuery")&&(this._localSearch=this.searchQuery)}_handleInput(t){const e=t.target.value;this._localSearch=e,this._debouncedSearch(e)}_clearSearch(){this._localSearch="",this._debouncedSearch.cancel(),this.dispatchEvent(new CustomEvent("search-change",{detail:{value:""},bubbles:!0,composed:!0}))}_toggleView(){const t=this.viewMode==="grid"?"list":"grid";this.dispatchEvent(new CustomEvent("view-change",{detail:{mode:t},bubbles:!0,composed:!0}))}_handleTabChange(t){this.dispatchEvent(new CustomEvent("tab-change",{detail:{tab:t.detail.value},bubbles:!0,composed:!0}))}_handleRegionalChange(t){this.dispatchEvent(new CustomEvent("regional-change",{detail:t.detail,bubbles:!0,composed:!0}))}_handleClose(){this.dispatchEvent(new CustomEvent("ap-close",{bubbles:!0,composed:!0}))}render(){var e,s;const t=ea.filter(i=>this.tabs.includes(i.value));return((e=t.find(i=>i.value===this.activeTab))==null?void 0:e.label)??((s=t[0])==null||s.label),o.html`
212
212
  <div class="header-row">
213
213
  ${t.length>1?o.html`<ap-dropdown
214
214
  .value=${this.activeTab}
@@ -251,7 +251,7 @@
251
251
  `}
252
252
  </div>
253
253
  </div>
254
- `}};W.styles=[J,o.css`
254
+ `}};Q.styles=[ee,o.css`
255
255
  :host {
256
256
  display: block;
257
257
  padding: 16px 20px;
@@ -362,7 +362,7 @@
362
362
  height: 24px;
363
363
  background: var(--ap-border, oklch(92.86% 0.009 247.92));
364
364
  }
365
- `];ne([c.property()],W.prototype,"activeTab",2);ne([c.property({type:Array})],W.prototype,"tabs",2);ne([c.property()],W.prototype,"viewMode",2);ne([c.property()],W.prototype,"searchQuery",2);ne([c.property({type:Array})],W.prototype,"regionalGroups",2);ne([c.property({type:Object})],W.prototype,"regionalFilters",2);ne([c.property({type:Boolean})],W.prototype,"hideClose",2);ne([c.state()],W.prototype,"_localSearch",2);W=ne([c.customElement("ap-header")],W);var Wi=Object.defineProperty,Qi=Object.getOwnPropertyDescriptor,bs=(t,e,s,i)=>{for(var a=i>1?void 0:i?Qi(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Wi(e,s,a),a};let nt=class extends o.LitElement{constructor(){super(...arguments),this.items=[]}_navigate(t){this.dispatchEvent(new CustomEvent("breadcrumb-navigate",{detail:{uuid:t},bubbles:!0,composed:!0}))}render(){return this.items.length===0?o.html``:o.html`
365
+ `];le([c.property()],Q.prototype,"activeTab",2);le([c.property({type:Array})],Q.prototype,"tabs",2);le([c.property()],Q.prototype,"viewMode",2);le([c.property()],Q.prototype,"searchQuery",2);le([c.property({type:Array})],Q.prototype,"regionalGroups",2);le([c.property({type:Object})],Q.prototype,"regionalFilters",2);le([c.property({type:Boolean})],Q.prototype,"hideClose",2);le([c.state()],Q.prototype,"_localSearch",2);Q=le([c.customElement("ap-header")],Q);var ta=Object.defineProperty,sa=Object.getOwnPropertyDescriptor,_s=(t,e,s,i)=>{for(var a=i>1?void 0:i?sa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ta(e,s,a),a};let dt=class extends o.LitElement{constructor(){super(...arguments),this.items=[]}_navigate(t){this.dispatchEvent(new CustomEvent("breadcrumb-navigate",{detail:{uuid:t},bubbles:!0,composed:!0}))}render(){return this.items.length===0?o.html``:o.html`
366
366
  <nav class="breadcrumb" aria-label="Breadcrumb">
367
367
  <button @click=${()=>this._navigate("")}>Root</button>
368
368
  ${this.items.map((t,e)=>o.html`
@@ -370,7 +370,7 @@
370
370
  ${e<this.items.length-1?o.html`<button @click=${()=>this._navigate(t.uuid)}>${t.name}</button>`:o.html`<span class="current">${t.name}</span>`}
371
371
  `)}
372
372
  </nav>
373
- `}};nt.styles=o.css`
373
+ `}};dt.styles=o.css`
374
374
  :host {
375
375
  display: block;
376
376
  padding: 4px 20px 12px;
@@ -406,12 +406,12 @@
406
406
  ap-icon {
407
407
  color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82));
408
408
  }
409
- `;bs([c.property({type:Array})],nt.prototype,"items",2);nt=bs([c.customElement("ap-breadcrumb")],nt);var Zi=Object.defineProperty,Ji=Object.getOwnPropertyDescriptor,zt=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ji(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Zi(e,s,a),a};let Ye=class extends o.LitElement{constructor(){super(...arguments),this.title="",this.open=!1}render(){return this.open?o.html`
409
+ `;_s([c.property({type:Array})],dt.prototype,"items",2);dt=_s([c.customElement("ap-breadcrumb")],dt);var ia=Object.defineProperty,aa=Object.getOwnPropertyDescriptor,jt=(t,e,s,i)=>{for(var a=i>1?void 0:i?aa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ia(e,s,a),a};let Xe=class extends o.LitElement{constructor(){super(...arguments),this.title="",this.open=!1}render(){return this.open?o.html`
410
410
  <div class="popover">
411
411
  ${this.title?o.html`<div class="title">${this.title}</div>`:""}
412
412
  <slot></slot>
413
413
  </div>
414
- `:o.html``}};Ye.styles=o.css`
414
+ `:o.html``}};Xe.styles=o.css`
415
415
  :host {
416
416
  display: block;
417
417
  }
@@ -436,70 +436,217 @@
436
436
  color: var(--ap-foreground, oklch(0.37 0.022 248.413));
437
437
  margin-bottom: 12px;
438
438
  }
439
- `;zt([c.property()],Ye.prototype,"title",2);zt([c.property({type:Boolean})],Ye.prototype,"open",2);Ye=zt([c.customElement("ap-filter-popover")],Ye);var ea=Object.defineProperty,ta=Object.getOwnPropertyDescriptor,_s=(t,e,s,i)=>{for(var a=i>1?void 0:i?ta(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ea(e,s,a),a};let lt=class extends o.LitElement{constructor(){super(...arguments),this.selected=[]}_toggle(t){const e=this.selected.includes(t)?this.selected.filter(s=>s!==t):[...this.selected,t];this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.TYPE,values:e,operator:x.IS},bubbles:!0,composed:!0}))}render(){return o.html`
439
+ `;jt([c.property()],Xe.prototype,"title",2);jt([c.property({type:Boolean})],Xe.prototype,"open",2);Xe=jt([c.customElement("ap-filter-popover")],Xe);var ra=Object.defineProperty,oa=Object.getOwnPropertyDescriptor,Ze=(t,e,s,i)=>{for(var a=i>1?void 0:i?oa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ra(e,s,a),a};function as(t){var i;const e=new Map;for(const a of t){const r=a.category||a.value.split("_")[0];if(!e.has(r)){const l=ct.find(d=>d.value===r);e.set(r,{key:r,label:(l==null?void 0:l.label)||r.charAt(0).toUpperCase()+r.slice(1),icon:(l==null?void 0:l.icon)||"file",extensions:[],totalCount:0})}const n=e.get(r);n.extensions.push({value:a.value,label:a.label||((i=a.value.split("_").pop())==null?void 0:i.toUpperCase())||a.value,count:a.count}),n.totalCount+=a.count}const s=ct.map(a=>a.value);return[...e.values()].sort((a,r)=>{const n=s.indexOf(a.key),l=s.indexOf(r.key);return(n===-1?999:n)-(l===-1?999:l)})}let we=class extends o.LitElement{constructor(){super(...arguments),this.selected=[],this.fileTypes=[],this._search="",this._expanded=new Set}_extValues(t){return t.extensions.map(e=>e.value)}_isGroupFullySelected(t){if(this.selected.includes(t.key))return!0;const e=this._extValues(t);return e.length>0&&e.every(s=>this.selected.includes(s))}_isGroupPartial(t){if(this.selected.includes(t.key))return!1;const e=this._extValues(t),s=e.filter(i=>this.selected.includes(i)).length;return s>0&&s<e.length}_isExtSelected(t,e){return this.selected.includes(e)||this.selected.includes(t)}_toggleGroup(t){const e=this._extValues(t),s=this._isGroupFullySelected(t);let i;if(s){const a=new Set([t.key,...e]);i=this.selected.filter(r=>!a.has(r))}else{const a=new Set(e);i=this.selected.filter(r=>!a.has(r)),i.push(t.key)}this._emit(i)}_toggleExt(t,e){const s=this._extValues(e);let i=[...this.selected];i.includes(e.key)&&(i=i.filter(a=>a!==e.key),i.push(...s)),i.includes(t)?i=i.filter(a=>a!==t):(i.push(t),s.every(a=>i.includes(a))&&(i=i.filter(a=>!s.includes(a)),i.push(e.key))),this._emit(i)}_clearAll(){this._emit([])}_emit(t){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.TYPE,values:t,operator:x.IS},bubbles:!0,composed:!0}))}_toggleExpand(t){const e=new Set(this._expanded);e.has(t)?e.delete(t):e.add(t),this._expanded=e}_filteredGroups(t){const e=this._search.toLowerCase().trim();return e?t.map(s=>{if(s.label.toLowerCase().includes(e)||s.key.toLowerCase().includes(e))return s;const a=s.extensions.filter(r=>r.label.toLowerCase().includes(e)||r.value.toLowerCase().includes(e));return a.length===0?null:{...s,extensions:a}}).filter(s=>s!==null):t}_toggleCategory(t){const e=this.selected.includes(t)?this.selected.filter(s=>s!==t):[...this.selected,t];this._emit(e)}updated(t){if(t.has("fileTypes")&&this.fileTypes.length>0){const e=as(this.fileTypes),s=new Set(this._expanded);for(const i of e)(this._isGroupFullySelected(i)||this._isGroupPartial(i))&&s.add(i.key);this._expanded=s}}render(){if(this.fileTypes.length===0)return this._renderFallback();const t=as(this.fileTypes),e=this._filteredGroups(t),s=this.selected.length>0;return o.html`
440
+ <input
441
+ class="search-input"
442
+ type="text"
443
+ placeholder="Search formats..."
444
+ .value=${this._search}
445
+ @input=${i=>{this._search=i.target.value}}
446
+ />
447
+ <div class="header-row">
448
+ <span class="section-label">Formats</span>
449
+ ${s?o.html`<button class="clear-btn" @click=${this._clearAll}>Clear all</button>`:o.nothing}
450
+ </div>
451
+ <div class="groups">
452
+ ${e.map(i=>this._renderGroup(i))}
453
+ </div>
454
+ `}_renderGroup(t){const e=this._expanded.has(t.key)||this._search.trim().length>0,s=this._isGroupFullySelected(t),i=this._isGroupPartial(t);return o.html`
455
+ <div
456
+ class="group-header ${s||i?"selected":""}"
457
+ @click=${()=>this._toggleExpand(t.key)}
458
+ >
459
+ <svg class="group-chevron ${e?"expanded":""}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
460
+ <path d="m9 18 6-6-6-6"/>
461
+ </svg>
462
+ <ap-icon name=${t.icon} size="16"></ap-icon>
463
+ <span class="group-label">${t.label}</span>
464
+ <ap-checkbox
465
+ ?checked=${s}
466
+ ?indeterminate=${i}
467
+ @click=${a=>a.stopPropagation()}
468
+ @ap-toggle=${()=>this._toggleGroup(t)}
469
+ ></ap-checkbox>
470
+ </div>
471
+ ${e?o.html`
472
+ <div class="extensions">
473
+ ${t.extensions.map(a=>o.html`
474
+ <div
475
+ class="ext-row"
476
+ @click=${()=>this._toggleExt(a.value,t)}
477
+ >
478
+ <ap-checkbox
479
+ ?checked=${this._isExtSelected(a.value,t.key)}
480
+ @click=${r=>r.stopPropagation()}
481
+ @ap-toggle=${()=>this._toggleExt(a.value,t)}
482
+ ></ap-checkbox>
483
+ <span class="ext-label">${a.label}</span>
484
+ </div>
485
+ `)}
486
+ </div>
487
+ `:o.nothing}
488
+ `}_renderFallback(){return o.html`
440
489
  <div class="options">
441
490
  <span class="section-label">Formats</span>
442
- ${ls.map(t=>o.html`
491
+ ${ct.map(t=>o.html`
443
492
  <div
444
493
  class="option ${this.selected.includes(t.value)?"selected":""}"
445
- @click=${()=>this._toggle(t.value)}
494
+ @click=${()=>this._toggleCategory(t.value)}
446
495
  >
447
- <ap-checkbox
448
- ?checked=${this.selected.includes(t.value)}
449
- ></ap-checkbox>
496
+ <ap-checkbox ?checked=${this.selected.includes(t.value)}></ap-checkbox>
450
497
  <ap-icon name=${t.icon} size="16"></ap-icon>
451
498
  <span class="option-label">${t.label}</span>
452
499
  </div>
453
500
  `)}
454
501
  </div>
455
- `}};lt.styles=o.css`
502
+ `}};we.styles=o.css`
456
503
  :host {
457
504
  display: block;
458
505
  }
459
506
 
507
+ .header-row {
508
+ display: flex;
509
+ align-items: center;
510
+ justify-content: space-between;
511
+ margin-bottom: 8px;
512
+ }
513
+
460
514
  .section-label {
461
- display: block;
462
515
  font-size: var(--ap-font-size-sm, 0.875rem);
463
516
  font-weight: 400;
464
517
  color: var(--ap-secondary-foreground, oklch(53.03% 0.039 249.89));
465
- margin-bottom: 8px;
466
518
  cursor: default;
467
519
  }
468
520
 
469
- .options {
521
+ .clear-btn {
522
+ background: none;
523
+ border: none;
524
+ font-size: 0.75rem;
525
+ color: var(--ap-primary, oklch(0.578 0.198 268.129));
526
+ cursor: pointer;
527
+ padding: 2px 4px;
528
+ border-radius: var(--ap-radius-sm, 6px);
529
+ }
530
+ .clear-btn:hover {
531
+ text-decoration: underline;
532
+ }
533
+
534
+ .search-input {
535
+ width: 100%;
536
+ box-sizing: border-box;
537
+ padding: 6px 10px;
538
+ margin-bottom: 8px;
539
+ border: 1px solid var(--ap-input, oklch(0.871 0.016 241.798));
540
+ border-radius: var(--ap-radius-sm, 6px);
541
+ font-size: var(--ap-font-size-sm, 0.875rem);
542
+ color: var(--ap-foreground, oklch(0.37 0.022 248.413));
543
+ background: var(--ap-background, oklch(1 0 0));
544
+ outline: none;
545
+ }
546
+ .search-input:focus {
547
+ border-color: var(--ap-primary, oklch(0.578 0.198 268.129));
548
+ }
549
+ .search-input::placeholder {
550
+ color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82));
551
+ }
552
+
553
+ .groups {
470
554
  display: flex;
471
555
  flex-direction: column;
472
- gap: 4px;
556
+ gap: 2px;
473
557
  }
474
558
 
475
- .option {
559
+ .group-header {
476
560
  display: flex;
477
561
  align-items: center;
478
- gap: 12px;
562
+ gap: 8px;
479
563
  padding: 6px 8px;
480
564
  border-radius: var(--ap-radius-sm, 6px);
481
565
  cursor: pointer;
482
566
  transition: background 150ms;
567
+ user-select: none;
483
568
  }
484
-
485
- .option:hover {
569
+ .group-header:hover {
486
570
  background: var(--ap-muted, oklch(0.974 0.006 239.819));
487
571
  }
488
572
 
489
- .option-label {
490
- font-size: var(--ap-font-size-sm, 0.875rem);
491
- color: var(--ap-foreground, oklch(0.37 0.022 248.413));
573
+ .group-chevron {
574
+ flex-shrink: 0;
575
+ width: 14px;
576
+ height: 14px;
577
+ color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82));
578
+ transition: transform 150ms;
579
+ }
580
+ .group-chevron.expanded {
581
+ transform: rotate(90deg);
492
582
  }
493
583
 
494
584
  ap-icon {
495
585
  color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82));
496
586
  flex-shrink: 0;
497
587
  }
588
+ .group-header.selected ap-icon {
589
+ color: var(--ap-primary, oklch(0.578 0.198 268.129));
590
+ }
591
+
592
+ .group-label {
593
+ flex: 1;
594
+ font-size: var(--ap-font-size-sm, 0.875rem);
595
+ color: var(--ap-foreground, oklch(0.37 0.022 248.413));
596
+ }
597
+
598
+ .extensions {
599
+ display: flex;
600
+ flex-direction: column;
601
+ gap: 1px;
602
+ padding-left: 22px;
603
+ }
604
+
605
+ .ext-row {
606
+ display: flex;
607
+ align-items: center;
608
+ gap: 10px;
609
+ padding: 4px 8px;
610
+ border-radius: var(--ap-radius-sm, 6px);
611
+ cursor: pointer;
612
+ transition: background 150ms;
613
+ }
614
+ .ext-row:hover {
615
+ background: var(--ap-muted, oklch(0.974 0.006 239.819));
616
+ }
617
+
618
+ .ext-label {
619
+ flex: 1;
620
+ font-size: var(--ap-font-size-sm, 0.875rem);
621
+ color: var(--ap-foreground, oklch(0.37 0.022 248.413));
622
+ }
498
623
 
624
+ /* Fallback flat list (no API data) */
625
+ .options {
626
+ display: flex;
627
+ flex-direction: column;
628
+ gap: 4px;
629
+ }
630
+ .option {
631
+ display: flex;
632
+ align-items: center;
633
+ gap: 12px;
634
+ padding: 6px 8px;
635
+ border-radius: var(--ap-radius-sm, 6px);
636
+ cursor: pointer;
637
+ transition: background 150ms;
638
+ }
639
+ .option:hover {
640
+ background: var(--ap-muted, oklch(0.974 0.006 239.819));
641
+ }
642
+ .option-label {
643
+ font-size: var(--ap-font-size-sm, 0.875rem);
644
+ color: var(--ap-foreground, oklch(0.37 0.022 248.413));
645
+ }
499
646
  .option.selected ap-icon {
500
647
  color: var(--ap-primary, oklch(0.578 0.198 268.129));
501
648
  }
502
- `;_s([c.property({type:Array})],lt.prototype,"selected",2);lt=_s([c.customElement("ap-filter-type")],lt);const le=o.css`
649
+ `;Ze([c.property({type:Array})],we.prototype,"selected",2);Ze([c.property({type:Array})],we.prototype,"fileTypes",2);Ze([c.state()],we.prototype,"_search",2);Ze([c.state()],we.prototype,"_expanded",2);we=Ze([c.customElement("ap-filter-type")],we);const ce=o.css`
503
650
  :host {
504
651
  display: block;
505
652
  }
@@ -782,11 +929,11 @@
782
929
  font-size: var(--ap-font-size-sm, 0.875rem);
783
930
  color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82));
784
931
  }
785
- `;var sa=Object.defineProperty,ia=Object.getOwnPropertyDescriptor,Ce=(t,e,s,i)=>{for(var a=i>1?void 0:i?ia(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&sa(e,s,a),a};function Tt(t){return t.toISOString().split("T")[0]}let ae=class extends o.LitElement{constructor(){super(...arguments),this.filterKey=v.DATE,this.field="created",this.kind=null,this.preset="",this.from="",this.to=""}get _isLicenseExpiry(){return this.filterKey===v.LICENSE_EXPIRY}get _rangeOptions(){return this._isLicenseExpiry?ds:Pt}get _todayStr(){return Tt(new Date)}get _hasFilter(){return!!(this.kind||this.preset||this.from||this.to)}_kindFromValue(t){return["before","after","between","specific"].includes(t)?t:"preset"}_selectField(t){this.field=t,this._dispatchChange()}_selectPreset(t){const e=this._kindFromValue(t);if(this.kind=e,this.preset=t,["before","after","between","specific"].includes(t)){this.from="",this.to="",this.requestUpdate();return}const s=ps(t);s&&(this.from=s.from,this.to=s.to??""),this._dispatchChange()}_clearAll(){this.field="created",this.kind=null,this.preset="",this.from="",this.to="",this._dispatchChange()}_dispatchChange(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:this.filterKey,values:{field:this.field,kind:this.kind,preset:this.preset,from:this.from,to:this.to}},bubbles:!0,composed:!0}))}_handleDateInput(t,e){const s=e.target.value,i=s?new Date(s+"T00:00:00").toISOString():"";if(t==="from"?this.from=i:this.to=i,this.preset==="specific"&&t==="from"&&i){const a=new Date(s+"T23:59:59");this.to=a.toISOString()}this.preset==="after"&&t==="from"&&i&&(this.to=new Date().toISOString()),this.preset==="before"&&t==="to"&&i&&(this.from=new Date(0).toISOString()),this._dispatchChange()}_renderDateTypeSection(){return this._isLicenseExpiry?o.nothing:o.html`
932
+ `;var na=Object.defineProperty,la=Object.getOwnPropertyDescriptor,Ee=(t,e,s,i)=>{for(var a=i>1?void 0:i?la(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&na(e,s,a),a};function Lt(t){return t.toISOString().split("T")[0]}let re=class extends o.LitElement{constructor(){super(...arguments),this.filterKey=v.DATE,this.field="created",this.kind=null,this.preset="",this.from="",this.to=""}get _isLicenseExpiry(){return this.filterKey===v.LICENSE_EXPIRY}get _rangeOptions(){return this._isLicenseExpiry?ps:Dt}get _todayStr(){return Lt(new Date)}get _hasFilter(){return!!(this.kind||this.preset||this.from||this.to)}_kindFromValue(t){return["before","after","between","specific"].includes(t)?t:"preset"}_selectField(t){this.field=t,this._dispatchChange()}_selectPreset(t){const e=this._kindFromValue(t);if(this.kind=e,this.preset=t,["before","after","between","specific"].includes(t)){this.from="",this.to="",this.requestUpdate();return}const s=hs(t);s&&(this.from=s.from,this.to=s.to??""),this._dispatchChange()}_clearAll(){this.field="created",this.kind=null,this.preset="",this.from="",this.to="",this._dispatchChange()}_dispatchChange(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:this.filterKey,values:{field:this.field,kind:this.kind,preset:this.preset,from:this.from,to:this.to}},bubbles:!0,composed:!0}))}_handleDateInput(t,e){const s=e.target.value,i=s?new Date(s+"T00:00:00").toISOString():"";if(t==="from"?this.from=i:this.to=i,this.preset==="specific"&&t==="from"&&i){const a=new Date(s+"T23:59:59");this.to=a.toISOString()}this.preset==="after"&&t==="from"&&i&&(this.to=new Date().toISOString()),this.preset==="before"&&t==="to"&&i&&(this.from=new Date(0).toISOString()),this._dispatchChange()}_renderDateTypeSection(){return this._isLicenseExpiry?o.nothing:o.html`
786
933
  <div class="filter-section">
787
934
  <span class="section-label">Date type</span>
788
935
  <ap-radio-group
789
- .options=${cs}
936
+ .options=${ds}
790
937
  .value=${this.field}
791
938
  @ap-change=${t=>this._selectField(t.detail.value)}
792
939
  ></ap-radio-group>
@@ -801,7 +948,7 @@
801
948
  @ap-change=${t=>this._selectPreset(t.detail.value)}
802
949
  ></ap-radio-group>
803
950
  </div>
804
- `}_renderDateInputs(){const t=this.preset;if(!["before","after","between","specific"].includes(t))return o.nothing;const e=this.from?Tt(new Date(this.from)):"",s=this.to?Tt(new Date(this.to)):"",i=this._todayStr;return t==="specific"?o.html`
951
+ `}_renderDateInputs(){const t=this.preset;if(!["before","after","between","specific"].includes(t))return o.nothing;const e=this.from?Lt(new Date(this.from)):"",s=this.to?Lt(new Date(this.to)):"",i=this._todayStr;return t==="specific"?o.html`
805
952
  <div class="filter-section date-inputs">
806
953
  <div>
807
954
  <span class="input-label">Date</span>
@@ -877,14 +1024,14 @@
877
1024
  ${this._renderRangeSection()}
878
1025
  ${this._renderDateInputs()}
879
1026
  </div>
880
- `}};ae.styles=[le,o.css`
1027
+ `}};re.styles=[ce,o.css`
881
1028
  .date-inputs {
882
1029
  margin-top: 4px;
883
1030
  }
884
- `];Ce([c.property()],ae.prototype,"filterKey",2);Ce([c.property()],ae.prototype,"field",2);Ce([c.property()],ae.prototype,"kind",2);Ce([c.property()],ae.prototype,"preset",2);Ce([c.property()],ae.prototype,"from",2);Ce([c.property()],ae.prototype,"to",2);ae=Ce([c.customElement("ap-filter-date")],ae);var aa=Object.defineProperty,ra=Object.getOwnPropertyDescriptor,Ne=(t,e,s,i)=>{for(var a=i>1?void 0:i?ra(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&aa(e,s,a),a};let de=class extends o.LitElement{constructor(){super(...arguments),this.tags=[],this.selected=[],this.filterKey=v.TAGS,this._search=""}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var t;return(t=this._searchInput)==null?void 0:t.focus()})}get _suggestedTags(){return this.tags.filter(t=>t.primary)}get _otherTags(){return this.tags.filter(t=>!t.primary)}get _atLimit(){return this.selected.length>=wt}get _isSearching(){return this._search.trim().length>0}_toggle(t){const e=this.selected.includes(t);if(!e&&this._atLimit)return;const s=e?this.selected.filter(i=>i!==t):[...this.selected,t];this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:this.filterKey,values:s,operator:x.IS},bubbles:!0,composed:!0}))}_remove(t){const e=this.selected.filter(s=>s!==t);this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:this.filterKey,values:e,operator:x.IS},bubbles:!0,composed:!0}))}_clearAll(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:this.filterKey,values:[],operator:x.IS},bubbles:!0,composed:!0}))}_onSearchInput(t){this._search=t.target.value}_clearSearch(){this._search=""}_getTagBySid(t){return this.tags.find(e=>e.sid===t)}_renderTagItem(t){const e=this.selected.includes(t.sid),s=!e&&this._atLimit;return o.html`
1031
+ `];Ee([c.property()],re.prototype,"filterKey",2);Ee([c.property()],re.prototype,"field",2);Ee([c.property()],re.prototype,"kind",2);Ee([c.property()],re.prototype,"preset",2);Ee([c.property()],re.prototype,"from",2);Ee([c.property()],re.prototype,"to",2);re=Ee([c.customElement("ap-filter-date")],re);var ca=Object.defineProperty,da=Object.getOwnPropertyDescriptor,Ne=(t,e,s,i)=>{for(var a=i>1?void 0:i?da(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ca(e,s,a),a};let de=class extends o.LitElement{constructor(){super(...arguments),this.tags=[],this.selected=[],this.filterKey=v.TAGS,this._search=""}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var t;return(t=this._searchInput)==null?void 0:t.focus()})}get _suggestedTags(){return this.tags.filter(t=>t.primary)}get _otherTags(){return this.tags.filter(t=>!t.primary)}get _atLimit(){return this.selected.length>=kt}get _isSearching(){return this._search.trim().length>0}_toggle(t){const e=this.selected.includes(t);if(!e&&this._atLimit)return;const s=e?this.selected.filter(i=>i!==t):[...this.selected,t];this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:this.filterKey,values:s,operator:x.IS},bubbles:!0,composed:!0}))}_remove(t){const e=this.selected.filter(s=>s!==t);this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:this.filterKey,values:e,operator:x.IS},bubbles:!0,composed:!0}))}_clearAll(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:this.filterKey,values:[],operator:x.IS},bubbles:!0,composed:!0}))}_onSearchInput(t){this._search=t.target.value}_clearSearch(){this._search=""}_getTagBySid(t){return this.tags.find(e=>e.sid===t)}_renderTagItem(t){const e=this.selected.includes(t.sid),s=!e&&this._atLimit;return o.html`
885
1032
  <div
886
1033
  class="tag-item ${s?"disabled":""}"
887
- title=${s?`You can select up to ${wt} tags`:o.nothing}
1034
+ title=${s?`You can select up to ${kt} tags`:o.nothing}
888
1035
  @click=${()=>!s&&this._toggle(t.sid)}
889
1036
  >
890
1037
  <ap-checkbox ?checked=${e}></ap-checkbox>
@@ -930,7 +1077,7 @@
930
1077
  ${this._atLimit?o.html`
931
1078
  <div class="info-alert">
932
1079
  <ap-icon name="info" .size=${14}></ap-icon>
933
- <span>You can select up to ${wt} tags.</span>
1080
+ <span>You can select up to ${kt} tags.</span>
934
1081
  </div>
935
1082
  `:o.nothing}
936
1083
  </div>
@@ -986,7 +1133,7 @@
986
1133
  ${t.length>0?o.html`<div class="separator"></div>`:o.nothing}
987
1134
 
988
1135
  <div class="hint-message">Find more tags by using search</div>
989
- `}};de.styles=[J,le,o.css`
1136
+ `}};de.styles=[ee,ce,o.css`
990
1137
  .tag-item {
991
1138
  display: flex;
992
1139
  align-items: center;
@@ -1070,10 +1217,10 @@
1070
1217
  max-height: none;
1071
1218
  overflow-y: visible;
1072
1219
  }
1073
- `];Ne([c.property({type:Array})],de.prototype,"tags",2);Ne([c.property({type:Array})],de.prototype,"selected",2);Ne([c.property()],de.prototype,"filterKey",2);Ne([c.query(".tag-search")],de.prototype,"_searchInput",2);Ne([c.state()],de.prototype,"_search",2);de=Ne([c.customElement("ap-filter-tags")],de);var oa=Object.defineProperty,na=Object.getOwnPropertyDescriptor,Qe=(t,e,s,i)=>{for(var a=i>1?void 0:i?na(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&oa(e,s,a),a};let we=class extends o.LitElement{constructor(){super(...arguments),this.labels=[],this.selected=[],this._search=""}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var t;return(t=this._searchInput)==null?void 0:t.focus()})}get _atLimit(){return this.selected.length>=$t}get _isSearching(){return this._search.trim().length>0}_toggle(t){const e=this.selected.includes(t);if(!e&&this._atLimit)return;const s=e?this.selected.filter(i=>i!==t):[...this.selected,t];this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.LABELS,values:s,operator:x.IS},bubbles:!0,composed:!0}))}_remove(t){const e=this.selected.filter(s=>s!==t);this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.LABELS,values:e,operator:x.IS},bubbles:!0,composed:!0}))}_clearAll(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.LABELS,values:[],operator:x.IS},bubbles:!0,composed:!0}))}_onSearchInput(t){this._search=t.target.value}_clearSearch(){this._search=""}_getLabelBySid(t){return this.labels.find(e=>e.sid===t)}_renderLabelItem(t){const e=this.selected.includes(t.sid),s=!e&&this._atLimit;return o.html`
1220
+ `];Ne([c.property({type:Array})],de.prototype,"tags",2);Ne([c.property({type:Array})],de.prototype,"selected",2);Ne([c.property()],de.prototype,"filterKey",2);Ne([c.query(".tag-search")],de.prototype,"_searchInput",2);Ne([c.state()],de.prototype,"_search",2);de=Ne([c.customElement("ap-filter-tags")],de);var pa=Object.defineProperty,ha=Object.getOwnPropertyDescriptor,Je=(t,e,s,i)=>{for(var a=i>1?void 0:i?ha(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&pa(e,s,a),a};let $e=class extends o.LitElement{constructor(){super(...arguments),this.labels=[],this.selected=[],this._search=""}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var t;return(t=this._searchInput)==null?void 0:t.focus()})}get _atLimit(){return this.selected.length>=St}get _isSearching(){return this._search.trim().length>0}_toggle(t){const e=this.selected.includes(t);if(!e&&this._atLimit)return;const s=e?this.selected.filter(i=>i!==t):[...this.selected,t];this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.LABELS,values:s,operator:x.IS},bubbles:!0,composed:!0}))}_remove(t){const e=this.selected.filter(s=>s!==t);this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.LABELS,values:e,operator:x.IS},bubbles:!0,composed:!0}))}_clearAll(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.LABELS,values:[],operator:x.IS},bubbles:!0,composed:!0}))}_onSearchInput(t){this._search=t.target.value}_clearSearch(){this._search=""}_getLabelBySid(t){return this.labels.find(e=>e.sid===t)}_renderLabelItem(t){const e=this.selected.includes(t.sid),s=!e&&this._atLimit;return o.html`
1074
1221
  <div
1075
1222
  class="label-item ${s?"disabled":""}"
1076
- title=${s?`You can select up to ${$t} labels`:o.nothing}
1223
+ title=${s?`You can select up to ${St} labels`:o.nothing}
1077
1224
  @click=${()=>!s&&this._toggle(t.sid)}
1078
1225
  >
1079
1226
  <ap-checkbox ?checked=${e}></ap-checkbox>
@@ -1140,11 +1287,11 @@
1140
1287
  ${this._atLimit?o.html`
1141
1288
  <div class="info-alert">
1142
1289
  <ap-icon name="info" .size=${14}></ap-icon>
1143
- <span>You can select up to ${$t} labels.</span>
1290
+ <span>You can select up to ${St} labels.</span>
1144
1291
  </div>
1145
1292
  `:o.nothing}
1146
1293
  </div>
1147
- `}};we.styles=[le,o.css`
1294
+ `}};$e.styles=[ce,o.css`
1148
1295
  .label-item {
1149
1296
  display: flex;
1150
1297
  align-items: center;
@@ -1193,9 +1340,9 @@
1193
1340
  flex-shrink: 0;
1194
1341
  line-height: 0;
1195
1342
  }
1196
- `];Qe([c.property({type:Array})],we.prototype,"labels",2);Qe([c.property({type:Array})],we.prototype,"selected",2);Qe([c.query(".search-input")],we.prototype,"_searchInput",2);Qe([c.state()],we.prototype,"_search",2);we=Qe([c.customElement("ap-filter-labels")],we);var la=Object.defineProperty,ca=Object.getOwnPropertyDescriptor,je=(t,e,s,i)=>{for(var a=i>1?void 0:i?ca(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&la(e,s,a),a};const Mt=3,Ot=/^#[0-9A-Fa-f]{6}$/;function da(t){const e=t.trim().split(/\s+/);return e.length<1||!Ot.test(e[0])?null:{hex:e[0],tolerance:e[1]||rt,coverage:e[3]||at}}let pe=class extends o.LitElement{constructor(){super(...arguments),this.values=[],this._colors=[],this._advanced=!1,this._showPalette=!1,this._initialized=!1}get _hasSelection(){return this._colors.length>0}get _selectedHexes(){return new Set(this._colors.map(t=>t.hex))}willUpdate(t){if(t.has("values")){const e=[];for(const s of this.values){const i=da(s);i&&e.push(i)}(!this._initialized||this.values.length===0&&this._colors.length>0)&&(this._colors=e,e.length>0&&(this._advanced=e.some(s=>s.tolerance!==rt||s.coverage!==at)),this._initialized=!0)}}_selectColor(t){if(!Ot.test(t))return;const e=this._colors.findIndex(s=>s.hex.toLowerCase()===t.toLowerCase());if(e>=0){this._removeColor(e);return}this._colors.length>=Mt||(this._colors=[...this._colors,{hex:t,tolerance:rt,coverage:at}],this._showPalette=!1,this._dispatchChange())}_removeColor(t){this._colors=this._colors.filter((e,s)=>s!==t),this._dispatchChange()}_clearAll(){this._colors=[],this._showPalette=!1,this._dispatchChange()}_toggleAdvanced(){this._advanced=!this._advanced,this._colors.length>0&&this._dispatchChange()}_handleHexInput(t,e){let i=e.target.value.trim();if(i.startsWith("#")||(i="#"+i),!Ot.test(i)||this._colors.some((n,l)=>l!==t&&n.hex.toLowerCase()===i.toLowerCase()))return;const r=[...this._colors];r[t]={...r[t],hex:i},this._colors=r,this._dispatchChange()}_handleToleranceChange(t,e){const s=[...this._colors];s[t]={...s[t],tolerance:e.detail.value},this._colors=s,this._dispatchChange()}_handleCoverageInput(t,e){const s=e.target.value,i=parseInt(s,10);if(!isNaN(i)&&i>=1&&i<=100){const a=[...this._colors];a[t]={...a[t],coverage:String(i)},this._colors=a,this._dispatchChange()}}_showAddPalette(){this._showPalette=!0}_dispatchChange(){if(this._colors.length===0){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:"color",values:"",operator:":"},bubbles:!0,composed:!0}));return}const t=this._colors.map(e=>{const s=this._advanced?e.tolerance:rt,i=this._advanced?e.coverage:at;return`${e.hex} ${s} ${s} ${i}`});this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:"color",values:t,operator:":"},bubbles:!0,composed:!0}))}_renderPalette(){const t=this._selectedHexes,e=this._colors.length>=Mt;return o.html`
1343
+ `];Je([c.property({type:Array})],$e.prototype,"labels",2);Je([c.property({type:Array})],$e.prototype,"selected",2);Je([c.query(".search-input")],$e.prototype,"_searchInput",2);Je([c.state()],$e.prototype,"_search",2);$e=Je([c.customElement("ap-filter-labels")],$e);var ua=Object.defineProperty,ga=Object.getOwnPropertyDescriptor,Be=(t,e,s,i)=>{for(var a=i>1?void 0:i?ga(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ua(e,s,a),a};const Ot=3,It=/^#[0-9A-Fa-f]{6}$/;function fa(t){const e=t.trim().split(/\s+/);return e.length<1||!It.test(e[0])?null:{hex:e[0],tolerance:e[1]||nt,coverage:e[3]||ot}}let pe=class extends o.LitElement{constructor(){super(...arguments),this.values=[],this._colors=[],this._advanced=!1,this._showPalette=!1,this._initialized=!1}get _hasSelection(){return this._colors.length>0}get _selectedHexes(){return new Set(this._colors.map(t=>t.hex))}willUpdate(t){if(t.has("values")){const e=[];for(const s of this.values){const i=fa(s);i&&e.push(i)}(!this._initialized||this.values.length===0&&this._colors.length>0)&&(this._colors=e,e.length>0&&(this._advanced=e.some(s=>s.tolerance!==nt||s.coverage!==ot)),this._initialized=!0)}}_selectColor(t){if(!It.test(t))return;const e=this._colors.findIndex(s=>s.hex.toLowerCase()===t.toLowerCase());if(e>=0){this._removeColor(e);return}this._colors.length>=Ot||(this._colors=[...this._colors,{hex:t,tolerance:nt,coverage:ot}],this._showPalette=!1,this._dispatchChange())}_removeColor(t){this._colors=this._colors.filter((e,s)=>s!==t),this._dispatchChange()}_clearAll(){this._colors=[],this._showPalette=!1,this._dispatchChange()}_toggleAdvanced(){this._advanced=!this._advanced,this._colors.length>0&&this._dispatchChange()}_handleHexInput(t,e){let i=e.target.value.trim();if(i.startsWith("#")||(i="#"+i),!It.test(i)||this._colors.some((n,l)=>l!==t&&n.hex.toLowerCase()===i.toLowerCase()))return;const r=[...this._colors];r[t]={...r[t],hex:i},this._colors=r,this._dispatchChange()}_handleToleranceChange(t,e){const s=[...this._colors];s[t]={...s[t],tolerance:e.detail.value},this._colors=s,this._dispatchChange()}_handleCoverageInput(t,e){const s=e.target.value,i=parseInt(s,10);if(!isNaN(i)&&i>=1&&i<=100){const a=[...this._colors];a[t]={...a[t],coverage:String(i)},this._colors=a,this._dispatchChange()}}_showAddPalette(){this._showPalette=!0}_dispatchChange(){if(this._colors.length===0){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:"color",values:"",operator:":"},bubbles:!0,composed:!0}));return}const t=this._colors.map(e=>{const s=this._advanced?e.tolerance:nt,i=this._advanced?e.coverage:ot;return`${e.hex} ${s} ${s} ${i}`});this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:"color",values:t,operator:":"},bubbles:!0,composed:!0}))}_renderPalette(){const t=this._selectedHexes,e=this._colors.length>=Ot;return o.html`
1197
1344
  <div class="palette">
1198
- ${oi.map(s=>{const i=t.has(s),a=e&&!i;return o.html`
1345
+ ${ni.map(s=>{const i=t.has(s),a=e&&!i;return o.html`
1199
1346
  <button
1200
1347
  class="swatch ${i?"selected":""} ${a?"disabled":""}"
1201
1348
  style="background:${s};${s==="#ffffff"?" border: 1px solid #e4e4e7;":""}"
@@ -1224,7 +1371,7 @@
1224
1371
  <span class="adv-field-label">Difference</span>
1225
1372
  <ap-dropdown
1226
1373
  .value=${t.tolerance}
1227
- .options=${ni}
1374
+ .options=${li}
1228
1375
  @ap-change=${s=>this._handleToleranceChange(e,s)}
1229
1376
  ></ap-dropdown>
1230
1377
  </div>
@@ -1260,7 +1407,7 @@
1260
1407
  <ap-icon name="close" .size=${14}></ap-icon>
1261
1408
  </button>
1262
1409
  </div>
1263
- `}render(){const t=this._colors.length===0||this._showPalette,e=this._colors.length<Mt&&!this._showPalette;return o.html`
1410
+ `}render(){const t=this._colors.length===0||this._showPalette,e=this._colors.length<Ot&&!this._showPalette;return o.html`
1264
1411
  <div class="filter-content">
1265
1412
  <button
1266
1413
  class="clear-btn"
@@ -1305,7 +1452,7 @@
1305
1452
  <span>Requires image processing to be enabled.</span>
1306
1453
  </div>
1307
1454
  </div>
1308
- `}};pe.styles=[J,le,o.css`
1455
+ `}};pe.styles=[ee,ce,o.css`
1309
1456
  /* ── Palette ── */
1310
1457
  .palette {
1311
1458
  display: grid;
@@ -1542,7 +1689,7 @@
1542
1689
  .add-color-btn:hover {
1543
1690
  opacity: 0.8;
1544
1691
  }
1545
- `];je([c.property({type:Array})],pe.prototype,"values",2);je([c.state()],pe.prototype,"_colors",2);je([c.state()],pe.prototype,"_advanced",2);je([c.state()],pe.prototype,"_showPalette",2);je([c.state()],pe.prototype,"_initialized",2);pe=je([c.customElement("ap-filter-color")],pe);var pa=Object.defineProperty,ha=Object.getOwnPropertyDescriptor,Ee=(t,e,s,i)=>{for(var a=i>1?void 0:i?ha(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&pa(e,s,a),a};const ua={KB:1/1e3,MB:1,GB:1e3},ga=[{value:"MB",label:"MB"},{value:"GB",label:"GB"}];let re=class extends o.LitElement{constructor(){super(...arguments),this.min=0,this.max=0,this._minVal="",this._maxVal="",this._unit="MB",this._initialized=!1}willUpdate(t){!this._initialized&&(t.has("min")||t.has("max"))&&(this._initialized=!0,this.min>0&&(this._minVal=String(this.min)),this.max>0&&(this._maxVal=String(this.max)))}get _hasFilter(){return this._minVal!==""||this._maxVal!==""}_clearAll(){this._minVal="",this._maxVal="",this._emitChange()}_setUnit(t){this._unit=t.detail.value,this._emitChange()}_emitChange(){const t=ua[this._unit],e=this._minVal!==""?parseFloat((parseFloat(this._minVal)*t).toFixed(2)).toString():null,s=this._maxVal!==""?parseFloat((parseFloat(this._maxVal)*t).toFixed(2)).toString():null;let i;if(e!==null&&s!==null)i=`${e}..${s}`;else if(e!==null)i=`${e}..`;else if(s!==null)i=`..${s}`;else{this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.SIZE,values:[],operator:x.RANGE},bubbles:!0,composed:!0}));return}this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.SIZE,values:[i],operator:x.RANGE},bubbles:!0,composed:!0}))}_onMinInput(t){this._minVal=t.target.value,this._emitChange()}_onMaxInput(t){this._maxVal=t.target.value,this._emitChange()}render(){return o.html`
1692
+ `];Be([c.property({type:Array})],pe.prototype,"values",2);Be([c.state()],pe.prototype,"_colors",2);Be([c.state()],pe.prototype,"_advanced",2);Be([c.state()],pe.prototype,"_showPalette",2);Be([c.state()],pe.prototype,"_initialized",2);pe=Be([c.customElement("ap-filter-color")],pe);var ma=Object.defineProperty,va=Object.getOwnPropertyDescriptor,Fe=(t,e,s,i)=>{for(var a=i>1?void 0:i?va(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ma(e,s,a),a};const ba={KB:1/1e3,MB:1,GB:1e3},_a=[{value:"MB",label:"MB"},{value:"GB",label:"GB"}];let oe=class extends o.LitElement{constructor(){super(...arguments),this.min=0,this.max=0,this._minVal="",this._maxVal="",this._unit="MB",this._initialized=!1}willUpdate(t){!this._initialized&&(t.has("min")||t.has("max"))&&(this._initialized=!0,this.min>0&&(this._minVal=String(this.min)),this.max>0&&(this._maxVal=String(this.max)))}get _hasFilter(){return this._minVal!==""||this._maxVal!==""}_clearAll(){this._minVal="",this._maxVal="",this._emitChange()}_setUnit(t){this._unit=t.detail.value,this._emitChange()}_emitChange(){const t=ba[this._unit],e=this._minVal!==""?parseFloat((parseFloat(this._minVal)*t).toFixed(2)).toString():null,s=this._maxVal!==""?parseFloat((parseFloat(this._maxVal)*t).toFixed(2)).toString():null;let i;if(e!==null&&s!==null)i=`${e}..${s}`;else if(e!==null)i=`${e}..`;else if(s!==null)i=`..${s}`;else{this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.SIZE,values:[],operator:x.RANGE},bubbles:!0,composed:!0}));return}this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.SIZE,values:[i],operator:x.RANGE},bubbles:!0,composed:!0}))}_onMinInput(t){this._minVal=t.target.value,this._emitChange()}_onMaxInput(t){this._maxVal=t.target.value,this._emitChange()}render(){return o.html`
1546
1693
  <div class="filter-content">
1547
1694
  <span class="section-label">Size</span>
1548
1695
  <button
@@ -1579,14 +1726,14 @@
1579
1726
  <div>
1580
1727
  <span class="input-label">Unit</span>
1581
1728
  <ap-dropdown
1582
- .options=${ga}
1729
+ .options=${_a}
1583
1730
  .value=${this._unit}
1584
1731
  @ap-change=${this._setUnit}
1585
1732
  ></ap-dropdown>
1586
1733
  </div>
1587
1734
  </div>
1588
1735
  </div>
1589
- `}};re.styles=[le,o.css`
1736
+ `}};oe.styles=[ce,o.css`
1590
1737
  /* Hide number input spinners */
1591
1738
  .filter-input[type='number']::-webkit-inner-spin-button,
1592
1739
  .filter-input[type='number']::-webkit-outer-spin-button {
@@ -1605,19 +1752,19 @@
1605
1752
  display: block;
1606
1753
  width: 100%;
1607
1754
  }
1608
- `];Ee([c.property({type:Number})],re.prototype,"min",2);Ee([c.property({type:Number})],re.prototype,"max",2);Ee([c.state()],re.prototype,"_minVal",2);Ee([c.state()],re.prototype,"_maxVal",2);Ee([c.state()],re.prototype,"_unit",2);Ee([c.state()],re.prototype,"_initialized",2);re=Ee([c.customElement("ap-filter-size")],re);var fa=Object.defineProperty,ma=Object.getOwnPropertyDescriptor,vt=(t,e,s,i)=>{for(var a=i>1?void 0:i?ma(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&fa(e,s,a),a};const va=o.svg`
1755
+ `];Fe([c.property({type:Number})],oe.prototype,"min",2);Fe([c.property({type:Number})],oe.prototype,"max",2);Fe([c.state()],oe.prototype,"_minVal",2);Fe([c.state()],oe.prototype,"_maxVal",2);Fe([c.state()],oe.prototype,"_unit",2);Fe([c.state()],oe.prototype,"_initialized",2);oe=Fe([c.customElement("ap-filter-size")],oe);var ya=Object.defineProperty,xa=Object.getOwnPropertyDescriptor,_t=(t,e,s,i)=>{for(var a=i>1?void 0:i?xa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ya(e,s,a),a};const wa=o.svg`
1609
1756
  <svg width="20" height="20" viewBox="0 0 12 16" fill="none" xmlns="http://www.w3.org/2000/svg">
1610
1757
  <path d="M2.66666 1.9987C2.29847 1.9987 1.99999 2.29717 1.99999 2.66536L1.99999 13.332C1.99999 13.7002 2.29847 13.9987 2.66666 13.9987L9.33332 13.9987C9.70151 13.9987 9.99999 13.7002 9.99999 13.332L9.99999 2.66536C9.99999 2.29717 9.70151 1.9987 9.33332 1.9987L2.66666 1.9987ZM9.33332 0.665364C10.4379 0.665364 11.3333 1.56079 11.3333 2.66536L11.3333 13.332C11.3333 14.4366 10.4379 15.332 9.33332 15.332L2.66666 15.332C1.56209 15.332 0.666656 14.4366 0.666656 13.332L0.666656 2.66536C0.666656 1.56079 1.56209 0.665364 2.66666 0.665364L9.33332 0.665364Z" fill="#9747FF"/>
1611
1758
  <path d="M5.33332 4.65885C5.33332 4.29066 5.6318 3.99219 5.99999 3.99219C6.36818 3.99219 6.66666 4.29066 6.66666 4.65885L6.66666 4.66536C6.66666 5.03355 6.36818 5.33203 5.99999 5.33203C5.6318 5.33203 5.33332 5.03355 5.33332 4.66536L5.33332 4.65885Z" fill="#9747FF"/>
1612
1759
  <path d="M5.33332 11.3255C5.33332 10.9573 5.6318 10.6589 5.99999 10.6589C6.36818 10.6589 6.66666 10.9573 6.66666 11.3255L6.66666 11.332C6.66666 11.7002 6.36818 11.9987 5.99999 11.9987C5.6318 11.9987 5.33332 11.7002 5.33332 11.332L5.33332 11.3255Z" fill="#9747FF"/>
1613
1760
  </svg>
1614
- `,ba=o.svg`
1761
+ `,$a=o.svg`
1615
1762
  <svg width="20" height="20" viewBox="0 0 16 12" fill="none" xmlns="http://www.w3.org/2000/svg">
1616
1763
  <path d="M14 2.66797C14 2.29978 13.7015 2.0013 13.3333 2.0013H2.66666C2.29847 2.0013 1.99999 2.29978 1.99999 2.66797V9.33463C1.99999 9.70282 2.29847 10.0013 2.66666 10.0013H13.3333C13.7015 10.0013 14 9.70282 14 9.33463V2.66797ZM15.3333 9.33463C15.3333 10.4392 14.4379 11.3346 13.3333 11.3346H2.66666C1.56209 11.3346 0.666656 10.4392 0.666656 9.33463V2.66797C0.666656 1.5634 1.56209 0.667969 2.66666 0.667969H13.3333C14.4379 0.667969 15.3333 1.5634 15.3333 2.66797V9.33463Z" fill="#65A30D"/>
1617
1764
  <path d="M11.3398 5.33464C11.708 5.33464 12.0065 5.63311 12.0065 6.0013C12.0065 6.36949 11.708 6.66797 11.3398 6.66797H11.3333C10.9651 6.66797 10.6667 6.36949 10.6667 6.0013C10.6667 5.63311 10.9651 5.33464 11.3333 5.33464H11.3398Z" fill="#65A30D"/>
1618
1765
  <path d="M4.67317 5.33464C5.04136 5.33464 5.33983 5.63311 5.33983 6.0013C5.33983 6.36949 5.04136 6.66797 4.67317 6.66797H4.66666C4.29847 6.66797 3.99999 6.36949 3.99999 6.0013C3.99999 5.63311 4.29847 5.33464 4.66666 5.33464H4.67317Z" fill="#65A30D"/>
1619
1766
  </svg>
1620
- `,_a=o.svg`
1767
+ `,ka=o.svg`
1621
1768
  <svg width="20" height="20" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
1622
1769
  <path d="M12.3333 2.33203C12.3333 1.96384 12.0349 1.66536 11.6667 1.66536H2.33334C1.96515 1.66536 1.66668 1.96384 1.66668 2.33203V11.6654C1.66668 12.0336 1.96515 12.332 2.33334 12.332H11.6667C12.0349 12.332 12.3333 12.0336 12.3333 11.6654V2.33203ZM13.6667 11.6654C13.6667 12.7699 12.7712 13.6654 11.6667 13.6654H2.33334C1.22877 13.6654 0.333344 12.7699 0.333344 11.6654V2.33203C0.333344 1.22746 1.22877 0.332031 2.33334 0.332031H11.6667C12.7712 0.332031 13.6667 1.22746 13.6667 2.33203V11.6654Z" fill="#6366F1"/>
1623
1770
  <path d="M9.67319 3.66536C10.0414 3.66536 10.3399 3.96384 10.3399 4.33203C10.3399 4.70022 10.0414 4.9987 9.67319 4.9987H9.66668C9.29849 4.9987 9.00001 4.70022 9.00001 4.33203C9.00001 3.96384 9.29849 3.66536 9.66668 3.66536H9.67319Z" fill="#6366F1"/>
@@ -1625,13 +1772,13 @@
1625
1772
  <path d="M4.33985 8.9987C4.70804 8.9987 5.00652 9.29718 5.00652 9.66537C5.00652 10.0336 4.70804 10.332 4.33985 10.332H4.33334C3.96515 10.332 3.66668 10.0336 3.66668 9.66537C3.66668 9.29718 3.96515 8.9987 4.33334 8.9987H4.33985Z" fill="#6366F1"/>
1626
1773
  <path d="M9.67319 8.9987C10.0414 8.9987 10.3399 9.29718 10.3399 9.66537C10.3399 10.0336 10.0414 10.332 9.67319 10.332H9.66668C9.29849 10.332 9.00001 10.0336 9.00001 9.66537C9.00001 9.29718 9.29849 8.9987 9.66668 8.9987H9.67319Z" fill="#6366F1"/>
1627
1774
  </svg>
1628
- `,ya=o.svg`
1775
+ `,Sa=o.svg`
1629
1776
  <svg width="20" height="20" viewBox="0 0 16 8" fill="none" xmlns="http://www.w3.org/2000/svg">
1630
1777
  <path d="M14 2.33203C14 1.96384 13.7015 1.66536 13.3333 1.66536H2.66666C2.29847 1.66536 1.99999 1.96384 1.99999 2.33203V5.66536C1.99999 6.03355 2.29847 6.33203 2.66666 6.33203H13.3333C13.7015 6.33203 14 6.03355 14 5.66536V2.33203ZM15.3333 5.66536C15.3333 6.76993 14.4379 7.66536 13.3333 7.66536H2.66666C1.56209 7.66536 0.666656 6.76993 0.666656 5.66536V2.33203C0.666656 1.22746 1.56209 0.332031 2.66666 0.332031H13.3333C14.4379 0.332031 15.3333 1.22746 15.3333 2.33203V5.66536Z" fill="#4BA3AD"/>
1631
1778
  <path d="M11.3398 3.33203C11.708 3.33203 12.0065 3.63051 12.0065 3.9987C12.0065 4.36689 11.708 4.66536 11.3398 4.66536H11.3333C10.9651 4.66536 10.6667 4.36689 10.6667 3.9987C10.6667 3.63051 10.9651 3.33203 11.3333 3.33203H11.3398Z" fill="#4BA3AD"/>
1632
1779
  <path d="M4.67317 3.33203C5.04136 3.33203 5.33983 3.63051 5.33983 3.9987C5.33983 4.36689 5.04136 4.66536 4.67317 4.66536H4.66666C4.29847 4.66536 3.99999 4.36689 3.99999 3.9987C3.99999 3.63051 4.29847 3.33203 4.66666 3.33203H4.67317Z" fill="#4BA3AD"/>
1633
1780
  </svg>
1634
- `,xa={portrait:va,landscape:ba,square:_a,panorama:ya};let Pe=class extends o.LitElement{constructor(){super(...arguments),this.selectedResolution=[],this.selectedOrientation=[],this.selectedFaces=[]}get _hasSelection(){return this.selectedResolution.length>0||this.selectedOrientation.length>0||this.selectedFaces.length>0}_toggle(t,e){return t.includes(e)?t.filter(s=>s!==e):[...t,e]}_toggleResolution(t){this.selectedResolution=this._toggle(this.selectedResolution,t),this._dispatchChange()}_toggleOrientation(t){this.selectedOrientation=this._toggle(this.selectedOrientation,t),this._dispatchChange()}_toggleFaces(t){this.selectedFaces=this._toggle(this.selectedFaces,t),this._dispatchChange()}_clearAll(){this.selectedResolution=[],this.selectedOrientation=[],this.selectedFaces=[],this._dispatchChange()}_dispatchChange(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:"image",values:{resolution:this.selectedResolution,orientation:this.selectedOrientation,faces:this.selectedFaces}},bubbles:!0,composed:!0}))}render(){return o.html`
1781
+ `,Ca={portrait:wa,landscape:$a,square:ka,panorama:Sa};let Ie=class extends o.LitElement{constructor(){super(...arguments),this.selectedResolution=[],this.selectedOrientation=[],this.selectedFaces=[]}get _hasSelection(){return this.selectedResolution.length>0||this.selectedOrientation.length>0||this.selectedFaces.length>0}_toggle(t,e){return t.includes(e)?t.filter(s=>s!==e):[...t,e]}_toggleResolution(t){this.selectedResolution=this._toggle(this.selectedResolution,t),this._dispatchChange()}_toggleOrientation(t){this.selectedOrientation=this._toggle(this.selectedOrientation,t),this._dispatchChange()}_toggleFaces(t){this.selectedFaces=this._toggle(this.selectedFaces,t),this._dispatchChange()}_clearAll(){this.selectedResolution=[],this.selectedOrientation=[],this.selectedFaces=[],this._dispatchChange()}_dispatchChange(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:"image",values:{resolution:this.selectedResolution,orientation:this.selectedOrientation,faces:this.selectedFaces}},bubbles:!0,composed:!0}))}render(){return o.html`
1635
1782
  <div class="filter-content">
1636
1783
  <button
1637
1784
  class="clear-btn"
@@ -1642,7 +1789,7 @@
1642
1789
  <div class="filter-section">
1643
1790
  <span class="section-label">Resolution</span>
1644
1791
  <div class="options-horizontal">
1645
- ${si.map(t=>o.html`
1792
+ ${ii.map(t=>o.html`
1646
1793
  <ap-checkbox
1647
1794
  ?checked=${this.selectedResolution.includes(t.value)}
1648
1795
  @ap-toggle=${()=>{this._toggleResolution(t.value)}}
@@ -1654,11 +1801,11 @@
1654
1801
  <div class="filter-section">
1655
1802
  <span class="section-label">Orientation</span>
1656
1803
  <div class="options-vertical">
1657
- ${ii.map(t=>o.html`
1804
+ ${ai.map(t=>o.html`
1658
1805
  <ap-checkbox
1659
1806
  ?checked=${this.selectedOrientation.includes(t.value)}
1660
1807
  @ap-toggle=${()=>{this._toggleOrientation(t.value)}}
1661
- ><span class="orientation-label">${xa[t.value]}${t.label}</span></ap-checkbox>
1808
+ ><span class="orientation-label">${Ca[t.value]}${t.label}</span></ap-checkbox>
1662
1809
  `)}
1663
1810
  </div>
1664
1811
  </div>
@@ -1666,7 +1813,7 @@
1666
1813
  <div class="filter-section">
1667
1814
  <span class="section-label">Faces</span>
1668
1815
  <div class="options-horizontal">
1669
- ${ai.map(t=>o.html`
1816
+ ${ri.map(t=>o.html`
1670
1817
  <ap-checkbox
1671
1818
  ?checked=${this.selectedFaces.includes(t.value)}
1672
1819
  @ap-toggle=${()=>{this._toggleFaces(t.value)}}
@@ -1680,7 +1827,7 @@
1680
1827
  <span>Some images might not have been processed, so they won't be displayed.</span>
1681
1828
  </div>
1682
1829
  </div>
1683
- `}};Pe.styles=[le,o.css`
1830
+ `}};Ie.styles=[ce,o.css`
1684
1831
  .options-horizontal {
1685
1832
  display: flex;
1686
1833
  gap: 28px;
@@ -1701,14 +1848,14 @@
1701
1848
  .orientation-label svg {
1702
1849
  flex-shrink: 0;
1703
1850
  }
1704
- `];vt([c.property({type:Array})],Pe.prototype,"selectedResolution",2);vt([c.property({type:Array})],Pe.prototype,"selectedOrientation",2);vt([c.property({type:Array})],Pe.prototype,"selectedFaces",2);Pe=vt([c.customElement("ap-filter-image")],Pe);var wa=Object.defineProperty,$a=Object.getOwnPropertyDescriptor,L=(t,e,s,i)=>{for(var a=i>1?void 0:i?$a(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&wa(e,s,a),a};function k(t){return`${ft[t.type]||""}${t.key}`}let T=class extends o.LitElement{constructor(){super(...arguments),this.fields=[],this.appliedFilters={},this.visibleFields=[],this.mode="full",this.activeFieldKey="",this.pinnedFields=[],this.appliedMetadata={},this._showFieldSelection=!1,this._fieldSearch="",this._collapsedFields=new Set,this._tagInputs={},this._tagSuggestions={},this._tagLoading={},this._datePresets={},this._dateFroms={},this._dateTos={},this._specificModeFields=new Set,this._selectSearches={},this._tagDebounceTimers={}}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>this._focusSearch())}disconnectedCallback(){super.disconnectedCallback();for(const t of Object.values(this._tagDebounceTimers))clearTimeout(t)}_focusSearch(){const t=this.renderRoot.querySelector(".field-search, .search-input");t==null||t.focus()}get _atFieldLimit(){return this.visibleFields.length>=st}_getField(t){return this.fields.find(e=>k(e)===t)}_getUIType(t){return pi[t.type]}_getApplied(t){return this.appliedMetadata[t]||this.appliedFilters[t]||{}}_isSpecialValue(t){return!t||t.length!==1?!1:t[0]===q||t[0]===H}_getContentMode(t){var s,i;const e=this._getApplied(t);return((s=e.values)==null?void 0:s[0])===q?q:((i=e.values)==null?void 0:i[0])===H?H:this._specificModeFields.has(t)||e.values&&e.values.length>0?be:""}_emitFilterChange(t,e,s){const i=k(t);this.dispatchEvent(new CustomEvent("metadata-filter-change",{detail:{fieldKey:i,operator:e,values:s,metadataType:t.type},bubbles:!0,composed:!0}))}_emitFieldToggle(t,e){const s=k(t);this.dispatchEvent(new CustomEvent("metadata-field-toggle",{detail:{fieldKey:s,visible:e},bubbles:!0,composed:!0}))}_emitFieldSelect(t){const e=k(t);!this.visibleFields.includes(e)&&this._atFieldLimit||(this.visibleFields.includes(e)||this._emitFieldToggle(t,!0),this.dispatchEvent(new CustomEvent("metadata-field-select",{detail:{fieldKey:e},bubbles:!0,composed:!0})))}_emitPin(t,e){this.dispatchEvent(new CustomEvent("metadata-pin",{detail:{fieldKey:t,pinned:e},bubbles:!0,composed:!0}))}_openFieldSelection(){this._showFieldSelection=!0,this._fieldSearch=""}_closeFieldSelection(){this._showFieldSelection=!1,this._fieldSearch=""}_addField(t){if(this._atFieldLimit)return;const e=k(t);this.visibleFields.includes(e)||this._emitFieldToggle(t,!0)}_removeField(t){this._emitFieldToggle(t,!1),this._emitFilterChange(t,void 0,[])}_toggleCollapse(t){const e=new Set(this._collapsedFields);e.has(t)?e.delete(t):e.add(t),this._collapsedFields=e}_onOperatorChange(t,e){const i=this._getApplied(k(t)).values||[];this._emitFilterChange(t,e,i)}_onContentModeChange(t,e){const s=k(t);if(e===be){const i=new Set(this._specificModeFields);i.add(s),this._specificModeFields=i;const a=this._getApplied(s);this._isSpecialValue(a.values)&&this._emitFilterChange(t,a.operator,[])}else{if(this._specificModeFields.has(s)){const i=new Set(this._specificModeFields);i.delete(s),this._specificModeFields=i}this._onEmptyOption(t,e)}}_clearFieldFilter(t){const e=k(t);if(this._specificModeFields.has(e)){const p=new Set(this._specificModeFields);p.delete(e),this._specificModeFields=p}const{[e]:s,...i}=this._datePresets;this._datePresets=i;const{[e]:a,...r}=this._dateFroms;this._dateFroms=r;const{[e]:n,...l}=this._dateTos;this._dateTos=l;const{[e]:d,...h}=this._selectSearches;this._selectSearches=h;const{[e]:u,...f}=this._tagInputs;this._tagInputs=f,this._emitFilterChange(t,void 0,[])}_onTextInput(t,e){const s=e.target.value,a=this._getApplied(k(t)).operator||St[0].value;this._emitFilterChange(t,a,s?[s]:[])}_onNumberInput(t,e,s){const i=e.target.value,a=k(t),r=this._getApplied(a),n=r.operator||Et[0].value,l=[...r.values||[]];s===0?l[0]=i:l[1]=i;const d=l.filter(h=>h!==""&&h!==void 0);if(d.length>0){const h=t.type===b.DECIMAL2;if(!d.every(f=>h?!isNaN(parseFloat(f)):/^-?\d+$/.test(f)))return}this._emitFilterChange(t,n,l)}_onBooleanSelect(t,e){var a;const s=this._getApplied(k(t));((a=s.values)==null?void 0:a[0])===e?this._emitFilterChange(t,void 0,[]):this._emitFilterChange(t,s.operator,[e])}_onSelectOneToggle(t,e){const s=k(t),i=this._getApplied(s),a=i.operator||ie[0].value,r=i.values||[];r.length===1&&r[0]===e?this._emitFilterChange(t,a,[]):this._emitFilterChange(t,a,[e])}_onMultiSelectToggle(t,e){const s=k(t),i=this._getApplied(s),a=i.operator||Ct[0].value,r=i.values||[],n=r.includes(e)?r.filter(l=>l!==e):[...r,e];this._emitFilterChange(t,a,n)}_onTagKeydown(t,e){const s=k(t);(e.key==="Enter"||e.key===",")&&(e.preventDefault(),this._commitTagInput(t,s))}_onTagInput(t,e,s){const i=s.target.value;if(i.includes(",")){const a=i.replace(/,/g,"").trim();a&&(this._tagInputs={...this._tagInputs,[e]:a},this._commitTagInput(t,e));return}this._tagInputs={...this._tagInputs,[e]:i},this._fetchTagSuggestions(t,e,i.trim())}_selectTagSuggestion(t,e){const s=k(t),i=this._getApplied(s),a=i.operator||ie[0].value,r=i.values||[];r.includes(e)||this._emitFilterChange(t,a,[...r,e]),this._tagInputs={...this._tagInputs,[s]:""},this._tagSuggestions={...this._tagSuggestions,[s]:[]}}_fetchTagSuggestions(t,e,s){if(this._tagDebounceTimers[e]&&clearTimeout(this._tagDebounceTimers[e]),!s||!this.apiClient){this._tagSuggestions={...this._tagSuggestions,[e]:[]},this._tagLoading={...this._tagLoading,[e]:!1};return}this._tagDebounceTimers[e]=setTimeout(async()=>{this._tagLoading={...this._tagLoading,[e]:!0};try{const i=`_${t.ckey||t.key}`,a=await this.apiClient.request("/metadata/autocomplete",{q:s,meta_key:i});(this._tagInputs[e]||"").trim()===s&&(this._tagSuggestions={...this._tagSuggestions,[e]:(a.tags||[]).map(r=>r.tag)})}catch{this._tagSuggestions={...this._tagSuggestions,[e]:[]}}finally{this._tagLoading={...this._tagLoading,[e]:!1}}},300)}_commitTagInput(t,e){const s=(this._tagInputs[e]||"").trim();if(!s)return;const i=this._getApplied(e),a=i.operator||ie[0].value,r=i.values||[];r.includes(s)||this._emitFilterChange(t,a,[...r,s]),this._tagInputs={...this._tagInputs,[e]:""},this._tagSuggestions={...this._tagSuggestions,[e]:[]}}_removeTag(t,e){const s=k(t),i=this._getApplied(s),a=i.operator||ie[0].value,r=i.values||[];this._emitFilterChange(t,a,r.filter(n=>n!==e))}_onTagOperatorChange(t,e){const s=k(t),a=this._getApplied(s).values||[];this._emitFilterChange(t,e,a)}_onDatePreset(t,e){const s=k(t);if(this._datePresets={...this._datePresets,[s]:e},["before","after","between"].includes(e)){this._dateFroms={...this._dateFroms,[s]:""},this._dateTos={...this._dateTos,[s]:""};return}if(e==="empty"||e==="non-empty"){this._emitFilterChange(t,void 0,[e]);return}const i=new Date;let a="",r="";switch(e){case"today":{const n=new Date(i);n.setHours(0,0,0,0),a=n.toISOString(),r=i.toISOString();break}case"last_week":{const n=new Date(i),l=n.getDay();n.setDate(n.getDate()-(l===0?6:l-1)),n.setHours(0,0,0,0);const d=new Date(n);d.setDate(d.getDate()-7),a=d.toISOString(),r=n.toISOString();break}case"last_month":{const n=new Date(i.getFullYear(),i.getMonth(),1),l=new Date(n);l.setMonth(l.getMonth()-1),a=l.toISOString(),r=n.toISOString();break}case"last_year":{const n=new Date(i.getFullYear(),0,1),l=new Date(n);l.setFullYear(l.getFullYear()-1),a=l.toISOString(),r=n.toISOString();break}}a&&r&&(this._dateFroms={...this._dateFroms,[s]:a},this._dateTos={...this._dateTos,[s]:r},this._emitFilterChange(t,"..",[a,r]))}_onDateInput(t,e,s){const i=s.target.value,a=k(t),r=this._datePresets[a]||"",n=i?new Date(i+"T00:00:00").toISOString():"";e==="from"?this._dateFroms={...this._dateFroms,[a]:n}:this._dateTos={...this._dateTos,[a]:n};let l=this._dateFroms[a]||"",d=this._dateTos[a]||"";r==="after"&&l&&(d=new Date().toISOString(),this._dateTos={...this._dateTos,[a]:d}),r==="before"&&d&&(l=new Date(0).toISOString(),this._dateFroms={...this._dateFroms,[a]:l}),l&&d&&this._emitFilterChange(t,"..",[l,d])}_onGeoLocationInput(t,e){var f;const s=e.target.value.trim(),i=k(t),a=(f=this.shadowRoot)==null?void 0:f.querySelector(`[data-geo-radius="${i}"]`),r=(a==null?void 0:a.value)||"";if(!s){this._emitFilterChange(t,void 0,[]);return}const n=s.split(",").map(p=>p.trim());if(n.length!==2||n.some(p=>isNaN(Number(p))||p===""))return;const[l,d]=n;let u=`${l},${d}..${r||"0"}`;this._emitFilterChange(t,x.IS,[u])}_onGeoRadiusInput(t,e){var d;const s=e.target.value,i=k(t),a=this._getApplied(i);if(!((d=a.values)!=null&&d[0]))return;const r=a.values[0],[n]=r.split("..");let l=n;s&&(l+=`..${s}`),this._emitFilterChange(t,x.IS,[l])}_onEmptyOption(t,e){var a;const s=this._getApplied(k(t));((a=s.values)==null?void 0:a[0])===e?this._emitFilterChange(t,s.operator,[]):this._emitFilterChange(t,s.operator,[e])}_getGroupedFields(t){const e=new Map;for(const s of t){const i=s.group||"Root fields";e.has(i)||e.set(i,[]),e.get(i).push(s)}return e}_renderFieldSelection(){const t=this._fieldSearch.toLowerCase(),e=this.fields.filter(a=>a.label.toLowerCase().includes(t)),s=this._getGroupedFields(e),i=(a,r)=>r.length===0?o.nothing:o.html`
1851
+ `];_t([c.property({type:Array})],Ie.prototype,"selectedResolution",2);_t([c.property({type:Array})],Ie.prototype,"selectedOrientation",2);_t([c.property({type:Array})],Ie.prototype,"selectedFaces",2);Ie=_t([c.customElement("ap-filter-image")],Ie);var Ea=Object.defineProperty,Fa=Object.getOwnPropertyDescriptor,L=(t,e,s,i)=>{for(var a=i>1?void 0:i?Fa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ea(e,s,a),a};function k(t){return`${vt[t.type]||""}${t.key}`}let T=class extends o.LitElement{constructor(){super(...arguments),this.fields=[],this.appliedFilters={},this.visibleFields=[],this.mode="full",this.activeFieldKey="",this.pinnedFields=[],this.appliedMetadata={},this._showFieldSelection=!1,this._fieldSearch="",this._collapsedFields=new Set,this._tagInputs={},this._tagSuggestions={},this._tagLoading={},this._datePresets={},this._dateFroms={},this._dateTos={},this._specificModeFields=new Set,this._selectSearches={},this._tagDebounceTimers={}}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>this._focusSearch())}disconnectedCallback(){super.disconnectedCallback();for(const t of Object.values(this._tagDebounceTimers))clearTimeout(t)}_focusSearch(){const t=this.renderRoot.querySelector(".field-search, .search-input");t==null||t.focus()}get _atFieldLimit(){return this.visibleFields.length>=at}_getField(t){return this.fields.find(e=>k(e)===t)}_getUIType(t){return hi[t.type]}_getApplied(t){return this.appliedMetadata[t]||this.appliedFilters[t]||{}}_isSpecialValue(t){return!t||t.length!==1?!1:t[0]===H||t[0]===G}_getContentMode(t){var s,i;const e=this._getApplied(t);return((s=e.values)==null?void 0:s[0])===H?H:((i=e.values)==null?void 0:i[0])===G?G:this._specificModeFields.has(t)||e.values&&e.values.length>0?be:""}_emitFilterChange(t,e,s){const i=k(t);this.dispatchEvent(new CustomEvent("metadata-filter-change",{detail:{fieldKey:i,operator:e,values:s,metadataType:t.type},bubbles:!0,composed:!0}))}_emitFieldToggle(t,e){const s=k(t);this.dispatchEvent(new CustomEvent("metadata-field-toggle",{detail:{fieldKey:s,visible:e},bubbles:!0,composed:!0}))}_emitFieldSelect(t){const e=k(t);!this.visibleFields.includes(e)&&this._atFieldLimit||(this.visibleFields.includes(e)||this._emitFieldToggle(t,!0),this.dispatchEvent(new CustomEvent("metadata-field-select",{detail:{fieldKey:e},bubbles:!0,composed:!0})))}_emitPin(t,e){this.dispatchEvent(new CustomEvent("metadata-pin",{detail:{fieldKey:t,pinned:e},bubbles:!0,composed:!0}))}_openFieldSelection(){this._showFieldSelection=!0,this._fieldSearch=""}_closeFieldSelection(){this._showFieldSelection=!1,this._fieldSearch=""}_addField(t){if(this._atFieldLimit)return;const e=k(t);this.visibleFields.includes(e)||this._emitFieldToggle(t,!0)}_removeField(t){this._emitFieldToggle(t,!1),this._emitFilterChange(t,void 0,[])}_toggleCollapse(t){const e=new Set(this._collapsedFields);e.has(t)?e.delete(t):e.add(t),this._collapsedFields=e}_onOperatorChange(t,e){const i=this._getApplied(k(t)).values||[];this._emitFilterChange(t,e,i)}_onContentModeChange(t,e){const s=k(t);if(e===be){const i=new Set(this._specificModeFields);i.add(s),this._specificModeFields=i;const a=this._getApplied(s);this._isSpecialValue(a.values)&&this._emitFilterChange(t,a.operator,[])}else{if(this._specificModeFields.has(s)){const i=new Set(this._specificModeFields);i.delete(s),this._specificModeFields=i}this._onEmptyOption(t,e)}}_clearFieldFilter(t){const e=k(t);if(this._specificModeFields.has(e)){const p=new Set(this._specificModeFields);p.delete(e),this._specificModeFields=p}const{[e]:s,...i}=this._datePresets;this._datePresets=i;const{[e]:a,...r}=this._dateFroms;this._dateFroms=r;const{[e]:n,...l}=this._dateTos;this._dateTos=l;const{[e]:d,...h}=this._selectSearches;this._selectSearches=h;const{[e]:u,...f}=this._tagInputs;this._tagInputs=f,this._emitFilterChange(t,void 0,[])}_onTextInput(t,e){const s=e.target.value,a=this._getApplied(k(t)).operator||Et[0].value;this._emitFilterChange(t,a,s?[s]:[])}_onNumberInput(t,e,s){const i=e.target.value,a=k(t),r=this._getApplied(a),n=r.operator||At[0].value,l=[...r.values||[]];s===0?l[0]=i:l[1]=i;const d=l.filter(h=>h!==""&&h!==void 0);if(d.length>0){const h=t.type===b.DECIMAL2;if(!d.every(f=>h?!isNaN(parseFloat(f)):/^-?\d+$/.test(f)))return}this._emitFilterChange(t,n,l)}_onBooleanSelect(t,e){var a;const s=this._getApplied(k(t));((a=s.values)==null?void 0:a[0])===e?this._emitFilterChange(t,void 0,[]):this._emitFilterChange(t,s.operator,[e])}_onSelectOneToggle(t,e){const s=k(t),i=this._getApplied(s),a=i.operator||ae[0].value,r=i.values||[];r.length===1&&r[0]===e?this._emitFilterChange(t,a,[]):this._emitFilterChange(t,a,[e])}_onMultiSelectToggle(t,e){const s=k(t),i=this._getApplied(s),a=i.operator||Ft[0].value,r=i.values||[],n=r.includes(e)?r.filter(l=>l!==e):[...r,e];this._emitFilterChange(t,a,n)}_onTagKeydown(t,e){const s=k(t);(e.key==="Enter"||e.key===",")&&(e.preventDefault(),this._commitTagInput(t,s))}_onTagInput(t,e,s){const i=s.target.value;if(i.includes(",")){const a=i.replace(/,/g,"").trim();a&&(this._tagInputs={...this._tagInputs,[e]:a},this._commitTagInput(t,e));return}this._tagInputs={...this._tagInputs,[e]:i},this._fetchTagSuggestions(t,e,i.trim())}_selectTagSuggestion(t,e){const s=k(t),i=this._getApplied(s),a=i.operator||ae[0].value,r=i.values||[];r.includes(e)||this._emitFilterChange(t,a,[...r,e]),this._tagInputs={...this._tagInputs,[s]:""},this._tagSuggestions={...this._tagSuggestions,[s]:[]}}_fetchTagSuggestions(t,e,s){if(this._tagDebounceTimers[e]&&clearTimeout(this._tagDebounceTimers[e]),!s||!this.apiClient){this._tagSuggestions={...this._tagSuggestions,[e]:[]},this._tagLoading={...this._tagLoading,[e]:!1};return}this._tagDebounceTimers[e]=setTimeout(async()=>{this._tagLoading={...this._tagLoading,[e]:!0};try{const i=`_${t.ckey||t.key}`,a=await this.apiClient.request("/metadata/autocomplete",{q:s,meta_key:i});(this._tagInputs[e]||"").trim()===s&&(this._tagSuggestions={...this._tagSuggestions,[e]:(a.tags||[]).map(r=>r.tag)})}catch{this._tagSuggestions={...this._tagSuggestions,[e]:[]}}finally{this._tagLoading={...this._tagLoading,[e]:!1}}},300)}_commitTagInput(t,e){const s=(this._tagInputs[e]||"").trim();if(!s)return;const i=this._getApplied(e),a=i.operator||ae[0].value,r=i.values||[];r.includes(s)||this._emitFilterChange(t,a,[...r,s]),this._tagInputs={...this._tagInputs,[e]:""},this._tagSuggestions={...this._tagSuggestions,[e]:[]}}_removeTag(t,e){const s=k(t),i=this._getApplied(s),a=i.operator||ae[0].value,r=i.values||[];this._emitFilterChange(t,a,r.filter(n=>n!==e))}_onTagOperatorChange(t,e){const s=k(t),a=this._getApplied(s).values||[];this._emitFilterChange(t,e,a)}_onDatePreset(t,e){const s=k(t);if(this._datePresets={...this._datePresets,[s]:e},["before","after","between"].includes(e)){this._dateFroms={...this._dateFroms,[s]:""},this._dateTos={...this._dateTos,[s]:""};return}if(e==="empty"||e==="non-empty"){this._emitFilterChange(t,void 0,[e]);return}const i=new Date;let a="",r="";switch(e){case"today":{const n=new Date(i);n.setHours(0,0,0,0),a=n.toISOString(),r=i.toISOString();break}case"last_week":{const n=new Date(i),l=n.getDay();n.setDate(n.getDate()-(l===0?6:l-1)),n.setHours(0,0,0,0);const d=new Date(n);d.setDate(d.getDate()-7),a=d.toISOString(),r=n.toISOString();break}case"last_month":{const n=new Date(i.getFullYear(),i.getMonth(),1),l=new Date(n);l.setMonth(l.getMonth()-1),a=l.toISOString(),r=n.toISOString();break}case"last_year":{const n=new Date(i.getFullYear(),0,1),l=new Date(n);l.setFullYear(l.getFullYear()-1),a=l.toISOString(),r=n.toISOString();break}}a&&r&&(this._dateFroms={...this._dateFroms,[s]:a},this._dateTos={...this._dateTos,[s]:r},this._emitFilterChange(t,"..",[a,r]))}_onDateInput(t,e,s){const i=s.target.value,a=k(t),r=this._datePresets[a]||"",n=i?new Date(i+"T00:00:00").toISOString():"";e==="from"?this._dateFroms={...this._dateFroms,[a]:n}:this._dateTos={...this._dateTos,[a]:n};let l=this._dateFroms[a]||"",d=this._dateTos[a]||"";r==="after"&&l&&(d=new Date().toISOString(),this._dateTos={...this._dateTos,[a]:d}),r==="before"&&d&&(l=new Date(0).toISOString(),this._dateFroms={...this._dateFroms,[a]:l}),l&&d&&this._emitFilterChange(t,"..",[l,d])}_onGeoLocationInput(t,e){var f;const s=e.target.value.trim(),i=k(t),a=(f=this.shadowRoot)==null?void 0:f.querySelector(`[data-geo-radius="${i}"]`),r=(a==null?void 0:a.value)||"";if(!s){this._emitFilterChange(t,void 0,[]);return}const n=s.split(",").map(p=>p.trim());if(n.length!==2||n.some(p=>isNaN(Number(p))||p===""))return;const[l,d]=n;let u=`${l},${d}..${r||"0"}`;this._emitFilterChange(t,x.IS,[u])}_onGeoRadiusInput(t,e){var d;const s=e.target.value,i=k(t),a=this._getApplied(i);if(!((d=a.values)!=null&&d[0]))return;const r=a.values[0],[n]=r.split("..");let l=n;s&&(l+=`..${s}`),this._emitFilterChange(t,x.IS,[l])}_onEmptyOption(t,e){var a;const s=this._getApplied(k(t));((a=s.values)==null?void 0:a[0])===e?this._emitFilterChange(t,s.operator,[]):this._emitFilterChange(t,s.operator,[e])}_getGroupedFields(t){const e=new Map;for(const s of t){const i=s.group||"Root fields";e.has(i)||e.set(i,[]),e.get(i).push(s)}return e}_renderFieldSelection(){const t=this._fieldSearch.toLowerCase(),e=this.fields.filter(a=>a.label.toLowerCase().includes(t)),s=this._getGroupedFields(e),i=(a,r)=>r.length===0?o.nothing:o.html`
1705
1852
  <div class="field-group-label">${a}</div>
1706
1853
  ${r.map(n=>{const l=k(n),d=this.visibleFields.includes(l),h=!d&&this._atFieldLimit;return o.html`
1707
1854
  <div
1708
1855
  class="field-item ${d?"selected":""} ${h?"disabled":""}"
1709
1856
  @click=${()=>!h&&!d&&this._addField(n)}
1710
1857
  >
1711
- ${d?o.html`<ap-icon name="check" .size=${14}></ap-icon>`:o.html`<ap-icon name=${ot[n.type]||"file-text"} .size=${14} style="color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82))"></ap-icon>`}
1858
+ ${d?o.html`<ap-icon name="check" .size=${14}></ap-icon>`:o.html`<ap-icon name=${lt[n.type]||"file-text"} .size=${14} style="color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82))"></ap-icon>`}
1712
1859
  <span>${n.label}</span>
1713
1860
  </div>
1714
1861
  `})}
@@ -1737,7 +1884,7 @@
1737
1884
  ${e.length===0?o.html`<div class="empty-msg">No fields found</div>`:o.html`${[...s.entries()].map(([a,r])=>i(a,r))}`}
1738
1885
  </div>
1739
1886
  </div>
1740
- `}_renderTextFilter(t){var h,u;const e=k(t),s=this._getApplied(e),a=this._isSpecialValue(s.values)?"":((h=s.values)==null?void 0:h[0])||"",r=this._getContentMode(e),n=r===q||r===H,l=s.operator||St[0].value,d=t.type===b.TEXT_AREA;return o.html`
1887
+ `}_renderTextFilter(t){var h,u;const e=k(t),s=this._getApplied(e),a=this._isSpecialValue(s.values)?"":((h=s.values)==null?void 0:h[0])||"",r=this._getContentMode(e),n=r===H||r===G,l=s.operator||Et[0].value,d=t.type===b.TEXT_AREA;return o.html`
1741
1888
  <div class="filter-content" style="position: relative;">
1742
1889
  <button
1743
1890
  class="clear-btn"
@@ -1749,7 +1896,7 @@
1749
1896
  <span class="section-label">Operator</span>
1750
1897
  <ap-radio-group
1751
1898
  direction="horizontal"
1752
- .options=${St}
1899
+ .options=${Et}
1753
1900
  .value=${l}
1754
1901
  ?disabled=${n}
1755
1902
  @ap-change=${f=>this._onOperatorChange(t,f.detail.value)}
@@ -1759,7 +1906,7 @@
1759
1906
  <div class="filter-section">
1760
1907
  <span class="section-label">Content</span>
1761
1908
  <ap-radio-group
1762
- .options=${Ft}
1909
+ .options=${Tt}
1763
1910
  .value=${r}
1764
1911
  @ap-change=${f=>this._onContentModeChange(t,f.detail.value)}
1765
1912
  ></ap-radio-group>
@@ -1788,7 +1935,7 @@
1788
1935
  </div>
1789
1936
  `:o.nothing}
1790
1937
  </div>
1791
- `}_renderNumberFilter(t){var w,E,M;const e=k(t),s=this._getApplied(e),i=s.operator||Et[0].value,a=this._isSpecialValue(s.values),r=this._getContentMode(e),n=r===q||r===H,l=i===x.RANGE,d=i===x.GREATER_THAN_OR_EQUAL,h=i===x.LESS_THAN_OR_EQUAL,u=t.type===b.DECIMAL2,f=u?"0.01":"1",p=u?"0.00":"0",g=a?"":((w=s.values)==null?void 0:w[0])||"",m=a?"":((E=s.values)==null?void 0:E[1])||"",_=l||d||h,y=l||d||h?"Min":"Value";return o.html`
1938
+ `}_renderNumberFilter(t){var w,E,M;const e=k(t),s=this._getApplied(e),i=s.operator||At[0].value,a=this._isSpecialValue(s.values),r=this._getContentMode(e),n=r===H||r===G,l=i===x.RANGE,d=i===x.GREATER_THAN_OR_EQUAL,h=i===x.LESS_THAN_OR_EQUAL,u=t.type===b.DECIMAL2,f=u?"0.01":"1",p=u?"0.00":"0",g=a?"":((w=s.values)==null?void 0:w[0])||"",m=a?"":((E=s.values)==null?void 0:E[1])||"",_=l||d||h,y=l||d||h?"Min":"Value";return o.html`
1792
1939
  <div class="filter-content" style="position: relative;">
1793
1940
  <button
1794
1941
  class="clear-btn"
@@ -1800,7 +1947,7 @@
1800
1947
  <span class="section-label">Condition</span>
1801
1948
  <ap-radio-group
1802
1949
  columns="2"
1803
- .options=${Et}
1950
+ .options=${At}
1804
1951
  .value=${i}
1805
1952
  ?disabled=${n}
1806
1953
  @ap-change=${$=>this._onOperatorChange(t,$.detail.value)}
@@ -1810,7 +1957,7 @@
1810
1957
  <div class="filter-section">
1811
1958
  <span class="section-label">Content</span>
1812
1959
  <ap-radio-group
1813
- .options=${Ft}
1960
+ .options=${Tt}
1814
1961
  .value=${r}
1815
1962
  @ap-change=${$=>this._onContentModeChange(t,$.detail.value)}
1816
1963
  ></ap-radio-group>
@@ -1860,13 +2007,13 @@
1860
2007
  <div class="filter-section">
1861
2008
  <span class="section-label">Value</span>
1862
2009
  <ap-radio-group
1863
- .options=${di}
2010
+ .options=${pi}
1864
2011
  .value=${s}
1865
2012
  @ap-change=${r=>this._onBooleanSelect(t,r.detail.value)}
1866
2013
  ></ap-radio-group>
1867
2014
  </div>
1868
2015
  </div>
1869
- `}_renderSelectOneFilter(t){const e=k(t),s=this._getApplied(e),i=this._isSpecialValue(s.values),a=i?[]:s.values||[],r=t.possible_values||[],n=s.operator||ie[0].value,l=(this._selectSearches[e]||"").toLowerCase(),d=l.length>0,h=a.length>0||i,u=l?r.filter(p=>p.label.toLowerCase().includes(l)):r,f=a.length>=st;return o.html`
2016
+ `}_renderSelectOneFilter(t){const e=k(t),s=this._getApplied(e),i=this._isSpecialValue(s.values),a=i?[]:s.values||[],r=t.possible_values||[],n=s.operator||ae[0].value,l=(this._selectSearches[e]||"").toLowerCase(),d=l.length>0,h=a.length>0||i,u=l?r.filter(p=>p.label.toLowerCase().includes(l)):r,f=a.length>=at;return o.html`
1870
2017
  <div class="filter-content">
1871
2018
  <!-- Search input -->
1872
2019
  <div class="search-wrapper">
@@ -1907,7 +2054,7 @@
1907
2054
  </div>
1908
2055
  <ap-radio-group
1909
2056
  direction="horizontal"
1910
- .options=${ie}
2057
+ .options=${ae}
1911
2058
  .value=${n}
1912
2059
  @ap-change=${p=>this._onOperatorChange(t,p.detail.value)}
1913
2060
  ></ap-radio-group>
@@ -1963,7 +2110,7 @@
1963
2110
  </div>
1964
2111
  </div>
1965
2112
  </div>
1966
- `}_renderMultiSelectFilter(t){const e=k(t),s=this._getApplied(e),i=this._isSpecialValue(s.values),a=i?[]:s.values||[],r=t.possible_values||[],n=s.operator||Ct[0].value,l=(this._selectSearches[e]||"").toLowerCase(),d=l.length>0,h=a.length>0||i,u=l?r.filter(p=>p.label.toLowerCase().includes(l)):r,f=a.length>=st;return o.html`
2113
+ `}_renderMultiSelectFilter(t){const e=k(t),s=this._getApplied(e),i=this._isSpecialValue(s.values),a=i?[]:s.values||[],r=t.possible_values||[],n=s.operator||Ft[0].value,l=(this._selectSearches[e]||"").toLowerCase(),d=l.length>0,h=a.length>0||i,u=l?r.filter(p=>p.label.toLowerCase().includes(l)):r,f=a.length>=at;return o.html`
1967
2114
  <div class="filter-content">
1968
2115
  <!-- Search input -->
1969
2116
  <div class="search-wrapper">
@@ -2004,7 +2151,7 @@
2004
2151
  </div>
2005
2152
  <ap-radio-group
2006
2153
  direction="horizontal"
2007
- .options=${Ct}
2154
+ .options=${Ft}
2008
2155
  .value=${n}
2009
2156
  @ap-change=${p=>this._onOperatorChange(t,p.detail.value)}
2010
2157
  ></ap-radio-group>
@@ -2060,7 +2207,7 @@
2060
2207
  </div>
2061
2208
  </div>
2062
2209
  </div>
2063
- `}_renderTagsFilter(t){const e=k(t),s=this._getApplied(e),i=this._isSpecialValue(s.values),a=i?[]:s.values||[],r=this._tagInputs[e]||"",n=s.operator||ie[0].value,l=a.length>0||i,d=this._tagSuggestions[e]||[],h=this._tagLoading[e]||!1,u=r.trim().length>0,f=a.length>=st;return o.html`
2210
+ `}_renderTagsFilter(t){const e=k(t),s=this._getApplied(e),i=this._isSpecialValue(s.values),a=i?[]:s.values||[],r=this._tagInputs[e]||"",n=s.operator||ae[0].value,l=a.length>0||i,d=this._tagSuggestions[e]||[],h=this._tagLoading[e]||!1,u=r.trim().length>0,f=a.length>=at;return o.html`
2064
2211
  <div class="filter-content">
2065
2212
  <!-- Search input -->
2066
2213
  <div class="search-wrapper">
@@ -2102,7 +2249,7 @@
2102
2249
  </div>
2103
2250
  <ap-radio-group
2104
2251
  direction="horizontal"
2105
- .options=${ie}
2252
+ .options=${ae}
2106
2253
  .value=${n}
2107
2254
  ?disabled=${i}
2108
2255
  @ap-change=${p=>this._onTagOperatorChange(t,p.detail.value)}
@@ -2178,7 +2325,7 @@
2178
2325
 
2179
2326
  <ap-radio-group
2180
2327
  columns="2"
2181
- .options=${Pt}
2328
+ .options=${Dt}
2182
2329
  .value=${r!=="empty"&&r!=="non-empty"?r:""}
2183
2330
  @ap-change=${p=>this._onDatePreset(t,p.detail.value)}
2184
2331
  ></ap-radio-group>
@@ -2242,7 +2389,7 @@
2242
2389
  <div class="filter-section">
2243
2390
  <span class="section-label">Content</span>
2244
2391
  <ap-radio-group
2245
- .options=${Ft}
2392
+ .options=${Tt}
2246
2393
  .value=${a}
2247
2394
  @ap-change=${p=>this._onContentModeChange(t,p.detail.value)}
2248
2395
  ></ap-radio-group>
@@ -2305,7 +2452,7 @@
2305
2452
  <span class="section-label">Condition</span>
2306
2453
  <ap-radio-group
2307
2454
  direction="horizontal"
2308
- .options=${ie}
2455
+ .options=${ae}
2309
2456
  .value=${a}
2310
2457
  @ap-change=${r=>this._emitFilterChange(t,r.detail.value,i)}
2311
2458
  ></ap-radio-group>
@@ -2330,7 +2477,7 @@
2330
2477
  name="chevron-right"
2331
2478
  .size=${14}
2332
2479
  ></ap-icon>
2333
- <ap-icon name=${ot[e.type]||"file-text"} .size=${14} style="color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82))"></ap-icon>
2480
+ <ap-icon name=${lt[e.type]||"file-text"} .size=${14} style="color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82))"></ap-icon>
2334
2481
  <span>${e.label}</span>
2335
2482
  </div>
2336
2483
  <div class="field-header-actions">
@@ -2354,7 +2501,7 @@
2354
2501
  class="field-item ${h?"has-filter":""} ${f?"disabled":""}"
2355
2502
  @click=${()=>!f&&this._emitFieldSelect(n)}
2356
2503
  >
2357
- <ap-icon name=${ot[n.type]||"file-text"} .size=${14} style="color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82))"></ap-icon>
2504
+ <ap-icon name=${lt[n.type]||"file-text"} .size=${14} style="color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82))"></ap-icon>
2358
2505
  <span class="field-item-label">${n.label}</span>
2359
2506
  <button
2360
2507
  class="field-item-pin ${u?"pinned":""}"
@@ -2401,7 +2548,7 @@
2401
2548
  </button>
2402
2549
  `:o.nothing}
2403
2550
  `:o.nothing}
2404
- `}};T.styles=[J,le,o.css`
2551
+ `}};T.styles=[ee,ce,o.css`
2405
2552
  /* ── Field selection panel ─────────────────────────────── */
2406
2553
 
2407
2554
  .add-field-btn {
@@ -2778,7 +2925,7 @@
2778
2925
  color: var(--ap-primary, oklch(0.578 0.198 268.129));
2779
2926
  background: var(--ap-primary-10, oklch(0.578 0.198 268.129 / 0.1));
2780
2927
  }
2781
- `];L([c.property({type:Array})],T.prototype,"fields",2);L([c.property({type:Object})],T.prototype,"appliedFilters",2);L([c.property({type:Array})],T.prototype,"visibleFields",2);L([c.property()],T.prototype,"mode",2);L([c.property()],T.prototype,"activeFieldKey",2);L([c.property({type:Array})],T.prototype,"pinnedFields",2);L([c.property({type:Object})],T.prototype,"appliedMetadata",2);L([c.property({attribute:!1})],T.prototype,"apiClient",2);L([c.state()],T.prototype,"_showFieldSelection",2);L([c.state()],T.prototype,"_fieldSearch",2);L([c.state()],T.prototype,"_collapsedFields",2);L([c.state()],T.prototype,"_tagInputs",2);L([c.state()],T.prototype,"_tagSuggestions",2);L([c.state()],T.prototype,"_tagLoading",2);L([c.state()],T.prototype,"_datePresets",2);L([c.state()],T.prototype,"_dateFroms",2);L([c.state()],T.prototype,"_dateTos",2);L([c.state()],T.prototype,"_specificModeFields",2);L([c.state()],T.prototype,"_selectSearches",2);T=L([c.customElement("ap-filter-metadata")],T);var ka=Object.defineProperty,Sa=Object.getOwnPropertyDescriptor,ee=(t,e,s,i)=>{for(var a=i>1?void 0:i?Sa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ka(e,s,a),a};let K=class extends o.LitElement{constructor(){super(...arguments),this.selectedStatus=[],this.statusOperator=":=",this.approverValue="",this.approverOperator="~",this.requesterValue="",this.requesterOperator="~",this.dueDatePreset="",this.dueDateFrom="",this.dueDateTo=""}get _hasAnySelection(){return this.selectedStatus.length>0||!!this.approverValue||!!this.requesterValue||!!this.dueDatePreset||!!this.dueDateFrom||!!this.dueDateTo}get _statusHasEmptyValue(){return this.selectedStatus.includes(q)||this.selectedStatus.includes(H)}get _statusHasOnlyEmptyValues(){return this.selectedStatus.length>0&&this.selectedStatus.every(t=>t===q||t===H)}get _dueDateNeedsInputs(){return["before","after","between","specific"].includes(this.dueDatePreset)}_toggleStatus(t){const e=this.selectedStatus.includes(t)?this.selectedStatus.filter(s=>s!==t):[...this.selectedStatus,t];this._emitChange(R.STATUS,e,this.statusOperator)}_handleStatusOperator(t){const e=t.detail.value;this._emitChange(R.STATUS,this.selectedStatus,e)}_clearStatus(){this._emitChange(R.STATUS,[],this.statusOperator)}_handleApproverInput(t){const e=t.target.value;this._emitChange(R.APPROVER,e?[e]:[],this.approverOperator)}_handleApproverOperator(t){const e=t.detail.value;this._emitChange(R.APPROVER,this.approverValue?[this.approverValue]:[],e)}_clearApprover(){this._emitChange(R.APPROVER,[],this.approverOperator)}_handleRequesterInput(t){const e=t.target.value;this._emitChange(R.REQUESTOR,e?[e]:[],this.requesterOperator)}_handleRequesterOperator(t){const e=t.detail.value;this._emitChange(R.REQUESTOR,this.requesterValue?[this.requesterValue]:[],e)}_clearRequester(){this._emitChange(R.REQUESTOR,[],this.requesterOperator)}_handleDueDatePreset(t){const e=t.detail.value,s=this.dueDatePreset===e?"":e;this._emitChange(R.DUE_DATE,s?[s]:[],":")}_handleDueDateFrom(t){const e=t.target.value;this._emitDateChange(e,this.dueDateTo)}_handleDueDateTo(t){const e=t.target.value;this._emitDateChange(this.dueDateFrom,e)}_clearDueDate(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:R.DUE_DATE,values:[],operator:":"},bubbles:!0,composed:!0}))}_emitDateChange(t,e){const s=[];t&&s.push(t),e&&s.push(e),this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:R.DUE_DATE,values:s,operator:t&&e?"..":t?">=":"<="},bubbles:!0,composed:!0}))}_emitChange(t,e,s){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:t,values:e,operator:s},bubbles:!0,composed:!0}))}_renderStatusSection(){const t=this.selectedStatus.length>0;return o.html`
2928
+ `];L([c.property({type:Array})],T.prototype,"fields",2);L([c.property({type:Object})],T.prototype,"appliedFilters",2);L([c.property({type:Array})],T.prototype,"visibleFields",2);L([c.property()],T.prototype,"mode",2);L([c.property()],T.prototype,"activeFieldKey",2);L([c.property({type:Array})],T.prototype,"pinnedFields",2);L([c.property({type:Object})],T.prototype,"appliedMetadata",2);L([c.property({attribute:!1})],T.prototype,"apiClient",2);L([c.state()],T.prototype,"_showFieldSelection",2);L([c.state()],T.prototype,"_fieldSearch",2);L([c.state()],T.prototype,"_collapsedFields",2);L([c.state()],T.prototype,"_tagInputs",2);L([c.state()],T.prototype,"_tagSuggestions",2);L([c.state()],T.prototype,"_tagLoading",2);L([c.state()],T.prototype,"_datePresets",2);L([c.state()],T.prototype,"_dateFroms",2);L([c.state()],T.prototype,"_dateTos",2);L([c.state()],T.prototype,"_specificModeFields",2);L([c.state()],T.prototype,"_selectSearches",2);T=L([c.customElement("ap-filter-metadata")],T);var Aa=Object.defineProperty,Ta=Object.getOwnPropertyDescriptor,te=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ta(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Aa(e,s,a),a};let K=class extends o.LitElement{constructor(){super(...arguments),this.selectedStatus=[],this.statusOperator=":=",this.approverValue="",this.approverOperator="~",this.requesterValue="",this.requesterOperator="~",this.dueDatePreset="",this.dueDateFrom="",this.dueDateTo=""}get _hasAnySelection(){return this.selectedStatus.length>0||!!this.approverValue||!!this.requesterValue||!!this.dueDatePreset||!!this.dueDateFrom||!!this.dueDateTo}get _statusHasEmptyValue(){return this.selectedStatus.includes(H)||this.selectedStatus.includes(G)}get _statusHasOnlyEmptyValues(){return this.selectedStatus.length>0&&this.selectedStatus.every(t=>t===H||t===G)}get _dueDateNeedsInputs(){return["before","after","between","specific"].includes(this.dueDatePreset)}_toggleStatus(t){const e=this.selectedStatus.includes(t)?this.selectedStatus.filter(s=>s!==t):[...this.selectedStatus,t];this._emitChange(R.STATUS,e,this.statusOperator)}_handleStatusOperator(t){const e=t.detail.value;this._emitChange(R.STATUS,this.selectedStatus,e)}_clearStatus(){this._emitChange(R.STATUS,[],this.statusOperator)}_handleApproverInput(t){const e=t.target.value;this._emitChange(R.APPROVER,e?[e]:[],this.approverOperator)}_handleApproverOperator(t){const e=t.detail.value;this._emitChange(R.APPROVER,this.approverValue?[this.approverValue]:[],e)}_clearApprover(){this._emitChange(R.APPROVER,[],this.approverOperator)}_handleRequesterInput(t){const e=t.target.value;this._emitChange(R.REQUESTOR,e?[e]:[],this.requesterOperator)}_handleRequesterOperator(t){const e=t.detail.value;this._emitChange(R.REQUESTOR,this.requesterValue?[this.requesterValue]:[],e)}_clearRequester(){this._emitChange(R.REQUESTOR,[],this.requesterOperator)}_handleDueDatePreset(t){const e=t.detail.value,s=this.dueDatePreset===e?"":e;this._emitChange(R.DUE_DATE,s?[s]:[],":")}_handleDueDateFrom(t){const e=t.target.value;this._emitDateChange(e,this.dueDateTo)}_handleDueDateTo(t){const e=t.target.value;this._emitDateChange(this.dueDateFrom,e)}_clearDueDate(){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:R.DUE_DATE,values:[],operator:":"},bubbles:!0,composed:!0}))}_emitDateChange(t,e){const s=[];t&&s.push(t),e&&s.push(e),this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:R.DUE_DATE,values:s,operator:t&&e?"..":t?">=":"<="},bubbles:!0,composed:!0}))}_emitChange(t,e,s){this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:t,values:e,operator:s},bubbles:!0,composed:!0}))}_renderStatusSection(){const t=this.selectedStatus.length>0;return o.html`
2782
2929
  <div class="filter-section">
2783
2930
  <button
2784
2931
  class="clear-btn"
@@ -2792,7 +2939,7 @@
2792
2939
  <span class="section-label condition-label">Condition</span>
2793
2940
  <ap-radio-group
2794
2941
  direction="horizontal"
2795
- .options=${li}
2942
+ .options=${ci}
2796
2943
  .value=${this.statusOperator}
2797
2944
  ?disabled=${this._statusHasOnlyEmptyValues}
2798
2945
  @ap-change=${this._handleStatusOperator}
@@ -2812,7 +2959,7 @@
2812
2959
 
2813
2960
  <!-- Status options -->
2814
2961
  <div class="options-list short">
2815
- ${ci.map(e=>o.html`
2962
+ ${di.map(e=>o.html`
2816
2963
  <ap-checkbox
2817
2964
  ?checked=${this.selectedStatus.includes(e.value)}
2818
2965
  @ap-toggle=${()=>this._toggleStatus(e.value)}
@@ -2839,7 +2986,7 @@
2839
2986
  <span class="section-label condition-label">Condition</span>
2840
2987
  <ap-radio-group
2841
2988
  direction="horizontal"
2842
- .options=${Wt}
2989
+ .options=${Zt}
2843
2990
  .value=${this.approverOperator}
2844
2991
  @ap-change=${this._handleApproverOperator}
2845
2992
  ></ap-radio-group>
@@ -2866,7 +3013,7 @@
2866
3013
  <span class="section-label condition-label">Condition</span>
2867
3014
  <ap-radio-group
2868
3015
  direction="horizontal"
2869
- .options=${Wt}
3016
+ .options=${Zt}
2870
3017
  .value=${this.requesterOperator}
2871
3018
  @ap-change=${this._handleRequesterOperator}
2872
3019
  ></ap-radio-group>
@@ -2892,7 +3039,7 @@
2892
3039
  <!-- Empty / Not empty radio buttons -->
2893
3040
  <ap-radio-group
2894
3041
  .options=${ye}
2895
- .value=${this.dueDatePreset===q||this.dueDatePreset===H?this.dueDatePreset:""}
3042
+ .value=${this.dueDatePreset===H||this.dueDatePreset===G?this.dueDatePreset:""}
2896
3043
  @ap-change=${this._handleDueDatePreset}
2897
3044
  ></ap-radio-group>
2898
3045
 
@@ -2901,8 +3048,8 @@
2901
3048
  <!-- Date range options -->
2902
3049
  <ap-radio-group
2903
3050
  columns="2"
2904
- .options=${ri}
2905
- .value=${this.dueDatePreset!==q&&this.dueDatePreset!==H?this.dueDatePreset:""}
3051
+ .options=${oi}
3052
+ .value=${this.dueDatePreset!==H&&this.dueDatePreset!==G?this.dueDatePreset:""}
2906
3053
  @ap-change=${this._handleDueDatePreset}
2907
3054
  ></ap-radio-group>
2908
3055
 
@@ -2944,7 +3091,7 @@
2944
3091
  <div class="separator"></div>
2945
3092
  ${this._renderDueDateSection()}
2946
3093
  </div>
2947
- `}};K.styles=[J,le,o.css`
3094
+ `}};K.styles=[ee,ce,o.css`
2948
3095
  .options-list.short {
2949
3096
  max-height: none;
2950
3097
  }
@@ -2963,7 +3110,7 @@
2963
3110
  .mt-12 {
2964
3111
  margin-top: 12px;
2965
3112
  }
2966
- `];ee([c.property({type:Array})],K.prototype,"selectedStatus",2);ee([c.property()],K.prototype,"statusOperator",2);ee([c.property()],K.prototype,"approverValue",2);ee([c.property()],K.prototype,"approverOperator",2);ee([c.property()],K.prototype,"requesterValue",2);ee([c.property()],K.prototype,"requesterOperator",2);ee([c.property()],K.prototype,"dueDatePreset",2);ee([c.property()],K.prototype,"dueDateFrom",2);ee([c.property()],K.prototype,"dueDateTo",2);K=ee([c.customElement("ap-filter-approval")],K);var Ca=Object.defineProperty,Ea=Object.getOwnPropertyDescriptor,te=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ea(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ca(e,s,a),a};const Fa=300;function Aa(t){return t.filter(e=>e.toLowerCase().includes("*")||!t.some(s=>s.toLowerCase().includes("*")&&e.toLowerCase().startsWith(s.slice(0,-1).toLowerCase())))}let G=class extends o.LitElement{constructor(){super(...arguments),this.selected=[],this._search="",this._debouncedSearch="",this._products=[],this._isLoading=!1,this._showAddList=!1,this._addListText=""}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var t;return(t=this._searchInput)==null?void 0:t.focus()})}disconnectedCallback(){super.disconnectedCallback(),this._debounceTimer&&clearTimeout(this._debounceTimer)}get _isSearching(){return this._debouncedSearch.length>0}_emit(t){const e=Aa(t);this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.PRODUCT_REF,values:e,operator:x.IS},bubbles:!0,composed:!0}))}_toggle(t){const s=this.selected.includes(t)?this.selected.filter(i=>i!==t):[...this.selected,t];this._emit(s)}_remove(t){this._emit(this.selected.filter(e=>e!==t))}_clearAll(){this._emit([]),this._search="",this._debouncedSearch="",this._products=[]}_onSearchInput(t){const e=t.target.value;this._search=e,this._debounceTimer&&clearTimeout(this._debounceTimer),this._debounceTimer=setTimeout(()=>{const s=e.trim().toLowerCase();this._debouncedSearch=s,s?this._fetchProducts(s):(this._products=[],this._isLoading=!1)},Fa)}_clearSearch(){this._search="",this._debouncedSearch="",this._products=[],this._isLoading=!1,this._debounceTimer&&clearTimeout(this._debounceTimer)}async _fetchProducts(t){if(this.apiClient){this._isLoading=!0;try{const e=await this.apiClient.request("/products",{q:`reference~^${t}`});this._debouncedSearch===t&&(this._products=e.products??[])}catch{this._debouncedSearch===t&&(this._products=[])}finally{this._debouncedSearch===t&&(this._isLoading=!1)}}}_openAddList(){this._showAddList=!0,this._addListText=""}_closeAddList(){this._showAddList=!1,this._addListText=""}_onAddListInput(t){this._addListText=t.target.value}_onAddListKeydown(t){t.key==="Enter"&&!t.shiftKey&&t.stopPropagation()}_submitAddList(){const t=this._addListText.split(`
3113
+ `];te([c.property({type:Array})],K.prototype,"selectedStatus",2);te([c.property()],K.prototype,"statusOperator",2);te([c.property()],K.prototype,"approverValue",2);te([c.property()],K.prototype,"approverOperator",2);te([c.property()],K.prototype,"requesterValue",2);te([c.property()],K.prototype,"requesterOperator",2);te([c.property()],K.prototype,"dueDatePreset",2);te([c.property()],K.prototype,"dueDateFrom",2);te([c.property()],K.prototype,"dueDateTo",2);K=te([c.customElement("ap-filter-approval")],K);var Ma=Object.defineProperty,La=Object.getOwnPropertyDescriptor,se=(t,e,s,i)=>{for(var a=i>1?void 0:i?La(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ma(e,s,a),a};const Oa=300;function Pa(t){return t.filter(e=>e.toLowerCase().includes("*")||!t.some(s=>s.toLowerCase().includes("*")&&e.toLowerCase().startsWith(s.slice(0,-1).toLowerCase())))}let Y=class extends o.LitElement{constructor(){super(...arguments),this.selected=[],this._search="",this._debouncedSearch="",this._products=[],this._isLoading=!1,this._showAddList=!1,this._addListText=""}connectedCallback(){super.connectedCallback(),this.updateComplete.then(()=>{var t;return(t=this._searchInput)==null?void 0:t.focus()})}disconnectedCallback(){super.disconnectedCallback(),this._debounceTimer&&clearTimeout(this._debounceTimer)}get _isSearching(){return this._debouncedSearch.length>0}_emit(t){const e=Pa(t);this.dispatchEvent(new CustomEvent("filter-change",{detail:{key:v.PRODUCT_REF,values:e,operator:x.IS},bubbles:!0,composed:!0}))}_toggle(t){const s=this.selected.includes(t)?this.selected.filter(i=>i!==t):[...this.selected,t];this._emit(s)}_remove(t){this._emit(this.selected.filter(e=>e!==t))}_clearAll(){this._emit([]),this._search="",this._debouncedSearch="",this._products=[]}_onSearchInput(t){const e=t.target.value;this._search=e,this._debounceTimer&&clearTimeout(this._debounceTimer),this._debounceTimer=setTimeout(()=>{const s=e.trim().toLowerCase();this._debouncedSearch=s,s?this._fetchProducts(s):(this._products=[],this._isLoading=!1)},Oa)}_clearSearch(){this._search="",this._debouncedSearch="",this._products=[],this._isLoading=!1,this._debounceTimer&&clearTimeout(this._debounceTimer)}async _fetchProducts(t){if(this.apiClient){this._isLoading=!0;try{const e=await this.apiClient.request("/products",{q:`reference~^${t}`});this._debouncedSearch===t&&(this._products=e.products??[])}catch{this._debouncedSearch===t&&(this._products=[])}finally{this._debouncedSearch===t&&(this._isLoading=!1)}}}_openAddList(){this._showAddList=!0,this._addListText=""}_closeAddList(){this._showAddList=!1,this._addListText=""}_onAddListInput(t){this._addListText=t.target.value}_onAddListKeydown(t){t.key==="Enter"&&!t.shiftKey&&t.stopPropagation()}_submitAddList(){const t=this._addListText.split(`
2967
3114
  `).map(e=>e.trim()).filter(e=>e!=="");if(t.length>0){const e=new Set(this.selected),s=[...this.selected,...t.filter(i=>!e.has(i))];this._emit(s)}this._closeAddList()}_renderProductItem(t){const e=this.selected.includes(t);return o.html`
2968
3115
  <div
2969
3116
  class="product-item"
@@ -3083,7 +3230,7 @@
3083
3230
  </div>
3084
3231
  </div>
3085
3232
  `:o.nothing}
3086
- `}};G.styles=[J,le,o.css`
3233
+ `}};Y.styles=[ee,ce,o.css`
3087
3234
  .product-item {
3088
3235
  display: flex;
3089
3236
  align-items: center;
@@ -3322,8 +3469,9 @@
3322
3469
  color: var(--ap-muted-foreground, oklch(0.685 0.033 249.82));
3323
3470
  margin-left: 4px;
3324
3471
  }
3325
- `];te([c.property({type:Array})],G.prototype,"selected",2);te([c.property({attribute:!1})],G.prototype,"apiClient",2);te([c.query(".product-search")],G.prototype,"_searchInput",2);te([c.state()],G.prototype,"_search",2);te([c.state()],G.prototype,"_debouncedSearch",2);te([c.state()],G.prototype,"_products",2);te([c.state()],G.prototype,"_isLoading",2);te([c.state()],G.prototype,"_showAddList",2);te([c.state()],G.prototype,"_addListText",2);G=te([c.customElement("ap-filter-product-ref")],G);var Ta=Object.defineProperty,Ma=Object.getOwnPropertyDescriptor,A=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ma(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ta(e,s,a),a};let F=class extends o.LitElement{constructor(){super(...arguments),this.totalCount=0,this.totalFolderCount=0,this.isLoading=!1,this.showUpload=!1,this.sortBy="created_at",this.sortDirection="desc",this.sortOptions=It,this.filters={metadata:{pinned:[],visible:[],applied:{}},pinned:[],visible:[],applied:{}},this.labels=[],this.tags=[],this.metadataFields=[],this.pinnedFilters=[],this.forcedFilterKeys=[],this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null,this._outsideClickHandler=t=>{const e=t.composedPath();if(this._externalTrigger&&e.some(r=>{var n;return r instanceof HTMLElement&&r.classList.contains("chip")&&((n=r.closest)==null?void 0:n.call(r,"ap-filters-bar"))}))return;const s=this._openFilter&&e.some(a=>a instanceof HTMLElement?a.classList.contains("popover-anchor")||a.classList.contains("popover-panel"):!1),i=(this._showDropdown||this._showMetadataSelector)&&e.some(a=>a instanceof HTMLElement&&(a.classList.contains("dropdown-menu")||a.classList.contains("filter-dropdown")||a.classList.contains("metadata-selector-overlay")));s||i||(this._openFilter&&(this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null),(this._showDropdown||this._showMetadataSelector)&&(this._showDropdown=!1,this._showMetadataSelector=!1))}}connectedCallback(){super.connectedCallback(),document.addEventListener("mousedown",this._outsideClickHandler)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("mousedown",this._outsideClickHandler)}updated(t){if((t.has("_openFilter")||t.has("_externalTrigger")||t.has("_openMetadataField"))&&this.dispatchEvent(new CustomEvent("filter-panel-change",{detail:{key:this._externalTrigger?this._openFilter:null,metadataFieldKey:this._externalTrigger?this._openMetadataField:null},bubbles:!0,composed:!0})),this._externalTrigger&&this._externalLeft!=null&&(t.has("_openFilter")||t.has("_externalLeft")||t.has("_openMetadataField"))){const e=this.renderRoot.querySelector(".popover-panel");if(e){const s=e.closest(".popover-anchor"),i=s?s.offsetWidth:this.offsetWidth,a=e.offsetWidth;this._externalLeft+a>i-8&&(e.style.left=`${Math.max(8,i-a-8)}px`)}}}_closeAllDropdowns(){var t;this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null,(t=this._sortDropdown)==null||t.close()}_handleUploadClick(){this.dispatchEvent(new CustomEvent("upload-click",{bubbles:!0,composed:!0}))}_toggleDropdown(){const t=this._showDropdown;this._closeAllDropdowns(),this._showDropdown=!t}_toggleMetadataSelector(){this._showMetadataSelector=!this._showMetadataSelector}closeFilterPanel(){this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null}openFilterPanel(t,e=!1,s,i){if(e&&this._externalTrigger&&this._openFilter===t&&!this._openMetadataField){this.closeFilterPanel();return}if(!e&&!this._isFilterActive(t)){this._showDropdown=!1,this._showMetadataSelector=!1,this.dispatchEvent(new CustomEvent("filter-pending",{detail:{key:t},bubbles:!0,composed:!0}));return}this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter=t,this._openMetadataField=null,this._externalTrigger=e,this._externalLeft=s??null,this._externalTop=i??null}_handleSortOpen(){this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null}_handleSort(t){this.dispatchEvent(new CustomEvent("sort-change",{detail:t.detail,bubbles:!0,composed:!0}))}_toggleSortDirection(){const t=this.sortDirection==="asc"?"desc":"asc";this.dispatchEvent(new CustomEvent("sort-direction-change",{detail:{value:t},bubbles:!0,composed:!0}))}_isFilterActive(t){return t in this.filters.applied&&this.filters.applied[t]!==void 0}_handleFilterChange(t){t.stopPropagation();const{key:e,values:s,operator:i}=t.detail;this.dispatchEvent(new CustomEvent("filter-update",{detail:{key:e,values:s,operator:i},bubbles:!0,composed:!0}))}_handleMetadataFilterChange(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("metadata-filter-change",{detail:t.detail,bubbles:!0,composed:!0}))}_handleMetadataFieldToggle(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("metadata-field-toggle",{detail:t.detail,bubbles:!0,composed:!0}))}_handleMetadataFieldSelect(t){t.stopPropagation(),this._openMetadataField=t.detail.fieldKey}_handleMetadataSelectorFieldSelect(t){var s;t.stopPropagation();const e=t.detail.fieldKey;if(this._showMetadataSelector=!1,this._showDropdown=!1,!(e in(((s=this.filters.metadata)==null?void 0:s.applied)||{}))){this.dispatchEvent(new CustomEvent("filter-pending",{detail:{metadataFieldKey:e},bubbles:!0,composed:!0}));return}this._openFilter="metadata",this._openMetadataField=e}_handleMetadataPin(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("metadata-pin",{detail:t.detail,bubbles:!0,composed:!0}))}openMetadataFieldPanel(t,e=!1,s,i){if(e&&this._externalTrigger&&this._openMetadataField===t){this.closeFilterPanel();return}this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter="metadata",this._openMetadataField=t,this._externalTrigger=e,this._externalLeft=s??null,this._externalTop=i??null}_getMetadataFieldLabel(t){for(const e of this.metadataFields)if(`${ft[e.type]||""}${e.key}`===t)return e.label;return t}_togglePin(t,e){e.stopPropagation();const s=this.pinnedFilters.includes(t);this.dispatchEvent(new CustomEvent("filter-pin",{detail:{key:t,pinned:!s},bubbles:!0,composed:!0}))}_getFilterIcon(t){const e=Lt.find(s=>s.key===t);return(e==null?void 0:e.icon)||"filter"}_renderFilterContent(t){var s,i,a;const e=this.filters.applied;switch(t){case"type":{const r=e.type;return o.html`<ap-filter-type
3472
+ `];se([c.property({type:Array})],Y.prototype,"selected",2);se([c.property({attribute:!1})],Y.prototype,"apiClient",2);se([c.query(".product-search")],Y.prototype,"_searchInput",2);se([c.state()],Y.prototype,"_search",2);se([c.state()],Y.prototype,"_debouncedSearch",2);se([c.state()],Y.prototype,"_products",2);se([c.state()],Y.prototype,"_isLoading",2);se([c.state()],Y.prototype,"_showAddList",2);se([c.state()],Y.prototype,"_addListText",2);Y=se([c.customElement("ap-filter-product-ref")],Y);var Ia=Object.defineProperty,Da=Object.getOwnPropertyDescriptor,A=(t,e,s,i)=>{for(var a=i>1?void 0:i?Da(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ia(e,s,a),a};let F=class extends o.LitElement{constructor(){super(...arguments),this.totalCount=0,this.totalFolderCount=0,this.isLoading=!1,this.showUpload=!1,this.sortBy="created_at",this.sortDirection="desc",this.sortOptions=zt,this.filters={metadata:{pinned:[],visible:[],applied:{}},pinned:[],visible:[],applied:{}},this.labels=[],this.tags=[],this.fileTypes=[],this.metadataFields=[],this.pinnedFilters=[],this.forcedFilterKeys=[],this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null,this._outsideClickHandler=t=>{const e=t.composedPath();if(this._externalTrigger&&e.some(r=>{var n;return r instanceof HTMLElement&&r.classList.contains("chip")&&((n=r.closest)==null?void 0:n.call(r,"ap-filters-bar"))}))return;const s=this._openFilter&&e.some(a=>a instanceof HTMLElement?a.classList.contains("popover-anchor")||a.classList.contains("popover-panel"):!1),i=(this._showDropdown||this._showMetadataSelector)&&e.some(a=>a instanceof HTMLElement&&(a.classList.contains("dropdown-menu")||a.classList.contains("filter-dropdown")||a.classList.contains("metadata-selector-overlay")));s||i||(this._openFilter&&(this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null),(this._showDropdown||this._showMetadataSelector)&&(this._showDropdown=!1,this._showMetadataSelector=!1))}}connectedCallback(){super.connectedCallback(),document.addEventListener("mousedown",this._outsideClickHandler)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("mousedown",this._outsideClickHandler)}updated(t){if((t.has("_openFilter")||t.has("_externalTrigger")||t.has("_openMetadataField"))&&this.dispatchEvent(new CustomEvent("filter-panel-change",{detail:{key:this._externalTrigger?this._openFilter:null,metadataFieldKey:this._externalTrigger?this._openMetadataField:null},bubbles:!0,composed:!0})),this._externalTrigger&&this._externalLeft!=null&&(t.has("_openFilter")||t.has("_externalLeft")||t.has("_openMetadataField"))){const e=this.renderRoot.querySelector(".popover-panel");if(e){const s=e.closest(".popover-anchor"),i=s?s.offsetWidth:this.offsetWidth,a=e.offsetWidth;this._externalLeft+a>i-8&&(e.style.left=`${Math.max(8,i-a-8)}px`)}}}_closeAllDropdowns(){var t;this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null,(t=this._sortDropdown)==null||t.close()}_handleUploadClick(){this.dispatchEvent(new CustomEvent("upload-click",{bubbles:!0,composed:!0}))}_toggleDropdown(){const t=this._showDropdown;this._closeAllDropdowns(),this._showDropdown=!t}_toggleMetadataSelector(){this._showMetadataSelector=!this._showMetadataSelector}closeFilterPanel(){this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null}openFilterPanel(t,e=!1,s,i){if(e&&this._externalTrigger&&this._openFilter===t&&!this._openMetadataField){this.closeFilterPanel();return}if(!e&&!this._isFilterActive(t)){this._showDropdown=!1,this._showMetadataSelector=!1,this.dispatchEvent(new CustomEvent("filter-pending",{detail:{key:t},bubbles:!0,composed:!0}));return}this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter=t,this._openMetadataField=null,this._externalTrigger=e,this._externalLeft=s??null,this._externalTop=i??null}_handleSortOpen(){this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null}_handleSort(t){this.dispatchEvent(new CustomEvent("sort-change",{detail:t.detail,bubbles:!0,composed:!0}))}_toggleSortDirection(){const t=this.sortDirection==="asc"?"desc":"asc";this.dispatchEvent(new CustomEvent("sort-direction-change",{detail:{value:t},bubbles:!0,composed:!0}))}_isFilterActive(t){return t in this.filters.applied&&this.filters.applied[t]!==void 0}_handleFilterChange(t){t.stopPropagation();const{key:e,values:s,operator:i}=t.detail;this.dispatchEvent(new CustomEvent("filter-update",{detail:{key:e,values:s,operator:i},bubbles:!0,composed:!0}))}_handleMetadataFilterChange(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("metadata-filter-change",{detail:t.detail,bubbles:!0,composed:!0}))}_handleMetadataFieldToggle(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("metadata-field-toggle",{detail:t.detail,bubbles:!0,composed:!0}))}_handleMetadataFieldSelect(t){t.stopPropagation(),this._openMetadataField=t.detail.fieldKey}_handleMetadataSelectorFieldSelect(t){var s;t.stopPropagation();const e=t.detail.fieldKey;if(this._showMetadataSelector=!1,this._showDropdown=!1,!(e in(((s=this.filters.metadata)==null?void 0:s.applied)||{}))){this.dispatchEvent(new CustomEvent("filter-pending",{detail:{metadataFieldKey:e},bubbles:!0,composed:!0}));return}this._openFilter="metadata",this._openMetadataField=e}_handleMetadataPin(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("metadata-pin",{detail:t.detail,bubbles:!0,composed:!0}))}openMetadataFieldPanel(t,e=!1,s,i){if(e&&this._externalTrigger&&this._openMetadataField===t){this.closeFilterPanel();return}this._showDropdown=!1,this._showMetadataSelector=!1,this._openFilter="metadata",this._openMetadataField=t,this._externalTrigger=e,this._externalLeft=s??null,this._externalTop=i??null}_getMetadataFieldLabel(t){for(const e of this.metadataFields)if(`${vt[e.type]||""}${e.key}`===t)return e.label;return t}_togglePin(t,e){e.stopPropagation();const s=this.pinnedFilters.includes(t);this.dispatchEvent(new CustomEvent("filter-pin",{detail:{key:t,pinned:!s},bubbles:!0,composed:!0}))}_getFilterIcon(t){const e=Pt.find(s=>s.key===t);return(e==null?void 0:e.icon)||"filter"}_renderFilterContent(t){var s,i,a;const e=this.filters.applied;switch(t){case"type":{const r=e.type;return o.html`<ap-filter-type
3326
3473
  .selected=${(r==null?void 0:r.values)||[]}
3474
+ .fileTypes=${this.fileTypes}
3327
3475
  @filter-change=${this._handleFilterChange}
3328
3476
  ></ap-filter-type>`}case"tags":{const r=e.tags;return o.html`<ap-filter-tags
3329
3477
  .tags=${this.tags}
@@ -3449,7 +3597,7 @@
3449
3597
  </button>
3450
3598
  ${this._showDropdown?o.html`
3451
3599
  <div class="dropdown-menu">
3452
- ${Lt.filter(e=>!this.forcedFilterKeys.includes(e.key)).map(e=>this._renderFilterButton(e))}
3600
+ ${Pt.filter(e=>!this.forcedFilterKeys.includes(e.key)).map(e=>this._renderFilterButton(e))}
3453
3601
  </div>
3454
3602
  `:o.nothing}
3455
3603
  </div>
@@ -3488,7 +3636,7 @@
3488
3636
  ${this._getMetadataFieldLabel(this._openMetadataField)}
3489
3637
  `:o.html`
3490
3638
  <ap-icon name=${this._getFilterIcon(this._openFilter)} .size=${16}></ap-icon>
3491
- ${Me[this._openFilter]||this._openFilter}
3639
+ ${Le[this._openFilter]||this._openFilter}
3492
3640
  `}
3493
3641
  <button class="anchor-close" @click=${()=>{this._openFilter=null,this._openMetadataField=null,this._externalTrigger=!1,this._externalLeft=null,this._externalTop=null}} title="Close">
3494
3642
  <ap-icon name="close" .size=${14}></ap-icon>
@@ -3838,10 +3986,10 @@
3838
3986
  border-radius: 8px;
3839
3987
  top: 0;
3840
3988
  }
3841
- `;A([c.property({type:Number})],F.prototype,"totalCount",2);A([c.property({type:Number})],F.prototype,"totalFolderCount",2);A([c.property({type:Boolean})],F.prototype,"isLoading",2);A([c.property({type:Boolean})],F.prototype,"showUpload",2);A([c.property()],F.prototype,"sortBy",2);A([c.property()],F.prototype,"sortDirection",2);A([c.property({type:Array})],F.prototype,"sortOptions",2);A([c.property({type:Object})],F.prototype,"filters",2);A([c.property({type:Array})],F.prototype,"labels",2);A([c.property({type:Array})],F.prototype,"tags",2);A([c.property({type:Array})],F.prototype,"metadataFields",2);A([c.property({type:Array})],F.prototype,"pinnedFilters",2);A([c.property({type:Array})],F.prototype,"forcedFilterKeys",2);A([c.property({attribute:!1})],F.prototype,"apiClient",2);A([c.query("ap-dropdown")],F.prototype,"_sortDropdown",2);A([c.state()],F.prototype,"_showDropdown",2);A([c.state()],F.prototype,"_showMetadataSelector",2);A([c.state()],F.prototype,"_openFilter",2);A([c.state()],F.prototype,"_openMetadataField",2);A([c.state()],F.prototype,"_externalTrigger",2);A([c.state()],F.prototype,"_externalLeft",2);A([c.state()],F.prototype,"_externalTop",2);F=A([c.customElement("ap-content-toolbar")],F);var La=Object.defineProperty,Oa=Object.getOwnPropertyDescriptor,j=(t,e,s,i)=>{for(var a=i>1?void 0:i?Oa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&La(e,s,a),a};let D=class extends o.LitElement{constructor(){super(...arguments),this.appliedFilters={},this.appliedMetadata={},this.forcedFilters={},this.metadataFields=[],this.pinnedFilters=[],this.pinnedMetadataFields=[],this.tags=[],this.labels=[],this.activeFilter=null,this.activeMetadataField=null,this.pendingFilter=null,this.pendingMetadataField=null}_mapTypeLabel(t){var e;return((e=ls.find(s=>s.value===t))==null?void 0:e.label)||t}_getSizeSummary(t){if(t.values.length===0)return"";const e=t.values[0],[s,i]=e.split(".."),a=s?parseFloat(s):null,r=i?parseFloat(i):null,n=l=>l>=1e3?`${(l/1e3).toFixed(l%1e3===0?0:1)} GB`:`${l} MB`;return a!==null&&r!==null?`${n(a)} – ${n(r)}`:a!==null?`> ${n(a)}`:r!==null?`< ${n(r)}`:""}_getFilterSummary(t,e){if(t.type==="string"){const s=t;if(s.values.length===0)return"";if(e===v.SIZE)return this._getSizeSummary(s);if(e===v.COLOR){const a=s.values.map(r=>r.split(" ")[0]).filter(Boolean);return a.length===0?"":a.length===1?a[0]:`${a[0]} +${a.length-1}`}const i=e===v.TYPE?a=>this._mapTypeLabel(a):e===v.TAGS?a=>{var r;return((r=this.tags.find(n=>n.sid===a))==null?void 0:r.label)||a}:e===v.LABELS?a=>{var r;return((r=this.labels.find(n=>n.sid===a))==null?void 0:r.name)||a}:a=>a;return s.values.length===1?i(s.values[0]):`${i(s.values[0])} +${s.values.length-1}`}if(t.type==="date")return this._getDateSummary(t);if(typeof t=="object"&&"resolution"in t){const s=t,i=[...s.resolution,...s.orientation,...s.faces];return i.length===0?"":i.length===1?i[0]:`${i[0]} +${i.length-1}`}return""}_getDateSummary(t){var n,l;const e=((n=cs.find(d=>d.value===t.field))==null?void 0:n.label)||t.field,s=[...Pt,...ds],i=t.preset?((l=s.find(d=>d.value===t.preset))==null?void 0:l.label)||t.preset:"",a=d=>{try{return d.split("T")[0]}catch{return d}};let r="";switch(t.kind){case"preset":r=i;break;case"before":r=t.to?`Before ${a(t.to)}`:i;break;case"after":r=t.from?`After ${a(t.from)}`:i;break;case"between":t.from&&t.to?r=`${a(t.from)} – ${a(t.to)}`:t.from?r=`After ${a(t.from)}`:t.to&&(r=`Before ${a(t.to)}`);break;case"specific":r=t.from?a(t.from):"";break;default:r=i}return r?`${e}: ${r}`:""}_getFilterIcon(t){var e;return((e=Lt.find(s=>s.key===t))==null?void 0:e.icon)||"filter"}_getMetadataLabel(t){const e=this._stripMetadataPrefix(t),s=this.metadataFields.find(i=>i.key===e);return(s==null?void 0:s.label)||e}_getMetadataIcon(t){const e=this._stripMetadataPrefix(t),s=this.metadataFields.find(i=>i.key===e);return s&&ot[s.type]||"file-text"}_stripMetadataPrefix(t){for(const e of as)if(t.startsWith(e))return t.slice(e.length);return t}_removeFilter(t){this.dispatchEvent(new CustomEvent("filter-remove",{detail:{key:t},bubbles:!0,composed:!0}))}_removeMetadataFilter(t){this.dispatchEvent(new CustomEvent("metadata-filter-remove",{detail:{fieldKey:t},bubbles:!0,composed:!0}))}_clearAll(){this.dispatchEvent(new CustomEvent("filters-clear-all",{bubbles:!0,composed:!0}))}_openFilter(t,e){const i=e.currentTarget.getBoundingClientRect();this.dispatchEvent(new CustomEvent("filter-open",{detail:{key:t,chipRect:{left:i.left,right:i.right,bottom:i.bottom,width:i.width}},bubbles:!0,composed:!0}))}_openMetadataFilter(t,e){const i=e.currentTarget.getBoundingClientRect();this.dispatchEvent(new CustomEvent("metadata-filter-open",{detail:{fieldKey:t,chipRect:{left:i.left,right:i.right,bottom:i.bottom,width:i.width}},bubbles:!0,composed:!0}))}_renderForcedChip(t,e){const s=this._getFilterSummary(e,t),i=e.type==="date";return o.html`
3989
+ `;A([c.property({type:Number})],F.prototype,"totalCount",2);A([c.property({type:Number})],F.prototype,"totalFolderCount",2);A([c.property({type:Boolean})],F.prototype,"isLoading",2);A([c.property({type:Boolean})],F.prototype,"showUpload",2);A([c.property()],F.prototype,"sortBy",2);A([c.property()],F.prototype,"sortDirection",2);A([c.property({type:Array})],F.prototype,"sortOptions",2);A([c.property({type:Object})],F.prototype,"filters",2);A([c.property({type:Array})],F.prototype,"labels",2);A([c.property({type:Array})],F.prototype,"tags",2);A([c.property({type:Array})],F.prototype,"fileTypes",2);A([c.property({type:Array})],F.prototype,"metadataFields",2);A([c.property({type:Array})],F.prototype,"pinnedFilters",2);A([c.property({type:Array})],F.prototype,"forcedFilterKeys",2);A([c.property({attribute:!1})],F.prototype,"apiClient",2);A([c.query("ap-dropdown")],F.prototype,"_sortDropdown",2);A([c.state()],F.prototype,"_showDropdown",2);A([c.state()],F.prototype,"_showMetadataSelector",2);A([c.state()],F.prototype,"_openFilter",2);A([c.state()],F.prototype,"_openMetadataField",2);A([c.state()],F.prototype,"_externalTrigger",2);A([c.state()],F.prototype,"_externalLeft",2);A([c.state()],F.prototype,"_externalTop",2);F=A([c.customElement("ap-content-toolbar")],F);var za=Object.defineProperty,Ra=Object.getOwnPropertyDescriptor,B=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ra(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&za(e,s,a),a};let D=class extends o.LitElement{constructor(){super(...arguments),this.appliedFilters={},this.appliedMetadata={},this.forcedFilters={},this.metadataFields=[],this.pinnedFilters=[],this.pinnedMetadataFields=[],this.tags=[],this.labels=[],this.activeFilter=null,this.activeMetadataField=null,this.pendingFilter=null,this.pendingMetadataField=null}_mapTypeLabel(t){var i;const e=(i=ct.find(a=>a.value===t))==null?void 0:i.label;if(e)return e;const s=t.indexOf("_");return s!==-1?t.slice(s+1).toUpperCase():t}_getSizeSummary(t){if(t.values.length===0)return"";const e=t.values[0],[s,i]=e.split(".."),a=s?parseFloat(s):null,r=i?parseFloat(i):null,n=l=>l>=1e3?`${(l/1e3).toFixed(l%1e3===0?0:1)} GB`:`${l} MB`;return a!==null&&r!==null?`${n(a)} – ${n(r)}`:a!==null?`> ${n(a)}`:r!==null?`< ${n(r)}`:""}_getFilterSummary(t,e){if(t.type==="string"){const s=t;if(s.values.length===0)return"";if(e===v.SIZE)return this._getSizeSummary(s);if(e===v.COLOR){const a=s.values.map(r=>r.split(" ")[0]).filter(Boolean);return a.length===0?"":a.length===1?a[0]:`${a[0]} +${a.length-1}`}const i=e===v.TYPE?a=>this._mapTypeLabel(a):e===v.TAGS?a=>{var r;return((r=this.tags.find(n=>n.sid===a))==null?void 0:r.label)||a}:e===v.LABELS?a=>{var r;return((r=this.labels.find(n=>n.sid===a))==null?void 0:r.name)||a}:a=>a;return s.values.length===1?i(s.values[0]):`${i(s.values[0])} +${s.values.length-1}`}if(t.type==="date")return this._getDateSummary(t);if(typeof t=="object"&&"resolution"in t){const s=t,i=[...s.resolution,...s.orientation,...s.faces];return i.length===0?"":i.length===1?i[0]:`${i[0]} +${i.length-1}`}return""}_getDateSummary(t){var n,l;const e=((n=ds.find(d=>d.value===t.field))==null?void 0:n.label)||t.field,s=[...Dt,...ps],i=t.preset?((l=s.find(d=>d.value===t.preset))==null?void 0:l.label)||t.preset:"",a=d=>{try{return d.split("T")[0]}catch{return d}};let r="";switch(t.kind){case"preset":r=i;break;case"before":r=t.to?`Before ${a(t.to)}`:i;break;case"after":r=t.from?`After ${a(t.from)}`:i;break;case"between":t.from&&t.to?r=`${a(t.from)} – ${a(t.to)}`:t.from?r=`After ${a(t.from)}`:t.to&&(r=`Before ${a(t.to)}`);break;case"specific":r=t.from?a(t.from):"";break;default:r=i}return r?`${e}: ${r}`:""}_getFilterIcon(t){var e;return((e=Pt.find(s=>s.key===t))==null?void 0:e.icon)||"filter"}_getMetadataLabel(t){const e=this._stripMetadataPrefix(t),s=this.metadataFields.find(i=>i.key===e);return(s==null?void 0:s.label)||e}_getMetadataIcon(t){const e=this._stripMetadataPrefix(t),s=this.metadataFields.find(i=>i.key===e);return s&&lt[s.type]||"file-text"}_stripMetadataPrefix(t){for(const e of os)if(t.startsWith(e))return t.slice(e.length);return t}_removeFilter(t){this.dispatchEvent(new CustomEvent("filter-remove",{detail:{key:t},bubbles:!0,composed:!0}))}_removeMetadataFilter(t){this.dispatchEvent(new CustomEvent("metadata-filter-remove",{detail:{fieldKey:t},bubbles:!0,composed:!0}))}_clearAll(){this.dispatchEvent(new CustomEvent("filters-clear-all",{bubbles:!0,composed:!0}))}_openFilter(t,e){const i=e.currentTarget.getBoundingClientRect();this.dispatchEvent(new CustomEvent("filter-open",{detail:{key:t,chipRect:{left:i.left,right:i.right,bottom:i.bottom,width:i.width}},bubbles:!0,composed:!0}))}_openMetadataFilter(t,e){const i=e.currentTarget.getBoundingClientRect();this.dispatchEvent(new CustomEvent("metadata-filter-open",{detail:{fieldKey:t,chipRect:{left:i.left,right:i.right,bottom:i.bottom,width:i.width}},bubbles:!0,composed:!0}))}_renderForcedChip(t,e){const s=this._getFilterSummary(e,t),i=e.type==="date";return o.html`
3842
3990
  <span class="chip forced">
3843
3991
  ${(i||t===v.TYPE||t===v.SIZE)&&s?o.html`<span class="chip-label">${s}</span>`:o.html`
3844
- <span class="chip-label">${Me[t]||t}</span>
3992
+ <span class="chip-label">${Le[t]||t}</span>
3845
3993
  ${s?o.html`<span class="chip-summary">${s}</span>`:o.nothing}
3846
3994
  `}
3847
3995
  <span class="chip-lock">
@@ -3851,7 +3999,7 @@
3851
3999
  `}_renderFilterChip(t,e){if(!e)return o.html`
3852
4000
  <span class="chip pinned-empty ${t===this.activeFilter?"active":""}" @click=${a=>this._openFilter(t,a)}>
3853
4001
  <span class="chip-icon"><ap-icon name=${this._getFilterIcon(t)} .size=${16}></ap-icon></span>
3854
- <span class="chip-label">${Me[t]||t}</span>
4002
+ <span class="chip-label">${Le[t]||t}</span>
3855
4003
  <span class="chip-chevron"><ap-icon name="chevron-down" .size=${14}></ap-icon></span>
3856
4004
  </span>
3857
4005
  `;const s=this._getFilterSummary(e,t),i=e.type==="date";return o.html`
@@ -3859,7 +4007,7 @@
3859
4007
  ${(i||t===v.TYPE||t===v.SIZE)&&s?o.html`
3860
4008
  <span class="chip-icon"><ap-icon name=${this._getFilterIcon(t)} .size=${16}></ap-icon></span>
3861
4009
  <span class="chip-label">${s}</span>`:o.html`
3862
- <span class="chip-label">${Me[t]||t}</span>
4010
+ <span class="chip-label">${Le[t]||t}</span>
3863
4011
  ${s?o.html`<span class="chip-summary">${s}</span>`:o.nothing}
3864
4012
  `}
3865
4013
  <button class="chip-remove" @click=${a=>{a.stopPropagation(),this._removeFilter(t)}} title="Remove filter">
@@ -3881,7 +4029,7 @@
3881
4029
  <ap-icon name="close" .size=${12}></ap-icon>
3882
4030
  </button>
3883
4031
  </span>
3884
- `}render(){const t=He(this.forcedFilters),e=new Set(Object.keys(t)),s=Object.keys(this.appliedFilters).filter(g=>!e.has(g)),i=Object.keys(this.appliedMetadata),a=new Set(this.pinnedFilters),r=new Set(this.pinnedMetadataFields),n=this.pinnedFilters.filter(g=>!e.has(g)),l=s.filter(g=>!a.has(g)),d=i.filter(g=>!r.has(g)),h=this.pendingFilter&&!a.has(this.pendingFilter)&&!(this.pendingFilter in this.appliedFilters),u=this.pendingMetadataField&&!r.has(this.pendingMetadataField)&&!(this.pendingMetadataField in this.appliedMetadata),f=s.length+i.length>0;return e.size+n.length+this.pinnedMetadataFields.length+l.length+d.length+(h?1:0)+(u?1:0)===0?o.nothing:o.html`
4032
+ `}render(){const t=Ge(this.forcedFilters),e=new Set(Object.keys(t)),s=Object.keys(this.appliedFilters).filter(g=>!e.has(g)),i=Object.keys(this.appliedMetadata),a=new Set(this.pinnedFilters),r=new Set(this.pinnedMetadataFields),n=this.pinnedFilters.filter(g=>!e.has(g)),l=s.filter(g=>!a.has(g)),d=i.filter(g=>!r.has(g)),h=this.pendingFilter&&!a.has(this.pendingFilter)&&!(this.pendingFilter in this.appliedFilters),u=this.pendingMetadataField&&!r.has(this.pendingMetadataField)&&!(this.pendingMetadataField in this.appliedMetadata),f=s.length+i.length>0;return e.size+n.length+this.pinnedMetadataFields.length+l.length+d.length+(h?1:0)+(u?1:0)===0?o.nothing:o.html`
3885
4033
  <div class="chips-row">
3886
4034
  <div class="chips">
3887
4035
  ${[...e].map(g=>this._renderForcedChip(g,t[g]))}
@@ -3891,7 +4039,7 @@
3891
4039
  ${h?o.html`
3892
4040
  <span class="chip pinned-empty active pending" @click=${g=>this._openFilter(this.pendingFilter,g)}>
3893
4041
  <span class="chip-icon"><ap-icon name=${this._getFilterIcon(this.pendingFilter)} .size=${16}></ap-icon></span>
3894
- <span class="chip-label">${Me[this.pendingFilter]||this.pendingFilter}</span>
4042
+ <span class="chip-label">${Le[this.pendingFilter]||this.pendingFilter}</span>
3895
4043
  <span class="chip-chevron"><ap-icon name="chevron-down" .size=${14}></ap-icon></span>
3896
4044
  </span>
3897
4045
  `:o.nothing}
@@ -4053,7 +4201,7 @@
4053
4201
  align-items: center;
4054
4202
  opacity: 0.6;
4055
4203
  }
4056
- `;j([c.property({type:Object})],D.prototype,"appliedFilters",2);j([c.property({type:Object})],D.prototype,"appliedMetadata",2);j([c.property({type:Object})],D.prototype,"forcedFilters",2);j([c.property({type:Array})],D.prototype,"metadataFields",2);j([c.property({type:Array})],D.prototype,"pinnedFilters",2);j([c.property({type:Array})],D.prototype,"pinnedMetadataFields",2);j([c.property({type:Array})],D.prototype,"tags",2);j([c.property({type:Array})],D.prototype,"labels",2);j([c.property()],D.prototype,"activeFilter",2);j([c.property()],D.prototype,"activeMetadataField",2);j([c.property()],D.prototype,"pendingFilter",2);j([c.property()],D.prototype,"pendingMetadataField",2);D=j([c.customElement("ap-filters-bar")],D);var Pa=Object.defineProperty,Ia=Object.getOwnPropertyDescriptor,se=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ia(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Pa(e,s,a),a};const Da=6;let Y=class extends o.LitElement{constructor(){super(...arguments),this.assets=[],this.folders=[],this.folderPreviews={},this.selectedIds=[],this.selectedFolderIds=[],this.isLoading=!1,this.multiSelect=!0,this.folderSelectable=!1,this.gridSize="normal",this._prevCount=0}willUpdate(t){if(t.has("assets")){const e=t.get("assets");e&&this.assets.length>e.length?this._prevCount=e.length:this._prevCount=0}}render(){const t=this.gridSize==="large"?"280px":"220px";return o.html`
4204
+ `;B([c.property({type:Object})],D.prototype,"appliedFilters",2);B([c.property({type:Object})],D.prototype,"appliedMetadata",2);B([c.property({type:Object})],D.prototype,"forcedFilters",2);B([c.property({type:Array})],D.prototype,"metadataFields",2);B([c.property({type:Array})],D.prototype,"pinnedFilters",2);B([c.property({type:Array})],D.prototype,"pinnedMetadataFields",2);B([c.property({type:Array})],D.prototype,"tags",2);B([c.property({type:Array})],D.prototype,"labels",2);B([c.property()],D.prototype,"activeFilter",2);B([c.property()],D.prototype,"activeMetadataField",2);B([c.property()],D.prototype,"pendingFilter",2);B([c.property()],D.prototype,"pendingMetadataField",2);D=B([c.customElement("ap-filters-bar")],D);var ja=Object.defineProperty,Na=Object.getOwnPropertyDescriptor,ie=(t,e,s,i)=>{for(var a=i>1?void 0:i?Na(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ja(e,s,a),a};const Ba=6;let X=class extends o.LitElement{constructor(){super(...arguments),this.assets=[],this.folders=[],this.folderPreviews={},this.selectedIds=[],this.selectedFolderIds=[],this.isLoading=!1,this.multiSelect=!0,this.folderSelectable=!1,this.gridSize="normal",this._prevCount=0}willUpdate(t){if(t.has("assets")){const e=t.get("assets");e&&this.assets.length>e.length?this._prevCount=e.length:this._prevCount=0}}render(){const t=this.gridSize==="large"?"280px":"220px";return o.html`
4057
4205
  <div class="grid" role="list" aria-label="Assets" style="--ap-grid-min-col: ${t}">
4058
4206
  ${this.folders.map((e,s)=>o.html`
4059
4207
  <ap-folder-card
@@ -4081,7 +4229,7 @@
4081
4229
  @asset-quick-select=${a=>this.dispatchEvent(new CustomEvent("asset-quick-select",{detail:a.detail,bubbles:!0,composed:!0}))}
4082
4230
  ></ap-asset-card>
4083
4231
  `})}
4084
- ${this.isLoading?Array.from({length:Da},()=>o.html`<div class="ghost-card">
4232
+ ${this.isLoading?Array.from({length:Ba},()=>o.html`<div class="ghost-card">
4085
4233
  <div class="ghost-thumb"></div>
4086
4234
  <div class="ghost-info">
4087
4235
  <div class="ghost-line ghost-name"></div>
@@ -4089,7 +4237,7 @@
4089
4237
  </div>
4090
4238
  </div>`):o.nothing}
4091
4239
  </div>
4092
- `}};Y.styles=o.css`
4240
+ `}};X.styles=o.css`
4093
4241
  :host {
4094
4242
  display: block;
4095
4243
  padding: 0 20px 16px;
@@ -4144,7 +4292,7 @@
4144
4292
  @media (prefers-reduced-motion: reduce) {
4145
4293
  .ghost-thumb, .ghost-line { animation: none; }
4146
4294
  }
4147
- `;se([c.property({type:Array})],Y.prototype,"assets",2);se([c.property({type:Array})],Y.prototype,"folders",2);se([c.property({type:Object})],Y.prototype,"folderPreviews",2);se([c.property({type:Array})],Y.prototype,"selectedIds",2);se([c.property({type:Array})],Y.prototype,"selectedFolderIds",2);se([c.property({type:Boolean})],Y.prototype,"isLoading",2);se([c.property({type:Boolean})],Y.prototype,"multiSelect",2);se([c.property({type:Boolean})],Y.prototype,"folderSelectable",2);se([c.property({type:String})],Y.prototype,"gridSize",2);Y=se([c.customElement("ap-grid-view")],Y);var za=Object.defineProperty,Ra=Object.getOwnPropertyDescriptor,X=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ra(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&za(e,s,a),a};const Na=5;let N=class extends o.LitElement{constructor(){super(...arguments),this.assets=[],this.folders=[],this.selectedIds=[],this.selectedFolderIds=[],this.isLoading=!1,this.multiSelect=!0,this.folderSelectable=!1,this.totalCount=0,this.isSelectingAll=!1,this.folderPreviews={},this._compactLevel=0}connectedCallback(){super.connectedCallback(),this._resizeObserver=new ResizeObserver(t=>{var i;const e=((i=t[0])==null?void 0:i.contentRect.width)??0,s=e<550?2:e<680?1:0;s!==this._compactLevel&&(this._compactLevel=s)}),this._resizeObserver.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._resizeObserver)==null||t.disconnect()}_getGridColumns(t){const e=[];return t&&e.push("32px"),e.push("48px"),e.push("minmax(120px, 1fr)"),e.push("72px"),this._compactLevel<2&&e.push("100px"),this._compactLevel<1&&e.push("120px"),e.push("64px"),e.join(" ")}get _allVisibleSelected(){if(this.assets.length===0&&this.folders.length===0||this.selectedIds.length===0&&this.selectedFolderIds.length===0)return!1;const t=new Set(this.selectedIds),e=this.assets.length===0||this.assets.every(a=>t.has(a.uuid));if(!this.folderSelectable)return e&&this.assets.length>0;const s=new Set(this.selectedFolderIds),i=this.folders.length===0||this.folders.every(a=>s.has(a.uuid));return e&&i}_handleHeaderCheckboxClick(){if(this.isSelectingAll)return;const t=this.folderSelectable?this.totalCount+this.folders.length:this.totalCount,e=this.folderSelectable?this.selectedIds.length+this.selectedFolderIds.length:this.selectedIds.length;this._allVisibleSelected&&e>=t?this.dispatchEvent(new CustomEvent("selection-clear",{bubbles:!0,composed:!0})):this.dispatchEvent(new CustomEvent("select-all",{detail:{scope:"all"},bubbles:!0,composed:!0}))}render(){const t=this.folderSelectable?this.totalCount+this.folders.length:this.totalCount,e=this.folderSelectable?this.selectedIds.length+this.selectedFolderIds.length:this.selectedIds.length,s=this._allVisibleSelected&&e>=t;return o.html`
4295
+ `;ie([c.property({type:Array})],X.prototype,"assets",2);ie([c.property({type:Array})],X.prototype,"folders",2);ie([c.property({type:Object})],X.prototype,"folderPreviews",2);ie([c.property({type:Array})],X.prototype,"selectedIds",2);ie([c.property({type:Array})],X.prototype,"selectedFolderIds",2);ie([c.property({type:Boolean})],X.prototype,"isLoading",2);ie([c.property({type:Boolean})],X.prototype,"multiSelect",2);ie([c.property({type:Boolean})],X.prototype,"folderSelectable",2);ie([c.property({type:String})],X.prototype,"gridSize",2);X=ie([c.customElement("ap-grid-view")],X);var Ua=Object.defineProperty,Va=Object.getOwnPropertyDescriptor,W=(t,e,s,i)=>{for(var a=i>1?void 0:i?Va(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ua(e,s,a),a};const qa=5;let N=class extends o.LitElement{constructor(){super(...arguments),this.assets=[],this.folders=[],this.selectedIds=[],this.selectedFolderIds=[],this.isLoading=!1,this.multiSelect=!0,this.folderSelectable=!1,this.totalCount=0,this.isSelectingAll=!1,this.folderPreviews={},this._compactLevel=0}connectedCallback(){super.connectedCallback(),this._resizeObserver=new ResizeObserver(t=>{var i;const e=((i=t[0])==null?void 0:i.contentRect.width)??0,s=e<550?2:e<680?1:0;s!==this._compactLevel&&(this._compactLevel=s)}),this._resizeObserver.observe(this)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._resizeObserver)==null||t.disconnect()}_getGridColumns(t){const e=[];return t&&e.push("32px"),e.push("48px"),e.push("minmax(120px, 1fr)"),e.push("72px"),this._compactLevel<2&&e.push("100px"),this._compactLevel<1&&e.push("120px"),e.push("64px"),e.join(" ")}get _allVisibleSelected(){if(this.assets.length===0&&this.folders.length===0||this.selectedIds.length===0&&this.selectedFolderIds.length===0)return!1;const t=new Set(this.selectedIds),e=this.assets.length===0||this.assets.every(a=>t.has(a.uuid));if(!this.folderSelectable)return e&&this.assets.length>0;const s=new Set(this.selectedFolderIds),i=this.folders.length===0||this.folders.every(a=>s.has(a.uuid));return e&&i}_handleHeaderCheckboxClick(){if(this.isSelectingAll)return;const t=this.folderSelectable?this.totalCount+this.folders.length:this.totalCount,e=this.folderSelectable?this.selectedIds.length+this.selectedFolderIds.length:this.selectedIds.length;this._allVisibleSelected&&e>=t?this.dispatchEvent(new CustomEvent("selection-clear",{bubbles:!0,composed:!0})):this.dispatchEvent(new CustomEvent("select-all",{detail:{scope:"all"},bubbles:!0,composed:!0}))}render(){const t=this.folderSelectable?this.totalCount+this.folders.length:this.totalCount,e=this.folderSelectable?this.selectedIds.length+this.selectedFolderIds.length:this.selectedIds.length,s=this._allVisibleSelected&&e>=t;return o.html`
4148
4296
  <div class="list-header" style="grid-template-columns: ${this._getGridColumns(this.multiSelect)}" role="row" aria-label="Column headers">
4149
4297
  ${this.multiSelect?o.html`<span class="header-checkbox" @click=${this._handleHeaderCheckboxClick}>
4150
4298
  <div class="header-check-box ${s?"checked":e>0?"indeterminate":""}">
@@ -4191,7 +4339,7 @@
4191
4339
  @asset-quick-select=${r=>this.dispatchEvent(new CustomEvent("asset-quick-select",{detail:r.detail,bubbles:!0,composed:!0}))}
4192
4340
  ></ap-asset-row>
4193
4341
  `)}
4194
- ${this.isLoading?Array.from({length:Na},(i,a)=>{const r=["70%","55%","80%","45%","65%"];return o.html`
4342
+ ${this.isLoading?Array.from({length:qa},(i,a)=>{const r=["70%","55%","80%","45%","65%"];return o.html`
4195
4343
  <div class="ghost-row" style="grid-template-columns: ${this._getGridColumns(this.multiSelect)}">
4196
4344
  ${this.multiSelect?o.html`<div class="ghost-el ghost-check"></div>`:o.nothing}
4197
4345
  <div class="ghost-el ghost-thumb"></div>
@@ -4290,7 +4438,7 @@
4290
4438
  @media (prefers-reduced-motion: reduce) {
4291
4439
  .ghost-el { animation: none; }
4292
4440
  }
4293
- `;X([c.property({type:Array})],N.prototype,"assets",2);X([c.property({type:Array})],N.prototype,"folders",2);X([c.property({type:Array})],N.prototype,"selectedIds",2);X([c.property({type:Array})],N.prototype,"selectedFolderIds",2);X([c.property({type:Boolean})],N.prototype,"isLoading",2);X([c.property({type:Boolean})],N.prototype,"multiSelect",2);X([c.property({type:Boolean})],N.prototype,"folderSelectable",2);X([c.property({type:Number})],N.prototype,"totalCount",2);X([c.property({type:Boolean})],N.prototype,"isSelectingAll",2);X([c.property({type:Object})],N.prototype,"folderPreviews",2);X([c.state()],N.prototype,"_compactLevel",2);N=X([c.customElement("ap-list-view")],N);const ja=new Set(["jpg","jpeg","png","gif","webp","svg","bmp","ico","tiff","tif","avif","heic","heif"]),Ba=new Set([...ja,"pdf","psd","eps","ai","ttf","otf","woff","woff2","eot"]);function Le(t){if(!t)return"other";const e={image:"image",video:"video",audio:"audio",application:"document",font:"font",text:"document"};return e[t]?e[t]:t.startsWith("image/")?"image":t.startsWith("video/")?"video":t.startsWith("audio/")?"audio":t.startsWith("application/pdf")||t.startsWith("text/")||t.startsWith("application/msword")||t.startsWith("application/vnd.")?"document":t.startsWith("application/zip")||t.startsWith("application/x-rar")||t.startsWith("application/x-7z")||t.startsWith("application/gzip")?"archive":t.startsWith("font/")?"font":"other"}function ys(t){const e=(t==null?void 0:t.toLowerCase().replace(".",""))||"";return Ba.has(e)}const xs="https://assets.filerobot.com/scaleflex/assets/file-types/v2/",Ua={png:"PNG",jpg:"JPG",jpeg:"JPG",gif:"GIF",bmp:"BMP",webp:"WEBP",svg:"SVG",tiff:"TIFF",tif:"TIFF",heic:"HEIC",avif:"AVIF",ico:"ICO",pdf:"PDF",doc:"DOC",docx:"DOCX",txt:"TXT",rtf:"RTF",xls:"XLS",xlsx:"XLSX",ppt:"PPT",pptx:"PPTX",csv:"CSV",odt:"ODT",ods:"ODS",odp:"ODP",mp4:"MP4",webm:"WEBM",mov:"MOV",avi:"AVI",mkv:"MKV",mpeg:"MPEG",mp3:"MP3",wav:"WAV",aac:"AAC",flac:"FLAC",ogg:"OGG",wma:"WMA",zip:"ZIP",rar:"RAR","7z":"7Z",tar:"TAR",gz:"GZ",ttf:"TTF",otf:"OTF",woff:"WOFF",woff2:"WOFF2",eot:"EOT",psd:"PSD",ai:"AI",dwg:"DWG",js:"JS",ts:"TS",css:"CSS",html:"HTML",json:"JSON",xml:"XML",php:"PHP",sh:"SH",exe:"EXE",iso:"ISO",bin:"BIN"};function Ze(t){const e=(t==null?void 0:t.toLowerCase().replace(".",""))||"",s=Ua[e];return`${xs}${s||"DEFAULT"}.png`}function Ie(){return`${xs}DEFAULT.png`}function bt(t){if(!t)return"";const e=t.split("/");return e.length>1?e[1]:e[0]}const Va=new Set(["png","svg","webp","gif","avif"]);function Rt(t){const e=(t==null?void 0:t.toLowerCase().replace(".",""))||"";return Va.has(e)}const qa=new Set(["svg","svg+xml","png","pdf"]);function ws(t){return qa.has(bt(t).toLowerCase())}function ct(t){var i;const e=t.info,s=(e==null?void 0:e.video_thumbnail)||(e==null?void 0:e.image_thumbnail)||(e==null?void 0:e.thumbnail)||(e==null?void 0:e.preview)||((i=t.url)==null?void 0:i.cdn)||"";return De(s)}function $s(t){const e=t.info,s=(e==null?void 0:e.video_thumbnail)||(e==null?void 0:e.image_thumbnail)||(e==null?void 0:e.thumbnail)||"";return s?De(s):""}function Nt(t){var s,i;let e=De(((s=t.url)==null?void 0:s.cdn)||((i=t.url)==null?void 0:i.public)||"");return e?(e=e.replace(/([?&])func=proxy&?/,"$1").replace(/[?&]$/,""),Ke(e,{w:"200",force_format:"webp,jpeg",doc_page:"1",bypass_process_proxy:"1"})):""}function Ke(t,e){try{const s=new URL(t);for(const[i,a]of Object.entries(e))s.searchParams.set(i,a);return s.toString()}catch{return t}}const is=/^(https:\/\/)([a-z0-9_-]+)\.filerobot\.com\//i;function De(t,e){if(!t)return"";if(t.includes("assets.filerobot.com"))return t;const s=t.match(is);if(s){const i=s[2];return t.replace(is,`$1assets.filerobot.com/${i}/`)}if(e)try{const i=new URL(t);return`https://assets.filerobot.com/${e}${i.pathname}${i.search}`}catch{}return t}function ks(t,e){const s=t.file_uri_cdn;if(!s)return"";let i=De(s);const a=Le(t.file_type),r=String(window.devicePixelRatio||1);return a==="video"?Ke(i,{w:e,dpr:r,force_format:"webp,jpeg"}):t.file_type==="application/pdf"||bt(t.file_type).toLowerCase()==="pdf"?(i=i.replace(/([?&])func=proxy&?/,"$1").replace(/[?&]$/,""),Ke(i,{w:e,dpr:r,force_format:"webp,jpeg",doc_page:"1",bypass_process_proxy:"1"})):Ke(i,{w:e,dpr:r})}function jt(t){if(t===0)return"0 B";const e=["B","KB","MB","GB","TB"],s=1024,i=Math.floor(Math.log(t)/Math.log(s));return`${(t/Math.pow(s,i)).toFixed(i===0?0:1)} ${e[i]}`}function dt(t){if(!t)return"—";const e=new Date(t);return isNaN(e.getTime())?"—":e.toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}function Ss(t,e){return!t||!e?"":`${t} x ${e}`}var Ha=Object.defineProperty,Ka=Object.getOwnPropertyDescriptor,Je=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ka(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ha(e,s,a),a};let $e=class extends o.LitElement{constructor(){super(...arguments),this.index=0,this.selected=!1,this.multiSelect=!0}_handleSelect(t){if(t.stopPropagation(),t.composedPath().some(i=>i instanceof HTMLElement&&(i.classList.contains("check")||i.classList.contains("check-box")))){this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:this.index,event:new MouseEvent("click",{ctrlKey:!0,metaKey:!0,shiftKey:t.shiftKey})},bubbles:!0}));return}this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:this.index,event:t},bubbles:!0}))}_handlePreview(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("asset-preview",{detail:{asset:this.asset},bubbles:!0}))}_formatDuration(t){const e=Math.floor(t/3600),s=Math.floor(t%3600/60),i=Math.floor(t%60),a=r=>String(r).padStart(2,"0");return e>0?`${e}:${a(s)}:${a(i)}`:`${a(s)}:${a(i)}`}_handleQuickSelect(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("asset-quick-select",{detail:{asset:this.asset},bubbles:!0}))}render(){var d,h,u,f,p;const t=this.asset;if(!t)return o.html``;const s=Le(t.type)==="video",i=((d=t.extension)==null?void 0:d.toLowerCase())==="pdf",a=ys(t.extension||"");let r="";s?r=$s(t):i?r=Nt(t):a&&(r=ct(t));const n=Ze(t.extension||""),l=Rt(t.extension||"");return o.html`
4441
+ `;W([c.property({type:Array})],N.prototype,"assets",2);W([c.property({type:Array})],N.prototype,"folders",2);W([c.property({type:Array})],N.prototype,"selectedIds",2);W([c.property({type:Array})],N.prototype,"selectedFolderIds",2);W([c.property({type:Boolean})],N.prototype,"isLoading",2);W([c.property({type:Boolean})],N.prototype,"multiSelect",2);W([c.property({type:Boolean})],N.prototype,"folderSelectable",2);W([c.property({type:Number})],N.prototype,"totalCount",2);W([c.property({type:Boolean})],N.prototype,"isSelectingAll",2);W([c.property({type:Object})],N.prototype,"folderPreviews",2);W([c.state()],N.prototype,"_compactLevel",2);N=W([c.customElement("ap-list-view")],N);const Ha=new Set(["jpg","jpeg","png","gif","webp","svg","bmp","ico","tiff","tif","avif","heic","heif","psd","eps"]),Ga=new Set([...Ha,"pdf","psd","eps","ai","ttf","otf","woff","woff2","eot"]);function Oe(t){if(!t)return"other";const e={image:"image",video:"video",audio:"audio",application:"document",font:"font",text:"document"};return e[t]?e[t]:t.startsWith("image/")?"image":t.startsWith("video/")?"video":t.startsWith("audio/")?"audio":t.startsWith("application/pdf")||t.startsWith("text/")||t.startsWith("application/msword")||t.startsWith("application/vnd.")?"document":t.startsWith("application/zip")||t.startsWith("application/x-rar")||t.startsWith("application/x-7z")||t.startsWith("application/gzip")?"archive":t.startsWith("font/")?"font":"other"}function ys(t){const e=(t==null?void 0:t.toLowerCase().replace(".",""))||"";return Ga.has(e)}const xs="https://assets.filerobot.com/scaleflex/assets/file-types/v2/",Ka={png:"PNG",jpg:"JPG",jpeg:"JPG",gif:"GIF",bmp:"BMP",webp:"WEBP",svg:"SVG",tiff:"TIFF",tif:"TIFF",heic:"HEIC",avif:"AVIF",ico:"ICO",pdf:"PDF",doc:"DOC",docx:"DOCX",txt:"TXT",rtf:"RTF",xls:"XLS",xlsx:"XLSX",ppt:"PPT",pptx:"PPTX",csv:"CSV",odt:"ODT",ods:"ODS",odp:"ODP",mp4:"MP4",webm:"WEBM",mov:"MOV",avi:"AVI",mkv:"MKV",mpeg:"MPEG",mp3:"MP3",wav:"WAV",aac:"AAC",flac:"FLAC",ogg:"OGG",wma:"WMA",zip:"ZIP",rar:"RAR","7z":"7Z",tar:"TAR",gz:"GZ",ttf:"TTF",otf:"OTF",woff:"WOFF",woff2:"WOFF2",eot:"EOT",psd:"PSD",ai:"AI",dwg:"DWG",js:"JS",ts:"TS",css:"CSS",html:"HTML",json:"JSON",xml:"XML",php:"PHP",sh:"SH",exe:"EXE",iso:"ISO",bin:"BIN"};function et(t){const e=(t==null?void 0:t.toLowerCase().replace(".",""))||"",s=Ka[e];return`${xs}${s||"DEFAULT"}.png`}function De(){return`${xs}DEFAULT.png`}function yt(t){if(!t)return"";const e=t.split("/");return e.length>1?e[1]:e[0]}const Ya=new Set(["png","svg","webp","gif","avif"]);function Nt(t){const e=(t==null?void 0:t.toLowerCase().replace(".",""))||"";return Ya.has(e)}const Xa=new Set(["svg","svg+xml","png","pdf"]);function ws(t){return Xa.has(yt(t).toLowerCase())}function pt(t){var i;const e=t.info,s=(e==null?void 0:e.video_thumbnail)||(e==null?void 0:e.image_thumbnail)||(e==null?void 0:e.thumbnail)||(e==null?void 0:e.preview)||((i=t.url)==null?void 0:i.cdn)||"";return ze(s)}function $s(t){const e=t.info,s=(e==null?void 0:e.video_thumbnail)||(e==null?void 0:e.image_thumbnail)||(e==null?void 0:e.thumbnail)||"";return s?ze(s):""}function Bt(t){var s,i;let e=ze(((s=t.url)==null?void 0:s.cdn)||((i=t.url)==null?void 0:i.public)||"");return e?(e=e.replace(/([?&])func=proxy&?/,"$1").replace(/[?&]$/,""),Ke(e,{w:"200",force_format:"webp,jpeg",doc_page:"1",bypass_process_proxy:"1"})):""}function Ke(t,e){try{const s=new URL(t);for(const[i,a]of Object.entries(e))s.searchParams.set(i,a);return s.toString()}catch{return t}}const rs=/^(https:\/\/)([a-z0-9_-]+)\.filerobot\.com\//i;function ze(t,e){if(!t)return"";if(t.includes("assets.filerobot.com"))return t;const s=t.match(rs);if(s){const i=s[2];return t.replace(rs,`$1assets.filerobot.com/${i}/`)}if(e)try{const i=new URL(t);return`https://assets.filerobot.com/${e}${i.pathname}${i.search}`}catch{}return t}function ks(t,e){const s=t.file_uri_cdn;if(!s)return"";let i=ze(s);const a=Oe(t.file_type),r=String(window.devicePixelRatio||1);return a==="video"?Ke(i,{w:e,dpr:r,force_format:"webp,jpeg"}):t.file_type==="application/pdf"||yt(t.file_type).toLowerCase()==="pdf"?(i=i.replace(/([?&])func=proxy&?/,"$1").replace(/[?&]$/,""),Ke(i,{w:e,dpr:r,force_format:"webp,jpeg",doc_page:"1",bypass_process_proxy:"1"})):Ke(i,{w:e,dpr:r})}function Ut(t){if(t===0)return"0 B";const e=["B","KB","MB","GB","TB"],s=1024,i=Math.floor(Math.log(t)/Math.log(s));return`${(t/Math.pow(s,i)).toFixed(i===0?0:1)} ${e[i]}`}function ht(t){if(!t)return"—";const e=new Date(t);return isNaN(e.getTime())?"—":e.toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}function Ss(t,e){return!t||!e?"":`${t} x ${e}`}var Wa=Object.defineProperty,Qa=Object.getOwnPropertyDescriptor,tt=(t,e,s,i)=>{for(var a=i>1?void 0:i?Qa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Wa(e,s,a),a};let ke=class extends o.LitElement{constructor(){super(...arguments),this.index=0,this.selected=!1,this.multiSelect=!0}_handleSelect(t){if(t.stopPropagation(),t.composedPath().some(i=>i instanceof HTMLElement&&(i.classList.contains("check")||i.classList.contains("check-box")))){this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:this.index,event:new MouseEvent("click",{ctrlKey:!0,metaKey:!0,shiftKey:t.shiftKey})},bubbles:!0}));return}this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:this.index,event:t},bubbles:!0}))}_handlePreview(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("asset-preview",{detail:{asset:this.asset},bubbles:!0}))}_formatDuration(t){const e=Math.floor(t/3600),s=Math.floor(t%3600/60),i=Math.floor(t%60),a=r=>String(r).padStart(2,"0");return e>0?`${e}:${a(s)}:${a(i)}`:`${a(s)}:${a(i)}`}_handleQuickSelect(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("asset-quick-select",{detail:{asset:this.asset},bubbles:!0}))}render(){var d,h,u,f,p;const t=this.asset;if(!t)return o.html``;const s=Oe(t.type)==="video",i=((d=t.extension)==null?void 0:d.toLowerCase())==="pdf",a=ys(t.extension||"");let r="";s?r=$s(t):i?r=Bt(t):a&&(r=pt(t));const n=et(t.extension||""),l=Nt(t.extension||"");return o.html`
4294
4442
  <div class="card" @click=${this._handleSelect}>
4295
4443
  <div class="thumbnail ${l&&r?"chess":""}">
4296
4444
  ${r?o.html`<img
@@ -4298,12 +4446,12 @@
4298
4446
  alt=${t.name}
4299
4447
  loading="lazy"
4300
4448
  class="thumb-img ${l?"transparent-asset":""}"
4301
- @error=${g=>{const m=g.target,_=Ie();m.src!==n&&m.src!==_?(m.src=n,m.classList.add("icon-fallback")):m.src!==_&&(m.src=_)}}
4449
+ @error=${g=>{const m=g.target,_=De();m.src!==n&&m.src!==_?(m.src=n,m.classList.add("icon-fallback")):m.src!==_&&(m.src=_)}}
4302
4450
  />`:o.html`<img
4303
4451
  src=${n}
4304
4452
  alt=${t.name}
4305
4453
  class="thumb-img icon-fallback"
4306
- @error=${g=>{const m=g.target,_=Ie();m.src!==_&&(m.src=_)}}
4454
+ @error=${g=>{const m=g.target,_=De();m.src!==_&&(m.src=_)}}
4307
4455
  />`}
4308
4456
  ${s&&(((h=t.info)==null?void 0:h.video_duration)??((u=t.info)==null?void 0:u.duration))!=null?o.html`<span class="duration">${this._formatDuration(t.info.video_duration??t.info.duration)}</span>`:o.nothing}
4309
4457
  <div class="overlay">
@@ -4328,10 +4476,10 @@
4328
4476
  </div>
4329
4477
  <div class="info">
4330
4478
  <div class="name" title=${t.name}>${t.name}</div>
4331
- <div class="meta">${(f=t.extension)==null?void 0:f.toUpperCase()}${(()=>{var y,S,w,E;const g=((y=t.info)==null?void 0:y.img_w)||((S=t.info)==null?void 0:S.video_w),m=((w=t.info)==null?void 0:w.img_h)||((E=t.info)==null?void 0:E.video_h),_=Ss(g,m);return _?` · ${_}`:""})()} · ${jt(((p=t.size)==null?void 0:p.bytes)||0)}</div>
4479
+ <div class="meta">${(f=t.extension)==null?void 0:f.toUpperCase()}${(()=>{var y,S,w,E;const g=((y=t.info)==null?void 0:y.img_w)||((S=t.info)==null?void 0:S.video_w),m=((w=t.info)==null?void 0:w.img_h)||((E=t.info)==null?void 0:E.video_h),_=Ss(g,m);return _?` · ${_}`:""})()} · ${Ut(((p=t.size)==null?void 0:p.bytes)||0)}</div>
4332
4480
  </div>
4333
4481
  </div>
4334
- `}};$e.styles=o.css`
4482
+ `}};ke.styles=o.css`
4335
4483
  :host {
4336
4484
  display: block;
4337
4485
  animation: ap-card-in 300ms ease-out both;
@@ -4510,7 +4658,7 @@
4510
4658
  :host { animation: none; }
4511
4659
  .overlay { transition: none; }
4512
4660
  }
4513
- `;Je([c.property({type:Object})],$e.prototype,"asset",2);Je([c.property({type:Number})],$e.prototype,"index",2);Je([c.property({type:Boolean,reflect:!0})],$e.prototype,"selected",2);Je([c.property({type:Boolean})],$e.prototype,"multiSelect",2);$e=Je([c.customElement("ap-asset-card")],$e);var Ga=Object.defineProperty,Ya=Object.getOwnPropertyDescriptor,Be=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ya(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ga(e,s,a),a};let he=class extends o.LitElement{constructor(){super(...arguments),this.index=0,this.selected=!1,this.multiSelect=!0,this.compactLevel=0}_getGridColumns(){const t=[];return this.multiSelect&&t.push("32px"),t.push("48px"),t.push("minmax(120px, 1fr)"),t.push("72px"),this.compactLevel<2&&t.push("100px"),this.compactLevel<1&&t.push("120px"),t.push("64px"),t.join(" ")}_handleSelect(t){if(t.composedPath().some(i=>i instanceof HTMLElement&&(i.classList.contains("check")||i.classList.contains("check-box")))){this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:this.index,event:new MouseEvent("click",{ctrlKey:!0,metaKey:!0,shiftKey:t.shiftKey})},bubbles:!0}));return}this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:this.index,event:t},bubbles:!0}))}_handlePreview(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("asset-preview",{detail:{asset:this.asset},bubbles:!0}))}_handleQuickSelect(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("asset-quick-select",{detail:{asset:this.asset},bubbles:!0}))}render(){var d,h,u;const t=this.asset;if(!t)return o.html``;const s=Le(t.type)==="video",i=((d=t.extension)==null?void 0:d.toLowerCase())==="pdf",a=ys(t.extension||"");let r="";s?r=$s(t):i?r=Nt(t):a&&(r=ct(t));const n=Ze(t.extension||""),l=Rt(t.extension||"");return o.html`
4661
+ `;tt([c.property({type:Object})],ke.prototype,"asset",2);tt([c.property({type:Number})],ke.prototype,"index",2);tt([c.property({type:Boolean,reflect:!0})],ke.prototype,"selected",2);tt([c.property({type:Boolean})],ke.prototype,"multiSelect",2);ke=tt([c.customElement("ap-asset-card")],ke);var Za=Object.defineProperty,Ja=Object.getOwnPropertyDescriptor,Ue=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ja(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Za(e,s,a),a};let he=class extends o.LitElement{constructor(){super(...arguments),this.index=0,this.selected=!1,this.multiSelect=!0,this.compactLevel=0}_getGridColumns(){const t=[];return this.multiSelect&&t.push("32px"),t.push("48px"),t.push("minmax(120px, 1fr)"),t.push("72px"),this.compactLevel<2&&t.push("100px"),this.compactLevel<1&&t.push("120px"),t.push("64px"),t.join(" ")}_handleSelect(t){if(t.composedPath().some(i=>i instanceof HTMLElement&&(i.classList.contains("check")||i.classList.contains("check-box")))){this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:this.index,event:new MouseEvent("click",{ctrlKey:!0,metaKey:!0,shiftKey:t.shiftKey})},bubbles:!0}));return}this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:this.index,event:t},bubbles:!0}))}_handlePreview(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("asset-preview",{detail:{asset:this.asset},bubbles:!0}))}_handleQuickSelect(t){t.stopPropagation(),this.dispatchEvent(new CustomEvent("asset-quick-select",{detail:{asset:this.asset},bubbles:!0}))}render(){var d,h,u;const t=this.asset;if(!t)return o.html``;const s=Oe(t.type)==="video",i=((d=t.extension)==null?void 0:d.toLowerCase())==="pdf",a=ys(t.extension||"");let r="";s?r=$s(t):i?r=Bt(t):a&&(r=pt(t));const n=et(t.extension||""),l=Nt(t.extension||"");return o.html`
4514
4662
  <div class="row" style="grid-template-columns: ${this._getGridColumns()}" @click=${this._handleSelect}>
4515
4663
  ${this.multiSelect?o.html`
4516
4664
  <div class="check">
@@ -4527,18 +4675,18 @@
4527
4675
  alt=${t.name}
4528
4676
  class="${l?"transparent-asset":""}"
4529
4677
  loading="lazy"
4530
- @error=${f=>{const p=f.target,g=Ie();p.src!==n&&p.src!==g?(p.src=n,p.classList.add("icon-fallback")):p.src!==g&&(p.src=g)}}
4678
+ @error=${f=>{const p=f.target,g=De();p.src!==n&&p.src!==g?(p.src=n,p.classList.add("icon-fallback")):p.src!==g&&(p.src=g)}}
4531
4679
  />`:o.html`<img
4532
4680
  src=${n}
4533
4681
  alt=${t.name}
4534
4682
  class="icon-fallback"
4535
- @error=${f=>{const p=f.target,g=Ie();p.src!==g&&(p.src=g)}}
4683
+ @error=${f=>{const p=f.target,g=De();p.src!==g&&(p.src=g)}}
4536
4684
  />`}
4537
4685
  </div>
4538
4686
  <div class="name" title=${t.name}>${t.name}</div>
4539
4687
  <div class="type">${(h=t.extension)==null?void 0:h.toUpperCase()}</div>
4540
- ${this.compactLevel<2?o.html`<div class="desc">${jt(((u=t.size)==null?void 0:u.bytes)||0)}</div>`:o.nothing}
4541
- ${this.compactLevel<1?o.html`<div class="date">${dt(t.created_at||"")}</div>`:o.nothing}
4688
+ ${this.compactLevel<2?o.html`<div class="desc">${Ut(((u=t.size)==null?void 0:u.bytes)||0)}</div>`:o.nothing}
4689
+ ${this.compactLevel<1?o.html`<div class="date">${ht(t.created_at||"")}</div>`:o.nothing}
4542
4690
  <div class="actions">
4543
4691
  <button class="icon-btn select-btn" @click=${this._handleQuickSelect} aria-label="Select" title="Select">
4544
4692
  <ap-icon name="select" .size=${16}></ap-icon>
@@ -4678,7 +4826,7 @@
4678
4826
  :host([selected]) .check-icon {
4679
4827
  display: block;
4680
4828
  }
4681
- `;Be([c.property({type:Object})],he.prototype,"asset",2);Be([c.property({type:Number})],he.prototype,"index",2);Be([c.property({type:Boolean,reflect:!0})],he.prototype,"selected",2);Be([c.property({type:Boolean})],he.prototype,"multiSelect",2);Be([c.property({type:Number})],he.prototype,"compactLevel",2);he=Be([c.customElement("ap-asset-row")],he);var Xa=Object.defineProperty,Wa=Object.getOwnPropertyDescriptor,Fe=(t,e,s,i)=>{for(var a=i>1?void 0:i?Wa(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Xa(e,s,a),a};let oe=class extends o.LitElement{constructor(){super(...arguments),this.previews=[],this.selected=!1,this.selectable=!1,this.multiSelect=!0,this.index=0}_handleClick(t){if(!this.selectable){this._handleOpen();return}if(t.composedPath().some(i=>i instanceof HTMLElement&&(i.classList.contains("check")||i.classList.contains("check-box")))){t.stopPropagation(),this.dispatchEvent(new CustomEvent("folder-select",{detail:{folder:this.folder,index:this.index,event:new MouseEvent("click",{ctrlKey:!0,metaKey:!0,shiftKey:t.shiftKey})},bubbles:!0,composed:!0}));return}this._handleOpen()}_handleOpen(){this.dispatchEvent(new CustomEvent("folder-open",{detail:{folder:this.folder},bubbles:!0,composed:!0}))}_getPreviewUrl(t){return ks(t,"200")}_renderPreviewImg(t){const e=ws(t.file_type),s=this._getPreviewUrl(t),i=Ze(bt(t.file_type)),a=Ie();return o.html`<div class="preview-slot ${e?"icon-bg":""}">
4829
+ `;Ue([c.property({type:Object})],he.prototype,"asset",2);Ue([c.property({type:Number})],he.prototype,"index",2);Ue([c.property({type:Boolean,reflect:!0})],he.prototype,"selected",2);Ue([c.property({type:Boolean})],he.prototype,"multiSelect",2);Ue([c.property({type:Number})],he.prototype,"compactLevel",2);he=Ue([c.customElement("ap-asset-row")],he);var er=Object.defineProperty,tr=Object.getOwnPropertyDescriptor,Ae=(t,e,s,i)=>{for(var a=i>1?void 0:i?tr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&er(e,s,a),a};let ne=class extends o.LitElement{constructor(){super(...arguments),this.previews=[],this.selected=!1,this.selectable=!1,this.multiSelect=!0,this.index=0}_handleClick(t){if(!this.selectable){this._handleOpen();return}if(t.composedPath().some(i=>i instanceof HTMLElement&&(i.classList.contains("check")||i.classList.contains("check-box")))){t.stopPropagation(),this.dispatchEvent(new CustomEvent("folder-select",{detail:{folder:this.folder,index:this.index,event:new MouseEvent("click",{ctrlKey:!0,metaKey:!0,shiftKey:t.shiftKey})},bubbles:!0,composed:!0}));return}this._handleOpen()}_handleOpen(){this.dispatchEvent(new CustomEvent("folder-open",{detail:{folder:this.folder},bubbles:!0,composed:!0}))}_getPreviewUrl(t){return ks(t,"200")}_renderPreviewImg(t){const e=ws(t.file_type),s=this._getPreviewUrl(t),i=et(yt(t.file_type)),a=De();return o.html`<div class="preview-slot ${e?"icon-bg":""}">
4682
4830
  <img
4683
4831
  class="preview-img ${e?"icon-mode":""}"
4684
4832
  src="${s||i}"
@@ -4725,7 +4873,7 @@
4725
4873
  </div>
4726
4874
  </div>
4727
4875
  </div>
4728
- `}};oe.styles=[J,o.css`
4876
+ `}};ne.styles=[ee,o.css`
4729
4877
  :host {
4730
4878
  display: block;
4731
4879
  }
@@ -4903,7 +5051,7 @@
4903
5051
  :host([selected]) .check-icon {
4904
5052
  display: block;
4905
5053
  }
4906
- `];Fe([c.property({type:Object})],oe.prototype,"folder",2);Fe([c.property({type:Array})],oe.prototype,"previews",2);Fe([c.property({type:Boolean,reflect:!0})],oe.prototype,"selected",2);Fe([c.property({type:Boolean})],oe.prototype,"selectable",2);Fe([c.property({type:Boolean})],oe.prototype,"multiSelect",2);Fe([c.property({type:Number})],oe.prototype,"index",2);oe=Fe([c.customElement("ap-folder-card")],oe);var Qa=Object.defineProperty,Za=Object.getOwnPropertyDescriptor,ge=(t,e,s,i)=>{for(var a=i>1?void 0:i?Za(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Qa(e,s,a),a};let Q=class extends o.LitElement{constructor(){super(...arguments),this.previews=[],this.selected=!1,this.selectable=!1,this.multiSelect=!0,this.index=0,this.compactLevel=0}_getGridColumns(){const t=[];return this.multiSelect&&t.push("32px"),t.push("48px"),t.push("minmax(120px, 1fr)"),t.push("72px"),this.compactLevel<2&&t.push("100px"),this.compactLevel<1&&t.push("120px"),t.push("64px"),t.join(" ")}_renderPreviewImg(t){const e=ws(t.file_type),s=ks(t,"80"),i=Ze(bt(t.file_type)),a=Ie();return o.html`<div class="preview-slot ${e?"icon-bg":""}"><img
5054
+ `];Ae([c.property({type:Object})],ne.prototype,"folder",2);Ae([c.property({type:Array})],ne.prototype,"previews",2);Ae([c.property({type:Boolean,reflect:!0})],ne.prototype,"selected",2);Ae([c.property({type:Boolean})],ne.prototype,"selectable",2);Ae([c.property({type:Boolean})],ne.prototype,"multiSelect",2);Ae([c.property({type:Number})],ne.prototype,"index",2);ne=Ae([c.customElement("ap-folder-card")],ne);var sr=Object.defineProperty,ir=Object.getOwnPropertyDescriptor,ge=(t,e,s,i)=>{for(var a=i>1?void 0:i?ir(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&sr(e,s,a),a};let Z=class extends o.LitElement{constructor(){super(...arguments),this.previews=[],this.selected=!1,this.selectable=!1,this.multiSelect=!0,this.index=0,this.compactLevel=0}_getGridColumns(){const t=[];return this.multiSelect&&t.push("32px"),t.push("48px"),t.push("minmax(120px, 1fr)"),t.push("72px"),this.compactLevel<2&&t.push("100px"),this.compactLevel<1&&t.push("120px"),t.push("64px"),t.join(" ")}_renderPreviewImg(t){const e=ws(t.file_type),s=ks(t,"80"),i=et(yt(t.file_type)),a=De();return o.html`<div class="preview-slot ${e?"icon-bg":""}"><img
4907
5055
  class="preview-img ${e?"icon-mode":""}"
4908
5056
  src="${s||i}"
4909
5057
  alt=""
@@ -4935,10 +5083,10 @@
4935
5083
  <div class="name">${t.name}</div>
4936
5084
  <div class="meta">Folder</div>
4937
5085
  ${this.compactLevel<2?o.html`<div class="meta">${((e=t.count)==null?void 0:e.files_recursive)??((s=t.count)==null?void 0:s.files_direct)??0} items</div>`:o.nothing}
4938
- ${this.compactLevel<1?o.html`<div class="meta">${dt(t.modified_at||t.updated_at||"")}</div>`:o.nothing}
5086
+ ${this.compactLevel<1?o.html`<div class="meta">${ht(t.modified_at||t.updated_at||"")}</div>`:o.nothing}
4939
5087
  <div></div>
4940
5088
  </div>
4941
- `:o.html``}};Q.styles=o.css`
5089
+ `:o.html``}};Z.styles=o.css`
4942
5090
  :host {
4943
5091
  display: block;
4944
5092
  }
@@ -5057,7 +5205,7 @@
5057
5205
  :host([selected]) .check-icon {
5058
5206
  display: block;
5059
5207
  }
5060
- `;ge([c.property({type:Object})],Q.prototype,"folder",2);ge([c.property({type:Array})],Q.prototype,"previews",2);ge([c.property({type:Boolean,reflect:!0})],Q.prototype,"selected",2);ge([c.property({type:Boolean})],Q.prototype,"selectable",2);ge([c.property({type:Boolean})],Q.prototype,"multiSelect",2);ge([c.property({type:Number})],Q.prototype,"index",2);ge([c.property({type:Number})],Q.prototype,"compactLevel",2);Q=ge([c.customElement("ap-folder-row")],Q);var Ja=Object.defineProperty,er=Object.getOwnPropertyDescriptor,et=(t,e,s,i)=>{for(var a=i>1?void 0:i?er(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Ja(e,s,a),a};let ke=class extends o.LitElement{constructor(){super(...arguments),this.variant="grid",this.gridSize="normal",this.multiSelect=!0,this.folderCount=0}render(){if(this.variant==="grid"){const n=this.gridSize==="large"?"280px":"220px";return o.html`
5208
+ `;ge([c.property({type:Object})],Z.prototype,"folder",2);ge([c.property({type:Array})],Z.prototype,"previews",2);ge([c.property({type:Boolean,reflect:!0})],Z.prototype,"selected",2);ge([c.property({type:Boolean})],Z.prototype,"selectable",2);ge([c.property({type:Boolean})],Z.prototype,"multiSelect",2);ge([c.property({type:Number})],Z.prototype,"index",2);ge([c.property({type:Number})],Z.prototype,"compactLevel",2);Z=ge([c.customElement("ap-folder-row")],Z);var ar=Object.defineProperty,rr=Object.getOwnPropertyDescriptor,st=(t,e,s,i)=>{for(var a=i>1?void 0:i?rr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ar(e,s,a),a};let Se=class extends o.LitElement{constructor(){super(...arguments),this.variant="grid",this.gridSize="normal",this.multiSelect=!0,this.folderCount=0}render(){if(this.variant==="grid"){const n=this.gridSize==="large"?"280px":"220px";return o.html`
5061
5209
  <div class="grid-skeleton" style="--ap-grid-min-col: ${n}">
5062
5210
  ${Array.from({length:18},()=>o.html`<div class="card-skel">
5063
5211
  <div class="skeleton card-skel-thumb"></div>
@@ -5103,7 +5251,7 @@
5103
5251
  </div>
5104
5252
  ${Array.from({length:this.folderCount},()=>s)}
5105
5253
  ${Array.from({length:r},(n,l)=>i(a[l%a.length]))}
5106
- `}};ke.styles=o.css`
5254
+ `}};Se.styles=o.css`
5107
5255
  :host {
5108
5256
  display: block;
5109
5257
  padding: 0 20px 16px;
@@ -5228,7 +5376,7 @@
5228
5376
  @media (prefers-reduced-motion: reduce) {
5229
5377
  .skeleton { animation: none; }
5230
5378
  }
5231
- `;et([c.property({reflect:!0})],ke.prototype,"variant",2);et([c.property({type:String})],ke.prototype,"gridSize",2);et([c.property({type:Boolean})],ke.prototype,"multiSelect",2);et([c.property({type:Number})],ke.prototype,"folderCount",2);ke=et([c.customElement("ap-skeleton")],ke);function tr(t){var a,r;const e=(a=t.info)==null?void 0:a.playlists;if(!(e!=null&&e.length))return null;const s=(r=e[0])==null?void 0:r.playlists;return s!=null&&s.length&&s[0]||null}var sr=Object.defineProperty,ir=Object.getOwnPropertyDescriptor,I=(t,e,s,i)=>{for(var a=i>1?void 0:i?ir(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&sr(e,s,a),a};let P=class extends o.LitElement{constructor(){super(...arguments),this.asset=null,this.assets=[],this.selectedIds=[],this.containerToken="",this.showMetadata=!0,this.metadataFields=[],this.labels=[],this.regionalFilters={},this.multiSelect=!0,this._isFullscreen=!1,this._fsImageLoaded=!1,this._previewLoading=!1,this._openSections=new Set(["file-info","metadata"]),this._hls=null}connectedCallback(){super.connectedCallback(),this._onFullscreenChange=this._onFullscreenChange.bind(this),this._onKeyDown=this._onKeyDown.bind(this),document.addEventListener("fullscreenchange",this._onFullscreenChange),document.addEventListener("keydown",this._onKeyDown)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("fullscreenchange",this._onFullscreenChange),document.removeEventListener("keydown",this._onKeyDown),this._destroyHls()}_onKeyDown(t){if(t.key!=="ArrowLeft"&&t.key!=="ArrowRight")return;const e=t.composedPath()[0];if(!e)return;const s=e.tagName;s==="INPUT"||s==="TEXTAREA"||s==="SELECT"||e.getAttribute("role")==="radio"||e.getAttribute("role")==="listbox"||e.isContentEditable||(t.preventDefault(),t.key==="ArrowLeft"?this._prev():this._next())}_destroyHls(){this._hls&&(this._hls.destroy(),this._hls=null)}updated(t){if(super.updated(t),t.has("asset")&&(this._destroyHls(),this._previewLoading=!0,this.asset)){const e=Le(this.asset.type);e==="video"&&this._setupHls(this.asset),e!=="image"&&e!=="video"&&(this._previewLoading=!1)}}async _setupHls(t){var i,a;const e=tr(t);if(!e||(await this.updateComplete,((i=this.asset)==null?void 0:i.uuid)!==t.uuid))return;const s=this._videoEl;if(s){if(s.canPlayType("application/vnd.apple.mpegurl")){s.src=e;return}try{const{default:r}=await Promise.resolve().then(()=>require("./hls.light-C3NKRmfw.cjs"));if(!r.isSupported()||((a=this.asset)==null?void 0:a.uuid)!==t.uuid||!this.isConnected)return;const n=new r;this._hls=n,n.loadSource(e),n.attachMedia(s),n.on(r.Events.ERROR,(l,d)=>{var h;d.fatal&&(this._destroyHls(),s.src=((h=t.url)==null?void 0:h.cdn)||"")})}catch{}}}_onFullscreenChange(){this._isFullscreen=!!document.fullscreenElement,this._isFullscreen&&(this._fsImageLoaded=!1)}_close(){this.dispatchEvent(new CustomEvent("preview-close",{bubbles:!0,composed:!0}))}_exitFullscreen(){var t;(t=document.exitFullscreen)==null||t.call(document)}_fullscreen(){var e,s,i,a,r,n;if(((s=(e=this.asset)==null?void 0:e.extension)==null?void 0:s.toLowerCase())==="pdf"&&((a=(i=this.asset)==null?void 0:i.url)!=null&&a.cdn)){window.open(this.asset.url.cdn,"_blank","noopener");return}this._fsImageLoaded=!1,(n=(r=this.previewArea)==null?void 0:r.requestFullscreen)==null||n.call(r)}_select(){if(!this.asset)return;if(!this.multiSelect){this.dispatchEvent(new CustomEvent("asset-quick-select",{detail:{asset:this.asset},bubbles:!0,composed:!0}));return}const t=this._getCurrentIndex();this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:t,event:new MouseEvent("click",{ctrlKey:!0,metaKey:!0})},bubbles:!0,composed:!0}))}_getCurrentIndex(){return!this.asset||this.assets.length===0?-1:this.assets.findIndex(t=>t.uuid===this.asset.uuid)}_navigateTo(t){this._fsImageLoaded=!1,this.dispatchEvent(new CustomEvent("preview-navigate",{detail:{asset:t},bubbles:!0,composed:!0}))}_supportsFullscreen(t){const e=Le(t.type);return e==="image"||e==="video"||e==="audio"}_findNavTarget(t,e){const s=e===1?this.assets.length:-1;for(let i=t+e;i!==s;i+=e)if(!this._isFullscreen||this._supportsFullscreen(this.assets[i]))return i;return-1}_prev(){const t=this._getCurrentIndex();if(t<=0)return;const e=this._findNavTarget(t,-1);e>=0&&this._navigateTo(this.assets[e])}_next(){const t=this._getCurrentIndex();if(t<0||t>=this.assets.length-1)return;const e=this._findNavTarget(t,1);e>=0&&this._navigateTo(this.assets[e])}_getFullscreenImageUrl(t){var i,a;const e=(i=t.url)==null?void 0:i.cdn;if(!e)return ct(t)||"";if(((a=t.extension)==null?void 0:a.toLowerCase())==="svg")return e;const s=De(e,this.containerToken);return Ke(s,{w:String(window.screen.width),dpr:String(window.devicePixelRatio||1),org_if_sml:"1"})}_getBlurDimensions(t){var n,l;const e=(n=t.info)==null?void 0:n.img_w,s=(l=t.info)==null?void 0:l.img_h;if(!e||!s)return{width:"100vw",height:"100vh"};const i=window.innerWidth,a=window.innerHeight,r=Math.min(i/e,a/s,1);return{width:`${Math.round(e*r)}px`,height:`${Math.round(s*r)}px`}}_onFsImageLoad(){this._fsImageLoaded=!0}_getTagEntries(t){if(!t)return[];if(Array.isArray(t))return this._parseTagArray(t);const e=Object.values(t);if(e.length>0&&Array.isArray(e[0])){const s=e.flat(),i=new Set;return s.filter(a=>!a.label||i.has(a.sid)?!1:(i.add(a.sid),!0))}return e.map(s=>({label:s.label,sid:s.sid})).filter(s=>s.label)}_parseTagArray(t){return t.map(e=>{if(typeof e=="string")return{label:e,sid:e};const s=e;return{label:s.label||Object.values(s.names||{})[0]||"",sid:s.sid||""}}).filter(e=>e.label)}_applyTagFilter(t){this.dispatchEvent(new CustomEvent("filter-update",{detail:{key:v.TAGS,values:[t],operator:x.IS},bubbles:!0,composed:!0}))}_applyLabelFilter(t){this.dispatchEvent(new CustomEvent("filter-update",{detail:{key:v.LABELS,values:[t],operator:x.IS},bubbles:!0,composed:!0}))}_toggleSection(t){const e=new Set(this._openSections);e.has(t)?e.delete(t):e.add(t),this._openSections=e}_renderFileInfoSection(t){const e=this._getFileInfoRows(t);if(e.length===0)return o.nothing;const s=this._openSections.has("file-info");return o.html`
5379
+ `;st([c.property({reflect:!0})],Se.prototype,"variant",2);st([c.property({type:String})],Se.prototype,"gridSize",2);st([c.property({type:Boolean})],Se.prototype,"multiSelect",2);st([c.property({type:Number})],Se.prototype,"folderCount",2);Se=st([c.customElement("ap-skeleton")],Se);function or(t){var a,r;const e=(a=t.info)==null?void 0:a.playlists;if(!(e!=null&&e.length))return null;const s=(r=e[0])==null?void 0:r.playlists;return s!=null&&s.length&&s[0]||null}var nr=Object.defineProperty,lr=Object.getOwnPropertyDescriptor,I=(t,e,s,i)=>{for(var a=i>1?void 0:i?lr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&nr(e,s,a),a};let P=class extends o.LitElement{constructor(){super(...arguments),this.asset=null,this.assets=[],this.selectedIds=[],this.containerToken="",this.showMetadata=!0,this.metadataFields=[],this.labels=[],this.regionalFilters={},this.multiSelect=!0,this._isFullscreen=!1,this._fsImageLoaded=!1,this._previewLoading=!1,this._openSections=new Set(["file-info","metadata"]),this._hls=null}connectedCallback(){super.connectedCallback(),this._onFullscreenChange=this._onFullscreenChange.bind(this),this._onKeyDown=this._onKeyDown.bind(this),document.addEventListener("fullscreenchange",this._onFullscreenChange),document.addEventListener("keydown",this._onKeyDown)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("fullscreenchange",this._onFullscreenChange),document.removeEventListener("keydown",this._onKeyDown),this._destroyHls()}_onKeyDown(t){if(t.key!=="ArrowLeft"&&t.key!=="ArrowRight")return;const e=t.composedPath()[0];if(!e)return;const s=e.tagName;s==="INPUT"||s==="TEXTAREA"||s==="SELECT"||e.getAttribute("role")==="radio"||e.getAttribute("role")==="listbox"||e.isContentEditable||(t.preventDefault(),t.key==="ArrowLeft"?this._prev():this._next())}_destroyHls(){this._hls&&(this._hls.destroy(),this._hls=null)}updated(t){if(super.updated(t),t.has("asset")&&(this._destroyHls(),this._previewLoading=!0,this.asset)){const e=Oe(this.asset.type);e==="video"&&this._setupHls(this.asset),e!=="image"&&e!=="video"&&(this._previewLoading=!1)}}async _setupHls(t){var i,a;const e=or(t);if(!e||(await this.updateComplete,((i=this.asset)==null?void 0:i.uuid)!==t.uuid))return;const s=this._videoEl;if(s){if(s.canPlayType("application/vnd.apple.mpegurl")){s.src=e;return}try{const{default:r}=await Promise.resolve().then(()=>require("./hls.light-C3NKRmfw.cjs"));if(!r.isSupported()||((a=this.asset)==null?void 0:a.uuid)!==t.uuid||!this.isConnected)return;const n=new r;this._hls=n,n.loadSource(e),n.attachMedia(s),n.on(r.Events.ERROR,(l,d)=>{var h;d.fatal&&(this._destroyHls(),s.src=((h=t.url)==null?void 0:h.cdn)||"")})}catch{}}}_onFullscreenChange(){this._isFullscreen=!!document.fullscreenElement,this._isFullscreen&&(this._fsImageLoaded=!1)}_close(){this.dispatchEvent(new CustomEvent("preview-close",{bubbles:!0,composed:!0}))}_exitFullscreen(){var t;(t=document.exitFullscreen)==null||t.call(document)}_fullscreen(){var e,s,i,a,r,n;if(((s=(e=this.asset)==null?void 0:e.extension)==null?void 0:s.toLowerCase())==="pdf"&&((a=(i=this.asset)==null?void 0:i.url)!=null&&a.cdn)){window.open(this.asset.url.cdn,"_blank","noopener");return}this._fsImageLoaded=!1,(n=(r=this.previewArea)==null?void 0:r.requestFullscreen)==null||n.call(r)}_select(){if(!this.asset)return;if(!this.multiSelect){this.dispatchEvent(new CustomEvent("asset-quick-select",{detail:{asset:this.asset},bubbles:!0,composed:!0}));return}const t=this._getCurrentIndex();this.dispatchEvent(new CustomEvent("asset-select",{detail:{asset:this.asset,index:t,event:new MouseEvent("click",{ctrlKey:!0,metaKey:!0})},bubbles:!0,composed:!0}))}_getCurrentIndex(){return!this.asset||this.assets.length===0?-1:this.assets.findIndex(t=>t.uuid===this.asset.uuid)}_navigateTo(t){this._fsImageLoaded=!1,this.dispatchEvent(new CustomEvent("preview-navigate",{detail:{asset:t},bubbles:!0,composed:!0}))}_supportsFullscreen(t){const e=Oe(t.type);return e==="image"||e==="video"||e==="audio"}_findNavTarget(t,e){const s=e===1?this.assets.length:-1;for(let i=t+e;i!==s;i+=e)if(!this._isFullscreen||this._supportsFullscreen(this.assets[i]))return i;return-1}_prev(){const t=this._getCurrentIndex();if(t<=0)return;const e=this._findNavTarget(t,-1);e>=0&&this._navigateTo(this.assets[e])}_next(){const t=this._getCurrentIndex();if(t<0||t>=this.assets.length-1)return;const e=this._findNavTarget(t,1);e>=0&&this._navigateTo(this.assets[e])}_getFullscreenImageUrl(t){var i,a;const e=(i=t.url)==null?void 0:i.cdn;if(!e)return pt(t)||"";if(((a=t.extension)==null?void 0:a.toLowerCase())==="svg")return e;const s=ze(e,this.containerToken);return Ke(s,{w:String(window.screen.width),dpr:String(window.devicePixelRatio||1),org_if_sml:"1"})}_getBlurDimensions(t){var n,l;const e=(n=t.info)==null?void 0:n.img_w,s=(l=t.info)==null?void 0:l.img_h;if(!e||!s)return{width:"100vw",height:"100vh"};const i=window.innerWidth,a=window.innerHeight,r=Math.min(i/e,a/s,1);return{width:`${Math.round(e*r)}px`,height:`${Math.round(s*r)}px`}}_onFsImageLoad(){this._fsImageLoaded=!0}_getTagEntries(t){if(!t)return[];if(Array.isArray(t))return this._parseTagArray(t);const e=Object.values(t);if(e.length>0&&Array.isArray(e[0])){const s=e.flat(),i=new Set;return s.filter(a=>!a.label||i.has(a.sid)?!1:(i.add(a.sid),!0))}return e.map(s=>({label:s.label,sid:s.sid})).filter(s=>s.label)}_parseTagArray(t){return t.map(e=>{if(typeof e=="string")return{label:e,sid:e};const s=e;return{label:s.label||Object.values(s.names||{})[0]||"",sid:s.sid||""}}).filter(e=>e.label)}_applyTagFilter(t){this.dispatchEvent(new CustomEvent("filter-update",{detail:{key:v.TAGS,values:[t],operator:x.IS},bubbles:!0,composed:!0}))}_applyLabelFilter(t){this.dispatchEvent(new CustomEvent("filter-update",{detail:{key:v.LABELS,values:[t],operator:x.IS},bubbles:!0,composed:!0}))}_toggleSection(t){const e=new Set(this._openSections);e.has(t)?e.delete(t):e.add(t),this._openSections=e}_renderFileInfoSection(t){const e=this._getFileInfoRows(t);if(e.length===0)return o.nothing;const s=this._openSections.has("file-info");return o.html`
5232
5380
  <div class="accordion">
5233
5381
  <button
5234
5382
  class="accordion-trigger"
@@ -5272,7 +5420,7 @@
5272
5420
  `)}
5273
5421
  </div>
5274
5422
  </div>
5275
- `}_getFileInfoRows(t){var s,i,a,r,n,l;const e=[];return e.push({label:"File name",value:t.name}),t.extension&&e.push({label:"Type",value:t.extension.toUpperCase()}),(s=t.size)!=null&&s.bytes&&e.push({label:"Size",value:jt(t.size.bytes)}),(i=t.info)!=null&&i.img_w&&e.push({label:"Dimensions",value:Ss(t.info.img_w,t.info.img_h)}),(a=t.info)!=null&&a.video_w&&e.push({label:"Video resolution",value:`${t.info.video_w} x ${t.info.video_h}`}),(((r=t.info)==null?void 0:r.video_duration)??((n=t.info)==null?void 0:n.duration))!=null&&e.push({label:"Duration",value:`${Math.round(t.info.video_duration??t.info.duration)}s`}),(l=t.info)!=null&&l.color_space&&e.push({label:"Color space",value:t.info.color_space}),t.created_at&&e.push({label:"Created",value:dt(t.created_at)}),t.modified_at&&e.push({label:"Modified",value:dt(t.modified_at)}),e}_buildFieldMap(){const t=new Map;for(const e of this.metadataFields)t.set(e.key,e),e.ckey&&t.set(e.ckey,e),e.slug&&t.set(e.slug,e);return t}_resolveSlug(t,e){var i;if(!((i=e.possible_values)!=null&&i.length)||!t.startsWith("@"))return t;const s=e.possible_values.find(a=>a.internal_unique_value===t||a.api_value===t);return(s==null?void 0:s.label)??t}_resolveFieldValue(t,e){var s;if(t==null||t==="")return"";if(e.regionalVariantsGroupUuid&&typeof t=="object"&&t!==null&&!Array.isArray(t)){const i=this.regionalFilters[e.regionalVariantsGroupUuid];if(i){const a=t[i];if(a!=null&&a!=="")return this._resolveFieldValue(a,{...e,regionalVariantsGroupUuid:void 0})}return""}if((s=e.possible_values)!=null&&s.length)return Array.isArray(t)?t.map(a=>this._resolveSlug(String(a),e)).filter(Boolean).join(", "):this._resolveSlug(String(t),e);if(Array.isArray(t))return t.join(", ");if(typeof t=="object"){const i=JSON.stringify(t);return i==="{}"||i==="[]"?"":i}return String(t)}_getAllMetadataRows(t){var r,n,l,d;const e=[],s=this._buildFieldMap(),i=new Set;if(this.metadataFields.length>0){const h=t;for(const u of this.metadataFields){const f=h[u.key]??((n=(r=t.info)==null?void 0:r.metadata)==null?void 0:n[u.key])??((l=t.meta)==null?void 0:l[u.key]),p=this._resolveFieldValue(f,u);if(!p)continue;i.add(u.key),u.slug&&i.add(u.slug);const g=p.length>50;e.push({label:u.label,value:p,wrap:g})}}if(t.meta)for(const[h,u]of Object.entries(t.meta)){if(i.has(h)||u==null||u==="")continue;const f=s.get(h);if(f){const p=this._resolveFieldValue(u,f);if(!p)continue;i.add(h);const g=p.length>50;e.push({label:f.label,value:p,wrap:g})}else{const p=typeof u=="object"?JSON.stringify(u):String(u);if(!p||p==="{}"||p==="[]")continue;i.add(h);const g=h.charAt(0).toUpperCase()+h.slice(1).replace(/_/g," "),m=p.length>50;e.push({label:g,value:p,wrap:m})}}const a=(d=t.info)==null?void 0:d.metadata;if(a&&typeof a=="object")for(const[h,u]of Object.entries(a)){if(i.has(h)||u==null||u==="")continue;const f=s.get(h);if(f){const p=this._resolveFieldValue(u,f);if(!p)continue;i.add(h);const g=p.length>50;e.push({label:f.label,value:p,wrap:g})}else{const p=typeof u=="object"?JSON.stringify(u):String(u);if(!p||p==="{}"||p==="[]")continue;i.add(h);const g=h.charAt(0).toUpperCase()+h.slice(1).replace(/_/g," "),m=p.length>50;e.push({label:g,value:p,wrap:m})}}return e}_getAssetLabels(t){return!t.labels||t.labels.length===0?[]:t.labels.map(e=>this.labels.find(s=>s.sid===e||s.uuid===e)).filter(e=>!!e)}_renderLabelsRow(t){const e=this._getAssetLabels(t);return e.length===0?o.nothing:o.html`
5423
+ `}_getFileInfoRows(t){var s,i,a,r,n,l;const e=[];return e.push({label:"File name",value:t.name}),t.extension&&e.push({label:"Type",value:t.extension.toUpperCase()}),(s=t.size)!=null&&s.bytes&&e.push({label:"Size",value:Ut(t.size.bytes)}),(i=t.info)!=null&&i.img_w&&e.push({label:"Dimensions",value:Ss(t.info.img_w,t.info.img_h)}),(a=t.info)!=null&&a.video_w&&e.push({label:"Video resolution",value:`${t.info.video_w} x ${t.info.video_h}`}),(((r=t.info)==null?void 0:r.video_duration)??((n=t.info)==null?void 0:n.duration))!=null&&e.push({label:"Duration",value:`${Math.round(t.info.video_duration??t.info.duration)}s`}),(l=t.info)!=null&&l.color_space&&e.push({label:"Color space",value:t.info.color_space}),t.created_at&&e.push({label:"Created",value:ht(t.created_at)}),t.modified_at&&e.push({label:"Modified",value:ht(t.modified_at)}),e}_buildFieldMap(){const t=new Map;for(const e of this.metadataFields)t.set(e.key,e),e.ckey&&t.set(e.ckey,e),e.slug&&t.set(e.slug,e);return t}_resolveSlug(t,e){var i;if(!((i=e.possible_values)!=null&&i.length)||!t.startsWith("@"))return t;const s=e.possible_values.find(a=>a.internal_unique_value===t||a.api_value===t);return(s==null?void 0:s.label)??t}_resolveFieldValue(t,e){var s;if(t==null||t==="")return"";if(e.regionalVariantsGroupUuid&&typeof t=="object"&&t!==null&&!Array.isArray(t)){const i=this.regionalFilters[e.regionalVariantsGroupUuid];if(i){const a=t[i];if(a!=null&&a!=="")return this._resolveFieldValue(a,{...e,regionalVariantsGroupUuid:void 0})}return""}if((s=e.possible_values)!=null&&s.length)return Array.isArray(t)?t.map(a=>this._resolveSlug(String(a),e)).filter(Boolean).join(", "):this._resolveSlug(String(t),e);if(Array.isArray(t))return t.join(", ");if(typeof t=="object"){const i=JSON.stringify(t);return i==="{}"||i==="[]"?"":i}return String(t)}_getAllMetadataRows(t){var r,n,l,d;const e=[],s=this._buildFieldMap(),i=new Set;if(this.metadataFields.length>0){const h=t;for(const u of this.metadataFields){const f=h[u.key]??((n=(r=t.info)==null?void 0:r.metadata)==null?void 0:n[u.key])??((l=t.meta)==null?void 0:l[u.key]),p=this._resolveFieldValue(f,u);if(!p)continue;i.add(u.key),u.slug&&i.add(u.slug);const g=p.length>50;e.push({label:u.label,value:p,wrap:g})}}if(t.meta)for(const[h,u]of Object.entries(t.meta)){if(i.has(h)||u==null||u==="")continue;const f=s.get(h);if(f){const p=this._resolveFieldValue(u,f);if(!p)continue;i.add(h);const g=p.length>50;e.push({label:f.label,value:p,wrap:g})}else{const p=typeof u=="object"?JSON.stringify(u):String(u);if(!p||p==="{}"||p==="[]")continue;i.add(h);const g=h.charAt(0).toUpperCase()+h.slice(1).replace(/_/g," "),m=p.length>50;e.push({label:g,value:p,wrap:m})}}const a=(d=t.info)==null?void 0:d.metadata;if(a&&typeof a=="object")for(const[h,u]of Object.entries(a)){if(i.has(h)||u==null||u==="")continue;const f=s.get(h);if(f){const p=this._resolveFieldValue(u,f);if(!p)continue;i.add(h);const g=p.length>50;e.push({label:f.label,value:p,wrap:g})}else{const p=typeof u=="object"?JSON.stringify(u):String(u);if(!p||p==="{}"||p==="[]")continue;i.add(h);const g=h.charAt(0).toUpperCase()+h.slice(1).replace(/_/g," "),m=p.length>50;e.push({label:g,value:p,wrap:m})}}return e}_getAssetLabels(t){return!t.labels||t.labels.length===0?[]:t.labels.map(e=>this.labels.find(s=>s.sid===e||s.uuid===e)).filter(e=>!!e)}_renderLabelsRow(t){const e=this._getAssetLabels(t);return e.length===0?o.nothing:o.html`
5276
5424
  <div class="meta-row" style="flex-direction:column;gap:6px">
5277
5425
  <span class="meta-label">Labels</span>
5278
5426
  <div class="tags-list">
@@ -5295,7 +5443,7 @@
5295
5443
  `)}
5296
5444
  </div>
5297
5445
  </div>
5298
- `}render(){var M,$,C,O,U,V,Ae,tt;const t=this.asset;if(!t)return o.nothing;const e=Le(t.type),s=e==="image",i=e==="video",a=e==="audio",r=((M=t.extension)==null?void 0:M.toLowerCase())==="pdf",n=Ze(t.extension||""),l=Rt(t.extension||""),d=(($=t.extension)==null?void 0:$.toLowerCase())==="svg",h=ct(t),u=s?d?((C=t.url)==null?void 0:C.cdn)||"":h||De(((O=t.url)==null?void 0:O.cdn)||"",this.containerToken):"",f=s?this._getFullscreenImageUrl(t):"",p=s&&!d?this._getBlurDimensions(t):null,g=i&&((U=t.url)==null?void 0:U.cdn)||"",m=i&&(((V=t.info)==null?void 0:V.video_thumbnail)||((Ae=t.info)==null?void 0:Ae.preview))||"",_=r&&!s?Nt(t):"",y=this._getCurrentIndex(),S=y>0&&this._findNavTarget(y,-1)>=0,w=y>=0&&this._findNavTarget(y,1)>=0,E=this.assets.length>1;return o.html`
5446
+ `}render(){var M,$,C,O,V,q,Te,it;const t=this.asset;if(!t)return o.nothing;const e=Oe(t.type),s=e==="image",i=e==="video",a=e==="audio",r=((M=t.extension)==null?void 0:M.toLowerCase())==="pdf",n=et(t.extension||""),l=Nt(t.extension||""),d=(($=t.extension)==null?void 0:$.toLowerCase())==="svg",h=pt(t),u=s?d?((C=t.url)==null?void 0:C.cdn)||"":h||ze(((O=t.url)==null?void 0:O.cdn)||"",this.containerToken):"",f=s?this._getFullscreenImageUrl(t):"",p=s&&!d?this._getBlurDimensions(t):null,g=i&&((V=t.url)==null?void 0:V.cdn)||"",m=i&&(((q=t.info)==null?void 0:q.video_thumbnail)||((Te=t.info)==null?void 0:Te.preview))||"",_=r&&!s?Bt(t):"",y=this._getCurrentIndex(),S=y>0&&this._findNavTarget(y,-1)>=0,w=y>=0&&this._findNavTarget(y,1)>=0,E=this.assets.length>1;return o.html`
5299
5447
  <div class="panel">
5300
5448
  <div class="panel-header">
5301
5449
  <span class="panel-title" title=${t.name}>${t.name}</span>
@@ -5354,7 +5502,7 @@
5354
5502
  </div>
5355
5503
  `:o.nothing}
5356
5504
  ${i?o.html`<video src=${g} poster=${m||o.nothing} controls controlsList="nofullscreen" @loadeddata=${()=>{this._previewLoading=!1}} @error=${()=>{this._previewLoading=!1}}></video>`:o.nothing}
5357
- ${a?o.html`<audio src=${((tt=t.url)==null?void 0:tt.cdn)||""} controls></audio>`:o.nothing}
5505
+ ${a?o.html`<audio src=${((it=t.url)==null?void 0:it.cdn)||""} controls></audio>`:o.nothing}
5358
5506
  ${r&&!s?o.html`
5359
5507
  <img
5360
5508
  src=${_||n}
@@ -5682,7 +5830,7 @@
5682
5830
  .panel { animation: none; }
5683
5831
  .accordion-chevron { transition: none; }
5684
5832
  }
5685
- `;I([c.property({type:Object})],P.prototype,"asset",2);I([c.property({type:Array})],P.prototype,"assets",2);I([c.property({type:Array})],P.prototype,"selectedIds",2);I([c.property()],P.prototype,"containerToken",2);I([c.property({type:Boolean})],P.prototype,"showMetadata",2);I([c.property({type:Array})],P.prototype,"metadataFields",2);I([c.property({type:Array})],P.prototype,"labels",2);I([c.property({type:Object})],P.prototype,"regionalFilters",2);I([c.property({type:Boolean})],P.prototype,"multiSelect",2);I([c.query(".preview-area")],P.prototype,"previewArea",2);I([c.query("video")],P.prototype,"_videoEl",2);I([c.state()],P.prototype,"_isFullscreen",2);I([c.state()],P.prototype,"_fsImageLoaded",2);I([c.state()],P.prototype,"_previewLoading",2);I([c.state()],P.prototype,"_openSections",2);P=I([c.customElement("ap-preview-panel")],P);var ar=Object.defineProperty,rr=Object.getOwnPropertyDescriptor,Bt=(t,e,s,i)=>{for(var a=i>1?void 0:i?rr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ar(e,s,a),a};const or={search:[{tag:"circle",attrs:{cx:"11",cy:"11",r:"8"}},{tag:"path",attrs:{d:"m21 21-4.3-4.3"}}],check:"M20 6 9 17l-5-5","check-check":[{tag:"path",attrs:{d:"M18 6 7 17l-5-5"}},{tag:"path",attrs:{d:"m22 10-7.5 7.5L13 16"}}],close:[{tag:"path",attrs:{d:"M18 6 6 18"}},{tag:"path",attrs:{d:"m6 6 12 12"}}],"chevron-left":"m15 18-6-6 6-6","chevron-right":"m9 18 6-6-6-6","chevron-down":"m6 9 6 6 6-6",download:[{tag:"path",attrs:{d:"M12 15V3"}},{tag:"path",attrs:{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}},{tag:"path",attrs:{d:"m7 10 5 5 5-5"}}],upload:[{tag:"path",attrs:{d:"M12 3v12"}},{tag:"path",attrs:{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}},{tag:"path",attrs:{d:"m17 8-5-5-5 5"}}],fullscreen:[{tag:"path",attrs:{d:"M8 3H5a2 2 0 0 0-2 2v3"}},{tag:"path",attrs:{d:"M21 8V5a2 2 0 0 0-2-2h-3"}},{tag:"path",attrs:{d:"M3 16v3a2 2 0 0 0 2 2h3"}},{tag:"path",attrs:{d:"M16 21h3a2 2 0 0 0 2-2v-3"}}],trash:[{tag:"path",attrs:{d:"M10 11v6"}},{tag:"path",attrs:{d:"M14 11v6"}},{tag:"path",attrs:{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}},{tag:"path",attrs:{d:"M3 6h18"}},{tag:"path",attrs:{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}}],more:[{tag:"circle",attrs:{cx:"12",cy:"12",r:"1"}},{tag:"circle",attrs:{cx:"19",cy:"12",r:"1"}},{tag:"circle",attrs:{cx:"5",cy:"12",r:"1"}}],grid:[{tag:"rect",attrs:{x:"3",y:"3",width:"18",height:"18",rx:"2"}},{tag:"path",attrs:{d:"M12 3v18"}},{tag:"path",attrs:{d:"M3 12h18"}}],list:[{tag:"path",attrs:{d:"M3 5h.01"}},{tag:"path",attrs:{d:"M3 12h.01"}},{tag:"path",attrs:{d:"M3 19h.01"}},{tag:"path",attrs:{d:"M8 5h13"}},{tag:"path",attrs:{d:"M8 12h13"}},{tag:"path",attrs:{d:"M8 19h13"}}],preview:[{tag:"path",attrs:{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}},{tag:"circle",attrs:{cx:"12",cy:"12",r:"3"}}],select:[{tag:"path",attrs:{d:"M5 12h14"}},{tag:"path",attrs:{d:"M12 5v14"}}],"gallery-vertical-end":[{tag:"path",attrs:{d:"M7 2h10"}},{tag:"path",attrs:{d:"M5 6h14"}},{tag:"rect",attrs:{width:"18",height:"12",x:"3",y:"10",rx:"2"}}],filter:[{tag:"path",attrs:{d:"M2 5h20"}},{tag:"path",attrs:{d:"M6 12h12"}},{tag:"path",attrs:{d:"M9 19h6"}}],sort:[{tag:"path",attrs:{d:"m21 16-4 4-4-4"}},{tag:"path",attrs:{d:"M17 20V4"}},{tag:"path",attrs:{d:"m3 8 4-4 4 4"}},{tag:"path",attrs:{d:"M7 4v16"}}],"sort-asc":[{tag:"path",attrs:{d:"m3 8 4-4 4 4"}},{tag:"path",attrs:{d:"M7 4v16"}},{tag:"path",attrs:{d:"M11 12h4"}},{tag:"path",attrs:{d:"M11 16h7"}},{tag:"path",attrs:{d:"M11 20h10"}}],"sort-desc":[{tag:"path",attrs:{d:"m3 16 4 4 4-4"}},{tag:"path",attrs:{d:"M7 20V4"}},{tag:"path",attrs:{d:"M11 4h4"}},{tag:"path",attrs:{d:"M11 8h7"}},{tag:"path",attrs:{d:"M11 12h10"}}],image:[{tag:"rect",attrs:{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2"}},{tag:"circle",attrs:{cx:"9",cy:"9",r:"2"}},{tag:"path",attrs:{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"}}],video:[{tag:"path",attrs:{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5"}},{tag:"rect",attrs:{x:"2",y:"6",width:"14",height:"12",rx:"2"}}],audio:[{tag:"path",attrs:{d:"M9 18V5l12-2v13"}},{tag:"circle",attrs:{cx:"6",cy:"18",r:"3"}},{tag:"circle",attrs:{cx:"18",cy:"16",r:"3"}}],music:[{tag:"path",attrs:{d:"M9 18V5l12-2v13"}},{tag:"circle",attrs:{cx:"6",cy:"18",r:"3"}},{tag:"circle",attrs:{cx:"18",cy:"16",r:"3"}}],document:[{tag:"path",attrs:{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}},{tag:"path",attrs:{d:"M14 2v5a1 1 0 0 0 1 1h5"}},{tag:"path",attrs:{d:"M10 9H8"}},{tag:"path",attrs:{d:"M16 13H8"}},{tag:"path",attrs:{d:"M16 17H8"}}],"file-text":[{tag:"path",attrs:{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}},{tag:"path",attrs:{d:"M14 2v5a1 1 0 0 0 1 1h5"}},{tag:"path",attrs:{d:"M10 9H8"}},{tag:"path",attrs:{d:"M16 13H8"}},{tag:"path",attrs:{d:"M16 17H8"}}],file:[{tag:"path",attrs:{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}},{tag:"path",attrs:{d:"M14 2v5a1 1 0 0 0 1 1h5"}}],archive:[{tag:"rect",attrs:{width:"20",height:"5",x:"2",y:"3",rx:"1"}},{tag:"path",attrs:{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8"}},{tag:"path",attrs:{d:"M10 12h4"}}],font:[{tag:"path",attrs:{d:"M12 4v16"}},{tag:"path",attrs:{d:"M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2"}},{tag:"path",attrs:{d:"M9 20h6"}}],text:[{tag:"path",attrs:{d:"M12 4v16"}},{tag:"path",attrs:{d:"M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2"}},{tag:"path",attrs:{d:"M9 20h6"}}],clapperboard:[{tag:"path",attrs:{d:"m12.296 3.464 3.02 3.956"}},{tag:"path",attrs:{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z"}},{tag:"path",attrs:{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}},{tag:"path",attrs:{d:"m6.18 5.276 3.1 3.899"}}],folder:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z","folder-open":"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",inbox:[{tag:"path",attrs:{d:"M22 12L16 12L14 15L10 15L8 12L2 12"}},{tag:"path",attrs:{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"}}],tags:[{tag:"path",attrs:{d:"M13.172 2a2 2 0 0 1 1.414.586l6.71 6.71a2.4 2.4 0 0 1 0 3.408l-4.592 4.592a2.4 2.4 0 0 1-3.408 0l-6.71-6.71A2 2 0 0 1 6 9.172V3a1 1 0 0 1 1-1z"}},{tag:"path",attrs:{d:"M2 7v6.172a2 2 0 0 0 .586 1.414l6.71 6.71a2.4 2.4 0 0 0 3.191.193"}},{tag:"circle",attrs:{cx:"10.5",cy:"6.5",r:".5",fill:"currentColor"}}],tag:[{tag:"path",attrs:{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z"}},{tag:"circle",attrs:{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor"}}],hash:[{tag:"path",attrs:{d:"M4 9h16"}},{tag:"path",attrs:{d:"M4 15h16"}},{tag:"path",attrs:{d:"M10 3 8 21"}},{tag:"path",attrs:{d:"M14 3 16 21"}}],calendar:[{tag:"path",attrs:{d:"M8 2v4"}},{tag:"path",attrs:{d:"M16 2v4"}},{tag:"rect",attrs:{width:"18",height:"18",x:"3",y:"4",rx:"2"}},{tag:"path",attrs:{d:"M3 10h18"}}],"file-type":[{tag:"path",attrs:{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4"}},{tag:"path",attrs:{d:"M14 2v4a2 2 0 0 0 2 2h4"}},{tag:"path",attrs:{d:"M2 13v-1h6v1"}},{tag:"path",attrs:{d:"M5 12v6"}},{tag:"path",attrs:{d:"M4 18h2"}}],scaling:[{tag:"path",attrs:{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"}},{tag:"path",attrs:{d:"M14 15H9v-5"}},{tag:"path",attrs:{d:"M20 9V4h-5"}},{tag:"path",attrs:{d:"M20 4l-6 6"}}],history:[{tag:"path",attrs:{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}},{tag:"path",attrs:{d:"M3 3v5h5"}},{tag:"path",attrs:{d:"M12 7v5l4 2"}}],"swatch-book":[{tag:"path",attrs:{d:"M11 17a4 4 0 0 1-8 0V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2Z"}},{tag:"path",attrs:{d:"M16.7 13H19a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H7"}},{tag:"path",attrs:{d:"M7 17h.01"}},{tag:"path",attrs:{d:"m11 8 2.3-2.3a2.4 2.4 0 0 1 3.404.004L18.6 7.6a2.4 2.4 0 0 1 .026 3.434L9.9 19.8"}}],"badge-check":[{tag:"path",attrs:{d:"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z"}},{tag:"path",attrs:{d:"m9 12 2 2 4-4"}}],box:[{tag:"path",attrs:{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"}},{tag:"path",attrs:{d:"m3.3 7 8.7 5 8.7-5"}},{tag:"path",attrs:{d:"M12 22V12"}}],"layout-grid":[{tag:"rect",attrs:{width:"7",height:"7",x:"3",y:"3",rx:"1"}},{tag:"rect",attrs:{width:"7",height:"7",x:"14",y:"3",rx:"1"}},{tag:"rect",attrs:{width:"7",height:"7",x:"14",y:"14",rx:"1"}},{tag:"rect",attrs:{width:"7",height:"7",x:"3",y:"14",rx:"1"}}],"layout-template":[{tag:"rect",attrs:{width:"18",height:"7",x:"3",y:"3",rx:"1"}},{tag:"rect",attrs:{width:"9",height:"7",x:"3",y:"14",rx:"1"}},{tag:"rect",attrs:{width:"5",height:"7",x:"16",y:"14",rx:"1"}}],pin:[{tag:"path",attrs:{d:"M12 17v5"}},{tag:"path",attrs:{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V17h14v-1.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 2-2H6a2 2 0 0 0 2 2 1 1 0 0 1 1 1z"}}],"pin-off":[{tag:"path",attrs:{d:"M12 17v5"}},{tag:"path",attrs:{d:"M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 2-2H6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v2.34"}},{tag:"path",attrs:{d:"M2 2l20 20"}},{tag:"path",attrs:{d:"M9 12a2 2 0 0 1-1.11 1.79l-1.78.9"}},{tag:"path",attrs:{d:"M17 17H5"}}],lock:[{tag:"rect",attrs:{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2"}},{tag:"path",attrs:{d:"M7 11V7a5 5 0 0 1 10 0v4"}}],globe:[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"path",attrs:{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"}},{tag:"path",attrs:{d:"M2 12h20"}}],"circle-check-big":[{tag:"path",attrs:{d:"M21.801 10A10 10 0 1 1 17 3.335"}},{tag:"path",attrs:{d:"m9 11 3 3L22 4"}}],"x-circle":[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"path",attrs:{d:"m15 9-6 6"}},{tag:"path",attrs:{d:"m9 9 6 6"}}],ban:[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"path",attrs:{d:"m4.9 4.9 14.2 14.2"}}],clock:[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"path",attrs:{d:"M12 6v6l4 2"}}],"toggle-left":[{tag:"rect",attrs:{width:"20",height:"14",x:"2",y:"5",rx:"7"}},{tag:"circle",attrs:{cx:"9",cy:"12",r:"3"}}],"file-digit":[{tag:"path",attrs:{d:"M4 12V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2"}},{tag:"path",attrs:{d:"M14 2v5a1 1 0 0 0 1 1h5"}},{tag:"path",attrs:{d:"M10 16h2v6"}},{tag:"path",attrs:{d:"M10 22h4"}},{tag:"rect",attrs:{width:"4",height:"6",x:"2",y:"16",rx:"2"}}],"decimals-arrow-right":[{tag:"path",attrs:{d:"M10 18h10"}},{tag:"path",attrs:{d:"m17 21 3-3-3-3"}},{tag:"path",attrs:{d:"M3 11h.01"}},{tag:"rect",attrs:{width:"5",height:"8",x:"15",y:"3",rx:"2.5"}},{tag:"rect",attrs:{width:"5",height:"8",x:"6",y:"3",rx:"2.5"}}],"text-initial":[{tag:"path",attrs:{d:"M15 5h6"}},{tag:"path",attrs:{d:"M15 12h6"}},{tag:"path",attrs:{d:"M3 19h18"}},{tag:"path",attrs:{d:"m3 12 3.553-7.724a.5.5 0 0 1 .894 0L11 12"}},{tag:"path",attrs:{d:"M3.92 10h6.16"}}],"text-align-justify":[{tag:"path",attrs:{d:"M3 5h18"}},{tag:"path",attrs:{d:"M3 12h18"}},{tag:"path",attrs:{d:"M3 19h18"}}],paperclip:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551","link-2":[{tag:"path",attrs:{d:"M9 17H7A5 5 0 0 1 7 7h2"}},{tag:"path",attrs:{d:"M15 7h2a5 5 0 1 1 0 10h-2"}},{tag:"path",attrs:{d:"M8 12h8"}}],"circle-dot":[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"circle",attrs:{cx:"12",cy:"12",r:"1"}}],"square-check":[{tag:"rect",attrs:{width:"18",height:"18",x:"3",y:"3",rx:"2"}},{tag:"path",attrs:{d:"m9 12 2 2 4-4"}}],locate:[{tag:"path",attrs:{d:"M2 12h3"}},{tag:"path",attrs:{d:"M19 12h3"}},{tag:"path",attrs:{d:"M12 2v3"}},{tag:"path",attrs:{d:"M12 19v3"}},{tag:"circle",attrs:{cx:"12",cy:"12",r:"7"}}],"list-ordered":[{tag:"path",attrs:{d:"M11 5h10"}},{tag:"path",attrs:{d:"M11 12h10"}},{tag:"path",attrs:{d:"M11 19h10"}},{tag:"path",attrs:{d:"M4 4h1v5"}},{tag:"path",attrs:{d:"M4 9h2"}},{tag:"path",attrs:{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02"}}],plus:[{tag:"path",attrs:{d:"M5 12h14"}},{tag:"path",attrs:{d:"M12 5v14"}}],component:[{tag:"path",attrs:{d:"M15.536 11.293a1 1 0 0 0 0 1.414l2.376 2.377a1 1 0 0 0 1.414 0l2.377-2.377a1 1 0 0 0 0-1.414l-2.377-2.377a1 1 0 0 0-1.414 0z"}},{tag:"path",attrs:{d:"M2.297 11.293a1 1 0 0 0 0 1.414l2.377 2.377a1 1 0 0 0 1.414 0l2.377-2.377a1 1 0 0 0 0-1.414L6.088 8.916a1 1 0 0 0-1.414 0z"}},{tag:"path",attrs:{d:"M8.916 17.912a1 1 0 0 0 0 1.415l2.377 2.376a1 1 0 0 0 1.414 0l2.377-2.376a1 1 0 0 0 0-1.415l-2.377-2.376a1 1 0 0 0-1.414 0z"}},{tag:"path",attrs:{d:"M8.916 4.674a1 1 0 0 0 0 1.414l2.377 2.376a1 1 0 0 0 1.414 0l2.377-2.376a1 1 0 0 0 0-1.414l-2.377-2.377a1 1 0 0 0-1.414 0z"}}]};let Xe=class extends o.LitElement{constructor(){super(...arguments),this.name="",this.size=20}render(){const t=or[this.name];if(!t)return o.nothing;const e=typeof t=="string"?o.svg`<path d=${t}></path>`:t.map(s=>{const{tag:i,attrs:a}=s;return i==="circle"?o.svg`<circle cx=${a.cx} cy=${a.cy} r=${a.r} fill=${a.fill??"none"}></circle>`:i==="rect"?o.svg`<rect width=${a.width} height=${a.height} x=${a.x} y=${a.y} rx=${a.rx??"0"} ry=${a.ry??"0"}></rect>`:o.svg`<path d=${a.d}></path>`});return o.html`
5833
+ `;I([c.property({type:Object})],P.prototype,"asset",2);I([c.property({type:Array})],P.prototype,"assets",2);I([c.property({type:Array})],P.prototype,"selectedIds",2);I([c.property()],P.prototype,"containerToken",2);I([c.property({type:Boolean})],P.prototype,"showMetadata",2);I([c.property({type:Array})],P.prototype,"metadataFields",2);I([c.property({type:Array})],P.prototype,"labels",2);I([c.property({type:Object})],P.prototype,"regionalFilters",2);I([c.property({type:Boolean})],P.prototype,"multiSelect",2);I([c.query(".preview-area")],P.prototype,"previewArea",2);I([c.query("video")],P.prototype,"_videoEl",2);I([c.state()],P.prototype,"_isFullscreen",2);I([c.state()],P.prototype,"_fsImageLoaded",2);I([c.state()],P.prototype,"_previewLoading",2);I([c.state()],P.prototype,"_openSections",2);P=I([c.customElement("ap-preview-panel")],P);var cr=Object.defineProperty,dr=Object.getOwnPropertyDescriptor,Vt=(t,e,s,i)=>{for(var a=i>1?void 0:i?dr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&cr(e,s,a),a};const pr={search:[{tag:"circle",attrs:{cx:"11",cy:"11",r:"8"}},{tag:"path",attrs:{d:"m21 21-4.3-4.3"}}],check:"M20 6 9 17l-5-5","check-check":[{tag:"path",attrs:{d:"M18 6 7 17l-5-5"}},{tag:"path",attrs:{d:"m22 10-7.5 7.5L13 16"}}],close:[{tag:"path",attrs:{d:"M18 6 6 18"}},{tag:"path",attrs:{d:"m6 6 12 12"}}],"chevron-left":"m15 18-6-6 6-6","chevron-right":"m9 18 6-6-6-6","chevron-down":"m6 9 6 6 6-6",download:[{tag:"path",attrs:{d:"M12 15V3"}},{tag:"path",attrs:{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}},{tag:"path",attrs:{d:"m7 10 5 5 5-5"}}],upload:[{tag:"path",attrs:{d:"M12 3v12"}},{tag:"path",attrs:{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}},{tag:"path",attrs:{d:"m17 8-5-5-5 5"}}],fullscreen:[{tag:"path",attrs:{d:"M8 3H5a2 2 0 0 0-2 2v3"}},{tag:"path",attrs:{d:"M21 8V5a2 2 0 0 0-2-2h-3"}},{tag:"path",attrs:{d:"M3 16v3a2 2 0 0 0 2 2h3"}},{tag:"path",attrs:{d:"M16 21h3a2 2 0 0 0 2-2v-3"}}],trash:[{tag:"path",attrs:{d:"M10 11v6"}},{tag:"path",attrs:{d:"M14 11v6"}},{tag:"path",attrs:{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}},{tag:"path",attrs:{d:"M3 6h18"}},{tag:"path",attrs:{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}}],more:[{tag:"circle",attrs:{cx:"12",cy:"12",r:"1"}},{tag:"circle",attrs:{cx:"19",cy:"12",r:"1"}},{tag:"circle",attrs:{cx:"5",cy:"12",r:"1"}}],grid:[{tag:"rect",attrs:{x:"3",y:"3",width:"18",height:"18",rx:"2"}},{tag:"path",attrs:{d:"M12 3v18"}},{tag:"path",attrs:{d:"M3 12h18"}}],list:[{tag:"path",attrs:{d:"M3 5h.01"}},{tag:"path",attrs:{d:"M3 12h.01"}},{tag:"path",attrs:{d:"M3 19h.01"}},{tag:"path",attrs:{d:"M8 5h13"}},{tag:"path",attrs:{d:"M8 12h13"}},{tag:"path",attrs:{d:"M8 19h13"}}],preview:[{tag:"path",attrs:{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}},{tag:"circle",attrs:{cx:"12",cy:"12",r:"3"}}],select:[{tag:"path",attrs:{d:"M5 12h14"}},{tag:"path",attrs:{d:"M12 5v14"}}],"gallery-vertical-end":[{tag:"path",attrs:{d:"M7 2h10"}},{tag:"path",attrs:{d:"M5 6h14"}},{tag:"rect",attrs:{width:"18",height:"12",x:"3",y:"10",rx:"2"}}],filter:[{tag:"path",attrs:{d:"M2 5h20"}},{tag:"path",attrs:{d:"M6 12h12"}},{tag:"path",attrs:{d:"M9 19h6"}}],sort:[{tag:"path",attrs:{d:"m21 16-4 4-4-4"}},{tag:"path",attrs:{d:"M17 20V4"}},{tag:"path",attrs:{d:"m3 8 4-4 4 4"}},{tag:"path",attrs:{d:"M7 4v16"}}],"sort-asc":[{tag:"path",attrs:{d:"m3 8 4-4 4 4"}},{tag:"path",attrs:{d:"M7 4v16"}},{tag:"path",attrs:{d:"M11 12h4"}},{tag:"path",attrs:{d:"M11 16h7"}},{tag:"path",attrs:{d:"M11 20h10"}}],"sort-desc":[{tag:"path",attrs:{d:"m3 16 4 4 4-4"}},{tag:"path",attrs:{d:"M7 20V4"}},{tag:"path",attrs:{d:"M11 4h4"}},{tag:"path",attrs:{d:"M11 8h7"}},{tag:"path",attrs:{d:"M11 12h10"}}],image:[{tag:"rect",attrs:{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2"}},{tag:"circle",attrs:{cx:"9",cy:"9",r:"2"}},{tag:"path",attrs:{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"}}],video:[{tag:"path",attrs:{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5"}},{tag:"rect",attrs:{x:"2",y:"6",width:"14",height:"12",rx:"2"}}],audio:[{tag:"path",attrs:{d:"M9 18V5l12-2v13"}},{tag:"circle",attrs:{cx:"6",cy:"18",r:"3"}},{tag:"circle",attrs:{cx:"18",cy:"16",r:"3"}}],music:[{tag:"path",attrs:{d:"M9 18V5l12-2v13"}},{tag:"circle",attrs:{cx:"6",cy:"18",r:"3"}},{tag:"circle",attrs:{cx:"18",cy:"16",r:"3"}}],document:[{tag:"path",attrs:{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}},{tag:"path",attrs:{d:"M14 2v5a1 1 0 0 0 1 1h5"}},{tag:"path",attrs:{d:"M10 9H8"}},{tag:"path",attrs:{d:"M16 13H8"}},{tag:"path",attrs:{d:"M16 17H8"}}],"file-text":[{tag:"path",attrs:{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}},{tag:"path",attrs:{d:"M14 2v5a1 1 0 0 0 1 1h5"}},{tag:"path",attrs:{d:"M10 9H8"}},{tag:"path",attrs:{d:"M16 13H8"}},{tag:"path",attrs:{d:"M16 17H8"}}],file:[{tag:"path",attrs:{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}},{tag:"path",attrs:{d:"M14 2v5a1 1 0 0 0 1 1h5"}}],archive:[{tag:"rect",attrs:{width:"20",height:"5",x:"2",y:"3",rx:"1"}},{tag:"path",attrs:{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8"}},{tag:"path",attrs:{d:"M10 12h4"}}],font:[{tag:"path",attrs:{d:"M12 4v16"}},{tag:"path",attrs:{d:"M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2"}},{tag:"path",attrs:{d:"M9 20h6"}}],text:[{tag:"path",attrs:{d:"M12 4v16"}},{tag:"path",attrs:{d:"M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2"}},{tag:"path",attrs:{d:"M9 20h6"}}],clapperboard:[{tag:"path",attrs:{d:"m12.296 3.464 3.02 3.956"}},{tag:"path",attrs:{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z"}},{tag:"path",attrs:{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}},{tag:"path",attrs:{d:"m6.18 5.276 3.1 3.899"}}],folder:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z","folder-open":"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",inbox:[{tag:"path",attrs:{d:"M22 12L16 12L14 15L10 15L8 12L2 12"}},{tag:"path",attrs:{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"}}],tags:[{tag:"path",attrs:{d:"M13.172 2a2 2 0 0 1 1.414.586l6.71 6.71a2.4 2.4 0 0 1 0 3.408l-4.592 4.592a2.4 2.4 0 0 1-3.408 0l-6.71-6.71A2 2 0 0 1 6 9.172V3a1 1 0 0 1 1-1z"}},{tag:"path",attrs:{d:"M2 7v6.172a2 2 0 0 0 .586 1.414l6.71 6.71a2.4 2.4 0 0 0 3.191.193"}},{tag:"circle",attrs:{cx:"10.5",cy:"6.5",r:".5",fill:"currentColor"}}],tag:[{tag:"path",attrs:{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z"}},{tag:"circle",attrs:{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor"}}],hash:[{tag:"path",attrs:{d:"M4 9h16"}},{tag:"path",attrs:{d:"M4 15h16"}},{tag:"path",attrs:{d:"M10 3 8 21"}},{tag:"path",attrs:{d:"M14 3 16 21"}}],calendar:[{tag:"path",attrs:{d:"M8 2v4"}},{tag:"path",attrs:{d:"M16 2v4"}},{tag:"rect",attrs:{width:"18",height:"18",x:"3",y:"4",rx:"2"}},{tag:"path",attrs:{d:"M3 10h18"}}],"file-type":[{tag:"path",attrs:{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4"}},{tag:"path",attrs:{d:"M14 2v4a2 2 0 0 0 2 2h4"}},{tag:"path",attrs:{d:"M2 13v-1h6v1"}},{tag:"path",attrs:{d:"M5 12v6"}},{tag:"path",attrs:{d:"M4 18h2"}}],scaling:[{tag:"path",attrs:{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"}},{tag:"path",attrs:{d:"M14 15H9v-5"}},{tag:"path",attrs:{d:"M20 9V4h-5"}},{tag:"path",attrs:{d:"M20 4l-6 6"}}],history:[{tag:"path",attrs:{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}},{tag:"path",attrs:{d:"M3 3v5h5"}},{tag:"path",attrs:{d:"M12 7v5l4 2"}}],"swatch-book":[{tag:"path",attrs:{d:"M11 17a4 4 0 0 1-8 0V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2Z"}},{tag:"path",attrs:{d:"M16.7 13H19a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H7"}},{tag:"path",attrs:{d:"M7 17h.01"}},{tag:"path",attrs:{d:"m11 8 2.3-2.3a2.4 2.4 0 0 1 3.404.004L18.6 7.6a2.4 2.4 0 0 1 .026 3.434L9.9 19.8"}}],"badge-check":[{tag:"path",attrs:{d:"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z"}},{tag:"path",attrs:{d:"m9 12 2 2 4-4"}}],box:[{tag:"path",attrs:{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"}},{tag:"path",attrs:{d:"m3.3 7 8.7 5 8.7-5"}},{tag:"path",attrs:{d:"M12 22V12"}}],"layout-grid":[{tag:"rect",attrs:{width:"7",height:"7",x:"3",y:"3",rx:"1"}},{tag:"rect",attrs:{width:"7",height:"7",x:"14",y:"3",rx:"1"}},{tag:"rect",attrs:{width:"7",height:"7",x:"14",y:"14",rx:"1"}},{tag:"rect",attrs:{width:"7",height:"7",x:"3",y:"14",rx:"1"}}],"layout-template":[{tag:"rect",attrs:{width:"18",height:"7",x:"3",y:"3",rx:"1"}},{tag:"rect",attrs:{width:"9",height:"7",x:"3",y:"14",rx:"1"}},{tag:"rect",attrs:{width:"5",height:"7",x:"16",y:"14",rx:"1"}}],pin:[{tag:"path",attrs:{d:"M12 17v5"}},{tag:"path",attrs:{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V17h14v-1.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 2-2H6a2 2 0 0 0 2 2 1 1 0 0 1 1 1z"}}],"pin-off":[{tag:"path",attrs:{d:"M12 17v5"}},{tag:"path",attrs:{d:"M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 2-2H6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v2.34"}},{tag:"path",attrs:{d:"M2 2l20 20"}},{tag:"path",attrs:{d:"M9 12a2 2 0 0 1-1.11 1.79l-1.78.9"}},{tag:"path",attrs:{d:"M17 17H5"}}],lock:[{tag:"rect",attrs:{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2"}},{tag:"path",attrs:{d:"M7 11V7a5 5 0 0 1 10 0v4"}}],globe:[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"path",attrs:{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"}},{tag:"path",attrs:{d:"M2 12h20"}}],"circle-check-big":[{tag:"path",attrs:{d:"M21.801 10A10 10 0 1 1 17 3.335"}},{tag:"path",attrs:{d:"m9 11 3 3L22 4"}}],"x-circle":[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"path",attrs:{d:"m15 9-6 6"}},{tag:"path",attrs:{d:"m9 9 6 6"}}],ban:[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"path",attrs:{d:"m4.9 4.9 14.2 14.2"}}],clock:[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"path",attrs:{d:"M12 6v6l4 2"}}],"toggle-left":[{tag:"rect",attrs:{width:"20",height:"14",x:"2",y:"5",rx:"7"}},{tag:"circle",attrs:{cx:"9",cy:"12",r:"3"}}],"file-digit":[{tag:"path",attrs:{d:"M4 12V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2"}},{tag:"path",attrs:{d:"M14 2v5a1 1 0 0 0 1 1h5"}},{tag:"path",attrs:{d:"M10 16h2v6"}},{tag:"path",attrs:{d:"M10 22h4"}},{tag:"rect",attrs:{width:"4",height:"6",x:"2",y:"16",rx:"2"}}],"decimals-arrow-right":[{tag:"path",attrs:{d:"M10 18h10"}},{tag:"path",attrs:{d:"m17 21 3-3-3-3"}},{tag:"path",attrs:{d:"M3 11h.01"}},{tag:"rect",attrs:{width:"5",height:"8",x:"15",y:"3",rx:"2.5"}},{tag:"rect",attrs:{width:"5",height:"8",x:"6",y:"3",rx:"2.5"}}],"text-initial":[{tag:"path",attrs:{d:"M15 5h6"}},{tag:"path",attrs:{d:"M15 12h6"}},{tag:"path",attrs:{d:"M3 19h18"}},{tag:"path",attrs:{d:"m3 12 3.553-7.724a.5.5 0 0 1 .894 0L11 12"}},{tag:"path",attrs:{d:"M3.92 10h6.16"}}],"text-align-justify":[{tag:"path",attrs:{d:"M3 5h18"}},{tag:"path",attrs:{d:"M3 12h18"}},{tag:"path",attrs:{d:"M3 19h18"}}],paperclip:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551","link-2":[{tag:"path",attrs:{d:"M9 17H7A5 5 0 0 1 7 7h2"}},{tag:"path",attrs:{d:"M15 7h2a5 5 0 1 1 0 10h-2"}},{tag:"path",attrs:{d:"M8 12h8"}}],"circle-dot":[{tag:"circle",attrs:{cx:"12",cy:"12",r:"10"}},{tag:"circle",attrs:{cx:"12",cy:"12",r:"1"}}],"square-check":[{tag:"rect",attrs:{width:"18",height:"18",x:"3",y:"3",rx:"2"}},{tag:"path",attrs:{d:"m9 12 2 2 4-4"}}],locate:[{tag:"path",attrs:{d:"M2 12h3"}},{tag:"path",attrs:{d:"M19 12h3"}},{tag:"path",attrs:{d:"M12 2v3"}},{tag:"path",attrs:{d:"M12 19v3"}},{tag:"circle",attrs:{cx:"12",cy:"12",r:"7"}}],"list-ordered":[{tag:"path",attrs:{d:"M11 5h10"}},{tag:"path",attrs:{d:"M11 12h10"}},{tag:"path",attrs:{d:"M11 19h10"}},{tag:"path",attrs:{d:"M4 4h1v5"}},{tag:"path",attrs:{d:"M4 9h2"}},{tag:"path",attrs:{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02"}}],plus:[{tag:"path",attrs:{d:"M5 12h14"}},{tag:"path",attrs:{d:"M12 5v14"}}],component:[{tag:"path",attrs:{d:"M15.536 11.293a1 1 0 0 0 0 1.414l2.376 2.377a1 1 0 0 0 1.414 0l2.377-2.377a1 1 0 0 0 0-1.414l-2.377-2.377a1 1 0 0 0-1.414 0z"}},{tag:"path",attrs:{d:"M2.297 11.293a1 1 0 0 0 0 1.414l2.377 2.377a1 1 0 0 0 1.414 0l2.377-2.377a1 1 0 0 0 0-1.414L6.088 8.916a1 1 0 0 0-1.414 0z"}},{tag:"path",attrs:{d:"M8.916 17.912a1 1 0 0 0 0 1.415l2.377 2.376a1 1 0 0 0 1.414 0l2.377-2.376a1 1 0 0 0 0-1.415l-2.377-2.376a1 1 0 0 0-1.414 0z"}},{tag:"path",attrs:{d:"M8.916 4.674a1 1 0 0 0 0 1.414l2.377 2.376a1 1 0 0 0 1.414 0l2.377-2.376a1 1 0 0 0 0-1.414l-2.377-2.377a1 1 0 0 0-1.414 0z"}}]};let We=class extends o.LitElement{constructor(){super(...arguments),this.name="",this.size=20}render(){const t=pr[this.name];if(!t)return o.nothing;const e=typeof t=="string"?o.svg`<path d=${t}></path>`:t.map(s=>{const{tag:i,attrs:a}=s;return i==="circle"?o.svg`<circle cx=${a.cx} cy=${a.cy} r=${a.r} fill=${a.fill??"none"}></circle>`:i==="rect"?o.svg`<rect width=${a.width} height=${a.height} x=${a.x} y=${a.y} rx=${a.rx??"0"} ry=${a.ry??"0"}></rect>`:o.svg`<path d=${a.d}></path>`});return o.html`
5686
5834
  <svg
5687
5835
  style="--icon-size: ${this.size}px"
5688
5836
  viewBox="0 0 24 24"
@@ -5694,7 +5842,7 @@
5694
5842
  >
5695
5843
  ${e}
5696
5844
  </svg>
5697
- `}};Xe.styles=[o.css`
5845
+ `}};We.styles=[o.css`
5698
5846
  :host {
5699
5847
  display: inline-flex;
5700
5848
  align-items: center;
@@ -5704,7 +5852,7 @@
5704
5852
  width: var(--icon-size, 20px);
5705
5853
  height: var(--icon-size, 20px);
5706
5854
  }
5707
- `];Bt([c.property()],Xe.prototype,"name",2);Bt([c.property({type:Number})],Xe.prototype,"size",2);Xe=Bt([c.customElement("ap-icon")],Xe);var nr=Object.defineProperty,lr=Object.getOwnPropertyDescriptor,fe=(t,e,s,i)=>{for(var a=i>1?void 0:i?lr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&nr(e,s,a),a};let Z=class extends o.LitElement{constructor(){super(...arguments),this.selectedAssets=[],this.selectedFolders=[],this.totalCount=0,this.totalFolderCount=0,this.isSelectingAll=!1,this.multiSelect=!0}get _totalSelected(){return this.selectedAssets.length+this.selectedFolders.length}_formatCount(){const t=this.selectedAssets.length,e=this.selectedFolders.length;if(e===0)return`${t} selected`;if(t===0)return`${e} folder${e!==1?"s":""} selected`;const s=`${e} folder${e!==1?"s":""}`,i=`${t} asset${t!==1?"s":""}`;return`${s} and ${i} selected`}_confirm(){this.dispatchEvent(new CustomEvent("selection-confirm",{detail:{assets:this.selectedAssets,folders:this.selectedFolders},bubbles:!0,composed:!0}))}_clear(){this.dispatchEvent(new CustomEvent("selection-clear",{bubbles:!0,composed:!0}))}_canSelectMore(){if(this.maxSelections&&this._totalSelected>=this.maxSelections)return!1;const t=this._selectScope;return t==="assets"?this.selectedAssets.length<this.totalCount:t==="folders"?this.selectedFolders.length<this.totalFolderCount:this._totalSelected<this.totalCount+this.totalFolderCount}get _scopeTotal(){const t=this._selectScope;return t==="assets"?this.totalCount:t==="folders"?this.totalFolderCount:this.totalCount+this.totalFolderCount}get _selectScope(){const t=this.selectedAssets.length>0,e=this.selectedFolders.length>0;return t&&!e?"assets":e&&!t?"folders":"all"}_selectAll(){this.dispatchEvent(new CustomEvent("select-all",{detail:{scope:this._selectScope},bubbles:!0,composed:!0}))}render(){return this._totalSelected===0?o.nothing:o.html`
5855
+ `];Vt([c.property()],We.prototype,"name",2);Vt([c.property({type:Number})],We.prototype,"size",2);We=Vt([c.customElement("ap-icon")],We);var hr=Object.defineProperty,ur=Object.getOwnPropertyDescriptor,fe=(t,e,s,i)=>{for(var a=i>1?void 0:i?ur(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&hr(e,s,a),a};let J=class extends o.LitElement{constructor(){super(...arguments),this.selectedAssets=[],this.selectedFolders=[],this.totalCount=0,this.totalFolderCount=0,this.isSelectingAll=!1,this.multiSelect=!0}get _totalSelected(){return this.selectedAssets.length+this.selectedFolders.length}_formatCount(){const t=this.selectedAssets.length,e=this.selectedFolders.length;if(e===0)return`${t} selected`;if(t===0)return`${e} folder${e!==1?"s":""} selected`;const s=`${e} folder${e!==1?"s":""}`,i=`${t} asset${t!==1?"s":""}`;return`${s} and ${i} selected`}_confirm(){this.dispatchEvent(new CustomEvent("selection-confirm",{detail:{assets:this.selectedAssets,folders:this.selectedFolders},bubbles:!0,composed:!0}))}_clear(){this.dispatchEvent(new CustomEvent("selection-clear",{bubbles:!0,composed:!0}))}_canSelectMore(){if(this.maxSelections&&this._totalSelected>=this.maxSelections)return!1;const t=this._selectScope;return t==="assets"?this.selectedAssets.length<this.totalCount:t==="folders"?this.selectedFolders.length<this.totalFolderCount:this._totalSelected<this.totalCount+this.totalFolderCount}get _scopeTotal(){const t=this._selectScope;return t==="assets"?this.totalCount:t==="folders"?this.totalFolderCount:this.totalCount+this.totalFolderCount}get _selectScope(){const t=this.selectedAssets.length>0,e=this.selectedFolders.length>0;return t&&!e?"assets":e&&!t?"folders":"all"}_selectAll(){this.dispatchEvent(new CustomEvent("select-all",{detail:{scope:this._selectScope},bubbles:!0,composed:!0}))}render(){return this._totalSelected===0?o.nothing:o.html`
5708
5856
  <div class="bar">
5709
5857
  <span class="count">${this._formatCount()}</span>
5710
5858
  ${this.multiSelect?o.html`
@@ -5721,7 +5869,7 @@
5721
5869
  <div class="spacer"></div>
5722
5870
  <button class="btn-confirm" @click=${this._confirm}>Confirm</button>
5723
5871
  </div>
5724
- `}};Z.styles=o.css`
5872
+ `}};J.styles=o.css`
5725
5873
  :host {
5726
5874
  display: block;
5727
5875
  padding: 0 8px 8px;
@@ -5808,12 +5956,12 @@
5808
5956
  @media (prefers-reduced-motion: reduce) {
5809
5957
  .bar { animation: none; }
5810
5958
  }
5811
- `;fe([c.property({type:Array})],Z.prototype,"selectedAssets",2);fe([c.property({type:Array})],Z.prototype,"selectedFolders",2);fe([c.property({type:Number})],Z.prototype,"totalCount",2);fe([c.property({type:Number})],Z.prototype,"totalFolderCount",2);fe([c.property({type:Boolean})],Z.prototype,"isSelectingAll",2);fe([c.property({type:Boolean})],Z.prototype,"multiSelect",2);fe([c.property({type:Number})],Z.prototype,"maxSelections",2);Z=fe([c.customElement("ap-selection-bar")],Z);var cr=Object.defineProperty,dr=Object.getOwnPropertyDescriptor,Ut=(t,e,s,i)=>{for(var a=i>1?void 0:i?dr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&cr(e,s,a),a};let We=class extends o.LitElement{constructor(){super(...arguments),this.active=!1,this.rect={x:0,y:0,width:0,height:0}}render(){return!this.active||this.rect.width<5||this.rect.height<5?o.nothing:o.html`
5959
+ `;fe([c.property({type:Array})],J.prototype,"selectedAssets",2);fe([c.property({type:Array})],J.prototype,"selectedFolders",2);fe([c.property({type:Number})],J.prototype,"totalCount",2);fe([c.property({type:Number})],J.prototype,"totalFolderCount",2);fe([c.property({type:Boolean})],J.prototype,"isSelectingAll",2);fe([c.property({type:Boolean})],J.prototype,"multiSelect",2);fe([c.property({type:Number})],J.prototype,"maxSelections",2);J=fe([c.customElement("ap-selection-bar")],J);var gr=Object.defineProperty,fr=Object.getOwnPropertyDescriptor,qt=(t,e,s,i)=>{for(var a=i>1?void 0:i?fr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&gr(e,s,a),a};let Qe=class extends o.LitElement{constructor(){super(...arguments),this.active=!1,this.rect={x:0,y:0,width:0,height:0}}render(){return!this.active||this.rect.width<5||this.rect.height<5?o.nothing:o.html`
5812
5960
  <div
5813
5961
  class="marquee"
5814
5962
  style="left:${this.rect.x}px;top:${this.rect.y}px;width:${this.rect.width}px;height:${this.rect.height}px"
5815
5963
  ></div>
5816
- `}};We.styles=o.css`
5964
+ `}};Qe.styles=o.css`
5817
5965
  :host {
5818
5966
  display: block;
5819
5967
  position: absolute;
@@ -5830,7 +5978,7 @@
5830
5978
  background: var(--ap-primary-10, oklch(0.578 0.198 268.129 / 0.1));
5831
5979
  border-radius: 2px;
5832
5980
  }
5833
- `;Ut([c.property({type:Boolean})],We.prototype,"active",2);Ut([c.property({type:Object})],We.prototype,"rect",2);We=Ut([c.customElement("ap-marquee-overlay")],We);var pr=Object.defineProperty,hr=Object.getOwnPropertyDescriptor,Ue=(t,e,s,i)=>{for(var a=i>1?void 0:i?hr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&pr(e,s,a),a};let ue=class extends o.LitElement{constructor(){super(...arguments),this.value="",this.options=[],this.disabled=!1,this.direction="vertical",this._onKeydown=t=>{const e=this.options.filter(a=>!this.disabled&&!a.disabled);if(e.length===0)return;const s=e.findIndex(a=>a.value===this.value);let i=null;switch(t.key){case"ArrowDown":case"ArrowRight":t.preventDefault(),i=s<0?0:(s+1)%e.length;break;case"ArrowUp":case"ArrowLeft":t.preventDefault(),i=s<0?e.length-1:(s-1+e.length)%e.length;break;case" ":case"Enter":t.preventDefault(),s>=0?this._select(e[s]):e.length>0&&this._select(e[0]);return;default:return}i!==null&&this._select(e[i])}}connectedCallback(){super.connectedCallback(),this.setAttribute("role","radiogroup"),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),this.addEventListener("keydown",this._onKeydown)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this._onKeydown)}render(){return o.html`
5981
+ `;qt([c.property({type:Boolean})],Qe.prototype,"active",2);qt([c.property({type:Object})],Qe.prototype,"rect",2);Qe=qt([c.customElement("ap-marquee-overlay")],Qe);var mr=Object.defineProperty,vr=Object.getOwnPropertyDescriptor,Ve=(t,e,s,i)=>{for(var a=i>1?void 0:i?vr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&mr(e,s,a),a};let ue=class extends o.LitElement{constructor(){super(...arguments),this.value="",this.options=[],this.disabled=!1,this.direction="vertical",this._onKeydown=t=>{const e=this.options.filter(a=>!this.disabled&&!a.disabled);if(e.length===0)return;const s=e.findIndex(a=>a.value===this.value);let i=null;switch(t.key){case"ArrowDown":case"ArrowRight":t.preventDefault(),i=s<0?0:(s+1)%e.length;break;case"ArrowUp":case"ArrowLeft":t.preventDefault(),i=s<0?e.length-1:(s-1+e.length)%e.length;break;case" ":case"Enter":t.preventDefault(),s>=0?this._select(e[s]):e.length>0&&this._select(e[0]);return;default:return}i!==null&&this._select(e[i])}}connectedCallback(){super.connectedCallback(),this.setAttribute("role","radiogroup"),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),this.addEventListener("keydown",this._onKeydown)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this._onKeydown)}render(){return o.html`
5834
5982
  ${this.options.map(t=>o.html`
5835
5983
  <div
5836
5984
  class="option"
@@ -5844,7 +5992,7 @@
5844
5992
  <span class="label">${t.label}</span>
5845
5993
  </div>
5846
5994
  `)}
5847
- `}_select(t){this.disabled||t.disabled||this.dispatchEvent(new CustomEvent("ap-change",{detail:{value:t.value},bubbles:!0,composed:!0}))}};ue.styles=[J,o.css`
5995
+ `}_select(t){this.disabled||t.disabled||this.dispatchEvent(new CustomEvent("ap-change",{detail:{value:t.value},bubbles:!0,composed:!0}))}};ue.styles=[ee,o.css`
5848
5996
  :host {
5849
5997
  display: flex;
5850
5998
  flex-direction: column;
@@ -5905,7 +6053,7 @@
5905
6053
  font-family: inherit;
5906
6054
  user-select: none;
5907
6055
  }
5908
- `];Ue([c.property()],ue.prototype,"value",2);Ue([c.property({type:Array})],ue.prototype,"options",2);Ue([c.property({type:Boolean})],ue.prototype,"disabled",2);Ue([c.property({reflect:!0})],ue.prototype,"direction",2);Ue([c.property({reflect:!0})],ue.prototype,"columns",2);ue=Ue([c.customElement("ap-radio-group")],ue);var ur=Object.defineProperty,gr=Object.getOwnPropertyDescriptor,Cs=(t,e,s,i)=>{for(var a=i>1?void 0:i?gr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&ur(e,s,a),a};let pt=class extends o.LitElement{constructor(){super(...arguments),this.size=24}render(){return o.html`<div class="spinner" style="width:${this.size}px;height:${this.size}px"></div>`}};pt.styles=[o.css`
6056
+ `];Ve([c.property()],ue.prototype,"value",2);Ve([c.property({type:Array})],ue.prototype,"options",2);Ve([c.property({type:Boolean})],ue.prototype,"disabled",2);Ve([c.property({reflect:!0})],ue.prototype,"direction",2);Ve([c.property({reflect:!0})],ue.prototype,"columns",2);ue=Ve([c.customElement("ap-radio-group")],ue);var br=Object.defineProperty,_r=Object.getOwnPropertyDescriptor,Cs=(t,e,s,i)=>{for(var a=i>1?void 0:i?_r(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&br(e,s,a),a};let ut=class extends o.LitElement{constructor(){super(...arguments),this.size=24}render(){return o.html`<div class="spinner" style="width:${this.size}px;height:${this.size}px"></div>`}};ut.styles=[o.css`
5909
6057
  :host {
5910
6058
  display: inline-flex;
5911
6059
  }
@@ -5918,7 +6066,7 @@
5918
6066
  @keyframes spin {
5919
6067
  to { transform: rotate(360deg); }
5920
6068
  }
5921
- `];Cs([c.property({type:Number})],pt.prototype,"size",2);pt=Cs([c.customElement("ap-spinner")],pt);var fr=Object.defineProperty,mr=Object.getOwnPropertyDescriptor,_t=(t,e,s,i)=>{for(var a=i>1?void 0:i?mr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&fr(e,s,a),a};let ze=class extends o.LitElement{constructor(){super(...arguments),this.folders=[],this.loading=!1,this._mode="recursive"}_handleConfirm(){this.dispatchEvent(new CustomEvent("folder-resolve-confirm",{detail:{mode:this._mode},bubbles:!0,composed:!0}))}_handleCancel(){this.dispatchEvent(new CustomEvent("folder-resolve-cancel",{bubbles:!0,composed:!0}))}_handleModeChange(t){this._mode=t.detail.value}render(){const t=this.folders.length;return o.html`
6069
+ `];Cs([c.property({type:Number})],ut.prototype,"size",2);ut=Cs([c.customElement("ap-spinner")],ut);var yr=Object.defineProperty,xr=Object.getOwnPropertyDescriptor,xt=(t,e,s,i)=>{for(var a=i>1?void 0:i?xr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&yr(e,s,a),a};let Re=class extends o.LitElement{constructor(){super(...arguments),this.folders=[],this.loading=!1,this._mode="recursive"}_handleConfirm(){this.dispatchEvent(new CustomEvent("folder-resolve-confirm",{detail:{mode:this._mode},bubbles:!0,composed:!0}))}_handleCancel(){this.dispatchEvent(new CustomEvent("folder-resolve-cancel",{bubbles:!0,composed:!0}))}_handleModeChange(t){this._mode=t.detail.value}render(){const t=this.folders.length;return o.html`
5922
6070
  <div class="backdrop" @click=${e=>{e.target===e.currentTarget&&this._handleCancel()}}>
5923
6071
  <div class="dialog">
5924
6072
  <div class="title">Add folder contents</div>
@@ -5940,7 +6088,7 @@
5940
6088
  </div>
5941
6089
  </div>
5942
6090
  </div>
5943
- `}};ze.styles=[J,o.css`
6091
+ `}};Re.styles=[ee,o.css`
5944
6092
  :host {
5945
6093
  display: block;
5946
6094
  }
@@ -6013,7 +6161,7 @@
6013
6161
  align-items: center;
6014
6162
  gap: 8px;
6015
6163
  }
6016
- `];_t([c.property({type:Array})],ze.prototype,"folders",2);_t([c.property({type:Boolean})],ze.prototype,"loading",2);_t([c.state()],ze.prototype,"_mode",2);ze=_t([c.customElement("ap-folder-resolve-dialog")],ze);var vr=Object.defineProperty,br=Object.getOwnPropertyDescriptor,yt=(t,e,s,i)=>{for(var a=i>1?void 0:i?br(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&vr(e,s,a),a};let Re=class extends o.LitElement{constructor(){super(...arguments),this.checked=!1,this.indeterminate=!1,this.disabled=!1,this._hasLabel=!1,this._handleHostClick=()=>{this.dispatchEvent(new CustomEvent("ap-toggle",{detail:{checked:!this.checked},bubbles:!0,composed:!0}))}}connectedCallback(){super.connectedCallback(),this.addEventListener("click",this._handleHostClick)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("click",this._handleHostClick)}_onSlotChange(t){const e=t.target;this._hasLabel=e.assignedNodes({flatten:!0}).length>0,this.requestUpdate()}render(){return o.html`
6164
+ `];xt([c.property({type:Array})],Re.prototype,"folders",2);xt([c.property({type:Boolean})],Re.prototype,"loading",2);xt([c.state()],Re.prototype,"_mode",2);Re=xt([c.customElement("ap-folder-resolve-dialog")],Re);var wr=Object.defineProperty,$r=Object.getOwnPropertyDescriptor,wt=(t,e,s,i)=>{for(var a=i>1?void 0:i?$r(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&wr(e,s,a),a};let je=class extends o.LitElement{constructor(){super(...arguments),this.checked=!1,this.indeterminate=!1,this.disabled=!1,this._hasLabel=!1,this._handleHostClick=()=>{this.dispatchEvent(new CustomEvent("ap-toggle",{detail:{checked:!this.checked},bubbles:!0,composed:!0}))}}connectedCallback(){super.connectedCallback(),this.addEventListener("click",this._handleHostClick)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("click",this._handleHostClick)}_onSlotChange(t){const e=t.target;this._hasLabel=e.assignedNodes({flatten:!0}).length>0,this.requestUpdate()}render(){return o.html`
6017
6165
  <div class="box">
6018
6166
  <svg class="check" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round">
6019
6167
  <path d="M20 6 9 17l-5-5"></path>
@@ -6023,7 +6171,7 @@
6023
6171
  </svg>
6024
6172
  </div>
6025
6173
  <span class="label" ?hidden=${!this._hasLabel}><slot @slotchange=${this._onSlotChange}></slot></span>
6026
- `}};Re.styles=[o.css`
6174
+ `}};je.styles=[o.css`
6027
6175
  :host {
6028
6176
  display: inline-flex;
6029
6177
  align-items: center;
@@ -6082,12 +6230,12 @@
6082
6230
  .label[hidden] {
6083
6231
  display: none;
6084
6232
  }
6085
- `];yt([c.property({type:Boolean,reflect:!0})],Re.prototype,"checked",2);yt([c.property({type:Boolean,reflect:!0})],Re.prototype,"indeterminate",2);yt([c.property({type:Boolean,reflect:!0})],Re.prototype,"disabled",2);Re=yt([c.customElement("ap-checkbox")],Re);var _r=Object.defineProperty,yr=Object.getOwnPropertyDescriptor,Es=(t,e,s,i)=>{for(var a=i>1?void 0:i?yr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&_r(e,s,a),a};let ht=class extends o.LitElement{constructor(){super(...arguments),this.open=!1,this._handleOutsideClick=t=>{this.open&&!t.composedPath().includes(this)&&(this.open=!1)}}render(){return o.html`
6233
+ `];wt([c.property({type:Boolean,reflect:!0})],je.prototype,"checked",2);wt([c.property({type:Boolean,reflect:!0})],je.prototype,"indeterminate",2);wt([c.property({type:Boolean,reflect:!0})],je.prototype,"disabled",2);je=wt([c.customElement("ap-checkbox")],je);var kr=Object.defineProperty,Sr=Object.getOwnPropertyDescriptor,Es=(t,e,s,i)=>{for(var a=i>1?void 0:i?Sr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&kr(e,s,a),a};let gt=class extends o.LitElement{constructor(){super(...arguments),this.open=!1,this._handleOutsideClick=t=>{this.open&&!t.composedPath().includes(this)&&(this.open=!1)}}render(){return o.html`
6086
6234
  <slot name="trigger" @click=${()=>this.open=!this.open}></slot>
6087
6235
  <div class="content ${this.open?"open":""}">
6088
6236
  <slot></slot>
6089
6237
  </div>
6090
- `}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this._handleOutsideClick)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this._handleOutsideClick)}};ht.styles=[o.css`
6238
+ `}connectedCallback(){super.connectedCallback(),document.addEventListener("click",this._handleOutsideClick)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this._handleOutsideClick)}};gt.styles=[o.css`
6091
6239
  :host {
6092
6240
  position: relative;
6093
6241
  display: inline-block;
@@ -6108,7 +6256,7 @@
6108
6256
  .content.open {
6109
6257
  display: block;
6110
6258
  }
6111
- `];Es([c.state()],ht.prototype,"open",2);ht=Es([c.customElement("ap-popover")],ht);var xr=Object.defineProperty,wr=Object.getOwnPropertyDescriptor,B=(t,e,s,i)=>{for(var a=i>1?void 0:i?wr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&xr(e,s,a),a};let z=class extends o.LitElement{constructor(){super(...arguments),this.value="",this.label="",this.variant="default",this.options=[],this._open=!1,this._focusedIndex=-1,this._menuPosition="below",this._menuAlign="align-left",this._menuTop=0,this._menuBottom=0,this._menuLeft=0,this._menuRight=0,this._handleOutsideClick=t=>{t.composedPath().includes(this)||(this._open=!1,document.removeEventListener("click",this._handleOutsideClick))}}close(){this._open=!1}render(){const t=this.options.find(s=>s.value===this.value),e="ap-dropdown-menu";return o.html`
6259
+ `];Es([c.state()],gt.prototype,"open",2);gt=Es([c.customElement("ap-popover")],gt);var Cr=Object.defineProperty,Er=Object.getOwnPropertyDescriptor,U=(t,e,s,i)=>{for(var a=i>1?void 0:i?Er(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Cr(e,s,a),a};let z=class extends o.LitElement{constructor(){super(...arguments),this.value="",this.label="",this.variant="default",this.options=[],this._open=!1,this._focusedIndex=-1,this._menuPosition="below",this._menuAlign="align-left",this._menuTop=0,this._menuBottom=0,this._menuLeft=0,this._menuRight=0,this._handleOutsideClick=t=>{t.composedPath().includes(this)||(this._open=!1,document.removeEventListener("click",this._handleOutsideClick))}}close(){this._open=!1}render(){const t=this.options.find(s=>s.value===this.value),e="ap-dropdown-menu";return o.html`
6112
6260
  <button
6113
6261
  class="trigger"
6114
6262
  role="combobox"
@@ -6147,7 +6295,7 @@
6147
6295
  `)}
6148
6296
  </div>
6149
6297
  `:o.nothing}
6150
- `}_toggle(){this._open=!this._open,this._open?(this._focusedIndex=this.options.findIndex(t=>t.value===this.value),this._updateMenuPosition(),this.dispatchEvent(new CustomEvent("dropdown-open",{bubbles:!0,composed:!0})),document.addEventListener("click",this._handleOutsideClick),this.updateComplete.then(()=>this._focusCurrentOption())):document.removeEventListener("click",this._handleOutsideClick)}_select(t){this._open=!1,document.removeEventListener("click",this._handleOutsideClick),this.dispatchEvent(new CustomEvent("ap-change",{detail:{value:t},bubbles:!0,composed:!0}))}_updateMenuPosition(){const t=this.getBoundingClientRect(),e=window.innerHeight-t.bottom,s=t.top,i=Math.min(this.options.length*36+8,300);this._menuPosition=e<i&&s>e?"above":"below",this._menuPosition==="below"?this._menuTop=t.bottom+4:this._menuBottom=window.innerHeight-t.top+4;const a=window.innerWidth-t.left;this._menuAlign=a<200?"align-right":"align-left",this._menuAlign==="align-left"?this._menuLeft=t.left:this._menuRight=window.innerWidth-t.right}_handleTriggerKeydown(t){t.key==="ArrowDown"||t.key==="ArrowUp"||t.key==="Enter"||t.key===" "?(t.preventDefault(),this._open||(this._open=!0,this._focusedIndex=t.key==="ArrowUp"?this.options.length-1:Math.max(0,this.options.findIndex(e=>e.value===this.value)),this._updateMenuPosition(),this.dispatchEvent(new CustomEvent("dropdown-open",{bubbles:!0,composed:!0})),document.addEventListener("click",this._handleOutsideClick),this.updateComplete.then(()=>this._focusCurrentOption()))):t.key==="Escape"&&this._open&&(t.preventDefault(),this._open=!1,document.removeEventListener("click",this._handleOutsideClick))}_handleMenuKeydown(t){var e,s,i,a;switch(t.key){case"ArrowDown":t.preventDefault(),this._focusedIndex=(this._focusedIndex+1)%this.options.length,this._focusCurrentOption();break;case"ArrowUp":t.preventDefault(),this._focusedIndex=(this._focusedIndex-1+this.options.length)%this.options.length,this._focusCurrentOption();break;case"Enter":case" ":t.preventDefault(),this._focusedIndex>=0&&this._focusedIndex<this.options.length&&(this._select(this.options[this._focusedIndex].value),(s=(e=this.shadowRoot)==null?void 0:e.querySelector(".trigger"))==null||s.focus());break;case"Escape":t.preventDefault(),this._open=!1,document.removeEventListener("click",this._handleOutsideClick),(a=(i=this.shadowRoot)==null?void 0:i.querySelector(".trigger"))==null||a.focus();break;case"Tab":this._open=!1,document.removeEventListener("click",this._handleOutsideClick);break;case"Home":t.preventDefault(),this._focusedIndex=0,this._focusCurrentOption();break;case"End":t.preventDefault(),this._focusedIndex=this.options.length-1,this._focusCurrentOption();break}}_focusCurrentOption(){var e;const t=(e=this.shadowRoot)==null?void 0:e.querySelectorAll(".option");t&&this._focusedIndex>=0&&this._focusedIndex<t.length&&t[this._focusedIndex].focus()}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this._handleOutsideClick)}};z.styles=[J,o.css`
6298
+ `}_toggle(){this._open=!this._open,this._open?(this._focusedIndex=this.options.findIndex(t=>t.value===this.value),this._updateMenuPosition(),this.dispatchEvent(new CustomEvent("dropdown-open",{bubbles:!0,composed:!0})),document.addEventListener("click",this._handleOutsideClick),this.updateComplete.then(()=>this._focusCurrentOption())):document.removeEventListener("click",this._handleOutsideClick)}_select(t){this._open=!1,document.removeEventListener("click",this._handleOutsideClick),this.dispatchEvent(new CustomEvent("ap-change",{detail:{value:t},bubbles:!0,composed:!0}))}_updateMenuPosition(){const t=this.getBoundingClientRect(),e=window.innerHeight-t.bottom,s=t.top,i=Math.min(this.options.length*36+8,300);this._menuPosition=e<i&&s>e?"above":"below",this._menuPosition==="below"?this._menuTop=t.bottom+4:this._menuBottom=window.innerHeight-t.top+4;const a=window.innerWidth-t.left;this._menuAlign=a<200?"align-right":"align-left",this._menuAlign==="align-left"?this._menuLeft=t.left:this._menuRight=window.innerWidth-t.right}_handleTriggerKeydown(t){t.key==="ArrowDown"||t.key==="ArrowUp"||t.key==="Enter"||t.key===" "?(t.preventDefault(),this._open||(this._open=!0,this._focusedIndex=t.key==="ArrowUp"?this.options.length-1:Math.max(0,this.options.findIndex(e=>e.value===this.value)),this._updateMenuPosition(),this.dispatchEvent(new CustomEvent("dropdown-open",{bubbles:!0,composed:!0})),document.addEventListener("click",this._handleOutsideClick),this.updateComplete.then(()=>this._focusCurrentOption()))):t.key==="Escape"&&this._open&&(t.preventDefault(),this._open=!1,document.removeEventListener("click",this._handleOutsideClick))}_handleMenuKeydown(t){var e,s,i,a;switch(t.key){case"ArrowDown":t.preventDefault(),this._focusedIndex=(this._focusedIndex+1)%this.options.length,this._focusCurrentOption();break;case"ArrowUp":t.preventDefault(),this._focusedIndex=(this._focusedIndex-1+this.options.length)%this.options.length,this._focusCurrentOption();break;case"Enter":case" ":t.preventDefault(),this._focusedIndex>=0&&this._focusedIndex<this.options.length&&(this._select(this.options[this._focusedIndex].value),(s=(e=this.shadowRoot)==null?void 0:e.querySelector(".trigger"))==null||s.focus());break;case"Escape":t.preventDefault(),this._open=!1,document.removeEventListener("click",this._handleOutsideClick),(a=(i=this.shadowRoot)==null?void 0:i.querySelector(".trigger"))==null||a.focus();break;case"Tab":this._open=!1,document.removeEventListener("click",this._handleOutsideClick);break;case"Home":t.preventDefault(),this._focusedIndex=0,this._focusCurrentOption();break;case"End":t.preventDefault(),this._focusedIndex=this.options.length-1,this._focusCurrentOption();break}}_focusCurrentOption(){var e;const t=(e=this.shadowRoot)==null?void 0:e.querySelectorAll(".option");t&&this._focusedIndex>=0&&this._focusedIndex<t.length&&t[this._focusedIndex].focus()}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this._handleOutsideClick)}};z.styles=[ee,o.css`
6151
6299
  :host {
6152
6300
  position: relative;
6153
6301
  display: inline-block;
@@ -6227,7 +6375,7 @@
6227
6375
  .option[aria-selected="true"] ap-icon {
6228
6376
  color: var(--ap-primary, oklch(0.578 0.198 268.129));
6229
6377
  }
6230
- `];B([c.property()],z.prototype,"value",2);B([c.property()],z.prototype,"label",2);B([c.property({reflect:!0})],z.prototype,"variant",2);B([c.property({type:Array})],z.prototype,"options",2);B([c.state()],z.prototype,"_open",2);B([c.state()],z.prototype,"_focusedIndex",2);B([c.state()],z.prototype,"_menuPosition",2);B([c.state()],z.prototype,"_menuAlign",2);B([c.state()],z.prototype,"_menuTop",2);B([c.state()],z.prototype,"_menuBottom",2);B([c.state()],z.prototype,"_menuLeft",2);B([c.state()],z.prototype,"_menuRight",2);z=B([c.customElement("ap-dropdown")],z);var $r=Object.defineProperty,kr=Object.getOwnPropertyDescriptor,Fs=(t,e,s,i)=>{for(var a=i>1?void 0:i?kr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&$r(e,s,a),a};let ut=class extends o.LitElement{constructor(){super(...arguments),this.variant="default"}render(){return o.html`<span class="badge"><slot></slot></span>`}};ut.styles=[o.css`
6378
+ `];U([c.property()],z.prototype,"value",2);U([c.property()],z.prototype,"label",2);U([c.property({reflect:!0})],z.prototype,"variant",2);U([c.property({type:Array})],z.prototype,"options",2);U([c.state()],z.prototype,"_open",2);U([c.state()],z.prototype,"_focusedIndex",2);U([c.state()],z.prototype,"_menuPosition",2);U([c.state()],z.prototype,"_menuAlign",2);U([c.state()],z.prototype,"_menuTop",2);U([c.state()],z.prototype,"_menuBottom",2);U([c.state()],z.prototype,"_menuLeft",2);U([c.state()],z.prototype,"_menuRight",2);z=U([c.customElement("ap-dropdown")],z);var Fr=Object.defineProperty,Ar=Object.getOwnPropertyDescriptor,Fs=(t,e,s,i)=>{for(var a=i>1?void 0:i?Ar(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Fr(e,s,a),a};let ft=class extends o.LitElement{constructor(){super(...arguments),this.variant="default"}render(){return o.html`<span class="badge"><slot></slot></span>`}};ft.styles=[o.css`
6231
6379
  :host {
6232
6380
  display: inline-flex;
6233
6381
  }
@@ -6246,10 +6394,10 @@
6246
6394
  background: var(--ap-primary-10, oklch(0.578 0.198 268.129 / 0.1));
6247
6395
  color: var(--ap-primary, oklch(0.578 0.198 268.129));
6248
6396
  }
6249
- `];Fs([c.property({reflect:!0})],ut.prototype,"variant",2);ut=Fs([c.customElement("ap-badge")],ut);var Sr=Object.defineProperty,Cr=Object.getOwnPropertyDescriptor,As=(t,e,s,i)=>{for(var a=i>1?void 0:i?Cr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Sr(e,s,a),a};let gt=class extends o.LitElement{constructor(){super(...arguments),this.text=""}render(){return o.html`
6397
+ `];Fs([c.property({reflect:!0})],ft.prototype,"variant",2);ft=Fs([c.customElement("ap-badge")],ft);var Tr=Object.defineProperty,Mr=Object.getOwnPropertyDescriptor,As=(t,e,s,i)=>{for(var a=i>1?void 0:i?Mr(e,s):e,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=(i?n(e,s,a):n(a))||a);return i&&a&&Tr(e,s,a),a};let mt=class extends o.LitElement{constructor(){super(...arguments),this.text=""}render(){return o.html`
6250
6398
  <slot></slot>
6251
6399
  <div class="tip">${this.text}</div>
6252
- `}};gt.styles=[o.css`
6400
+ `}};mt.styles=[o.css`
6253
6401
  :host {
6254
6402
  position: relative;
6255
6403
  display: inline-flex;
@@ -6272,7 +6420,7 @@
6272
6420
  :host(:hover) .tip {
6273
6421
  display: block;
6274
6422
  }
6275
- `];As([c.property()],gt.prototype,"text",2);gt=As([c.customElement("ap-tooltip")],gt);var Er=Object.defineProperty,xt=(t,e,s,i)=>{for(var a=void 0,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=n(e,s,a)||a);return a&&Er(e,s,a),a};const Vt=class Vt extends o.LitElement{constructor(){super(),this._initFailed=!1,this._loadId=0,this._loadMoreId=0,this._loadDataTimer=null,this._pendingFilter=null,this._pendingMetadataField=null,this._uploaderEl=null,this._uploaderImportPromise=null,this._dragCounter=0,this._isDragOver=!1,this._isUploaderOpen=!1,this._folderResolveOpen=!1,this._onDragEnter=e=>{var s;!((s=this.config)!=null&&s.uploader)||!this._hasFileTransfer(e)||(e.preventDefault(),this._dragCounter++,this._dragCounter===1&&(this._isDragOver=!0))},this._onDragOver=e=>{var s;!((s=this.config)!=null&&s.uploader)||!this._hasFileTransfer(e)||(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="copy"))},this._onDragLeave=e=>{var s;!((s=this.config)!=null&&s.uploader)||!this._hasFileTransfer(e)||(e.preventDefault(),this._dragCounter--,this._dragCounter<=0&&(this._dragCounter=0,this._isDragOver=!1))},this._onDrop=e=>{var i,a;if(!((i=this.config)!=null&&i.uploader)||!this._hasFileTransfer(e))return;e.preventDefault(),this._dragCounter=0,this._isDragOver=!1;const s=Array.from(((a=e.dataTransfer)==null?void 0:a.files)??[]);s.length>0&&this._openUploader(s)},this.store=Rs(),this.storeCtrl=new Ns(this,this.store),this.selectionCtrl=new Bs(this,this.store),this.infiniteScrollCtrl=new Us(this,()=>this._loadMore()),this.marqueeCtrl=new Vs(this,this.store)}get _isInline(){var e;return((e=this.config)==null?void 0:e.displayMode)==="inline"}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback(),this._uploaderEl&&(this._uploaderEl.remove(),this._uploaderEl=null),this._uploaderImportPromise=null,this._dragCounter=0,this._isDragOver=!1,this._isUploaderOpen=!1}updated(e){super.updated(e),e.has("config")&&this.config&&this._initConfig(this.config);const s=this.renderRoot.querySelector("#sentinel");if(s&&s!==this._lastSentinel){this._lastSentinel=s;const a=this.renderRoot.querySelector(".main-content");this.infiniteScrollCtrl.observe(s,a)}const i=this.renderRoot.querySelector(".main-content");i&&i!==this._lastMarqueeContainer&&(this._lastMarqueeContainer=i,this.marqueeCtrl.attach(i))}_initConfig(e){const s={folderSelection:!0,...e};this._initFailed=!1,this._initPromise=this._doInit(s).catch(()=>{this._initFailed=!0}),this.toggleAttribute("inline",s.displayMode==="inline"),s.displayMode==="inline"&&!this.store.getState().isOpen&&this.open()}async _doInit(e){const s=Mi(),i=s.sortBy??e.defaultSortBy??"created_at",a=s.sortDirection??e.defaultSortDirection??"desc";this.store.setState({config:e,projectToken:e.auth.projectToken,viewMode:e.rememberLastView&&Oi()||e.defaultViewMode||"grid",sortBy:i,sortDirection:a}),this.apiClient=new qs(e.auth,e.apiBase);try{if(e.auth.mode==="securityTemplate"){const p=await Ws(this.apiClient);this.apiClient.setSassKey(p),this.store.setState({sassKey:p})}const[r,n,l]=await Promise.allSettled([hi(this.apiClient),Ys(this.apiClient),Xs(this.apiClient)]);if(r.status==="fulfilled"){const{fields:p,regionalVariantGroups:g,regionalFilters:m,brandColor:_}=r.value;this.store.setState({metadataFields:p,regionalVariantGroups:g,regionalFilters:m,..._?{brandColor:_}:{}})}n.status==="fulfilled"&&this.store.setState({labels:n.value.labels||[]}),l.status==="fulfilled"&&this.store.setState({tags:l.value});const{pinnedFilters:d,pinnedMetadata:h}=Fi(e.auth.projectToken??null),u=this.store.getState().filters;this.store.setState({filters:{...u,pinned:d,visible:[...d],metadata:{...u.metadata,pinned:h,visible:[...h]}}});const f=e.brandColor||this.store.getState().brandColor;f&&(this.store.setState({brandColor:f}),Ni(this,f))}catch(r){throw this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:r,context:"init"},bubbles:!0,composed:!0})),r}}_ensureUploaderImport(){return this._uploaderImportPromise?this._uploaderImportPromise:(this._uploaderImportPromise=import("@scaleflex/uploader/define").then(()=>{},e=>{throw this._uploaderImportPromise=null,e}),this._uploaderImportPromise)}_buildUploaderConfig(){const e=this.config,s=e.uploader,i=this.store.getState();let a;return e.auth.mode==="securityTemplate"?a={mode:"security-template",container:e.auth.projectToken,securityTemplateId:e.auth.securityTemplateKey}:a={mode:"sass-key",container:e.auth.projectToken,sassKey:e.auth.sassKey},{auth:a,targetFolder:i.currentFolderPath||"/",mode:"inline",restrictions:s.restrictions,concurrency:s.concurrency,autoProceed:s.autoProceed,showFillMetadata:s.showFillMetadata,connectors:s.connectors,sourcesLayout:s.sourcesLayout,headerButton:s.headerButton??"back",clearOnClose:s.clearOnClose,clearOnComplete:s.clearOnComplete,rejectedFileAutoRemoveDelay:s.rejectedFileAutoRemoveDelay}}async _openUploader(e){var i;if(!((i=this.config)!=null&&i.uploader)||this._isUploaderOpen)return;try{await this._ensureUploaderImport()}catch(a){this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:a instanceof Error?a:new Error(String(a)),context:"uploader-load"},bubbles:!0,composed:!0}));return}this._uploaderEl=document.createElement("sfx-uploader");const s=this._uploaderEl;s.addEventListener("sfx-all-complete",()=>{this.store.getState().isOpen&&this._loadData()}),s.addEventListener("sfx-complete-action",()=>{this._closeUploader()}),s.addEventListener("sfx-cancel",()=>{this._closeUploader()}),this._isUploaderOpen=!0,await this.updateComplete,s.config=this._buildUploaderConfig(),await s.updateComplete,e!=null&&e.length&&s.addFiles(e)}_closeUploader(){this._isUploaderOpen=!1,this._uploaderEl=null}_handleUploadClick(){this._openUploader()}_hasFileTransfer(e){var s,i;return!!((i=(s=e.dataTransfer)==null?void 0:s.types)!=null&&i.includes("Files"))}async open(){var u,f,p,g,m,_,y,S,w,E;const e=this.store.getState(),s=He((u=this.config)==null?void 0:u.forcedFilters),i=new Set(Object.keys(s)),a={},r=He((f=this.config)==null?void 0:f.defaultFilters);for(const[M,$]of Object.entries(r))i.has(M)||(a[M]=$);const n=Object.keys(a),l=((p=this.config)==null?void 0:p.tabs)??["assets","folders"],d=(g=this.config)!=null&&g.rememberLastTab?Ii():null,h=(d&&l.includes(d)?d:null)??((m=this.config)!=null&&m.defaultTab&&l.includes(this.config.defaultTab)?this.config.defaultTab:null)??l[0]??"assets";this.store.setState({isOpen:!0,activeTab:h,searchQuery:"",filters:{metadata:{pinned:e.filters.metadata.pinned,visible:[...e.filters.metadata.pinned],applied:{}},pinned:e.filters.pinned,visible:[...new Set([...e.filters.pinned,...n])],applied:a},offset:0,assets:[],folders:[],currentFolder:null,currentFolderPath:h==="folders"&&((_=this.config)==null?void 0:_.rememberLastFolder)&&ss()||((y=this.config)==null?void 0:y.rootFolderPath)||"/",breadcrumb:this._buildBreadcrumbFromPath(h==="folders"&&((S=this.config)==null?void 0:S.rememberLastFolder)&&ss()||((w=this.config)==null?void 0:w.rootFolderPath)||"/",((E=this.config)==null?void 0:E.rootFolderPath)||"/"),selectedAssets:new Map,selectedFolders:new Map,isResolvingFolders:!1,folderPreviews:{},isPreviewOpen:!1,previewAsset:null,isLoading:!0,isSelectingAll:!1}),this._dragCounter=0,this._isDragOver=!1,this.dispatchEvent(new CustomEvent("ap-open",{detail:{timestamp:Date.now()},bubbles:!0,composed:!0})),await this.updateComplete,!this._initPromise&&this.config&&this._initConfig(this.config),!(this._initPromise&&(await this._initPromise,this._initFailed))&&this._loadData()}close(){this.store.setState({isOpen:!1}),this._dragCounter=0,this._isDragOver=!1,this._isUploaderOpen=!1,this._folderResolveOpen=!1}_scrollToTop(){var e;(e=this.renderRoot.querySelector(".main-content"))==null||e.scrollTo({top:0})}async _loadData(){var i,a,r,n,l,d,h,u,f,p,g,m,_,y;if(!this.apiClient)return;const e=++this._loadId,s=this.store.getState();this._scrollToTop(),this.store.setState({isLoading:!0});try{const S=s.activeTab;if(S==="assets"){const w=this._buildSearchNotation(),E=s.currentFolderPath||"/",M=Ve(this.apiClient,{folder:E,offset:0,limit:s.limit,sort_by:s.sortBy,sort_direction:s.sortDirection,search:s.searchQuery||void 0,q:w||void 0,recursive:1}),$=Gt(this.apiClient,{folder:E,q:w||void 0,search:s.searchQuery||void 0,recursive:1}).catch(()=>null),[C,O]=await Promise.all([M,$]);if(e!==this._loadId)return;const U=((i=C.files)==null?void 0:i.length)??0,V=U>=s.limit,Ae=((a=O==null?void 0:O.stats)==null?void 0:a.approx_files_count)??((r=O==null?void 0:O.info)==null?void 0:r.total_files_count)??((n=C.info)==null?void 0:n.total_files_count)??((d=(l=C.base)==null?void 0:l.count)==null?void 0:d.files_recursive)??((u=(h=C.base)==null?void 0:h.count)==null?void 0:u.files_direct)??U;this.store.setState({assets:C.files||[],folders:[],totalCount:Ae,totalFolderCount:0,offset:0,hasMore:V,isLoading:!1})}else if(S==="folders"){const w=this._buildSearchNotation(),E=s.currentFolderPath||"/",[M,$,C]=await Promise.all([Ks(this.apiClient,{folderPath:s.currentFolderPath,q:s.searchQuery||void 0,recursive:s.searchQuery?1:0,sort_by:s.sortBy,sort_direction:s.sortDirection}),Ve(this.apiClient,{folder:E,offset:0,limit:s.limit,sort_by:s.sortBy,sort_direction:s.sortDirection,search:s.searchQuery||void 0,q:w||void 0,recursive:0}),Gt(this.apiClient,{folder:E,q:w||void 0,search:s.searchQuery||void 0,recursive:0}).catch(()=>null)]);if(e!==this._loadId)return;const O=M.folders||[];let U={};if(O.length>0)try{U=await Gs(this.apiClient,O.map(me=>me.uuid))}catch{}if(e!==this._loadId)return;const V=((f=$.files)==null?void 0:f.length)??0,Ae=V>=s.limit,tt=((p=C==null?void 0:C.stats)==null?void 0:p.approx_files_count)??((g=C==null?void 0:C.info)==null?void 0:g.total_files_count)??((m=$.info)==null?void 0:m.total_files_count)??((y=(_=$.base)==null?void 0:_.count)==null?void 0:y.files_direct)??V;this.store.setState({assets:$.files||[],folders:O,folderPreviews:U,totalCount:tt,totalFolderCount:M.total??O.length,offset:0,hasMore:Ae,isLoading:!1})}}catch(S){if(e!==this._loadId)return;this.store.setState({isLoading:!1}),this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:S,context:"loadData"},bubbles:!0,composed:!0}))}}async _loadMore(){const e=this.store.getState();if(e.isLoading||!e.hasMore||!this.apiClient)return;const s=++this._loadMoreId,i=e.offset+e.limit;this.store.setState({isLoading:!0});try{const a=this._buildSearchNotation(),r=await Ve(this.apiClient,{folder:e.currentFolderPath||"/",offset:i,limit:e.limit,sort_by:e.sortBy,sort_direction:e.sortDirection,search:e.searchQuery||void 0,q:a||void 0,recursive:e.activeTab==="folders"?0:1});if(s!==this._loadMoreId)return;const n=this.store.getState().assets,l=r.files||[],d=l.length>=e.limit,h=[...n,...l];this.store.setState({assets:h,offset:i,hasMore:d,isLoading:!1})}catch{if(s!==this._loadMoreId)return;this.store.setState({isLoading:!1})}}_debouncedLoadData(e=120){this._loadDataTimer&&clearTimeout(this._loadDataTimer),this._loadDataTimer=setTimeout(()=>{this._loadDataTimer=null,this._loadData()},e)}_handleCancel(e){var s,i;this.close(),(i=(s=this.config)==null?void 0:s.onCancel)==null||i.call(s),this.dispatchEvent(new CustomEvent("ap-cancel",{detail:{reason:e},bubbles:!0,composed:!0}))}_handleSearchChange(e){this.store.setState({searchQuery:e.detail.value,offset:0,assets:[],folders:[]}),this.selectionCtrl.resetRange(),this._loadData()}_handleViewChange(e){var i;const s=e.detail.mode;this.store.setState({viewMode:s}),(i=this.config)!=null&&i.rememberLastView&&Li(s),this._scrollToTop()}_handleRegionalChange(e){const{groupUuid:s,value:i}=e.detail,a=this.store.getState().regionalFilters;this.store.setState({regionalFilters:{...a,[s]:i}})}_handleSortChange(e){const s=e.detail.value,i=this.store.getState();this.store.setState({sortBy:s,offset:0,assets:[],folders:[]}),es(s,i.sortDirection),this.selectionCtrl.resetRange(),this._loadData()}_handleSortDirectionChange(e){const s=e.detail.value,i=this.store.getState();this.store.setState({sortDirection:s,offset:0,assets:[],folders:[]}),es(i.sortBy,s),this.selectionCtrl.resetRange(),this._loadData()}_handleTabChange(e){var i,a;const s=e.detail.tab;(i=this.config)!=null&&i.rememberLastTab&&Pi(s),this.store.setState({activeTab:s,currentFolder:null,currentFolderPath:((a=this.config)==null?void 0:a.rootFolderPath)??"/",breadcrumb:[],offset:0,assets:[],folders:[]}),this.selectionCtrl.resetRange(),this._loadData()}_handleAssetSelect(e){this.selectionCtrl.handleSelect(e.detail.asset,e.detail.index,e.detail.event)}_handleFolderSelect(e){this.selectionCtrl.handleFolderSelect(e.detail.folder,e.detail.index,e.detail.event)}_handleAssetPreview(e){this.store.setState({previewAsset:e.detail.asset,isPreviewOpen:!0})}_handleQuickSelect(e){var i,a;const s=e.detail.asset;(a=(i=this.config)==null?void 0:i.onSelect)==null||a.call(i,[s]),this.dispatchEvent(new CustomEvent("ap-select",{detail:{assets:[s]},bubbles:!0,composed:!0})),this._isInline||this.close()}_handleFolderOpen(e){var r;const s=e.detail.folder,i=this.store.getState(),a=s.path||`${i.currentFolderPath}${s.name}/`;(r=this.config)!=null&&r.rememberLastFolder&&ts(a),this.store.setState({currentFolder:s.uuid,currentFolderPath:a,breadcrumb:[...i.breadcrumb,{uuid:s.uuid,name:s.name,path:a}],searchQuery:"",offset:0,assets:[],folders:[]}),this.selectionCtrl.resetRange(),this._loadData()}_handleBreadcrumbNavigate(e){var l,d;const s=e.detail.uuid,i=this.store.getState(),a=s?i.breadcrumb.findIndex(h=>h.uuid===s):-1,r=s?i.breadcrumb.slice(0,a+1):[],n=r.length>0?r[r.length-1].path:((l=this.config)==null?void 0:l.rootFolderPath)||"/";(d=this.config)!=null&&d.rememberLastFolder&&ts(n),this.store.setState({currentFolder:s||null,currentFolderPath:n,breadcrumb:r,offset:0,assets:[],folders:[]}),this.selectionCtrl.resetRange(),this._loadData()}_buildBreadcrumbFromPath(e,s){if(!e||e===s||e==="/")return[];const a=(e.startsWith(s)?e.slice(s.length):e.replace(/^\//,"")).split("/").filter(Boolean),r=[];let n=s.endsWith("/")?s:s+"/";for(const l of a)n+=l+"/",r.push({uuid:n,name:l,path:n});return r}_handlePreviewClose(){this.store.setState({isPreviewOpen:!1,previewAsset:null})}_handlePreviewNavigate(e){this.store.setState({previewAsset:e.detail.asset})}_handleSelectionConfirm(e){var a,r,n,l,d,h;const s=e.detail.assets,i=e.detail.folders||[];if(i.length>0&&((a=this.config)==null?void 0:a.folderSelection)!==!1){if(((r=this.config)==null?void 0:r.folderSelectionMode)==="assets"){this._folderResolveOpen=!0;return}(l=(n=this.config)==null?void 0:n.onSelect)==null||l.call(n,s,i),this.dispatchEvent(new CustomEvent("ap-select",{detail:{assets:s,folders:i},bubbles:!0,composed:!0})),this._isInline||this.close();return}(h=(d=this.config)==null?void 0:d.onSelect)==null||h.call(d,s),this.dispatchEvent(new CustomEvent("ap-select",{detail:{assets:s},bubbles:!0,composed:!0})),this._isInline||this.close()}async _handleFolderResolveConfirm(e){var r,n,l;const s=e.detail.mode,i=this.selectionCtrl.getSelectedFolders(),a=this.selectionCtrl.getSelectedAssets();this.store.setState({isResolvingFolders:!0});try{const d=await Promise.all(i.map(m=>Ve(this.apiClient,{folder:m.path,recursive:s==="recursive"?1:0,limit:1e4}))),h=[];for(const m of d)h.push(...m.files);const u=[...a],f=new Set(u.map(m=>m.uuid));for(const m of h)f.has(m.uuid)||(u.push(m),f.add(m.uuid));const p=(r=this.config)==null?void 0:r.maxSelections,g=p?u.slice(0,p):u;(l=(n=this.config)==null?void 0:n.onSelect)==null||l.call(n,g),this.dispatchEvent(new CustomEvent("ap-select",{detail:{assets:g},bubbles:!0,composed:!0})),this._folderResolveOpen=!1,this.store.setState({isResolvingFolders:!1}),this._isInline||this.close()}catch(d){this.store.setState({isResolvingFolders:!1}),this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:d,context:"folderResolve"},bubbles:!0,composed:!0}))}}_handleFolderResolveCancel(){this._folderResolveOpen=!1}async _handleSelectAll(e){var l,d,h;const s=this.store.getState();if(s.isSelectingAll||!this.apiClient||!(((l=s.config)==null?void 0:l.multiSelect)??!0))return;const a=((d=e==null?void 0:e.detail)==null?void 0:d.scope)??"all",r=a!=="assets"&&((h=this.config)==null?void 0:h.folderSelection)!==!1&&s.folders.length>0;if(!(a!=="folders")){r&&this.selectionCtrl.selectAllFolders(s.folders);return}if(s.assets.length>=s.totalCount){r&&this.selectionCtrl.selectAllFolders(s.folders),this.selectionCtrl.selectAll(s.assets);return}this.store.setState({isSelectingAll:!0});try{const u=this._buildSearchNotation(),f=s.currentFolderPath||"/",p=s.limit,g=s.assets,m=s.totalCount,_=s.activeTab==="folders"?0:1,y=[];for(let C=g.length;C<m;C+=p)y.push(C);const S=4,w=[];for(let C=0;C<y.length;C+=S){const O=y.slice(C,C+S),U=await Promise.all(O.map(V=>Ve(this.apiClient,{folder:f,offset:V,limit:p,sort_by:s.sortBy,sort_direction:s.sortDirection,search:s.searchQuery||void 0,q:u||void 0,recursive:_})));for(const V of U)V.files&&w.push(...V.files)}const E=new Set(g.map(C=>C.uuid)),M=w.filter(C=>E.has(C.uuid)?!1:(E.add(C.uuid),!0)),$=[...g,...M];this.store.setState({assets:$,offset:Math.max(0,$.length-p),hasMore:!1,isSelectingAll:!1}),r&&this.selectionCtrl.selectAllFolders(s.folders),this.selectionCtrl.selectAll($)}catch(u){this.store.setState({isSelectingAll:!1}),this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:u,context:"selectAll"},bubbles:!0,composed:!0}))}}_handleSelectionClear(){this.selectionCtrl.clearSelection()}_handleSelectionDeselect(e){const s=new Map(this.store.getState().selectedAssets);s.delete(e.detail.uuid),this.store.setState({selectedAssets:s})}_isDateFilterKey(e){return e===v.DATE||e===v.LICENSE_EXPIRY||e===R.DUE_DATE}_handleFilterUpdate(e){const{key:s,values:i,operator:a}=e.detail,n={...this.store.getState().filters};let l=i===""||i===null||i===void 0||Array.isArray(i)&&i.length===0||typeof i=="object"&&!Array.isArray(i)&&Object.values(i).every(d=>d==null||d===""||Array.isArray(d)&&d.length===0);if(!l&&this._isDateFilterKey(s)&&typeof i=="object"&&!Array.isArray(i)){const{kind:d,preset:h,from:u,to:f}=i;l=!d&&!h&&!u&&!f}if(l){const d={...n.applied};delete d[s],n.applied=d,n.pinned.includes(s)||(n.visible=n.visible.filter(h=>h!==s))}else{const d={...n.applied};this._isDateFilterKey(s)&&typeof i=="object"&&!Array.isArray(i)?d[s]={type:"date",field:i.field||"created",kind:i.kind||null,preset:i.preset||null,from:i.from||null,to:i.to||null}:s===v.IMAGE&&typeof i=="object"&&!Array.isArray(i)?d[s]=i:d[s]={type:"string",values:Array.isArray(i)?i:[i],operator:a||":"},n.applied=d,n.visible.includes(s)||(n.visible=[...n.visible,s])}if(this.store.setState({filters:n,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData(),this._pendingFilter===s){this._pendingFilter=null;const d=this.renderRoot.querySelector("ap-filters-bar");d&&(d.pendingFilter=null)}}_handleFilterOpen(e){const s=e.detail.key,i=e.detail.chipRect,a=this.renderRoot.querySelector("ap-content-toolbar");let r,n;if(i){const l=this.renderRoot.querySelector(".toolbar-filters-wrapper");if(l){const d=l.getBoundingClientRect();r=i.left-d.left,n=i.bottom-d.top}}a==null||a.openFilterPanel(s,!0,r,n)}_handleMetadataFilterOpen(e){const{fieldKey:s,chipRect:i}=e.detail,a=this.renderRoot.querySelector("ap-content-toolbar");let r,n;if(i){const l=this.renderRoot.querySelector(".toolbar-filters-wrapper");if(l){const d=l.getBoundingClientRect();r=i.left-d.left,n=i.bottom-d.top}}a==null||a.openMetadataFieldPanel(s,!0,r,n)}_handleFilterPanelChange(e){const s=this.renderRoot.querySelector("ap-filters-bar");s&&(s.activeFilter=e.detail.key,s.activeMetadataField=e.detail.metadataFieldKey||null),!e.detail.key&&!e.detail.metadataFieldKey&&(this._pendingFilter||this._pendingMetadataField)&&(this._pendingFilter=null,this._pendingMetadataField=null,s&&(s.pendingFilter=null,s.pendingMetadataField=null))}async _handleFilterPending(e){var p,g,m;const{key:s,metadataFieldKey:i}=e.detail,a=this.renderRoot.querySelector("ap-filters-bar"),r=this.renderRoot.querySelector("ap-content-toolbar");if(!a||!r)return;i?(this._pendingMetadataField=i,a.pendingMetadataField=i):s&&(this._pendingFilter=s,a.pendingFilter=s),await a.updateComplete;let n=a.renderRoot.querySelector(".chip.pending");if(!n){const _=a.renderRoot.querySelectorAll(".chip.pinned-empty"),y=i?(p=a._getMetadataLabel)==null?void 0:p.call(a,i):void 0;for(const S of _){const w=(m=(g=S.querySelector(".chip-label"))==null?void 0:g.textContent)==null?void 0:m.trim();if(i&&w===y){n=S;break}if(s&&w===(Me[s]||s)){n=S;break}}}if(!n)return;const l=n.getBoundingClientRect(),d=this.renderRoot.querySelector(".toolbar-filters-wrapper"),h=d==null?void 0:d.getBoundingClientRect(),u=h?l.left-h.left:l.left,f=h?l.bottom-h.top:void 0;i?r.openMetadataFieldPanel(i,!0,u,f):s&&r.openFilterPanel(s,!0,u,f)}_handleFilterRemove(e){var n;const s=e.detail.key;if(s in(((n=this.config)==null?void 0:n.forcedFilters)??{}))return;const a={...this.store.getState().filters},r={...a.applied};delete r[s],a.applied=r,a.pinned.includes(s)||(a.visible=a.visible.filter(l=>l!==s)),this.store.setState({filters:a,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData()}_handleMetadataFilterChange(e){const{fieldKey:s,operator:i,values:a,metadataType:r}=e.detail,l={...this.store.getState().filters},d={...l.metadata},h={...d.applied};if(!a||Array.isArray(a)&&a.length===0?(delete h[s],d.applied=h,d.pinned.includes(s)||(d.visible=d.visible.filter(f=>f!==s))):(h[s]={type:"string",values:Array.isArray(a)?a:[a],operator:i||":",metadataType:r},d.applied=h,d.visible.includes(s)||(d.visible=[...d.visible,s])),l.metadata=d,this.store.setState({filters:l,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData(),this._pendingMetadataField===s){this._pendingMetadataField=null;const f=this.renderRoot.querySelector("ap-filters-bar");f&&(f.pendingMetadataField=null)}}_handleMetadataFieldToggle(e){const{fieldKey:s,visible:i}=e.detail,r={...this.store.getState().filters},n={...r.metadata};i?n.visible.includes(s)||(n.visible=[...n.visible,s]):n.visible=n.visible.filter(l=>l!==s),r.metadata=n,this.store.setState({filters:r})}_handleMetadataFilterRemove(e){const{fieldKey:s}=e.detail,a={...this.store.getState().filters},r={...a.metadata},n={...r.applied};delete n[s],r.applied=n,r.pinned.includes(s)||(r.visible=r.visible.filter(l=>l!==s)),a.metadata=r,this.store.setState({filters:a,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData()}_handleFilterPin(e){var l,d;const{key:s,pinned:i}=e.detail,r={...this.store.getState().filters};i?r.pinned.includes(s)||(r.pinned=[...r.pinned,s]):(r.pinned=r.pinned.filter(h=>h!==s),s in r.applied||(r.visible=r.visible.filter(h=>h!==s))),this.store.setState({filters:r});const n=((d=(l=this.store.getState().config)==null?void 0:l.auth)==null?void 0:d.projectToken)??null;Ai(n,r.pinned)}_handleMetadataPin(e){var d,h;const{fieldKey:s,pinned:i}=e.detail,r={...this.store.getState().filters},n={...r.metadata};i?n.pinned.includes(s)||(n.pinned=[...n.pinned,s]):(n.pinned=n.pinned.filter(u=>u!==s),s in n.applied||(n.visible=n.visible.filter(u=>u!==s))),r.metadata=n,this.store.setState({filters:r});const l=((h=(d=this.store.getState().config)==null?void 0:d.auth)==null?void 0:h.projectToken)??null;Ti(l,n.pinned)}_handleFiltersClearAll(){const e=this.store.getState();this.store.setState({filters:{...e.filters,applied:{},visible:[...e.filters.pinned],metadata:{...e.filters.metadata,applied:{},visible:[...e.filters.metadata.pinned]}},offset:0,assets:[],folders:[],isLoading:!0});const s=this.renderRoot.querySelector("ap-filters-bar");s&&(s.activeFilter=null),this.selectionCtrl.resetRange(),this._debouncedLoadData()}_handleFilterDeactivate(e){const s=e.detail.key,a={...this.store.getState().filters};a.visible=a.visible.filter(r=>r!==s),this.store.setState({filters:a})}_handleMetadataFieldDeactivate(e){const{fieldKey:s}=e.detail,a={...this.store.getState().filters},r={...a.metadata};r.visible=r.visible.filter(n=>n!==s),a.metadata=r,this.store.setState({filters:a})}_handleFiltersSet(e){var h;const{applied:s,metadata:i}=e.detail,r={...this.store.getState().filters},n=new Set(Object.keys(((h=this.config)==null?void 0:h.forcedFilters)??{})),l={...s};for(const u of n)delete l[u];r.applied=l;const d=Object.keys(s);if(r.visible=[...new Set([...r.pinned,...d])],i){const u={...r.metadata};u.applied=i.applied;const f=Object.keys(i.applied);u.visible=[...new Set([...u.pinned,...f])],r.metadata=u}this.store.setState({filters:r,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData()}_getSortOptions(){const e=this.storeCtrl.state;return e.searchQuery?ji:e.activeTab==="folders"?Bi:It}_buildSearchNotation(){var a;const e=this.store.getState(),s={...He((a=this.config)==null?void 0:a.forcedFilters),...e.filters.applied};return fi(s,e.filters.metadata.applied).join(" ")}render(){var p,g,m,_,y,S,w,E,M,$,C,O;const e=this.storeCtrl.state,s=Array.from(e.selectedAssets.keys()),i=Array.from(e.selectedFolders.keys()),a=this.selectionCtrl.getSelectedAssets(),r=this.selectionCtrl.getSelectedFolders(),n=((p=this.config)==null?void 0:p.folderSelection)!==!1,l=o.html`
6423
+ `];As([c.property()],mt.prototype,"text",2);mt=As([c.customElement("ap-tooltip")],mt);var Lr=Object.defineProperty,$t=(t,e,s,i)=>{for(var a=void 0,r=t.length-1,n;r>=0;r--)(n=t[r])&&(a=n(e,s,a)||a);return a&&Lr(e,s,a),a};const Ht=class Ht extends o.LitElement{constructor(){super(),this._initFailed=!1,this._loadId=0,this._loadMoreId=0,this._loadDataTimer=null,this._pendingFilter=null,this._pendingMetadataField=null,this._uploaderEl=null,this._uploaderImportPromise=null,this._dragCounter=0,this._isDragOver=!1,this._isUploaderOpen=!1,this._folderResolveOpen=!1,this._onDragEnter=e=>{var s;!((s=this.config)!=null&&s.uploader)||!this._hasFileTransfer(e)||(e.preventDefault(),this._dragCounter++,this._dragCounter===1&&(this._isDragOver=!0))},this._onDragOver=e=>{var s;!((s=this.config)!=null&&s.uploader)||!this._hasFileTransfer(e)||(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="copy"))},this._onDragLeave=e=>{var s;!((s=this.config)!=null&&s.uploader)||!this._hasFileTransfer(e)||(e.preventDefault(),this._dragCounter--,this._dragCounter<=0&&(this._dragCounter=0,this._isDragOver=!1))},this._onDrop=e=>{var i,a;if(!((i=this.config)!=null&&i.uploader)||!this._hasFileTransfer(e))return;e.preventDefault(),this._dragCounter=0,this._isDragOver=!1;const s=Array.from(((a=e.dataTransfer)==null?void 0:a.files)??[]);s.length>0&&this._openUploader(s)},this.store=Rs(),this.storeCtrl=new js(this,this.store),this.selectionCtrl=new Bs(this,this.store),this.infiniteScrollCtrl=new Us(this,()=>this._loadMore()),this.marqueeCtrl=new Vs(this,this.store)}get _isInline(){var e;return((e=this.config)==null?void 0:e.displayMode)==="inline"}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback(),this._uploaderEl&&(this._uploaderEl.remove(),this._uploaderEl=null),this._uploaderImportPromise=null,this._dragCounter=0,this._isDragOver=!1,this._isUploaderOpen=!1}updated(e){super.updated(e),e.has("config")&&this.config&&this._initConfig(this.config);const s=this.renderRoot.querySelector("#sentinel");if(s&&s!==this._lastSentinel){this._lastSentinel=s;const a=this.renderRoot.querySelector(".main-content");this.infiniteScrollCtrl.observe(s,a)}const i=this.renderRoot.querySelector(".main-content");i&&i!==this._lastMarqueeContainer&&(this._lastMarqueeContainer=i,this.marqueeCtrl.attach(i))}_initConfig(e){const s={folderSelection:!0,...e};this._initFailed=!1,this._initPromise=this._doInit(s).catch(()=>{this._initFailed=!0}),this.toggleAttribute("inline",s.displayMode==="inline"),s.displayMode==="inline"&&!this.store.getState().isOpen&&this.open()}async _doInit(e){const s=Di(),i=s.sortBy??e.defaultSortBy??"created_at",a=s.sortDirection??e.defaultSortDirection??"desc";this.store.setState({config:e,projectToken:e.auth.projectToken,viewMode:e.rememberLastView&&Ri()||e.defaultViewMode||"grid",sortBy:i,sortDirection:a}),this.apiClient=new qs(e.auth,e.apiBase);try{if(e.auth.mode==="securityTemplate"){const g=await Ws(this.apiClient);this.apiClient.setSassKey(g),this.store.setState({sassKey:g})}const[r,n,l,d]=await Promise.allSettled([fi(this.apiClient),Ys(this.apiClient),Xs(this.apiClient),ui(this.apiClient)]);if(r.status==="fulfilled"){const{fields:g,regionalVariantGroups:m,regionalFilters:_,brandColor:y}=r.value;this.store.setState({metadataFields:g,regionalVariantGroups:m,regionalFilters:_,...y?{brandColor:y}:{}})}n.status==="fulfilled"&&this.store.setState({labels:n.value.labels||[]}),l.status==="fulfilled"&&this.store.setState({tags:l.value}),d.status==="fulfilled"&&this.store.setState({fileTypes:d.value});const{pinnedFilters:h,pinnedMetadata:u}=Oi(e.auth.projectToken??null),f=this.store.getState().filters;this.store.setState({filters:{...f,pinned:h,visible:[...h],metadata:{...f.metadata,pinned:u,visible:[...u]}}});const p=e.brandColor||this.store.getState().brandColor;p&&(this.store.setState({brandColor:p}),qi(this,p))}catch(r){throw this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:r,context:"init"},bubbles:!0,composed:!0})),r}}_ensureUploaderImport(){return this._uploaderImportPromise?this._uploaderImportPromise:(this._uploaderImportPromise=import("@scaleflex/uploader/define").then(()=>{},e=>{throw this._uploaderImportPromise=null,e}),this._uploaderImportPromise)}_buildUploaderConfig(){const e=this.config,s=e.uploader,i=this.store.getState();let a;return e.auth.mode==="securityTemplate"?a={mode:"security-template",container:e.auth.projectToken,securityTemplateId:e.auth.securityTemplateKey}:a={mode:"sass-key",container:e.auth.projectToken,sassKey:e.auth.sassKey},{auth:a,targetFolder:i.currentFolderPath||"/",mode:"inline",restrictions:s.restrictions,concurrency:s.concurrency,autoProceed:s.autoProceed,showFillMetadata:s.showFillMetadata,connectors:s.connectors,sourcesLayout:s.sourcesLayout,headerButton:s.headerButton??"back",clearOnClose:s.clearOnClose,clearOnComplete:s.clearOnComplete,rejectedFileAutoRemoveDelay:s.rejectedFileAutoRemoveDelay}}async _openUploader(e){var i;if(!((i=this.config)!=null&&i.uploader)||this._isUploaderOpen)return;try{await this._ensureUploaderImport()}catch(a){this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:a instanceof Error?a:new Error(String(a)),context:"uploader-load"},bubbles:!0,composed:!0}));return}this._uploaderEl=document.createElement("sfx-uploader");const s=this._uploaderEl;s.addEventListener("sfx-all-complete",()=>{this.store.getState().isOpen&&this._loadData()}),s.addEventListener("sfx-complete-action",()=>{this._closeUploader()}),s.addEventListener("sfx-cancel",()=>{this._closeUploader()}),this._isUploaderOpen=!0,await this.updateComplete,s.config=this._buildUploaderConfig(),await s.updateComplete,e!=null&&e.length&&s.addFiles(e)}_closeUploader(){this._isUploaderOpen=!1,this._uploaderEl=null}_handleUploadClick(){this._openUploader()}_hasFileTransfer(e){var s,i;return!!((i=(s=e.dataTransfer)==null?void 0:s.types)!=null&&i.includes("Files"))}async open(){var u,f,p,g,m,_,y,S,w,E;const e=this.store.getState(),s=Ge((u=this.config)==null?void 0:u.forcedFilters),i=new Set(Object.keys(s)),a={},r=Ge((f=this.config)==null?void 0:f.defaultFilters);for(const[M,$]of Object.entries(r))i.has(M)||(a[M]=$);const n=Object.keys(a),l=((p=this.config)==null?void 0:p.tabs)??["assets","folders"],d=(g=this.config)!=null&&g.rememberLastTab?Ni():null,h=(d&&l.includes(d)?d:null)??((m=this.config)!=null&&m.defaultTab&&l.includes(this.config.defaultTab)?this.config.defaultTab:null)??l[0]??"assets";this.store.setState({isOpen:!0,activeTab:h,searchQuery:"",filters:{metadata:{pinned:e.filters.metadata.pinned,visible:[...e.filters.metadata.pinned],applied:{}},pinned:e.filters.pinned,visible:[...new Set([...e.filters.pinned,...n])],applied:a},offset:0,assets:[],folders:[],currentFolder:null,currentFolderPath:h==="folders"&&((_=this.config)==null?void 0:_.rememberLastFolder)&&is()||((y=this.config)==null?void 0:y.rootFolderPath)||"/",breadcrumb:this._buildBreadcrumbFromPath(h==="folders"&&((S=this.config)==null?void 0:S.rememberLastFolder)&&is()||((w=this.config)==null?void 0:w.rootFolderPath)||"/",((E=this.config)==null?void 0:E.rootFolderPath)||"/"),selectedAssets:new Map,selectedFolders:new Map,isResolvingFolders:!1,folderPreviews:{},isPreviewOpen:!1,previewAsset:null,isLoading:!0,isSelectingAll:!1}),this._dragCounter=0,this._isDragOver=!1,this.dispatchEvent(new CustomEvent("ap-open",{detail:{timestamp:Date.now()},bubbles:!0,composed:!0})),await this.updateComplete,!this._initPromise&&this.config&&this._initConfig(this.config),!(this._initPromise&&(await this._initPromise,this._initFailed))&&this._loadData()}close(){this.store.setState({isOpen:!1}),this._dragCounter=0,this._isDragOver=!1,this._isUploaderOpen=!1,this._folderResolveOpen=!1}_scrollToTop(){var e;(e=this.renderRoot.querySelector(".main-content"))==null||e.scrollTo({top:0})}async _loadData(){var i,a,r,n,l,d,h,u,f,p,g,m,_,y;if(!this.apiClient)return;const e=++this._loadId,s=this.store.getState();this._scrollToTop(),this.store.setState({isLoading:!0});try{const S=s.activeTab;if(S==="assets"){const w=this._buildSearchNotation(),E=s.currentFolderPath||"/",M=qe(this.apiClient,{folder:E,offset:0,limit:s.limit,sort_by:s.sortBy,sort_direction:s.sortDirection,search:s.searchQuery||void 0,q:w||void 0,recursive:1}),$=Xt(this.apiClient,{folder:E,q:w||void 0,search:s.searchQuery||void 0,recursive:1}).catch(()=>null),[C,O]=await Promise.all([M,$]);if(e!==this._loadId)return;const V=((i=C.files)==null?void 0:i.length)??0,q=V>=s.limit,Te=((a=O==null?void 0:O.stats)==null?void 0:a.approx_files_count)??((r=O==null?void 0:O.info)==null?void 0:r.total_files_count)??((n=C.info)==null?void 0:n.total_files_count)??((d=(l=C.base)==null?void 0:l.count)==null?void 0:d.files_recursive)??((u=(h=C.base)==null?void 0:h.count)==null?void 0:u.files_direct)??V;this.store.setState({assets:C.files||[],folders:[],totalCount:Te,totalFolderCount:0,offset:0,hasMore:q,isLoading:!1})}else if(S==="folders"){const w=this._buildSearchNotation(),E=s.currentFolderPath||"/",[M,$,C]=await Promise.all([Gs(this.apiClient,{folderPath:s.currentFolderPath,q:s.searchQuery||void 0,recursive:s.searchQuery?1:0,sort_by:s.sortBy,sort_direction:s.sortDirection}),qe(this.apiClient,{folder:E,offset:0,limit:s.limit,sort_by:s.sortBy,sort_direction:s.sortDirection,search:s.searchQuery||void 0,q:w||void 0,recursive:0}),Xt(this.apiClient,{folder:E,q:w||void 0,search:s.searchQuery||void 0,recursive:0}).catch(()=>null)]);if(e!==this._loadId)return;const O=M.folders||[];let V={};if(O.length>0)try{V=await Ks(this.apiClient,O.map(me=>me.uuid))}catch{}if(e!==this._loadId)return;const q=((f=$.files)==null?void 0:f.length)??0,Te=q>=s.limit,it=((p=C==null?void 0:C.stats)==null?void 0:p.approx_files_count)??((g=C==null?void 0:C.info)==null?void 0:g.total_files_count)??((m=$.info)==null?void 0:m.total_files_count)??((y=(_=$.base)==null?void 0:_.count)==null?void 0:y.files_direct)??q;this.store.setState({assets:$.files||[],folders:O,folderPreviews:V,totalCount:it,totalFolderCount:M.total??O.length,offset:0,hasMore:Te,isLoading:!1})}}catch(S){if(e!==this._loadId)return;this.store.setState({isLoading:!1}),this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:S,context:"loadData"},bubbles:!0,composed:!0}))}}async _loadMore(){const e=this.store.getState();if(e.isLoading||!e.hasMore||!this.apiClient)return;const s=++this._loadMoreId,i=e.offset+e.limit;this.store.setState({isLoading:!0});try{const a=this._buildSearchNotation(),r=await qe(this.apiClient,{folder:e.currentFolderPath||"/",offset:i,limit:e.limit,sort_by:e.sortBy,sort_direction:e.sortDirection,search:e.searchQuery||void 0,q:a||void 0,recursive:e.activeTab==="folders"?0:1});if(s!==this._loadMoreId)return;const n=this.store.getState().assets,l=r.files||[],d=l.length>=e.limit,h=[...n,...l];this.store.setState({assets:h,offset:i,hasMore:d,isLoading:!1})}catch{if(s!==this._loadMoreId)return;this.store.setState({isLoading:!1})}}_debouncedLoadData(e=120){this._loadDataTimer&&clearTimeout(this._loadDataTimer),this._loadDataTimer=setTimeout(()=>{this._loadDataTimer=null,this._loadData()},e)}_handleCancel(e){var s,i;this.close(),(i=(s=this.config)==null?void 0:s.onCancel)==null||i.call(s),this.dispatchEvent(new CustomEvent("ap-cancel",{detail:{reason:e},bubbles:!0,composed:!0}))}_handleSearchChange(e){this.store.setState({searchQuery:e.detail.value,offset:0,assets:[],folders:[]}),this.selectionCtrl.resetRange(),this._loadData()}_handleViewChange(e){var i;const s=e.detail.mode;this.store.setState({viewMode:s}),(i=this.config)!=null&&i.rememberLastView&&zi(s),this._scrollToTop()}_handleRegionalChange(e){const{groupUuid:s,value:i}=e.detail,a=this.store.getState().regionalFilters;this.store.setState({regionalFilters:{...a,[s]:i}})}_handleSortChange(e){const s=e.detail.value,i=this.store.getState();this.store.setState({sortBy:s,offset:0,assets:[],folders:[]}),ts(s,i.sortDirection),this.selectionCtrl.resetRange(),this._loadData()}_handleSortDirectionChange(e){const s=e.detail.value,i=this.store.getState();this.store.setState({sortDirection:s,offset:0,assets:[],folders:[]}),ts(i.sortBy,s),this.selectionCtrl.resetRange(),this._loadData()}_handleTabChange(e){var i,a;const s=e.detail.tab;(i=this.config)!=null&&i.rememberLastTab&&ji(s),this.store.setState({activeTab:s,currentFolder:null,currentFolderPath:((a=this.config)==null?void 0:a.rootFolderPath)??"/",breadcrumb:[],offset:0,assets:[],folders:[]}),this.selectionCtrl.resetRange(),this._loadData()}_handleAssetSelect(e){this.selectionCtrl.handleSelect(e.detail.asset,e.detail.index,e.detail.event)}_handleFolderSelect(e){this.selectionCtrl.handleFolderSelect(e.detail.folder,e.detail.index,e.detail.event)}_handleAssetPreview(e){this.store.setState({previewAsset:e.detail.asset,isPreviewOpen:!0})}_handleQuickSelect(e){var i,a;const s=e.detail.asset;(a=(i=this.config)==null?void 0:i.onSelect)==null||a.call(i,[s]),this.dispatchEvent(new CustomEvent("ap-select",{detail:{assets:[s]},bubbles:!0,composed:!0})),this._isInline||this.close()}_handleFolderOpen(e){var r;const s=e.detail.folder,i=this.store.getState(),a=s.path||`${i.currentFolderPath}${s.name}/`;(r=this.config)!=null&&r.rememberLastFolder&&ss(a),this.store.setState({currentFolder:s.uuid,currentFolderPath:a,breadcrumb:[...i.breadcrumb,{uuid:s.uuid,name:s.name,path:a}],searchQuery:"",offset:0,assets:[],folders:[]}),this.selectionCtrl.resetRange(),this._loadData()}_handleBreadcrumbNavigate(e){var l,d;const s=e.detail.uuid,i=this.store.getState(),a=s?i.breadcrumb.findIndex(h=>h.uuid===s):-1,r=s?i.breadcrumb.slice(0,a+1):[],n=r.length>0?r[r.length-1].path:((l=this.config)==null?void 0:l.rootFolderPath)||"/";(d=this.config)!=null&&d.rememberLastFolder&&ss(n),this.store.setState({currentFolder:s||null,currentFolderPath:n,breadcrumb:r,offset:0,assets:[],folders:[]}),this.selectionCtrl.resetRange(),this._loadData()}_buildBreadcrumbFromPath(e,s){if(!e||e===s||e==="/")return[];const a=(e.startsWith(s)?e.slice(s.length):e.replace(/^\//,"")).split("/").filter(Boolean),r=[];let n=s.endsWith("/")?s:s+"/";for(const l of a)n+=l+"/",r.push({uuid:n,name:l,path:n});return r}_handlePreviewClose(){this.store.setState({isPreviewOpen:!1,previewAsset:null})}_handlePreviewNavigate(e){this.store.setState({previewAsset:e.detail.asset})}_handleSelectionConfirm(e){var a,r,n,l,d,h;const s=e.detail.assets,i=e.detail.folders||[];if(i.length>0&&((a=this.config)==null?void 0:a.folderSelection)!==!1){if(((r=this.config)==null?void 0:r.folderSelectionMode)==="assets"){this._folderResolveOpen=!0;return}(l=(n=this.config)==null?void 0:n.onSelect)==null||l.call(n,s,i),this.dispatchEvent(new CustomEvent("ap-select",{detail:{assets:s,folders:i},bubbles:!0,composed:!0})),this._isInline||this.close();return}(h=(d=this.config)==null?void 0:d.onSelect)==null||h.call(d,s),this.dispatchEvent(new CustomEvent("ap-select",{detail:{assets:s},bubbles:!0,composed:!0})),this._isInline||this.close()}async _handleFolderResolveConfirm(e){var r,n,l;const s=e.detail.mode,i=this.selectionCtrl.getSelectedFolders(),a=this.selectionCtrl.getSelectedAssets();this.store.setState({isResolvingFolders:!0});try{const d=await Promise.all(i.map(m=>qe(this.apiClient,{folder:m.path,recursive:s==="recursive"?1:0,limit:1e4}))),h=[];for(const m of d)h.push(...m.files);const u=[...a],f=new Set(u.map(m=>m.uuid));for(const m of h)f.has(m.uuid)||(u.push(m),f.add(m.uuid));const p=(r=this.config)==null?void 0:r.maxSelections,g=p?u.slice(0,p):u;(l=(n=this.config)==null?void 0:n.onSelect)==null||l.call(n,g),this.dispatchEvent(new CustomEvent("ap-select",{detail:{assets:g},bubbles:!0,composed:!0})),this._folderResolveOpen=!1,this.store.setState({isResolvingFolders:!1}),this._isInline||this.close()}catch(d){this.store.setState({isResolvingFolders:!1}),this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:d,context:"folderResolve"},bubbles:!0,composed:!0}))}}_handleFolderResolveCancel(){this._folderResolveOpen=!1}async _handleSelectAll(e){var l,d,h;const s=this.store.getState();if(s.isSelectingAll||!this.apiClient||!(((l=s.config)==null?void 0:l.multiSelect)??!0))return;const a=((d=e==null?void 0:e.detail)==null?void 0:d.scope)??"all",r=a!=="assets"&&((h=this.config)==null?void 0:h.folderSelection)!==!1&&s.folders.length>0;if(!(a!=="folders")){r&&this.selectionCtrl.selectAllFolders(s.folders);return}if(s.assets.length>=s.totalCount){r&&this.selectionCtrl.selectAllFolders(s.folders),this.selectionCtrl.selectAll(s.assets);return}this.store.setState({isSelectingAll:!0});try{const u=this._buildSearchNotation(),f=s.currentFolderPath||"/",p=s.limit,g=s.assets,m=s.totalCount,_=s.activeTab==="folders"?0:1,y=[];for(let C=g.length;C<m;C+=p)y.push(C);const S=4,w=[];for(let C=0;C<y.length;C+=S){const O=y.slice(C,C+S),V=await Promise.all(O.map(q=>qe(this.apiClient,{folder:f,offset:q,limit:p,sort_by:s.sortBy,sort_direction:s.sortDirection,search:s.searchQuery||void 0,q:u||void 0,recursive:_})));for(const q of V)q.files&&w.push(...q.files)}const E=new Set(g.map(C=>C.uuid)),M=w.filter(C=>E.has(C.uuid)?!1:(E.add(C.uuid),!0)),$=[...g,...M];this.store.setState({assets:$,offset:Math.max(0,$.length-p),hasMore:!1,isSelectingAll:!1}),r&&this.selectionCtrl.selectAllFolders(s.folders),this.selectionCtrl.selectAll($)}catch(u){this.store.setState({isSelectingAll:!1}),this.dispatchEvent(new CustomEvent("ap-error",{detail:{error:u,context:"selectAll"},bubbles:!0,composed:!0}))}}_handleSelectionClear(){this.selectionCtrl.clearSelection()}_handleSelectionDeselect(e){const s=new Map(this.store.getState().selectedAssets);s.delete(e.detail.uuid),this.store.setState({selectedAssets:s})}_isDateFilterKey(e){return e===v.DATE||e===v.LICENSE_EXPIRY||e===R.DUE_DATE}_handleFilterUpdate(e){const{key:s,values:i,operator:a}=e.detail,n={...this.store.getState().filters};let l=i===""||i===null||i===void 0||Array.isArray(i)&&i.length===0||typeof i=="object"&&!Array.isArray(i)&&Object.values(i).every(d=>d==null||d===""||Array.isArray(d)&&d.length===0);if(!l&&this._isDateFilterKey(s)&&typeof i=="object"&&!Array.isArray(i)){const{kind:d,preset:h,from:u,to:f}=i;l=!d&&!h&&!u&&!f}if(l){const d={...n.applied};delete d[s],n.applied=d,n.pinned.includes(s)||(n.visible=n.visible.filter(h=>h!==s))}else{const d={...n.applied};this._isDateFilterKey(s)&&typeof i=="object"&&!Array.isArray(i)?d[s]={type:"date",field:i.field||"created",kind:i.kind||null,preset:i.preset||null,from:i.from||null,to:i.to||null}:s===v.IMAGE&&typeof i=="object"&&!Array.isArray(i)?d[s]=i:d[s]={type:"string",values:Array.isArray(i)?i:[i],operator:a||":"},n.applied=d,n.visible.includes(s)||(n.visible=[...n.visible,s])}if(this.store.setState({filters:n,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData(),this._pendingFilter===s){this._pendingFilter=null;const d=this.renderRoot.querySelector("ap-filters-bar");d&&(d.pendingFilter=null)}}_handleFilterOpen(e){const s=e.detail.key,i=e.detail.chipRect,a=this.renderRoot.querySelector("ap-content-toolbar");let r,n;if(i){const l=this.renderRoot.querySelector(".toolbar-filters-wrapper");if(l){const d=l.getBoundingClientRect();r=i.left-d.left,n=i.bottom-d.top}}a==null||a.openFilterPanel(s,!0,r,n)}_handleMetadataFilterOpen(e){const{fieldKey:s,chipRect:i}=e.detail,a=this.renderRoot.querySelector("ap-content-toolbar");let r,n;if(i){const l=this.renderRoot.querySelector(".toolbar-filters-wrapper");if(l){const d=l.getBoundingClientRect();r=i.left-d.left,n=i.bottom-d.top}}a==null||a.openMetadataFieldPanel(s,!0,r,n)}_handleFilterPanelChange(e){const s=this.renderRoot.querySelector("ap-filters-bar");s&&(s.activeFilter=e.detail.key,s.activeMetadataField=e.detail.metadataFieldKey||null),!e.detail.key&&!e.detail.metadataFieldKey&&(this._pendingFilter||this._pendingMetadataField)&&(this._pendingFilter=null,this._pendingMetadataField=null,s&&(s.pendingFilter=null,s.pendingMetadataField=null))}async _handleFilterPending(e){var p,g,m;const{key:s,metadataFieldKey:i}=e.detail,a=this.renderRoot.querySelector("ap-filters-bar"),r=this.renderRoot.querySelector("ap-content-toolbar");if(!a||!r)return;i?(this._pendingMetadataField=i,a.pendingMetadataField=i):s&&(this._pendingFilter=s,a.pendingFilter=s),await a.updateComplete;let n=a.renderRoot.querySelector(".chip.pending");if(!n){const _=a.renderRoot.querySelectorAll(".chip.pinned-empty"),y=i?(p=a._getMetadataLabel)==null?void 0:p.call(a,i):void 0;for(const S of _){const w=(m=(g=S.querySelector(".chip-label"))==null?void 0:g.textContent)==null?void 0:m.trim();if(i&&w===y){n=S;break}if(s&&w===(Le[s]||s)){n=S;break}}}if(!n)return;const l=n.getBoundingClientRect(),d=this.renderRoot.querySelector(".toolbar-filters-wrapper"),h=d==null?void 0:d.getBoundingClientRect(),u=h?l.left-h.left:l.left,f=h?l.bottom-h.top:void 0;i?r.openMetadataFieldPanel(i,!0,u,f):s&&r.openFilterPanel(s,!0,u,f)}_handleFilterRemove(e){var n;const s=e.detail.key;if(s in(((n=this.config)==null?void 0:n.forcedFilters)??{}))return;const a={...this.store.getState().filters},r={...a.applied};delete r[s],a.applied=r,a.pinned.includes(s)||(a.visible=a.visible.filter(l=>l!==s)),this.store.setState({filters:a,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData()}_handleMetadataFilterChange(e){const{fieldKey:s,operator:i,values:a,metadataType:r}=e.detail,l={...this.store.getState().filters},d={...l.metadata},h={...d.applied};if(!a||Array.isArray(a)&&a.length===0?(delete h[s],d.applied=h,d.pinned.includes(s)||(d.visible=d.visible.filter(f=>f!==s))):(h[s]={type:"string",values:Array.isArray(a)?a:[a],operator:i||":",metadataType:r},d.applied=h,d.visible.includes(s)||(d.visible=[...d.visible,s])),l.metadata=d,this.store.setState({filters:l,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData(),this._pendingMetadataField===s){this._pendingMetadataField=null;const f=this.renderRoot.querySelector("ap-filters-bar");f&&(f.pendingMetadataField=null)}}_handleMetadataFieldToggle(e){const{fieldKey:s,visible:i}=e.detail,r={...this.store.getState().filters},n={...r.metadata};i?n.visible.includes(s)||(n.visible=[...n.visible,s]):n.visible=n.visible.filter(l=>l!==s),r.metadata=n,this.store.setState({filters:r})}_handleMetadataFilterRemove(e){const{fieldKey:s}=e.detail,a={...this.store.getState().filters},r={...a.metadata},n={...r.applied};delete n[s],r.applied=n,r.pinned.includes(s)||(r.visible=r.visible.filter(l=>l!==s)),a.metadata=r,this.store.setState({filters:a,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData()}_handleFilterPin(e){var l,d;const{key:s,pinned:i}=e.detail,r={...this.store.getState().filters};i?r.pinned.includes(s)||(r.pinned=[...r.pinned,s]):(r.pinned=r.pinned.filter(h=>h!==s),s in r.applied||(r.visible=r.visible.filter(h=>h!==s))),this.store.setState({filters:r});const n=((d=(l=this.store.getState().config)==null?void 0:l.auth)==null?void 0:d.projectToken)??null;Pi(n,r.pinned)}_handleMetadataPin(e){var d,h;const{fieldKey:s,pinned:i}=e.detail,r={...this.store.getState().filters},n={...r.metadata};i?n.pinned.includes(s)||(n.pinned=[...n.pinned,s]):(n.pinned=n.pinned.filter(u=>u!==s),s in n.applied||(n.visible=n.visible.filter(u=>u!==s))),r.metadata=n,this.store.setState({filters:r});const l=((h=(d=this.store.getState().config)==null?void 0:d.auth)==null?void 0:h.projectToken)??null;Ii(l,n.pinned)}_handleFiltersClearAll(){const e=this.store.getState();this.store.setState({filters:{...e.filters,applied:{},visible:[...e.filters.pinned],metadata:{...e.filters.metadata,applied:{},visible:[...e.filters.metadata.pinned]}},offset:0,assets:[],folders:[],isLoading:!0});const s=this.renderRoot.querySelector("ap-filters-bar");s&&(s.activeFilter=null),this.selectionCtrl.resetRange(),this._debouncedLoadData()}_handleFilterDeactivate(e){const s=e.detail.key,a={...this.store.getState().filters};a.visible=a.visible.filter(r=>r!==s),this.store.setState({filters:a})}_handleMetadataFieldDeactivate(e){const{fieldKey:s}=e.detail,a={...this.store.getState().filters},r={...a.metadata};r.visible=r.visible.filter(n=>n!==s),a.metadata=r,this.store.setState({filters:a})}_handleFiltersSet(e){var h;const{applied:s,metadata:i}=e.detail,r={...this.store.getState().filters},n=new Set(Object.keys(((h=this.config)==null?void 0:h.forcedFilters)??{})),l={...s};for(const u of n)delete l[u];r.applied=l;const d=Object.keys(s);if(r.visible=[...new Set([...r.pinned,...d])],i){const u={...r.metadata};u.applied=i.applied;const f=Object.keys(i.applied);u.visible=[...new Set([...u.pinned,...f])],r.metadata=u}this.store.setState({filters:r,offset:0,assets:[],folders:[],isLoading:!0}),this.selectionCtrl.resetRange(),this._debouncedLoadData()}_getSortOptions(){const e=this.storeCtrl.state;return e.searchQuery?Hi:e.activeTab==="folders"?Gi:zt}_buildSearchNotation(){var a;const e=this.store.getState(),s={...Ge((a=this.config)==null?void 0:a.forcedFilters),...e.filters.applied};return bi(s,e.filters.metadata.applied).join(" ")}render(){var p,g,m,_,y,S,w,E,M,$,C,O;const e=this.storeCtrl.state,s=Array.from(e.selectedAssets.keys()),i=Array.from(e.selectedFolders.keys()),a=this.selectionCtrl.getSelectedAssets(),r=this.selectionCtrl.getSelectedFolders(),n=((p=this.config)==null?void 0:p.folderSelection)!==!1,l=o.html`
6276
6424
  <ap-header
6277
6425
  .activeTab=${e.activeTab}
6278
6426
  .tabs=${((g=this.config)==null?void 0:g.tabs)??["assets","folders"]}
@@ -6315,10 +6463,11 @@
6315
6463
  .filters=${e.filters}
6316
6464
  .labels=${e.labels}
6317
6465
  .tags=${e.tags}
6466
+ .fileTypes=${e.fileTypes}
6318
6467
  .metadataFields=${e.metadataFields}
6319
6468
  .pinnedFilters=${e.filters.pinned}
6320
6469
  .apiClient=${this.apiClient}
6321
- .forcedFilterKeys=${Object.keys(He((y=this.config)==null?void 0:y.forcedFilters))}
6470
+ .forcedFilterKeys=${Object.keys(Ge((y=this.config)==null?void 0:y.forcedFilters))}
6322
6471
  @sort-change=${this._handleSortChange}
6323
6472
  @sort-direction-change=${this._handleSortDirectionChange}
6324
6473
  @filter-update=${this._handleFilterUpdate}
@@ -6421,7 +6570,7 @@
6421
6570
  `:o.nothing:o.html`
6422
6571
  <ap-modal
6423
6572
  ?open=${e.isOpen}
6424
- @ap-cancel=${U=>this._handleCancel(U.detail.reason)}
6573
+ @ap-cancel=${V=>this._handleCancel(V.detail.reason)}
6425
6574
  >
6426
6575
  ${this._isUploaderOpen?f:o.html`
6427
6576
  <div slot="header">${l}</div>
@@ -6515,7 +6664,7 @@
6515
6664
  @selection-clear=${this._handleSelectionClear}
6516
6665
  ></ap-list-view>
6517
6666
  <div id="sentinel"></div>
6518
- `:o.nothing}};Vt.styles=[o.css`
6667
+ `:o.nothing}};Ht.styles=[o.css`
6519
6668
  :host {
6520
6669
  display: contents;
6521
6670
  font-family: var(--ap-font-family, system-ui, -apple-system, sans-serif);
@@ -6689,4 +6838,4 @@
6689
6838
  --sfx-up-border: transparent;
6690
6839
  --sfx-up-radius: 0;
6691
6840
  }
6692
- `];let Se=Vt;xt([c.state()],Se.prototype,"_isDragOver");xt([c.state()],Se.prototype,"_isUploaderOpen");xt([c.state()],Se.prototype,"_folderResolveOpen");xt([c.property({type:Object})],Se.prototype,"config");exports.AssetPicker=Se;
6841
+ `];let Ce=Ht;$t([c.state()],Ce.prototype,"_isDragOver");$t([c.state()],Ce.prototype,"_isUploaderOpen");$t([c.state()],Ce.prototype,"_folderResolveOpen");$t([c.property({type:Object})],Ce.prototype,"config");exports.AssetPicker=Ce;