pinecall 0.4.0 → 0.5.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 (203) hide show
  1. package/README.md +14 -6
  2. package/dist/cli/agent-files.d.ts +6 -0
  3. package/dist/cli/agent-files.d.ts.map +1 -0
  4. package/dist/cli/agent-files.js +40 -0
  5. package/dist/cli/agent-files.js.map +1 -0
  6. package/dist/cli/agent-lines.d.ts +23 -0
  7. package/dist/cli/agent-lines.d.ts.map +1 -0
  8. package/dist/cli/agent-lines.js +109 -0
  9. package/dist/cli/agent-lines.js.map +1 -0
  10. package/dist/cli/agent-versions.d.ts +12 -0
  11. package/dist/cli/agent-versions.d.ts.map +1 -0
  12. package/dist/cli/agent-versions.js +70 -0
  13. package/dist/cli/agent-versions.js.map +1 -0
  14. package/dist/cli/agent.d.ts +77 -0
  15. package/dist/cli/agent.d.ts.map +1 -0
  16. package/dist/cli/agent.js +192 -0
  17. package/dist/cli/agent.js.map +1 -0
  18. package/dist/cli/chat.d.ts +2 -2
  19. package/dist/cli/chat.d.ts.map +1 -1
  20. package/dist/cli/chat.js +12 -24
  21. package/dist/cli/chat.js.map +1 -1
  22. package/dist/cli/client-for.d.ts +6 -0
  23. package/dist/cli/client-for.d.ts.map +1 -0
  24. package/dist/cli/client-for.js +7 -0
  25. package/dist/cli/client-for.js.map +1 -0
  26. package/dist/cli/connected.d.ts +4 -4
  27. package/dist/cli/connected.d.ts.map +1 -1
  28. package/dist/cli/connected.js +2 -2
  29. package/dist/cli/connected.js.map +1 -1
  30. package/dist/cli/dotenv.d.ts +24 -0
  31. package/dist/cli/dotenv.d.ts.map +1 -0
  32. package/dist/cli/dotenv.js +69 -0
  33. package/dist/cli/dotenv.js.map +1 -0
  34. package/dist/cli/env.d.ts +21 -37
  35. package/dist/cli/env.d.ts.map +1 -1
  36. package/dist/cli/env.js +35 -68
  37. package/dist/cli/env.js.map +1 -1
  38. package/dist/cli/eval.d.ts +2 -1
  39. package/dist/cli/eval.d.ts.map +1 -1
  40. package/dist/cli/eval.js +5 -4
  41. package/dist/cli/eval.js.map +1 -1
  42. package/dist/cli/groups.d.ts.map +1 -1
  43. package/dist/cli/groups.js +0 -1
  44. package/dist/cli/groups.js.map +1 -1
  45. package/dist/cli/index.d.ts.map +1 -1
  46. package/dist/cli/index.js +25 -30
  47. package/dist/cli/index.js.map +1 -1
  48. package/dist/cli/lexicon.d.ts +14 -0
  49. package/dist/cli/lexicon.d.ts.map +1 -0
  50. package/dist/cli/lexicon.js +123 -0
  51. package/dist/cli/lexicon.js.map +1 -0
  52. package/dist/cli/line.js +6 -6
  53. package/dist/cli/line.js.map +1 -1
  54. package/dist/cli/linking.d.ts +13 -0
  55. package/dist/cli/linking.d.ts.map +1 -0
  56. package/dist/cli/linking.js +103 -0
  57. package/dist/cli/linking.js.map +1 -0
  58. package/dist/cli/load.js +1 -1
  59. package/dist/cli/load.js.map +1 -1
  60. package/dist/cli/login.d.ts +5 -11
  61. package/dist/cli/login.d.ts.map +1 -1
  62. package/dist/cli/login.js +31 -140
  63. package/dist/cli/login.js.map +1 -1
  64. package/dist/cli/memory-policy.d.ts +9 -0
  65. package/dist/cli/memory-policy.d.ts.map +1 -0
  66. package/dist/cli/memory-policy.js +79 -0
  67. package/dist/cli/memory-policy.js.map +1 -0
  68. package/dist/cli/memory.d.ts.map +1 -1
  69. package/dist/cli/memory.js +9 -1
  70. package/dist/cli/memory.js.map +1 -1
  71. package/dist/cli/pipeline.d.ts +2 -0
  72. package/dist/cli/pipeline.d.ts.map +1 -1
  73. package/dist/cli/pipeline.js +18 -76
  74. package/dist/cli/pipeline.js.map +1 -1
  75. package/dist/cli/serve/server.d.ts +1 -1
  76. package/dist/cli/serve/server.d.ts.map +1 -1
  77. package/dist/cli/serve/server.js +3 -2
  78. package/dist/cli/serve/server.js.map +1 -1
  79. package/dist/cli/serve/sidecar.js +1 -1
  80. package/dist/cli/serve/sidecar.js.map +1 -1
  81. package/dist/cli/serve.d.ts +1 -1
  82. package/dist/cli/serve.d.ts.map +1 -1
  83. package/dist/cli/serve.js +5 -5
  84. package/dist/cli/serve.js.map +1 -1
  85. package/dist/cli/signed-in.d.ts +36 -0
  86. package/dist/cli/signed-in.d.ts.map +1 -0
  87. package/dist/cli/signed-in.js +60 -0
  88. package/dist/cli/signed-in.js.map +1 -0
  89. package/dist/cli/simulate.d.ts.map +1 -1
  90. package/dist/cli/simulate.js +7 -6
  91. package/dist/cli/simulate.js.map +1 -1
  92. package/dist/cli/{run-console.d.ts → start-console.d.ts} +2 -2
  93. package/dist/cli/start-console.d.ts.map +1 -0
  94. package/dist/cli/{run-console.js → start-console.js} +3 -3
  95. package/dist/cli/start-console.js.map +1 -0
  96. package/dist/cli/{run-screens.d.ts → start-screens.d.ts} +2 -2
  97. package/dist/cli/start-screens.d.ts.map +1 -0
  98. package/dist/cli/{run-screens.js → start-screens.js} +3 -3
  99. package/dist/cli/start-screens.js.map +1 -0
  100. package/dist/cli/{run.d.ts → start.d.ts} +3 -3
  101. package/dist/cli/start.d.ts.map +1 -0
  102. package/dist/cli/{run.js → start.js} +31 -35
  103. package/dist/cli/start.js.map +1 -0
  104. package/dist/cli/supervise.d.ts +1 -1
  105. package/dist/cli/supervise.d.ts.map +1 -1
  106. package/dist/cli/supervise.js +1 -1
  107. package/dist/cli/supervise.js.map +1 -1
  108. package/dist/cli/testing/gateway.d.ts +3 -0
  109. package/dist/cli/testing/gateway.d.ts.map +1 -1
  110. package/dist/cli/testing/gateway.js +2 -4
  111. package/dist/cli/testing/gateway.js.map +1 -1
  112. package/dist/cli/tuned.d.ts +8 -0
  113. package/dist/cli/tuned.d.ts.map +1 -0
  114. package/dist/cli/tuned.js +66 -0
  115. package/dist/cli/tuned.js.map +1 -0
  116. package/dist/cli/ui/chatting.d.ts +1 -1
  117. package/dist/cli/ui/chatting.d.ts.map +1 -1
  118. package/dist/cli/ui/chatting.js +11 -10
  119. package/dist/cli/ui/chatting.js.map +1 -1
  120. package/dist/cli/ui/console/assets/{index-DhcpHPdk.js → index--8qx-Pi4.js} +16 -12
  121. package/dist/cli/ui/console/assets/index-DmN15Axn.css +1 -0
  122. package/dist/cli/ui/console/index.html +2 -2
  123. package/dist/cli/ui/doors.d.ts +2 -2
  124. package/dist/cli/ui/doors.d.ts.map +1 -1
  125. package/dist/cli/ui/doors.js +2 -2
  126. package/dist/cli/ui/doors.js.map +1 -1
  127. package/dist/cli/ui/drifting.d.ts +1 -1
  128. package/dist/cli/ui/drifting.js +1 -1
  129. package/dist/cli/ui/knowing.d.ts +1 -1
  130. package/dist/cli/ui/knowing.js +3 -3
  131. package/dist/cli/ui/knowing.js.map +1 -1
  132. package/dist/cli/ui/promoting.d.ts +1 -1
  133. package/dist/cli/ui/promoting.js +1 -1
  134. package/dist/cli/ui/remembering.d.ts +1 -1
  135. package/dist/cli/ui/remembering.js +3 -3
  136. package/dist/cli/ui/remembering.js.map +1 -1
  137. package/dist/cli/ui/reproducing.d.ts +1 -1
  138. package/dist/cli/ui/reproducing.js +1 -1
  139. package/dist/cli/ui/simulating.d.ts +1 -1
  140. package/dist/cli/ui/simulating.js +4 -4
  141. package/dist/cli/ui/simulating.js.map +1 -1
  142. package/dist/cli/ui/testing.d.ts +1 -1
  143. package/dist/cli/ui/testing.js +3 -3
  144. package/dist/cli/ui/testing.js.map +1 -1
  145. package/dist/cli/whoami.d.ts +6 -2
  146. package/dist/cli/whoami.d.ts.map +1 -1
  147. package/dist/cli/whoami.js +6 -5
  148. package/dist/cli/whoami.js.map +1 -1
  149. package/dist/cli/world.d.ts +14 -24
  150. package/dist/cli/world.d.ts.map +1 -1
  151. package/dist/cli/world.js +21 -36
  152. package/dist/cli/world.js.map +1 -1
  153. package/dist/client/agent.d.ts +1 -1
  154. package/dist/client/agent.js +2 -2
  155. package/dist/client/agent.js.map +1 -1
  156. package/dist/client/client.d.ts +9 -1
  157. package/dist/client/client.d.ts.map +1 -1
  158. package/dist/client/client.js +5 -2
  159. package/dist/client/client.js.map +1 -1
  160. package/dist/client/connection.d.ts +3 -0
  161. package/dist/client/connection.d.ts.map +1 -1
  162. package/dist/client/connection.js +2 -1
  163. package/dist/client/connection.js.map +1 -1
  164. package/dist/client/index.d.ts +1 -0
  165. package/dist/client/index.d.ts.map +1 -1
  166. package/dist/client/observe.d.ts +3 -0
  167. package/dist/client/observe.d.ts.map +1 -1
  168. package/dist/client/observe.js +2 -1
  169. package/dist/client/observe.js.map +1 -1
  170. package/dist/client/signed.d.ts +15 -0
  171. package/dist/client/signed.d.ts.map +1 -0
  172. package/dist/client/signed.js +19 -0
  173. package/dist/client/signed.js.map +1 -0
  174. package/dist/views/render.d.ts +1 -1
  175. package/dist/views/render.js +1 -1
  176. package/package.json +2 -2
  177. package/dist/cli/config.d.ts +0 -16
  178. package/dist/cli/config.d.ts.map +0 -1
  179. package/dist/cli/config.js +0 -125
  180. package/dist/cli/config.js.map +0 -1
  181. package/dist/cli/credentials.d.ts +0 -41
  182. package/dist/cli/credentials.d.ts.map +0 -1
  183. package/dist/cli/credentials.js +0 -98
  184. package/dist/cli/credentials.js.map +0 -1
  185. package/dist/cli/gateway.d.ts +0 -12
  186. package/dist/cli/gateway.d.ts.map +0 -1
  187. package/dist/cli/gateway.js +0 -67
  188. package/dist/cli/gateway.js.map +0 -1
  189. package/dist/cli/keys.d.ts +0 -28
  190. package/dist/cli/keys.d.ts.map +0 -1
  191. package/dist/cli/keys.js +0 -137
  192. package/dist/cli/keys.js.map +0 -1
  193. package/dist/cli/profiles.d.ts +0 -122
  194. package/dist/cli/profiles.d.ts.map +0 -1
  195. package/dist/cli/profiles.js +0 -312
  196. package/dist/cli/profiles.js.map +0 -1
  197. package/dist/cli/run-console.d.ts.map +0 -1
  198. package/dist/cli/run-console.js.map +0 -1
  199. package/dist/cli/run-screens.d.ts.map +0 -1
  200. package/dist/cli/run-screens.js.map +0 -1
  201. package/dist/cli/run.d.ts.map +0 -1
  202. package/dist/cli/run.js.map +0 -1
  203. package/dist/cli/ui/console/assets/index-iylvEP0_.css +0 -1
@@ -1,122 +0,0 @@
1
- /** ~/.pinecall/config.json: the gateways this machine knows, by name, and which one is in hand. */
2
- /** The two worlds of an org, as a profile names them. */
3
- export type World = "sandbox" | "production";
4
- /** The same person's key in each world of one org, as the login minted them. */
5
- export type Keys = Partial<Record<World, string>>;
6
- /** One org on one gateway: where it is, the keys that open it, and which world is in hand. */
7
- export interface Profile {
8
- url: string;
9
- /** The key every verb uses: the one of the world `env` names. */
10
- key: string;
11
- /** Both worlds' keys, so moving between them is `pinecall use` and never a second login. */
12
- keys?: Keys;
13
- /** The org the key belongs to, as `whoami` last said it. A label, never a check. */
14
- org?: string;
15
- /** The world it opens, likewise: printed, never trusted over what the gateway says. */
16
- env?: string;
17
- /** The phone this person calls FROM, so a ring in the sandbox reaches their own agent. */
18
- calling?: string;
19
- }
20
- /** The file: every profile by name, the one a verb uses when nobody names another, and the gateway this machine was pointed at. */
21
- export interface Config {
22
- active?: string;
23
- /** Where `pinecall login` goes when nobody names a URL: `pinecall gateway <url>` writes it. */
24
- gateway?: string;
25
- profiles: Record<string, Profile>;
26
- }
27
- /**
28
- * Every profile this machine has, and which is active.
29
- *
30
- * There were four files and three variables answering two questions — which gateway, and which
31
- * key — with a precedence nobody was ever told. This is the one file. The one it replaces is
32
- * read ONCE, here, and written into it: `~/.pinecall/credentials`, which `pinecall login` kept a
33
- * row per gateway in. It is not deleted — v1's CLI still reads it on this same machine — and it is
34
- * not read again once this file exists. The third source, `~/.pinecall/dev`, went with the dev key
35
- * that wrote it: a local gateway runs the same Postgres and the same issued keys a box does.
36
- */
37
- export declare function readConfig(home?: string): Config;
38
- /**
39
- * Take `--profile <name>` and `--prod` out of an invocation's argv, and remember them.
40
- *
41
- * Returns what is left, so the group sees only its own flags. `--profile=<name>` too, because
42
- * both spellings are what a person types and only one of them working is a footgun.
43
- */
44
- export declare function withoutTheProfileFlag(argv: readonly string[]): string[];
45
- /** Production when this invocation said `--prod`: one command looks there, and nothing is kept. */
46
- export declare function theChosenWorld(): World | undefined;
47
- /** The profile this invocation named, when it named one. */
48
- export declare function theChosenProfile(): string | undefined;
49
- /** The org a project says it belongs to, and the package.json that says it. */
50
- export interface ProjectOrg {
51
- org: string;
52
- file: string;
53
- }
54
- /**
55
- * The org the nearest package.json names under `"pinecall": { "org": "<slug>" }`, walking up from
56
- * `from`. A package.json that names none is passed over, so a package inside a project still
57
- * belongs to the project's org.
58
- *
59
- * Four checkouts of four orgs used to share ONE active profile: a person moved between them with
60
- * `pinecall use`, and the day they forgot, a verb ran in the org of the last project they were in.
61
- * The project saying its org is what makes the directory the answer.
62
- */
63
- export declare function projectOrg(from?: string): ProjectOrg | undefined;
64
- /** Which profile a verb runs on, and the project that decided it when one did. */
65
- export interface Choice {
66
- name: string | undefined;
67
- project?: ProjectOrg;
68
- }
69
- /**
70
- * The profile `--profile` named; else the one of the org this project names, and none at all when
71
- * this machine holds no profile of it — never the active one, which is another org's; else the
72
- * active one. Among several profiles of that org, the one that opens the world asked for — the
73
- * sandbox when none was — because a machine logged in before one login kept both worlds has a
74
- * profile per world; then the one named after the org, which the login names by its bare slug.
75
- */
76
- export declare function choose(named: string | undefined, config: Config, from?: string, world?: World): Choice;
77
- /** The profile a verb runs on: the one named, the project's org's, or the active one, or nothing at all. */
78
- export declare function profileFor(named: string | undefined, home?: string, from?: string): Profile | undefined;
79
- /** The gateway this machine was pointed at, or nothing — and then it is the cloud's. */
80
- export declare function chosenGateway(home?: string): string | undefined;
81
- /** Point this machine at a gateway, so `pinecall login` and every verb with no key go there. */
82
- export declare function chooseGateway(url: string, home?: string): void;
83
- /** Which profile is in hand, for a line that says where a verb is about to go. */
84
- export declare function activeName(home?: string): string | undefined;
85
- /** Keep one profile and make it the active one: what `pinecall login` does when it has a key. */
86
- export declare function writeProfile(name: string, profile: Profile, home?: string): void;
87
- /** Make a profile that is already there the active one. False when there is no such name. */
88
- export declare function activate(name: string, home?: string): boolean;
89
- /**
90
- * Move a profile to one of its worlds, with the key the login already minted for it.
91
- *
92
- * A person holds a key in each world of an org, and used to hold only the sandbox one: looking at
93
- * production from a terminal meant a second profile nobody knew how to make.
94
- */
95
- export declare function inWorld(name: string, world: World, home?: string): "moved" | "unknown" | "nokey";
96
- /** A name for an org's profile: its slug, and the gateway's host beside it when another gateway took the slug. */
97
- export declare function nameForOrg(slug: string, url: string, config: Config): string;
98
- /**
99
- * Forget a gateway. False when there is no such name, so a typo is never silence.
100
- *
101
- * A profile is a key in a file, and a key that opens nothing is worse than none: somebody will
102
- * trust it tomorrow and read the refusal as the gateway's fault. This is the only way to take one
103
- * out, and it takes the active mark with it rather than leaving it pointing at a row that is gone.
104
- */
105
- export declare function forget(name: string, home?: string): boolean;
106
- /** The phone this person calls FROM at the gateway in hand, so a ring reaches their own agent. */
107
- export declare function callingFrom(home?: string): string | undefined;
108
- /** Say which phone is yours here, or take it back. False when there is no profile to write it on. */
109
- export declare function callsFrom(number: string | undefined, home?: string): boolean;
110
- /** Change one field of a profile without touching its key: what `line from` writes. */
111
- export declare function amend(name: string, fields: Partial<Profile>, home?: string, whole?: boolean): boolean;
112
- /**
113
- * What to call a profile for this gateway: the host's first label, and `local` for a loopback.
114
- *
115
- * A name is for a person to type — `pinecall use box` — so it is short and it is theirs to
116
- * override with `--as`. A second gateway that would take a name already spoken for gets a number,
117
- * because silently repointing a name is how somebody deploys to the wrong box.
118
- */
119
- export declare function nameFor(url: string, config: Config): string;
120
- /** Whichever profile points at this gateway, by name, when one does. */
121
- export declare function nameOfGateway(url: string, config: Config): string | undefined;
122
- //# sourceMappingURL=profiles.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../src/cli/profiles.ts"],"names":[],"mappings":"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"}
@@ -1,312 +0,0 @@
1
- /** ~/.pinecall/config.json: the gateways this machine knows, by name, and which one is in hand. */
2
- import { chmodSync, existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
3
- import { dirname, join } from "node:path";
4
- import { normalised, pinecallHome, readCredentials } from "./credentials.js";
5
- // The directory is a person's and the file holds keys: 0700 and 0600, as the old two were.
6
- const DIRECTORY_MODE = 0o700;
7
- const FILE_MODE = 0o600;
8
- const CONFIG = "config.json";
9
- /**
10
- * Every profile this machine has, and which is active.
11
- *
12
- * There were four files and three variables answering two questions — which gateway, and which
13
- * key — with a precedence nobody was ever told. This is the one file. The one it replaces is
14
- * read ONCE, here, and written into it: `~/.pinecall/credentials`, which `pinecall login` kept a
15
- * row per gateway in. It is not deleted — v1's CLI still reads it on this same machine — and it is
16
- * not read again once this file exists. The third source, `~/.pinecall/dev`, went with the dev key
17
- * that wrote it: a local gateway runs the same Postgres and the same issued keys a box does.
18
- */
19
- export function readConfig(home = pinecallHome()) {
20
- return parsedConfig(home) ?? migrated(home);
21
- }
22
- /**
23
- * `~/.pinecall/credentials`, folded in once and written down, the first time there is no config.
24
- *
25
- * A one-time thing on purpose: after this, `config.json` is the file, and the old one is left on
26
- * disk untouched because v1's CLI on this same machine still reads it.
27
- */
28
- function migrated(home) {
29
- const config = { profiles: {} };
30
- for (const [url, row] of Object.entries(readCredentials(home).gateways)) {
31
- config.profiles[nameFor(url, config)] = {
32
- url,
33
- key: row.api_key,
34
- ...(row.org === undefined ? {} : { org: row.org }),
35
- ...(row.calling === undefined ? {} : { calling: row.calling }),
36
- };
37
- }
38
- const [only, ...rest] = Object.keys(config.profiles);
39
- // One gateway is not a choice: a person who logged in to exactly one should never name it.
40
- if (only !== undefined && rest.length === 0)
41
- config.active = only;
42
- if (only !== undefined)
43
- writeConfig(config, home);
44
- return config;
45
- }
46
- // What `--profile <name>` said, for this one invocation. It is read out of argv once, by the
47
- // dispatcher, before any group sees its flags — twenty verbs each parsing the same flag is twenty
48
- // places for it to be missing from. Set once at startup and never again: a parsed argument that
49
- // happens to live in a module, not state anything changes while a verb runs.
50
- let chosen;
51
- let production = false;
52
- /**
53
- * Take `--profile <name>` and `--prod` out of an invocation's argv, and remember them.
54
- *
55
- * Returns what is left, so the group sees only its own flags. `--profile=<name>` too, because
56
- * both spellings are what a person types and only one of them working is a footgun.
57
- */
58
- export function withoutTheProfileFlag(argv) {
59
- const rest = [];
60
- production = false;
61
- for (let at = 0; at < argv.length; at += 1) {
62
- const word = argv[at];
63
- if (word === "--prod") {
64
- production = true;
65
- }
66
- else if (word === "--profile") {
67
- chosen = argv[at + 1];
68
- at += 1;
69
- }
70
- else if (word.startsWith("--profile=")) {
71
- chosen = word.slice("--profile=".length);
72
- }
73
- else {
74
- rest.push(word);
75
- }
76
- }
77
- return rest;
78
- }
79
- /** Production when this invocation said `--prod`: one command looks there, and nothing is kept. */
80
- export function theChosenWorld() {
81
- return production ? "production" : undefined;
82
- }
83
- /** The profile this invocation named, when it named one. */
84
- export function theChosenProfile() {
85
- return chosen;
86
- }
87
- /**
88
- * The org the nearest package.json names under `"pinecall": { "org": "<slug>" }`, walking up from
89
- * `from`. A package.json that names none is passed over, so a package inside a project still
90
- * belongs to the project's org.
91
- *
92
- * Four checkouts of four orgs used to share ONE active profile: a person moved between them with
93
- * `pinecall use`, and the day they forgot, a verb ran in the org of the last project they were in.
94
- * The project saying its org is what makes the directory the answer.
95
- */
96
- export function projectOrg(from = process.cwd()) {
97
- for (let dir = from;; dir = dirname(dir)) {
98
- const file = join(dir, "package.json");
99
- if (existsSync(file)) {
100
- const org = orgIn(file);
101
- if (org !== undefined)
102
- return { org, file };
103
- }
104
- if (dirname(dir) === dir)
105
- return undefined;
106
- }
107
- }
108
- function orgIn(file) {
109
- try {
110
- const said = JSON.parse(readFileSync(file, "utf8"));
111
- const org = said.pinecall?.org;
112
- return typeof org === "string" && org !== "" ? org : undefined;
113
- }
114
- catch {
115
- return undefined;
116
- }
117
- }
118
- /**
119
- * The profile `--profile` named; else the one of the org this project names, and none at all when
120
- * this machine holds no profile of it — never the active one, which is another org's; else the
121
- * active one. Among several profiles of that org, the one that opens the world asked for — the
122
- * sandbox when none was — because a machine logged in before one login kept both worlds has a
123
- * profile per world; then the one named after the org, which the login names by its bare slug.
124
- */
125
- export function choose(named, config, from = process.cwd(), world = "sandbox") {
126
- if (named !== undefined)
127
- return { name: named };
128
- const project = projectOrg(from);
129
- if (project === undefined)
130
- return { name: config.active };
131
- const theirs = Object.keys(config.profiles)
132
- .filter((name) => config.profiles[name].org === project.org || name === project.org)
133
- .sort();
134
- const opens = (name) => {
135
- const profile = config.profiles[name];
136
- return profile.keys?.[world] !== undefined || profile.env === world;
137
- };
138
- const inWorld = theirs.filter(opens);
139
- const pool = inWorld.length > 0 ? inWorld : theirs;
140
- const name = pool.includes(project.org) ? project.org : pool[0];
141
- return { name, project };
142
- }
143
- /** The profile a verb runs on: the one named, the project's org's, or the active one, or nothing at all. */
144
- export function profileFor(named, home = pinecallHome(), from = process.cwd()) {
145
- const config = readConfig(home);
146
- const { name } = choose(named, config, from);
147
- return name === undefined ? undefined : config.profiles[name];
148
- }
149
- /** The gateway this machine was pointed at, or nothing — and then it is the cloud's. */
150
- export function chosenGateway(home = pinecallHome()) {
151
- return readConfig(home).gateway;
152
- }
153
- /** Point this machine at a gateway, so `pinecall login` and every verb with no key go there. */
154
- export function chooseGateway(url, home = pinecallHome()) {
155
- writeConfig({ ...readConfig(home), gateway: url }, home);
156
- }
157
- /** Which profile is in hand, for a line that says where a verb is about to go. */
158
- export function activeName(home = pinecallHome()) {
159
- return readConfig(home).active;
160
- }
161
- /** Keep one profile and make it the active one: what `pinecall login` does when it has a key. */
162
- export function writeProfile(name, profile, home = pinecallHome()) {
163
- const config = readConfig(home);
164
- config.profiles[name] = profile;
165
- config.active = name;
166
- writeConfig(config, home);
167
- }
168
- /** Make a profile that is already there the active one. False when there is no such name. */
169
- export function activate(name, home = pinecallHome()) {
170
- const config = readConfig(home);
171
- if (config.profiles[name] === undefined)
172
- return false;
173
- config.active = name;
174
- writeConfig(config, home);
175
- return true;
176
- }
177
- /**
178
- * Move a profile to one of its worlds, with the key the login already minted for it.
179
- *
180
- * A person holds a key in each world of an org, and used to hold only the sandbox one: looking at
181
- * production from a terminal meant a second profile nobody knew how to make.
182
- */
183
- export function inWorld(name, world, home = pinecallHome()) {
184
- const config = readConfig(home);
185
- const profile = config.profiles[name];
186
- if (profile === undefined)
187
- return "unknown";
188
- const key = profile.keys?.[world];
189
- if (key === undefined)
190
- return "nokey";
191
- config.profiles[name] = { ...profile, key, env: world };
192
- config.active = name;
193
- writeConfig(config, home);
194
- return "moved";
195
- }
196
- /** A name for an org's profile: its slug, and the gateway's host beside it when another gateway took the slug. */
197
- export function nameForOrg(slug, url, config) {
198
- const held = config.profiles[slug];
199
- if (held === undefined || normalised(held.url) === normalised(url))
200
- return slug;
201
- return `${slug}@${new URL(url).host}`;
202
- }
203
- /**
204
- * Forget a gateway. False when there is no such name, so a typo is never silence.
205
- *
206
- * A profile is a key in a file, and a key that opens nothing is worse than none: somebody will
207
- * trust it tomorrow and read the refusal as the gateway's fault. This is the only way to take one
208
- * out, and it takes the active mark with it rather than leaving it pointing at a row that is gone.
209
- */
210
- export function forget(name, home = pinecallHome()) {
211
- const config = readConfig(home);
212
- if (config.profiles[name] === undefined)
213
- return false;
214
- const { [name]: _gone, ...left } = config.profiles;
215
- const active = config.active === name ? undefined : config.active;
216
- // The gateway this machine is pointed at is not a profile's: it stays.
217
- writeConfig({ ...(active === undefined ? {} : { active }), ...(config.gateway === undefined ? {} : { gateway: config.gateway }), profiles: left }, home);
218
- return true;
219
- }
220
- /** The phone this person calls FROM at the gateway in hand, so a ring reaches their own agent. */
221
- export function callingFrom(home = pinecallHome()) {
222
- return profileFor(theChosenProfile(), home)?.calling;
223
- }
224
- /** Say which phone is yours here, or take it back. False when there is no profile to write it on. */
225
- export function callsFrom(number, home = pinecallHome()) {
226
- const config = readConfig(home);
227
- const { name } = choose(theChosenProfile(), config);
228
- if (name === undefined || config.profiles[name] === undefined)
229
- return false;
230
- const { calling: _was, ...rest } = config.profiles[name];
231
- return amend(name, number === undefined ? rest : { ...rest, calling: number }, home, true);
232
- }
233
- /** Change one field of a profile without touching its key: what `line from` writes. */
234
- export function amend(name, fields, home = pinecallHome(), whole = false) {
235
- const config = readConfig(home);
236
- const profile = config.profiles[name];
237
- if (profile === undefined)
238
- return false;
239
- // `whole` is how a field is REMOVED: merging cannot unset one, and `line forget` has to.
240
- config.profiles[name] = whole ? { ...fields } : { ...profile, ...fields };
241
- writeConfig(config, home);
242
- return true;
243
- }
244
- /**
245
- * What to call a profile for this gateway: the host's first label, and `local` for a loopback.
246
- *
247
- * A name is for a person to type — `pinecall use box` — so it is short and it is theirs to
248
- * override with `--as`. A second gateway that would take a name already spoken for gets a number,
249
- * because silently repointing a name is how somebody deploys to the wrong box.
250
- */
251
- export function nameFor(url, config) {
252
- const wanted = defaultName(url);
253
- const taken = (name) => config.profiles[name] !== undefined && normalised(config.profiles[name].url) !== normalised(url);
254
- if (!taken(wanted))
255
- return wanted;
256
- for (let at = 2;; at += 1) {
257
- if (!taken(`${wanted}-${at}`))
258
- return `${wanted}-${at}`;
259
- }
260
- }
261
- /** Whichever profile points at this gateway, by name, when one does. */
262
- export function nameOfGateway(url, config) {
263
- const wanted = normalised(url);
264
- return Object.keys(config.profiles).find((name) => normalised(config.profiles[name].url) === wanted);
265
- }
266
- function defaultName(url) {
267
- try {
268
- const host = new URL(url).hostname;
269
- if (host === "localhost" || host === "127.0.0.1" || host === "::1")
270
- return "local";
271
- return host.split(".")[0] ?? host;
272
- }
273
- catch {
274
- return "gateway";
275
- }
276
- }
277
- function parsedConfig(home) {
278
- const read = readJson(home);
279
- if (read === undefined)
280
- return undefined;
281
- const profiles = read["profiles"];
282
- if (typeof profiles !== "object" || profiles === null || Array.isArray(profiles))
283
- return undefined;
284
- const config = { profiles: profiles };
285
- if (typeof read["active"] === "string")
286
- config.active = read["active"];
287
- if (typeof read["gateway"] === "string")
288
- config.gateway = read["gateway"];
289
- return config;
290
- }
291
- // A missing file, an unreadable one and a broken one are all the same answer: nothing. A config
292
- // nobody can parse must not stop a verb from saying it has no profile — that sentence is the fix.
293
- function readJson(home) {
294
- try {
295
- const read = JSON.parse(readFileSync(join(home, CONFIG), "utf8"));
296
- return typeof read === "object" && read !== null && !Array.isArray(read)
297
- ? read
298
- : undefined;
299
- }
300
- catch {
301
- return undefined;
302
- }
303
- }
304
- function writeConfig(config, home) {
305
- mkdirSync(home, { recursive: true, mode: DIRECTORY_MODE });
306
- const path = join(home, CONFIG);
307
- writeFileSync(path, `${JSON.stringify(config, null, 2)}\n`, { mode: FILE_MODE });
308
- // writeFileSync's mode applies only when it creates the file: one already there kept what it
309
- // had, including a mode an editor widened.
310
- chmodSync(path, FILE_MODE);
311
- }
312
- //# sourceMappingURL=profiles.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../src/cli/profiles.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-console.d.ts","sourceRoot":"","sources":["../../src/cli/run-console.ts"],"names":[],"mappings":"AAAA,sGAAsG;AAEtG,OAAO,EAAkB,KAAK,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAKjE,oFAAoF;AACpF,eAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,4FAA4F;AAC5F,eAAO,MAAM,OAAO,YAAY,CAAC;AAMjC,6FAA6F;AAC7F,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9E;AAED,mGAAmG;AACnG,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9D;AAQD,+EAA+E;AAC/E,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAKrD;AAKD,iFAAiF;AACjF,wBAAsB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAS1F"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-console.js","sourceRoot":"","sources":["../../src/cli/run-console.ts"],"names":[],"mappings":"AAAA,sGAAsG;AAEtG,OAAO,EAAE,KAAK,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAEjE,+DAA+D;AAC/D,MAAM,YAAY,GAAG,GAAG,CAAC;AAEzB,oFAAoF;AACpF,MAAM,CAAC,MAAM,MAAM,GAAG,QAAQ,CAAC;AAE/B,4FAA4F;AAC5F,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAC;AAEjC,oGAAoG;AACpG,iGAAiG;AACjG,+FAA+F;AAC/F,0DAA0D;AAC1D,6FAA6F;AAC7F,MAAM,UAAU,UAAU,CAAC,OAAe,EAAE,IAAY,EAAE,IAAY;IACpE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,UAAU,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;AACzG,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,QAAQ,CAAC,OAAe,EAAE,IAAY;IACpD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;AACvE,CAAC;AAED,iGAAiG;AACjG,gGAAgG;AAChG,iGAAiG;AACjG,MAAM,aAAa,GACjB,2IAA2I,CAAC;AAE9I,+EAA+E;AAC/E,MAAM,UAAU,YAAY,CAAC,OAAgB;IAC3C,IAAI,OAAO,YAAY,OAAO,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,wBAAwB,OAAO,CAAC,MAAM,EAAE,CAAC;IACpG,CAAC;IACD,OAAO,OAAO,YAAY,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACtE,CAAC;AAED,+FAA+F;AAC/F,8FAA8F;AAC9F,sBAAsB;AACtB,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAU,EAAE,IAAY,EAAE,KAAa;IACvE,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,gFAAgF,CAAC;IAC/G,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,YAAY,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;IACjE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAmB,IAAI,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACpG,OAAO,YAAY,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC;IACnG,CAAC;IAAC,OAAO,OAAO,EAAE,CAAC;QACjB,OAAO,2BAA2B,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5D,CAAC;AACH,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-screens.d.ts","sourceRoot":"","sources":["../../src/cli/run-screens.ts"],"names":[],"mappings":"AAAA,oHAAoH;AAEpH,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAW/D,0FAA0F;AAC1F,MAAM,MAAM,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC;AAK3E,wBAAsB,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAK1E;AAED,iGAAiG;AACjG,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CAChC;AAKD,wBAAsB,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBvF;AAeD,iGAAiG;AACjG,wBAAsB,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CA8C5F;AAED,gGAAgG;AAChG,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,IAAI,MAAM,CAAC;CAClB;AAqBD,wBAAgB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAKvC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-screens.js","sourceRoot":"","sources":["../../src/cli/run-screens.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAI7F,OAAO,EAAY,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAO/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAuBzC,eAAO,MAAM,KAAK,EAAE,KAmBnB,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAqLzD;AAeD,wGAAwG;AACxG,wBAAgB,WAAW,CAAC,MAAM,EAAE,KAAK,GAAG,OAAO,CAElD;AAcD,8FAA8F;AAC9F,wBAAgB,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,GAAG,OAAO,CAE/D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"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"}