gitpick 4.7.1 → 4.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +16 -15
  2. package/dist/index.js +14 -14
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -36,17 +36,17 @@ npx gitpick <url/shorthand> [target] [options]
36
36
  Examples:
37
37
 
38
38
  ```sh
39
- npx gitpick https://github.com/TanStack/router # repo without .git
40
- npx gitpick TanStack/router/tree/main/examples # a folder
41
- npx gitpick TanStack/router/tree/main/package.json # a file
42
-
43
- npx gitpick <url/shorthand> # default git behavior
44
- npx gitpick <url/shorthand> [target] # with optional target
45
- npx gitpick <url/shorthand> -b [branch] # a branch
46
- npx gitpick <url/shorthand> -o # overwrite if exists
47
- npx gitpick <url/shorthand> -r # clone submodules
48
- npx gitpick <url/shorthand> -w 30s # sync every 30 seconds
49
- npx gitpick https://<token>@github.com/owner/repo # private repo
39
+ npx gitpick https://github.com/TanStack/router # repo without .git
40
+ npx gitpick TanStack/router/tree/main/examples # a folder aka tree
41
+ npx gitpick TanStack/router/blob/main/README.md # a file aka blob
42
+
43
+ npx gitpick <url/shorthand> # default git behavior
44
+ npx gitpick <url/shorthand> [target] # with optional target
45
+ npx gitpick <url/shorthand> -b [branch/SHA] # branch or commit SHA
46
+ npx gitpick <url/shorthand> -o # overwrite if exists
47
+ npx gitpick <url/shorthand> -r # clone submodules
48
+ npx gitpick <url/shorthand> -w 30s # sync every 30 seconds
49
+ npx gitpick https://<token>@github.com/owner/repo # private repository
50
50
  ```
51
51
 
52
52
  <img width="720" alt="Image" src="https://github.com/user-attachments/assets/ddbc41b4-bfc6-4287-bb85-eb949d723591" />
@@ -56,12 +56,13 @@ npx gitpick https://<token>@github.com/owner/repo # private repo
56
56
  ## 🔧 Options
57
57
 
58
58
  ```txt
59
- -b, --branch Branch to clone from
59
+ -b, --branch Branch/SHA to clone
60
60
  -o, --overwrite Skip overwrite prompt
61
61
  -r, --recursive Clone submodules
62
- -w, --watch [time] Sync at intervals
63
- -h, --help Show help
64
- -v, --version Show version
62
+ -w, --watch [time] Watch the repository and sync every [time]
63
+ (e.g. 1h, 30m, 15s)
64
+ -h, --help display help for command
65
+ -v, --version display the version number
65
66
  ```
66
67
 
67
68
  ---
package/dist/index.js CHANGED
@@ -1,24 +1,24 @@
1
1
  #!/usr/bin/env node
2
2
  var Mt=Object.defineProperty,nr=Object.defineProperties;var ir=Object.getOwnPropertyDescriptors;var at=Object.getOwnPropertySymbols;var jt=Object.prototype.hasOwnProperty,Lt=Object.prototype.propertyIsEnumerable;var H=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),bt=t=>{throw TypeError(t)};var wt=(t,e,r)=>e in t?Mt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,y=(t,e)=>{for(var r in e||(e={}))jt.call(e,r)&&wt(t,r,e[r]);if(at)for(var r of at(e))Lt.call(e,r)&&wt(t,r,e[r]);return t},W=(t,e)=>nr(t,ir(e));var q=(t,e)=>{var r={};for(var o in t)jt.call(t,o)&&e.indexOf(o)<0&&(r[o]=t[o]);if(t!=null&&at)for(var o of at(t))e.indexOf(o)<0&&Lt.call(t,o)&&(r[o]=t[o]);return r};var Wt=(t,e)=>{for(var r in e)Mt(t,r,{get:e[r],enumerable:!0})};var Gt=(t,e,r)=>wt(t,typeof e!="symbol"?e+"":e,r),xt=(t,e,r)=>e.has(t)||bt("Cannot "+r);var u=(t,e,r)=>(xt(t,e,"read from private field"),r?r.call(t):e.get(t)),$=(t,e,r)=>e.has(t)?bt("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,r),w=(t,e,r,o)=>(xt(t,e,"write to private field"),o?o.call(t,r):e.set(t,r),r),b=(t,e,r)=>(xt(t,e,"access private method"),r);var _t=(t,e,r,o)=>({set _(s){w(t,e,s,r)},get _(){return u(t,e,o)}});var I=function(t,e){this[0]=t,this[1]=e},yt=(t,e,r)=>{var o=(i,a,c,p)=>{try{var d=r[i](a),x=(a=d.value)instanceof I,E=d.done;Promise.resolve(x?a[0]:a).then(g=>x?o(i==="return"?i:"next",a[1]?{done:g.done,value:g.value}:g,c,p):c({value:g,done:E})).catch(g=>o("throw",g,c,p))}catch(g){p(g)}},s=i=>n[i]=a=>new Promise((c,p)=>o(i,a,c,p)),n={};return r=r.apply(t,e),n[H("asyncIterator")]=()=>n,s("next"),s("throw"),s("return"),n},Nt=t=>{var e=t[H("asyncIterator")],r=!1,o,s={};return e==null?(e=t[H("iterator")](),o=n=>s[n]=i=>e[n](i)):(e=e.call(t),o=n=>s[n]=i=>{if(r){if(r=!1,n==="throw")throw i;return i}return r=!0,{done:!1,value:new I(new Promise(a=>{var c=e[n](i);c instanceof Object||bt("Object expected"),a(c)}),1)}}),s[H("iterator")]=()=>s,o("next"),"throw"in e?o("throw"):s.throw=n=>{throw n},"return"in e&&o("return"),s},ct=(t,e,r)=>(e=t[H("asyncIterator")])?e.call(t):(t=t[H("iterator")](),e={},r=(o,s)=>(s=t[o])&&(e[o]=n=>new Promise((i,a,c)=>(n=s.call(t,n),c=n.done,Promise.resolve(n.value).then(p=>i({value:p,done:c}),a)))),r("next"),r("return"),e);import sr from"node:fs";import os from"node:path";import{parseArgs as ss}from"node:util";import tt from"node:fs";import To from"node:os";import me from"node:path";import Tt from"node:fs";import Ft from"node:path";var $t=async(t,e)=>{let r=await Tt.promises.readdir(t,{withFileTypes:!0});await Tt.promises.mkdir(e,{recursive:!0});for(let o of r){if(o.name===".git")continue;let s=Ft.join(t,o.name),n=Ft.join(e,o.name);o.isDirectory()?await $t(s,n):await Tt.promises.copyFile(s,n)}};import ar from"node:process";import{stripVTControlCharacters as cr}from"node:util";var Dt=t=>({start:ar.hrtime.bigint(),command:t.map(e=>lr(cr(e))).join(" "),state:{stdout:"",stderr:"",output:""}}),lr=t=>/[^\w./-]/.test(t)?`'${t.replaceAll("'","'\\''")}'`:t;import U from"node:path";import{fileURLToPath as pr}from"node:url";import Ht from"node:process";var Ut=c=>{var p=c,{stdin:t,stdout:e,stderr:r,stdio:o=[t,e,r],env:s,preferLocal:n,cwd:i="."}=p,a=q(p,["stdin","stdout","stderr","stdio","env","preferLocal","cwd"]);var g;let d=i instanceof URL?pr(i):U.resolve(i),x=s?y(y({},Ht.env),s):void 0,E=(g=o[0])==null?void 0:g.string;return W(y({},a),{input:E,stdio:E===void 0?o:["pipe",...o.slice(1)],env:n?ur(x!=null?x:Ht.env,d):x,cwd:d})},ur=(s,o)=>{var n=s,{Path:t="",PATH:e=t}=n,r=q(n,["Path","PATH"]);let i=e.split(U.delimiter),a=Vt([],U.resolve(o)).map(c=>U.join(c,"node_modules/.bin")).filter(c=>!i.includes(c));return W(y({},r),{PATH:[...a,e].filter(Boolean).join(U.delimiter)})},Vt=(t,e)=>t.at(-1)===e?t:Vt([...t,e],U.resolve(e,".."));import{spawn as vr}from"node:child_process";import{once as Er}from"node:events";import Zt from"node:process";import{stat as hr}from"node:fs/promises";import Yt from"node:path";import Jt from"node:process";var Kt=async(t,e,r)=>await fr(t,r)?[Et(t),e.map(o=>gr(o)),W(y({},r),{shell:!0})]:[t,e,r],fr=async(t,{shell:e,cwd:r,env:o=Jt.env})=>Jt.platform==="win32"&&!e&&!await mr(t,r,o),mr=async(t,e,{Path:r="",PATH:o=r})=>{var s,n;return qt.some(i=>t.toLowerCase().endsWith(i))||((n=vt[s=`${t}\0${e}\0${o}`])!=null?n:vt[s]=await dr(t,e,o))},vt={},dr=async(t,e,r)=>{let o=r.split(Yt.delimiter).filter(Boolean).map(s=>s.replace(/^"(.*)"$/,"$1"));try{await Promise.all(qt.flatMap(s=>[e,...o].map(n=>`${Yt.resolve(n,t)}${s}`)).map(async s=>{try{await hr(s)}catch(n){return}throw 0}))}catch(s){return!0}return!1},qt=[".exe",".com"],gr=t=>Et(Et(`"${t.replaceAll(/(\\*)"/g,'$1$1\\"').replace(/(\\*)$/,"$1$1")}"`)),Et=t=>t.replaceAll(/([()\][%!^"`<>&|;, *?])/g,"^$1");import{once as wr,on as br}from"node:events";import xr from"node:process";var zt=async(t,{input:e},r)=>{let o=await t;e!==void 0&&o.stdin.end(e);let s=wr(o,"close");try{return await Promise.race([s,...o.stdio.filter(Boolean).map(n=>yr(n))]),Tr(r,Qt(o)),Xt(r)}catch(n){throw await Promise.allSettled([s]),kt(n,o,r)}},yr=async t=>{try{for(var e=ct(br(t,"error")),r,o,s;r=!(o=await e.next()).done;r=!1){let[n]=o.value;if(!["ERR_STREAM_PREMATURE_CLOSE","EPIPE"].includes(n==null?void 0:n.code))throw n}}catch(o){s=[o]}finally{try{r&&(o=e.return)&&await o.call(e)}finally{if(s)throw s[0]}}},Tr=({command:t},{exitCode:e,signalName:r})=>{if(r!==void 0)throw new G(`Command was terminated with ${r}: ${t}`);if(e!==void 0)throw new G(`Command failed with exit code ${e}: ${t}`)},kt=(t,e,r)=>Object.assign($r(t,r),Qt(e),Xt(r)),$r=(t,{command:e})=>t instanceof G?t:new G(`Command failed: ${e}`,{cause:t}),G=class extends Error{constructor(){super(...arguments);Gt(this,"name","SubprocessError")}},Qt=({exitCode:t,signalCode:e})=>y(y({},t<1?{}:{exitCode:t}),e===null?{}:{signalName:e}),Xt=({state:{stdout:t,stderr:e,output:r},command:o,start:s})=>({stdout:St(t),stderr:St(e),output:St(r),command:o,durationMs:Number(xr.hrtime.bigint()-s)/1e6}),St=t=>t.at(-1)===`
3
3
  `?t.slice(0,t.at(-2)==="\r"?-2:-1):t;var ee=async(t,e,r,o)=>{try{[t,e]=["node","node.exe"].includes(t.toLowerCase())?[Zt.execPath,[...Zt.execArgv.filter(n=>!n.startsWith("--inspect")),...e]]:[t,e];let s=vr(...await Kt(t,e,r));return te(s.stdout,o,"stdout"),te(s.stderr,o,"stderr"),s.once("error",()=>{}),await Er(s,"spawn"),s}catch(s){throw kt(s,{},o)}},te=(t,{state:e},r)=>{t&&(t.setEncoding("utf8"),e.isIterating||(e.isIterating=!1,t.on("data",o=>{e[r]+=o,e.output+=o})))};import{pipeline as Sr}from"node:stream/promises";var re=async t=>{var o;let[[e,r]]=await Promise.all([Promise.allSettled(t),kr(t)]);if(r.reason)throw r.reason.pipedFrom=(o=e.reason)!=null?o:e.value,r.reason;if(e.reason)throw e.reason;return W(y({},r.value),{pipedFrom:e.value})},kr=async t=>{try{let[{stdout:e},{stdin:r}]=await Promise.all(t.map(({nodeChildProcess:o})=>o));if(r===null)throw new Error('The "stdin" option must be set on the first "spawn()" call in the pipeline.');if(e===null)throw new Error('The "stdout" option must be set on the last "spawn()" call in the pipeline.');Sr(e,r).catch(()=>{})}catch(e){throw await Promise.allSettled(t.map(({nodeChildProcess:r})=>Rr(r))),e}},Rr=async t=>{let{stdin:e}=await t;e.end()};var Rt=function(o,s,n){return yt(this,arguments,function*(t,{state:e},r){if(e.isIterating===!1)throw new Error(`The subprocess must be iterated right away, for example:
4
- for await (const line of spawn(...)) { ... }`);e.isIterating=!0;try{let{[r]:d}=yield new I(t.nodeChildProcess);if(!d)return;let x="";try{for(var i=ct(d.iterator({destroyOnReturn:!1})),a,c,p;a=!(c=yield new I(i.next())).done;a=!1){let E=c.value;let g=`${x}${E}`.split(/\r?\n/);x=g.pop(),yield*Nt(g)}}catch(c){p=[c]}finally{try{a&&(c=i.return)&&(yield new I(c.call(i)))}finally{if(p)throw p[0]}}x&&(yield x)}finally{yield new I(t)}})},oe=function(...t){return yt(this,null,function*(){try{let e=[];for(;t.length>0;){e=t.map((i,a)=>{var c;return(c=e[a])!=null?c:Cr(i)});let[{value:r,done:o},s]=yield new I(Promise.race(e.map((i,a)=>Promise.all([i,a])))),[n]=t.splice(s,1);e.splice(s,1),o||(t.push(n),yield r)}}finally{yield new I(Promise.all(t.map(e=>e.return())))}})},Cr=async t=>{try{return await t.next()}catch(e){await t.throw(e)}};function O(t,e,r,o){let[s=[],n={}]=Array.isArray(e)?[e,r]:[[],e],i=Dt([t,...s]),a=Ut(n),c=ee(t,s,a,i),p=zt(c,a,i);Object.assign(p,{nodeChildProcess:c}),p=o?re([o,p]):p;let d=Rt(p,i,"stdout"),x=Rt(p,i,"stderr");return Object.assign(p,{nodeChildProcess:c,stdout:d,stderr:x,[Symbol.asyncIterator]:()=>oe(d,x),pipe:(E,g,it)=>O(E,g,it,p)})}import C from"node:process";import{stripVTControlCharacters as fo}from"node:util";var R={};Wt(R,{bgBlack:()=>Ur,bgBlue:()=>Kr,bgBlueBright:()=>lo,bgCyan:()=>zr,bgCyanBright:()=>uo,bgGray:()=>Xr,bgGreen:()=>Yr,bgGreenBright:()=>ao,bgMagenta:()=>qr,bgMagentaBright:()=>po,bgRed:()=>Vr,bgRedBright:()=>io,bgWhite:()=>Qr,bgWhiteBright:()=>ho,bgYellow:()=>Jr,bgYellowBright:()=>co,black:()=>_r,blue:()=>Nr,blueBright:()=>ro,bold:()=>k,cyan:()=>T,cyanBright:()=>so,dim:()=>Br,gray:()=>Hr,green:()=>A,greenBright:()=>to,hidden:()=>Wr,inverse:()=>Lr,italic:()=>Pr,magenta:()=>Fr,magentaBright:()=>oo,overline:()=>jr,red:()=>pt,redBright:()=>Zr,reset:()=>Ar,strikethrough:()=>Gr,underline:()=>Mr,white:()=>Dr,whiteBright:()=>no,yellow:()=>_,yellowBright:()=>eo});import Ir from"node:tty";var se,ne,lt,ie,ae,Or=(ae=(ie=(lt=(ne=(se=Ir)==null?void 0:se.WriteStream)==null?void 0:ne.prototype)==null?void 0:lt.hasColors)==null?void 0:ie.call(lt))!=null?ae:!1,l=(t,e)=>{if(!Or)return s=>s;let r=`\x1B[${t}m`,o=`\x1B[${e}m`;return s=>{let n=s+"",i=n.indexOf(o);if(i===-1)return r+n+o;let a=r,c=0;for(;i!==-1;)a+=n.slice(c,i)+r,c=i+o.length,i=n.indexOf(o,c);return a+=n.slice(c)+o,a}},Ar=l(0,0),k=l(1,22),Br=l(2,22),Pr=l(3,23),Mr=l(4,24),jr=l(53,55),Lr=l(7,27),Wr=l(8,28),Gr=l(9,29),_r=l(30,39),pt=l(31,39),A=l(32,39),_=l(33,39),Nr=l(34,39),Fr=l(35,39),T=l(36,39),Dr=l(37,39),Hr=l(90,39),Ur=l(40,49),Vr=l(41,49),Yr=l(42,49),Jr=l(43,49),Kr=l(44,49),qr=l(45,49),zr=l(46,49),Qr=l(47,49),Xr=l(100,49),Zr=l(91,39),to=l(92,39),eo=l(93,39),ro=l(94,39),oo=l(95,39),so=l(96,39),no=l(97,39),io=l(101,49),ao=l(102,49),co=l(103,49),lo=l(104,49),po=l(105,49),uo=l(106,49),ho=l(107,49);var Z=C.platform!=="win32"||!!C.env.WT_SESSION,mo=t=>!!(t.isTTY&&C.env.TERM!=="dumb"&&!("CI"in C.env)),go=R.blue(Z?"\u2139":"i"),wo=R.green(Z?"\u2714":"\u221A"),bo=R.yellow(Z?"\u26A0":"\u203C"),xo=R.red(Z?"\u2716\uFE0F":"\xD7"),yo={frames:Z?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"],interval:80},V,Y,N,F,B,S,D,J,M,P,X,f,z,Q,ut,ce,le,pe,ue,he,fe,Ct=class{constructor(e={}){$(this,f);$(this,V);$(this,Y);$(this,N,-1);$(this,F);$(this,B);$(this,S);$(this,D);$(this,J,0);$(this,M);$(this,P);$(this,X,0);var o,s,n,i;let r=(o=e.spinner)!=null?o:yo;w(this,V,r.frames),w(this,Y,r.interval),w(this,B,(s=e.text)!=null?s:""),w(this,S,(n=e.stream)!=null?n:C.stderr),w(this,D,(i=e.color)!=null?i:"cyan"),w(this,P,mo(u(this,S))),w(this,M,b(this,f,fe).bind(this))}start(e){return e&&w(this,B,e),this.isSpinning?this:(b(this,f,le).call(this),b(this,f,Q).call(this),b(this,f,ue).call(this),w(this,F,setInterval(()=>{b(this,f,Q).call(this)},u(this,Y))),this)}stop(e){return this.isSpinning?(clearInterval(u(this,F)),w(this,F,void 0),b(this,f,pe).call(this),this.clear(),b(this,f,he).call(this),e&&u(this,S).write(`${e}
4
+ for await (const line of spawn(...)) { ... }`);e.isIterating=!0;try{let{[r]:d}=yield new I(t.nodeChildProcess);if(!d)return;let x="";try{for(var i=ct(d.iterator({destroyOnReturn:!1})),a,c,p;a=!(c=yield new I(i.next())).done;a=!1){let E=c.value;let g=`${x}${E}`.split(/\r?\n/);x=g.pop(),yield*Nt(g)}}catch(c){p=[c]}finally{try{a&&(c=i.return)&&(yield new I(c.call(i)))}finally{if(p)throw p[0]}}x&&(yield x)}finally{yield new I(t)}})},oe=function(...t){return yt(this,null,function*(){try{let e=[];for(;t.length>0;){e=t.map((i,a)=>{var c;return(c=e[a])!=null?c:Cr(i)});let[{value:r,done:o},s]=yield new I(Promise.race(e.map((i,a)=>Promise.all([i,a])))),[n]=t.splice(s,1);e.splice(s,1),o||(t.push(n),yield r)}}finally{yield new I(Promise.all(t.map(e=>e.return())))}})},Cr=async t=>{try{return await t.next()}catch(e){await t.throw(e)}};function A(t,e,r,o){let[s=[],n={}]=Array.isArray(e)?[e,r]:[[],e],i=Dt([t,...s]),a=Ut(n),c=ee(t,s,a,i),p=zt(c,a,i);Object.assign(p,{nodeChildProcess:c}),p=o?re([o,p]):p;let d=Rt(p,i,"stdout"),x=Rt(p,i,"stderr");return Object.assign(p,{nodeChildProcess:c,stdout:d,stderr:x,[Symbol.asyncIterator]:()=>oe(d,x),pipe:(E,g,it)=>A(E,g,it,p)})}import C from"node:process";import{stripVTControlCharacters as fo}from"node:util";var R={};Wt(R,{bgBlack:()=>Ur,bgBlue:()=>Kr,bgBlueBright:()=>lo,bgCyan:()=>zr,bgCyanBright:()=>uo,bgGray:()=>Xr,bgGreen:()=>Yr,bgGreenBright:()=>ao,bgMagenta:()=>qr,bgMagentaBright:()=>po,bgRed:()=>Vr,bgRedBright:()=>io,bgWhite:()=>Qr,bgWhiteBright:()=>ho,bgYellow:()=>Jr,bgYellowBright:()=>co,black:()=>_r,blue:()=>Nr,blueBright:()=>ro,bold:()=>k,cyan:()=>T,cyanBright:()=>so,dim:()=>Br,gray:()=>Hr,green:()=>O,greenBright:()=>to,hidden:()=>Wr,inverse:()=>Lr,italic:()=>Pr,magenta:()=>Fr,magentaBright:()=>oo,overline:()=>jr,red:()=>pt,redBright:()=>Zr,reset:()=>Or,strikethrough:()=>Gr,underline:()=>Mr,white:()=>Dr,whiteBright:()=>no,yellow:()=>_,yellowBright:()=>eo});import Ir from"node:tty";var se,ne,lt,ie,ae,Ar=(ae=(ie=(lt=(ne=(se=Ir)==null?void 0:se.WriteStream)==null?void 0:ne.prototype)==null?void 0:lt.hasColors)==null?void 0:ie.call(lt))!=null?ae:!1,l=(t,e)=>{if(!Ar)return s=>s;let r=`\x1B[${t}m`,o=`\x1B[${e}m`;return s=>{let n=s+"",i=n.indexOf(o);if(i===-1)return r+n+o;let a=r,c=0;for(;i!==-1;)a+=n.slice(c,i)+r,c=i+o.length,i=n.indexOf(o,c);return a+=n.slice(c)+o,a}},Or=l(0,0),k=l(1,22),Br=l(2,22),Pr=l(3,23),Mr=l(4,24),jr=l(53,55),Lr=l(7,27),Wr=l(8,28),Gr=l(9,29),_r=l(30,39),pt=l(31,39),O=l(32,39),_=l(33,39),Nr=l(34,39),Fr=l(35,39),T=l(36,39),Dr=l(37,39),Hr=l(90,39),Ur=l(40,49),Vr=l(41,49),Yr=l(42,49),Jr=l(43,49),Kr=l(44,49),qr=l(45,49),zr=l(46,49),Qr=l(47,49),Xr=l(100,49),Zr=l(91,39),to=l(92,39),eo=l(93,39),ro=l(94,39),oo=l(95,39),so=l(96,39),no=l(97,39),io=l(101,49),ao=l(102,49),co=l(103,49),lo=l(104,49),po=l(105,49),uo=l(106,49),ho=l(107,49);var Z=C.platform!=="win32"||!!C.env.WT_SESSION,mo=t=>!!(t.isTTY&&C.env.TERM!=="dumb"&&!("CI"in C.env)),go=R.blue(Z?"\u2139":"i"),wo=R.green(Z?"\u2714":"\u221A"),bo=R.yellow(Z?"\u26A0":"\u203C"),xo=R.red(Z?"\u2716\uFE0F":"\xD7"),yo={frames:Z?["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]:["-","\\","|","/"],interval:80},V,Y,N,F,B,S,D,J,M,P,X,f,z,Q,ut,ce,le,pe,ue,he,fe,Ct=class{constructor(e={}){$(this,f);$(this,V);$(this,Y);$(this,N,-1);$(this,F);$(this,B);$(this,S);$(this,D);$(this,J,0);$(this,M);$(this,P);$(this,X,0);var o,s,n,i;let r=(o=e.spinner)!=null?o:yo;w(this,V,r.frames),w(this,Y,r.interval),w(this,B,(s=e.text)!=null?s:""),w(this,S,(n=e.stream)!=null?n:C.stderr),w(this,D,(i=e.color)!=null?i:"cyan"),w(this,P,mo(u(this,S))),w(this,M,b(this,f,fe).bind(this))}start(e){return e&&w(this,B,e),this.isSpinning?this:(b(this,f,le).call(this),b(this,f,Q).call(this),b(this,f,ue).call(this),w(this,F,setInterval(()=>{b(this,f,Q).call(this)},u(this,Y))),this)}stop(e){return this.isSpinning?(clearInterval(u(this,F)),w(this,F,void 0),b(this,f,pe).call(this),this.clear(),b(this,f,he).call(this),e&&u(this,S).write(`${e}
5
5
  `),this):this}success(e){return b(this,f,z).call(this,wo,e)}error(e){return b(this,f,z).call(this,xo,e)}warning(e){return b(this,f,z).call(this,bo,e)}info(e){return b(this,f,z).call(this,go,e)}get isSpinning(){return u(this,F)!==void 0}get text(){return u(this,B)}set text(e){w(this,B,e!=null?e:""),b(this,f,Q).call(this)}get color(){return u(this,D)}set color(e){w(this,D,e),b(this,f,Q).call(this)}clear(){if(!u(this,P))return this;u(this,S).cursorTo(0);for(let e=0;e<u(this,J);e++)e>0&&u(this,S).moveCursor(0,-1),u(this,S).clearLine(1);return w(this,J,0),this}};V=new WeakMap,Y=new WeakMap,N=new WeakMap,F=new WeakMap,B=new WeakMap,S=new WeakMap,D=new WeakMap,J=new WeakMap,M=new WeakMap,P=new WeakMap,X=new WeakMap,f=new WeakSet,z=function(e,r){return this.stop(`${e} ${r!=null?r:u(this,B)}`)},Q=function(){var n;let e=Date.now();(u(this,N)===-1||e-u(this,X)>=u(this,Y))&&(w(this,N,++_t(this,N)._%u(this,V).length),w(this,X,e));let r=(n=R[u(this,D)])!=null?n:R.cyan,o=u(this,V)[u(this,N)],s=`${r(o)} ${u(this,B)}`;u(this,P)||(s+=`
6
6
  `),this.clear(),b(this,f,ut).call(this,s),u(this,P)&&w(this,J,b(this,f,ce).call(this,s))},ut=function(e){u(this,S).write(e)},ce=function(e){var n;let r=(n=u(this,S).columns)!=null?n:80,o=fo(e).split(`
7
- `),s=0;for(let i of o)s+=Math.max(1,Math.ceil(i.length/r));return s},le=function(){u(this,P)&&b(this,f,ut).call(this,"\x1B[?25l")},pe=function(){u(this,P)&&b(this,f,ut).call(this,"\x1B[?25h")},ue=function(){C.once("SIGINT",u(this,M)),C.once("SIGTERM",u(this,M))},he=function(){C.off("SIGINT",u(this,M)),C.off("SIGTERM",u(this,M))},fe=function(e){this.isSpinning&&this.stop();let r=e==="SIGINT"?130:e==="SIGTERM"?143:1;C.exit(r)};function It(t){return new Ct(t)}var ht=async(t,e,r)=>{process.platform==="win32"&&await O("git",["config","--global","core.longpaths","true"]);let o=`https://${t.token?t.token+"@":t.token}github.com/${t.owner}/${t.repository}.git`,s=me.resolve(To.tmpdir(),`${t.repository}-${Date.now()}${Math.random().toString(16).slice(2,6)}`),n=It(),i=performance.now();e.watch||n.start(`Picking ${t.type}${t.type==="repository"?" without .git":" from repository"}...`);try{await O("git",["clone",o,s,"--branch",t.branch,"--depth","1","--single-branch",...e.recursive?["--recursive"]:[]])}catch(p){await O("git",["clone",o,s,...e.recursive?["--recursive"]:[]]),await O("git",["checkout",t.branch],{cwd:s})}let a=me.resolve(s,t.path);(await tt.promises.stat(a)).isDirectory()?(await tt.promises.mkdir(r,{recursive:!0}),await $t(a,r)):(await tt.promises.mkdir(r.split("/").slice(0,-1).join("/"),{recursive:!0}),await tt.promises.copyFile(a,r)),e.watch?console.log("- Synced at "+new Date().toLocaleTimeString()):n.success(`Picked ${t.type}${t.type==="repository"?" without .git":" from repository"} in ${((performance.now()-i)/1e3).toFixed(2)} seconds.`),await tt.promises.rm(s,{recursive:!0,force:!0})};function Ot(t){if(typeof t=="number"||/^\d+$/.test(t))return typeof t=="number"?t:parseInt(t,10);let e=/(\d+)([hms])/g,r=0,o;for(;(o=e.exec(t))!==null;){let s=parseInt(o[1],10);switch(o[2]){case"h":r+=s*36e5;break;case"m":r+=s*6e4;break;case"s":r+=s*1e3;break}}return r}var de=async t=>{var s,n;let e=(await O("git",["ls-remote",t])).stdout,r=(s=e.match(/(.+)\s+HEAD/))==null?void 0:s[1],o=(n=e.match(new RegExp(`${r}\\s+refs/heads/(.+)`)))==null?void 0:n[1];if(!o)throw new Error("Could not determine default branch!");return o};async function ge(t,{branch:e,target:r}){let o=/^https:\/\/([^@]+)@github\.com/,s=t.match(o),n="";s&&(n=s[1],t=t.replace(o,"https://github.com"));let i=["git@github.com:","https://github.com/","https://raw.githubusercontent.com/"];for(let it of i)if(t.startsWith(it)){t=t.replace(it,"");break}let a=t.split("/"),c=a[0],p=a[1].endsWith(".git")?a[1].slice(0,-4):a[1],d=a[2]==="blob"?"blob":a[2]==="tree"?"tree":a[2]+a[3]==="refsheads"?"raw":"repository",x=e||(d==="repository"?await de(`https://${n&&n+"@"}github.com/${c}/${p}`):d==="raw"?a[4]:a[3]),E=d?d==="raw"?a.slice(5).join("/"):a.slice(4).join("/"):a.slice(2).join("/")||"/",g=r||(d==="blob"?".":E.split("/").pop()||p);return{token:n,owner:c,repository:p,type:d,branch:x,path:E,target:g}}var st={};Wt(st,{beep:()=>Jo,clearScreen:()=>Ho,clearTerminal:()=>Uo,cursorBackward:()=>Co,cursorDown:()=>ko,cursorForward:()=>Ro,cursorGetPosition:()=>Ao,cursorHide:()=>Mo,cursorLeft:()=>ze,cursorMove:()=>So,cursorNextLine:()=>Bo,cursorPrevLine:()=>Po,cursorRestorePosition:()=>Oo,cursorSavePosition:()=>Io,cursorShow:()=>jo,cursorTo:()=>Eo,cursorUp:()=>qe,enterAlternativeScreen:()=>Vo,eraseDown:()=>_o,eraseEndLine:()=>Wo,eraseLine:()=>Qe,eraseLines:()=>Lo,eraseScreen:()=>At,eraseStartLine:()=>Go,eraseUp:()=>No,exitAlternativeScreen:()=>Yo,iTerm:()=>zo,image:()=>qo,link:()=>Ko,scrollDown:()=>Do,scrollUp:()=>Fo});import Bt from"node:process";var we,ft=((we=globalThis.window)==null?void 0:we.document)!==void 0,be,xe,dn=((xe=(be=globalThis.process)==null?void 0:be.versions)==null?void 0:xe.node)!==void 0,ye,Te,gn=((Te=(ye=globalThis.process)==null?void 0:ye.versions)==null?void 0:Te.bun)!==void 0,$e,ve,wn=((ve=($e=globalThis.Deno)==null?void 0:$e.version)==null?void 0:ve.deno)!==void 0,Ee,Se,bn=((Se=(Ee=globalThis.process)==null?void 0:Ee.versions)==null?void 0:Se.electron)!==void 0,ke,Re,xn=((Re=(ke=globalThis.navigator)==null?void 0:ke.userAgent)==null?void 0:Re.includes("jsdom"))===!0,yn=typeof WorkerGlobalScope!="undefined"&&globalThis instanceof WorkerGlobalScope,Tn=typeof DedicatedWorkerGlobalScope!="undefined"&&globalThis instanceof DedicatedWorkerGlobalScope,$n=typeof SharedWorkerGlobalScope!="undefined"&&globalThis instanceof SharedWorkerGlobalScope,vn=typeof ServiceWorkerGlobalScope!="undefined"&&globalThis instanceof ServiceWorkerGlobalScope,Ce,Ie,et=(Ie=(Ce=globalThis.navigator)==null?void 0:Ce.userAgentData)==null?void 0:Ie.platform,Oe,Ae,Be,Pe,En=et==="macOS"||((Oe=globalThis.navigator)==null?void 0:Oe.platform)==="MacIntel"||((Be=(Ae=globalThis.navigator)==null?void 0:Ae.userAgent)==null?void 0:Be.includes(" Mac "))===!0||((Pe=globalThis.process)==null?void 0:Pe.platform)==="darwin",Me,je,Sn=et==="Windows"||((Me=globalThis.navigator)==null?void 0:Me.platform)==="Win32"||((je=globalThis.process)==null?void 0:je.platform)==="win32",Le,We,Ge,_e,Ne,kn=et==="Linux"||((We=(Le=globalThis.navigator)==null?void 0:Le.platform)==null?void 0:We.startsWith("Linux"))===!0||((_e=(Ge=globalThis.navigator)==null?void 0:Ge.userAgent)==null?void 0:_e.includes(" Linux "))===!0||((Ne=globalThis.process)==null?void 0:Ne.platform)==="linux",Fe,De,He,Rn=et==="iOS"||((Fe=globalThis.navigator)==null?void 0:Fe.platform)==="MacIntel"&&((De=globalThis.navigator)==null?void 0:De.maxTouchPoints)>1||/iPad|iPhone|iPod/.test((He=globalThis.navigator)==null?void 0:He.platform),Ue,Ve,Ye,Je,Cn=et==="Android"||((Ue=globalThis.navigator)==null?void 0:Ue.platform)==="Android"||((Ye=(Ve=globalThis.navigator)==null?void 0:Ve.userAgent)==null?void 0:Ye.includes(" Android "))===!0||((Je=globalThis.process)==null?void 0:Je.platform)==="android";var h="\x1B[",ot="\x1B]",K="\x07",rt=";",Ke=!ft&&Bt.env.TERM_PROGRAM==="Apple_Terminal",$o=!ft&&Bt.platform==="win32",vo=ft?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:Bt.cwd,Eo=(t,e)=>{if(typeof t!="number")throw new TypeError("The `x` argument is required");return typeof e!="number"?h+(t+1)+"G":h+(e+1)+rt+(t+1)+"H"},So=(t,e)=>{if(typeof t!="number")throw new TypeError("The `x` argument is required");let r="";return t<0?r+=h+-t+"D":t>0&&(r+=h+t+"C"),e<0?r+=h+-e+"A":e>0&&(r+=h+e+"B"),r},qe=(t=1)=>h+t+"A",ko=(t=1)=>h+t+"B",Ro=(t=1)=>h+t+"C",Co=(t=1)=>h+t+"D",ze=h+"G",Io=Ke?"\x1B7":h+"s",Oo=Ke?"\x1B8":h+"u",Ao=h+"6n",Bo=h+"E",Po=h+"F",Mo=h+"?25l",jo=h+"?25h",Lo=t=>{let e="";for(let r=0;r<t;r++)e+=Qe+(r<t-1?qe():"");return t&&(e+=ze),e},Wo=h+"K",Go=h+"1K",Qe=h+"2K",_o=h+"J",No=h+"1J",At=h+"2J",Fo=h+"S",Do=h+"T",Ho="\x1Bc",Uo=$o?`${At}${h}0f`:`${At}${h}3J${h}H`,Vo=h+"?1049h",Yo=h+"?1049l",Jo=K,Ko=(t,e)=>[ot,"8",rt,rt,e,K,t,ot,"8",rt,rt,K].join(""),qo=(t,e={})=>{let r=`${ot}1337;File=inline=1`;return e.width&&(r+=`;width=${e.width}`),e.height&&(r+=`;height=${e.height}`),e.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(t).toString("base64")+K},zo={setCwd:(t=vo())=>`${ot}50;CurrentDir=${t}${K}`,annotation(t,e={}){let r=`${ot}1337;`,o=e.x!==void 0,s=e.y!==void 0;if((o||s)&&!(o&&s&&e.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return t=t.replaceAll("|",""),r+=e.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",e.length>0?r+=(o?[t,e.length,e.x,e.y]:[e.length,t]).join("|"):r+=t,r+K}};import nt from"node:process";import Pt from"node:process";import Qo from"node:os";import Xe from"node:tty";function v(t,e=globalThis.Deno?globalThis.Deno.args:Pt.argv){let r=t.startsWith("-")?"":t.length===1?"-":"--",o=e.indexOf(r+t),s=e.indexOf("--");return o!==-1&&(s===-1||o<s)}var{env:m}=Pt,mt;v("no-color")||v("no-colors")||v("color=false")||v("color=never")?mt=0:(v("color")||v("colors")||v("color=true")||v("color=always"))&&(mt=1);function Xo(){if(!("FORCE_COLOR"in m))return;if(m.FORCE_COLOR==="true")return 1;if(m.FORCE_COLOR==="false")return 0;if(m.FORCE_COLOR.length===0)return 1;let t=Math.min(Number.parseInt(m.FORCE_COLOR,10),3);if([0,1,2,3].includes(t))return t}function Zo(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function ts(t,{streamIsTTY:e,sniffFlags:r=!0}={}){let o=Xo();o!==void 0&&(mt=o);let s=r?mt:o;if(s===0)return 0;if(r){if(v("color=16m")||v("color=full")||v("color=truecolor"))return 3;if(v("color=256"))return 2}if("TF_BUILD"in m&&"AGENT_NAME"in m)return 1;if(t&&!e&&s===void 0)return 0;let n=s||0;if(m.TERM==="dumb")return n;if(Pt.platform==="win32"){let i=Qo.release().split(".");return Number(i[0])>=10&&Number(i[2])>=10586?Number(i[2])>=14931?3:2:1}if("CI"in m)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(i=>i in m)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(i=>i in m)||m.CI_NAME==="codeship"?1:n;if("TEAMCITY_VERSION"in m)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(m.TEAMCITY_VERSION)?1:0;if(m.COLORTERM==="truecolor"||m.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in m){let i=Number.parseInt((m.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(m.TERM_PROGRAM){case"iTerm.app":return i>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(m.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(m.TERM)||"COLORTERM"in m?1:n}function dt(t,e={}){let r=ts(t,y({streamIsTTY:t&&t.isTTY},e));return Zo(r)}var Wn={stdout:dt({isTTY:Xe.isatty(1)}),stderr:dt({isTTY:Xe.isatty(2)})};import es from"process";function j(t,e=es.argv){let r=t.startsWith("-")?"":t.length===1?"-":"--",o=e.indexOf(r+t),s=e.indexOf("--");return o!==-1&&(s===-1||o<s)}function Ze(t=""){var r;if(/^\d{3,4}$/.test(t)){let o=(r=/(\d{1,2})(\d{2})/.exec(t))!=null?r:[];return{major:0,minor:Number.parseInt(o[1],10),patch:Number.parseInt(o[2],10)}}let e=(t!=null?t:"").split(".").map(o=>Number.parseInt(o,10));return{major:e[0],minor:e[1],patch:e[2]}}function tr(t){let{CI:e,FORCE_HYPERLINK:r,NETLIFY:o,TEAMCITY_VERSION:s,TERM_PROGRAM:n,TERM_PROGRAM_VERSION:i,VTE_VERSION:a,TERM:c}=nt.env;if(r)return!(r.length>0&&Number.parseInt(r,10)===0);if(j("no-hyperlink")||j("no-hyperlinks")||j("hyperlink=false")||j("hyperlink=never"))return!1;if(j("hyperlink=true")||j("hyperlink=always")||o)return!0;if(!dt(t)||t&&!t.isTTY)return!1;if("WT_SESSION"in nt.env)return!0;if(nt.platform==="win32"||e||s)return!1;if(n){let p=Ze(i);switch(n){case"iTerm.app":return p.major===3?p.minor>=1:p.major>3;case"WezTerm":return p.major>=20200620;case"vscode":return p.major>1||p.major===1&&p.minor>=72;case"ghostty":return!0}}if(a){if(a==="0.50.0")return!1;let p=Ze(a);return p.major>0||p.minor>=50}switch(c){case"alacritty":return!0}return!1}var rs={stdout:tr(nt.stdout),stderr:tr(nt.stderr)},gt=rs;function L(t,e,s={}){var n=s,{target:r="stdout"}=n,o=q(n,["target"]);return gt[r]?st.link(t,e):o.fallback===!1?t:typeof o.fallback=="function"?o.fallback(t,e):`${t} (\u200B${e}\u200B)`}L.isSupported=gt.stdout;L.stderr=(t,e,r={})=>L(t,e,y({target:"stderr"},r));L.stderr.isSupported=gt.stderr;var rr="gitpick",or="4.7.1";var ns=`
7
+ `),s=0;for(let i of o)s+=Math.max(1,Math.ceil(i.length/r));return s},le=function(){u(this,P)&&b(this,f,ut).call(this,"\x1B[?25l")},pe=function(){u(this,P)&&b(this,f,ut).call(this,"\x1B[?25h")},ue=function(){C.once("SIGINT",u(this,M)),C.once("SIGTERM",u(this,M))},he=function(){C.off("SIGINT",u(this,M)),C.off("SIGTERM",u(this,M))},fe=function(e){this.isSpinning&&this.stop();let r=e==="SIGINT"?130:e==="SIGTERM"?143:1;C.exit(r)};function It(t){return new Ct(t)}var ht=async(t,e,r)=>{process.platform==="win32"&&await A("git",["config","--global","core.longpaths","true"]);let o=`https://${t.token?t.token+"@":t.token}github.com/${t.owner}/${t.repository}.git`,s=me.resolve(To.tmpdir(),`${t.repository}-${Date.now()}${Math.random().toString(16).slice(2,6)}`),n=It(),i=performance.now();e.watch||n.start(`Picking ${t.type}${t.type==="repository"?" without .git":" from repository"}...`);try{await A("git",["clone",o,s,"--branch",t.branch,"--depth","1","--single-branch",...e.recursive?["--recursive"]:[]])}catch(p){await A("git",["clone",o,s,...e.recursive?["--recursive"]:[]]),await A("git",["checkout",t.branch],{cwd:s})}let a=me.resolve(s,t.path);(await tt.promises.stat(a)).isDirectory()?(await tt.promises.mkdir(r,{recursive:!0}),await $t(a,r)):(await tt.promises.mkdir(r.split("/").slice(0,-1).join("/"),{recursive:!0}),await tt.promises.copyFile(a,r)),e.watch?console.log("- Synced at "+new Date().toLocaleTimeString()):n.success(`Picked ${t.type}${t.type==="repository"?" without .git":" from repository"} in ${((performance.now()-i)/1e3).toFixed(2)} seconds.`),await tt.promises.rm(s,{recursive:!0,force:!0})};function At(t){if(typeof t=="number"||/^\d+$/.test(t))return typeof t=="number"?t:parseInt(t,10);let e=/(\d+)([hms])/g,r=0,o;for(;(o=e.exec(t))!==null;){let s=parseInt(o[1],10);switch(o[2]){case"h":r+=s*36e5;break;case"m":r+=s*6e4;break;case"s":r+=s*1e3;break}}return r}var de=async t=>{var s,n;let e=(await A("git",["ls-remote",t])).stdout,r=(s=e.match(/(.+)\s+HEAD/))==null?void 0:s[1],o=(n=e.match(new RegExp(`${r}\\s+refs/heads/(.+)`)))==null?void 0:n[1];if(!o)throw new Error("Could not determine default branch!");return o};async function ge(t,{branch:e,target:r}){let o=/^https:\/\/([^@]+)@github\.com/,s=t.match(o),n="";s&&(n=s[1],t=t.replace(o,"https://github.com"));let i=["git@github.com:","https://github.com/","https://raw.githubusercontent.com/"];for(let it of i)if(t.startsWith(it)){t=t.replace(it,"");break}let a=t.split("/"),c=a[0],p=a[1].endsWith(".git")?a[1].slice(0,-4):a[1],d=a[2]==="blob"?"blob":a[2]==="tree"?"tree":a[2]+a[3]==="refsheads"?"raw":"repository",x=e||(d==="repository"?await de(`https://${n&&n+"@"}github.com/${c}/${p}`):d==="raw"?a[4]:a[3]),E=d?d==="raw"?a.slice(5).join("/"):a.slice(4).join("/"):a.slice(2).join("/")||"/",g=r||(d==="blob"?".":E.split("/").pop()||p);return{token:n,owner:c,repository:p,type:d,branch:x,path:E,target:g}}var st={};Wt(st,{beep:()=>Jo,clearScreen:()=>Ho,clearTerminal:()=>Uo,cursorBackward:()=>Co,cursorDown:()=>ko,cursorForward:()=>Ro,cursorGetPosition:()=>Oo,cursorHide:()=>Mo,cursorLeft:()=>ze,cursorMove:()=>So,cursorNextLine:()=>Bo,cursorPrevLine:()=>Po,cursorRestorePosition:()=>Ao,cursorSavePosition:()=>Io,cursorShow:()=>jo,cursorTo:()=>Eo,cursorUp:()=>qe,enterAlternativeScreen:()=>Vo,eraseDown:()=>_o,eraseEndLine:()=>Wo,eraseLine:()=>Qe,eraseLines:()=>Lo,eraseScreen:()=>Ot,eraseStartLine:()=>Go,eraseUp:()=>No,exitAlternativeScreen:()=>Yo,iTerm:()=>zo,image:()=>qo,link:()=>Ko,scrollDown:()=>Do,scrollUp:()=>Fo});import Bt from"node:process";var we,ft=((we=globalThis.window)==null?void 0:we.document)!==void 0,be,xe,dn=((xe=(be=globalThis.process)==null?void 0:be.versions)==null?void 0:xe.node)!==void 0,ye,Te,gn=((Te=(ye=globalThis.process)==null?void 0:ye.versions)==null?void 0:Te.bun)!==void 0,$e,ve,wn=((ve=($e=globalThis.Deno)==null?void 0:$e.version)==null?void 0:ve.deno)!==void 0,Ee,Se,bn=((Se=(Ee=globalThis.process)==null?void 0:Ee.versions)==null?void 0:Se.electron)!==void 0,ke,Re,xn=((Re=(ke=globalThis.navigator)==null?void 0:ke.userAgent)==null?void 0:Re.includes("jsdom"))===!0,yn=typeof WorkerGlobalScope!="undefined"&&globalThis instanceof WorkerGlobalScope,Tn=typeof DedicatedWorkerGlobalScope!="undefined"&&globalThis instanceof DedicatedWorkerGlobalScope,$n=typeof SharedWorkerGlobalScope!="undefined"&&globalThis instanceof SharedWorkerGlobalScope,vn=typeof ServiceWorkerGlobalScope!="undefined"&&globalThis instanceof ServiceWorkerGlobalScope,Ce,Ie,et=(Ie=(Ce=globalThis.navigator)==null?void 0:Ce.userAgentData)==null?void 0:Ie.platform,Ae,Oe,Be,Pe,En=et==="macOS"||((Ae=globalThis.navigator)==null?void 0:Ae.platform)==="MacIntel"||((Be=(Oe=globalThis.navigator)==null?void 0:Oe.userAgent)==null?void 0:Be.includes(" Mac "))===!0||((Pe=globalThis.process)==null?void 0:Pe.platform)==="darwin",Me,je,Sn=et==="Windows"||((Me=globalThis.navigator)==null?void 0:Me.platform)==="Win32"||((je=globalThis.process)==null?void 0:je.platform)==="win32",Le,We,Ge,_e,Ne,kn=et==="Linux"||((We=(Le=globalThis.navigator)==null?void 0:Le.platform)==null?void 0:We.startsWith("Linux"))===!0||((_e=(Ge=globalThis.navigator)==null?void 0:Ge.userAgent)==null?void 0:_e.includes(" Linux "))===!0||((Ne=globalThis.process)==null?void 0:Ne.platform)==="linux",Fe,De,He,Rn=et==="iOS"||((Fe=globalThis.navigator)==null?void 0:Fe.platform)==="MacIntel"&&((De=globalThis.navigator)==null?void 0:De.maxTouchPoints)>1||/iPad|iPhone|iPod/.test((He=globalThis.navigator)==null?void 0:He.platform),Ue,Ve,Ye,Je,Cn=et==="Android"||((Ue=globalThis.navigator)==null?void 0:Ue.platform)==="Android"||((Ye=(Ve=globalThis.navigator)==null?void 0:Ve.userAgent)==null?void 0:Ye.includes(" Android "))===!0||((Je=globalThis.process)==null?void 0:Je.platform)==="android";var h="\x1B[",ot="\x1B]",K="\x07",rt=";",Ke=!ft&&Bt.env.TERM_PROGRAM==="Apple_Terminal",$o=!ft&&Bt.platform==="win32",vo=ft?()=>{throw new Error("`process.cwd()` only works in Node.js, not the browser.")}:Bt.cwd,Eo=(t,e)=>{if(typeof t!="number")throw new TypeError("The `x` argument is required");return typeof e!="number"?h+(t+1)+"G":h+(e+1)+rt+(t+1)+"H"},So=(t,e)=>{if(typeof t!="number")throw new TypeError("The `x` argument is required");let r="";return t<0?r+=h+-t+"D":t>0&&(r+=h+t+"C"),e<0?r+=h+-e+"A":e>0&&(r+=h+e+"B"),r},qe=(t=1)=>h+t+"A",ko=(t=1)=>h+t+"B",Ro=(t=1)=>h+t+"C",Co=(t=1)=>h+t+"D",ze=h+"G",Io=Ke?"\x1B7":h+"s",Ao=Ke?"\x1B8":h+"u",Oo=h+"6n",Bo=h+"E",Po=h+"F",Mo=h+"?25l",jo=h+"?25h",Lo=t=>{let e="";for(let r=0;r<t;r++)e+=Qe+(r<t-1?qe():"");return t&&(e+=ze),e},Wo=h+"K",Go=h+"1K",Qe=h+"2K",_o=h+"J",No=h+"1J",Ot=h+"2J",Fo=h+"S",Do=h+"T",Ho="\x1Bc",Uo=$o?`${Ot}${h}0f`:`${Ot}${h}3J${h}H`,Vo=h+"?1049h",Yo=h+"?1049l",Jo=K,Ko=(t,e)=>[ot,"8",rt,rt,e,K,t,ot,"8",rt,rt,K].join(""),qo=(t,e={})=>{let r=`${ot}1337;File=inline=1`;return e.width&&(r+=`;width=${e.width}`),e.height&&(r+=`;height=${e.height}`),e.preserveAspectRatio===!1&&(r+=";preserveAspectRatio=0"),r+":"+Buffer.from(t).toString("base64")+K},zo={setCwd:(t=vo())=>`${ot}50;CurrentDir=${t}${K}`,annotation(t,e={}){let r=`${ot}1337;`,o=e.x!==void 0,s=e.y!==void 0;if((o||s)&&!(o&&s&&e.length!==void 0))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");return t=t.replaceAll("|",""),r+=e.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",e.length>0?r+=(o?[t,e.length,e.x,e.y]:[e.length,t]).join("|"):r+=t,r+K}};import nt from"node:process";import Pt from"node:process";import Qo from"node:os";import Xe from"node:tty";function v(t,e=globalThis.Deno?globalThis.Deno.args:Pt.argv){let r=t.startsWith("-")?"":t.length===1?"-":"--",o=e.indexOf(r+t),s=e.indexOf("--");return o!==-1&&(s===-1||o<s)}var{env:m}=Pt,mt;v("no-color")||v("no-colors")||v("color=false")||v("color=never")?mt=0:(v("color")||v("colors")||v("color=true")||v("color=always"))&&(mt=1);function Xo(){if(!("FORCE_COLOR"in m))return;if(m.FORCE_COLOR==="true")return 1;if(m.FORCE_COLOR==="false")return 0;if(m.FORCE_COLOR.length===0)return 1;let t=Math.min(Number.parseInt(m.FORCE_COLOR,10),3);if([0,1,2,3].includes(t))return t}function Zo(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function ts(t,{streamIsTTY:e,sniffFlags:r=!0}={}){let o=Xo();o!==void 0&&(mt=o);let s=r?mt:o;if(s===0)return 0;if(r){if(v("color=16m")||v("color=full")||v("color=truecolor"))return 3;if(v("color=256"))return 2}if("TF_BUILD"in m&&"AGENT_NAME"in m)return 1;if(t&&!e&&s===void 0)return 0;let n=s||0;if(m.TERM==="dumb")return n;if(Pt.platform==="win32"){let i=Qo.release().split(".");return Number(i[0])>=10&&Number(i[2])>=10586?Number(i[2])>=14931?3:2:1}if("CI"in m)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(i=>i in m)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(i=>i in m)||m.CI_NAME==="codeship"?1:n;if("TEAMCITY_VERSION"in m)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(m.TEAMCITY_VERSION)?1:0;if(m.COLORTERM==="truecolor"||m.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in m){let i=Number.parseInt((m.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(m.TERM_PROGRAM){case"iTerm.app":return i>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(m.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(m.TERM)||"COLORTERM"in m?1:n}function dt(t,e={}){let r=ts(t,y({streamIsTTY:t&&t.isTTY},e));return Zo(r)}var Wn={stdout:dt({isTTY:Xe.isatty(1)}),stderr:dt({isTTY:Xe.isatty(2)})};import es from"process";function j(t,e=es.argv){let r=t.startsWith("-")?"":t.length===1?"-":"--",o=e.indexOf(r+t),s=e.indexOf("--");return o!==-1&&(s===-1||o<s)}function Ze(t=""){var r;if(/^\d{3,4}$/.test(t)){let o=(r=/(\d{1,2})(\d{2})/.exec(t))!=null?r:[];return{major:0,minor:Number.parseInt(o[1],10),patch:Number.parseInt(o[2],10)}}let e=(t!=null?t:"").split(".").map(o=>Number.parseInt(o,10));return{major:e[0],minor:e[1],patch:e[2]}}function tr(t){let{CI:e,FORCE_HYPERLINK:r,NETLIFY:o,TEAMCITY_VERSION:s,TERM_PROGRAM:n,TERM_PROGRAM_VERSION:i,VTE_VERSION:a,TERM:c}=nt.env;if(r)return!(r.length>0&&Number.parseInt(r,10)===0);if(j("no-hyperlink")||j("no-hyperlinks")||j("hyperlink=false")||j("hyperlink=never"))return!1;if(j("hyperlink=true")||j("hyperlink=always")||o)return!0;if(!dt(t)||t&&!t.isTTY)return!1;if("WT_SESSION"in nt.env)return!0;if(nt.platform==="win32"||e||s)return!1;if(n){let p=Ze(i);switch(n){case"iTerm.app":return p.major===3?p.minor>=1:p.major>3;case"WezTerm":return p.major>=20200620;case"vscode":return p.major>1||p.major===1&&p.minor>=72;case"ghostty":return!0}}if(a){if(a==="0.50.0")return!1;let p=Ze(a);return p.major>0||p.minor>=50}switch(c){case"alacritty":return!0}return!1}var rs={stdout:tr(nt.stdout),stderr:tr(nt.stderr)},gt=rs;function L(t,e,s={}){var n=s,{target:r="stdout"}=n,o=q(n,["target"]);return gt[r]?st.link(t,e):o.fallback===!1?t:typeof o.fallback=="function"?o.fallback(t,e):`${t} (\u200B${e}\u200B)`}L.isSupported=gt.stdout;L.stderr=(t,e,r={})=>L(t,e,y({target:"stderr"},r));L.stderr.isSupported=gt.stderr;var rr="gitpick",or="4.8.1";var ns=`
8
8
  With ${k(`${L("GitPick \u2197\uFE0F","https://github.com/nrjdalal/gitpick")}`)} clone specific directories or files from GitHub!
9
9
 
10
- $ gitpick ${_("<url>")} ${A("[target]")} ${T("[options]")}
10
+ $ gitpick ${_("<url>")} ${O("[target]")} ${T("[options]")}
11
11
 
12
12
  ${k("Hint:")}
13
- [target] and [options] are optional. If not specified,
14
- GitPick fallbacks to the default behavior of \`git clone\`.
13
+ [target] and [options] are optional and if not specified,
14
+ GitPick fallbacks to the default behavior of \`git clone\`
15
15
 
16
16
  ${k("Arguments:")}
17
17
  ${_("url")} GitHub URL with path to file/folder/repository
18
- ${A("target")} Directory to clone into (optional)
18
+ ${O("target")} Directory to clone into (optional)
19
19
 
20
20
  ${k("Options:")}
21
- ${T("-b, --branch ")} Branch to clone
21
+ ${T("-b, --branch ")} Branch/SHA to clone
22
22
  ${T("-o, --overwrite")} Skip overwrite prompt
23
23
  ${T("-r, --recursive")} Clone submodules
24
24
  ${T("-w, --watch [time]")} Watch the repository and sync every [time]
@@ -29,17 +29,17 @@ ${k("Options:")}
29
29
  ${k("Examples:")}
30
30
  $ gitpick <url>
31
31
  $ gitpick <url> [target]
32
- $ gitpick <url> [target] -b [branch]
32
+ $ gitpick <url> [target] -b [branch/SHA]
33
33
  $ gitpick <url> [target] -w [time]
34
- $ gitpick <url> [target] -b [branch] -w [time]
34
+ $ gitpick <url> [target] -b [branch/SHA] -w [time]
35
35
 
36
36
  \u{1F680} More awesome tools at ${T("https://github.com/nrjdalal")}`,is=t=>{try{return ss(t)}catch(e){throw new Error(`Error parsing arguments: ${e.message}`)}},as=async()=>{try{let{positionals:t,values:e}=is({allowPositionals:!0,options:{branch:{type:"string",short:"b"},force:{type:"boolean",short:"f"},help:{type:"boolean",short:"h"},overwrite:{type:"boolean",short:"o"},recursive:{type:"boolean",short:"r"},version:{type:"boolean",short:"v"},watch:{type:"string",short:"w"}}});t.length||(e.version&&(console.log(`
37
37
  ${rr}@${or}`),process.exit(0)),console.log(ns),process.exit(0)),t[0]==="clone"&&t.shift();let[r,o]=t,s={branch:e.branch,force:e.force,overwrite:e.overwrite,recursive:e.recursive,watch:e.watch};console.log(`
38
38
  With ${k(`${L("GitPick \u2197\uFE0F","https://github.com/nrjdalal/gitpick")}`)} clone specific directories or files from GitHub!`);let n=await ge(r,{branch:s.branch,target:o});if(n.type==="blob"){let a=n.target.split("/").filter(p=>p!==""),c=a[a.length-1];c!=="."&&c!==".."&&c.includes(".")?a.pop():c=n.path.split("/").pop()||c,n.target=[...a,c].join("/")}console.info(`
39
- ${A("\u2714")} ${n.owner}/${n.repository} ${T(n.type+":"+n.branch)} ${n.type==="repository"?`> ${A(n.target)}`:`${n.path.length?_(n.path)+" >":">"} ${A(n.target)}`}`);let i=os.resolve(n.target);if(s.overwrite=s.overwrite||s.force,s.watch&&(s.overwrite=!0),sr.existsSync(i)&&!s.overwrite&&(n.type==="blob"&&(console.log(`${_(`
40
- Warning: The target file exists at ${A(n.target)}. Use ${T("-f")} or ${T("-o")} to overwrite.`)}`),process.exit(1)),(await sr.promises.readdir(i)).length&&(console.log(`${_(`
41
- Warning: The target directory exists at ${A(n.target)} and is not empty. Use ${T("-f")} or ${T("-o")} to overwrite.`)}`),process.exit(1))),s.watch){console.log(`
42
- \u{1F440} Watching every ${Ot(s.watch)/1e3+"s"}
43
- `),await ht(n,s,i);let a=Ot(s.watch);setInterval(async()=>await ht(n,s,i),a)}else await ht(n,s,i),process.exit(0)}catch(t){t instanceof Error?console.log(k(`
39
+ ${O("\u2714")} ${n.owner}/${n.repository} ${T(n.type+":"+n.branch)} ${n.type==="repository"?`> ${O(n.target)}`:`${n.path.length?_(n.path)+" >":">"} ${O(n.target)}`}`);let i=os.resolve(n.target);if(s.overwrite=s.overwrite||s.force,s.watch&&(s.overwrite=!0),sr.existsSync(i)&&!s.overwrite&&(n.type==="blob"&&(console.log(`${_(`
40
+ Warning: The target file exists at ${O(n.target)}. Use ${T("-f")} or ${T("-o")} to overwrite.`)}`),process.exit(1)),(await sr.promises.readdir(i)).length&&(console.log(`${_(`
41
+ Warning: The target directory exists at ${O(n.target)} and is not empty. Use ${T("-f")} or ${T("-o")} to overwrite.`)}`),process.exit(1))),s.watch){console.log(`
42
+ \u{1F440} Watching every ${At(s.watch)/1e3+"s"}
43
+ `),await ht(n,s,i);let a=At(s.watch);setInterval(async()=>await ht(n,s,i),a)}else await ht(n,s,i),process.exit(0)}catch(t){t instanceof Error?console.log(k(`
44
44
  ${pt("Error: ")}`)+t.message):console.log(k(`${pt(`
45
45
  Unexpected Error: `)}`)+JSON.stringify(t,null,2)),process.exit(1)}};as();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gitpick",
3
- "version": "4.7.1",
3
+ "version": "4.8.1",
4
4
  "description": "Clone exactly what you need aka straightforward project scaffolding!",
5
5
  "keywords": [
6
6
  "clone",