@corsair-dev/jira 0.1.0

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.
Files changed (39) hide show
  1. package/LICENSE +191 -0
  2. package/dist/client.d.ts +41 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/dist/endpoints/comments.d.ts +7 -0
  5. package/dist/endpoints/comments.d.ts.map +1 -0
  6. package/dist/endpoints/index.d.ts +582 -0
  7. package/dist/endpoints/index.d.ts.map +1 -0
  8. package/dist/endpoints/issues.d.ts +16 -0
  9. package/dist/endpoints/issues.d.ts.map +1 -0
  10. package/dist/endpoints/projects.d.ts +6 -0
  11. package/dist/endpoints/projects.d.ts.map +1 -0
  12. package/dist/endpoints/sprints.d.ts +6 -0
  13. package/dist/endpoints/sprints.d.ts.map +1 -0
  14. package/dist/endpoints/types.d.ts +5540 -0
  15. package/dist/endpoints/types.d.ts.map +1 -0
  16. package/dist/endpoints/users.d.ts +7 -0
  17. package/dist/endpoints/users.d.ts.map +1 -0
  18. package/dist/error-handlers.d.ts +28 -0
  19. package/dist/error-handlers.d.ts.map +1 -0
  20. package/dist/index.d.ts +3028 -0
  21. package/dist/index.d.ts.map +1 -0
  22. package/dist/index.js +1 -0
  23. package/dist/schema/database.d.ts +197 -0
  24. package/dist/schema/database.d.ts.map +1 -0
  25. package/dist/schema/index.d.ts +196 -0
  26. package/dist/schema/index.d.ts.map +1 -0
  27. package/dist/tsup.config.d.ts +3 -0
  28. package/dist/tsup.config.d.ts.map +1 -0
  29. package/dist/webhooks/index.d.ts +274 -0
  30. package/dist/webhooks/index.d.ts.map +1 -0
  31. package/dist/webhooks/newIssue.d.ts +3 -0
  32. package/dist/webhooks/newIssue.d.ts.map +1 -0
  33. package/dist/webhooks/newProject.d.ts +3 -0
  34. package/dist/webhooks/newProject.d.ts.map +1 -0
  35. package/dist/webhooks/types.d.ts +1818 -0
  36. package/dist/webhooks/types.d.ts.map +1 -0
  37. package/dist/webhooks/updatedIssue.d.ts +3 -0
  38. package/dist/webhooks/updatedIssue.d.ts.map +1 -0
  39. package/package.json +40 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiItB,CAAC;AAEX,QAAA,MAAM,eAAe,EAAE,SAA8B,CAAC;AAuDtD,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,iBAAiB,IAAI,aAAa,CACtE,MAAM,EACN,OAAO,UAAU,EACjB,OAAO,mBAAmB,EAC1B,OAAO,kBAAkB,EACzB,CAAC,EACD,OAAO,eAAe,EACtB,OAAO,cAAc,CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAC;AAEnE,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC;AAEhF,wBAAgB,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,iBAAiB,EACrD,eAAe,GAAE,iBAAiB,GAAG,CAA+B,GAClE,kBAAkB,CAAC,CAAC,CAAC,CAqDvB;AAMD,YAAY,EACX,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,iBAAiB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAMnD,YAAY,EACX,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,4BAA4B,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,EACxB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,EACd,iBAAiB,GACjB,MAAM,mBAAmB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ import{z as e}from"zod";var h=o=>({version:1,type:"doc",content:[{type:"paragraph",content:[{type:"text",text:o}]}]}),k=e.object({accountId:e.string().optional(),displayName:e.string().optional(),emailAddress:e.string().optional(),active:e.boolean().optional(),avatarUrls:e.record(e.string()).optional()}),O=e.object({id:e.string().optional(),name:e.string().optional(),statusCategory:e.object({id:e.number().optional(),key:e.string().optional(),name:e.string().optional()}).optional()}),Ke=e.object({id:e.string().optional(),name:e.string().optional(),iconUrl:e.string().optional()}),Me=e.object({id:e.string().optional(),name:e.string().optional(),description:e.string().optional(),subtask:e.boolean().optional()}),$e=e.object({id:e.string().optional(),key:e.string().optional(),name:e.string().optional()}),He=e.object({summary:e.string().optional(),description:e.unknown().optional(),status:O.optional(),assignee:k.nullable().optional(),reporter:k.optional(),priority:Ke.nullable().optional(),issuetype:Me.optional(),project:$e.optional(),labels:e.array(e.string()).optional(),created:e.string().optional(),updated:e.string().optional(),comment:e.object({total:e.number().optional(),comments:e.array(e.unknown()).optional()}).optional()}),P=e.object({id:e.string(),key:e.string().optional(),self:e.string().optional(),fields:He.optional()}),x=e.object({id:e.string().optional(),self:e.string().optional(),author:k.optional(),body:e.unknown().optional(),renderedBody:e.string().optional(),created:e.string().optional(),updated:e.string().optional()}),F=e.object({id:e.string().optional(),key:e.string().optional(),name:e.string().optional(),description:e.string().optional(),projectTypeKey:e.string().optional(),lead:k.optional(),self:e.string().optional()}),z=e.object({id:e.number().optional(),name:e.string().optional(),state:e.string().optional(),goal:e.string().optional(),startDate:e.string().optional(),endDate:e.string().optional(),completeDate:e.string().optional(),createdDate:e.string().optional(),originBoardId:e.number().optional(),self:e.string().optional()}),Ve=e.object({id:e.number().optional(),name:e.string().optional(),type:e.string().optional(),self:e.string().optional(),location:e.object({projectId:e.number().optional(),projectKey:e.string().optional(),projectName:e.string().optional()}).optional()}),Ze=e.object({id:e.string().optional(),name:e.string().optional(),to:O.optional()}),Qe=e.object({project_key:e.string(),summary:e.string(),issue_type:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional(),labels:e.array(e.string()).optional(),due_date:e.string().optional(),parent:e.string().optional()}),Xe=e.object({id:e.string().optional(),key:e.string().optional(),self:e.string().optional()}),Ye=e.object({issue_id_or_key:e.string(),fields:e.string().optional(),expand:e.string().optional()}),es=P,ss=e.object({issue_id_or_key:e.string(),summary:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional(),labels:e.array(e.string()).optional(),due_date:e.string().optional(),notify_users:e.boolean().optional()}),ts=e.object({success:e.boolean(),issue_key:e.string().optional()}),os=e.object({issue_id_or_key:e.string(),delete_subtasks:e.boolean().optional()}),rs=e.object({success:e.boolean(),message:e.string().optional()}),is=e.object({jql:e.string(),start_at:e.number().optional(),max_results:e.number().optional(),fields:e.string().optional(),expand:e.string().optional()}),ns=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),issues:e.array(P).optional()}),as=e.object({issue_id_or_key:e.string(),account_id:e.string().nullable().optional()}),ps=e.object({success:e.boolean()}),us=e.object({issue_id_or_key:e.string()}),ds=e.object({transitions:e.array(Ze).optional()}),cs=e.object({issue_id_or_key:e.string(),transition_id:e.string(),comment:e.string().optional()}),ls=e.object({success:e.boolean()}),ms=e.object({issues:e.array(e.object({project_key:e.string(),summary:e.string(),issue_type:e.string().optional(),description:e.string().optional(),assignee:e.string().optional(),priority:e.string().optional()}))}),ys=e.object({issues:e.array(e.object({id:e.string().optional(),key:e.string().optional(),self:e.string().optional()})).optional(),errors:e.array(e.unknown()).optional()}),gs=e.object({issue_ids_or_keys:e.array(e.string()),fields:e.array(e.string()).optional(),expand:e.string().optional()}),fs=e.object({issues:e.array(P).optional(),issueErrors:e.array(e.unknown()).optional()}),Is=e.object({issue_id_or_key:e.string(),file_name:e.string(),file_content:e.string().optional(),file_url:e.string().url().optional(),mime_type:e.string().optional()}).refine(o=>o.file_content!==void 0||o.file_url!==void 0,{message:"Either file_content (base64) or file_url must be provided"}),hs=e.array(e.object({id:e.string().optional(),self:e.string().optional(),filename:e.string().optional(),mimeType:e.string().optional(),size:e.number().optional(),content:e.string().optional(),created:e.string().optional()})),ks=e.object({issue_id_or_key:e.string(),account_id:e.string()}),bs=e.object({success:e.boolean()}),js=e.object({issue_id_or_key:e.string(),account_id:e.string()}),_s=e.object({success:e.boolean()}),Es=e.object({link_type:e.string(),inward_issue_key:e.string(),outward_issue_key:e.string(),comment:e.string().optional()}),As=e.object({success:e.boolean()}),Ss=e.object({issue_id_or_key:e.string(),comment:e.string(),visibility_type:e.string().optional(),visibility_value:e.string().optional()}),ws=e.object({id:e.string().optional(),self:e.string().optional(),author:k.optional(),created:e.string().optional()}),Rs=e.object({issue_id_or_key:e.string(),comment_id:e.string()}),Cs=x,Js=e.object({issue_id_or_key:e.string(),start_at:e.number().optional(),max_results:e.number().optional(),order_by:e.string().optional()}),vs=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),comments:e.array(x).optional()}),Gs=e.object({issue_id_or_key:e.string(),comment_id:e.string(),comment:e.string()}),Ts=x,Ls=e.object({issue_id_or_key:e.string(),comment_id:e.string()}),Ps=e.object({success:e.boolean()}),xs=e.object({key:e.string(),name:e.string(),project_type_key:e.string().optional(),description:e.string().optional(),lead_account_id:e.string().optional(),assignee_type:e.string().optional()}),Bs=e.object({id:e.union([e.string(),e.number()]).optional(),key:e.string().optional(),self:e.string().optional()}),Ds=e.object({project_id_or_key:e.string(),expand:e.string().optional()}),Ns=F,Us=e.object({query:e.string().optional(),order_by:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional(),expand:e.string().optional()}),Ws=e.object({total:e.number().optional(),startAt:e.number().optional(),maxResults:e.number().optional(),isLast:e.boolean().optional(),values:e.array(F).optional()}),Os=e.object({project_id_or_key:e.string()}),Fs=e.record(e.string()),zs=e.object({origin_board_id:e.number(),name:e.string(),goal:e.string().optional(),start_date:e.string().optional(),end_date:e.string().optional()}),qs=z,Ks=e.object({board_id:e.number(),state:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),Ms=e.object({maxResults:e.number().optional(),startAt:e.number().optional(),isLast:e.boolean().optional(),values:e.array(z).optional()}),$s=e.object({sprint_id:e.number(),issue_keys:e.array(e.string())}),Hs=e.object({success:e.boolean()}),Vs=e.object({project_key_or_id:e.string().optional(),type:e.string().optional(),name:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),Zs=e.object({maxResults:e.number().optional(),startAt:e.number().optional(),isLast:e.boolean().optional(),total:e.number().optional(),values:e.array(Ve).optional()}),Qs=e.object({}),Xs=k.extend({accountId:e.string(),displayName:e.string().optional(),emailAddress:e.string().optional(),timeZone:e.string().optional(),locale:e.string().optional()}),Ys=e.object({query:e.string().optional(),account_id:e.string().optional(),start_at:e.number().optional(),max_results:e.number().optional()}),et=e.array(k),st=e.object({start_at:e.number().optional(),max_results:e.number().optional()}),tt=e.array(k),ot=e.object({start_at:e.number().optional(),max_results:e.number().optional()}),rt=e.object({total:e.number().optional(),header:e.string().optional(),groups:e.array(e.object({groupId:e.string().optional(),name:e.string().optional(),html:e.string().optional()})).optional()}),it=e.object({name:e.string()}),nt=e.object({groupId:e.string().optional(),name:e.string().optional(),self:e.string().optional()}),p={issuesCreate:Qe,issuesGet:Ye,issuesEdit:ss,issuesDelete:os,issuesSearch:is,issuesAssign:as,issuesGetTransitions:us,issuesTransition:cs,issuesBulkCreate:ms,issuesBulkFetch:gs,issuesAddAttachment:Is,issuesAddWatcher:ks,issuesRemoveWatcher:js,issuesLinkIssues:Es,commentsAdd:Ss,commentsGet:Rs,commentsList:Js,commentsUpdate:Gs,commentsDelete:Ls,projectsCreate:xs,projectsGet:Ds,projectsList:Us,projectsGetRoles:Os,sprintsCreate:zs,sprintsList:Ks,sprintsMoveIssues:$s,sprintsListBoards:Vs,usersGetCurrent:Qs,usersFind:Ys,usersGetAll:st,groupsGetAll:ot,groupsCreate:it},u={issuesCreate:Xe,issuesGet:es,issuesEdit:ts,issuesDelete:rs,issuesSearch:ns,issuesAssign:ps,issuesGetTransitions:ds,issuesTransition:ls,issuesBulkCreate:ys,issuesBulkFetch:fs,issuesAddAttachment:hs,issuesAddWatcher:bs,issuesRemoveWatcher:_s,issuesLinkIssues:As,commentsAdd:ws,commentsGet:Cs,commentsList:vs,commentsUpdate:Ts,commentsDelete:Ps,projectsCreate:Bs,projectsGet:Ns,projectsList:Ws,projectsGetRoles:Fs,sprintsCreate:qs,sprintsList:Ms,sprintsMoveIssues:Hs,sprintsListBoards:Zs,usersGetCurrent:Xs,usersFind:et,usersGetAll:tt,groupsGetAll:rt,groupsCreate:nt};import q from"crypto";import{z as n}from"zod";var b=n.object({accountId:n.string().optional(),displayName:n.string().optional(),emailAddress:n.string().optional()}),K=n.object({id:n.string().optional(),name:n.string().optional(),statusCategory:n.object({key:n.string().optional(),name:n.string().optional()}).optional()}),M=n.object({id:n.string().optional(),name:n.string().optional()}),$=n.object({id:n.string().optional(),name:n.string().optional(),subtask:n.boolean().optional()}),H=n.object({id:n.string().optional(),key:n.string().optional(),name:n.string().optional()}),B=n.object({webhookEvent:n.literal("jira:issue_created"),timestamp:n.number().optional(),issue:n.object({id:n.string().optional(),key:n.string().optional(),self:n.string().optional(),fields:n.object({summary:n.string().optional(),status:K.optional(),assignee:b.nullable().optional(),reporter:b.optional(),priority:M.nullable().optional(),issuetype:$.optional(),project:H.optional(),labels:n.array(n.string()).optional(),created:n.string().optional(),updated:n.string().optional()}).optional()}).optional(),user:b.optional()}),D=n.object({webhookEvent:n.literal("jira:issue_updated"),timestamp:n.number().optional(),issue:n.object({id:n.string().optional(),key:n.string().optional(),self:n.string().optional(),fields:n.object({summary:n.string().optional(),status:K.optional(),assignee:b.nullable().optional(),reporter:b.optional(),priority:M.nullable().optional(),issuetype:$.optional(),project:H.optional(),labels:n.array(n.string()).optional(),updated:n.string().optional()}).optional()}).optional(),user:b.optional(),changelog:n.object({id:n.string().optional(),items:n.array(n.object({field:n.string().optional(),fieldtype:n.string().optional(),from:n.string().nullable().optional(),fromString:n.string().nullable().optional(),to:n.string().nullable().optional(),toString:n.string().nullable().optional()})).optional()}).optional()}),N=n.object({webhookEvent:n.literal("project_created"),timestamp:n.number().optional(),project:n.object({id:n.string().optional(),key:n.string().optional(),name:n.string().optional(),description:n.string().optional(),projectTypeKey:n.string().optional(),lead:b.optional(),self:n.string().optional()}).optional()}),V=B,Z=D,Q=N;function at(o){return typeof o=="string"?JSON.parse(o):o}function j(o){return s=>at(s.body).webhookEvent===o}function _(o,s){let i=o.headers,t=Array.isArray(i["x-hub-signature"])?i["x-hub-signature"][0]:i["x-hub-signature"];if(!t)return s?{valid:!1,error:"Missing x-hub-signature header"}:{valid:!0};let r=o.rawBody??JSON.stringify(o.payload),g=`sha256=${q.createHmac("sha256",s).update(r).digest("hex")}`,f=Buffer.from(t),I=Buffer.from(g);if(f.length!==I.length)return{valid:!1,error:"Signature length mismatch"};let y=q.timingSafeEqual(f,I);return{valid:y,error:y?void 0:"Invalid signature"}}import{logEventFromContext as m}from"corsair/core";import{request as X}from"corsair/http";var J=class extends Error{constructor(i,t){super(i);this.code=t;this.name="JiraAPIError"}},Y={enabled:!0,maxRetries:3,initialRetryDelay:1e3,backoffMultiplier:2,headerNames:{retryAfter:"Retry-After"}};async function d(o,s,i,t={}){let{method:r="GET",body:c,query:g}=t,f={BASE:`${i}/rest/api/3`,VERSION:"3",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",TOKEN:void 0,HEADERS:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Basic ${Buffer.from(s).toString("base64")}`}};return await X(f,{method:r,url:o,body:r==="POST"||r==="PUT"||r==="PATCH"?c:void 0,mediaType:"application/json; charset=utf-8",query:r==="GET"||r==="DELETE"?g:void 0},{rateLimitConfig:Y})}async function ee(o,s,i,t){let r,c=t.mimeType;if(t.url){let y=await fetch(t.url);if(!y.ok)throw new J(`Failed to fetch file from URL: ${y.status} ${y.statusText}`,String(y.status));r=Buffer.from(await y.arrayBuffer()),c??=y.headers.get("content-type")?.split(";")[0]??"application/octet-stream"}else r=Buffer.from(t.content,"base64"),c??="application/octet-stream";let g=new FormData,f=new Blob([new Uint8Array(r)],{type:c});g.append("file",f,t.name);let I=await fetch(`${i}/rest/api/3/issue/${o}/attachments`,{method:"POST",headers:{Authorization:`Basic ${Buffer.from(s).toString("base64")}`,"X-Atlassian-Token":"no-check",Accept:"application/json"},body:g});if(!I.ok){let y=await I.text();throw new J(`Failed to upload attachment: ${I.status} ${y}`,String(I.status))}return I.json()}async function A(o,s,i,t={}){let{method:r="GET",body:c,query:g}=t,f={BASE:`${i}/rest/agile/1.0`,VERSION:"1.0",WITH_CREDENTIALS:!1,CREDENTIALS:"omit",TOKEN:void 0,HEADERS:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Basic ${Buffer.from(s).toString("base64")}`}};return await X(f,{method:r,url:o,body:r==="POST"||r==="PUT"||r==="PATCH"?c:void 0,mediaType:"application/json; charset=utf-8",query:r==="GET"||r==="DELETE"?g:void 0},{rateLimitConfig:Y})}var se=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue",o.key,i,{method:"POST",body:{fields:{project:{key:s.project_key},summary:s.summary,issuetype:{name:s.issue_type??"Task"},...s.description&&{description:h(s.description)},...s.assignee&&{assignee:{accountId:s.assignee}},...s.priority&&{priority:{name:s.priority}},...s.labels&&{labels:s.labels},...s.due_date&&{duedate:s.due_date},...s.parent&&{parent:{key:s.parent}}}}});if(t.id&&t.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.id,{id:t.id,key:t.key,summary:s.summary,issueType:s.issue_type??"Task",projectKey:s.project_key,createdAt:new Date})}catch(r){console.warn("Failed to save issue to database:",r)}return await m(o,"jira.issues.create",{...s},"completed"),t},te=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`issue/${s.issue_id_or_key}`,o.key,i,{method:"GET",query:{fields:s.fields,expand:s.expand}});if(t.id&&t.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.id,{id:t.id,key:t.key,summary:t.fields?.summary,status:t.fields?.status?.name,assigneeAccountId:t.fields?.assignee?.accountId,assigneeDisplayName:t.fields?.assignee?.displayName,reporterAccountId:t.fields?.reporter?.accountId,reporterDisplayName:t.fields?.reporter?.displayName,priority:t.fields?.priority?.name??void 0,issueType:t.fields?.issuetype?.name,projectKey:t.fields?.project?.key,projectId:t.fields?.project?.id,labels:t.fields?.labels,created:t.fields?.created,updated:t.fields?.updated,createdAt:new Date})}catch(r){console.warn("Failed to save issue to database:",r)}return await m(o,"jira.issues.get",{...s},"completed"),t},oe=async(o,s)=>{let i=await o.keys.get_cloud_url()??"";return await d(`issue/${s.issue_id_or_key}`,o.key,i,{method:"PUT",body:{fields:{...s.summary!==void 0&&{summary:s.summary},...s.description!==void 0&&{description:h(s.description)},...s.assignee!==void 0&&{assignee:s.assignee?{accountId:s.assignee}:null},...s.priority!==void 0&&{priority:{name:s.priority}},...s.labels!==void 0&&{labels:s.labels},...s.due_date!==void 0&&{duedate:s.due_date}},update:{},notifyUsers:s.notify_users??!0}}),await m(o,"jira.issues.edit",{...s},"completed"),{success:!0,issue_key:s.issue_id_or_key}},re=async(o,s)=>(await d(`issue/${s.issue_id_or_key}`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE",query:{deleteSubtasks:s.delete_subtasks?"true":"false"}}),await m(o,"jira.issues.delete",{...s},"completed"),{success:!0,message:`Issue ${s.issue_id_or_key} deleted`}),ie=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("search/jql",o.key,i,{method:"GET",query:{jql:s.jql,startAt:s.start_at,maxResults:s.max_results,fields:s.fields,expand:s.expand}});if(t.issues&&o.db.issues){for(let r of t.issues)if(!(!r.id||!r.key))try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:r.fields?.summary,status:r.fields?.status?.name,assigneeAccountId:r.fields?.assignee?.accountId,assigneeDisplayName:r.fields?.assignee?.displayName,priority:r.fields?.priority?.name??void 0,issueType:r.fields?.issuetype?.name,projectKey:r.fields?.project?.key,createdAt:new Date})}catch(c){console.warn("Failed to save issue to database:",c)}}return await m(o,"jira.issues.search",{...s},"completed"),t},ne=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/assignee`,o.key,await o.keys.get_cloud_url()??"",{method:"PUT",body:{accountId:s.account_id??null}}),await m(o,"jira.issues.assign",{...s},"completed"),{success:!0}),ae=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/transitions`,o.key,await o.keys.get_cloud_url()??"",{method:"GET"});return await m(o,"jira.issues.getTransitions",{...s},"completed"),i},pe=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/transitions`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{transition:{id:s.transition_id},...s.comment&&{update:{comment:[{add:{body:h(s.comment)}}]}}}}),await m(o,"jira.issues.transition",{...s},"completed"),{success:!0}),ue=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue/bulk",o.key,i,{method:"POST",body:{issueUpdates:s.issues.map(r=>({fields:{project:{key:r.project_key},summary:r.summary,issuetype:{name:r.issue_type??"Task"},...r.assignee&&{assignee:{accountId:r.assignee}},...r.priority&&{priority:{name:r.priority}},...r.description&&{description:h(r.description)}}}))}});if(t.issues&&o.db.issues)for(let r of t.issues){if(!r.id||!r.key)continue;let c=s.issues.find((g,f)=>t.issues?.[f]?.key===r.key);try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:c?.summary,issueType:c?.issue_type??"Task",projectKey:c?.project_key,createdAt:new Date})}catch(g){console.warn("Failed to save bulk issue to database:",g)}}return await m(o,"jira.issues.bulkCreate",{count:s.issues.length},"completed"),t},de=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("issue/bulkfetch",o.key,i,{method:"POST",body:{issueIdsOrKeys:s.issue_ids_or_keys,...s.fields&&{fields:s.fields},...s.expand&&{expand:[s.expand]}}});if(t.issues&&o.db.issues){for(let r of t.issues)if(!(!r.id||!r.key))try{await o.db.issues.upsertByEntityId(r.id,{id:r.id,key:r.key,summary:r.fields?.summary,status:r.fields?.status?.name,assigneeAccountId:r.fields?.assignee?.accountId,assigneeDisplayName:r.fields?.assignee?.displayName,priority:r.fields?.priority?.name??void 0,issueType:r.fields?.issuetype?.name,projectKey:r.fields?.project?.key,createdAt:new Date})}catch(c){console.warn("Failed to save issue to database:",c)}}return await m(o,"jira.issues.bulkFetch",{count:s.issue_ids_or_keys.length},"completed"),t},ce=async(o,s)=>{let i=await ee(s.issue_id_or_key,o.key,await o.keys.get_cloud_url()??"",{name:s.file_name,mimeType:s.mime_type,...s.file_url?{url:s.file_url}:{content:s.file_content}});return await m(o,"jira.issues.addAttachment",{...s},"completed"),i},le=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/watchers`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:s.account_id}),await m(o,"jira.issues.addWatcher",{...s},"completed"),{success:!0}),me=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/watchers`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE",query:{accountId:s.account_id}}),await m(o,"jira.issues.removeWatcher",{...s},"completed"),{success:!0}),ye=async(o,s)=>(await d("issueLink",o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{type:{name:s.link_type},inwardIssue:{key:s.inward_issue_key},outwardIssue:{key:s.outward_issue_key},...s.comment&&{comment:{body:h(s.comment)}}}}),await m(o,"jira.issues.linkIssues",{...s},"completed"),{success:!0});import{logEventFromContext as S}from"corsair/core";var ge=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{body:h(s.comment),...s.visibility_type&&s.visibility_value&&{visibility:{type:s.visibility_type,value:s.visibility_value}}}});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,body:s.comment,authorAccountId:i.author?.accountId,authorDisplayName:i.author?.displayName,created:i.created,createdAt:new Date})}catch(t){console.warn("Failed to save comment to database:",t)}return await S(o,"jira.comments.add",{...s},"completed"),i},fe=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"GET"});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,authorAccountId:i.author?.accountId,authorDisplayName:i.author?.displayName,created:i.created,updated:i.updated,createdAt:new Date})}catch(t){console.warn("Failed to save comment to database:",t)}return await S(o,"jira.comments.get",{...s},"completed"),i},Ie=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment`,o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{startAt:s.start_at,maxResults:s.max_results,orderBy:s.order_by}});if(i.comments&&o.db.comments){for(let t of i.comments)if(t.id)try{await o.db.comments.upsertByEntityId(t.id,{id:t.id,issueKey:s.issue_id_or_key,authorAccountId:t.author?.accountId,authorDisplayName:t.author?.displayName,created:t.created,updated:t.updated,createdAt:new Date})}catch(r){console.warn("Failed to save comment to database:",r)}}return await S(o,"jira.comments.list",{...s},"completed"),i},he=async(o,s)=>{let i=await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"PUT",body:{body:h(s.comment)}});if(i.id&&o.db.comments)try{await o.db.comments.upsertByEntityId(i.id,{id:i.id,issueKey:s.issue_id_or_key,body:s.comment,updated:i.updated})}catch(t){console.warn("Failed to update comment in database:",t)}return await S(o,"jira.comments.update",{...s},"completed"),i},ke=async(o,s)=>(await d(`issue/${s.issue_id_or_key}/comment/${s.comment_id}`,o.key,await o.keys.get_cloud_url()??"",{method:"DELETE"}),await S(o,"jira.comments.delete",{...s},"completed"),{success:!0});import{logEventFromContext as v}from"corsair/core";var be=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("project",o.key,i,{method:"POST",body:{key:s.key,name:s.name,projectTypeKey:s.project_type_key??"software",assigneeType:s.assignee_type??"UNASSIGNED",...s.description&&{description:s.description},...s.lead_account_id&&{leadAccountId:s.lead_account_id}}});if(t.id&&t.key&&o.db.projects)try{let r=String(t.id);await o.db.projects.upsertByEntityId(r,{id:r,key:t.key,name:s.name,...s.description&&{description:s.description},projectTypeKey:s.project_type_key??"software",...s.lead_account_id&&{leadAccountId:s.lead_account_id},createdAt:new Date})}catch(r){console.warn("Failed to save project to database:",r)}return await v(o,"jira.projects.create",{...s},"completed"),t},je=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`project/${s.project_id_or_key}`,o.key,i,{method:"GET",query:{...s.expand&&{expand:s.expand}}});if(t.id&&t.key&&o.db.projects)try{await o.db.projects.upsertByEntityId(t.id,{id:t.id,key:t.key,...t.name&&{name:t.name},...t.description&&{description:t.description},...t.projectTypeKey&&{projectTypeKey:t.projectTypeKey},...t.lead?.accountId&&{leadAccountId:t.lead.accountId},...t.lead?.displayName&&{leadDisplayName:t.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save project to database:",r)}return await v(o,"jira.projects.get",{...s},"completed"),t},_e=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d("project/search",o.key,i,{method:"GET",query:{...s.query&&{query:s.query},...s.order_by&&{orderBy:s.order_by},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results},...s.expand&&{expand:s.expand}}});if(t.values&&o.db.projects){for(let r of t.values)if(!(!r.id||!r.key))try{await o.db.projects.upsertByEntityId(r.id,{id:r.id,key:r.key,...r.name&&{name:r.name},...r.description&&{description:r.description},...r.projectTypeKey&&{projectTypeKey:r.projectTypeKey},...r.lead?.accountId&&{leadAccountId:r.lead.accountId},...r.lead?.displayName&&{leadDisplayName:r.lead.displayName},createdAt:new Date})}catch(c){console.warn("Failed to save project to database:",c)}}return await v(o,"jira.projects.list",{...s},"completed"),t},Ee=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await d(`project/${s.project_id_or_key}/role`,o.key,i,{method:"GET"});return await v(o,"jira.projects.getRoles",{...s},"completed"),t};import{logEventFromContext as G}from"corsair/core";var Ae=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A("sprint",o.key,i,{method:"POST",body:{originBoardId:s.origin_board_id,name:s.name,...s.goal&&{goal:s.goal},...s.start_date&&{startDate:s.start_date},...s.end_date&&{endDate:s.end_date}}});if(t.id&&o.db.sprints)try{await o.db.sprints.upsertByEntityId(String(t.id),{id:t.id,...t.name&&{name:t.name},...t.state&&{state:t.state},...t.goal&&{goal:t.goal},...t.startDate&&{startDate:t.startDate},...t.endDate&&{endDate:t.endDate},...t.originBoardId&&{originBoardId:t.originBoardId},createdAt:new Date})}catch(r){console.warn("Failed to save sprint to database:",r)}return await G(o,"jira.sprints.create",{...s},"completed"),t},Se=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A(`board/${s.board_id}/sprint`,o.key,i,{method:"GET",query:{...s.state&&{state:s.state},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(t.values&&o.db.sprints){for(let r of t.values)if(r.id)try{await o.db.sprints.upsertByEntityId(String(r.id),{id:r.id,...r.name&&{name:r.name},...r.state&&{state:r.state},...r.goal&&{goal:r.goal},...r.startDate&&{startDate:r.startDate},...r.endDate&&{endDate:r.endDate},...r.originBoardId&&{originBoardId:r.originBoardId},createdAt:new Date})}catch(c){console.warn("Failed to save sprint to database:",c)}}return await G(o,"jira.sprints.list",{...s},"completed"),t},we=async(o,s)=>(await A(`sprint/${s.sprint_id}/issue`,o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{issues:s.issue_keys}}),await G(o,"jira.sprints.moveIssues",{...s},"completed"),{success:!0}),Re=async(o,s)=>{let i=await o.keys.get_cloud_url()??"",t=await A("board",o.key,i,{method:"GET",query:{...s.project_key_or_id&&{projectKeyOrId:s.project_key_or_id},...s.type&&{type:s.type},...s.name&&{name:s.name},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(t.values&&o.db.boards){for(let r of t.values)if(r.id)try{await o.db.boards.upsertByEntityId(String(r.id),{id:r.id,...r.name&&{name:r.name},...r.type&&{type:r.type},...r.location?.projectId&&{projectId:r.location.projectId},...r.location?.projectKey&&{projectKey:r.location.projectKey},...r.location?.projectName&&{projectName:r.location.projectName},createdAt:new Date})}catch(c){console.warn("Failed to save board to database:",c)}}return await G(o,"jira.sprints.listBoards",{...s},"completed"),t};import{logEventFromContext as w}from"corsair/core";var Ce=async(o,s)=>{let i=await d("myself",o.key,await o.keys.get_cloud_url()??"",{method:"GET"});if(i.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(i.accountId,{accountId:i.accountId,...i.displayName&&{displayName:i.displayName},...i.emailAddress&&{emailAddress:i.emailAddress},...i.active!==void 0&&{active:i.active},...i.timeZone&&{timeZone:i.timeZone},...i.locale&&{locale:i.locale},createdAt:new Date})}catch(t){console.warn("Failed to save current user to database:",t)}return await w(o,"jira.users.getCurrent",{},"completed"),i},Je=async(o,s)=>{let i=await d("users/search",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.query&&{query:s.query},...s.account_id&&{accountId:s.account_id},...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(o.db.users){for(let t of i)if(t.accountId)try{await o.db.users.upsertByEntityId(t.accountId,{accountId:t.accountId,...t.displayName&&{displayName:t.displayName},...t.emailAddress&&{emailAddress:t.emailAddress},...t.active!==void 0&&{active:t.active},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}}return await w(o,"jira.users.find",{...s},"completed"),i},ve=async(o,s)=>{let i=await d("users",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});if(o.db.users){for(let t of i)if(t.accountId)try{await o.db.users.upsertByEntityId(t.accountId,{accountId:t.accountId,...t.displayName&&{displayName:t.displayName},...t.emailAddress&&{emailAddress:t.emailAddress},...t.active!==void 0&&{active:t.active},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}}return await w(o,"jira.users.getAll",{...s},"completed"),i},Ge=async(o,s)=>{let i=await d("groups/picker",o.key,await o.keys.get_cloud_url()??"",{method:"GET",query:{...s.start_at!==void 0&&{startAt:s.start_at},...s.max_results!==void 0&&{maxResults:s.max_results}}});return await w(o,"jira.groups.getAll",{...s},"completed"),i},Te=async(o,s)=>{let i=await d("group",o.key,await o.keys.get_cloud_url()??"",{method:"POST",body:{name:s.name}});return await w(o,"jira.groups.create",{...s},"completed"),i};var l={create:se,get:te,edit:oe,delete:re,search:ie,assign:ne,getTransitions:ae,transition:pe,bulkCreate:ue,bulkFetch:de,addAttachment:ce,addWatcher:le,removeWatcher:me,linkIssues:ye},E={add:ge,get:fe,list:Ie,update:he,delete:ke},R={create:be,get:je,list:_e,getRoles:Ee},C={create:Ae,list:Se,moveIssues:we,listBoards:Re},T={getCurrent:Ce,find:Je,getAll:ve},U={getAll:Ge,create:Te};import{z as a}from"zod";var Le=a.object({id:a.string(),key:a.string(),summary:a.string().optional(),description:a.string().optional(),status:a.string().optional(),assigneeAccountId:a.string().optional(),assigneeDisplayName:a.string().optional(),reporterAccountId:a.string().optional(),reporterDisplayName:a.string().optional(),priority:a.string().optional(),issueType:a.string().optional(),projectKey:a.string().optional(),projectId:a.string().optional(),labels:a.array(a.string()).optional(),created:a.string().optional(),updated:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Pe=a.object({id:a.string(),key:a.string(),name:a.string().optional(),description:a.string().optional(),projectTypeKey:a.string().optional(),leadAccountId:a.string().optional(),leadDisplayName:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),xe=a.object({id:a.string(),issueKey:a.string(),body:a.string().optional(),authorAccountId:a.string().optional(),authorDisplayName:a.string().optional(),created:a.string().optional(),updated:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Be=a.object({id:a.number(),name:a.string().optional(),state:a.string().optional(),goal:a.string().optional(),startDate:a.string().optional(),endDate:a.string().optional(),originBoardId:a.number().optional(),createdAt:a.coerce.date().nullable().optional()}),De=a.object({accountId:a.string(),displayName:a.string().optional(),emailAddress:a.string().optional(),active:a.boolean().optional(),timeZone:a.string().optional(),locale:a.string().optional(),createdAt:a.coerce.date().nullable().optional()}),Ne=a.object({id:a.number(),name:a.string().optional(),type:a.string().optional(),projectId:a.number().optional(),projectKey:a.string().optional(),projectName:a.string().optional(),createdAt:a.coerce.date().nullable().optional()});var Ue={version:"1.0.0",entities:{issues:Le,projects:Pe,comments:xe,sprints:Be,users:De,boards:Ne}};import{logEventFromContext as mt}from"corsair/core";var We={match:j("jira:issue_created"),handler:async(o,s)=>{let i=_(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.issue?.id&&t.issue?.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.issue.id,{id:t.issue.id,key:t.issue.key,...t.issue.fields?.summary&&{summary:t.issue.fields.summary},...t.issue.fields?.status?.name&&{status:t.issue.fields.status.name},...t.issue.fields?.assignee?.accountId&&{assigneeAccountId:t.issue.fields.assignee.accountId},...t.issue.fields?.assignee?.displayName&&{assigneeDisplayName:t.issue.fields.assignee.displayName},...t.issue.fields?.reporter?.accountId&&{reporterAccountId:t.issue.fields.reporter.accountId},...t.issue.fields?.reporter?.displayName&&{reporterDisplayName:t.issue.fields.reporter.displayName},...t.issue.fields?.priority?.name&&{priority:t.issue.fields.priority.name},...t.issue.fields?.issuetype?.name&&{issueType:t.issue.fields.issuetype.name},...t.issue.fields?.project?.key&&{projectKey:t.issue.fields.project.key},...t.issue.fields?.project?.id&&{projectId:t.issue.fields.project.id},...t.issue.fields?.labels&&{labels:t.issue.fields.labels},...t.issue.fields?.created&&{created:t.issue.fields.created},...t.issue.fields?.updated&&{updated:t.issue.fields.updated},createdAt:new Date})}catch(r){console.warn("Failed to save new issue to database:",r)}if(t.user?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.user.accountId,{accountId:t.user.accountId,...t.user.displayName&&{displayName:t.user.displayName},...t.user.emailAddress&&{emailAddress:t.user.emailAddress},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}return await mt(o,"jira.webhook.newIssue",{issueKey:t.issue?.key},"completed"),{success:!0,data:t}}};import{logEventFromContext as yt}from"corsair/core";var Oe={match:j("jira:issue_updated"),handler:async(o,s)=>{let i=_(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.issue?.id&&t.issue?.key&&o.db.issues)try{await o.db.issues.upsertByEntityId(t.issue.id,{id:t.issue.id,key:t.issue.key,...t.issue.fields?.summary&&{summary:t.issue.fields.summary},...t.issue.fields?.status?.name&&{status:t.issue.fields.status.name},...t.issue.fields?.assignee?.accountId&&{assigneeAccountId:t.issue.fields.assignee.accountId},...t.issue.fields?.assignee?.displayName&&{assigneeDisplayName:t.issue.fields.assignee.displayName},...t.issue.fields?.priority?.name&&{priority:t.issue.fields.priority.name},...t.issue.fields?.issuetype?.name&&{issueType:t.issue.fields.issuetype.name},...t.issue.fields?.project?.key&&{projectKey:t.issue.fields.project.key},...t.issue.fields?.project?.id&&{projectId:t.issue.fields.project.id},...t.issue.fields?.labels&&{labels:t.issue.fields.labels},...t.issue.fields?.updated&&{updated:t.issue.fields.updated}})}catch(r){console.warn("Failed to update issue in database:",r)}if(t.user?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.user.accountId,{accountId:t.user.accountId,...t.user.displayName&&{displayName:t.user.displayName},...t.user.emailAddress&&{emailAddress:t.user.emailAddress},createdAt:new Date})}catch(r){console.warn("Failed to save user to database:",r)}return await yt(o,"jira.webhook.updatedIssue",{issueKey:t.issue?.key,changelog:t.changelog},"completed"),{success:!0,data:t}}};import{logEventFromContext as gt}from"corsair/core";var Fe={match:j("project_created"),handler:async(o,s)=>{let i=_(s,o.key);if(!i.valid)return{success:!1,statusCode:401,error:i.error??"Signature verification failed"};let t=s.payload;if(t.project?.id&&t.project?.key&&o.db.projects)try{await o.db.projects.upsertByEntityId(t.project.id,{id:t.project.id,key:t.project.key,...t.project.name&&{name:t.project.name},...t.project.description&&{description:t.project.description},...t.project.projectTypeKey&&{projectTypeKey:t.project.projectTypeKey},...t.project.lead?.accountId&&{leadAccountId:t.project.lead.accountId},...t.project.lead?.displayName&&{leadDisplayName:t.project.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save new project to database:",r)}if(t.project?.lead?.accountId&&o.db.users)try{await o.db.users.upsertByEntityId(t.project.lead.accountId,{accountId:t.project.lead.accountId,...t.project.lead.displayName&&{displayName:t.project.lead.displayName},createdAt:new Date})}catch(r){console.warn("Failed to save project lead to database:",r)}return await gt(o,"jira.webhook.newProject",{projectKey:t.project?.key},"completed"),{success:!0,data:t}}};var W={newIssue:We,updatedIssue:Oe},ze={newProject:Fe};import{ApiError as L}from"corsair/http";var qe={RATE_LIMIT_ERROR:{match:(o,s)=>{if(o instanceof L&&o.status===429)return!0;let i=o.message.toLowerCase();return i.includes("rate_limit")||i.includes("ratelimited")||o.message.includes("429")},handler:async(o,s)=>{let i;return o instanceof L&&o.retryAfter!==void 0&&(i=o.retryAfter),{maxRetries:5,headersRetryAfterMs:i}}},AUTH_ERROR:{match:(o,s)=>{if(o instanceof L&&o.status===401)return!0;let i=o.message.toLowerCase();return i.includes("unauthorized")||i.includes("authentication failed")||i.includes("invalid_auth")},handler:async(o,s)=>(console.log(`[JIRA:${s.operation}] Authentication failed - check your API key (email:apiToken format)`),{maxRetries:0})},PERMISSION_ERROR:{match:(o,s)=>{if(o instanceof L&&o.status===403)return!0;let i=o.message.toLowerCase();return i.includes("permission_denied")||i.includes("forbidden")||i.includes("access_denied")},handler:async(o,s)=>(console.warn(`[JIRA:${s.operation}] Permission denied: ${o.message}`),{maxRetries:0})},DEFAULT:{match:(o,s)=>!0,handler:async(o,s)=>(console.error(`[JIRA:${s.operation}] Unhandled error: ${o.message}`),{maxRetries:0})}};var ft={api_key:{account:["cloud_url"]}},It={issues:{create:l.create,get:l.get,edit:l.edit,delete:l.delete,search:l.search,assign:l.assign,getTransitions:l.getTransitions,transition:l.transition,bulkCreate:l.bulkCreate,bulkFetch:l.bulkFetch,addAttachment:l.addAttachment,addWatcher:l.addWatcher,removeWatcher:l.removeWatcher,linkIssues:l.linkIssues},comments:{add:E.add,get:E.get,list:E.list,update:E.update,delete:E.delete},projects:{create:R.create,get:R.get,list:R.list,getRoles:R.getRoles},sprints:{create:C.create,list:C.list,moveIssues:C.moveIssues,listBoards:C.listBoards},users:{getCurrent:T.getCurrent,find:T.find,getAll:T.getAll},groups:{getAll:U.getAll,create:U.create}},ht={issues:{newIssue:W.newIssue,updatedIssue:W.updatedIssue},projects:{newProject:ze.newProject}},kt={"issues.create":{input:p.issuesCreate,output:u.issuesCreate},"issues.get":{input:p.issuesGet,output:u.issuesGet},"issues.edit":{input:p.issuesEdit,output:u.issuesEdit},"issues.delete":{input:p.issuesDelete,output:u.issuesDelete},"issues.search":{input:p.issuesSearch,output:u.issuesSearch},"issues.assign":{input:p.issuesAssign,output:u.issuesAssign},"issues.getTransitions":{input:p.issuesGetTransitions,output:u.issuesGetTransitions},"issues.transition":{input:p.issuesTransition,output:u.issuesTransition},"issues.bulkCreate":{input:p.issuesBulkCreate,output:u.issuesBulkCreate},"issues.bulkFetch":{input:p.issuesBulkFetch,output:u.issuesBulkFetch},"issues.addAttachment":{input:p.issuesAddAttachment,output:u.issuesAddAttachment},"issues.addWatcher":{input:p.issuesAddWatcher,output:u.issuesAddWatcher},"issues.removeWatcher":{input:p.issuesRemoveWatcher,output:u.issuesRemoveWatcher},"issues.linkIssues":{input:p.issuesLinkIssues,output:u.issuesLinkIssues},"comments.add":{input:p.commentsAdd,output:u.commentsAdd},"comments.get":{input:p.commentsGet,output:u.commentsGet},"comments.list":{input:p.commentsList,output:u.commentsList},"comments.update":{input:p.commentsUpdate,output:u.commentsUpdate},"comments.delete":{input:p.commentsDelete,output:u.commentsDelete},"projects.create":{input:p.projectsCreate,output:u.projectsCreate},"projects.get":{input:p.projectsGet,output:u.projectsGet},"projects.list":{input:p.projectsList,output:u.projectsList},"projects.getRoles":{input:p.projectsGetRoles,output:u.projectsGetRoles},"sprints.create":{input:p.sprintsCreate,output:u.sprintsCreate},"sprints.list":{input:p.sprintsList,output:u.sprintsList},"sprints.moveIssues":{input:p.sprintsMoveIssues,output:u.sprintsMoveIssues},"sprints.listBoards":{input:p.sprintsListBoards,output:u.sprintsListBoards},"users.getCurrent":{input:p.usersGetCurrent,output:u.usersGetCurrent},"users.find":{input:p.usersFind,output:u.usersFind},"users.getAll":{input:p.usersGetAll,output:u.usersGetAll},"groups.getAll":{input:p.groupsGetAll,output:u.groupsGetAll},"groups.create":{input:p.groupsCreate,output:u.groupsCreate}},bt="api_key",jt={"issues.create":{riskLevel:"write",description:"Create a new Jira issue"},"issues.get":{riskLevel:"read",description:"Get a Jira issue by ID or key"},"issues.edit":{riskLevel:"write",description:"Edit an existing Jira issue"},"issues.delete":{riskLevel:"destructive",description:"Delete a Jira issue [DESTRUCTIVE]"},"issues.search":{riskLevel:"read",description:"Search issues using JQL"},"issues.assign":{riskLevel:"write",description:"Assign a Jira issue to a user"},"issues.getTransitions":{riskLevel:"read",description:"Get available transitions for a Jira issue"},"issues.transition":{riskLevel:"write",description:"Transition a Jira issue to a new status"},"issues.bulkCreate":{riskLevel:"write",description:"Bulk create multiple Jira issues"},"issues.bulkFetch":{riskLevel:"read",description:"Bulk fetch multiple Jira issues by ID or key"},"issues.addAttachment":{riskLevel:"write",description:"Add an attachment to a Jira issue"},"issues.addWatcher":{riskLevel:"write",description:"Add a watcher to a Jira issue"},"issues.removeWatcher":{riskLevel:"write",description:"Remove a watcher from a Jira issue"},"issues.linkIssues":{riskLevel:"write",description:"Link two Jira issues together"},"comments.add":{riskLevel:"write",description:"Add a comment to a Jira issue"},"comments.get":{riskLevel:"read",description:"Get a specific comment on a Jira issue"},"comments.list":{riskLevel:"read",description:"List all comments on a Jira issue"},"comments.update":{riskLevel:"write",description:"Update a comment on a Jira issue"},"comments.delete":{riskLevel:"destructive",description:"Delete a comment from a Jira issue [DESTRUCTIVE]"},"projects.create":{riskLevel:"write",description:"Create a new Jira project"},"projects.get":{riskLevel:"read",description:"Get a Jira project by ID or key"},"projects.list":{riskLevel:"read",description:"List Jira projects"},"projects.getRoles":{riskLevel:"read",description:"Get project roles for a Jira project"},"sprints.create":{riskLevel:"write",description:"Create a new sprint on a Jira board"},"sprints.list":{riskLevel:"read",description:"List sprints for a Jira board"},"sprints.moveIssues":{riskLevel:"write",description:"Move issues to a sprint"},"sprints.listBoards":{riskLevel:"read",description:"List Jira boards"},"users.getCurrent":{riskLevel:"read",description:"Get the currently authenticated Jira user"},"users.find":{riskLevel:"read",description:"Search for Jira users"},"users.getAll":{riskLevel:"read",description:"Get all Jira users"},"groups.getAll":{riskLevel:"read",description:"Get all Jira groups"},"groups.create":{riskLevel:"write",description:"Create a new Jira group"}},_t={"issues.newIssue":{description:"Triggered when a new issue is created in Jira",payload:V,response:B},"issues.updatedIssue":{description:"Triggered when an issue is updated in Jira",payload:Z,response:D},"projects.newProject":{description:"Triggered when a new project is created in Jira",payload:Q,response:N}};function Io(o={}){let s={...o,authType:o.authType??bt};return{id:"jira",schema:Ue,options:s,hooks:s.hooks,webhookHooks:s.webhookHooks,endpoints:It,webhooks:ht,authConfig:ft,endpointMeta:jt,endpointSchemas:kt,webhookSchemas:_t,pluginWebhookMatcher:i=>"x-atlassian-webhook-identifier"in i.headers,errorHandlers:{...qe,...s.errorHandlers},keyBuilder:async(i,t)=>{if(t==="webhook"&&s.webhookSecret)return s.webhookSecret;if(t==="webhook"){let r=await i.keys.get_webhook_signature();return r||""}if(t==="endpoint"&&s.key)return s.key;if(t==="endpoint"&&i.authType==="api_key"){let r=await i.keys.get_api_key();return r||""}return""}}}export{j as createJiraMatch,Io as jira,ft as jiraAuthConfig,kt as jiraEndpointSchemas};
@@ -0,0 +1,197 @@
1
+ import { z } from 'zod';
2
+ export declare const JiraIssue: z.ZodObject<{
3
+ id: z.ZodString;
4
+ key: z.ZodString;
5
+ summary: z.ZodOptional<z.ZodString>;
6
+ description: z.ZodOptional<z.ZodString>;
7
+ status: z.ZodOptional<z.ZodString>;
8
+ assigneeAccountId: z.ZodOptional<z.ZodString>;
9
+ assigneeDisplayName: z.ZodOptional<z.ZodString>;
10
+ reporterAccountId: z.ZodOptional<z.ZodString>;
11
+ reporterDisplayName: z.ZodOptional<z.ZodString>;
12
+ priority: z.ZodOptional<z.ZodString>;
13
+ issueType: z.ZodOptional<z.ZodString>;
14
+ projectKey: z.ZodOptional<z.ZodString>;
15
+ projectId: z.ZodOptional<z.ZodString>;
16
+ labels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
17
+ created: z.ZodOptional<z.ZodString>;
18
+ updated: z.ZodOptional<z.ZodString>;
19
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ key: string;
22
+ id: string;
23
+ priority?: string | undefined;
24
+ status?: string | undefined;
25
+ description?: string | undefined;
26
+ summary?: string | undefined;
27
+ labels?: string[] | undefined;
28
+ created?: string | undefined;
29
+ updated?: string | undefined;
30
+ projectId?: string | undefined;
31
+ projectKey?: string | undefined;
32
+ assigneeAccountId?: string | undefined;
33
+ assigneeDisplayName?: string | undefined;
34
+ reporterAccountId?: string | undefined;
35
+ reporterDisplayName?: string | undefined;
36
+ issueType?: string | undefined;
37
+ createdAt?: Date | null | undefined;
38
+ }, {
39
+ key: string;
40
+ id: string;
41
+ priority?: string | undefined;
42
+ status?: string | undefined;
43
+ description?: string | undefined;
44
+ summary?: string | undefined;
45
+ labels?: string[] | undefined;
46
+ created?: string | undefined;
47
+ updated?: string | undefined;
48
+ projectId?: string | undefined;
49
+ projectKey?: string | undefined;
50
+ assigneeAccountId?: string | undefined;
51
+ assigneeDisplayName?: string | undefined;
52
+ reporterAccountId?: string | undefined;
53
+ reporterDisplayName?: string | undefined;
54
+ issueType?: string | undefined;
55
+ createdAt?: Date | null | undefined;
56
+ }>;
57
+ export declare const JiraProject: z.ZodObject<{
58
+ id: z.ZodString;
59
+ key: z.ZodString;
60
+ name: z.ZodOptional<z.ZodString>;
61
+ description: z.ZodOptional<z.ZodString>;
62
+ projectTypeKey: z.ZodOptional<z.ZodString>;
63
+ leadAccountId: z.ZodOptional<z.ZodString>;
64
+ leadDisplayName: z.ZodOptional<z.ZodString>;
65
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
66
+ }, "strip", z.ZodTypeAny, {
67
+ key: string;
68
+ id: string;
69
+ name?: string | undefined;
70
+ description?: string | undefined;
71
+ projectTypeKey?: string | undefined;
72
+ createdAt?: Date | null | undefined;
73
+ leadAccountId?: string | undefined;
74
+ leadDisplayName?: string | undefined;
75
+ }, {
76
+ key: string;
77
+ id: string;
78
+ name?: string | undefined;
79
+ description?: string | undefined;
80
+ projectTypeKey?: string | undefined;
81
+ createdAt?: Date | null | undefined;
82
+ leadAccountId?: string | undefined;
83
+ leadDisplayName?: string | undefined;
84
+ }>;
85
+ export declare const JiraComment: z.ZodObject<{
86
+ id: z.ZodString;
87
+ issueKey: z.ZodString;
88
+ body: z.ZodOptional<z.ZodString>;
89
+ authorAccountId: z.ZodOptional<z.ZodString>;
90
+ authorDisplayName: z.ZodOptional<z.ZodString>;
91
+ created: z.ZodOptional<z.ZodString>;
92
+ updated: z.ZodOptional<z.ZodString>;
93
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
94
+ }, "strip", z.ZodTypeAny, {
95
+ id: string;
96
+ issueKey: string;
97
+ body?: string | undefined;
98
+ created?: string | undefined;
99
+ updated?: string | undefined;
100
+ createdAt?: Date | null | undefined;
101
+ authorAccountId?: string | undefined;
102
+ authorDisplayName?: string | undefined;
103
+ }, {
104
+ id: string;
105
+ issueKey: string;
106
+ body?: string | undefined;
107
+ created?: string | undefined;
108
+ updated?: string | undefined;
109
+ createdAt?: Date | null | undefined;
110
+ authorAccountId?: string | undefined;
111
+ authorDisplayName?: string | undefined;
112
+ }>;
113
+ export declare const JiraSprint: z.ZodObject<{
114
+ id: z.ZodNumber;
115
+ name: z.ZodOptional<z.ZodString>;
116
+ state: z.ZodOptional<z.ZodString>;
117
+ goal: z.ZodOptional<z.ZodString>;
118
+ startDate: z.ZodOptional<z.ZodString>;
119
+ endDate: z.ZodOptional<z.ZodString>;
120
+ originBoardId: z.ZodOptional<z.ZodNumber>;
121
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
122
+ }, "strip", z.ZodTypeAny, {
123
+ id: number;
124
+ name?: string | undefined;
125
+ state?: string | undefined;
126
+ goal?: string | undefined;
127
+ startDate?: string | undefined;
128
+ endDate?: string | undefined;
129
+ originBoardId?: number | undefined;
130
+ createdAt?: Date | null | undefined;
131
+ }, {
132
+ id: number;
133
+ name?: string | undefined;
134
+ state?: string | undefined;
135
+ goal?: string | undefined;
136
+ startDate?: string | undefined;
137
+ endDate?: string | undefined;
138
+ originBoardId?: number | undefined;
139
+ createdAt?: Date | null | undefined;
140
+ }>;
141
+ export declare const JiraUser: z.ZodObject<{
142
+ accountId: z.ZodString;
143
+ displayName: z.ZodOptional<z.ZodString>;
144
+ emailAddress: z.ZodOptional<z.ZodString>;
145
+ active: z.ZodOptional<z.ZodBoolean>;
146
+ timeZone: z.ZodOptional<z.ZodString>;
147
+ locale: z.ZodOptional<z.ZodString>;
148
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
149
+ }, "strip", z.ZodTypeAny, {
150
+ accountId: string;
151
+ displayName?: string | undefined;
152
+ emailAddress?: string | undefined;
153
+ active?: boolean | undefined;
154
+ timeZone?: string | undefined;
155
+ locale?: string | undefined;
156
+ createdAt?: Date | null | undefined;
157
+ }, {
158
+ accountId: string;
159
+ displayName?: string | undefined;
160
+ emailAddress?: string | undefined;
161
+ active?: boolean | undefined;
162
+ timeZone?: string | undefined;
163
+ locale?: string | undefined;
164
+ createdAt?: Date | null | undefined;
165
+ }>;
166
+ export declare const JiraBoard: z.ZodObject<{
167
+ id: z.ZodNumber;
168
+ name: z.ZodOptional<z.ZodString>;
169
+ type: z.ZodOptional<z.ZodString>;
170
+ projectId: z.ZodOptional<z.ZodNumber>;
171
+ projectKey: z.ZodOptional<z.ZodString>;
172
+ projectName: z.ZodOptional<z.ZodString>;
173
+ createdAt: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
174
+ }, "strip", z.ZodTypeAny, {
175
+ id: number;
176
+ type?: string | undefined;
177
+ name?: string | undefined;
178
+ projectId?: number | undefined;
179
+ projectKey?: string | undefined;
180
+ projectName?: string | undefined;
181
+ createdAt?: Date | null | undefined;
182
+ }, {
183
+ id: number;
184
+ type?: string | undefined;
185
+ name?: string | undefined;
186
+ projectId?: number | undefined;
187
+ projectKey?: string | undefined;
188
+ projectName?: string | undefined;
189
+ createdAt?: Date | null | undefined;
190
+ }>;
191
+ export type JiraIssue = z.infer<typeof JiraIssue>;
192
+ export type JiraProject = z.infer<typeof JiraProject>;
193
+ export type JiraComment = z.infer<typeof JiraComment>;
194
+ export type JiraSprint = z.infer<typeof JiraSprint>;
195
+ export type JiraUser = z.infer<typeof JiraUser>;
196
+ export type JiraBoard = z.infer<typeof JiraBoard>;
197
+ //# sourceMappingURL=database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../schema/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBpB,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;EAStB,CAAC;AAEH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;EAStB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;EASrB,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;EAQnB,CAAC;AAEH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;EAQpB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAClD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AACpD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAChD,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC"}
@@ -0,0 +1,196 @@
1
+ export declare const JiraSchema: {
2
+ readonly version: "1.0.0";
3
+ readonly entities: {
4
+ readonly issues: import("zod").ZodObject<{
5
+ id: import("zod").ZodString;
6
+ key: import("zod").ZodString;
7
+ summary: import("zod").ZodOptional<import("zod").ZodString>;
8
+ description: import("zod").ZodOptional<import("zod").ZodString>;
9
+ status: import("zod").ZodOptional<import("zod").ZodString>;
10
+ assigneeAccountId: import("zod").ZodOptional<import("zod").ZodString>;
11
+ assigneeDisplayName: import("zod").ZodOptional<import("zod").ZodString>;
12
+ reporterAccountId: import("zod").ZodOptional<import("zod").ZodString>;
13
+ reporterDisplayName: import("zod").ZodOptional<import("zod").ZodString>;
14
+ priority: import("zod").ZodOptional<import("zod").ZodString>;
15
+ issueType: import("zod").ZodOptional<import("zod").ZodString>;
16
+ projectKey: import("zod").ZodOptional<import("zod").ZodString>;
17
+ projectId: import("zod").ZodOptional<import("zod").ZodString>;
18
+ labels: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
19
+ created: import("zod").ZodOptional<import("zod").ZodString>;
20
+ updated: import("zod").ZodOptional<import("zod").ZodString>;
21
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
22
+ }, "strip", import("zod").ZodTypeAny, {
23
+ key: string;
24
+ id: string;
25
+ priority?: string | undefined;
26
+ status?: string | undefined;
27
+ description?: string | undefined;
28
+ summary?: string | undefined;
29
+ labels?: string[] | undefined;
30
+ created?: string | undefined;
31
+ updated?: string | undefined;
32
+ projectId?: string | undefined;
33
+ projectKey?: string | undefined;
34
+ assigneeAccountId?: string | undefined;
35
+ assigneeDisplayName?: string | undefined;
36
+ reporterAccountId?: string | undefined;
37
+ reporterDisplayName?: string | undefined;
38
+ issueType?: string | undefined;
39
+ createdAt?: Date | null | undefined;
40
+ }, {
41
+ key: string;
42
+ id: string;
43
+ priority?: string | undefined;
44
+ status?: string | undefined;
45
+ description?: string | undefined;
46
+ summary?: string | undefined;
47
+ labels?: string[] | undefined;
48
+ created?: string | undefined;
49
+ updated?: string | undefined;
50
+ projectId?: string | undefined;
51
+ projectKey?: string | undefined;
52
+ assigneeAccountId?: string | undefined;
53
+ assigneeDisplayName?: string | undefined;
54
+ reporterAccountId?: string | undefined;
55
+ reporterDisplayName?: string | undefined;
56
+ issueType?: string | undefined;
57
+ createdAt?: Date | null | undefined;
58
+ }>;
59
+ readonly projects: import("zod").ZodObject<{
60
+ id: import("zod").ZodString;
61
+ key: import("zod").ZodString;
62
+ name: import("zod").ZodOptional<import("zod").ZodString>;
63
+ description: import("zod").ZodOptional<import("zod").ZodString>;
64
+ projectTypeKey: import("zod").ZodOptional<import("zod").ZodString>;
65
+ leadAccountId: import("zod").ZodOptional<import("zod").ZodString>;
66
+ leadDisplayName: import("zod").ZodOptional<import("zod").ZodString>;
67
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
68
+ }, "strip", import("zod").ZodTypeAny, {
69
+ key: string;
70
+ id: string;
71
+ name?: string | undefined;
72
+ description?: string | undefined;
73
+ projectTypeKey?: string | undefined;
74
+ createdAt?: Date | null | undefined;
75
+ leadAccountId?: string | undefined;
76
+ leadDisplayName?: string | undefined;
77
+ }, {
78
+ key: string;
79
+ id: string;
80
+ name?: string | undefined;
81
+ description?: string | undefined;
82
+ projectTypeKey?: string | undefined;
83
+ createdAt?: Date | null | undefined;
84
+ leadAccountId?: string | undefined;
85
+ leadDisplayName?: string | undefined;
86
+ }>;
87
+ readonly comments: import("zod").ZodObject<{
88
+ id: import("zod").ZodString;
89
+ issueKey: import("zod").ZodString;
90
+ body: import("zod").ZodOptional<import("zod").ZodString>;
91
+ authorAccountId: import("zod").ZodOptional<import("zod").ZodString>;
92
+ authorDisplayName: import("zod").ZodOptional<import("zod").ZodString>;
93
+ created: import("zod").ZodOptional<import("zod").ZodString>;
94
+ updated: import("zod").ZodOptional<import("zod").ZodString>;
95
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
96
+ }, "strip", import("zod").ZodTypeAny, {
97
+ id: string;
98
+ issueKey: string;
99
+ body?: string | undefined;
100
+ created?: string | undefined;
101
+ updated?: string | undefined;
102
+ createdAt?: Date | null | undefined;
103
+ authorAccountId?: string | undefined;
104
+ authorDisplayName?: string | undefined;
105
+ }, {
106
+ id: string;
107
+ issueKey: string;
108
+ body?: string | undefined;
109
+ created?: string | undefined;
110
+ updated?: string | undefined;
111
+ createdAt?: Date | null | undefined;
112
+ authorAccountId?: string | undefined;
113
+ authorDisplayName?: string | undefined;
114
+ }>;
115
+ readonly sprints: import("zod").ZodObject<{
116
+ id: import("zod").ZodNumber;
117
+ name: import("zod").ZodOptional<import("zod").ZodString>;
118
+ state: import("zod").ZodOptional<import("zod").ZodString>;
119
+ goal: import("zod").ZodOptional<import("zod").ZodString>;
120
+ startDate: import("zod").ZodOptional<import("zod").ZodString>;
121
+ endDate: import("zod").ZodOptional<import("zod").ZodString>;
122
+ originBoardId: import("zod").ZodOptional<import("zod").ZodNumber>;
123
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
124
+ }, "strip", import("zod").ZodTypeAny, {
125
+ id: number;
126
+ name?: string | undefined;
127
+ state?: string | undefined;
128
+ goal?: string | undefined;
129
+ startDate?: string | undefined;
130
+ endDate?: string | undefined;
131
+ originBoardId?: number | undefined;
132
+ createdAt?: Date | null | undefined;
133
+ }, {
134
+ id: number;
135
+ name?: string | undefined;
136
+ state?: string | undefined;
137
+ goal?: string | undefined;
138
+ startDate?: string | undefined;
139
+ endDate?: string | undefined;
140
+ originBoardId?: number | undefined;
141
+ createdAt?: Date | null | undefined;
142
+ }>;
143
+ readonly users: import("zod").ZodObject<{
144
+ accountId: import("zod").ZodString;
145
+ displayName: import("zod").ZodOptional<import("zod").ZodString>;
146
+ emailAddress: import("zod").ZodOptional<import("zod").ZodString>;
147
+ active: import("zod").ZodOptional<import("zod").ZodBoolean>;
148
+ timeZone: import("zod").ZodOptional<import("zod").ZodString>;
149
+ locale: import("zod").ZodOptional<import("zod").ZodString>;
150
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
151
+ }, "strip", import("zod").ZodTypeAny, {
152
+ accountId: string;
153
+ displayName?: string | undefined;
154
+ emailAddress?: string | undefined;
155
+ active?: boolean | undefined;
156
+ timeZone?: string | undefined;
157
+ locale?: string | undefined;
158
+ createdAt?: Date | null | undefined;
159
+ }, {
160
+ accountId: string;
161
+ displayName?: string | undefined;
162
+ emailAddress?: string | undefined;
163
+ active?: boolean | undefined;
164
+ timeZone?: string | undefined;
165
+ locale?: string | undefined;
166
+ createdAt?: Date | null | undefined;
167
+ }>;
168
+ readonly boards: import("zod").ZodObject<{
169
+ id: import("zod").ZodNumber;
170
+ name: import("zod").ZodOptional<import("zod").ZodString>;
171
+ type: import("zod").ZodOptional<import("zod").ZodString>;
172
+ projectId: import("zod").ZodOptional<import("zod").ZodNumber>;
173
+ projectKey: import("zod").ZodOptional<import("zod").ZodString>;
174
+ projectName: import("zod").ZodOptional<import("zod").ZodString>;
175
+ createdAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodDate>>;
176
+ }, "strip", import("zod").ZodTypeAny, {
177
+ id: number;
178
+ type?: string | undefined;
179
+ name?: string | undefined;
180
+ projectId?: number | undefined;
181
+ projectKey?: string | undefined;
182
+ projectName?: string | undefined;
183
+ createdAt?: Date | null | undefined;
184
+ }, {
185
+ id: number;
186
+ type?: string | undefined;
187
+ name?: string | undefined;
188
+ projectId?: number | undefined;
189
+ projectKey?: string | undefined;
190
+ projectName?: string | undefined;
191
+ createdAt?: Date | null | undefined;
192
+ }>;
193
+ };
194
+ };
195
+ export type { JiraComment, JiraIssue, JiraProject, JiraSprint, JiraUser, JiraBoard } from './database';
196
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../schema/index.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUb,CAAC;AAEX,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _default: import("tsup").Options | import("tsup").Options[] | ((overrideOptions: import("tsup").Options) => import("tsup").Options | import("tsup").Options[] | Promise<import("tsup").Options | import("tsup").Options[]>);
2
+ export default _default;
3
+ //# sourceMappingURL=tsup.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tsup.config.d.ts","sourceRoot":"","sources":["../tsup.config.ts"],"names":[],"mappings":";AAEA,wBAYG"}