trident-git 0.25.0 → 0.27.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 (155) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +5 -5
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  6. package/.next/server/app/_global-error.html +2 -2
  7. package/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/server/app/_not-found.html +1 -1
  16. package/.next/server/app/_not-found.rsc +3 -3
  17. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  18. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  19. package/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  20. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  22. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  23. package/.next/server/app/api/credentials/github/repos/route_client-reference-manifest.js +1 -1
  24. package/.next/server/app/api/credentials/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/custom-scripts/route.js +2 -2
  26. package/.next/server/app/api/custom-scripts/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/fs/open/route_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/fs/open-terminal/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/fs/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/git/action/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/git/branches/route_client-reference-manifest.js +1 -1
  32. package/.next/server/app/api/git/diff/route_client-reference-manifest.js +1 -1
  33. package/.next/server/app/api/git/log/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/git/status/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/repos/clone/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/repos/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  38. package/.next/server/app/credentials/page_client-reference-manifest.js +1 -1
  39. package/.next/server/app/credentials.html +1 -1
  40. package/.next/server/app/credentials.rsc +3 -3
  41. package/.next/server/app/credentials.segments/_full.segment.rsc +3 -3
  42. package/.next/server/app/credentials.segments/_head.segment.rsc +1 -1
  43. package/.next/server/app/credentials.segments/_index.segment.rsc +3 -3
  44. package/.next/server/app/credentials.segments/_tree.segment.rsc +2 -2
  45. package/.next/server/app/credentials.segments/credentials/__PAGE__.segment.rsc +1 -1
  46. package/.next/server/app/credentials.segments/credentials.segment.rsc +1 -1
  47. package/.next/server/app/index.html +1 -1
  48. package/.next/server/app/index.rsc +3 -3
  49. package/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  50. package/.next/server/app/index.segments/_full.segment.rsc +3 -3
  51. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  52. package/.next/server/app/index.segments/_index.segment.rsc +3 -3
  53. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  54. package/.next/server/app/page_client-reference-manifest.js +1 -1
  55. package/.next/server/app/workspace/changes/page.js +1 -1
  56. package/.next/server/app/workspace/changes/page.js.nft.json +1 -1
  57. package/.next/server/app/workspace/changes/page_client-reference-manifest.js +1 -1
  58. package/.next/server/app/workspace/changes.html +1 -1
  59. package/.next/server/app/workspace/changes.rsc +18 -21
  60. package/.next/server/app/workspace/changes.segments/_full.segment.rsc +18 -21
  61. package/.next/server/app/workspace/changes.segments/_head.segment.rsc +1 -1
  62. package/.next/server/app/workspace/changes.segments/_index.segment.rsc +3 -3
  63. package/.next/server/app/workspace/changes.segments/_tree.segment.rsc +2 -2
  64. package/.next/server/app/workspace/changes.segments/workspace/changes/__PAGE__.segment.rsc +1 -1
  65. package/.next/server/app/workspace/changes.segments/workspace/changes.segment.rsc +1 -1
  66. package/.next/server/app/workspace/changes.segments/workspace.segment.rsc +6 -9
  67. package/.next/server/app/workspace/conflicts/page.js +1 -1
  68. package/.next/server/app/workspace/conflicts/page.js.nft.json +1 -1
  69. package/.next/server/app/workspace/conflicts/page_client-reference-manifest.js +1 -1
  70. package/.next/server/app/workspace/conflicts.html +1 -1
  71. package/.next/server/app/workspace/conflicts.rsc +18 -21
  72. package/.next/server/app/workspace/conflicts.segments/_full.segment.rsc +18 -21
  73. package/.next/server/app/workspace/conflicts.segments/_head.segment.rsc +1 -1
  74. package/.next/server/app/workspace/conflicts.segments/_index.segment.rsc +3 -3
  75. package/.next/server/app/workspace/conflicts.segments/_tree.segment.rsc +2 -2
  76. package/.next/server/app/workspace/conflicts.segments/workspace/conflicts/__PAGE__.segment.rsc +1 -1
  77. package/.next/server/app/workspace/conflicts.segments/workspace/conflicts.segment.rsc +1 -1
  78. package/.next/server/app/workspace/conflicts.segments/workspace.segment.rsc +6 -9
  79. package/.next/server/app/workspace/custom-scripts/page.js +1 -1
  80. package/.next/server/app/workspace/custom-scripts/page.js.nft.json +1 -1
  81. package/.next/server/app/workspace/custom-scripts/page_client-reference-manifest.js +1 -1
  82. package/.next/server/app/workspace/custom-scripts.html +1 -1
  83. package/.next/server/app/workspace/custom-scripts.rsc +18 -21
  84. package/.next/server/app/workspace/custom-scripts.segments/_full.segment.rsc +18 -21
  85. package/.next/server/app/workspace/custom-scripts.segments/_head.segment.rsc +1 -1
  86. package/.next/server/app/workspace/custom-scripts.segments/_index.segment.rsc +3 -3
  87. package/.next/server/app/workspace/custom-scripts.segments/_tree.segment.rsc +2 -2
  88. package/.next/server/app/workspace/custom-scripts.segments/workspace/custom-scripts/__PAGE__.segment.rsc +1 -1
  89. package/.next/server/app/workspace/custom-scripts.segments/workspace/custom-scripts.segment.rsc +1 -1
  90. package/.next/server/app/workspace/custom-scripts.segments/workspace.segment.rsc +6 -9
  91. package/.next/server/app/workspace/history/page.js +1 -1
  92. package/.next/server/app/workspace/history/page.js.nft.json +1 -1
  93. package/.next/server/app/workspace/history/page_client-reference-manifest.js +1 -1
  94. package/.next/server/app/workspace/history.html +1 -1
  95. package/.next/server/app/workspace/history.rsc +18 -21
  96. package/.next/server/app/workspace/history.segments/_full.segment.rsc +18 -21
  97. package/.next/server/app/workspace/history.segments/_head.segment.rsc +1 -1
  98. package/.next/server/app/workspace/history.segments/_index.segment.rsc +3 -3
  99. package/.next/server/app/workspace/history.segments/_tree.segment.rsc +2 -2
  100. package/.next/server/app/workspace/history.segments/workspace/history/__PAGE__.segment.rsc +2 -2
  101. package/.next/server/app/workspace/history.segments/workspace/history.segment.rsc +1 -1
  102. package/.next/server/app/workspace/history.segments/workspace.segment.rsc +6 -9
  103. package/.next/server/app/workspace/page.js +1 -1
  104. package/.next/server/app/workspace/page.js.nft.json +1 -1
  105. package/.next/server/app/workspace/page_client-reference-manifest.js +1 -1
  106. package/.next/server/app/workspace/settings/page.js +1 -1
  107. package/.next/server/app/workspace/settings/page.js.nft.json +1 -1
  108. package/.next/server/app/workspace/settings/page_client-reference-manifest.js +1 -1
  109. package/.next/server/app/workspace/settings.html +1 -1
  110. package/.next/server/app/workspace/settings.rsc +18 -21
  111. package/.next/server/app/workspace/settings.segments/_full.segment.rsc +18 -21
  112. package/.next/server/app/workspace/settings.segments/_head.segment.rsc +1 -1
  113. package/.next/server/app/workspace/settings.segments/_index.segment.rsc +3 -3
  114. package/.next/server/app/workspace/settings.segments/_tree.segment.rsc +2 -2
  115. package/.next/server/app/workspace/settings.segments/workspace/settings/__PAGE__.segment.rsc +1 -1
  116. package/.next/server/app/workspace/settings.segments/workspace/settings.segment.rsc +1 -1
  117. package/.next/server/app/workspace/settings.segments/workspace.segment.rsc +6 -9
  118. package/.next/server/app/workspace/stashes/page.js +1 -1
  119. package/.next/server/app/workspace/stashes/page.js.nft.json +1 -1
  120. package/.next/server/app/workspace/stashes/page_client-reference-manifest.js +1 -1
  121. package/.next/server/app/workspace/stashes.html +1 -1
  122. package/.next/server/app/workspace/stashes.rsc +18 -21
  123. package/.next/server/app/workspace/stashes.segments/_full.segment.rsc +18 -21
  124. package/.next/server/app/workspace/stashes.segments/_head.segment.rsc +1 -1
  125. package/.next/server/app/workspace/stashes.segments/_index.segment.rsc +3 -3
  126. package/.next/server/app/workspace/stashes.segments/_tree.segment.rsc +2 -2
  127. package/.next/server/app/workspace/stashes.segments/workspace/stashes/__PAGE__.segment.rsc +1 -1
  128. package/.next/server/app/workspace/stashes.segments/workspace/stashes.segment.rsc +1 -1
  129. package/.next/server/app/workspace/stashes.segments/workspace.segment.rsc +6 -9
  130. package/.next/server/app/workspace.html +1 -1
  131. package/.next/server/app/workspace.rsc +18 -21
  132. package/.next/server/app/workspace.segments/_full.segment.rsc +18 -21
  133. package/.next/server/app/workspace.segments/_head.segment.rsc +1 -1
  134. package/.next/server/app/workspace.segments/_index.segment.rsc +3 -3
  135. package/.next/server/app/workspace.segments/_tree.segment.rsc +2 -2
  136. package/.next/server/app/workspace.segments/workspace/__PAGE__.segment.rsc +2 -2
  137. package/.next/server/app/workspace.segments/workspace.segment.rsc +6 -9
  138. package/.next/server/app-paths-manifest.json +5 -5
  139. package/.next/server/chunks/764.js +3 -1
  140. package/.next/server/chunks/809.js +1 -1
  141. package/.next/server/chunks/835.js +1 -0
  142. package/.next/server/pages/404.html +1 -1
  143. package/.next/server/pages/500.html +2 -2
  144. package/.next/server/server-reference-manifest.json +1 -1
  145. package/.next/static/chunks/2944-317f69df23d5d81c.js +9 -0
  146. package/.next/static/chunks/app/layout-28df9f0af1a904ba.js +3 -0
  147. package/.next/static/chunks/app/workspace/layout-0cefd66558e505b9.js +1 -0
  148. package/.next/static/css/{04da82c464d41917.css → f63b50c409c55440.css} +1 -1
  149. package/package.json +1 -1
  150. package/.next/server/chunks/547.js +0 -3
  151. package/.next/static/chunks/2944-f1ff2d4c47ff4526.js +0 -9
  152. package/.next/static/chunks/app/layout-1eb3f74bfb86e3d5.js +0 -1
  153. package/.next/static/chunks/app/workspace/layout-6735475bf8f9495d.js +0 -3
  154. /package/.next/static/{Z2jcv8BWFnY_uJuEr8xah → C7h0CkZ-fYKbUd_hIQuKW}/_buildManifest.js +0 -0
  155. /package/.next/static/{Z2jcv8BWFnY_uJuEr8xah → C7h0CkZ-fYKbUd_hIQuKW}/_ssgManifest.js +0 -0
@@ -1,10 +1,7 @@
1
1
  1:"$Sreact.fragment"
2
- 2:I[3278,["2176","static/chunks/2176-c690bf31cb5e55b2.js","2785","static/chunks/2785-311f9f6f5a125e2c.js","8500","static/chunks/8500-41fa79ac743d83f1.js","8645","static/chunks/8645-c924b37013fd97cb.js","4131","static/chunks/4131-07e15b10898e2bcb.js","1807","static/chunks/app/workspace/layout-6735475bf8f9495d.js"],"CustomScriptExecutionProvider"]
3
- 3:"$Sreact.suspense"
4
- 4:I[9128,["2176","static/chunks/2176-c690bf31cb5e55b2.js","2785","static/chunks/2785-311f9f6f5a125e2c.js","8500","static/chunks/8500-41fa79ac743d83f1.js","8645","static/chunks/8645-c924b37013fd97cb.js","4131","static/chunks/4131-07e15b10898e2bcb.js","1807","static/chunks/app/workspace/layout-6735475bf8f9495d.js"],"WorkspaceRepoOpenTracker"]
5
- 5:I[7185,["2176","static/chunks/2176-c690bf31cb5e55b2.js","2785","static/chunks/2785-311f9f6f5a125e2c.js","8500","static/chunks/8500-41fa79ac743d83f1.js","8645","static/chunks/8645-c924b37013fd97cb.js","4131","static/chunks/4131-07e15b10898e2bcb.js","1807","static/chunks/app/workspace/layout-6735475bf8f9495d.js"],"Sidebar"]
6
- 6:I[7121,[],""]
7
- 7:I[4581,[],""]
8
- 8:I[6204,["2176","static/chunks/2176-c690bf31cb5e55b2.js","2785","static/chunks/2785-311f9f6f5a125e2c.js","8500","static/chunks/8500-41fa79ac743d83f1.js","8645","static/chunks/8645-c924b37013fd97cb.js","4131","static/chunks/4131-07e15b10898e2bcb.js","1807","static/chunks/app/workspace/layout-6735475bf8f9495d.js"],"ScriptDock"]
9
- 9:I[1464,["2176","static/chunks/2176-c690bf31cb5e55b2.js","2785","static/chunks/2785-311f9f6f5a125e2c.js","8500","static/chunks/8500-41fa79ac743d83f1.js","8645","static/chunks/8645-c924b37013fd97cb.js","4131","static/chunks/4131-07e15b10898e2bcb.js","1807","static/chunks/app/workspace/layout-6735475bf8f9495d.js"],"ScriptModal"]
10
- 0:{"buildId":"Z2jcv8BWFnY_uJuEr8xah","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"children":["$","div",null,{"className":"flex min-h-screen max-h-screen bg-base-100","children":[["$","$3",null,{"fallback":null,"children":["$","$L4",null,{}]}],["$","$3",null,{"fallback":["$","div",null,{"className":"w-64 border-r border-base-300 min-h-screen bg-base-200/30 flex items-center justify-center","children":["$","span",null,{"className":"loading loading-spinner"}]}],"children":["$","$L5",null,{"initialCollapsed":false}]}],["$","main",null,{"className":"flex-1 overflow-auto","children":["$","$L6",null,{"parallelRouterKey":"children","template":["$","$L7",null,{}]}]}],["$","$L8",null,{}],["$","$L9",null,{}]]}]}]]}],"loading":null,"isPartial":false}
2
+ 2:"$Sreact.suspense"
3
+ 3:I[9128,["2176","static/chunks/2176-c690bf31cb5e55b2.js","2785","static/chunks/2785-311f9f6f5a125e2c.js","8500","static/chunks/8500-41fa79ac743d83f1.js","8645","static/chunks/8645-c924b37013fd97cb.js","4131","static/chunks/4131-07e15b10898e2bcb.js","1807","static/chunks/app/workspace/layout-0cefd66558e505b9.js"],"WorkspaceRepoOpenTracker"]
4
+ 4:I[7185,["2176","static/chunks/2176-c690bf31cb5e55b2.js","2785","static/chunks/2785-311f9f6f5a125e2c.js","8500","static/chunks/8500-41fa79ac743d83f1.js","8645","static/chunks/8645-c924b37013fd97cb.js","4131","static/chunks/4131-07e15b10898e2bcb.js","1807","static/chunks/app/workspace/layout-0cefd66558e505b9.js"],"Sidebar"]
5
+ 5:I[7121,[],""]
6
+ 6:I[4581,[],""]
7
+ 0:{"buildId":"C7h0CkZ-fYKbUd_hIQuKW","rsc":["$","$1","c",{"children":[null,["$","div",null,{"className":"flex min-h-screen max-h-screen bg-base-100","children":[["$","$2",null,{"fallback":null,"children":["$","$L3",null,{}]}],["$","$2",null,{"fallback":["$","div",null,{"className":"w-64 border-r border-base-300 min-h-screen bg-base-200/30 flex items-center justify-center","children":["$","span",null,{"className":"loading loading-spinner"}]}],"children":["$","$L4",null,{"initialCollapsed":false}]}],["$","main",null,{"className":"flex-1 overflow-auto","children":["$","$L5",null,{"parallelRouterKey":"children","template":["$","$L6",null,{}]}]}]]}]]}],"loading":null,"isPartial":false}
@@ -1,27 +1,27 @@
1
1
  {
2
- "/_not-found/page": "app/_not-found/page.js",
3
2
  "/_global-error/page": "app/_global-error/page.js",
3
+ "/_not-found/page": "app/_not-found/page.js",
4
4
  "/api/credentials/github/repos/route": "app/api/credentials/github/repos/route.js",
5
5
  "/api/credentials/route": "app/api/credentials/route.js",
6
6
  "/api/fs/open-terminal/route": "app/api/fs/open-terminal/route.js",
7
7
  "/api/fs/open/route": "app/api/fs/open/route.js",
8
8
  "/api/fs/route": "app/api/fs/route.js",
9
9
  "/api/git/action/route": "app/api/git/action/route.js",
10
- "/api/git/branches/route": "app/api/git/branches/route.js",
11
10
  "/api/git/diff/route": "app/api/git/diff/route.js",
12
11
  "/api/git/log/route": "app/api/git/log/route.js",
13
12
  "/api/git/status/route": "app/api/git/status/route.js",
13
+ "/api/git/branches/route": "app/api/git/branches/route.js",
14
14
  "/api/repos/clone/route": "app/api/repos/clone/route.js",
15
15
  "/api/repos/route": "app/api/repos/route.js",
16
- "/api/settings/route": "app/api/settings/route.js",
17
16
  "/icon.png/route": "app/icon.png/route.js",
17
+ "/api/settings/route": "app/api/settings/route.js",
18
18
  "/api/custom-scripts/route": "app/api/custom-scripts/route.js",
19
19
  "/credentials/page": "app/credentials/page.js",
20
20
  "/page": "app/page.js",
21
- "/workspace/changes/page": "app/workspace/changes/page.js",
22
21
  "/workspace/conflicts/page": "app/workspace/conflicts/page.js",
23
- "/workspace/custom-scripts/page": "app/workspace/custom-scripts/page.js",
24
22
  "/workspace/history/page": "app/workspace/history/page.js",
23
+ "/workspace/custom-scripts/page": "app/workspace/custom-scripts/page.js",
24
+ "/workspace/changes/page": "app/workspace/changes/page.js",
25
25
  "/workspace/page": "app/workspace/page.js",
26
26
  "/workspace/settings/page": "app/workspace/settings/page.js",
27
27
  "/workspace/stashes/page": "app/workspace/stashes/page.js"
@@ -1 +1,3 @@
1
- exports.id=764,exports.ids=[764],exports.modules={4591:(a,b,c)=>{Promise.resolve().then(c.bind(c,59633))},14490:(a,b,c)=>{"use strict";c.d(b,{L9:()=>q,cn:()=>f,iu:()=>h,kO:()=>n,kj:()=>g,tq:()=>p,u:()=>o});var d=c(99314),e=c(96862);function f(...a){return(0,e.QP)((0,d.$)(a))}function g(a){let b=a.replace(/[\\/]+$/,"").split(/[/\\]/).filter(Boolean);return b[b.length-1]||a}function h(a){let b=a.displayName?.trim();return b||(a.name?.trim()?a.name:g(a.path))}function i(a){if(!a)return"";let b=a.split("/").pop()||"",c=b.lastIndexOf(".");return -1===c||0===c?b.toLowerCase():b.slice(c+1).toLowerCase()}let j=new Set(["js","jsx","ts","tsx","mjs","cjs","mts","cts","py","pyw","pyi","pyx","rb","rake","gemspec","java","kt","kts","scala","sc","groovy","gradle","c","h","cpp","cc","cxx","hpp","hh","hxx","c++","h++","cs","fs","fsx","fsi","go","rs","swift","dart","zig","nim","v","odin","php","phtml","php3","php4","php5","php7","phps","pl","pm","pod","t","psgi","lua","tcl","r","R","jl","ex","exs","erl","hrl","clj","cljs","cljc","edn","lisp","lsp","el","scm","ss","rkt","hs","lhs","elm","purs","ml","mli","f90","f95","f03","f08","for","asm","s","S","vhd","vhdl","v","sv","svh","bas","vb","vbs","vba","pas","pp","inc","dpr","dpk","sh","bash","zsh","fish","ksh","csh","tcsh","ps1","psm1","psd1","bat","cmd","html","htm","xhtml","shtml","css","scss","sass","less","styl","stylus","pcss","postcss","svg","xml","xsl","xslt","xsd","dtd","rss","atom","rdf","wsdl","soap","vue","svelte","astro","mdx","hbs","handlebars","mustache","ejs","pug","jade","haml","slim","erb","graphql","gql","json","json5","jsonc","jsonl","ndjson","geojson","yaml","yml","toml","ini","cfg","conf","config","properties","env","csv","tsv","psv","txt","text","log","out","md","markdown","mdown","mkd","mkdn","mdwn","rst","rest","adoc","asciidoc","asc","org","tex","latex","ltx","bib","sty","cls","rtf","diff","patch","gitignore","gitattributes","gitmodules","gitconfig","dockerignore","dockerfile","containerfile","editorconfig","prettierrc","eslintrc","babelrc","stylelintrc","browserslistrc","npmrc","nvmrc","yarnrc","pnpmfile","makefile","mk","cmake","make","mak","rake","podfile","gemfile","fastfile","sql","plsql","pgsql","mysql","sqlite","hql","cql","proto","protobuf","thrift","avro","capnp","fbs","flatc","tf","tfvars","hcl","nomad","sentinel","prisma","graphqls","lock"]),k=new Set(["jpg","jpeg","png","gif","bmp","ico","icns","tiff","tif","webp","avif","heic","heif","psd","ai","eps","raw","cr2","nef","orf","sr2","dng","mp4","avi","mov","wmv","flv","mkv","webm","m4v","mpeg","mpg","3gp","3g2","ogv","mp3","wav","ogg","oga","flac","aac","m4a","wma","aiff","aif","mid","midi","opus","zip","rar","7z","tar","gz","bz2","xz","lz","lzma","lz4","zst","cab","iso","dmg","exe","dll","so","dylib","a","lib","obj","o","app","msi","deb","rpm","apk","ipa","pkg","snap","flatpak","appimage","class","jar","war","ear","pyc","pyo","pyd","beam","wasm","wat","pdf","doc","docx","xls","xlsx","ppt","pptx","odt","ods","odp","pages","numbers","key","ttf","otf","woff","woff2","eot","fon","fnt","db","sqlite","sqlite3","mdb","accdb","frm","myd","myi","ibd","bin","dat","data","sav","bak","swf","fla","blend","fbx","obj","stl","gltf","glb","3ds","dae","ply","sketch","fig","xd","unity","unitypackage","asset","prefab","meta"]),l=new Set(["png","jpg","jpeg","gif","bmp","ico","icns","tiff","tif","webp","avif","heic","heif","svg"]);function m(a){if(!a)return!1;if(a.includes("\0"))return!0;let b=a.slice(0,8192),c=0;for(let a=0;a<b.length;a++){let d=b.charCodeAt(a);d<32&&9!==d&&10!==d&&13!==d&&c++}return b.length>0&&c/b.length>.1}function n(a,b,c){let d=function(a){if(!a)return"unknown";let b=i(a);return j.has(b)?"text":k.has(b)?"binary":"unknown"}(a);return"binary"===d||"text"!==d&&(m(b||"")||m(c||""))}function o(a){return l.has(i(a))}function p(a){return a?a.split("\n").reduce((a,b)=>b.startsWith("+++ ")||b.startsWith("--- ")?a:b.startsWith("+")||b.startsWith("-")?a+1:a,0):0}function q(a){return a.replace(/[\s~^:?*\[\]\\@{}<>|"'`!#$%&()+=;,]/g,"-").replace(/\.{2,}/g,"-").replace(/\/{2,}/g,"/").replace(/-{2,}/g,"-")}},23048:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81921,23))},24709:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call Providers() from the server but Providers is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/trident/trident/src/app/providers.tsx","Providers")},24936:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81921,23)),Promise.resolve().then(c.t.bind(c,60440,23)),Promise.resolve().then(c.t.bind(c,84342,23)),Promise.resolve().then(c.t.bind(c,82265,23)),Promise.resolve().then(c.t.bind(c,35421,23)),Promise.resolve().then(c.t.bind(c,61335,23)),Promise.resolve().then(c.t.bind(c,70664,23)),Promise.resolve().then(c.bind(c,74661))},36200:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95547,23))},43381:(a,b,c)=>{"use strict";c.d(b,{dj:()=>o,oR:()=>n,tk:()=>p});var d=c(67484);let e=5e3;async function f(a){try{return await navigator.clipboard.writeText(a),!0}catch{let b=document.createElement("textarea");b.value=a,b.style.position="fixed",b.style.left="-9999px",document.body.appendChild(b),b.select();try{return document.execCommand("copy"),!0}catch{return!1}finally{document.body.removeChild(b)}}}let g=0;function h(){return(g=(g+1)%Number.MAX_SAFE_INTEGER).toString()}let i=new Map,j=(a,b=e)=>{if(i.has(a))return;let c=setTimeout(()=>{i.delete(a),m({type:"REMOVE_TOAST",toastId:a})},b);i.set(a,c)},k=[],l={toasts:[]};function m(a){l=((a,b)=>{switch(b.type){case"ADD_TOAST":return{...a,toasts:[b.toast,...a.toasts].slice(0,5)};case"UPDATE_TOAST":return{...a,toasts:a.toasts.map(a=>a.id===b.toast.id?{...a,...b.toast}:a)};case"DISMISS_TOAST":{let{toastId:c}=b;return c?j(c,0):a.toasts.forEach(a=>{j(a.id,0)}),{...a,toasts:a.toasts.filter(a=>a.id!==c&&void 0!==c)}}case"REMOVE_TOAST":if(void 0===b.toastId)return{...a,toasts:[]};return{...a,toasts:a.toasts.filter(a=>a.id!==b.toastId)}}})(l,a),k.forEach(a=>{a(l)})}function n(a){let b=h();return m({type:"ADD_TOAST",toast:{...a,id:b}}),j(b,a.duration||e),{id:b,dismiss:()=>m({type:"DISMISS_TOAST",toastId:b}),update:a=>m({type:"UPDATE_TOAST",toast:{...a,id:b}})}}function o(){let[a,b]=d.useState(l);return d.useEffect(()=>(k.push(b),()=>{let a=k.indexOf(b);a>-1&&k.splice(a,1)}),[a]),{...a,toast:n,dismiss:a=>m({type:"DISMISS_TOAST",toastId:a})}}function p(a,b={}){let c="string"==typeof a?a:a.message,e=b.title||(b.operation?`${b.operation} Failed`:"Git Operation Failed"),g=h();return n({type:"error",title:e,description:d.createElement(()=>{let[a,e]=d.useState(!1),[h,i]=d.useState(!1),j=async a=>{a.stopPropagation(),await f(c)&&(e(!0),setTimeout(()=>e(!1),2e3))},k=async a=>{if(a.stopPropagation(),b.onFix){i(!0);try{await b.onFix(),m({type:"DISMISS_TOAST",toastId:g})}catch(a){console.error("Fix failed",a),i(!1)}}};return d.createElement("div",{className:"mt-2 space-y-3"},d.createElement("div",{className:"max-h-[120px] overflow-y-auto whitespace-pre-wrap font-mono text-[11px] leading-relaxed bg-black/20 p-3 rounded-md break-all text-error-content/90 border border-error-content/20"},c),d.createElement("div",{className:"flex gap-2"},d.createElement("button",{onClick:j,type:"button",className:`btn btn-xs ${a?"btn-success text-white":"bg-white/20 hover:bg-white/30 text-white border-white/20"}`},a?"Copied!":"Copy Error"),b.onFix?d.createElement("button",{onClick:k,type:"button",disabled:h,className:"btn btn-xs btn-warning text-white"},h?"Fixing...":b.fixLabel||"Fix Issue"):null))}),duration:1e4}),{id:g,dismiss:()=>m({type:"DISMISS_TOAST",toastId:g})}}},54626:(a,b,c)=>{"use strict";c.d(b,{F3:()=>n,F7:()=>s,GK:()=>m,Jy:()=>z,Lp:()=>p,Ud:()=>B,X0:()=>q,Y5:()=>k,_6:()=>v,_X:()=>u,a3:()=>F,b5:()=>t,cT:()=>A,en:()=>r,fr:()=>o,gg:()=>x,st:()=>y,t0:()=>j,uG:()=>l,xV:()=>w});var d=c(67484),e=c(80434),f=c(5023),g=c(73241),h=c(43381);let i="/api";function j(){return(0,e.I)({queryKey:["settings"],queryFn:async()=>{let a=await fetch(`${i}/settings`);if(!a.ok)throw Error("Failed to fetch settings");return a.json()}})}function k(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async a=>{let b=await fetch(`${i}/settings`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok)throw Error("Failed to update settings");return b.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["settings"]})}})}function l(){return(0,e.I)({queryKey:["repos"],queryFn:async()=>{let a=await fetch(`${i}/repos`);if(!a.ok)throw Error("Failed to fetch repositories");return a.json()}})}function m(a){let{data:b}=l();return(0,d.useMemo)(()=>b?.find(b=>b.path===a)||null,[b,a])}function n(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async({path:a,name:b,initializeIfNeeded:c})=>{let d=await fetch(`${i}/repos`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a,name:b,initializeIfNeeded:c})});if(!d.ok)throw Error((await d.json().catch(()=>({}))).error||"Failed to add repository");return d.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["repos"]})}})}function o(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async a=>{let b=await fetch(`${i}/repos/clone`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Failed to clone repository");return c},onSuccess:()=>{a.invalidateQueries({queryKey:["repos"]})}})}function p(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async({path:a,updates:b})=>{let c=await fetch(`${i}/repos`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a,updates:b})});if(!c.ok)throw Error(await c.text());return c.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["repos"]})}})}function q(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async({path:a,deleteLocalFolder:b=!1})=>{let c=await fetch(`${i}/repos`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a,deleteLocalFolder:b})});if(!c.ok)throw Error(await c.text());return c.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["repos"]})}})}function r(a){return(0,e.I)({queryKey:["git",a,"status"],queryFn:async()=>{if(!a)return null;let b=await fetch(`${i}/git/status?path=${encodeURIComponent(a)}`);if(!b.ok){let a=Error((await b.json().catch(()=>({}))).error||"Failed to fetch status");throw a.status=b.status,a}return b.json()},enabled:!!a,refetchOnWindowFocus:!0,refetchOnReconnect:!0,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function s(a){return(0,e.I)({queryKey:["git",a,"conflict-state"],queryFn:async()=>{if(!a)return{operation:null,conflictedFiles:[],hasConflicts:!1,canContinue:!1};let b=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"get-conflict-state"})});if(!b.ok){let a=Error((await b.json().catch(()=>({}))).error||"Failed to fetch conflict state");throw a.status=b.status,a}let c=await b.json();return{operation:c.operation??null,conflictedFiles:c.conflictedFiles??[],hasConflicts:!!c.hasConflicts,canContinue:!!c.canContinue}},enabled:!!a,refetchOnWindowFocus:!0,refetchOnReconnect:!0,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function t(a,b){return(0,e.I)({queryKey:["git",a,"conflict-file-versions",b],queryFn:async()=>{if(!a||!b)return{ours:"",theirs:"",current:""};let c=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"get-conflict-file-versions",data:{path:b}})});if(!c.ok){let a=Error((await c.json().catch(()=>({}))).error||"Failed to fetch conflict file versions");throw a.status=c.status,a}let d=await c.json();return{ours:"string"==typeof d.ours?d.ours:"",theirs:"string"==typeof d.theirs?d.theirs:"",current:"string"==typeof d.current?d.current:""}},enabled:!!a&&!!b,refetchOnWindowFocus:!0,refetchOnReconnect:!0,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function u(a,b=50){return(0,e.I)({queryKey:["git",a,"log",b],queryFn:async()=>{if(!a)return null;let c=await fetch(`${i}/git/log?path=${encodeURIComponent(a)}&limit=${b}`);if(!c.ok){let a=Error((await c.json().catch(()=>({}))).error||"Failed to fetch log");throw a.status=c.status,a}return c.json()},enabled:!!a,placeholderData:a=>a,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function v(a){return(0,e.I)({queryKey:["git",a,"branches"],queryFn:async()=>{if(!a)return null;let b=await fetch(`${i}/git/branches?path=${encodeURIComponent(a)}`);if(!b.ok)throw Error("Failed to fetch branches");return b.json()},enabled:!!a})}function w(a,b){return(0,e.I)({queryKey:["git",a,"diff",b],queryFn:async()=>{if(!a||!b)return null;let c=await fetch(`${i}/git/diff?path=${encodeURIComponent(a)}&file=${encodeURIComponent(b)}`);if(!c.ok){let a=Error((await c.json().catch(()=>({}))).error||"Failed to fetch diff");throw a.status=c.status,a}return c.json()},enabled:!!a&&!!b,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function x(a,b){let c=b.commitHash??null,d=b.fromCommitHash??null,f=b.toCommitHash??null,g=!!d&&!!f,h=!!c;return(0,e.I)({queryKey:["git",a,"commit-diff",c,d,f],queryFn:async()=>{if(!a||!h&&!g)return null;let b=new URLSearchParams({path:a});h?b.set("commit",c):g&&(b.set("from",d),b.set("to",f));let e=await fetch(`${i}/git/diff?${b.toString()}`);if(!e.ok){let a=Error((await e.json().catch(()=>({}))).error||"Failed to fetch commit diff");throw a.status=e.status,a}return e.json()},enabled:!!a&&(h||g),retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function y(a,b,c){let d=c.commitHash??null,f=c.fromCommitHash??null,g=c.toCommitHash??null,h=!!f&&!!g,j=!!d;return(0,e.I)({queryKey:["git",a,"commit-file-diff",b,d,f,g],queryFn:async()=>{if(!a||!b||!j&&!h)return null;let c=new URLSearchParams({path:a,file:b});j?c.set("commit",d):h&&(c.set("from",f),c.set("to",g));let e=await fetch(`${i}/git/diff?${c.toString()}`);if(!e.ok){let a=Error((await e.json().catch(()=>({}))).error||"Failed to fetch file diff");throw a.status=e.status,a}return e.json()},enabled:!!a&&!!b&&(j||h),retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function z(a){return(0,e.I)({queryKey:["git",a,"stashes"],queryFn:async()=>{if(!a)return[];let b=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"stash-list"})});if(!b.ok)throw Error("Failed to fetch stashes");return(await b.json()).stashes||[]},enabled:!!a})}function A(a,b){return(0,e.I)({queryKey:["git",a,"stash-files",b],queryFn:async()=>{if(!a||null===b)return[];let c=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"stash-files",data:{index:b}})});if(!c.ok)throw Error("Failed to fetch stash files");return(await c.json()).files||[]},enabled:!!a&&null!==b})}function B(a,b,c){return(0,e.I)({queryKey:["git",a,"stash-file-diff",b,c],queryFn:async()=>{if(!a||null===b||!c)return{left:"",right:"",diff:""};let d=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"stash-file-diff",data:{index:b,file:c}})});if(!d.ok)throw Error("Failed to fetch stash file diff");return d.json()},enabled:!!a&&null!==b&&!!c})}let C={commit:"Commit",push:"Push",pull:"Pull",fetch:"Fetch",stage:"Stage",unstage:"Unstage",checkout:"Checkout","checkout-to-local":"Checkout",branch:"Create Branch","create-tag":"Create Tag","delete-branch":"Delete Branch","delete-worktree":"Delete Worktree","delete-remote-branch":"Delete Remote Branch","delete-remote":"Delete Remote","delete-tag":"Delete Tag","delete-remote-tag":"Delete Remote Tag","rename-branch":"Rename Branch","rename-remote-branch":"Rename Remote Branch","rename-remote":"Rename Remote","add-remote":"Add Remote",reset:"Reset",revert:"Revert Commit","cherry-pick":"Cherry Pick","cherry-pick-multiple":"Cherry Pick","cherry-pick-abort":"Cherry Pick",rebase:"Rebase",merge:"Merge","check-merge-conflicts":"Check Merge Conflicts","check-rebase-conflicts":"Check Rebase Conflicts","get-conflict-state":"Get Conflict State","get-conflict-file-versions":"Get Conflict File Versions","resolve-conflict-file":"Resolve Conflict File","continue-merge":"Continue Merge","abort-merge":"Abort Merge","continue-rebase":"Continue Rebase","abort-rebase":"Abort Rebase","get-remotes":"Get Remotes","get-remote-branches":"Get Remote Branches","get-tracking-branch":"Get Tracking Branch","get-latest-commit-message":"Get Latest Commit Message","push-to-remote":"Push","pull-from-remote":"Pull",stash:"Stash","stash-apply":"Apply Stash","stash-drop":"Drop Stash","stash-pop":"Pop Stash",reword:"Reword Commit",discard:"Discard Changes","cleanup-lock-file":"Cleanup Lock File"},D=["check-merge-conflicts","check-rebase-conflicts","get-conflict-state","get-conflict-file-versions","get-remotes","get-remote-branches","get-tracking-branch","get-latest-commit-message"];async function E(a){let b=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"cleanup-lock-file"})});if(!b.ok)throw Error("Failed to cleanup lock file");return b.json()}function F(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async({repoPath:a,action:b,data:c})=>{let d=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:b,data:c})});if(!d.ok)throw Error((await d.json()).error||"Failed to execute action");return d.json()},onSuccess:(b,c)=>{D.includes(c.action)||a.invalidateQueries({queryKey:["git",c.repoPath]})},onError:(b,c)=>{if(!D.includes(c.action)&&!c.suppressErrorToast){let d=C[c.action]||c.action;b.message.includes("Unable to create")&&b.message.includes(".git/index.lock")?(0,h.tk)(b,{operation:d,fixLabel:"Remove Lock File",onFix:async()=>{await E(c.repoPath),a.invalidateQueries({queryKey:["git",c.repoPath]})}}):(0,h.tk)(b,{operation:d})}}})}},59633:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>q});var d=c(48249),e=c(7351),f=c(5023),g=c(67484),h=c(8696),i=c(43381);function j(){let{toasts:a}=(0,i.dj)(),[b,c]=(0,g.useState)(!1);return b?(0,d.jsx)("div",{className:"toast toast-bottom toast-end z-50 p-4 gap-2",children:a.map(a=>{let b="alert-info";return"success"===a.type?b="alert-success":"warning"===a.type||"warning"===a.variant?b="alert-warning":("error"===a.type||"destructive"===a.variant)&&(b="alert-error"),(0,d.jsxs)("div",{className:`alert ${b} shadow-lg max-w-md w-auto flex-col items-start gap-1 p-3 text-sm animate-in fade-in slide-in-from-bottom-2 duration-300`,children:[(0,d.jsxs)("div",{className:"w-full",children:[a.title&&(0,d.jsx)("h3",{className:"font-bold",children:a.title}),a.description&&(0,d.jsx)("div",{className:"opacity-90 break-words",children:a.description})]}),a.action&&(0,d.jsx)("div",{className:"mt-2 w-full",children:a.action})]},a.id)})}):null}var k=c(19099),l=c(54626),m=c(14490),n=c(98550);function o(a,b){return new Date(b.lastOpenedAt||0).getTime()-new Date(a.lastOpenedAt||0).getTime()}function p(){let a=(0,k.useRouter)(),{data:b}=(0,l.uG)(),[c,e]=(0,g.useState)(!1),[f,h]=(0,g.useState)(""),[i,j]=(0,g.useState)(0),p=(0,g.useRef)(null),q=(0,g.useMemo)(()=>(b||[]).filter(a=>!!a.lastOpenedAt).sort(o).slice(0,5),[b]),r=(0,g.useMemo)(()=>{let a=f.trim().toLowerCase();return a?q.filter(b=>{let c=(0,m.iu)(b).toLowerCase(),d=b.path.toLowerCase();return c.includes(a)||d.includes(a)}):q},[f,q]),s=(0,g.useCallback)(()=>{e(!1),h(""),j(0)},[]),t=0===r.length?-1:Math.min(i,r.length-1),u=(0,g.useCallback)(b=>{s(),a.push(`/workspace?path=${encodeURIComponent(b)}`)},[s,a]);return((0,n.v)(c,s),c)?(0,d.jsx)("div",{className:"fixed inset-0 z-50 bg-black/40 px-4 py-16",onMouseDown:s,role:"dialog","aria-modal":"true","aria-label":"Command palette",children:(0,d.jsxs)("div",{className:"mx-auto w-full max-w-2xl overflow-hidden rounded-xl border border-base-300 bg-base-100 shadow-2xl",onMouseDown:a=>a.stopPropagation(),children:[(0,d.jsx)("div",{className:"border-b border-base-300 p-3",children:(0,d.jsx)("input",{ref:p,type:"text",value:f,onChange:a=>{h(a.target.value),j(0)},onKeyDown:a=>{if("ArrowDown"===a.key){a.preventDefault(),r.length>0&&j(a=>(a+1)%r.length);return}if("ArrowUp"===a.key){a.preventDefault(),r.length>0&&j(a=>a<=0?r.length-1:a-1);return}if("Enter"===a.key){a.preventDefault();let b=t>=0?r[t]:null;b&&u(b.path)}},placeholder:"Type a command...",className:"input input-ghost w-full text-base focus:outline-none"})}),(0,d.jsxs)("div",{className:"max-h-80 overflow-y-auto py-2",children:[(0,d.jsx)("div",{className:"px-4 pb-2 text-xs font-semibold uppercase tracking-wider opacity-60",children:"Recent repositories"}),0===q.length&&(0,d.jsx)("div",{className:"px-4 py-6 text-sm opacity-60",children:"No recently opened repositories yet."}),q.length>0&&0===r.length&&(0,d.jsx)("div",{className:"px-4 py-6 text-sm opacity-60",children:"No matching repositories."}),r.map((a,b)=>{let c=(0,m.iu)(a);return(0,d.jsxs)("button",{type:"button",className:(0,m.cn)("flex w-full items-center justify-between gap-4 px-4 py-3 text-left",t===b?"bg-base-200":"hover:bg-base-200/70"),onMouseEnter:()=>j(b),onClick:()=>u(a.path),children:[(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("div",{className:"truncate text-sm font-medium",children:c}),(0,d.jsx)("div",{className:"truncate text-xs opacity-65",children:a.path})]}),(0,d.jsx)("span",{className:"text-xs opacity-60",children:"Open"})]},a.path)})]}),(0,d.jsx)("div",{className:"border-t border-base-300 px-4 py-2 text-xs opacity-60",children:"Use ↑ ↓ to navigate, Enter to open, Esc to close."})]})}):null}function q({children:a}){let[b]=(0,g.useState)(()=>new e.E);return(0,d.jsx)(f.Ht,{client:b,children:(0,d.jsxs)(h.N,{attribute:"data-theme",defaultTheme:"system",enableSystem:!0,children:[a,(0,d.jsx)(p,{}),(0,d.jsx)(j,{})]})})}},61135:()=>{},61384:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95547,23)),Promise.resolve().then(c.t.bind(c,15098,23)),Promise.resolve().then(c.t.bind(c,47644,23)),Promise.resolve().then(c.t.bind(c,33859,23)),Promise.resolve().then(c.t.bind(c,98099,23)),Promise.resolve().then(c.t.bind(c,16237,23)),Promise.resolve().then(c.t.bind(c,98562,23)),Promise.resolve().then(c.t.bind(c,36675,23))},76537:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>k,metadata:()=>j});var d=c(5735),e=c(70210),f=c.n(e),g=c(30084),h=c.n(g);c(61135);var i=c(24709);let j={title:"Trident",description:"Git repository management tool"};function k({children:a}){return(0,d.jsxs)("html",{lang:"en",suppressHydrationWarning:!0,children:[(0,d.jsx)("head",{children:(0,d.jsx)("link",{rel:"stylesheet",href:"https://cdn.jsdelivr.net/gh/iconoir-icons/iconoir@main/css/iconoir.css"})}),(0,d.jsx)("body",{className:`${f().variable} ${h().variable} antialiased`,children:(0,d.jsx)(i.Providers,{children:a})})]})}},76567:(a,b,c)=>{Promise.resolve().then(c.bind(c,24709))},78162:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e});var d=c(88868);let e=async a=>[{type:"image/png",sizes:"256x256",url:(0,d.fillMetadataSegment)(".",await a.params,"icon.png")+"?91e8b75214a43d69"}]},78335:()=>{},96487:()=>{},98550:(a,b,c)=>{"use strict";c.d(b,{v:()=>e});var d=c(67484);function e(a,b,c){(0,d.useRef)(b),(0,d.useRef)(c)}}};
1
+ exports.id=764,exports.ids=[764],exports.modules={3403:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>u});var d=c(48249),e=c(7351),f=c(5023),g=c(67484),h=c(8696),i=c(43381);function j(){let{toasts:a}=(0,i.dj)(),[b,c]=(0,g.useState)(!1);return b?(0,d.jsx)("div",{className:"toast toast-bottom toast-end z-50 p-4 gap-2",children:a.map(a=>{let b="alert-info";return"success"===a.type?b="alert-success":"warning"===a.type||"warning"===a.variant?b="alert-warning":("error"===a.type||"destructive"===a.variant)&&(b="alert-error"),(0,d.jsxs)("div",{className:`alert ${b} shadow-lg max-w-md w-auto flex-col items-start gap-1 p-3 text-sm animate-in fade-in slide-in-from-bottom-2 duration-300`,children:[(0,d.jsxs)("div",{className:"w-full",children:[a.title&&(0,d.jsx)("h3",{className:"font-bold",children:a.title}),a.description&&(0,d.jsx)("div",{className:"opacity-90 break-words",children:a.description})]}),a.action&&(0,d.jsx)("div",{className:"mt-2 w-full",children:a.action})]},a.id)})}):null}var k=c(19099),l=c(54626),m=c(14490),n=c(98550);function o(a,b){return new Date(b.lastOpenedAt||0).getTime()-new Date(a.lastOpenedAt||0).getTime()}function p(){let a=(0,k.useRouter)(),{data:b}=(0,l.uG)(),[c,e]=(0,g.useState)(!1),[f,h]=(0,g.useState)(""),[i,j]=(0,g.useState)(0),p=(0,g.useRef)(null),q=(0,g.useMemo)(()=>(b||[]).filter(a=>!!a.lastOpenedAt).sort(o).slice(0,5),[b]),r=(0,g.useMemo)(()=>{let a=f.trim().toLowerCase();return a?q.filter(b=>{let c=(0,m.iu)(b).toLowerCase(),d=b.path.toLowerCase();return c.includes(a)||d.includes(a)}):q},[f,q]),s=(0,g.useCallback)(()=>{e(!1),h(""),j(0)},[]),t=0===r.length?-1:Math.min(i,r.length-1),u=(0,g.useCallback)(b=>{s(),a.push(`/workspace?path=${encodeURIComponent(b)}`)},[s,a]);return((0,n.v)(c,s),c)?(0,d.jsx)("div",{className:"fixed inset-0 z-50 bg-black/40 px-4 py-16",onMouseDown:s,role:"dialog","aria-modal":"true","aria-label":"Command palette",children:(0,d.jsxs)("div",{className:"mx-auto w-full max-w-2xl overflow-hidden rounded-xl border border-base-300 bg-base-100 shadow-2xl",onMouseDown:a=>a.stopPropagation(),children:[(0,d.jsx)("div",{className:"border-b border-base-300 p-3",children:(0,d.jsx)("input",{ref:p,type:"text",value:f,onChange:a=>{h(a.target.value),j(0)},onKeyDown:a=>{if("ArrowDown"===a.key){a.preventDefault(),r.length>0&&j(a=>(a+1)%r.length);return}if("ArrowUp"===a.key){a.preventDefault(),r.length>0&&j(a=>a<=0?r.length-1:a-1);return}if("Enter"===a.key){a.preventDefault();let b=t>=0?r[t]:null;b&&u(b.path)}},placeholder:"Type a command...",className:"input input-ghost w-full text-base focus:outline-none"})}),(0,d.jsxs)("div",{className:"max-h-80 overflow-y-auto py-2",children:[(0,d.jsx)("div",{className:"px-4 pb-2 text-xs font-semibold uppercase tracking-wider opacity-60",children:"Recent repositories"}),0===q.length&&(0,d.jsx)("div",{className:"px-4 py-6 text-sm opacity-60",children:"No recently opened repositories yet."}),q.length>0&&0===r.length&&(0,d.jsx)("div",{className:"px-4 py-6 text-sm opacity-60",children:"No matching repositories."}),r.map((a,b)=>{let c=(0,m.iu)(a);return(0,d.jsxs)("button",{type:"button",className:(0,m.cn)("flex w-full items-center justify-between gap-4 px-4 py-3 text-left",t===b?"bg-base-200":"hover:bg-base-200/70"),onMouseEnter:()=>j(b),onClick:()=>u(a.path),children:[(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsx)("div",{className:"truncate text-sm font-medium",children:c}),(0,d.jsx)("div",{className:"truncate text-xs opacity-65",children:a.path})]}),(0,d.jsx)("span",{className:"text-xs opacity-60",children:"Open"})]},a.path)})]}),(0,d.jsx)("div",{className:"border-t border-base-300 px-4 py-2 text-xs opacity-60",children:"Use ↑ ↓ to navigate, Enter to open, Esc to close."})]})}):null}var q=c(16772);function r(){let{executions:a,openModal:b,cancelScript:c,dismissExecution:e}=(0,q.C)(),f=a.filter(a=>!a.isModalOpen);return 0===f.length?null:(0,d.jsx)("div",{className:"fixed bottom-4 right-4 z-40 flex flex-col gap-2 max-w-sm pointer-events-none",children:f.map(a=>{let f="starting"===a.status||"running"===a.status;return(0,d.jsxs)("div",{className:(0,m.cn)("pointer-events-auto bg-base-100 shadow-xl border rounded-lg p-3 w-84 text-xs transition-all flex flex-col gap-2",f?"border-primary/40 shadow-primary/5":"border-base-300"),children:[(0,d.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsx)("div",{className:"font-semibold truncate text-sm",title:a.scriptName,children:a.scriptName}),(0,d.jsxs)("div",{className:"text-[11px] opacity-60 truncate mt-0.5 flex items-center gap-1.5",title:`${(0,m.kj)(a.repoPath)} • ${a.branchRef}`,children:[(0,d.jsx)("span",{className:"font-medium text-base-content/80 truncate max-w-[120px]",children:(0,m.kj)(a.repoPath)}),(0,d.jsx)("span",{children:"•"}),(0,d.jsx)("span",{className:"truncate",children:a.branchRef})]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-1.5 shrink-0",children:[(0,d.jsxs)("span",{className:(0,m.cn)("badge badge-xs font-medium",f?"badge-info animate-pulse":"completed"===a.status?"badge-success":"failed"===a.status?"badge-error":"canceled"===a.status?"badge-warning":"badge-ghost"),children:[f&&(0,d.jsx)("span",{className:"loading loading-spinner loading-xs mr-1 scale-75"}),a.status]}),!f&&(0,d.jsx)("button",{className:"btn btn-ghost btn-xs btn-circle text-base-content/60 hover:text-base-content",onClick:()=>e(a.id),title:"Dismiss","aria-label":"Dismiss",children:(0,d.jsx)("i",{className:"iconoir-xmark text-[14px]","aria-hidden":"true"})})]})]}),(0,d.jsxs)("div",{className:"flex items-center justify-between gap-2 pt-1 border-t border-base-200",children:[(0,d.jsxs)("button",{type:"button",className:"btn btn-ghost btn-xs gap-1 font-normal text-xs",onClick:()=>b(a.id),title:"View terminal logs",children:[(0,d.jsx)("i",{className:"iconoir-open-new-window text-[13px]","aria-hidden":"true"}),"View Logs"]}),(0,d.jsx)("div",{className:"flex items-center gap-1",children:f&&(0,d.jsx)(d.Fragment,{children:a.isCanceling?(0,d.jsxs)("button",{type:"button",className:"btn btn-error btn-xs",onClick:()=>void c(a.id,!0),title:"Force kill process immediately",children:[(0,d.jsx)("span",{className:"loading loading-spinner loading-xs mr-1 scale-75"}),"Force Kill"]}):(0,d.jsxs)("button",{type:"button",className:"btn btn-warning btn-xs gap-1",onClick:()=>void c(a.id,!1),title:"Stop process",children:[(0,d.jsx)("i",{className:"iconoir-square text-[11px]","aria-hidden":"true"}),"Stop"]})})})]})]},a.id)})})}async function s(a){try{return await navigator.clipboard.writeText(a),!0}catch{let b=document.createElement("textarea");b.value=a,b.style.position="fixed",b.style.left="-9999px",document.body.appendChild(b),b.select();try{return document.execCommand("copy"),!0}catch{return!1}finally{document.body.removeChild(b)}}}function t(){let{activeModalExecution:a,minimizeModal:b,cancelScript:c,dismissExecution:e}=(0,q.C)(),[f,h]=(0,g.useState)(!1),[i,j]=(0,g.useState)(!1),k=(0,g.useRef)(null),l=(0,g.useCallback)(async()=>{if(!a||i)return;j(!0);let b=await s(a.output);j(!1),h(b),b&&setTimeout(()=>h(!1),1500)},[a,i]);if(!a)return null;let n="starting"===a.status||"running"===a.status,o="completed"===a.status||"failed"===a.status||"canceled"===a.status;return(0,d.jsxs)("dialog",{className:"modal modal-open z-50",children:[(0,d.jsxs)("div",{className:"modal-box max-w-4xl max-h-[85vh] flex flex-col",children:[(0,d.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,d.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,d.jsxs)("h3",{className:"font-bold text-lg truncate",children:["Custom Script: ",a.scriptName]}),(0,d.jsxs)("div",{className:"text-xs opacity-70 mt-1 flex flex-wrap items-center gap-x-2 gap-y-0.5",children:[(0,d.jsxs)("span",{children:["Repo: ",(0,d.jsx)("strong",{className:"font-medium text-base-content/90",title:a.repoPath,children:(0,m.kj)(a.repoPath)})]}),(0,d.jsx)("span",{children:"•"}),(0,d.jsxs)("span",{className:"break-all",children:["Ref: ",a.branchRef]})]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[(0,d.jsxs)("span",{className:(0,m.cn)("badge badge-sm shrink-0",n?"badge-info":"completed"===a.status?"badge-success":"failed"===a.status?"badge-error":"canceled"===a.status?"badge-warning":"badge-ghost"),children:[n&&(0,d.jsx)("span",{className:"loading loading-spinner loading-xs mr-1"}),a.status]}),(0,d.jsx)("button",{className:"btn btn-ghost btn-xs btn-circle",onClick:b,title:"Minimize to bottom-right corner","aria-label":"Minimize",children:(0,d.jsx)("i",{className:"iconoir-minus text-[16px]","aria-hidden":"true"})})]})]}),(0,d.jsx)("div",{className:"mt-4 border border-base-300 rounded bg-base-200/40 flex-1 overflow-hidden flex flex-col",children:(0,d.jsx)("pre",{ref:k,className:"p-3 font-mono text-xs overflow-auto max-h-[50vh] whitespace-pre-wrap break-words flex-1",children:a.output||"Waiting for output..."})}),a.error&&(0,d.jsx)("div",{className:"alert alert-error py-2 mt-3 text-xs",children:(0,d.jsx)("span",{children:a.error})}),(0,d.jsxs)("div",{className:"modal-action mt-4 flex items-center justify-between",children:[(0,d.jsxs)("button",{type:"button",className:"btn btn-ghost btn-sm gap-1.5",onClick:b,title:"Minimize dialog and keep running in bottom right",children:[(0,d.jsx)("i",{className:"iconoir-minus text-[14px]","aria-hidden":"true"}),"Dock / Minimize"]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[n&&(0,d.jsx)(d.Fragment,{children:a.isCanceling?(0,d.jsxs)("button",{type:"button",className:"btn btn-error btn-sm",onClick:()=>void c(a.id,!0),title:"Force terminate immediately",children:[(0,d.jsx)("span",{className:"loading loading-spinner loading-xs mr-1"}),"Force Kill"]}):(0,d.jsx)("button",{type:"button",className:"btn btn-warning btn-sm",onClick:()=>void c(a.id,!1),children:"Cancel"})}),(0,d.jsxs)("button",{type:"button",className:"btn btn-outline btn-sm",onClick:()=>void l(),disabled:i,children:[i&&(0,d.jsx)("span",{className:"loading loading-spinner loading-xs mr-1"}),f?"Copied":"Copy"]}),o?(0,d.jsx)("button",{type:"button",className:"btn btn-primary btn-sm",onClick:()=>{e(a.id)},children:"Done"}):(0,d.jsx)("button",{type:"button",className:"btn btn-neutral btn-sm",onClick:b,children:"Hide"})]})]})]}),(0,d.jsx)("form",{method:"dialog",className:"modal-backdrop",children:(0,d.jsx)("button",{type:"button",onClick:a=>{a.preventDefault(),b()},children:"close"})})]})}function u({children:a}){let[b]=(0,g.useState)(()=>new e.E);return(0,d.jsx)(f.Ht,{client:b,children:(0,d.jsx)(h.N,{attribute:"data-theme",defaultTheme:"system",enableSystem:!0,children:(0,d.jsxs)(q.k,{children:[a,(0,d.jsx)(p,{}),(0,d.jsx)(j,{}),(0,d.jsx)(r,{}),(0,d.jsx)(t,{})]})})})}},4591:(a,b,c)=>{Promise.resolve().then(c.bind(c,3403))},14490:(a,b,c)=>{"use strict";c.d(b,{L9:()=>q,cn:()=>f,iu:()=>h,kO:()=>n,kj:()=>g,tq:()=>p,u:()=>o});var d=c(99314),e=c(96862);function f(...a){return(0,e.QP)((0,d.$)(a))}function g(a){let b=a.replace(/[\\/]+$/,"").split(/[/\\]/).filter(Boolean);return b[b.length-1]||a}function h(a){let b=a.displayName?.trim();return b||(a.name?.trim()?a.name:g(a.path))}function i(a){if(!a)return"";let b=a.split("/").pop()||"",c=b.lastIndexOf(".");return -1===c||0===c?b.toLowerCase():b.slice(c+1).toLowerCase()}let j=new Set(["js","jsx","ts","tsx","mjs","cjs","mts","cts","py","pyw","pyi","pyx","rb","rake","gemspec","java","kt","kts","scala","sc","groovy","gradle","c","h","cpp","cc","cxx","hpp","hh","hxx","c++","h++","cs","fs","fsx","fsi","go","rs","swift","dart","zig","nim","v","odin","php","phtml","php3","php4","php5","php7","phps","pl","pm","pod","t","psgi","lua","tcl","r","R","jl","ex","exs","erl","hrl","clj","cljs","cljc","edn","lisp","lsp","el","scm","ss","rkt","hs","lhs","elm","purs","ml","mli","f90","f95","f03","f08","for","asm","s","S","vhd","vhdl","v","sv","svh","bas","vb","vbs","vba","pas","pp","inc","dpr","dpk","sh","bash","zsh","fish","ksh","csh","tcsh","ps1","psm1","psd1","bat","cmd","html","htm","xhtml","shtml","css","scss","sass","less","styl","stylus","pcss","postcss","svg","xml","xsl","xslt","xsd","dtd","rss","atom","rdf","wsdl","soap","vue","svelte","astro","mdx","hbs","handlebars","mustache","ejs","pug","jade","haml","slim","erb","graphql","gql","json","json5","jsonc","jsonl","ndjson","geojson","yaml","yml","toml","ini","cfg","conf","config","properties","env","csv","tsv","psv","txt","text","log","out","md","markdown","mdown","mkd","mkdn","mdwn","rst","rest","adoc","asciidoc","asc","org","tex","latex","ltx","bib","sty","cls","rtf","diff","patch","gitignore","gitattributes","gitmodules","gitconfig","dockerignore","dockerfile","containerfile","editorconfig","prettierrc","eslintrc","babelrc","stylelintrc","browserslistrc","npmrc","nvmrc","yarnrc","pnpmfile","makefile","mk","cmake","make","mak","rake","podfile","gemfile","fastfile","sql","plsql","pgsql","mysql","sqlite","hql","cql","proto","protobuf","thrift","avro","capnp","fbs","flatc","tf","tfvars","hcl","nomad","sentinel","prisma","graphqls","lock"]),k=new Set(["jpg","jpeg","png","gif","bmp","ico","icns","tiff","tif","webp","avif","heic","heif","psd","ai","eps","raw","cr2","nef","orf","sr2","dng","mp4","avi","mov","wmv","flv","mkv","webm","m4v","mpeg","mpg","3gp","3g2","ogv","mp3","wav","ogg","oga","flac","aac","m4a","wma","aiff","aif","mid","midi","opus","zip","rar","7z","tar","gz","bz2","xz","lz","lzma","lz4","zst","cab","iso","dmg","exe","dll","so","dylib","a","lib","obj","o","app","msi","deb","rpm","apk","ipa","pkg","snap","flatpak","appimage","class","jar","war","ear","pyc","pyo","pyd","beam","wasm","wat","pdf","doc","docx","xls","xlsx","ppt","pptx","odt","ods","odp","pages","numbers","key","ttf","otf","woff","woff2","eot","fon","fnt","db","sqlite","sqlite3","mdb","accdb","frm","myd","myi","ibd","bin","dat","data","sav","bak","swf","fla","blend","fbx","obj","stl","gltf","glb","3ds","dae","ply","sketch","fig","xd","unity","unitypackage","asset","prefab","meta"]),l=new Set(["png","jpg","jpeg","gif","bmp","ico","icns","tiff","tif","webp","avif","heic","heif","svg"]);function m(a){if(!a)return!1;if(a.includes("\0"))return!0;let b=a.slice(0,8192),c=0;for(let a=0;a<b.length;a++){let d=b.charCodeAt(a);d<32&&9!==d&&10!==d&&13!==d&&c++}return b.length>0&&c/b.length>.1}function n(a,b,c){let d=function(a){if(!a)return"unknown";let b=i(a);return j.has(b)?"text":k.has(b)?"binary":"unknown"}(a);return"binary"===d||"text"!==d&&(m(b||"")||m(c||""))}function o(a){return l.has(i(a))}function p(a){return a?a.split("\n").reduce((a,b)=>b.startsWith("+++ ")||b.startsWith("--- ")?a:b.startsWith("+")||b.startsWith("-")?a+1:a,0):0}function q(a){return a.replace(/[\s~^:?*\[\]\\@{}<>|"'`!#$%&()+=;,]/g,"-").replace(/\.{2,}/g,"-").replace(/\/{2,}/g,"/").replace(/-{2,}/g,"-")}},16772:(a,b,c)=>{"use strict";c.d(b,{C:()=>i,k:()=>h});var d=c(48249),e=c(67484),f=c(5023);let g=(0,e.createContext)(null);function h({children:a}){(0,f.jE)();let[b,c]=(0,e.useState)([]),h=(0,e.useRef)(b);h.current=b;let i=(0,e.useCallback)(async({repoPath:a,branchRef:b,script:d})=>{let e=`temp-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,f={id:e,repoPath:a,branchRef:b,scriptName:d.name,scriptContent:d.content,status:"starting",output:"",error:null,startedAt:new Date().toISOString(),finishedAt:null,isCanceling:!1,isForceCanceling:!1,isModalOpen:!0};c(a=>[...a.map(a=>a.isModalOpen?{...a,isModalOpen:!1}:a),f]);try{let f=await fetch("/api/custom-scripts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:"start",repoPath:a,branchRef:b,scriptName:d.name,scriptContent:d.content})}),g=await f.json();if(!f.ok)throw Error(g.error||"Failed to start script execution");let h=[];return g.previousBranch&&g.checkedOutBranch&&g.previousBranch!==g.checkedOutBranch&&h.push(`[info] Checked out ${g.checkedOutBranch} (from ${g.previousBranch})`),c(a=>a.map(a=>a.id===e?{...a,id:g.executionId,output:[h.join("\n"),g.output].filter(Boolean).join("\n"),status:g.status,error:null}:a)),g.executionId}catch(b){let a=b.message||"Failed to start script";return c(b=>b.map(b=>b.id===e?{...b,status:"failed",error:a,output:b.output?`${b.output}
2
+ [error] ${a}`:`[error] ${a}`,finishedAt:new Date().toISOString()}:b)),e}},[]),j=(0,e.useCallback)(async(a,b)=>{if(h.current.find(b=>b.id===a)){c(c=>c.map(c=>c.id===a?{...c,isCanceling:!0,isForceCanceling:!!b||c.isForceCanceling}:c));try{let d=await fetch("/api/custom-scripts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:"cancel",executionId:a,force:!!b})}),e=await d.json();if(!d.ok)throw Error(e.error||"Failed to cancel script");c(b=>b.map(b=>{if(b.id===a){let a=e.status;return{...b,output:e.output,status:a,isCanceling:"running"===a||"starting"===a,isForceCanceling:!1,finishedAt:e.finishedAt||b.finishedAt}}return b}))}catch(b){c(c=>c.map(c=>c.id===a?{...c,isCanceling:!1,isForceCanceling:!1,output:`${c.output}
3
+ [error] ${b.message}`}:c))}}},[]),k=(0,e.useCallback)(a=>{c(b=>b.map(b=>({...b,isModalOpen:b.id===a})))},[]),l=(0,e.useCallback)(()=>{c(a=>a.map(a=>a.isModalOpen?{...a,isModalOpen:!1}:a))},[]),m=(0,e.useCallback)(a=>{c(b=>b.filter(b=>b.id!==a)),a.startsWith("temp-")||fetch("/api/custom-scripts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:"dismiss",executionId:a})}).catch(()=>{})},[]),n=(0,e.useMemo)(()=>b.find(a=>a.isModalOpen)||null,[b]);return(0,d.jsx)(g.Provider,{value:{executions:b,activeModalExecution:n,startScript:i,cancelScript:j,openModal:k,minimizeModal:l,dismissExecution:m},children:a})}function i(){let a=(0,e.useContext)(g);if(!a)throw Error("useCustomScriptExecution must be used within a CustomScriptExecutionProvider");return a}},23048:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81921,23))},24709:(a,b,c)=>{"use strict";c.d(b,{Providers:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call Providers() from the server but Providers is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/trident/trident/src/app/providers.tsx","Providers")},24936:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,81921,23)),Promise.resolve().then(c.t.bind(c,60440,23)),Promise.resolve().then(c.t.bind(c,84342,23)),Promise.resolve().then(c.t.bind(c,82265,23)),Promise.resolve().then(c.t.bind(c,35421,23)),Promise.resolve().then(c.t.bind(c,61335,23)),Promise.resolve().then(c.t.bind(c,70664,23)),Promise.resolve().then(c.bind(c,74661))},36200:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95547,23))},43381:(a,b,c)=>{"use strict";c.d(b,{dj:()=>o,oR:()=>n,tk:()=>p});var d=c(67484);let e=5e3;async function f(a){try{return await navigator.clipboard.writeText(a),!0}catch{let b=document.createElement("textarea");b.value=a,b.style.position="fixed",b.style.left="-9999px",document.body.appendChild(b),b.select();try{return document.execCommand("copy"),!0}catch{return!1}finally{document.body.removeChild(b)}}}let g=0;function h(){return(g=(g+1)%Number.MAX_SAFE_INTEGER).toString()}let i=new Map,j=(a,b=e)=>{if(i.has(a))return;let c=setTimeout(()=>{i.delete(a),m({type:"REMOVE_TOAST",toastId:a})},b);i.set(a,c)},k=[],l={toasts:[]};function m(a){l=((a,b)=>{switch(b.type){case"ADD_TOAST":return{...a,toasts:[b.toast,...a.toasts].slice(0,5)};case"UPDATE_TOAST":return{...a,toasts:a.toasts.map(a=>a.id===b.toast.id?{...a,...b.toast}:a)};case"DISMISS_TOAST":{let{toastId:c}=b;return c?j(c,0):a.toasts.forEach(a=>{j(a.id,0)}),{...a,toasts:a.toasts.filter(a=>a.id!==c&&void 0!==c)}}case"REMOVE_TOAST":if(void 0===b.toastId)return{...a,toasts:[]};return{...a,toasts:a.toasts.filter(a=>a.id!==b.toastId)}}})(l,a),k.forEach(a=>{a(l)})}function n(a){let b=h();return m({type:"ADD_TOAST",toast:{...a,id:b}}),j(b,a.duration||e),{id:b,dismiss:()=>m({type:"DISMISS_TOAST",toastId:b}),update:a=>m({type:"UPDATE_TOAST",toast:{...a,id:b}})}}function o(){let[a,b]=d.useState(l);return d.useEffect(()=>(k.push(b),()=>{let a=k.indexOf(b);a>-1&&k.splice(a,1)}),[a]),{...a,toast:n,dismiss:a=>m({type:"DISMISS_TOAST",toastId:a})}}function p(a,b={}){let c="string"==typeof a?a:a.message,e=b.title||(b.operation?`${b.operation} Failed`:"Git Operation Failed"),g=h();return n({type:"error",title:e,description:d.createElement(()=>{let[a,e]=d.useState(!1),[h,i]=d.useState(!1),j=async a=>{a.stopPropagation(),await f(c)&&(e(!0),setTimeout(()=>e(!1),2e3))},k=async a=>{if(a.stopPropagation(),b.onFix){i(!0);try{await b.onFix(),m({type:"DISMISS_TOAST",toastId:g})}catch(a){console.error("Fix failed",a),i(!1)}}};return d.createElement("div",{className:"mt-2 space-y-3"},d.createElement("div",{className:"max-h-[120px] overflow-y-auto whitespace-pre-wrap font-mono text-[11px] leading-relaxed bg-black/20 p-3 rounded-md break-all text-error-content/90 border border-error-content/20"},c),d.createElement("div",{className:"flex gap-2"},d.createElement("button",{onClick:j,type:"button",className:`btn btn-xs ${a?"btn-success text-white":"bg-white/20 hover:bg-white/30 text-white border-white/20"}`},a?"Copied!":"Copy Error"),b.onFix?d.createElement("button",{onClick:k,type:"button",disabled:h,className:"btn btn-xs btn-warning text-white"},h?"Fixing...":b.fixLabel||"Fix Issue"):null))}),duration:1e4}),{id:g,dismiss:()=>m({type:"DISMISS_TOAST",toastId:g})}}},54626:(a,b,c)=>{"use strict";c.d(b,{F3:()=>n,F7:()=>s,GK:()=>m,Jy:()=>z,Lp:()=>p,Ud:()=>B,X0:()=>q,Y5:()=>k,_6:()=>v,_X:()=>u,a3:()=>F,b5:()=>t,cT:()=>A,en:()=>r,fr:()=>o,gg:()=>x,st:()=>y,t0:()=>j,uG:()=>l,xV:()=>w});var d=c(67484),e=c(80434),f=c(5023),g=c(73241),h=c(43381);let i="/api";function j(){return(0,e.I)({queryKey:["settings"],queryFn:async()=>{let a=await fetch(`${i}/settings`);if(!a.ok)throw Error("Failed to fetch settings");return a.json()}})}function k(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async a=>{let b=await fetch(`${i}/settings`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!b.ok)throw Error("Failed to update settings");return b.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["settings"]})}})}function l(){return(0,e.I)({queryKey:["repos"],queryFn:async()=>{let a=await fetch(`${i}/repos`);if(!a.ok)throw Error("Failed to fetch repositories");return a.json()}})}function m(a){let{data:b}=l();return(0,d.useMemo)(()=>b?.find(b=>b.path===a)||null,[b,a])}function n(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async({path:a,name:b,initializeIfNeeded:c})=>{let d=await fetch(`${i}/repos`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a,name:b,initializeIfNeeded:c})});if(!d.ok)throw Error((await d.json().catch(()=>({}))).error||"Failed to add repository");return d.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["repos"]})}})}function o(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async a=>{let b=await fetch(`${i}/repos/clone`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Failed to clone repository");return c},onSuccess:()=>{a.invalidateQueries({queryKey:["repos"]})}})}function p(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async({path:a,updates:b})=>{let c=await fetch(`${i}/repos`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a,updates:b})});if(!c.ok)throw Error(await c.text());return c.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["repos"]})}})}function q(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async({path:a,deleteLocalFolder:b=!1})=>{let c=await fetch(`${i}/repos`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:a,deleteLocalFolder:b})});if(!c.ok)throw Error(await c.text());return c.json()},onSuccess:()=>{a.invalidateQueries({queryKey:["repos"]})}})}function r(a){return(0,e.I)({queryKey:["git",a,"status"],queryFn:async()=>{if(!a)return null;let b=await fetch(`${i}/git/status?path=${encodeURIComponent(a)}`);if(!b.ok){let a=Error((await b.json().catch(()=>({}))).error||"Failed to fetch status");throw a.status=b.status,a}return b.json()},enabled:!!a,refetchOnWindowFocus:!0,refetchOnReconnect:!0,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function s(a){return(0,e.I)({queryKey:["git",a,"conflict-state"],queryFn:async()=>{if(!a)return{operation:null,conflictedFiles:[],hasConflicts:!1,canContinue:!1};let b=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"get-conflict-state"})});if(!b.ok){let a=Error((await b.json().catch(()=>({}))).error||"Failed to fetch conflict state");throw a.status=b.status,a}let c=await b.json();return{operation:c.operation??null,conflictedFiles:c.conflictedFiles??[],hasConflicts:!!c.hasConflicts,canContinue:!!c.canContinue}},enabled:!!a,refetchOnWindowFocus:!0,refetchOnReconnect:!0,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function t(a,b){return(0,e.I)({queryKey:["git",a,"conflict-file-versions",b],queryFn:async()=>{if(!a||!b)return{ours:"",theirs:"",current:""};let c=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"get-conflict-file-versions",data:{path:b}})});if(!c.ok){let a=Error((await c.json().catch(()=>({}))).error||"Failed to fetch conflict file versions");throw a.status=c.status,a}let d=await c.json();return{ours:"string"==typeof d.ours?d.ours:"",theirs:"string"==typeof d.theirs?d.theirs:"",current:"string"==typeof d.current?d.current:""}},enabled:!!a&&!!b,refetchOnWindowFocus:!0,refetchOnReconnect:!0,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function u(a,b=50){return(0,e.I)({queryKey:["git",a,"log",b],queryFn:async()=>{if(!a)return null;let c=await fetch(`${i}/git/log?path=${encodeURIComponent(a)}&limit=${b}`);if(!c.ok){let a=Error((await c.json().catch(()=>({}))).error||"Failed to fetch log");throw a.status=c.status,a}return c.json()},enabled:!!a,placeholderData:a=>a,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function v(a){return(0,e.I)({queryKey:["git",a,"branches"],queryFn:async()=>{if(!a)return null;let b=await fetch(`${i}/git/branches?path=${encodeURIComponent(a)}`);if(!b.ok)throw Error("Failed to fetch branches");return b.json()},enabled:!!a})}function w(a,b){return(0,e.I)({queryKey:["git",a,"diff",b],queryFn:async()=>{if(!a||!b)return null;let c=await fetch(`${i}/git/diff?path=${encodeURIComponent(a)}&file=${encodeURIComponent(b)}`);if(!c.ok){let a=Error((await c.json().catch(()=>({}))).error||"Failed to fetch diff");throw a.status=c.status,a}return c.json()},enabled:!!a&&!!b,retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function x(a,b){let c=b.commitHash??null,d=b.fromCommitHash??null,f=b.toCommitHash??null,g=!!d&&!!f,h=!!c;return(0,e.I)({queryKey:["git",a,"commit-diff",c,d,f],queryFn:async()=>{if(!a||!h&&!g)return null;let b=new URLSearchParams({path:a});h?b.set("commit",c):g&&(b.set("from",d),b.set("to",f));let e=await fetch(`${i}/git/diff?${b.toString()}`);if(!e.ok){let a=Error((await e.json().catch(()=>({}))).error||"Failed to fetch commit diff");throw a.status=e.status,a}return e.json()},enabled:!!a&&(h||g),retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function y(a,b,c){let d=c.commitHash??null,f=c.fromCommitHash??null,g=c.toCommitHash??null,h=!!f&&!!g,j=!!d;return(0,e.I)({queryKey:["git",a,"commit-file-diff",b,d,f,g],queryFn:async()=>{if(!a||!b||!j&&!h)return null;let c=new URLSearchParams({path:a,file:b});j?c.set("commit",d):h&&(c.set("from",f),c.set("to",g));let e=await fetch(`${i}/git/diff?${c.toString()}`);if(!e.ok){let a=Error((await e.json().catch(()=>({}))).error||"Failed to fetch file diff");throw a.status=e.status,a}return e.json()},enabled:!!a&&!!b&&(j||h),retry:(a,b)=>404!==b.status&&400!==b.status&&a<3})}function z(a){return(0,e.I)({queryKey:["git",a,"stashes"],queryFn:async()=>{if(!a)return[];let b=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"stash-list"})});if(!b.ok)throw Error("Failed to fetch stashes");return(await b.json()).stashes||[]},enabled:!!a})}function A(a,b){return(0,e.I)({queryKey:["git",a,"stash-files",b],queryFn:async()=>{if(!a||null===b)return[];let c=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"stash-files",data:{index:b}})});if(!c.ok)throw Error("Failed to fetch stash files");return(await c.json()).files||[]},enabled:!!a&&null!==b})}function B(a,b,c){return(0,e.I)({queryKey:["git",a,"stash-file-diff",b,c],queryFn:async()=>{if(!a||null===b||!c)return{left:"",right:"",diff:""};let d=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"stash-file-diff",data:{index:b,file:c}})});if(!d.ok)throw Error("Failed to fetch stash file diff");return d.json()},enabled:!!a&&null!==b&&!!c})}let C={commit:"Commit",push:"Push",pull:"Pull",fetch:"Fetch",stage:"Stage",unstage:"Unstage",checkout:"Checkout","checkout-to-local":"Checkout",branch:"Create Branch","create-tag":"Create Tag","delete-branch":"Delete Branch","delete-worktree":"Delete Worktree","delete-remote-branch":"Delete Remote Branch","delete-remote":"Delete Remote","delete-tag":"Delete Tag","delete-remote-tag":"Delete Remote Tag","rename-branch":"Rename Branch","rename-remote-branch":"Rename Remote Branch","rename-remote":"Rename Remote","add-remote":"Add Remote",reset:"Reset",revert:"Revert Commit","cherry-pick":"Cherry Pick","cherry-pick-multiple":"Cherry Pick","cherry-pick-abort":"Cherry Pick",rebase:"Rebase",merge:"Merge","check-merge-conflicts":"Check Merge Conflicts","check-rebase-conflicts":"Check Rebase Conflicts","get-conflict-state":"Get Conflict State","get-conflict-file-versions":"Get Conflict File Versions","resolve-conflict-file":"Resolve Conflict File","continue-merge":"Continue Merge","abort-merge":"Abort Merge","continue-rebase":"Continue Rebase","abort-rebase":"Abort Rebase","get-remotes":"Get Remotes","get-remote-branches":"Get Remote Branches","get-tracking-branch":"Get Tracking Branch","get-latest-commit-message":"Get Latest Commit Message","push-to-remote":"Push","pull-from-remote":"Pull",stash:"Stash","stash-apply":"Apply Stash","stash-drop":"Drop Stash","stash-pop":"Pop Stash",reword:"Reword Commit",discard:"Discard Changes","cleanup-lock-file":"Cleanup Lock File"},D=["check-merge-conflicts","check-rebase-conflicts","get-conflict-state","get-conflict-file-versions","get-remotes","get-remote-branches","get-tracking-branch","get-latest-commit-message"];async function E(a){let b=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:"cleanup-lock-file"})});if(!b.ok)throw Error("Failed to cleanup lock file");return b.json()}function F(){let a=(0,f.jE)();return(0,g.n)({mutationFn:async({repoPath:a,action:b,data:c})=>{let d=await fetch(`${i}/git/action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({repoPath:a,action:b,data:c})});if(!d.ok)throw Error((await d.json()).error||"Failed to execute action");return d.json()},onSuccess:(b,c)=>{D.includes(c.action)||a.invalidateQueries({queryKey:["git",c.repoPath]})},onError:(b,c)=>{if(!D.includes(c.action)&&!c.suppressErrorToast){let d=C[c.action]||c.action;b.message.includes("Unable to create")&&b.message.includes(".git/index.lock")?(0,h.tk)(b,{operation:d,fixLabel:"Remove Lock File",onFix:async()=>{await E(c.repoPath),a.invalidateQueries({queryKey:["git",c.repoPath]})}}):(0,h.tk)(b,{operation:d})}}})}},61135:()=>{},61384:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,95547,23)),Promise.resolve().then(c.t.bind(c,15098,23)),Promise.resolve().then(c.t.bind(c,47644,23)),Promise.resolve().then(c.t.bind(c,33859,23)),Promise.resolve().then(c.t.bind(c,98099,23)),Promise.resolve().then(c.t.bind(c,16237,23)),Promise.resolve().then(c.t.bind(c,98562,23)),Promise.resolve().then(c.t.bind(c,36675,23))},76537:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>k,metadata:()=>j});var d=c(5735),e=c(70210),f=c.n(e),g=c(30084),h=c.n(g);c(61135);var i=c(24709);let j={title:"Trident",description:"Git repository management tool"};function k({children:a}){return(0,d.jsxs)("html",{lang:"en",suppressHydrationWarning:!0,children:[(0,d.jsx)("head",{children:(0,d.jsx)("link",{rel:"stylesheet",href:"https://cdn.jsdelivr.net/gh/iconoir-icons/iconoir@main/css/iconoir.css"})}),(0,d.jsx)("body",{className:`${f().variable} ${h().variable} antialiased`,children:(0,d.jsx)(i.Providers,{children:a})})]})}},76567:(a,b,c)=>{Promise.resolve().then(c.bind(c,24709))},78162:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e});var d=c(88868);let e=async a=>[{type:"image/png",sizes:"256x256",url:(0,d.fillMetadataSegment)(".",await a.params,"icon.png")+"?91e8b75214a43d69"}]},78335:()=>{},96487:()=>{},98550:(a,b,c)=>{"use strict";c.d(b,{v:()=>e});var d=c(67484);function e(a,b,c){(0,d.useRef)(b),(0,d.useRef)(c)}}};