@songsid/agend 2.3.2-beta.7 → 2.3.2-beta.9

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/auth-api.js CHANGED
@@ -52,6 +52,8 @@ const ASSETS = {
52
52
  // #1408: the design tokens every panel shares, and the font they name (Inter, SIL OFL 1.1: shared/fonts/OFL.txt).
53
53
  "tokens.css": { file: join("shared", "tokens.css"), type: "text/css; charset=utf-8" },
54
54
  "inter.woff2": { file: join("shared", "fonts", "inter.woff2"), type: "font/woff2" },
55
+ // #2631: the Office's built-in Cozy style is drawn on this picture (static, no data, like the font).
56
+ "office-cozy.png": { file: join("shared", "office", "cozy.png"), type: "image/png" },
55
57
  // #1408: the app shell's public closure — the entry module, everything it imports statically, and the vendored
56
58
  // Preact + htm (shared/vendor/vendor.json, byte-checked). Static code with no data, like signin.js; the panels that
57
59
  // need a session stay behind the gate under /ui/js/ and are reached only by a dynamic import.
@@ -1 +1 @@
1
- {"version":3,"file":"auth-api.js","sourceRoot":"","sources":["../src/auth-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-api.js","sourceRoot":"","sources":["../src/auth-api.ts"],"names":[],"mappings":"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"}
@@ -263,13 +263,18 @@ in each (whole teams or single instances; none = everyone) and its style, and up
263
263
  artist's pictures: `manifest.json` plus PNGs, format v1, kept in `web-office-skins/` in the AgEnD home; the host
264
264
  checks every rule — PNG only, each strip exactly frames·w × h, a 16:9 background, size caps — and never changes a
265
265
  pack; a strip may give its displayed size, `dw`/`dh`, apart from its pictures' size, and a character may walk four
266
- ways with `walkDown`, `walkUp` and `walkSide`, the side one mirrored for left). **Style** (per browser for the whole fleet, per office for a stored one): **Desks** (the default),
267
- **Studio** — one scene (Work, Lounge, Help desk, Nap corner) where each instance walks to the area for its state —
268
- or an uploaded pack; one the page cannot load is drawn as Desks with a note. On a stored office in Studio or a pack,
266
+ ways with `walkDown`, `walkUp` and `walkSide`, the side one mirrored for left). **Style** (per browser for the whole fleet, per office for a stored one): **Desks**,
267
+ **Studio** (one scene — Work, Lounge, Help desk, Nap corner — where each instance walks to the area for its state),
268
+ **Cozy** (#2631: the same in a warm pixel-art office drawn as one picture; its notice board says a skin pack can
269
+ restyle it; the default for a browser that has not picked a style and for a new office — a saved office keeps its
270
+ own) or an uploaded pack; one the page cannot load is drawn as Desks with a note. On a stored office in Studio,
271
+ Cozy or a pack,
269
272
  **Edit layout** (admin only) shows a 1280×720 coordinate grid and lets you drag seats, furniture, the door and
270
273
  waypoints (or Tab to one and use the arrow keys, Shift for 10), add or remove waypoints and join or unjoin
271
- corridors; **Save layout** keeps the moves as that office's overrides (the pack stays as uploaded), **Reset** goes
272
- back to the pack's own. While it is open the office picker and Edit offices wait (**Cancel** closes it); if someone
274
+ corridors; an item that sleeps at bedtime (a pack's `night`) has a night handle too ("Item {id} (night)": its night
275
+ picture faint, a moon, a line to its day place; on the day place while it sleeps in place) — drag it to give the item
276
+ its own night place, **Back to the pack's night place** undoes it (#2665); **Save layout** keeps the moves as that
277
+ office's overrides (the pack stays as uploaded), **Reset** goes back to the pack's own. While it is open the office picker and Edit offices wait (**Cancel** closes it); if someone
273
278
  saved the offices meanwhile, Save says so and keeps your layout — Save again puts it on the current list. A crowded area packs extra people into a tighter grid, then shows "+N" in its corner; there
274
279
  only calls and work get bubbles (a few at most) and name tags show on hover or focus. **Hide paused and stopped**
275
280
  (per browser, off by default) leaves the sleepers out. Now and then someone says a short line for their state in a
@@ -275,13 +275,18 @@ in each (whole teams or single instances; none = everyone) and its style, and up
275
275
  artist's pictures: `manifest.json` plus PNGs, format v1, kept in `web-office-skins/` in the AgEnD home; the host
276
276
  checks every rule — PNG only, each strip exactly frames·w × h, a 16:9 background, size caps — and never changes a
277
277
  pack; a strip may give its displayed size, `dw`/`dh`, apart from its pictures' size, and a character may walk four
278
- ways with `walkDown`, `walkUp` and `walkSide`, the side one mirrored for left). **Style** (per browser for the whole fleet, per office for a stored one): **Desks** (the default),
279
- **Studio** — one scene (Work, Lounge, Help desk, Nap corner) where each instance walks to the area for its state —
280
- or an uploaded pack; one the page cannot load is drawn as Desks with a note. On a stored office in Studio or a pack,
278
+ ways with `walkDown`, `walkUp` and `walkSide`, the side one mirrored for left). **Style** (per browser for the whole fleet, per office for a stored one): **Desks**,
279
+ **Studio** (one scene — Work, Lounge, Help desk, Nap corner — where each instance walks to the area for its state),
280
+ **Cozy** (#2631: the same in a warm pixel-art office drawn as one picture; its notice board says a skin pack can
281
+ restyle it; the default for a browser that has not picked a style and for a new office — a saved office keeps its
282
+ own) or an uploaded pack; one the page cannot load is drawn as Desks with a note. On a stored office in Studio,
283
+ Cozy or a pack,
281
284
  **Edit layout** (admin only) shows a 1280×720 coordinate grid and lets you drag seats, furniture, the door and
282
285
  waypoints (or Tab to one and use the arrow keys, Shift for 10), add or remove waypoints and join or unjoin
283
- corridors; **Save layout** keeps the moves as that office's overrides (the pack stays as uploaded), **Reset** goes
284
- back to the pack's own. On a screen ≥1200 px its controls sit in the right-hand panel (the canvas whole for the
286
+ corridors; an item that sleeps at bedtime (a pack's `night`) has a night handle too ("Item {id} (night)": its night
287
+ picture faint, a moon, a line to its day place; on the day place while it sleeps in place) — drag it to give the item
288
+ its own night place, **Back to the pack's night place** undoes it (#2665); **Save layout** keeps the moves as that
289
+ office's overrides (the pack stays as uploaded), **Reset** goes back to the pack's own. On a screen ≥1200 px its controls sit in the right-hand panel (the canvas whole for the
285
290
  handles); narrower, or in fullscreen, they are the bar along the canvas's bottom. Esc is Cancel. While either editor
286
291
  is docked the page beside it works, Ctrl+K search included; leaving the page with unsaved changes asks first
287
292
  ("Discard changes"). While it is open the office picker and Edit offices wait (**Cancel** closes it); if someone
@@ -1,5 +1,8 @@
1
- /** `/assets/<name>` → src/ui/shared/<name>: the share page's closure there, its stylesheets and the font they name. */
1
+ /** `/assets/<name>` → src/ui/shared/<name>: the share page's closure there, its stylesheets, the font they name and the
2
+ * Cozy style's picture (#2631). */
2
3
  export declare const SHARE_ASSETS: Readonly<Record<string, string>>;
4
+ /** An asset kept below src/ui/shared/ rather than in it, by name. */
5
+ export declare const SHARE_ASSET_FILES: Readonly<Record<string, string>>;
3
6
  /** `/ui/js/<name>` → src/ui/<name>: the share page's own module and the Office's. */
4
7
  export declare const SHARE_MODULES: readonly string[];
5
8
  /** A static file the share page loads, by its path on the share origin, or null (not one of them). */
@@ -12,7 +12,8 @@ import { dirname, join } from "node:path";
12
12
  import { fileURLToPath } from "node:url";
13
13
  const UI_DIR = join(dirname(fileURLToPath(import.meta.url)), "ui");
14
14
  const JS = "text/javascript; charset=utf-8";
15
- /** `/assets/<name>` → src/ui/shared/<name>: the share page's closure there, its stylesheets and the font they name. */
15
+ /** `/assets/<name>` → src/ui/shared/<name>: the share page's closure there, its stylesheets, the font they name and the
16
+ * Cozy style's picture (#2631). */
16
17
  export const SHARE_ASSETS = {
17
18
  ...Object.fromEntries([
18
19
  "app-ctx.js", "app-html.js", "app-i18n.js", "app-nav.js", "app-prefs.js", "app-route.js", "app-store.js", "app-themes.js", "header-tools.js",
@@ -20,8 +21,10 @@ export const SHARE_ASSETS = {
20
21
  "side-panel.js", "text-undo.js", "ui-confirm.js", "ui-dialog.js", "ui-icons.js", "ui-states.js", "ui-toast.js", "usage-dialog.js",
21
22
  "view-roster-store.js", "view-strings.js",
22
23
  ].map(name => [name, JS])),
23
- "tokens.css": "text/css; charset=utf-8", "app.css": "text/css; charset=utf-8", "inter.woff2": "font/woff2",
24
+ "tokens.css": "text/css; charset=utf-8", "app.css": "text/css; charset=utf-8", "inter.woff2": "font/woff2", "office-cozy.png": "image/png",
24
25
  };
26
+ /** An asset kept below src/ui/shared/ rather than in it, by name. */
27
+ export const SHARE_ASSET_FILES = { "inter.woff2": join("fonts", "inter.woff2"), "office-cozy.png": join("office", "cozy.png") };
25
28
  /** `/ui/js/<name>` → src/ui/<name>: the share page's own module and the Office's. */
26
29
  export const SHARE_MODULES = [
27
30
  "office-share-page.js", "fleet-office.js", "fleet-office-model.js", "fleet-office-skin.js", "fleet-office-zones.js", "fleet-office-store.js",
@@ -47,7 +50,7 @@ export function officeShareStatic(path) {
47
50
  const asset = /^\/assets\/([A-Za-z0-9_.-]+)$/.exec(path);
48
51
  if (asset && Object.prototype.hasOwnProperty.call(SHARE_ASSETS, asset[1])) {
49
52
  const name = asset[1];
50
- const body = read(join(UI_DIR, "shared", name === "inter.woff2" ? join("fonts", name) : name));
53
+ const body = read(join(UI_DIR, "shared", SHARE_ASSET_FILES[name] ?? name));
51
54
  return body ? { body, type: SHARE_ASSETS[name] } : null;
52
55
  }
53
56
  const mod = /^\/ui\/js\/([a-z0-9_-]+\.js)$/.exec(path);
@@ -1 +1 @@
1
- {"version":3,"file":"office-share-page.js","sourceRoot":"","sources":["../src/office-share-page.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"office-share-page.js","sourceRoot":"","sources":["../src/office-share-page.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,14 @@ export declare const OFFICE_SHARE_LIMITS: {
14
14
  /** The page's static files (its code, the same for every share), all shares together. */
15
15
  readonly staticRequestsPerMinute: 1200;
16
16
  readonly staticBytesPerMinute: number;
17
+ /**
18
+ * #2662: a share's pack pictures (immutable, content-addressed: a browser reads each once) have their own minute, never
19
+ * the 120 above: `pictureLoads` times what the shown packs hold (their files and bytes, as the host lists them), so a
20
+ * viewer's first look at every room never reaches it, and at least the floors here.
21
+ */
22
+ readonly pictureLoads: 2;
23
+ readonly pictureRequestsFloor: 240;
24
+ readonly pictureBytesFloor: number;
17
25
  };
18
26
  /** "All offices": every stored office (and whoever is in none); otherwise a stored office's id. */
19
27
  export declare const ALL_OFFICES = "all";
@@ -89,17 +97,23 @@ export declare class OfficeShares {
89
97
  private prune;
90
98
  private announce;
91
99
  }
100
+ export interface OfficeShareRate {
101
+ requests: number;
102
+ bytes: number;
103
+ }
92
104
  /** Per key (a share's id): requests and bytes in a sliding minute (monotonic, memory only). */
93
105
  export declare class OfficeShareLimiter {
94
106
  private readonly now;
95
107
  private readonly limits;
96
108
  private readonly seen;
97
- constructor(now?: () => number, limits?: {
98
- requests: number;
99
- bytes: number;
100
- });
101
- /** A request arrives: false when the key has had its requests or bytes this minute. */
102
- admit(id: string): boolean;
109
+ constructor(now?: () => number, limits?: OfficeShareRate);
110
+ /** A request arrives: false when the key has had its requests or bytes this minute (`limits`: this key's, #2662). */
111
+ admit(id: string, limits?: OfficeShareRate): boolean;
112
+ /**
113
+ * #2662: whole seconds (1–60) until admit() would let the key in again — when enough of this minute's requests, and of
114
+ * its bytes, have left it. For Retry-After.
115
+ */
116
+ retryAfter(id: string, limits?: OfficeShareRate): number;
103
117
  /** What the admitted request answered, in bytes. */
104
118
  sent(id: string, bytes: number): void;
105
119
  forget(id: string): void;
@@ -136,6 +150,8 @@ export interface OfficeShareSource {
136
150
  list(): {
137
151
  packs: Array<{
138
152
  id: string;
153
+ files?: number;
154
+ bytes?: number;
139
155
  }>;
140
156
  } & Record<string, unknown>;
141
157
  get(id: string): unknown;
@@ -176,12 +192,24 @@ export declare class OfficeShareView {
176
192
  /**
177
193
  * A pack's answer as this share gets it (#2637 review): its manifest's instance names cut to the share — `byInstance`
178
194
  * only for people shown, a furniture item's `activeFor` only them (none left: [], which watches nobody, never the
179
- * missing key, which watches everyone). A copy: the kept pack is never changed.
195
+ * missing key, which watches everyone). #2662: and only the character sets someone shown wears (theirs in `byInstance`,
196
+ * and `default` for everyone else), with `files` only the pictures it still names: the page loads what is drawn, not
197
+ * every set of a fleet-sized pack. A copy: the kept pack is never changed.
180
198
  */
181
199
  pack(answer: unknown): unknown;
182
200
  /** The packs the shown offices are drawn in (a pack no shown office names is not offered). */
183
201
  skinIds(): Set<string>;
184
202
  }
203
+ /**
204
+ * #2662: a share's minute of pack pictures — OFFICE_SHARE_LIMITS.pictureLoads times the files and bytes of the packs its
205
+ * offices are drawn in (the host's own count of each), at least the floors. Read from the stored offices and the pack
206
+ * list only (cheap: it is asked before a picture is admitted).
207
+ */
208
+ export declare function sharePictureRate(share: Pick<OfficeShare, "office">, offices: Office[], packs: Array<{
209
+ id: string;
210
+ files?: number;
211
+ bytes?: number;
212
+ }>): OfficeShareRate;
185
213
  export interface OfficeShareGateway {
186
214
  readonly server: Server;
187
215
  readonly readinessMarker: string;
@@ -223,6 +251,8 @@ export declare function createOfficeShareGateway(opts: {
223
251
  type: string;
224
252
  } | null;
225
253
  staticLimiter?: OfficeShareLimiter;
254
+ /** #2662: the shares' pack pictures, each share's minute sized by its packs (sharePictureRate). */
255
+ pictureLimiter?: OfficeShareLimiter;
226
256
  create?: typeof createServer;
227
257
  marker?: string;
228
258
  }): OfficeShareGateway;
@@ -16,7 +16,8 @@
16
16
  * cost, context, description, thread, last reply or what it waits on). An instance whose cross_instance_visibility is
17
17
  * "hidden" is never in it. An agent's `say` (office_set, the only text an agent wrote) only when the share says so.
18
18
  * - Limits: OFFICE_SHARE_LIMITS — links, lifetime, and per share requests and bytes a minute (every viewer comes from
19
- * 127.0.0.1 through the tunnel: the limit is the share's, never an address's).
19
+ * 127.0.0.1 through the tunnel: the limit is the share's, never an address's); its pack pictures a minute of their own,
20
+ * sized by the packs it shows (#2662).
20
21
  * - Kept in memory only: a restart ends every share (the quick tunnel's host changes anyway).
21
22
  */
22
23
  import { createHash, randomBytes } from "node:crypto";
@@ -31,6 +32,12 @@ export const OFFICE_SHARE_LIMITS = {
31
32
  requestsPerMinute: 120, bytesPerMinute: 16 * 1024 * 1024,
32
33
  /** The page's static files (its code, the same for every share), all shares together. */
33
34
  staticRequestsPerMinute: 1200, staticBytesPerMinute: 64 * 1024 * 1024,
35
+ /**
36
+ * #2662: a share's pack pictures (immutable, content-addressed: a browser reads each once) have their own minute, never
37
+ * the 120 above: `pictureLoads` times what the shown packs hold (their files and bytes, as the host lists them), so a
38
+ * viewer's first look at every room never reaches it, and at least the floors here.
39
+ */
40
+ pictureLoads: 2, pictureRequestsFloor: 240, pictureBytesFloor: 16 * 1024 * 1024,
34
41
  };
35
42
  /** "All offices": every stored office (and whoever is in none); otherwise a stored office's id. */
36
43
  export const ALL_OFFICES = "all";
@@ -161,16 +168,28 @@ export class OfficeShareLimiter {
161
168
  this.now = now;
162
169
  this.limits = limits;
163
170
  }
164
- /** A request arrives: false when the key has had its requests or bytes this minute. */
165
- admit(id) {
171
+ /** A request arrives: false when the key has had its requests or bytes this minute (`limits`: this key's, #2662). */
172
+ admit(id, limits = this.limits) {
166
173
  const list = this.window(id);
167
- if (list.length >= this.limits.requests)
174
+ if (list.length >= limits.requests)
168
175
  return false;
169
- if (list.reduce((sum, [, b]) => sum + b, 0) >= this.limits.bytes)
176
+ if (list.reduce((sum, [, b]) => sum + b, 0) >= limits.bytes)
170
177
  return false;
171
178
  list.push([this.now(), 0]);
172
179
  return true;
173
180
  }
181
+ /**
182
+ * #2662: whole seconds (1–60) until admit() would let the key in again — when enough of this minute's requests, and of
183
+ * its bytes, have left it. For Retry-After.
184
+ */
185
+ retryAfter(id, limits = this.limits) {
186
+ const list = this.window(id);
187
+ let bytes = list.reduce((sum, [, b]) => sum + b, 0), i = 0;
188
+ while (i < list.length && (list.length - i >= limits.requests || bytes >= limits.bytes))
189
+ bytes -= list[i++][1];
190
+ const at = i > 0 ? list[i - 1][0] + MINUTE_MS : this.now();
191
+ return Math.min(60, Math.max(1, Math.ceil((at - this.now()) / 1000)));
192
+ }
174
193
  /** What the admitted request answered, in bytes. */
175
194
  sent(id, bytes) {
176
195
  const list = this.seen.get(id);
@@ -284,7 +303,9 @@ export class OfficeShareView {
284
303
  /**
285
304
  * A pack's answer as this share gets it (#2637 review): its manifest's instance names cut to the share — `byInstance`
286
305
  * only for people shown, a furniture item's `activeFor` only them (none left: [], which watches nobody, never the
287
- * missing key, which watches everyone). A copy: the kept pack is never changed.
306
+ * missing key, which watches everyone). #2662: and only the character sets someone shown wears (theirs in `byInstance`,
307
+ * and `default` for everyone else), with `files` only the pictures it still names: the page loads what is drawn, not
308
+ * every set of a fleet-sized pack. A copy: the kept pack is never changed.
288
309
  */
289
310
  pack(answer) {
290
311
  if (!isObj(answer) || !isObj(answer.manifest))
@@ -292,6 +313,10 @@ export class OfficeShareView {
292
313
  const manifest = { ...answer.manifest };
293
314
  if (isObj(manifest.byInstance))
294
315
  manifest.byInstance = Object.fromEntries(Object.entries(manifest.byInstance).filter(([k]) => this.scope.has(k)));
316
+ if (isObj(manifest.characters)) {
317
+ const worn = new Set(["default", ...Object.values(isObj(manifest.byInstance) ? manifest.byInstance : {}).filter((v) => typeof v === "string")]);
318
+ manifest.characters = Object.fromEntries(Object.entries(manifest.characters).filter(([k]) => worn.has(k)));
319
+ }
295
320
  if (Array.isArray(manifest.furniture)) {
296
321
  manifest.furniture = manifest.furniture.map(f => {
297
322
  if (!isObj(f) || f.activeFor === undefined)
@@ -300,13 +325,44 @@ export class OfficeShareView {
300
325
  return { ...f, activeFor: names };
301
326
  });
302
327
  }
303
- return { ...answer, manifest };
328
+ if (!isObj(answer.files))
329
+ return { ...answer, manifest };
330
+ const named = new Set();
331
+ const walk = (v) => {
332
+ if (typeof v === "string")
333
+ named.add(v);
334
+ else if (Array.isArray(v))
335
+ v.forEach(walk);
336
+ else if (isObj(v))
337
+ Object.values(v).forEach(walk);
338
+ };
339
+ walk(manifest);
340
+ return { ...answer, manifest, files: Object.fromEntries(Object.entries(answer.files).filter(([src]) => named.has(src))) };
304
341
  }
305
342
  /** The packs the shown offices are drawn in (a pack no shown office names is not offered). */
306
343
  skinIds() {
307
344
  return new Set((this.offices ?? []).map(o => o.skin));
308
345
  }
309
346
  }
347
+ /**
348
+ * #2662: a share's minute of pack pictures — OFFICE_SHARE_LIMITS.pictureLoads times the files and bytes of the packs its
349
+ * offices are drawn in (the host's own count of each), at least the floors. Read from the stored offices and the pack
350
+ * list only (cheap: it is asked before a picture is admitted).
351
+ */
352
+ export function sharePictureRate(share, offices, packs) {
353
+ const used = new Set((share.office === ALL_OFFICES ? offices : offices.filter(o => o.id === share.office)).map(o => o.skin));
354
+ let files = 0, bytes = 0;
355
+ for (const p of packs) {
356
+ if (!used.has(p.id))
357
+ continue;
358
+ if (typeof p.files === "number" && Number.isFinite(p.files) && p.files > 0)
359
+ files += p.files;
360
+ if (typeof p.bytes === "number" && Number.isFinite(p.bytes) && p.bytes > 0)
361
+ bytes += p.bytes;
362
+ }
363
+ const L = OFFICE_SHARE_LIMITS;
364
+ return { requests: Math.max(L.pictureRequestsFloor, L.pictureLoads * files), bytes: Math.max(L.pictureBytesFloor, L.pictureLoads * bytes) };
365
+ }
310
366
  /**
311
367
  * The share tunnel's gateway. GET and HEAD only, on this tunnel's own Host; `/ready` for the tunnel's probe; then
312
368
  * `/o/<token>` and its reads, for an open share within its limits:
@@ -332,8 +388,9 @@ export function createOfficeShareGateway(opts) {
332
388
  const limiter = opts.limiter ?? new OfficeShareLimiter();
333
389
  const staticLimiter = opts.staticLimiter
334
390
  ?? new OfficeShareLimiter(undefined, { requests: OFFICE_SHARE_LIMITS.staticRequestsPerMinute, bytes: OFFICE_SHARE_LIMITS.staticBytesPerMinute });
335
- const tooMany = (res) => {
336
- res.writeHead(429, { "Content-Length": "0", "Cache-Control": "no-store", "Retry-After": "60" });
391
+ const pictureLimiter = opts.pictureLimiter ?? new OfficeShareLimiter();
392
+ const tooMany = (res, seconds = 60) => {
393
+ res.writeHead(429, { "Content-Length": "0", "Cache-Control": "no-store", "Retry-After": String(seconds) });
337
394
  res.end();
338
395
  };
339
396
  const sockets = new Set();
@@ -369,7 +426,7 @@ export function createOfficeShareGateway(opts) {
369
426
  if (!file)
370
427
  return empty(res, 404);
371
428
  if (!staticLimiter.admit("static"))
372
- return tooMany(res);
429
+ return tooMany(res, staticLimiter.retryAfter("static"));
373
430
  staticLimiter.sent("static", file.body.length);
374
431
  res.writeHead(200, { "Content-Type": file.type, "Content-Length": String(file.body.length), "Cache-Control": "no-cache" });
375
432
  res.end(method === "HEAD" ? undefined : file.body);
@@ -388,12 +445,16 @@ export function createOfficeShareGateway(opts) {
388
445
  res.end(method === "HEAD" ? undefined : ENDED_PAGE);
389
446
  return;
390
447
  }
391
- if (!limiter.admit(share.id))
392
- return tooMany(res);
448
+ // #2662: a pack's picture counts in the share's minute of pictures (sized by the packs it shows), anything else in its 120.
449
+ const picture = /^\/office-skins\/([A-Za-z0-9_-]{1,40})\/img\/([0-9a-f]{32})\.png$/.exec(rest);
450
+ const lim = picture ? pictureLimiter : limiter;
451
+ const rate = picture ? sharePictureRate(share, opts.source.offices().offices, opts.source.skins?.list().packs ?? []) : undefined;
452
+ if (!lim.admit(share.id, rate))
453
+ return tooMany(res, lim.retryAfter(share.id, rate));
393
454
  // Every read below is synchronous: the share found above is the share answered.
394
455
  const send = (status, type, body, cache = "no-store", csp = "default-src 'none'; sandbox") => {
395
456
  const bytes = typeof body === "string" ? Buffer.from(body) : body;
396
- limiter.sent(share.id, bytes.length);
457
+ lim.sent(share.id, bytes.length);
397
458
  res.writeHead(status, { "Content-Type": type, "Content-Length": String(bytes.length), "Cache-Control": cache, "Content-Security-Policy": csp });
398
459
  res.end(method === "HEAD" ? undefined : bytes);
399
460
  };
@@ -427,7 +488,6 @@ export function createOfficeShareGateway(opts) {
427
488
  // Never cached: what it names follows who is shown now (view.pack).
428
489
  return json(view.pack(pack));
429
490
  }
430
- const picture = /^\/office-skins\/([A-Za-z0-9_-]{1,40})\/img\/([0-9a-f]{32})\.png$/.exec(rest);
431
491
  if (picture) {
432
492
  const bytes = used.has(picture[1]) ? skins.picture(picture[1], picture[2]) : null;
433
493
  return bytes ? send(200, "image/png", bytes, "public, max-age=31536000, immutable") : empty(res, 404);