Files
igny8/frontend/dist/assets/js/page-keywords.config.tsx-CxJn1kF1.js
Gitea Deploy 961362e088 Add SEO fields to Tasks model, improve content generation response handling, and enhance progress bar animation
- Added primary_keyword, secondary_keywords, tags, and categories fields to Tasks model
- Updated generate_content function to handle full JSON response with all SEO fields
- Improved progress bar animation: smooth 1% increments every 300ms
- Enhanced step detection for content generation vs clustering vs ideas
- Fixed progress modal to show correct messages for each function type
- Added comprehensive logging to Keywords and Tasks pages for AI functions
- Fixed error handling to show meaningful error messages instead of generic failures
2025-11-09 21:22:34 +00:00

2 lines
7.2 KiB
JavaScript

import{j as a}from"./vendor-react-core-DjsjKnCi.js";import{k as c,s as d,v as p,b as v,d as f,i as y,a as b,f as g,c as x,B as i,g as w}from"./page-clusters.config.tsx-9GAd-_h-.js";import{L as n,I as s,B as u}from"./page-authpages-CY7hjDHU.js";const V=e=>{const m=!e.activeSector;return{columns:[{...c,sortable:!0,sortField:"keyword"},...m?[{...d,render:(l,t)=>a.jsx(i,{color:"info",size:"sm",variant:"light",children:t.sector_name||"-"})}]:[],{...p,sortable:!0,sortField:"volume",render:l=>l.toLocaleString()},{...v,sortable:!1,render:(l,t)=>t.cluster_name||"-"},{...f,sortable:!0,sortField:"difficulty",align:"center",render:l=>{const t=w(l),r=typeof t=="number"&&t===5?"solid":typeof t=="number"&&(t===2||t===3||t===4)?"light":typeof t=="number"&&t===1?"solid":"light",o=typeof t=="number"&&t===1||typeof t=="number"&&t===2?"success":typeof t=="number"&&t===3?"warning":typeof t=="number"&&t===4||typeof t=="number"&&t===5?"error":"light";return typeof t=="number"?a.jsx(i,{color:o,variant:r,size:"sm",children:t}):t}},{...y,sortable:!0,sortField:"intent",render:l=>{const t=r=>{const o=(r==null?void 0:r.toLowerCase())||"";return o==="transactional"||o==="commercial"?"success":o==="navigational"?"warning":"info"};return a.jsx(i,{color:t(l),size:"sm",variant:(l==null?void 0:l.toLowerCase())==="informational"?"light":void 0,children:l})}},{...b,sortable:!0,sortField:"status",render:l=>a.jsx(i,{color:l==="active"?"success":l==="pending"?"warning":"error",size:"sm",children:l})},{...x,sortable:!0,sortField:"created_at",render:l=>g(l)}],filters:[{key:"search",label:"Search",type:"text",placeholder:"Search keywords..."},{key:"status",label:"Status",type:"select",options:[{value:"",label:"All Status"},{value:"active",label:"Active"},{value:"pending",label:"Pending"},{value:"archived",label:"Archived"}]},{key:"intent",label:"Intent",type:"select",options:[{value:"",label:"All Intent"},{value:"informational",label:"Informational"},{value:"navigational",label:"Navigational"},{value:"transactional",label:"Transactional"},{value:"commercial",label:"Commercial"}]},{key:"difficulty",label:"Difficulty",type:"select",options:[{value:"",label:"All Difficulty"},{value:"1",label:"1 - Very Easy"},{value:"2",label:"2 - Easy"},{value:"3",label:"3 - Medium"},{value:"4",label:"4 - Hard"},{value:"5",label:"5 - Very Hard"}]},{key:"volume",label:"Volume Range",type:"custom",customRender:()=>a.jsxs("div",{className:"relative flex-1 min-w-[140px]",children:[a.jsxs("button",{ref:e.volumeButtonRef,type:"button",onClick:()=>{e.setIsVolumeDropdownOpen(!e.isVolumeDropdownOpen),e.setTempVolumeMin(e.volumeMin),e.setTempVolumeMax(e.volumeMax)},className:`igny8-select-styled h-9 w-full appearance-none rounded-lg border border-gray-300 bg-transparent px-3 py-2 pr-10 text-sm shadow-theme-xs focus:border-brand-300 focus:outline-hidden focus:ring-3 focus:ring-brand-500/10 dark:border-gray-700 dark:bg-gray-900 dark:focus:border-brand-800 ${e.volumeMin||e.volumeMax?"text-gray-800 dark:text-white/90":"text-gray-400 dark:text-gray-400"} ${e.isVolumeDropdownOpen?"border-brand-300 ring-3 ring-brand-500/10 dark:border-brand-800":""}`,children:[a.jsx("span",{className:"block text-left truncate",children:e.volumeMin||e.volumeMax?`Vol: ${e.volumeMin||"Min"} - ${e.volumeMax||"Max"}`:"Volume Range"}),a.jsx("span",{className:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none",children:a.jsx("svg",{className:"h-4 w-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})})]}),e.isVolumeDropdownOpen&&a.jsx("div",{ref:e.volumeDropdownRef,className:"absolute z-50 left-0 right-0 mt-1 rounded-lg border border-gray-200 bg-white shadow-theme-lg dark:border-gray-800 dark:bg-gray-dark overflow-hidden p-4 min-w-[280px]",children:a.jsxs("div",{className:"space-y-3",children:[a.jsxs("div",{children:[a.jsx(n,{htmlFor:"vol-min",className:"text-xs mb-1",children:"Min Volume"}),a.jsx(s,{id:"vol-min",type:"number",placeholder:"Min",value:e.tempVolumeMin,onChange:l=>{const t=l.target.value;e.setTempVolumeMin(t===""?"":parseInt(t)||"")},className:"w-full h-9"})]}),a.jsxs("div",{children:[a.jsx(n,{htmlFor:"vol-max",className:"text-xs mb-1",children:"Max Volume"}),a.jsx(s,{id:"vol-max",type:"number",placeholder:"Max",value:e.tempVolumeMax,onChange:l=>{const t=l.target.value;e.setTempVolumeMax(t===""?"":parseInt(t)||"")},className:"w-full h-9"})]}),a.jsxs("div",{className:"flex gap-2 pt-2",children:[a.jsx(u,{size:"sm",variant:"primary",onClick:async()=>{const l=e.tempVolumeMin===""?"":Number(e.tempVolumeMin),t=e.tempVolumeMax===""?"":Number(e.tempVolumeMax);e.setIsVolumeDropdownOpen(!1),e.setVolumeMin(l),e.setVolumeMax(t),e.setCurrentPage(1),setTimeout(()=>{e.loadKeywords()},0)},className:"flex-1",children:"OK"}),a.jsx(u,{size:"sm",variant:"secondary",onClick:()=>{e.setIsVolumeDropdownOpen(!1),e.setTempVolumeMin(e.volumeMin),e.setTempVolumeMax(e.volumeMax)},className:"flex-1",children:"Cancel"})]})]})})]})},{key:"cluster_id",label:"Cluster",type:"select",options:[{value:"",label:"All Clusters"},...e.clusters.map(l=>({value:l.id.toString(),label:l.name}))],className:"w-40"}],headerMetrics:[{label:"Total Keywords",value:0,accentColor:"blue",calculate:l=>l.totalCount||0},{label:"Mapped",value:0,accentColor:"green",calculate:l=>l.keywords.filter(t=>t.cluster_id).length},{label:"Unmapped",value:0,accentColor:"amber",calculate:l=>l.keywords.filter(t=>!t.cluster_id).length},{label:"Total Volume",value:0,accentColor:"purple",calculate:l=>l.keywords.reduce((t,r)=>t+(r.volume||0),0)}],formFields:l=>{var t,r;return[{key:"seed_keyword_id",label:"Seed Keyword",type:"select",placeholder:"Select a seed keyword",value:((t=e.formData.seed_keyword_id)==null?void 0:t.toString())||"",onChange:o=>e.setFormData({...e.formData,seed_keyword_id:o?parseInt(o):0}),required:!0,options:[{value:"",label:"Select a keyword..."},...e.availableSeedKeywords.map(o=>({value:o.id.toString(),label:`${o.keyword} (Vol: ${o.volume.toLocaleString()}, Diff: ${o.difficulty}, ${o.intent})`}))]},{key:"volume_override",label:"Volume Override (optional)",type:"number",placeholder:"Leave empty to use seed keyword volume",value:e.formData.volume_override??"",onChange:o=>e.setFormData({...e.formData,volume_override:o?parseInt(o):null})},{key:"difficulty_override",label:"Difficulty Override (optional)",type:"number",placeholder:"Leave empty to use seed keyword difficulty",value:e.formData.difficulty_override??"",onChange:o=>e.setFormData({...e.formData,difficulty_override:o?parseInt(o):null}),min:0,max:100},{key:"cluster_id",label:"Cluster",type:"select",value:((r=e.formData.cluster_id)==null?void 0:r.toString())||"",onChange:o=>e.setFormData({...e.formData,cluster_id:o?parseInt(o):null}),options:[{value:"",label:"No Cluster"},...l.map(o=>({value:o.id.toString(),label:o.name}))]},{key:"status",label:"Status",type:"select",value:e.formData.status||"pending",onChange:o=>e.setFormData({...e.formData,status:o}),options:[{value:"pending",label:"Pending"},{value:"active",label:"Active"},{value:"archived",label:"Archived"}]}]},exportConfig:{endpoint:"/v1/planner/keywords/export/",filename:"keywords",formats:["csv","json"]},importConfig:{endpoint:"/v1/planner/keywords/import_keywords/",acceptedFormats:[".csv"],maxFileSize:5*1024*1024}}};export{V as c};