create-pmos 0.8.0 → 0.10.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.
@@ -4,6 +4,13 @@
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
6
6
  <title>PMOS Terminal Workspace</title>
7
+ <!-- The terminal's face is preloaded, not left to be discovered. An @font-face is only fetched when
8
+ something first RENDERS in it, which for Plex Mono is about the same moment app.js constructs
9
+ the first xterm — and xterm measures its cell from whatever face is resolved at construction.
10
+ Starting the fetch here, during head parse, means the real metrics are in place before the
11
+ first terminal exists. app.js also re-fits on document.fonts.ready as the backstop. -->
12
+ <link rel="preload" href="/vendor/ibm-plex-mono-400.woff2" as="font" type="font/woff2" crossorigin />
13
+ <link rel="preload" href="/vendor/ibm-plex-mono-700.woff2" as="font" type="font/woff2" crossorigin />
7
14
  <link rel="stylesheet" href="/vendor/xterm.css" />
8
15
  <link rel="stylesheet" href="/styles.css" />
9
16
  </head>
@@ -65,6 +72,12 @@
65
72
  </div>
66
73
  <p class="hint">or just run <code>pmos</code> inside that repo</p>
67
74
  </form>
75
+ <!-- Worktrees the workspace made are folders the PM has to live with, so the app that
76
+ creates them is the app that clears them. Hidden entirely until there is one. -->
77
+ <details class="wtbox" id="wtBox" hidden>
78
+ <summary id="wtSummary">worktrees</summary>
79
+ <div id="wtList"></div>
80
+ </details>
68
81
  </div>
69
82
  </section>
70
83
 
@@ -83,11 +96,16 @@
83
96
  <button type="button" data-agent="codex" role="radio" aria-checked="false">codex</button>
84
97
  </div>
85
98
  <div class="brwrap" id="newBranchWrap" hidden>
86
- <label class="lbl" for="newBranch">branch</label>
99
+ <label class="lbl" for="newBranch">branch <span class="opt">— optional</span></label>
87
100
  <select id="newBranch" aria-label="Branch to run this session on"></select>
88
101
  <input id="newBranchName" type="text" hidden placeholder="new-branch-name" aria-label="New branch name" autocomplete="off" spellcheck="false" />
89
- <p class="hint warn">the branch is shared by every session in this repo — switching or creating one moves them all</p>
102
+ <label class="chk" id="newIsolateWrap" hidden>
103
+ <input type="checkbox" id="newIsolate" checked />
104
+ <span>give it its own folder — leave running sessions alone</span>
105
+ </label>
106
+ <p class="hint" id="newBranchHint"></p>
90
107
  </div>
108
+ <p class="hint" id="newNoGit" hidden>no git in this folder — nothing to branch, the session just starts here</p>
91
109
  <div class="row">
92
110
  <button type="submit" class="go">start session</button>
93
111
  <button type="button" class="quiet" id="newCancel">cancel</button>
@@ -144,12 +162,14 @@
144
162
 
145
163
  <!-- Scratchpad: a collapsible drawer at the BOTTOM of the terminal column. Folded it is a thin
146
164
  bar; open it takes a bounded slice below the terminal — it never overlays the tabs, the
147
- terminal, or the document rail. Persists per workspace. -->
165
+ terminal, or the document rail. Persists PER TAB: each session keeps its own staging
166
+ text, and the label below says which tab you are staging for. -->
148
167
  <section class="scratch" id="scratch" data-open="false" aria-label="Scratchpad">
149
168
  <div class="scratch-head">
150
169
  <button type="button" class="scratch-toggle" id="scratchToggle" aria-expanded="false" aria-controls="scratchText">
151
170
  <span class="chev" aria-hidden="true">▴</span> scratchpad
152
171
  </button>
172
+ <span class="scratch-who" id="scratchWho"></span>
153
173
  <span class="scratch-status" id="scratchStatus" role="status"></span>
154
174
  <span class="scratch-actions">
155
175
  <button type="button" class="mini" id="scratchCopy" title="Copy to clipboard">copy</button>
@@ -260,6 +280,7 @@
260
280
  <script src="/vendor/addon-web-links.js"></script>
261
281
  <script src="/lib/preview-kind.js"></script>
262
282
  <script src="/lib/layout.js"></script>
283
+ <script src="/lib/session-state.js"></script>
263
284
  <!-- The editor computes its diff with the SAME module the server saves through, so what you see
264
285
  while editing and what the server writes can never disagree. -->
265
286
  <script src="/lib/apply-change.js"></script>