@tocca-systems/twp-cli 0.18.0 → 0.19.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 (32) hide show
  1. package/CHANGELOG.public.md +8 -0
  2. package/README.md +36 -4
  3. package/dist/{ai-dispatch-27EZS2S3.js → ai-dispatch-PNA4UF4I.js} +2 -2
  4. package/dist/{api-command-BH6ILQNX.js → api-command-JJJOEIZQ.js} +2 -2
  5. package/dist/{app-4LRDLLTV.js → app-SOQPONUU.js} +3 -3
  6. package/dist/auto-update-CV2MM32C.js +4 -0
  7. package/dist/auto-update-worker-ML7EBNQW.js +16 -0
  8. package/dist/{backlog-AYEKG575.js → backlog-NV7Z76R3.js} +1 -1
  9. package/dist/chunk-3WHC4FSG.js +15 -0
  10. package/dist/chunk-5WGOHFAS.js +3 -0
  11. package/dist/{chunk-SQSVA6AT.js → chunk-BYRM4NSC.js} +1 -1
  12. package/dist/chunk-DEVIQH5U.js +18 -0
  13. package/dist/{chunk-RQFG3OUL.js → chunk-FOFV2MNL.js} +1 -1
  14. package/dist/chunk-GTABFTZP.js +23 -0
  15. package/dist/chunk-ILKQDXI5.js +22 -0
  16. package/dist/{chunk-U4QQNRXF.js → chunk-MGKVUKU5.js} +1 -1
  17. package/dist/{chunk-7WEYBZSK.js → chunk-MIMDLO52.js} +1 -1
  18. package/dist/{chunk-H3JTPDCJ.js → chunk-NWABK3RZ.js} +3 -18
  19. package/dist/{chunk-77CQG7O7.js → chunk-VGK2JMBW.js} +3 -3
  20. package/dist/{chunk-63LDNYGW.js → chunk-XNLIEUAW.js} +1 -1
  21. package/dist/cli.js +37 -30
  22. package/dist/{commands-VUWI4ERO.js → commands-7D5EEQBY.js} +6 -5
  23. package/dist/{commands-XYKBLMXT.js → commands-EWRHQZYM.js} +56 -61
  24. package/dist/logout-guard-Q4MQFEGR.js +13 -0
  25. package/dist/{oneshot-5EM5NFTK.js → oneshot-XLLRNRLK.js} +2 -2
  26. package/dist/{project-OKTJ32JT.js → project-BATJQR3F.js} +1 -1
  27. package/dist/{run-XALXQIC3.js → run-OB3JFPSH.js} +2 -2
  28. package/dist/{setup-AJ56N6XO.js → setup-ROGEF3UO.js} +2 -1
  29. package/dist/{task-VVBXZLPU.js → task-6QUH5OXF.js} +2 -2
  30. package/dist/update-EXFIHTMW.js +3 -0
  31. package/package.json +1 -1
  32. package/dist/update-WDWUECN7.js +0 -21
@@ -1,21 +0,0 @@
1
- import { createRequire as __twpCreateRequire } from 'node:module';
2
- const require = __twpCreateRequire(import.meta.url);
3
- import{createRuntime}from"./chunk-RQFG3OUL.js";import{PACKAGE_NAME,UPDATE_COMMAND,compareVersionCores,isBelowMinSupported,parseVersionCore}from"./chunk-DXXFUNYN.js";import{findExecutable}from"./chunk-PMOUHEJQ.js";import"./chunk-63LDNYGW.js";import"./chunk-NERYSBA4.js";import"./chunk-RZVI6PMW.js";import{httpFetch}from"./chunk-J7QYPKVK.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import{execFile}from"child_process";var DEFAULT_REGISTRY="https://registry.npmjs.org";function registryBase(env=process.env){const configured=env["npm_config_registry"]?.trim();if(configured===void 0||configured==="")return DEFAULT_REGISTRY;try{const url=new URL(configured);if(url.protocol!=="https:"&&url.protocol!=="http:")return DEFAULT_REGISTRY}catch{return DEFAULT_REGISTRY}return configured.replace(/\/+$/,"")}async function fetchFromRegistry(fetchImpl=httpFetch,env=process.env){const url=`${registryBase(env)}/${PACKAGE_NAME.replace(
4
- "/","%2f")}`;const res=await fetchImpl(url,{headers:{Accept:"application/vnd.npm.install-v1+json"},signal:AbortSignal.timeout(5e3)});if(!res.ok){throw new Error(`registry \u304C ${res.status} \u3092\u8FD4\u3057\u307E\u3057\u305F`)}const body=await res.json();const latest=body["dist-tags"]?.latest;if(typeof latest!=="string"||parseVersionCore(latest)===null){throw new Error("registry \u306E\u5FDC\u7B54\u306B dist-tags.latest \u304C\u3042\u308A\u307E\u305B\u3093")}return{version:latest.trim(),source:"\
5
- registry"}}async function fetchFromNpmCli(){const npmPath=findExecutable("npm");if(npmPath===null){throw new Error("npm \u304C PATH \u306B\u898B\u3064\u304B\u308A\u307E\u305B\u3093")}const stdout=await new Promise((resolve,reject)=>{execFile(npmPath,["view",PACKAGE_NAME,"version","--json"],{timeout:15e3,windowsHide:true},(error,out)=>error?reject(error):resolve(out))});const parsed=JSON.parse(stdout.trim());const latest=typeof parsed==="string"?parsed:null;if(latest===null||parseVersionCore(latest)===
6
- null){throw new Error("npm view \u306E\u51FA\u529B\u304B\u3089\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u8AAD\u3081\u307E\u305B\u3093\u3067\u3057\u305F")}return{version:latest,source:"npm"}}function firstLine(message){const line=message.split("\n").map(l=>l.trim()).find(l=>l!=="")??message;return line.length>200?`${line.slice(0,200)}\u2026`:line}async function fetchLatestVersion(deps={}){const errors=[];for(const attempt of[()=>fetchFromRegistry(deps.fetchImpl??httpFetch,deps.env??process.env),()=>(deps.
7
- npmView??fetchFromNpmCli)()]){try{return await attempt()}catch(err){errors.push(firstLine(err instanceof Error?err.message:String(err)))}}return{version:null,source:null,error:errors.join(" / ")}}function isPrerelease(version){return/-/.test(version.trim())}function isBehindLatest(current,latest){const currentCore=parseVersionCore(current);const latestCore=parseVersionCore(latest);if(currentCore===null||latestCore===null||latest===null)return false;const diff=compareVersionCores(currentCore,latestCore);
8
- if(diff!==0)return diff<0;return isPrerelease(current)&&!isPrerelease(latest)}async function runUpdate(opts,deps={}){const out=deps.out??(text=>void process.stdout.write(stripTerminalControls(text)));const err=deps.err??(text=>void process.stderr.write(stripTerminalControls(text)));const runtime=deps.runtime??createRuntime({...opts.profile!==void 0?{profile:opts.profile}:{},cliVersion:opts.version});let floor;let floorSource;if(runtime.loggedIn){const catalog=await runtime.loadCatalog();floor=catalog.
9
- minSupportedVersion;floorSource=catalog.source==="server"?"\u30B5\u30FC\u30D0":catalog.source==="cache"?"\u30AD\u30E3\u30C3\u30B7\u30E5":"\u672A\u53D6\u5F97";if(floor===null){const cached=runtime.loadCachedFloor().minSupportedVersion;if(cached!==null){floor=cached;floorSource="\u30AD\u30E3\u30C3\u30B7\u30E5"}}}else{floor=runtime.loadCachedFloor().minSupportedVersion;floorSource="\u30AD\u30E3\u30C3\u30B7\u30E5\uFF08\u672A\u30ED\u30B0\u30A4\u30F3\uFF09"}const latest=deps.fetchLatest?await deps.fetchLatest():
10
- await fetchLatestVersion();const behindLatest=isBehindLatest(opts.version,latest.version);const blocked=isBelowMinSupported(opts.version,floor);out(`twp ${opts.version}
11
-
12
- `);out(latest.version!==null?` \u6700\u65B0\u7248 ${latest.version}\uFF08${latest.source==="registry"?"npm registry":"npm view"}\uFF09
13
- `:" \u6700\u65B0\u7248 \u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\n");out(` \u6700\u5C0F\u30B5\u30DD\u30FC\u30C8 ${floor??"\u6307\u5B9A\u306A\u3057"}\uFF08${floorSource} / ${runtime.relayUrl}\uFF09
14
- `);if(blocked){out(` \u5224\u5B9A \u26A0 \u66F4\u65B0\u304C\u5FC5\u8981\u3067\u3059\uFF08${floor} \u672A\u6E80\u306E\u305F\u3081\u4F1A\u8A71\u3092\u958B\u59CB\u3067\u304D\u307E\u305B\u3093\uFF09
15
-
16
- `);out(` ${UPDATE_COMMAND}
17
- `);return 1}if(behindLatest){out(" \u5224\u5B9A \u66F4\u65B0\u3067\u304D\u307E\u3059\uFF08\u5FC5\u9808\u3067\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\n\n");out(` ${UPDATE_COMMAND}
18
- `);return 0}out(latest.version!==null?" \u5224\u5B9A \u6700\u65B0\u3067\u3059\n":" \u5224\u5B9A \u5224\u5B9A\u3067\u304D\u307E\u305B\u3093\n");if(latest.version===null&&latest.error!==void 0){err(`
19
- \u6700\u65B0\u7248\u3092\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F: ${latest.error}
20
- `);err(`\u66F4\u65B0\u3059\u308B\u5834\u5408: ${UPDATE_COMMAND}
21
- `)}return 0}export{fetchLatestVersion,isBehindLatest,runUpdate};