p-backlog 0.4.0 → 0.5.1
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.
- package/CHANGELOG.md +31 -0
- package/README.md +50 -30
- package/README.ru.md +50 -30
- package/dist/cli.js +670 -265
- package/dist/web/assets/{CodeTab-C87LaJFD.js → CodeTab-D3I5lIJJ.js} +1 -1
- package/dist/web/assets/CostTab-8f2AC5ER.js +1 -0
- package/dist/web/assets/EffectTab-1jObLK9a.js +1 -0
- package/dist/web/assets/Figure-BHBCd7Dt.js +1 -0
- package/dist/web/assets/OverviewTab-DjNyxzJq.js +1 -0
- package/dist/web/assets/QualityTab-W2NdYBhI.js +1 -0
- package/dist/web/assets/StatsPage-rJH3k8Ye.js +1 -0
- package/dist/web/assets/StatsTabState-BoimPoKm.js +1 -0
- package/dist/web/assets/{StatsTable-BXG0IS8p.js → StatsTable-B0tbx68M.js} +1 -1
- package/dist/web/assets/{UnavailableRepos-KiTvsm1X.js → UnavailableRepos-SpC6Dzwu.js} +1 -1
- package/dist/web/assets/cx-DDl6tKXq.js +58 -0
- package/dist/web/assets/{index-AJ1Qzly1.js → index-C8xqRmo-.js} +2 -2
- package/dist/web/assets/start-YlC0KTe5.js +38 -0
- package/dist/web/assets/use-grain-series-Bx70IZvb.js +55 -0
- package/dist/web/assets/value-dot-B7BsbWBD.js +1 -0
- package/dist/web/index.html +1 -1
- package/package.json +2 -1
- package/skill/backlog/SKILL.md +2 -2
- package/skill/backlog-en/SKILL.md +2 -2
- package/dist/web/assets/ChartTooltip-DWaDSRan.js +0 -55
- package/dist/web/assets/CostTab-D4ByOnHX.js +0 -1
- package/dist/web/assets/EffectTab-Dq06ghtZ.js +0 -1
- package/dist/web/assets/Figure-BC1eGh3_.js +0 -1
- package/dist/web/assets/OverviewTab-BBmohHJR.js +0 -1
- package/dist/web/assets/QualityTab-Rb7zRcGH.js +0 -1
- package/dist/web/assets/StatsPage-Dtyc1gAc.js +0 -1
- package/dist/web/assets/StatsTabState-Br-8FgKd.js +0 -1
- package/dist/web/assets/cx-CNNf0q6V.js +0 -58
- package/dist/web/assets/rolldown-runtime-hePW80VL.js +0 -1
- package/dist/web/assets/start-BGXTwsB0.js +0 -38
- package/dist/web/assets/value-dot-W-8PsGpd.js +0 -1
- /package/dist/web/assets/{ChartTooltip-tQC8-pw2.css → use-grain-series-tQC8-pw2.css} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{kn as e,vn as t,yn as n}from"./cx-DDl6tKXq.js";import{A as r,At as i,B as a,C as o,Ct as s,D as c,Dt as l,E as u,Et as d,F as f,G as p,H as m,I as h,J as g,K as _,L as v,O as y,Ot as b,P as x,R as S,S as C,St as w,T,Tt as E,U as D,Y as ee,Z as O,_t as te,at as ne,ct as re,dt as ie,et as ae,ft as oe,gt as k,h as se,ht as A,j as ce,kt as j,mt as M,nt as le,ot as N,rt as ue,st as de,tt as fe,ut as pe,vt as P,wt as me,x as he,xt as F,z as ge}from"./use-grain-series-Bx70IZvb.js";var I=e(n());function L(){return L=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},L.apply(null,arguments)}var R=e=>{var t=e.cx,n=e.cy,r=e.r,a=e.className,o=i(`recharts-dot`,a);return w(t)&&w(n)&&w(r)?I.createElement(`circle`,L({},b(e),te(e),{className:o,cx:t,cy:n,r})):null},_e=[`points`];function z(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function B(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?z(Object(n),!0).forEach(function(t){ve(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):z(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function ve(e,t,n){return(t=ye(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ye(e){var t=be(e,`string`);return typeof t==`symbol`?t:t+``}function be(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function V(){return V=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},V.apply(null,arguments)}function xe(e,t){if(e==null)return{};var n,r,i=Se(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function Se(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function Ce(e){var t=e.option,n=e.dotProps,r=e.className;if((0,I.isValidElement)(t))return(0,I.cloneElement)(t,n);if(typeof t==`function`)return t(n);var a=i(r,typeof t==`boolean`?``:t.className),o=n??{};o.points;var s=xe(o,_e);return I.createElement(R,V({},s,{className:a}))}function we(e,t){return e==null?!1:t?!0:e.length===1}function H(e){var t=e.points,n=e.dot,r=e.className,i=e.dotClassName,a=e.dataKey,o=e.baseProps,s=e.needClip,c=e.clipPathId,u=e.zIndex,d=u===void 0?O.scatter:u;if(!we(t,n))return null;var f=S(n),p=l(n),m=t.map((e,r)=>{var s=B(B(B({r:3},o),p),{},{index:r,cx:e.x??void 0,cy:e.y??void 0,dataKey:a,value:e.value,payload:e.payload,points:t});return I.createElement(Ce,{key:`dot-${r}`,option:n,dotProps:s,className:i})}),h={};return s&&c!=null&&(h.clipPath=`url(#clipPath-${f?``:`dots-`}${c})`),I.createElement(D,{zIndex:d},I.createElement(E,V({className:r},h),m))}function U(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function W(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?U(Object(n),!0).forEach(function(t){Te(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):U(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Te(e,t,n){return(t=Ee(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ee(e){var t=De(e,`string`);return typeof t==`symbol`?t:t+``}function De(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}var Oe=e=>{var t=e.point,n=e.childIndex,r=e.mainColor,i=e.activeDot,a=e.dataKey,o=e.clipPath;if(i===!1||t.x==null||t.y==null)return null;var s=W(W(W({},{index:n,dataKey:a,cx:t.x,cy:t.y,r:4,fill:r??`none`,strokeWidth:2,stroke:`#fff`,payload:t.payload,value:t.value}),j(i)),te(i)),c=(0,I.isValidElement)(i)?(0,I.cloneElement)(i,s):typeof i==`function`?i(s):I.createElement(R,s);return I.createElement(E,{className:`recharts-active-dot`,clipPath:o},c)};function G(e){var t=e.points,n=e.mainColor,r=e.activeDot,i=e.itemDataKey,a=e.clipPath,o=e.zIndex,s=o===void 0?O.activeDot:o,c=A(p),l=T();if(t==null||l==null)return null;var u=t.find(e=>l.includes(e.payload));return F(u)?null:I.createElement(D,{zIndex:s},I.createElement(Oe,{point:u,childIndex:Number(c),mainColor:n,dataKey:i,activeDot:r,clipPath:a}))}var ke=[`animationElapsedTime`,`isAnimating`,`isEntrance`,`visibleLength`,`strokeDasharray`,`connectNulls`];function K(){return K=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},K.apply(null,arguments)}function Ae(e,t){if(e==null)return{};var n,r,i=je(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function je(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function Me(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function q(e,t){return`${t}px ${e}px`}function Ne(e){return e.length%2==0?e:[...e,...e]}function Pe(e,t){for(var n=[],r=0;r<t;++r)n.push(...e);return n}function Fe(e,t,n){var r=Ne(n),i=r.reduce((e,t)=>e+t,0);if(!i)return q(t,e);for(var a=Math.floor(e/i),o=e%i,s=[],c=0,l=0;c<r.length;l+=(u=r[c])??0,++c){var u,d=r[c];if(d!=null&&l+d>o){s=[...r.slice(0,c),o-l];break}}var f=s.length%2==0?[0,t]:[t];return[...Pe(r,a),...s,...f].map(e=>`${e}px`).join(`, `)}function Ie(e,t,n){return e?Fe(n,t,`${e}`.split(/[,\s]+/gim).map(e=>parseFloat(e))):q(t,n)}function Le(e){e.animationElapsedTime,e.isAnimating,e.isEntrance;var t=e.visibleLength,n=e.strokeDasharray,r=e.connectNulls,i=Ae(e,ke),a=r??!1,o;if(t!=null){var s=i.pathRef;o=Ie(n,Me(s?.current??null),t)}else n!=null&&(o=String(n));return I.createElement(fe,K({},i,{connectNulls:a,strokeDasharray:o}))}function Re(e){var t=(0,I.useRef)(0),n=(0,I.useRef)(0),r=(0,I.useRef)(!1),i=(0,I.useRef)(e);return i.current!==e&&(t.current=n.current,i.current=e),(0,I.useCallback)((e,i)=>{if(r.current)return null;var a=Math.min(me(t.current+e*i),i);return e>0&&i>0&&(n.current=Math.max(n.current,a),a>=i)?(r.current=!0,null):a},[])}var J=(e,t,n,r)=>_(e,`xAxis`,t,r),ze=(e,t,n,r)=>g(e,`xAxis`,t,r),Be=(e,t,n,r)=>_(e,`yAxis`,n,r),Ve=(e,t,n,r)=>g(e,`yAxis`,n,r),He=M([ue,J,Be,ze,Ve],(e,t,n,r,i)=>oe(e,`xAxis`)?de(t,r,!1):de(n,i,!1)),Ue=(e,t,n,r,i)=>i;function We(e){return e.type===`line`}var Ge=M([ee,Ue],(e,t)=>e.filter(We).find(e=>e.id===t)),Ke=M([ue,J,Be,ze,Ve,Ge,He,ae],(e,t,n,r,i,a,o,s)=>{var c=s.chartData,l=s.dataStartIndex,u=s.dataEndIndex;if(!(a==null||t==null||n==null||r==null||i==null||r.length===0||i.length===0||o==null||e!==`horizontal`&&e!==`vertical`)){var d=a.dataKey,f=a.data,p=f!=null&&f.length>0?f:c?.slice(l,u+1);if(p!=null)return pt({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:i,dataKey:d,bandSize:o,displayedData:p})}});function qe(e){var t=j(e),n=3,r=2;if(t!=null){var i=t.r,a=t.strokeWidth,o=Number(i),s=Number(a);return(Number.isNaN(o)||o<0)&&(o=n),(Number.isNaN(s)||s<0)&&(s=r),{r:o,strokeWidth:s}}return{r:n,strokeWidth:r}}var Je=[`id`],Ye=[`type`,`layout`,`connectNulls`,`needClip`,`shape`,`strokeDasharray`],Xe=[`activeDot`,`animateNewValues`,`animationBegin`,`animationDuration`,`animationEasing`,`connectNulls`,`dot`,`hide`,`isAnimationActive`,`label`,`legendType`,`xAxisId`,`yAxisId`,`id`];function Y(){return Y=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Y.apply(null,arguments)}function X(e,t){if(e==null)return{};var n,r,i=Ze(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function Ze(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function Z(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Q(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Z(Object(n),!0).forEach(function(t){Qe(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Z(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function Qe(e,t,n){return(t=$e(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $e(e){var t=et(e,`string`);return typeof t==`symbol`?t:t+``}function et(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function tt(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function nt(e){var t=0,n=0;for(var r of e)r.status===`matched`&&r.prev.x!=null&&r.next.x!=null&&(t+=r.next.x-r.prev.x,n++);return n>0?t/n:0}var $={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:`ease`,animationInterpolateFn:(e,t)=>{if(e==null)return[];if(t===1)return e.flatMap(e=>e.status===`removed`?[]:[e.next]);var n=nt(e),r=[];for(var i of e)if(i.status===`matched`)r.push(Q(Q({},i.next),{},{x:P(i.prev.x,i.next.x,t),y:P(i.prev.y,i.next.y,t)}));else if(i.status===`added`){if(i.next.x!=null){var a=i.next.x-n;r.push(Q(Q({},i.next),{},{x:P(a,i.next.x,t),y:i.next.y}))}else r.push(i.next)}else if(i.status===`removed`&&i.prev.x!=null){var o=i.prev.x+n;r.push(Q(Q({},i.prev),{},{x:P(i.prev.x,o,t),y:i.prev.y}))}return r},animationMatchBy:x,connectNulls:!1,dot:!0,fill:`#fff`,hide:!1,isAnimationActive:`auto`,label:!1,legendType:`line`,shape:Le,stroke:`#3182bd`,strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:O.line,type:`linear`},rt=e=>{var t=e.dataKey,n=e.name,r=e.stroke,i=e.legendType;return[{inactive:e.hide,dataKey:t,type:i,color:r,value:pe(n,t),payload:e}]},it=I.memo(e=>{var t=e.dataKey,n=e.data,r=e.stroke,i=e.strokeWidth,a=e.fill,o=e.name,c=e.hide,l=e.unit,u=e.formatter,d=e.tooltipType,f=e.id,p={dataDefinedOnItem:n,getPosition:s,settings:{stroke:r,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:pe(o,t),hide:c,type:d,color:r,unit:l,formatter:u,graphicalItemId:f}};return I.createElement(h,{tooltipEntrySettings:p})});function at(e){var t=e.clipPathId,n=e.points,r=e.props,i=r.dot,a=r.dataKey,o=r.needClip;r.id;var s=X(r,Je),c=b(s);return I.createElement(H,{points:n,dot:i,className:`recharts-line-dots`,dotClassName:`recharts-line-dot`,dataKey:a,baseProps:c,needClip:o,clipPathId:t})}function ot(e){var t=e.showLabels,n=e.children,r=e.points,i=(0,I.useMemo)(()=>r?.map(e=>{var t={x:e.x??0,y:e.y??0,width:0,lowerWidth:0,upperWidth:0,height:0};return Q(Q({},t),{},{value:e.value,payload:e.payload,viewBox:t,parentViewBox:void 0,fill:void 0})}),[r]);return I.createElement(ge,{value:t?i:void 0},n)}function st(e){var t=e.clipPathId,n=e.pathRef,r=e.points,i=e.props,a=e.animationElapsedTime,o=e.isAnimating,s=e.isEntrance,c=e.visibleLength,l=i.type,u=i.layout,f=i.connectNulls,p=i.needClip,m=i.shape,h=i.strokeDasharray,g=X(i,Ye),_=Q(Q({},d(g)),{},{fill:`none`,className:`recharts-line-curve`,clipPath:p?`url(#clipPath-${t})`:void 0,points:r,type:l,layout:u,connectNulls:f,strokeDasharray:h??i.strokeDasharray,pathRef:n,animationElapsedTime:a,isAnimating:o,isEntrance:i.animateNewValues?s:!1,visibleLength:c});return I.createElement(I.Fragment,null,r?.length>1&&I.createElement(v,{option:m,DefaultShape:$.shape,shapeProps:_}),I.createElement(at,{points:r,clipPathId:t,props:i}))}function ct(e){var t=e.clipPathId,n=e.props,i=e.pathRef,o=e.previousPointsRef,s=n.points,c=n.isAnimationActive,l=n.animationBegin,u=n.animationDuration,d=n.animationEasing,f=n.animationMatchBy,p=n.animationInterpolateFn,m=n.layout,h=tt(i.current),g=ce(n.onAnimationStart,n.onAnimationEnd),_=g.isAnimating,v=g.handleAnimationStart,y=g.handleAnimationEnd,b=!_,x=Re(s),S=(0,I.useCallback)(e=>e>0&&h>0,[h]);return I.createElement(ot,{points:s,showLabels:b},n.children,I.createElement(r,{animationInput:s,animationIdPrefix:`recharts-line-`,items:s,previousItemsRef:o,isAnimationActive:c,animationBegin:l,animationDuration:u,animationEasing:d,onAnimationStart:v,onAnimationEnd:y,animationInterpolateFn:p,animationMatchBy:f,shouldUpdatePreviousRef:S,layout:m},(e,r,a)=>{var o=_||r<1,s=o?x(r,h):null;return I.createElement(st,{props:n,points:e,clipPathId:t,pathRef:i,animationElapsedTime:r,isAnimating:o,isEntrance:a,visibleLength:s})}),I.createElement(a,{label:n.label}))}function lt(e){var t=e.clipPathId,n=e.props,r=(0,I.useRef)(null),i=(0,I.useRef)(null);return I.createElement(ct,{props:n,clipPathId:t,previousPointsRef:r,pathRef:i})}var ut=(e,t)=>({x:e.x??void 0,y:e.y??void 0,value:e.value,errorVal:ie(e.payload,t)}),dt=class extends I.Component{render(){var e=this.props,t=e.hide,n=e.dot,r=e.points,a=e.className,s=e.xAxisId,c=e.yAxisId,l=e.top,u=e.left,d=e.width,f=e.height,p=e.id,m=e.needClip,h=e.zIndex;if(t)return null;var g=i(`recharts-line`,a),_=p,v=qe(n),y=v.r,b=v.strokeWidth,x=S(n),C=y*2+b,w=m?`url(#clipPath-${x?``:`dots-`}${_})`:void 0;return I.createElement(D,{zIndex:h},I.createElement(E,{className:g},m&&I.createElement(`defs`,null,I.createElement(he,{clipPathId:_,xAxisId:s,yAxisId:c}),!x&&I.createElement(`clipPath`,{id:`clipPath-dots-${_}`},I.createElement(`rect`,{x:u-C/2,y:l-C/2,width:d+C,height:f+C}))),I.createElement(o,{xAxisId:s,yAxisId:c,data:r,dataPointFormatter:ut,errorBarOffset:0},I.createElement(lt,{props:this.props,clipPathId:_}))),I.createElement(G,{activeDot:this.props.activeDot,points:r,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:w}))}};function ft(e){var t=k(e,$),n=t.activeDot,r=t.animateNewValues,i=t.animationBegin,a=t.animationDuration,o=t.animationEasing,s=t.connectNulls,c=t.dot,l=t.hide,d=t.isAnimationActive,f=t.label,p=t.legendType,m=t.xAxisId,h=t.yAxisId,g=t.id,_=X(t,Xe),v=C(m,h).needClip,y=u(),b=ne(),x=N(),S=A(e=>Ke(e,m,h,x,g));if(b!==`horizontal`&&b!==`vertical`||S==null||y==null)return null;var w=y.height,T=y.width,E=y.x,D=y.y;return I.createElement(dt,Y({},_,{id:g,connectNulls:s,dot:c,activeDot:n,animateNewValues:r,animationBegin:i,animationDuration:a,animationEasing:o,isAnimationActive:d,hide:l,label:f,legendType:p,xAxisId:m,yAxisId:h,points:S,layout:b,height:w,width:T,left:E,top:D,needClip:v}))}function pt(e){var t=e.layout,n=e.xAxis,r=e.yAxis,i=e.xAxisTicks,a=e.yAxisTicks,o=e.dataKey,s=e.bandSize;return e.displayedData.map((e,c)=>{var l=ie(e,o);if(t===`horizontal`)return{x:re({axis:n,ticks:i,bandSize:s,entry:e,index:c}),y:(F(l)?null:r.scale.map(l))??null,value:l,payload:e};var u=F(l)?null:n.scale.map(l),d=re({axis:r,ticks:a,bandSize:s,entry:e,index:c});return u==null||d==null?null:{x:u,y:d,value:l,payload:e}}).filter(Boolean)}function mt(e){var t=k(e,$),n=N();return I.createElement(y,{id:t.id,type:`line`},e=>I.createElement(I.Fragment,null,I.createElement(f,{legendPayload:rt(t)}),I.createElement(it,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:e}),I.createElement(c,{type:`line`,id:e,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),I.createElement(ft,Y({},t,{id:e}))))}var ht=I.memo(mt,le);ht.displayName=`Line`;var gt=[`axis`],_t=(0,I.forwardRef)((e,t)=>I.createElement(se,{chartName:`ComposedChart`,defaultTooltipEventType:`axis`,validateTooltipEventTypes:gt,tooltipPayloadSearcher:m,categoricalChartProps:e,ref:t})),vt=t(),yt=3.5;function bt(e){return function({cx:t,cy:n,value:r,index:i}){return typeof r!=`number`||r===0||t===void 0||n===void 0?(0,vt.jsx)(`g`,{},i):(0,vt.jsx)(`circle`,{cx:t,cy:n,r:yt,fill:e,stroke:`var(--surface-raised)`,strokeWidth:1.5},i)}}export{G as a,qe as i,_t as n,H as o,ht as r,bt as t};
|
package/dist/web/index.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="utf-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
6
|
<title>Backlog</title>
|
|
7
|
-
<script type="module" crossorigin src="/assets/index-
|
|
7
|
+
<script type="module" crossorigin src="/assets/index-C8xqRmo-.js"></script>
|
|
8
8
|
</head>
|
|
9
9
|
<body>
|
|
10
10
|
<div id="root"></div>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "p-backlog",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.1",
|
|
4
4
|
"description": "Keep pull requests clean and audit findings safe: a local, autonomous backlog for Claude Code. The agent files out-of-scope issues as Markdown tasks with context and re-checks them as code changes. Optional web UI with metrics.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"claude-code",
|
|
@@ -50,6 +50,7 @@
|
|
|
50
50
|
"dev": "concurrently -k -n server,web \"tsx watch src/server/main.ts\" \"vite\"",
|
|
51
51
|
"test:e2e": "playwright test",
|
|
52
52
|
"screenshots": "npm run build && tsx scripts/screenshots/make.ts",
|
|
53
|
+
"plugins": "tsx scripts/build-plugins.ts",
|
|
53
54
|
"test:package": "vitest run --config vitest.package.config.ts",
|
|
54
55
|
"prepare": "npm run build",
|
|
55
56
|
"test:coverage": "vitest run --coverage",
|
package/skill/backlog/SKILL.md
CHANGED
|
@@ -112,8 +112,8 @@ description: Use when, while working on code, you notice a problem outside the c
|
|
|
112
112
|
|
|
113
113
|
## Перепроверить задачи
|
|
114
114
|
|
|
115
|
-
Когда: сообщение хука «после последней проверки менялся код
|
|
116
|
-
«почисти беклог».
|
|
115
|
+
Когда: сообщение хука «после последней проверки менялся код задач» (в Cursor оно приходит следующим
|
|
116
|
+
сообщением), просьба «проверь беклог» или «почисти беклог».
|
|
117
117
|
|
|
118
118
|
1. `backlog check --json` из репозитория проекта (из другого каталога — `--project <id>`). Висячие ссылки,
|
|
119
119
|
завершённые эпики и сдвинутые `source` он уже исправил сам — это поле `fixed`, список `{ kind, taskId, … }`:
|
|
@@ -120,8 +120,8 @@ array) — fix them together, closing each one.
|
|
|
120
120
|
|
|
121
121
|
## Re-check tasks
|
|
122
122
|
|
|
123
|
-
When: the hook message "code changed for tasks since the last check"
|
|
124
|
-
"clean up the backlog".
|
|
123
|
+
When: the hook message "code changed for tasks since the last check" (in Cursor it arrives as a follow-up
|
|
124
|
+
message), a request to "check the backlog", or "clean up the backlog".
|
|
125
125
|
|
|
126
126
|
1. `backlog check --json` from the project's repository (from another directory — `--project <id>`).
|
|
127
127
|
Dangling references, completed epics, and shifted `source` — it already fixed those itself; that's the
|