PluginProbe
FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration / 2.0.15
FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration v2.0.15
2.1.0 2.0.15 2.0.12 2.0.10 2.0.4 2.0.1 2.0.0 1.95.3 1.95.2 1.95 1.91.6 trunk 1.11 1.12 1.13 1.20 1.21 1.22 1.23 1.30 1.31 1.32 1.35 1.40 1.41 All 42 releases
fluent-boards / assets / reportHelpers.js

reportHelpers.js in FluentBoards – Project Management, Task Management, Goal Tracking, Kanban Board, and, Team Collaboration 2.0.15, at assets/reportHelpers.js

2 lines 6.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import{aV as e,o as a,p as t,$ as l,a as r}from"./vendor-element-plus.js?ver=2.0.15";import{at as o,aO as s,S as d,Z as n,a0 as u,_ as i,$ as p,H as c,ax as b,T as y,a8 as m,a9 as f,a7 as v,R as g}from"./vendor.js?ver=2.0.15";import{_ as h,I as _}from"./descriptionToPlainText.js?ver=2.0.15";const k={name:"ReportFilterBar",components:{Icons:_},props:{modelValue:{type:Object,required:!0},boards:{type:Array,default:()=>[]},boardType:{type:String,default:"regular"},boardPlaceholder:{type:String,default:"All Boards"},loading:{type:Boolean,default:!1},showExport:{type:Boolean,default:!0}},emits:["update:modelValue","export"],computed:{boardIcon(){return"roadmap"===this.boardType?"roadmap":"board"}},data:()=>({CalendarIcon:o(e),presets:[{value:"7days",label:"Last 7 Days",days:7},{value:"30days",label:"Last 30 Days",days:30},{value:"90days",label:"Last 90 Days",days:90},{value:"custom",label:"Custom",days:null}]}),methods:{update(e,a){this.$emit("update:modelValue",{...this.modelValue,[e]:a})},applyPreset(e){const a=this.presets.find(a=>a.value===e);if(!a||!a.days)return void this.update("preset",e);const t=new Date,l=new Date;l.setDate(l.getDate()-(a.days-1)),this.$emit("update:modelValue",{...this.modelValue,preset:e,dateRange:[l,t]})},applyRange(e){this.$emit("update:modelValue",{...this.modelValue,preset:"custom",dateRange:e})}}},$={class:"fbs_report_filterbar"},D={class:"fbs_report_filterbar--group"};const I=h(k,[["render",function(e,o,g,h,_,k){const I=s("Icons"),V=a,x=t,R=l,S=r;return d(),n("div",$,[u("div",D,[i(x,{"model-value":g.modelValue.boardId,class:"fbs_report_filterbar--board",size:"small",filterable:"",clearable:"",placeholder:e.$t(g.boardPlaceholder),"onUpdate:modelValue":o[0]||(o[0]=e=>k.update("boardId",e))},{prefix:p(()=>[i(I,{"icon-name":k.boardIcon},null,8,["icon-name"])]),default:p(()=>[(d(!0),n(c,null,b(g.boards,e=>(d(),y(V,{key:e.id,label:e.title,value:e.id},null,8,["label","value"]))),128))]),_:1},8,["model-value","placeholder"]),i(x,{"model-value":g.modelValue.preset,size:"small",class:"fbs_report_filterbar--preset","onUpdate:modelValue":k.applyPreset},{default:p(()=>[(d(!0),n(c,null,b(_.presets,a=>(d(),y(V,{key:a.value,label:e.$t(a.label),value:a.value},null,8,["label","value"]))),128))]),_:1},8,["model-value","onUpdate:modelValue"]),i(R,{"model-value":g.modelValue.dateRange,class:"fbs_report_filterbar--range",type:"daterange","unlink-panels":"","range-separator":"-",format:"MMM DD YYYY","prefix-icon":_.CalendarIcon,"start-placeholder":e.$t("Start date"),"end-placeholder":e.$t("End date"),"onUpdate:modelValue":k.applyRange},null,8,["model-value","prefix-icon","start-placeholder","end-placeholder","onUpdate:modelValue"])]),g.showExport?(d(),y(S,{key:0,class:"fbs_report_filterbar--export",disabled:g.loading,title:g.loading?e.$t("Loading report…"):"",onClick:o[1]||(o[1]=a=>e.$emit("export"))},{default:p(()=>[m(f(e.$t("Export")),1)]),_:1},8,["disabled","title"])):v("",!0)])}]]),V={class:"fbs_report_panel"},x={class:"fbs_report_panel--header"},R={class:"fbs_report_panel--title"},S={class:"fbs_report_panel--actions"},w={class:"fbs_report_panel--body"};const C=h({name:"ReportPanel",props:{title:{type:String,required:!0}}},[["render",function(e,a,t,l,r,o){return d(),n("section",V,[u("header",x,[u("h4",R,f(e.$t(t.title)),1),u("div",S,[g(e.$slots,"actions")])]),u("div",w,[g(e.$slots,"default")])])}]]);function L(e="",a=7){const t=new Date,l=new Date;return l.setDate(l.getDate()-(a-1)),{boardId:e,preset:`${a}days`,dateRange:[l,t]}}function U(e={},a=7){const t=Array.isArray(e.board_id)?e.board_id[0]:e.board_id,l=Number.parseInt(t,10);return L(l>0?l:t||"",a)}function j(e,a,t){const l=t?String(t):"";if(l===(a.query.board_id?String(Array.isArray(a.query.board_id)?a.query.board_id[0]:a.query.board_id):""))return Promise.resolve();const r={...a.query};return l?r.board_id=l:delete r.board_id,e.replace({path:a.path,query:r})}function A(e){return e("projects/list-of-boards").then(e=>(e.boards||[]).filter(e=>"to-do"===e.type))}function P(e){return e("projects/list-of-boards").then(e=>(e.boards||[]).filter(e=>"roadmap"===e.type))}function q(){let e=0;return{next(){e+=1;const a=e;return{isCurrent:()=>a===e}}}}function T(){return{stats:{total:0,completed:0,overdue:0,activeMembers:0,estimatedTime:"0m"},tasksByBoard:[],priority:{total:0,items:[{key:"urgent",label:"Urgent",value:0},{key:"high",label:"High",value:0},{key:"medium",label:"Medium",value:0},{key:"low",label:"Low",value:0},{key:"none",label:"None",value:0}]},completion:[{key:"completed",label:"Completed",value:0},{key:"incomplete",label:"Still Open",value:0},{key:"completed_earlier",label:"Completed Earlier",value:0}],dueDate:[{key:"overdue",label:"Overdue",value:0},{key:"today",label:"Today",value:0},{key:"next7days",label:"Next 7 Days",value:0},{key:"later",label:"Later",value:0},{key:"no_due_date",label:"No Due Date",value:0}],assigneeWorkload:[]}}function B(){return{byStage:[],byAssignee:[],byLabel:[],priority:{total:0,items:[{key:"urgent",label:"Urgent",value:0},{key:"high",label:"High",value:0},{key:"medium",label:"Medium",value:0},{key:"low",label:"Low",value:0},{key:"none",label:"None",value:0}]},recentlyCompleted:[]}}function M(){return{stats:{tasksCreated:0,stageChanged:0,commentsAdded:0,subtasksCreated:0,attachmentsAdded:0},byUser:[],byType:[],recent:[]}}function O(){return{stats:{totalIdeas:0,submittedIdeas:0,publicIdeas:0,completedIdeas:0},submissions:[],byStage:[],popularIdeas:[],bySource:[{key:"page",label:"Public Page",value:0,colorKey:"primary"},{key:"web",label:"Admin / Web",value:0,colorKey:"success"},{key:"other",label:"Other",value:0,colorKey:"neutral"}]}}function E(e){if(!e)return"";if("string"==typeof e)return e;const a=`${e.getMonth()+1}`.padStart(2,"0"),t=`${e.getDate()}`.padStart(2,"0");return`${e.getFullYear()}-${a}-${t}`}function N(e){const[a,t]=e.dateRange||[];return{board_id:e.boardId||"",start_date:E(a),end_date:E(t)}}function Y(e,a){const t=a.map(e=>e.map(K).join(",")).join("\n"),l=new Blob(["\ufeff"+t],{type:"text/csv;charset=utf-8;"}),r=URL.createObjectURL(l),o=document.createElement("a");o.href=r,o.download=e,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(r)}function H(e,a){const[t,l]=a.dateRange||[];return`${e}-${E(t)||"all"}-to-${E(l)||"all"}.csv`}function K(e){let a=null==e?"":String(e);return/^[=+\-@\t\r\n]/.test(a)&&(a=`'${a}`),`"${a.replace(/"/g,'""')}"`}export{C as R,I as a,N as b,q as c,Y as d,T as e,A as f,L as g,B as h,U as i,M as j,O as k,P as l,H as r,j as s,E as t};
2