@deskwork/studio 0.9.5
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/dist/build-client-assets.d.ts +51 -0
- package/dist/build-client-assets.d.ts.map +1 -0
- package/dist/build-client-assets.js +341 -0
- package/dist/build-client-assets.js.map +1 -0
- package/dist/components/scrapbook-item.d.ts +108 -0
- package/dist/components/scrapbook-item.d.ts.map +1 -0
- package/dist/components/scrapbook-item.js +205 -0
- package/dist/components/scrapbook-item.js.map +1 -0
- package/dist/lib/editorial-skills-catalogue.d.ts +33 -0
- package/dist/lib/editorial-skills-catalogue.d.ts.map +1 -0
- package/dist/lib/editorial-skills-catalogue.js +211 -0
- package/dist/lib/editorial-skills-catalogue.js.map +1 -0
- package/dist/lib/override-render.d.ts +41 -0
- package/dist/lib/override-render.d.ts.map +1 -0
- package/dist/lib/override-render.js +80 -0
- package/dist/lib/override-render.js.map +1 -0
- package/dist/listen.d.ts +78 -0
- package/dist/listen.d.ts.map +1 -0
- package/dist/listen.js +155 -0
- package/dist/listen.js.map +1 -0
- package/dist/pages/chrome.d.ts +26 -0
- package/dist/pages/chrome.d.ts.map +1 -0
- package/dist/pages/chrome.js +50 -0
- package/dist/pages/chrome.js.map +1 -0
- package/dist/pages/content-detail.d.ts +14 -0
- package/dist/pages/content-detail.d.ts.map +1 -0
- package/dist/pages/content-detail.js +279 -0
- package/dist/pages/content-detail.js.map +1 -0
- package/dist/pages/content.d.ts +39 -0
- package/dist/pages/content.d.ts.map +1 -0
- package/dist/pages/content.js +414 -0
- package/dist/pages/content.js.map +1 -0
- package/dist/pages/dashboard.d.ts +32 -0
- package/dist/pages/dashboard.d.ts.map +1 -0
- package/dist/pages/dashboard.js +803 -0
- package/dist/pages/dashboard.js.map +1 -0
- package/dist/pages/help.d.ts +24 -0
- package/dist/pages/help.d.ts.map +1 -0
- package/dist/pages/help.js +433 -0
- package/dist/pages/help.js.map +1 -0
- package/dist/pages/html.d.ts +35 -0
- package/dist/pages/html.d.ts.map +1 -0
- package/dist/pages/html.js +73 -0
- package/dist/pages/html.js.map +1 -0
- package/dist/pages/index.d.ts +21 -0
- package/dist/pages/index.d.ts.map +1 -0
- package/dist/pages/index.js +174 -0
- package/dist/pages/index.js.map +1 -0
- package/dist/pages/layout.d.ts +33 -0
- package/dist/pages/layout.d.ts.map +1 -0
- package/dist/pages/layout.js +50 -0
- package/dist/pages/layout.js.map +1 -0
- package/dist/pages/review-scrapbook-drawer.d.ts +20 -0
- package/dist/pages/review-scrapbook-drawer.d.ts.map +1 -0
- package/dist/pages/review-scrapbook-drawer.js +98 -0
- package/dist/pages/review-scrapbook-drawer.js.map +1 -0
- package/dist/pages/review.d.ts +68 -0
- package/dist/pages/review.d.ts.map +1 -0
- package/dist/pages/review.js +434 -0
- package/dist/pages/review.js.map +1 -0
- package/dist/pages/scrapbook.d.ts +21 -0
- package/dist/pages/scrapbook.d.ts.map +1 -0
- package/dist/pages/scrapbook.js +250 -0
- package/dist/pages/scrapbook.js.map +1 -0
- package/dist/pages/shortform.d.ts +17 -0
- package/dist/pages/shortform.d.ts.map +1 -0
- package/dist/pages/shortform.js +142 -0
- package/dist/pages/shortform.js.map +1 -0
- package/dist/request-context.d.ts +52 -0
- package/dist/request-context.d.ts.map +1 -0
- package/dist/request-context.js +84 -0
- package/dist/request-context.js.map +1 -0
- package/dist/routes/api.d.ts +36 -0
- package/dist/routes/api.d.ts.map +1 -0
- package/dist/routes/api.js +175 -0
- package/dist/routes/api.js.map +1 -0
- package/dist/routes/scrapbook-file.d.ts +19 -0
- package/dist/routes/scrapbook-file.d.ts.map +1 -0
- package/dist/routes/scrapbook-file.js +77 -0
- package/dist/routes/scrapbook-file.js.map +1 -0
- package/dist/routes/scrapbook-mutations.d.ts +33 -0
- package/dist/routes/scrapbook-mutations.d.ts.map +1 -0
- package/dist/routes/scrapbook-mutations.js +310 -0
- package/dist/routes/scrapbook-mutations.js.map +1 -0
- package/dist/server.d.ts +52 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +581 -0
- package/dist/server.js.map +1 -0
- package/dist/tailscale.d.ts +63 -0
- package/dist/tailscale.d.ts.map +1 -0
- package/dist/tailscale.js +118 -0
- package/dist/tailscale.js.map +1 -0
- package/package.json +60 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tailscale auto-detection for the studio.
|
|
3
|
+
*
|
|
4
|
+
* Default behavior on launch: bind to loopback AND, if Tailscale is
|
|
5
|
+
* running on this machine, the local Tailscale interface(s). That
|
|
6
|
+
* makes the studio reachable from any other tailnet member by magic-
|
|
7
|
+
* DNS hostname (`<machine>.<tailnet>.ts.net`) without the operator
|
|
8
|
+
* having to think about ports, interfaces, or `--host` flags.
|
|
9
|
+
*
|
|
10
|
+
* Detection layered, fast-first:
|
|
11
|
+
*
|
|
12
|
+
* 1. **Network-interface scan** (sub-millisecond, no subprocess).
|
|
13
|
+
* Tailscale exclusively uses the IPv4 CGNAT range `100.64.0.0/10`
|
|
14
|
+
* on any platform. We walk `os.networkInterfaces()` and return any
|
|
15
|
+
* IP that lands in that range. False positives only if the operator
|
|
16
|
+
* is intentionally running their own CGNAT gateway — extremely rare.
|
|
17
|
+
*
|
|
18
|
+
* 2. **CLI enrichment** (~50ms, optional). When the `tailscale` CLI is
|
|
19
|
+
* on PATH, `tailscale status --json` provides the magic-DNS name we
|
|
20
|
+
* can show in the startup banner so the operator knows the URL their
|
|
21
|
+
* tailnet peers will use. Strictly nice-to-have; the IP-based bind
|
|
22
|
+
* works without it.
|
|
23
|
+
*
|
|
24
|
+
* Operators can disable auto-detection entirely with `--no-tailscale`
|
|
25
|
+
* (loopback only). They can also pass an explicit `--host` to override
|
|
26
|
+
* everything (Tailscale-aware logic kicks in only when `--host` was
|
|
27
|
+
* NOT explicitly set).
|
|
28
|
+
*/
|
|
29
|
+
export interface TailscaleInfo {
|
|
30
|
+
/** IPv4 address(es) of this machine on the tailnet. Always populated when Tailscale is detected. */
|
|
31
|
+
readonly ipv4: readonly string[];
|
|
32
|
+
/**
|
|
33
|
+
* Magic-DNS hostname (e.g. `orion-m4.tail8254f4.ts.net`). Populated
|
|
34
|
+
* when the `tailscale` CLI is available; null otherwise. Strictly
|
|
35
|
+
* informational — used only for display in the startup banner.
|
|
36
|
+
*/
|
|
37
|
+
readonly magicDnsName: string | null;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Scan local network interfaces for Tailscale IPv4 addresses. Returns
|
|
41
|
+
* a (possibly empty) list, sorted for deterministic output. No
|
|
42
|
+
* subprocess, no failure modes other than "no Tailscale interface" →
|
|
43
|
+
* empty array.
|
|
44
|
+
*/
|
|
45
|
+
export declare function detectTailscaleIPv4Addresses(): readonly string[];
|
|
46
|
+
/**
|
|
47
|
+
* Best-effort lookup of this machine's magic-DNS name via the
|
|
48
|
+
* `tailscale` CLI. Returns null when:
|
|
49
|
+
* - the CLI isn't on PATH
|
|
50
|
+
* - the CLI errors (daemon not running, network blip, etc.)
|
|
51
|
+
* - the JSON shape is unexpected
|
|
52
|
+
*
|
|
53
|
+
* Total cost: bounded by the 1500ms timeout; typically ~50ms when
|
|
54
|
+
* Tailscale is up and idle.
|
|
55
|
+
*/
|
|
56
|
+
export declare function detectTailscaleMagicDnsName(): string | null;
|
|
57
|
+
/**
|
|
58
|
+
* Combined detection: IPv4 from networkInterfaces (always tried),
|
|
59
|
+
* magic-DNS hostname from CLI (best-effort). Returns null when
|
|
60
|
+
* Tailscale isn't detected on this machine.
|
|
61
|
+
*/
|
|
62
|
+
export declare function detectTailscale(): TailscaleInfo | null;
|
|
63
|
+
//# sourceMappingURL=tailscale.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tailscale.d.ts","sourceRoot":"","sources":["../src/tailscale.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAKH,MAAM,WAAW,aAAa;IAC5B,oGAAoG;IACpG,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAgBD;;;;;GAKG;AACH,wBAAgB,4BAA4B,IAAI,SAAS,MAAM,EAAE,CAchE;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,GAAG,IAAI,CAoB3D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,aAAa,GAAG,IAAI,CAItD"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tailscale auto-detection for the studio.
|
|
3
|
+
*
|
|
4
|
+
* Default behavior on launch: bind to loopback AND, if Tailscale is
|
|
5
|
+
* running on this machine, the local Tailscale interface(s). That
|
|
6
|
+
* makes the studio reachable from any other tailnet member by magic-
|
|
7
|
+
* DNS hostname (`<machine>.<tailnet>.ts.net`) without the operator
|
|
8
|
+
* having to think about ports, interfaces, or `--host` flags.
|
|
9
|
+
*
|
|
10
|
+
* Detection layered, fast-first:
|
|
11
|
+
*
|
|
12
|
+
* 1. **Network-interface scan** (sub-millisecond, no subprocess).
|
|
13
|
+
* Tailscale exclusively uses the IPv4 CGNAT range `100.64.0.0/10`
|
|
14
|
+
* on any platform. We walk `os.networkInterfaces()` and return any
|
|
15
|
+
* IP that lands in that range. False positives only if the operator
|
|
16
|
+
* is intentionally running their own CGNAT gateway — extremely rare.
|
|
17
|
+
*
|
|
18
|
+
* 2. **CLI enrichment** (~50ms, optional). When the `tailscale` CLI is
|
|
19
|
+
* on PATH, `tailscale status --json` provides the magic-DNS name we
|
|
20
|
+
* can show in the startup banner so the operator knows the URL their
|
|
21
|
+
* tailnet peers will use. Strictly nice-to-have; the IP-based bind
|
|
22
|
+
* works without it.
|
|
23
|
+
*
|
|
24
|
+
* Operators can disable auto-detection entirely with `--no-tailscale`
|
|
25
|
+
* (loopback only). They can also pass an explicit `--host` to override
|
|
26
|
+
* everything (Tailscale-aware logic kicks in only when `--host` was
|
|
27
|
+
* NOT explicitly set).
|
|
28
|
+
*/
|
|
29
|
+
import { spawnSync } from 'node:child_process';
|
|
30
|
+
import { networkInterfaces } from 'node:os';
|
|
31
|
+
/**
|
|
32
|
+
* True if `addr` falls inside Tailscale's IPv4 CGNAT range
|
|
33
|
+
* (`100.64.0.0/10`, i.e. `100.64.0.0` through `100.127.255.255`).
|
|
34
|
+
*/
|
|
35
|
+
function isTailscaleIPv4(addr) {
|
|
36
|
+
const parts = addr.split('.');
|
|
37
|
+
if (parts.length !== 4)
|
|
38
|
+
return false;
|
|
39
|
+
const a = Number(parts[0]);
|
|
40
|
+
const b = Number(parts[1]);
|
|
41
|
+
if (a !== 100)
|
|
42
|
+
return false;
|
|
43
|
+
if (!Number.isFinite(b))
|
|
44
|
+
return false;
|
|
45
|
+
return b >= 64 && b <= 127;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Scan local network interfaces for Tailscale IPv4 addresses. Returns
|
|
49
|
+
* a (possibly empty) list, sorted for deterministic output. No
|
|
50
|
+
* subprocess, no failure modes other than "no Tailscale interface" →
|
|
51
|
+
* empty array.
|
|
52
|
+
*/
|
|
53
|
+
export function detectTailscaleIPv4Addresses() {
|
|
54
|
+
const interfaces = networkInterfaces();
|
|
55
|
+
const found = [];
|
|
56
|
+
for (const addrs of Object.values(interfaces)) {
|
|
57
|
+
if (!addrs)
|
|
58
|
+
continue;
|
|
59
|
+
for (const a of addrs) {
|
|
60
|
+
if (a.family !== 'IPv4')
|
|
61
|
+
continue;
|
|
62
|
+
if (a.internal)
|
|
63
|
+
continue;
|
|
64
|
+
if (isTailscaleIPv4(a.address)) {
|
|
65
|
+
found.push(a.address);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return found.sort();
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Best-effort lookup of this machine's magic-DNS name via the
|
|
73
|
+
* `tailscale` CLI. Returns null when:
|
|
74
|
+
* - the CLI isn't on PATH
|
|
75
|
+
* - the CLI errors (daemon not running, network blip, etc.)
|
|
76
|
+
* - the JSON shape is unexpected
|
|
77
|
+
*
|
|
78
|
+
* Total cost: bounded by the 1500ms timeout; typically ~50ms when
|
|
79
|
+
* Tailscale is up and idle.
|
|
80
|
+
*/
|
|
81
|
+
export function detectTailscaleMagicDnsName() {
|
|
82
|
+
const result = spawnSync('tailscale', ['status', '--json'], {
|
|
83
|
+
encoding: 'utf-8',
|
|
84
|
+
timeout: 1500,
|
|
85
|
+
});
|
|
86
|
+
if (result.error || result.status !== 0 || !result.stdout)
|
|
87
|
+
return null;
|
|
88
|
+
let parsed;
|
|
89
|
+
try {
|
|
90
|
+
parsed = JSON.parse(result.stdout);
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
if (!parsed || typeof parsed !== 'object')
|
|
96
|
+
return null;
|
|
97
|
+
const self = parsed.Self;
|
|
98
|
+
if (!self || typeof self !== 'object')
|
|
99
|
+
return null;
|
|
100
|
+
const dnsName = self.DNSName;
|
|
101
|
+
if (typeof dnsName !== 'string' || dnsName.length === 0)
|
|
102
|
+
return null;
|
|
103
|
+
// The CLI returns the FQDN with a trailing dot ("orion-m4.tail8254f4.ts.net.").
|
|
104
|
+
// Strip it for cleaner banner output.
|
|
105
|
+
return dnsName.endsWith('.') ? dnsName.slice(0, -1) : dnsName;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Combined detection: IPv4 from networkInterfaces (always tried),
|
|
109
|
+
* magic-DNS hostname from CLI (best-effort). Returns null when
|
|
110
|
+
* Tailscale isn't detected on this machine.
|
|
111
|
+
*/
|
|
112
|
+
export function detectTailscale() {
|
|
113
|
+
const ipv4 = detectTailscaleIPv4Addresses();
|
|
114
|
+
if (ipv4.length === 0)
|
|
115
|
+
return null;
|
|
116
|
+
return { ipv4, magicDnsName: detectTailscaleMagicDnsName() };
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=tailscale.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tailscale.js","sourceRoot":"","sources":["../src/tailscale.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@deskwork/studio",
|
|
3
|
+
"version": "0.9.5",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"description": "Editorial review studio — local web UI for the deskwork plugin",
|
|
6
|
+
"homepage": "https://github.com/audiocontrol-org/deskwork#readme",
|
|
7
|
+
"license": "GPL-3.0-or-later",
|
|
8
|
+
"author": "audiocontrol-org",
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "https://github.com/audiocontrol-org/deskwork.git",
|
|
12
|
+
"directory": "packages/studio"
|
|
13
|
+
},
|
|
14
|
+
"publishConfig": {
|
|
15
|
+
"access": "public"
|
|
16
|
+
},
|
|
17
|
+
"engines": {
|
|
18
|
+
"node": ">=20"
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist",
|
|
22
|
+
"package.json",
|
|
23
|
+
"README.md"
|
|
24
|
+
],
|
|
25
|
+
"bin": {
|
|
26
|
+
"deskwork-studio": "./dist/server.js"
|
|
27
|
+
},
|
|
28
|
+
"exports": {
|
|
29
|
+
".": {
|
|
30
|
+
"types": "./dist/server.d.ts",
|
|
31
|
+
"default": "./dist/server.js"
|
|
32
|
+
},
|
|
33
|
+
"./package.json": "./package.json"
|
|
34
|
+
},
|
|
35
|
+
"scripts": {
|
|
36
|
+
"build": "tsc -b tsconfig.build.json",
|
|
37
|
+
"prepack": "tsc -b tsconfig.build.json",
|
|
38
|
+
"test": "vitest run",
|
|
39
|
+
"test:watch": "vitest",
|
|
40
|
+
"typecheck": "tsc --noEmit"
|
|
41
|
+
},
|
|
42
|
+
"dependencies": {
|
|
43
|
+
"@deskwork/core": "*",
|
|
44
|
+
"@hono/node-server": "^1.13.7",
|
|
45
|
+
"hono": "^4.6.0"
|
|
46
|
+
},
|
|
47
|
+
"devDependencies": {
|
|
48
|
+
"@codemirror/commands": "^6.10.3",
|
|
49
|
+
"@codemirror/lang-markdown": "^6.5.0",
|
|
50
|
+
"@codemirror/language": "^6.12.3",
|
|
51
|
+
"@codemirror/state": "^6.6.0",
|
|
52
|
+
"@codemirror/view": "^6.41.1",
|
|
53
|
+
"@lezer/highlight": "^1.2.3",
|
|
54
|
+
"@types/node": "^22.10.0",
|
|
55
|
+
"esbuild": "^0.28.0",
|
|
56
|
+
"tsx": "^4.21.0",
|
|
57
|
+
"typescript": "^5.7.0",
|
|
58
|
+
"vitest": "^4.1.2"
|
|
59
|
+
}
|
|
60
|
+
}
|