1import{PageElementBase as c}from"./CdQXFjpm.js";import{C as l,z as u,k as r}from"./D2IJBM4F.js";import{d}from"./ghde6Rcn.js";import"./CATxlt2j.js";import"./CXTOca8g.js";import"./0xmjySIm.js";class m extends c{constructor(t="root",e={}){var s,i,n,o,p;super(t,e),this.widgetType="CardFixtureResult",this.widgetName="Result Fixture",this.component="CardFixtureResult",this.cmsComponent="CardFixtureResult",this.icon={icon:"result",pack:"cms"},this.pseudoWidgetType="widget",this.contentFill="auto-fill",this.teamOptions=[],this.competitionOptions=[],this.seasonOptions=[],this.buttons=[],this.buttonLinkInputs=[],this.loading=!1,this.buildStyleFields=()=>[{heading:"Theme",options:[{type:"radio",subType:"list",attributeKey:"theme",options:[{label:"Light",id:"light"},{label:"Dark",id:"dark"},{label:"Accent",id:"club"}]}]}],this.getSidebarTabs=a=>[{name:"Layout",fields:this.buildLayoutFields(),disabled:!0},{name:"Content",fields:this.buildContentFields(a),default:!0},{name:"Style",fields:this.buildStyleFields()}],this.query=l({method:((s=e.query)==null?void 0:s.method)||"getById",seasonID:((i=e.query)==null?void 0:i.seasonID)||null,competitionID:((n=e.query)==null?void 0:n.competitionID)||null,teamID:((o=e.query)==null?void 0:o.teamID)||null,offset:((p=e.query)==null?void 0:p.offset)??0}),this.contentFill=e.contentFill??"auto-fill",this.theme=e.theme??"light",this.background=e.background??{image:void 0,color:void 0},this.buttons=l(e.buttons??[{title:"",display:!1,action:"",type:"secondary",icon:{icon:"",pack:"fan"}},{title:"",display:!1,action:"",type:"secondary",icon:{icon:"",pack:"fan"}}]),e.buttons?e.buttons.forEach((a,h)=>
1{this.buttonLinkInputs[h]={url:a.action,type:a.linkType||"internal"}}):this.buttonLinkInputs=l([{url:"",type:"internal"},{url:"",type:"internal"}])}serializeElement(){return{...super.serializeBaseElement(),contentFill:this.contentFill,query:this.query,theme:this.theme,background:this.background,buttons:this.buttons.map((t,e)=>{var s,i;return{...t,action:((s=this.buttonLinkInputs[e])==null?void 0:s.url)||"",linkType:((i=this.buttonLinkInputs[e])==null?void 0:i.type)||"internal"}})}}buildContentFields(t){return[{type:"tabs",tabsOptions:{variant:"fill"},tabs:[{title:"Auto-Fill",value:"auto-fill",index:0,options:[{heading:"Team",type:"select",attributeKey:["query","teamID"],placeholder:"Select team",items:this.fetchTeamOptions()},{heading:"Competition",type:"select",attributeKey:["query","competitionID"],disabled:!(t!=null&&t.query.teamID),placeholder:"Select competition",items:this.fetchCompetitionOptions(),callback:()=>{t.query.seasonID=null}},{heading:"Season",type:"select",attributeKey:["query","seasonID"],disabled:!(t!=null&&t.query.teamID)||!(t!=null&&t.query.competitionID),placeholder:"Select season",items:this.fetchSeasonOptions(t)},{heading:"Listing Offset",subHeading:"Determines which position in the listing to populate from. e.g. â5â will populate from the 5th item in the listing.",type:"number",min:0,max:50,attributeKey:["query","offset"]}]},{title:"Manual Fill",value:"manual-fill",disabled:!0,index:1,options:[]}],options:[]}]}fetchTeamOptions(){const{$gc:t}=u();return this.teamOptions.length?this.teamOptions:t().clientTeamDefaultsWeb.fetchClientTeamDefaults().then(e=>(this.teamOptions=e.data.map(s=>{var i;return{name:((i=s.attributes)==null?void 0:i.teamName)||"",id:s.id}}),this.query.teamID||(this.query.teamID=this.teamOptions[0].id),this.teamOptions))}fetchSeasonOptions(t){const{$gc:e}=u(),s=r().public.club.sport;return s==="football"?[]:s==="rugbyleague"&&t.query.competitionID?e().competitionsWeb.fetchCompetitionSeasons(t.query.competitionID).then(i=>(this.seasonOptions=i.data.map(n=>{var o;return{name:((o=n.attributes)==null?void 0:o.seasonName)||"",id:n.id}}),this.query.seasonID||(this.query.seasonID=this.seasonOptions[0].id),this.seasonOptions)):[]}fetchCompetitionOptions(){const{$gc:t}=u(),e=r().public.club.sport;return e==="football"?[]:e==="rugbyleague"?this.competitionOptions.length?this.competitionOptions:t().competitionsWeb.fetchAllCompetitions().then(s=>(this.competitionOptions=[{name:"All Competitions",id:null,code:null},...s.data.map(i=>{var n,o;return{name:((n=i.attributes)==null?void 0:n.competitionName)||"",id:i.id,code:((o=i.attributes)==null?void 0:o.competitionCode)||""}})],this.query.competitionID||(this.query.competitionID=this.competitionOptions[0].id),this.competitionOptions)):[]}duplicateElement(){return new m(this.parentID,d({...this,uuid:void 0}))}}export{m as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.