getmyenv 0.1.1 → 0.3.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 (88) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +12 -4
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +81 -51
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/backup.d.ts.map +1 -1
  7. package/dist/commands/backup.js +15 -6
  8. package/dist/commands/backup.js.map +1 -1
  9. package/dist/commands/link.d.ts +16 -0
  10. package/dist/commands/link.d.ts.map +1 -0
  11. package/dist/commands/link.js +116 -0
  12. package/dist/commands/link.js.map +1 -0
  13. package/dist/commands/pull.d.ts +15 -0
  14. package/dist/commands/pull.d.ts.map +1 -0
  15. package/dist/commands/pull.js +157 -0
  16. package/dist/commands/pull.js.map +1 -0
  17. package/dist/commands/push.d.ts +15 -0
  18. package/dist/commands/push.d.ts.map +1 -0
  19. package/dist/commands/push.js +259 -0
  20. package/dist/commands/push.js.map +1 -0
  21. package/dist/commands/restore.d.ts.map +1 -1
  22. package/dist/commands/restore.js +27 -14
  23. package/dist/commands/restore.js.map +1 -1
  24. package/dist/commands/run.d.ts +1 -0
  25. package/dist/commands/run.d.ts.map +1 -1
  26. package/dist/commands/run.js +66 -25
  27. package/dist/commands/run.js.map +1 -1
  28. package/dist/commands/token.d.ts +19 -0
  29. package/dist/commands/token.d.ts.map +1 -0
  30. package/dist/commands/token.js +188 -0
  31. package/dist/commands/token.js.map +1 -0
  32. package/dist/commands/whoami.d.ts +6 -0
  33. package/dist/commands/whoami.d.ts.map +1 -0
  34. package/dist/commands/whoami.js +51 -0
  35. package/dist/commands/whoami.js.map +1 -0
  36. package/dist/lib/api.d.ts +17 -10
  37. package/dist/lib/api.d.ts.map +1 -1
  38. package/dist/lib/api.js +77 -28
  39. package/dist/lib/api.js.map +1 -1
  40. package/dist/lib/bootstrap.d.ts +20 -0
  41. package/dist/lib/bootstrap.d.ts.map +1 -0
  42. package/dist/lib/bootstrap.js +64 -0
  43. package/dist/lib/bootstrap.js.map +1 -0
  44. package/dist/lib/confirm.d.ts +17 -0
  45. package/dist/lib/confirm.d.ts.map +1 -0
  46. package/dist/lib/confirm.js +26 -0
  47. package/dist/lib/confirm.js.map +1 -0
  48. package/dist/lib/credentials.d.ts +65 -4
  49. package/dist/lib/credentials.d.ts.map +1 -1
  50. package/dist/lib/credentials.js +256 -17
  51. package/dist/lib/credentials.js.map +1 -1
  52. package/dist/lib/fs.d.ts +19 -1
  53. package/dist/lib/fs.d.ts.map +1 -1
  54. package/dist/lib/fs.js +88 -59
  55. package/dist/lib/fs.js.map +1 -1
  56. package/dist/lib/pek.d.ts +32 -0
  57. package/dist/lib/pek.d.ts.map +1 -0
  58. package/dist/lib/pek.js +81 -0
  59. package/dist/lib/pek.js.map +1 -0
  60. package/package.json +1 -1
  61. package/dist/commands/add.d.ts +0 -8
  62. package/dist/commands/add.d.ts.map +0 -1
  63. package/dist/commands/add.js +0 -64
  64. package/dist/commands/add.js.map +0 -1
  65. package/dist/commands/export.d.ts +0 -9
  66. package/dist/commands/export.d.ts.map +0 -1
  67. package/dist/commands/export.js +0 -48
  68. package/dist/commands/export.js.map +0 -1
  69. package/dist/commands/init.d.ts +0 -2
  70. package/dist/commands/init.d.ts.map +0 -1
  71. package/dist/commands/init.js +0 -58
  72. package/dist/commands/init.js.map +0 -1
  73. package/dist/commands/login.d.ts +0 -6
  74. package/dist/commands/login.d.ts.map +0 -1
  75. package/dist/commands/login.js +0 -35
  76. package/dist/commands/login.js.map +0 -1
  77. package/dist/commands/logout.d.ts +0 -2
  78. package/dist/commands/logout.d.ts.map +0 -1
  79. package/dist/commands/logout.js +0 -13
  80. package/dist/commands/logout.js.map +0 -1
  81. package/dist/commands/migrate.d.ts +0 -13
  82. package/dist/commands/migrate.d.ts.map +0 -1
  83. package/dist/commands/migrate.js +0 -127
  84. package/dist/commands/migrate.js.map +0 -1
  85. package/dist/commands/status.d.ts +0 -7
  86. package/dist/commands/status.d.ts.map +0 -1
  87. package/dist/commands/status.js +0 -76
  88. package/dist/commands/status.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACL,aAAa,EACb,YAAY,EACZ,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,aAAa,GAEd,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,UAAU,EACV,SAAS,EACT,oBAAoB,EACpB,SAAS,GACV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAStD,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAa,EACb,SAAmB;IAEnB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAErC,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC3B,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAE1D,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC5C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAiB,KAAK,EAAE,iBAAiB,CAAC,CAAC;IAE3E,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CACb;YACE,mBAAmB,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,SAAS,gCAAgC,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC,SAAS,IAAI;YAC1H,wBAAwB;YACxB,iDAAiD;SAClD,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1C,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;IAChC,CAAC;IACD,IAAI,WAAW,KAAK,GAAG,CAAC,QAAQ,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb;gBACE,kBAAkB,GAAG,CAAC,QAAQ,uBAAuB,WAAW,GAAG;gBACnE,GAAG,CAAC,QAAQ,KAAK,aAAa;oBAC5B,CAAC,CAAC,+CAA+C;oBACjD,CAAC,CAAC,8CAA8C;gBAClD,4DAA4D;aAC7D,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,oBAAoB,GAAG,gBAAgB,EAAE,CAAC;IAChD,MAAM,WAAW,GACf,oBAAoB,CAAC,MAAM,GAAG,CAAC;QAC7B,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;QACjC,CAAC,CAAC,wCAAwC,CAAC;IAE/C,MAAM,kBAAkB,GAAG,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;IAEzD,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,WAAW,KAAK,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,gBAAgB,WAAW,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC;IACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,WAAW,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CACT,gBACE,kBAAkB;QAChB,CAAC,CAAC,4CAA4C;QAC9C,CAAC,CAAC,4BACN,IAAI,CACL,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAEjC,KAAK,EAAE,qBAAqB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAC1D,CAAC;IACF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEzC,IAAI,KAAK,GAAG,SAAS,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAEhD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAEjD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG;YACd,SAAS;YACT,aAAa;YACb,QAAQ,CAAC,SAAS;YAClB,SAAS;SACV,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACZ,MAAM,SAAS,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAElE,IAAI,OAMH,CAAC;QACF,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE;gBAC1D,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,aAAa,EAAE,MAAM,CAAC,EAAE;gBACxB,iBAAiB,EAAE,QAAQ,CAAC,SAAS;gBACrC,aAAa,EACX,OAAO,CAAC,GAAG,CAAC,sBAAsB;oBAClC,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,YAAY;gBAClE,SAAS;gBACT,OAAO;gBACP,SAAS;gBACT,oBAAoB,EAClB,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS;aACrE,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,IAAI,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9C,OAAO,CAAC,GAAG,CACT,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,mDAAmD,CACpE,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,IACE,OAAO,CAAC,MAAM,KAAK,UAAU;YAC7B,OAAO,CAAC,UAAU;YAClB,OAAO,CAAC,cAAc,EACtB,CAAC;YACD,KAAK,GAAG;gBACN,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,SAAS,EAAE,OAAO,CAAC,cAAc;gBACjC,SAAS;gBACT,aAAa;aACd,CAAC;YACF,SAAS,CAAC,KAAK,CAAC,CAAC;YACjB,OAAO,CAAC,GAAG,CACT,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IACd,kBAAkB;gBAChB,CAAC,CAAC,iCAAiC;gBACnC,CAAC,CAAC,8BACN,IAAI,CACL,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CACT,EAAE,CAAC,GAAG,CACJ,6EAA6E,CAC9E,CACF,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;YAElC,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;YACvD,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,CAAC,EACD,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAC1C,CAAC;gBACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,KAAK,EAAE,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CACtE,CAAC;gBACF,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAIhC,KAAK,EAAE,qBAAqB,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7C,IACE,MAAM,CAAC,MAAM,KAAK,UAAU;oBAC5B,MAAM,CAAC,UAAU;oBACjB,MAAM,CAAC,cAAc,EACrB,CAAC;oBACD,KAAK,GAAG;wBACN,UAAU,EAAE,MAAM,CAAC,UAAU;wBAC7B,SAAS,EAAE,MAAM,CAAC,cAAc;wBAChC,SAAS;wBACT,aAAa;qBACd,CAAC;oBACF,SAAS,CAAC,KAAK,CAAC,CAAC;oBACjB,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM;gBACR,CAAC;gBACD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;oBAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBAChE,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAElD,uFAAuF;IACvF,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,kBAAkB,EAAE;QACtD,UAAU,EAAE,IAAI,CAAC,kBAAkB;KACpC,CAAC,CAAC;IAEH,IAAI,MAGH,CAAC;IACF,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAC3B,MAAM,EACN,yBAAyB,EACzB;YACE,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,aAAa,EAAE,MAAM,CAAC,EAAE;SACzB,EACD,EAAE,kBAAkB,EAAE,KAAK,CAAC,UAAU,EAAE,CACzC,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,IAAI,iDAAiD,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAChE,UAAU,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,GAAe,CAAC;IACpB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,SAAS,CAAC;YACpB,QAAQ;YACR,KAAK,EAAE,GAAG,CAAC,QAAQ;YACnB,OAAO,EAAE,MAAM,CAAC,iBAAiB;SAClC,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,UAAU,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAC9B,GAAG,EACH,YAAY,CAAC,MAAM,CAAC,UAAoB,CAAC,CAC1C,CAAC;QACF,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,CAAC,GAAG,CACT,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,WAAW,CAAC,MAAM,UAC3C,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAClC,KAAK,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,IAAI,CAC5C,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAEzC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IACjC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAI,EAAE,IAAI,EAAE;QAC9B,GAAG;QACH,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;KACpC,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;QACjD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,19 @@
1
+ type TokenSaveOpts = {
2
+ apiUrl?: string;
3
+ /** When true, do not offer to link after saving (caller is already linking). */
4
+ skipLinkOffer?: boolean;
5
+ };
6
+ type TokenRemoveOpts = {
7
+ project?: string;
8
+ all?: boolean;
9
+ fresh?: boolean;
10
+ };
11
+ export declare function tokenListCommand(): void;
12
+ export declare function tokenUseCommand(nameOrId: string): void;
13
+ /**
14
+ * Paste and save a per-project CLI token. Not a full account login.
15
+ */
16
+ export declare function tokenCommand(opts?: TokenSaveOpts): Promise<void>;
17
+ export declare function tokenRemoveCommand(opts?: TokenRemoveOpts): Promise<void>;
18
+ export {};
19
+ //# sourceMappingURL=token.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../src/commands/token.ts"],"names":[],"mappings":"AAiBA,KAAK,aAAa,GAAG;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAQF,wBAAgB,gBAAgB,IAAI,IAAI,CAqCvC;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAYtD;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2F1E;AAED,wBAAsB,kBAAkB,CACtC,IAAI,GAAE,eAAoB,GACzB,OAAO,CAAC,IAAI,CAAC,CAkFf"}
@@ -0,0 +1,188 @@
1
+ import pc from "picocolors";
2
+ import { promptConfirm, promptHidden, readProjectMeta } from "../lib/fs.js";
3
+ import { clearAllCredentials, credentialsFilePath, findTokenByNameOrId, readCredentialsV1, readCredentialsV2, removeTokenEntry, setDefaultProject, upsertTokenEntry, } from "../lib/credentials.js";
4
+ import { clearWrappedKey } from "../lib/pek.js";
5
+ import { ApiClient, resolveApiUrl } from "../lib/api.js";
6
+ import { linkCommand } from "./link.js";
7
+ function maskToken(token) {
8
+ const t = token.trim();
9
+ if (t.length <= 8)
10
+ return "****";
11
+ return `${t.slice(0, 4)}…${t.slice(-4)}`;
12
+ }
13
+ export function tokenListCommand() {
14
+ const store = readCredentialsV2();
15
+ const v1 = readCredentialsV1();
16
+ console.log(pc.bold("\ngetmyenv token list\n"));
17
+ console.log(pc.dim(`File: ${credentialsFilePath()}\n`));
18
+ if (!store || Object.keys(store.tokens).length === 0) {
19
+ if (v1) {
20
+ console.log(pc.yellow("Legacy credentials (v1) present. Run token or any command to migrate via whoami.\n"));
21
+ console.log(` Token: ${maskToken(v1.token)}`);
22
+ if (v1.apiUrl)
23
+ console.log(` API: ${v1.apiUrl}`);
24
+ console.log("");
25
+ return;
26
+ }
27
+ console.log(pc.dim("No saved tokens. Run: npx getmyenv token\n"));
28
+ return;
29
+ }
30
+ const defaultId = store.default != null ? String(store.default) : undefined;
31
+ for (const [id, entry] of Object.entries(store.tokens)) {
32
+ const mark = defaultId === id ? "*" : " ";
33
+ console.log(`${mark} ${id} ${entry.projectName} ${entry.cliScope} ${maskToken(entry.token)}`);
34
+ if (entry.apiUrl)
35
+ console.log(pc.dim(` API: ${entry.apiUrl}`));
36
+ }
37
+ console.log("");
38
+ if (defaultId) {
39
+ console.log(pc.dim(`Default: ${defaultId} (*). Use: token use <name|id>\n`));
40
+ }
41
+ }
42
+ export function tokenUseCommand(nameOrId) {
43
+ console.log(pc.bold("\ngetmyenv token use\n"));
44
+ const match = findTokenByNameOrId(nameOrId.trim());
45
+ if (!match) {
46
+ throw new Error(`No saved token matches "${nameOrId}". Run: npx getmyenv token list`);
47
+ }
48
+ setDefaultProject(match.projectId);
49
+ console.log(`${pc.green("✓")} Default token: ${match.entry.projectName} (${match.projectId}, ${match.entry.cliScope})\n`);
50
+ }
51
+ /**
52
+ * Paste and save a per-project CLI token. Not a full account login.
53
+ */
54
+ export async function tokenCommand(opts = {}) {
55
+ console.log(pc.bold("\ngetmyenv token\n"));
56
+ console.log(pc.dim("Saves a per-project CLI token on this machine. Not a full account login.\n"));
57
+ const store = readCredentialsV2();
58
+ const count = store ? Object.keys(store.tokens).length : 0;
59
+ if (count > 0) {
60
+ console.log(pc.dim(`${count} token(s) already saved. New token will be added.\n`));
61
+ console.log(pc.dim("Use token list / token use to switch. token remove --project to remove.\n"));
62
+ }
63
+ console.log(pc.dim("Create a per-project token on the dashboard CLI page (Development or Production), then paste it here."));
64
+ console.log("");
65
+ const token = (await promptHidden("Paste per-project CLI token: ")).trim();
66
+ if (!token) {
67
+ throw new Error("No token entered.");
68
+ }
69
+ const apiUrl = opts.apiUrl?.trim() ||
70
+ process.env.GETMYENV_API_URL?.trim() ||
71
+ resolveApiUrl(opts.apiUrl);
72
+ const client = new ApiClient(apiUrl, token);
73
+ let who;
74
+ try {
75
+ who = await client.request("GET", "/api/cli/whoami");
76
+ }
77
+ catch (err) {
78
+ const msg = err instanceof Error ? err.message : String(err);
79
+ throw new Error(`Could not verify token: ${msg}`);
80
+ }
81
+ const scope = who.cliScope === "production" ? "production" : "development";
82
+ const file = upsertTokenEntry(who.projectId, {
83
+ token,
84
+ apiUrl,
85
+ projectName: who.projectName,
86
+ cliScope: scope,
87
+ }, { setDefault: true });
88
+ console.log(`\n${pc.green("✓")} Saved to ${file}`);
89
+ console.log(pc.dim(`Token: ${who.label ?? scope} · ${who.projectName} · ${scope}`));
90
+ console.log(pc.dim(`API: ${apiUrl}`));
91
+ console.log(pc.dim(`Project: ${who.projectId}\n`));
92
+ const meta = readProjectMeta();
93
+ if (!opts.skipLinkOffer && process.stdin.isTTY && !meta?.projectId) {
94
+ try {
95
+ const doLink = await promptConfirm("Link this folder to the token project?", {
96
+ defaultYes: true,
97
+ });
98
+ if (doLink) {
99
+ await linkCommand(undefined, { apiUrl });
100
+ return;
101
+ }
102
+ }
103
+ catch {
104
+ console.log(pc.dim("Run: npx getmyenv link\n"));
105
+ }
106
+ }
107
+ if (!opts.skipLinkOffer) {
108
+ console.log("Next: npx getmyenv link then npx getmyenv run -- <cmd>\n");
109
+ }
110
+ }
111
+ export async function tokenRemoveCommand(opts = {}) {
112
+ console.log(pc.bold("\ngetmyenv token remove\n"));
113
+ if (opts.all) {
114
+ if (process.stdin.isTTY) {
115
+ const ok = await promptConfirm("Remove all saved CLI tokens?", {
116
+ defaultYes: false,
117
+ });
118
+ if (!ok) {
119
+ console.log(pc.dim("Kept credentials.\n"));
120
+ return;
121
+ }
122
+ }
123
+ const path = credentialsFilePath();
124
+ if (clearAllCredentials()) {
125
+ console.log(`${pc.green("✓")} Cleared all credentials at ${path}`);
126
+ }
127
+ else {
128
+ console.log(pc.dim(`No credentials file at ${path}`));
129
+ }
130
+ if (opts.fresh) {
131
+ clearWrappedKey();
132
+ console.log(`${pc.green("✓")} Cleared local wrapped-key.json`);
133
+ }
134
+ console.log("");
135
+ return;
136
+ }
137
+ const meta = readProjectMeta();
138
+ let projectId;
139
+ if (opts.project?.trim()) {
140
+ const match = findTokenByNameOrId(opts.project.trim());
141
+ if (!match) {
142
+ throw new Error(`No saved token matches "${opts.project}". Run: npx getmyenv token list`);
143
+ }
144
+ projectId = match.projectId;
145
+ }
146
+ else if (meta?.projectId) {
147
+ projectId = String(meta.projectId);
148
+ }
149
+ else {
150
+ const store = readCredentialsV2();
151
+ const ids = store ? Object.keys(store.tokens) : [];
152
+ if (ids.length === 1) {
153
+ projectId = ids[0];
154
+ }
155
+ else if (store?.default != null && store.tokens[String(store.default)]) {
156
+ projectId = String(store.default);
157
+ }
158
+ else {
159
+ throw new Error("Specify which token to remove: token remove --project <name|id>, or token remove --all");
160
+ }
161
+ }
162
+ const store = readCredentialsV2();
163
+ const entry = store?.tokens[projectId];
164
+ const label = entry ? `${entry.projectName} (${projectId})` : projectId;
165
+ if (process.stdin.isTTY && !opts.project && meta?.projectId) {
166
+ const ok = await promptConfirm(`Remove saved token for ${label}?`, {
167
+ defaultYes: true,
168
+ });
169
+ if (!ok) {
170
+ console.log(pc.dim("Kept credentials.\n"));
171
+ return;
172
+ }
173
+ }
174
+ if (removeTokenEntry(projectId)) {
175
+ console.log(`${pc.green("✓")} Removed token for ${label}`);
176
+ }
177
+ else {
178
+ console.log(pc.dim(`No saved token for ${label}`));
179
+ }
180
+ const linkedId = meta?.projectId != null ? String(meta.projectId) : null;
181
+ if (opts.fresh || (linkedId && linkedId === String(projectId))) {
182
+ if (clearWrappedKey()) {
183
+ console.log(`${pc.green("✓")} Cleared local wrapped-key.json`);
184
+ }
185
+ }
186
+ console.log("");
187
+ }
188
+ //# sourceMappingURL=token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../src/commands/token.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ type WhoamiOpts = {
2
+ apiUrl?: string;
3
+ };
4
+ export declare function whoamiCommand(opts?: WhoamiOpts): Promise<void>;
5
+ export {};
6
+ //# sourceMappingURL=whoami.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../src/commands/whoami.ts"],"names":[],"mappings":"AAeA,KAAK,UAAU,GAAG;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAQF,wBAAsB,aAAa,CAAC,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDxE"}
@@ -0,0 +1,51 @@
1
+ import pc from "picocolors";
2
+ import { credentialsFilePath, readCredentialsV1, readCredentialsV2, resolveStoredToken, } from "../lib/credentials.js";
3
+ import { readProjectMeta } from "../lib/fs.js";
4
+ import { ApiClient, ensureSessionToken, resolveApiUrl, } from "../lib/api.js";
5
+ function maskToken(token) {
6
+ const t = token.trim();
7
+ if (t.length <= 8)
8
+ return "****";
9
+ return `${t.slice(0, 4)}…${t.slice(-4)}`;
10
+ }
11
+ export async function whoamiCommand(opts = {}) {
12
+ console.log(pc.bold("\ngetmyenv whoami\n"));
13
+ const meta = readProjectMeta();
14
+ const token = await ensureSessionToken(meta?.projectId);
15
+ const apiUrl = resolveApiUrl(opts.apiUrl, meta?.projectId);
16
+ const client = new ApiClient(apiUrl, token);
17
+ const who = await client.request("GET", "/api/cli/whoami");
18
+ const resolved = resolveStoredToken(meta?.projectId);
19
+ const store = readCredentialsV2();
20
+ const v1 = readCredentialsV1();
21
+ console.log(`Token label: ${who.label ?? who.cliScope}`);
22
+ console.log(`Token scope: ${who.cliScope}`);
23
+ console.log(`Project: ${who.projectName} (${who.projectId})`);
24
+ if (meta?.projectId) {
25
+ console.log(`Linked: ${meta.projectName ?? meta.projectId}${String(meta.projectId) === String(who.projectId) ? "" : " (mismatch)"}`);
26
+ }
27
+ else {
28
+ console.log(`Linked: (none)`);
29
+ }
30
+ console.log(`defaultEnv: ${meta?.defaultEnv ?? who.cliScope}`);
31
+ console.log(`API: ${apiUrl}`);
32
+ console.log(`Credentials: ${credentialsFilePath()}`);
33
+ if (process.env.GETMYENV_TOKEN?.trim()) {
34
+ console.log(pc.dim("Source: GETMYENV_TOKEN"));
35
+ }
36
+ else if (resolved) {
37
+ console.log(pc.dim(`Source: ${resolved.source}${resolved.projectId ? ` (${resolved.projectId})` : ""}`));
38
+ if (resolved.token) {
39
+ console.log(pc.dim(`Token: ${maskToken(resolved.token)}`));
40
+ }
41
+ }
42
+ if (store) {
43
+ const n = Object.keys(store.tokens).length;
44
+ console.log(pc.dim(`Saved tokens: ${n}`));
45
+ }
46
+ else if (v1) {
47
+ console.log(pc.dim("Saved tokens: legacy v1 (migrate on next token)"));
48
+ }
49
+ console.log("");
50
+ }
51
+ //# sourceMappingURL=whoami.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../src/commands/whoami.ts"],"names":[],"mappings":"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"}
package/dist/lib/api.d.ts CHANGED
@@ -2,11 +2,18 @@
2
2
  * CLI API client. Never logs response bodies that may contain ciphertext details
3
3
  * beyond what is needed; never prints secret plaintext.
4
4
  */
5
- import { clearCredentials, credentialsFilePath, readCredentials, writeCredentials } from "./credentials.js";
5
+ import { clearAllCredentials, credentialsFilePath, readCredentialsV2, resolveStoredToken, upsertTokenEntry, type CliScope } from "./credentials.js";
6
6
  /** Keep in sync with packages/cli/package.json version. */
7
- export declare const CLI_VERSION = "0.1.1";
8
- /** Resolve API base: env → saved credentials → production. */
9
- export declare function resolveApiUrl(cliOverride?: string): string;
7
+ export declare const CLI_VERSION = "0.3.1";
8
+ export type WhoamiResponse = {
9
+ projectId: string;
10
+ projectName: string;
11
+ cliScope: CliScope;
12
+ label: string | null;
13
+ allowedCidrs?: string[];
14
+ };
15
+ /** Resolve API base: env → CLI override → selected token → production. */
16
+ export declare function resolveApiUrl(cliOverride?: string, preferredProjectId?: string | number | null): string;
10
17
  /** @deprecated Use resolveApiUrl() - kept for callers that read at module load. */
11
18
  export declare const API_URL_DEFAULT: string;
12
19
  export declare class ApiClient {
@@ -16,12 +23,12 @@ export declare class ApiClient {
16
23
  private headers;
17
24
  request<T>(method: string, path: string, body?: unknown, extraHeaders?: Record<string, string>): Promise<T>;
18
25
  }
19
- /** Env only (no prompt). Prefer ensureSessionToken for interactive commands. */
20
- export declare function getSessionToken(): string | undefined;
26
+ /** Env / store only (no prompt). Prefer ensureSessionToken for interactive commands. */
27
+ export declare function getSessionToken(preferredProjectId?: string | number | null): string | undefined;
21
28
  /**
22
- * Env → credentials file → interactive paste (TTY) saved for next time.
23
- * Non-TTY without a token throws with login instructions.
29
+ * Env → credentials map (linked / default) → migrate v1 → interactive paste (TTY).
30
+ * Non-TTY without a token throws with token instructions.
24
31
  */
25
- export declare function ensureSessionToken(): Promise<string>;
26
- export { clearCredentials, credentialsFilePath, writeCredentials, readCredentials };
32
+ export declare function ensureSessionToken(preferredProjectId?: string | number | null): Promise<string>;
33
+ export { clearAllCredentials as clearCredentials, credentialsFilePath, readCredentialsV2, resolveStoredToken, upsertTokenEntry, };
27
34
  //# sourceMappingURL=api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAE1B,2DAA2D;AAC3D,eAAO,MAAM,WAAW,UAAU,CAAC;AAInC,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ1D;AAED,mFAAmF;AACnF,eAAO,MAAM,eAAe,QAAkB,CAAC;AAE/C,qBAAa,SAAS;IAElB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,KAAK,CAAC;gBADN,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,YAAA;IAGxB,OAAO,CAAC,OAAO;IAWT,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,EACd,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,OAAO,CAAC,CAAC,CAAC;CAmBd;AAED,gFAAgF;AAChF,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAIpD;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CA4B1D;AAED,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EAGnB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,QAAQ,EACd,MAAM,kBAAkB,CAAC;AAE1B,2DAA2D;AAC3D,eAAO,MAAM,WAAW,UAAU,CAAC;AAInC,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB,CAAC;AAEF,0EAA0E;AAC1E,wBAAgB,aAAa,CAC3B,WAAW,CAAC,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAC1C,MAAM,CAUR;AAED,mFAAmF;AACnF,eAAO,MAAM,eAAe,QAAkB,CAAC;AAE/C,qBAAa,SAAS;IAElB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,KAAK,CAAC;gBADN,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,YAAA;IAGxB,OAAO,CAAC,OAAO;IAWT,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,EACd,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpC,OAAO,CAAC,CAAC,CAAC;CAmBd;AA6BD,wFAAwF;AACxF,wBAAgB,eAAe,CAC7B,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAC1C,MAAM,GAAG,SAAS,CAIpB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAC1C,OAAO,CAAC,MAAM,CAAC,CAoDjB;AAED,OAAO,EACL,mBAAmB,IAAI,gBAAgB,EACvC,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,GACjB,CAAC"}
package/dist/lib/api.js CHANGED
@@ -3,21 +3,22 @@
3
3
  * beyond what is needed; never prints secret plaintext.
4
4
  */
5
5
  import pc from "picocolors";
6
- import { promptHidden } from "./fs.js";
7
- import { clearCredentials, credentialsFilePath, readCredentials, writeCredentials, } from "./credentials.js";
6
+ import { promptHidden, readProjectMeta } from "./fs.js";
7
+ import { clearAllCredentials, credentialsFilePath, migrateV1ToV2, readCredentialsV1, readCredentialsV2, resolveStoredToken, upsertTokenEntry, } from "./credentials.js";
8
8
  /** Keep in sync with packages/cli/package.json version. */
9
- export const CLI_VERSION = "0.1.1";
9
+ export const CLI_VERSION = "0.3.1";
10
10
  const PRODUCTION_API = "https://getmyenv.com";
11
- /** Resolve API base: env → saved credentials → production. */
12
- export function resolveApiUrl(cliOverride) {
11
+ /** Resolve API base: env → CLI override → selected token → production. */
12
+ export function resolveApiUrl(cliOverride, preferredProjectId) {
13
13
  if (cliOverride?.trim())
14
14
  return cliOverride.trim();
15
15
  if (process.env.GETMYENV_API_URL?.trim()) {
16
16
  return process.env.GETMYENV_API_URL.trim();
17
17
  }
18
- const saved = readCredentials()?.apiUrl;
19
- if (saved)
20
- return saved;
18
+ const linked = preferredProjectId ?? readProjectMeta()?.projectId ?? null;
19
+ const resolved = resolveStoredToken(linked);
20
+ if (resolved?.apiUrl)
21
+ return resolved.apiUrl;
21
22
  return PRODUCTION_API;
22
23
  }
23
24
  /** @deprecated Use resolveApiUrl() - kept for callers that read at module load. */
@@ -63,35 +64,83 @@ export class ApiClient {
63
64
  return (await res.json());
64
65
  }
65
66
  }
66
- /** Env only (no prompt). Prefer ensureSessionToken for interactive commands. */
67
- export function getSessionToken() {
68
- const fromEnv = process.env.GETMYENV_TOKEN?.trim();
69
- if (fromEnv)
70
- return fromEnv;
71
- return readCredentials()?.token;
67
+ /**
68
+ * Try to upgrade a leftover v1 credentials file via whoami.
69
+ * Leaves v1 in place (and returns its token) if whoami fails.
70
+ */
71
+ async function tryMigrateV1(apiUrlHint) {
72
+ const v1 = readCredentialsV1();
73
+ if (!v1)
74
+ return undefined;
75
+ const apiUrl = apiUrlHint?.trim() ||
76
+ process.env.GETMYENV_API_URL?.trim() ||
77
+ v1.apiUrl ||
78
+ PRODUCTION_API;
79
+ try {
80
+ const client = new ApiClient(apiUrl, v1.token);
81
+ const who = await client.request("GET", "/api/cli/whoami");
82
+ migrateV1ToV2({
83
+ projectId: who.projectId,
84
+ projectName: who.projectName,
85
+ cliScope: who.cliScope,
86
+ apiUrl,
87
+ });
88
+ return v1.token;
89
+ }
90
+ catch {
91
+ return v1.token;
92
+ }
93
+ }
94
+ /** Env / store only (no prompt). Prefer ensureSessionToken for interactive commands. */
95
+ export function getSessionToken(preferredProjectId) {
96
+ const linked = preferredProjectId ?? readProjectMeta()?.projectId ?? null;
97
+ return resolveStoredToken(linked)?.token;
72
98
  }
73
99
  /**
74
- * Env → credentials file → interactive paste (TTY) saved for next time.
75
- * Non-TTY without a token throws with login instructions.
100
+ * Env → credentials map (linked / default) → migrate v1 → interactive paste (TTY).
101
+ * Non-TTY without a token throws with token instructions.
76
102
  */
77
- export async function ensureSessionToken() {
78
- const existing = getSessionToken();
79
- if (existing)
80
- return existing;
103
+ export async function ensureSessionToken(preferredProjectId) {
104
+ const linked = preferredProjectId ?? readProjectMeta()?.projectId ?? null;
105
+ const existing = resolveStoredToken(linked);
106
+ if (existing?.source === "v1") {
107
+ const migrated = await tryMigrateV1(existing.apiUrl);
108
+ if (migrated)
109
+ return migrated;
110
+ }
111
+ if (existing && existing.source !== "v1") {
112
+ return existing.token;
113
+ }
114
+ // v1 file with no resolve (shouldn't happen) or empty store
115
+ if (readCredentialsV1() && !readCredentialsV2()) {
116
+ const migrated = await tryMigrateV1();
117
+ if (migrated)
118
+ return migrated;
119
+ }
81
120
  if (!process.stdin.isTTY) {
82
- throw new Error("No CLI token. Run: npx getmyenv login (or set GETMYENV_TOKEN for CI)");
121
+ throw new Error("No CLI token. Run: npx getmyenv token (or set GETMYENV_TOKEN for CI)");
83
122
  }
84
123
  console.log(pc.dim("Create a token at https://getmyenv.com/cli (or your local /cli), then paste it."));
85
124
  const token = (await promptHidden("Paste CLI token: ")).trim();
86
125
  if (!token) {
87
- throw new Error("No token entered. Run: npx getmyenv login");
126
+ throw new Error("No token entered. Run: npx getmyenv token");
127
+ }
128
+ const apiUrl = resolveApiUrl(undefined, linked);
129
+ try {
130
+ const client = new ApiClient(apiUrl, token);
131
+ const who = await client.request("GET", "/api/cli/whoami");
132
+ const file = upsertTokenEntry(who.projectId, {
133
+ token,
134
+ apiUrl,
135
+ projectName: who.projectName,
136
+ cliScope: who.cliScope,
137
+ });
138
+ console.log(`${pc.green("✓")} Saved CLI token to ${file}\n`);
139
+ }
140
+ catch {
141
+ throw new Error("Could not verify token. Check the token and API URL, then run: npx getmyenv token");
88
142
  }
89
- const file = writeCredentials({
90
- token,
91
- apiUrl: readCredentials()?.apiUrl,
92
- });
93
- console.log(`${pc.green("✓")} Saved CLI token to ${file}\n`);
94
143
  return token;
95
144
  }
96
- export { clearCredentials, credentialsFilePath, writeCredentials, readCredentials };
145
+ export { clearAllCredentials as clearCredentials, credentialsFilePath, readCredentialsV2, resolveStoredToken, upsertTokenEntry, };
97
146
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,2DAA2D;AAC3D,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC;AAEnC,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAE9C,8DAA8D;AAC9D,MAAM,UAAU,aAAa,CAAC,WAAoB;IAChD,IAAI,WAAW,EAAE,IAAI,EAAE;QAAE,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC;IACnD,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,EAAE,CAAC;QACzC,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;IAC7C,CAAC;IACD,MAAM,KAAK,GAAG,eAAe,EAAE,EAAE,MAAM,CAAC;IACxC,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,mFAAmF;AACnF,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,EAAE,CAAC;AAE/C,MAAM,OAAO,SAAS;IAEV;IACA;IAFV,YACU,OAAe,EACf,KAAc;QADd,YAAO,GAAP,OAAO,CAAQ;QACf,UAAK,GAAL,KAAK,CAAS;IACrB,CAAC;IAEI,OAAO,CAAC,KAA8B;QAC5C,MAAM,CAAC,GAA2B;YAChC,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;YAC1B,wBAAwB,EAAE,WAAW;YACrC,GAAG,KAAK;SACT,CAAC;QACF,IAAI,IAAI,CAAC,KAAK;YAAE,CAAC,CAAC,aAAa,GAAG,UAAU,IAAI,CAAC,KAAK,EAAE,CAAC;QACzD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAc,EACd,IAAY,EACZ,IAAc,EACd,YAAqC;QAErC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE;YACnE,MAAM;YACN,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;YACnC,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC5D,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,OAAO,GAAG,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAuB,CAAC;gBACtD,IAAI,IAAI,CAAC,KAAK;oBAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,SAAc,CAAC;QAC9C,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;IACjC,CAAC;CACF;AAED,gFAAgF;AAChF,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;IACnD,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,OAAO,eAAe,EAAE,EAAE,KAAK,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;IACnC,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,CACT,EAAE,CAAC,GAAG,CACJ,iFAAiF,CAClF,CACF,CAAC;IACF,MAAM,KAAK,GAAG,CACZ,MAAM,YAAY,CAAC,mBAAmB,CAAC,CACxC,CAAC,IAAI,EAAE,CAAC;IACT,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,IAAI,GAAG,gBAAgB,CAAC;QAC5B,KAAK;QACL,MAAM,EAAE,eAAe,EAAE,EAAE,MAAM;KAClC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,IAAI,IAAI,CAAC,CAAC;IAC7D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { type WhoamiResponse } from "../lib/api.js";
2
+ export type BootstrapOpts = {
3
+ apiUrl?: string;
4
+ /** Skip confirm when linking (e.g. push --create). */
5
+ forceLink?: boolean;
6
+ /** Verb for confirm copy: "push" | "pull". */
7
+ action: "push" | "pull";
8
+ };
9
+ /**
10
+ * Ensure a CLI token exists (TTY runs token), then ensure this folder is linked
11
+ * to the token project (TTY confirms + link). Returns whoami + linked ids.
12
+ */
13
+ export declare function ensureTokenAndLink(opts: BootstrapOpts): Promise<{
14
+ who: WhoamiResponse;
15
+ apiUrl: string;
16
+ token: string;
17
+ projectId: string;
18
+ projectName: string;
19
+ }>;
20
+ //# sourceMappingURL=bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/lib/bootstrap.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AAIvB,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sDAAsD;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8CAA8C;IAC9C,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC;IACrE,GAAG,EAAE,cAAc,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,CAkED"}