@starlove/orbit 1.3.5 → 1.4.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.
- package/Dockerfile +2 -1
- package/README.md +10 -9
- package/SKILL-ORBIT.md +41 -17
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-Bold.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-BoldItalic.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-Italic.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-Light.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-LightItalic.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-Medium.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-MediumItalic.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-Regular.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-SemiBold.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/ChakraPetch-SemiBoldItalic.ttf +0 -0
- package/dist/full/fonts/Chakra_Petch/OFL.txt +93 -0
- package/dist/full/fonts/Inter/Inter-Italic-VariableFont_opsz,wght.ttf +0 -0
- package/dist/full/fonts/Inter/Inter-VariableFont_opsz,wght.ttf +0 -0
- package/dist/full/fonts/Inter/OFL.txt +93 -0
- package/dist/full/fonts/Inter/README.txt +118 -0
- package/dist/full/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- package/dist/full/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- package/dist/full/fonts/JetBrains_Mono/OFL.txt +93 -0
- package/dist/full/fonts/JetBrains_Mono/README.txt +79 -0
- package/dist/full/fonts/OpenRing-Regular.ttf +0 -0
- package/dist/full/fonts/Open_Sans/OFL.txt +93 -0
- package/dist/full/fonts/Open_Sans/OpenSans-Italic-VariableFont_wdth,wght.ttf +0 -0
- package/dist/full/fonts/Open_Sans/OpenSans-VariableFont_wdth,wght.ttf +0 -0
- package/dist/full/fonts/Open_Sans/README.txt +100 -0
- package/dist/full/fonts/Orbitron/OFL.txt +93 -0
- package/dist/full/fonts/Orbitron/Orbitron-VariableFont_wght.ttf +0 -0
- package/dist/full/fonts/Orbitron/README.txt +68 -0
- package/dist/full/fonts/Rajdhani/OFL.txt +93 -0
- package/dist/full/fonts/Rajdhani/Rajdhani-Bold.ttf +0 -0
- package/dist/full/fonts/Rajdhani/Rajdhani-Light.ttf +0 -0
- package/dist/full/fonts/Rajdhani/Rajdhani-Medium.ttf +0 -0
- package/dist/full/fonts/Rajdhani/Rajdhani-Regular.ttf +0 -0
- package/dist/full/fonts/Rajdhani/Rajdhani-SemiBold.ttf +0 -0
- package/dist/full/fonts/runescape-uf.ttf +0 -0
- package/dist/full/index.html +135 -25
- package/dist/full/js/app.62905fcb.js +952 -0
- package/dist/full/js/app.62905fcb.js.map +7 -0
- package/dist/full/styles.4e60d824.css +1 -0
- package/dist/full/version.json +2 -2
- package/docs/AGENT_PROTOCOL.md +20 -13
- package/docs/ORBIT_DISPATCH.md +73 -38
- package/docs/UPDATING.md +114 -0
- package/package.json +5 -7
- package/public/fonts/Chakra_Petch/ChakraPetch-Bold.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-BoldItalic.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-Italic.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-Light.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-LightItalic.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-Medium.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-MediumItalic.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-Regular.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-SemiBold.ttf +0 -0
- package/public/fonts/Chakra_Petch/ChakraPetch-SemiBoldItalic.ttf +0 -0
- package/public/fonts/Chakra_Petch/OFL.txt +93 -0
- package/public/fonts/Inter/Inter-Italic-VariableFont_opsz,wght.ttf +0 -0
- package/public/fonts/Inter/Inter-VariableFont_opsz,wght.ttf +0 -0
- package/public/fonts/Inter/OFL.txt +93 -0
- package/public/fonts/Inter/README.txt +118 -0
- package/public/fonts/JetBrains_Mono/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
- package/public/fonts/JetBrains_Mono/JetBrainsMono-VariableFont_wght.ttf +0 -0
- package/public/fonts/JetBrains_Mono/OFL.txt +93 -0
- package/public/fonts/JetBrains_Mono/README.txt +79 -0
- package/public/fonts/OpenRing-Regular.ttf +0 -0
- package/public/fonts/Open_Sans/OFL.txt +93 -0
- package/public/fonts/Open_Sans/OpenSans-Italic-VariableFont_wdth,wght.ttf +0 -0
- package/public/fonts/Open_Sans/OpenSans-VariableFont_wdth,wght.ttf +0 -0
- package/public/fonts/Open_Sans/README.txt +100 -0
- package/public/fonts/Orbitron/OFL.txt +93 -0
- package/public/fonts/Orbitron/Orbitron-VariableFont_wght.ttf +0 -0
- package/public/fonts/Orbitron/README.txt +68 -0
- package/public/fonts/Rajdhani/OFL.txt +93 -0
- package/public/fonts/Rajdhani/Rajdhani-Bold.ttf +0 -0
- package/public/fonts/Rajdhani/Rajdhani-Light.ttf +0 -0
- package/public/fonts/Rajdhani/Rajdhani-Medium.ttf +0 -0
- package/public/fonts/Rajdhani/Rajdhani-Regular.ttf +0 -0
- package/public/fonts/Rajdhani/Rajdhani-SemiBold.ttf +0 -0
- package/public/fonts/runescape-uf.ttf +0 -0
- package/public/index.html +133 -23
- package/public/js/artifact-drawer.js +79 -0
- package/public/js/board-export.js +161 -0
- package/public/js/board-menu.js +219 -17
- package/public/js/card-actions.js +1 -1
- package/public/js/create-card.js +60 -23
- package/public/js/drawer.js +164 -4
- package/public/js/font-preference.js +229 -0
- package/public/js/format.js +0 -10
- package/public/js/icons.js +16 -0
- package/public/js/local-backend.js +31 -4
- package/public/js/main.js +7 -1
- package/public/js/modal.js +3 -1
- package/public/js/panel.js +58 -0
- package/public/js/settings-tabs.js +1 -1
- package/public/js/settings.js +606 -275
- package/public/js/sse.js +3 -0
- package/public/js/state.js +1 -1
- package/public/js/text-editing.js +128 -0
- package/public/js/ticket-detail.js +377 -148
- package/public/js/ticket-typeahead.js +49 -0
- package/public/js/toast.js +19 -4
- package/public/js/topbar-notes.js +3 -3
- package/public/js/typeahead.js +206 -0
- package/public/js/update-check.js +58 -0
- package/public/styles.css +5447 -3572
- package/src/cli/orbit.js +9 -5
- package/src/core/agent.js +12 -4
- package/src/core/agents-md.js +3 -3
- package/src/core/artifacts.js +149 -0
- package/src/core/board.js +3 -2
- package/src/core/boards.js +0 -1
- package/src/core/css-bundle.js +1 -0
- package/src/core/db.js +6 -0
- package/src/core/dispatch.js +344 -34
- package/src/core/http.js +9 -2
- package/src/core/paths.js +26 -2
- package/src/core/router.js +33 -0
- package/src/core/search.js +3 -2
- package/src/core/snapshots.js +10 -5
- package/src/core/tickets.js +34 -3
- package/src/core/util.js +3 -2
- package/src/core/version-check.js +154 -0
- package/src/mcp/orbit-client.js +18 -2
- package/src/mcp-server.js +19 -14
- package/src/server.js +28 -3
- package/dist/full/js/app.4ae80764.js +0 -742
- package/dist/full/js/app.4ae80764.js.map +0 -7
- package/dist/full/styles.b9e0c130.css +0 -1
package/dist/full/index.html
CHANGED
|
@@ -15,11 +15,14 @@
|
|
|
15
15
|
sizes="180x180"
|
|
16
16
|
href="./apple-touch-icon.png"
|
|
17
17
|
/>
|
|
18
|
-
<!-- Apply the stored theme + motion
|
|
19
|
-
the app underneath the splash paints in the right theme
|
|
20
|
-
and the
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
<!-- Apply the stored theme + motion + font/size preferences before first
|
|
19
|
+
paint, so the app underneath the splash paints in the right theme
|
|
20
|
+
(no flash) and at the right type size (no layout jump), and the
|
|
21
|
+
splash respects an explicit reduce-motion choice. Mirrors
|
|
22
|
+
theme-preference.js (mab_theme), motion-preference.js
|
|
23
|
+
(mab_reduce_motion → data-motion), and font-preference.js
|
|
24
|
+
(orbit_font_preferences → --orbit-font-* / --type-*); main.js
|
|
25
|
+
reconciles on load. -->
|
|
23
26
|
<script>
|
|
24
27
|
try {
|
|
25
28
|
var t = localStorage.getItem("mab_theme");
|
|
@@ -30,10 +33,61 @@
|
|
|
30
33
|
document.documentElement.setAttribute("data-motion", "reduce");
|
|
31
34
|
else if (rm === "false")
|
|
32
35
|
document.documentElement.setAttribute("data-motion", "full");
|
|
36
|
+
var fp = JSON.parse(localStorage.getItem("orbit_font_preferences") || "{}");
|
|
37
|
+
var stacks = {
|
|
38
|
+
inter: '"Orbit Inter", "Inter", "Segoe UI Variable", "Segoe UI", Arial, sans-serif',
|
|
39
|
+
openSans: '"Orbit Open Sans", "Open Sans", "Segoe UI Variable", "Segoe UI", Arial, sans-serif',
|
|
40
|
+
jetBrainsMono: '"Orbit JetBrains Mono", "JetBrains Mono", "Cascadia Mono", "SFMono-Regular", Consolas, monospace',
|
|
41
|
+
chakraPetch: '"Orbit Chakra Petch", "Chakra Petch", "Segoe UI Variable", "Segoe UI", Arial, sans-serif',
|
|
42
|
+
orbitron: '"Orbit Orbitron", "Orbitron", "Segoe UI Variable", "Segoe UI", Arial, sans-serif',
|
|
43
|
+
rajdhani: '"Orbit Rajdhani", "Rajdhani", "Segoe UI Variable", "Segoe UI", Arial, sans-serif',
|
|
44
|
+
runescapeUF: '"Orbit Runescape UF", "Cascadia Mono", monospace',
|
|
45
|
+
openRing: '"Orbit Open Ring", "Segoe UI Variable", "Segoe UI", Arial, sans-serif'
|
|
46
|
+
};
|
|
47
|
+
var defaults = {
|
|
48
|
+
control: "inter",
|
|
49
|
+
heading: "inter",
|
|
50
|
+
label: "inter",
|
|
51
|
+
badge: "orbitron"
|
|
52
|
+
};
|
|
53
|
+
var aliases = { ui: "control" };
|
|
54
|
+
var targets = {
|
|
55
|
+
control: "--orbit-font-control",
|
|
56
|
+
heading: "--orbit-font-heading",
|
|
57
|
+
label: "--orbit-font-label",
|
|
58
|
+
badge: "--orbit-font-badge"
|
|
59
|
+
};
|
|
60
|
+
var dataAttrs = {
|
|
61
|
+
control: "data-font-control",
|
|
62
|
+
heading: "data-font-heading",
|
|
63
|
+
label: "data-font-label",
|
|
64
|
+
badge: "data-font-badge"
|
|
65
|
+
};
|
|
66
|
+
if (!fp.badge && fp.label && fp.label !== "inter" && stacks[fp.label]) {
|
|
67
|
+
fp.badge = fp.label;
|
|
68
|
+
}
|
|
69
|
+
Object.keys(targets).forEach(function (target) {
|
|
70
|
+
var id = stacks[fp[target]] ? fp[target] : defaults[target];
|
|
71
|
+
Object.keys(aliases).forEach(function (legacy) {
|
|
72
|
+
if (aliases[legacy] === target && !stacks[fp[target]] && stacks[fp[legacy]]) {
|
|
73
|
+
id = fp[legacy];
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
document.documentElement.style.setProperty(targets[target], stacks[id]);
|
|
77
|
+
document.documentElement.setAttribute(dataAttrs[target], id);
|
|
78
|
+
});
|
|
79
|
+
var siteFont = stacks[fp.site] ? fp.site : "inter";
|
|
80
|
+
// Body text always follows the primary font.
|
|
81
|
+
document.documentElement.style.setProperty("--orbit-font-body", stacks[siteFont]);
|
|
82
|
+
var userScale = Number(fp.userScale);
|
|
83
|
+
if (!isFinite(userScale)) userScale = 1;
|
|
84
|
+
userScale = Math.min(1.3, Math.max(0.85, userScale));
|
|
85
|
+
document.documentElement.style.setProperty("--type-user-scale", String(userScale));
|
|
86
|
+
document.documentElement.setAttribute("data-font-site", siteFont);
|
|
33
87
|
} catch (e) {}
|
|
34
88
|
</script>
|
|
35
89
|
<link rel="preload" as="image" href="./orbits-logo.png" />
|
|
36
|
-
<link rel="stylesheet" href="styles.
|
|
90
|
+
<link rel="stylesheet" href="styles.4e60d824.css" />
|
|
37
91
|
<!-- Boot splash — the canonical ss-ui loading screen (see the package's
|
|
38
92
|
components/loader.css). Inline critical CSS so it paints before
|
|
39
93
|
/js/main.js loads. The logo grows in then breathes; no spinner.
|
|
@@ -162,11 +216,13 @@
|
|
|
162
216
|
id="brandFocusPopover"
|
|
163
217
|
class="brand-focus-popover"
|
|
164
218
|
role="dialog"
|
|
165
|
-
aria-label="
|
|
219
|
+
aria-label="Notes For You"
|
|
166
220
|
hidden
|
|
167
221
|
>
|
|
168
|
-
<div class="brand-focus-
|
|
169
|
-
|
|
222
|
+
<div class="inline-md-field brand-focus-notes-field">
|
|
223
|
+
<span class="inline-md-field-label font-orbitron">Notes For You</span>
|
|
224
|
+
<div id="brandFocusNotes" class="brand-focus-notes-body"></div>
|
|
225
|
+
</div>
|
|
170
226
|
</div>
|
|
171
227
|
</div>
|
|
172
228
|
<div class="controls">
|
|
@@ -193,11 +249,12 @@
|
|
|
193
249
|
<button
|
|
194
250
|
id="newTicketBtn"
|
|
195
251
|
type="button"
|
|
196
|
-
class="topbar-btn
|
|
252
|
+
class="topbar-btn topbar-ctl-shrink"
|
|
197
253
|
data-variant="cta"
|
|
254
|
+
aria-label="New Card"
|
|
198
255
|
>
|
|
199
|
-
<span class="btn-plus" aria-hidden="true"
|
|
200
|
-
<span class="btn-
|
|
256
|
+
<span class="btn-plus" aria-hidden="true"></span>
|
|
257
|
+
<span class="topbar-btn-label">New Card</span>
|
|
201
258
|
</button>
|
|
202
259
|
<div class="topbar-menu">
|
|
203
260
|
<button
|
|
@@ -219,18 +276,18 @@
|
|
|
219
276
|
>
|
|
220
277
|
<rect
|
|
221
278
|
x="4"
|
|
222
|
-
y="
|
|
279
|
+
y="2"
|
|
223
280
|
width="6"
|
|
224
|
-
height="
|
|
281
|
+
height="20"
|
|
225
282
|
rx="0.75"
|
|
226
283
|
stroke="currentColor"
|
|
227
284
|
stroke-width="2"
|
|
228
285
|
/>
|
|
229
286
|
<rect
|
|
230
287
|
x="14"
|
|
231
|
-
y="
|
|
288
|
+
y="2"
|
|
232
289
|
width="6"
|
|
233
|
-
height="
|
|
290
|
+
height="20"
|
|
234
291
|
rx="0.75"
|
|
235
292
|
stroke="currentColor"
|
|
236
293
|
stroke-width="2"
|
|
@@ -320,6 +377,7 @@
|
|
|
320
377
|
<circle cx="12" cy="12" r="3" />
|
|
321
378
|
</svg>
|
|
322
379
|
<span class="topbar-btn-label">Settings</span>
|
|
380
|
+
<span class="topbar-update-dot" title="Update available" hidden></span>
|
|
323
381
|
</button>
|
|
324
382
|
</div>
|
|
325
383
|
</header>
|
|
@@ -359,12 +417,13 @@
|
|
|
359
417
|
id="drawerTitleBlock"
|
|
360
418
|
class="drawer-title-block"
|
|
361
419
|
></div>
|
|
362
|
-
<
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
420
|
+
<div id="drawerTabsShell" class="drawer-tabs-shell" hidden>
|
|
421
|
+
<nav
|
|
422
|
+
id="drawerTabs"
|
|
423
|
+
class="drawer-tabs"
|
|
424
|
+
role="tablist"
|
|
425
|
+
></nav>
|
|
426
|
+
</div>
|
|
368
427
|
<button
|
|
369
428
|
type="button"
|
|
370
429
|
id="drawerArchiveBtn"
|
|
@@ -399,12 +458,55 @@
|
|
|
399
458
|
class="drawer-close"
|
|
400
459
|
aria-label="Close panel"
|
|
401
460
|
>
|
|
402
|
-
|
|
461
|
+
<svg
|
|
462
|
+
class="ui-icon ui-icon-x"
|
|
463
|
+
viewBox="0 0 24 24"
|
|
464
|
+
aria-hidden="true"
|
|
465
|
+
focusable="false"
|
|
466
|
+
>
|
|
467
|
+
<path d="M6 6l12 12M18 6 6 18" />
|
|
468
|
+
</svg>
|
|
403
469
|
</button>
|
|
404
470
|
</header>
|
|
405
471
|
<div id="drawerInner" class="drawer-inner"></div>
|
|
406
472
|
</aside>
|
|
407
473
|
|
|
474
|
+
<div
|
|
475
|
+
id="artifactDrawerBackdrop"
|
|
476
|
+
class="artifact-drawer-backdrop"
|
|
477
|
+
hidden
|
|
478
|
+
aria-hidden="true"
|
|
479
|
+
></div>
|
|
480
|
+
<aside
|
|
481
|
+
id="artifactDrawer"
|
|
482
|
+
class="artifact-drawer"
|
|
483
|
+
hidden
|
|
484
|
+
aria-label="Linked markdown artifact"
|
|
485
|
+
>
|
|
486
|
+
<header class="artifact-drawer-header">
|
|
487
|
+
<div class="artifact-drawer-title-block">
|
|
488
|
+
<h2 id="artifactDrawerTitle" class="artifact-drawer-title">Artifact</h2>
|
|
489
|
+
<p id="artifactDrawerMeta" class="artifact-drawer-meta"></p>
|
|
490
|
+
</div>
|
|
491
|
+
<button
|
|
492
|
+
type="button"
|
|
493
|
+
id="artifactDrawerCloseBtn"
|
|
494
|
+
class="drawer-close artifact-drawer-close"
|
|
495
|
+
aria-label="Close artifact"
|
|
496
|
+
>
|
|
497
|
+
<svg
|
|
498
|
+
class="ui-icon ui-icon-x"
|
|
499
|
+
viewBox="0 0 24 24"
|
|
500
|
+
aria-hidden="true"
|
|
501
|
+
focusable="false"
|
|
502
|
+
>
|
|
503
|
+
<path d="M6 6l12 12M18 6 6 18" />
|
|
504
|
+
</svg>
|
|
505
|
+
</button>
|
|
506
|
+
</header>
|
|
507
|
+
<div id="artifactDrawerBody" class="artifact-drawer-body"></div>
|
|
508
|
+
</aside>
|
|
509
|
+
|
|
408
510
|
<template id="commentFormTemplate">
|
|
409
511
|
<form class="comment-form">
|
|
410
512
|
<textarea
|
|
@@ -477,6 +579,7 @@
|
|
|
477
579
|
<button
|
|
478
580
|
type="button"
|
|
479
581
|
class="welcome-dialog-cta"
|
|
582
|
+
data-modal-initial-focus
|
|
480
583
|
data-modal-close
|
|
481
584
|
>
|
|
482
585
|
Get started
|
|
@@ -512,7 +615,14 @@
|
|
|
512
615
|
aria-label="Close"
|
|
513
616
|
data-modal-close
|
|
514
617
|
>
|
|
515
|
-
|
|
618
|
+
<svg
|
|
619
|
+
class="ui-icon ui-icon-x"
|
|
620
|
+
viewBox="0 0 24 24"
|
|
621
|
+
aria-hidden="true"
|
|
622
|
+
focusable="false"
|
|
623
|
+
>
|
|
624
|
+
<path d="M6 6l12 12M18 6 6 18" />
|
|
625
|
+
</svg>
|
|
516
626
|
</button>
|
|
517
627
|
</div>
|
|
518
628
|
<div class="welcome-dialog-body">
|
|
@@ -620,7 +730,7 @@
|
|
|
620
730
|
</div>
|
|
621
731
|
</dialog>
|
|
622
732
|
|
|
623
|
-
<script src="js/app.
|
|
733
|
+
<script src="js/app.62905fcb.js" type="module"></script>
|
|
624
734
|
<!-- Fade out the boot splash once the DOM is ready. The /js/main.js
|
|
625
735
|
module runs before DOMContentLoaded, so theme/motion + wiring are
|
|
626
736
|
already applied by the time this fires. -->
|