@aeolus-fleet/common 0.34.0 → 0.35.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 (70) hide show
  1. package/README.md +4 -2
  2. package/dist/fleet/index.d.ts +12 -5
  3. package/dist/fleet/index.js +10 -2
  4. package/dist/fleet/index.js.map +1 -1
  5. package/dist/header/index.d.ts +2 -0
  6. package/dist/header/index.js +2 -0
  7. package/dist/header/index.js.map +1 -1
  8. package/dist/header/sign-in-background.d.ts +10 -0
  9. package/dist/header/sign-in-background.js +48 -0
  10. package/dist/header/sign-in-background.js.map +1 -0
  11. package/dist/header/sign-in-backgrounds.d.ts +40 -0
  12. package/dist/header/sign-in-backgrounds.js +135 -0
  13. package/dist/header/sign-in-backgrounds.js.map +1 -0
  14. package/dist/ids/index.d.ts +3 -0
  15. package/dist/ids/index.js +2 -0
  16. package/dist/ids/index.js.map +1 -1
  17. package/dist/rules/activity.d.ts +10 -0
  18. package/dist/rules/activity.js +13 -0
  19. package/dist/rules/activity.js.map +1 -0
  20. package/dist/rules/alert.d.ts +14 -0
  21. package/dist/rules/alert.js +33 -0
  22. package/dist/rules/alert.js.map +1 -0
  23. package/dist/rules/index.d.ts +2 -0
  24. package/dist/rules/index.js +2 -0
  25. package/dist/rules/index.js.map +1 -1
  26. package/dist/rules/payload.d.ts +1 -1
  27. package/dist/rules/payload.js +2 -2
  28. package/dist/rules/payload.js.map +1 -1
  29. package/dist/schemas/activity.d.ts +71 -0
  30. package/dist/schemas/activity.js +53 -0
  31. package/dist/schemas/activity.js.map +1 -0
  32. package/dist/schemas/alert.d.ts +564 -0
  33. package/dist/schemas/alert.js +123 -0
  34. package/dist/schemas/alert.js.map +1 -0
  35. package/dist/schemas/delivery.d.ts +1 -1
  36. package/dist/schemas/delivery.js +1 -1
  37. package/dist/schemas/expectations.d.ts +76 -0
  38. package/dist/schemas/expectations.js +41 -0
  39. package/dist/schemas/expectations.js.map +1 -0
  40. package/dist/schemas/fleet.d.ts +81 -0
  41. package/dist/schemas/fleet.js +8 -0
  42. package/dist/schemas/fleet.js.map +1 -1
  43. package/dist/schemas/follow.d.ts +3 -0
  44. package/dist/schemas/history.d.ts +303 -0
  45. package/dist/schemas/history.js +10 -1
  46. package/dist/schemas/history.js.map +1 -1
  47. package/dist/schemas/index.d.ts +4 -0
  48. package/dist/schemas/index.js +4 -0
  49. package/dist/schemas/index.js.map +1 -1
  50. package/dist/schemas/label.d.ts +2 -2
  51. package/dist/schemas/message-task-access.d.ts +11 -0
  52. package/dist/schemas/message-task-access.js +7 -0
  53. package/dist/schemas/message-task-access.js.map +1 -0
  54. package/dist/schemas/message.d.ts +1 -1
  55. package/dist/schemas/message.js +2 -2
  56. package/dist/schemas/message.js.map +1 -1
  57. package/dist/schemas/network-rules-file.js +2 -2
  58. package/dist/schemas/network-rules-file.js.map +1 -1
  59. package/dist/schemas/network.d.ts +13 -13
  60. package/dist/schemas/report.d.ts +81 -3
  61. package/dist/schemas/report.js +26 -3
  62. package/dist/schemas/report.js.map +1 -1
  63. package/dist/schemas/ship.d.ts +6 -2
  64. package/dist/schemas/ship.js +6 -2
  65. package/dist/schemas/ship.js.map +1 -1
  66. package/dist/schemas/statement.d.ts +2 -2
  67. package/dist/schemas/statement.js +4 -4
  68. package/dist/schemas/statement.js.map +1 -1
  69. package/dist/trierarch/report-details.d.ts +1 -1
  70. package/package.json +1 -1
package/README.md CHANGED
@@ -1,7 +1,9 @@
1
1
  # @aeolus-fleet/common
2
2
 
3
- Shared schemas, prefixed ids and types for [Aeolus](https://github.com/ThomasHendrickx/aeolus-fleet), an agent fleet manager.
3
+ Shared schemas, prefixed ids and types, and the header every Aeolus web app shows, for [Aeolus](https://github.com/ThomasHendrickx/aeolus-fleet), an agent fleet manager.
4
4
 
5
- Pre-v1: the API changes without notice until the v1 acceptance test passes.
5
+ Before 1.0.0 the API may change between minor releases.
6
6
 
7
7
  `@aeolus-fleet/common/rules` holds the plain rules a browser may use for live hints, without zod: ship and label handles, the payload size and the sign-in checks. The schemas are built on the same rules.
8
+
9
+ `@aeolus-fleet/common/header` holds the header every Aeolus web app shows (app header, app switcher, avatar menu, command palette, sign-in backgrounds) and the atoms it stands on, with `@aeolus-fleet/common/header/tokens.css`, the single copy of the design tokens. It needs React and Base UI, which are optional peer dependencies: the other entry points need neither.
@@ -13,9 +13,10 @@ import { z } from 'zod';
13
13
  * (decision 0046) and `scopes:define` defines the fleet's own scopes. `fleet:person`, `fleet:owner`, `fleet:explain`,
14
14
  * `fleet:connect` and `labels:any` are the jobs that were argo's alone
15
15
  * (decision 0053). `fleet:verify` writes verified facts (decision 0059).
16
- * `meetings:open` opens a meeting (decision 0061).
16
+ * `meetings:open` opens a meeting (decision 0061). `fleet:alert` raises and
17
+ * clears alerts (decision 0071).
17
18
  */
18
- export declare const SCOPES: readonly ["messages:send", "messages:receive", "messages:force", "messages:resend", "fleet:read", "fleet:commission", "fleet:manage", "crew:assign", "crew:run", "labels:define", "labels:assign", "fleet:network", "fleet:on-behalf", "fleet:person", "fleet:owner", "fleet:explain", "fleet:connect", "labels:any", "fleet:verify", "scopes:declare", "scopes:grant", "scopes:define", "meetings:open", "fleet:keys"];
19
+ export declare const SCOPES: readonly ["messages:send", "messages:receive", "messages:force", "messages:resend", "fleet:read", "fleet:commission", "fleet:manage", "crew:assign", "crew:run", "labels:define", "labels:assign", "fleet:network", "fleet:on-behalf", "fleet:person", "fleet:owner", "fleet:explain", "fleet:connect", "labels:any", "fleet:verify", "scopes:declare", "scopes:grant", "scopes:define", "meetings:open", "fleet:keys", "fleet:alert"];
19
20
  export declare const scopeSchema: z.ZodEnum<{
20
21
  "messages:send": "messages:send";
21
22
  "messages:receive": "messages:receive";
@@ -41,6 +42,7 @@ export declare const scopeSchema: z.ZodEnum<{
41
42
  "scopes:define": "scopes:define";
42
43
  "meetings:open": "meetings:open";
43
44
  "fleet:keys": "fleet:keys";
45
+ "fleet:alert": "fleet:alert";
44
46
  }>;
45
47
  export type Scope = z.infer<typeof scopeSchema>;
46
48
  /** What each core scope allows, on one line (decision 0046). */
@@ -80,9 +82,10 @@ export type ScopeName = z.infer<typeof scopeNameSchema>;
80
82
  * 0034). `fleet:on-behalf` reads on behalf of a named ship (decision 0034).
81
83
  * The jobs that were argo's alone are scopes an agent ship can hold too
82
84
  * (decision 0053), and so is writing verified facts (decision 0059) and
83
- * opening meetings (decision 0061).
85
+ * opening meetings (decision 0061), and raising alerts, the watch's
86
+ * (decision 0071).
84
87
  */
85
- export declare const FLEET_SCOPES: readonly ["messages:resend", "fleet:read", "fleet:commission", "fleet:manage", "crew:assign", "crew:run", "labels:define", "labels:assign", "fleet:network", "fleet:on-behalf", "fleet:person", "fleet:owner", "fleet:explain", "fleet:connect", "labels:any", "fleet:verify", "meetings:open"];
88
+ export declare const FLEET_SCOPES: readonly ["messages:resend", "fleet:read", "fleet:commission", "fleet:manage", "crew:assign", "crew:run", "labels:define", "labels:assign", "fleet:network", "fleet:on-behalf", "fleet:person", "fleet:owner", "fleet:explain", "fleet:connect", "labels:any", "fleet:verify", "meetings:open", "fleet:alert"];
86
89
  export declare const fleetScopeSchema: z.ZodEnum<{
87
90
  "messages:resend": "messages:resend";
88
91
  "fleet:read": "fleet:read";
@@ -101,6 +104,7 @@ export declare const fleetScopeSchema: z.ZodEnum<{
101
104
  "labels:any": "labels:any";
102
105
  "fleet:verify": "fleet:verify";
103
106
  "meetings:open": "meetings:open";
107
+ "fleet:alert": "fleet:alert";
104
108
  }>;
105
109
  export type FleetScope = z.infer<typeof fleetScopeSchema>;
106
110
  /**
@@ -185,7 +189,7 @@ export declare const deliveryStateSchema: z.ZodEnum<{
185
189
  }>;
186
190
  export type DeliveryState = z.infer<typeof deliveryStateSchema>;
187
191
  /** The event types written so far. Each later slice adds the ones it writes. */
188
- export declare const EVENT_TYPES: readonly ["FleetInitialised", "ShipCommissioned", "OwnerSet", "OwnerChanged", "ShipClaimed", "LeaseRevoked", "CredentialRevoked", "StartingPromptIssued", "OperatorPasswordReset", "OperatorLoginSet", "MessageAccepted", "LeasePushed", "DeliveryReceived", "DeliveryHanded", "DeliveryAcknowledged", "DeliveryHandled", "DeliveryNotHandled", "DeliveryOverdue", "DeliveryUndeliverable", "DeliveryReturned", "ShipRetired", "DeliveryAbandoned", "DeliveryDismissed", "ShipRenamed", "ShipReported", "StatementSet", "TurnReported", "SignInTicketIssued", "FleetLimitsChanged", "ViewerSessionStarted", "CrewRequested", "CrewRequestRemoved", "CrewAssigned", "CrewStatusChanged", "CrewRequestExplained", "CrewRequestGivenBack", "LabelDefined", "LabelValuesChanged", "LabelRetired", "LabelAssigned", "LabelUnassigned", "LabelDeleted", "WorktreeClearRequested", "WorktreeCleared", "WorktreeClearRemoved", "NetworkRulesSet", "NetworkRulesDeclared", "NetworkRulesDraftSaved", "NetworkRulesDraftDiscarded", "NetworkPluginRegistered", "NetworkPluginUnregistered", "BuiltInRuleChanged", "ScopesDeclared", "ScopesChanged", "ScopeDefined", "ScopeDescribed", "ScopeRemoved", "PluginConnected", "PluginDisconnected", "VerifiedFactsSet", "VerifiedFactsRemoved", "MeetingOpened", "ParticipantAdded", "MicRequested", "MicRequestWithdrawn", "MicGiven", "MicReleased", "MicTaken", "MicPatternSet", "ParticipantLeft", "ParticipantRejoined", "ParticipantRevoked", "OwnershipTransferred", "ModeratorNamed", "MeetingEnded", "ScheduleCreated", "ScheduleCancelled", "ScheduledSendRefused", "ScheduledSendMissed", "SchedulePaused", "ScheduleResumed", "ScheduleEnded", "HistoryPruned", "FleetSealingTurnedOn", "FleetPayloadsSealed", "FleetKeyUnavailable", "FleetKeyAvailable", "FleetDataKeyCreated", "FleetCompanyKeyChanged", "FleetRecoveryKeyChanged", "FleetKeysRecovered", "FeatureFlagTurnedOn", "FeatureFlagTurnedOff"];
192
+ export declare const EVENT_TYPES: readonly ["FleetInitialised", "ShipCommissioned", "OwnerSet", "OwnerChanged", "ShipClaimed", "LeaseRevoked", "CredentialRevoked", "StartingPromptIssued", "OperatorPasswordReset", "OperatorLoginSet", "MessageAccepted", "LeasePushed", "DeliveryReceived", "DeliveryHanded", "DeliveryAcknowledged", "DeliveryHandled", "DeliveryNotHandled", "DeliveryOverdue", "DeliveryUndeliverable", "DeliveryReturned", "ShipRetired", "DeliveryAbandoned", "DeliveryDismissed", "ShipRenamed", "ShipReported", "StatementSet", "TurnReported", "SignInTicketIssued", "FleetLimitsChanged", "ViewerSessionStarted", "CrewRequested", "CrewRequestRemoved", "CrewAssigned", "CrewStatusChanged", "CrewRequestExplained", "CrewRequestGivenBack", "LabelDefined", "LabelValuesChanged", "LabelRetired", "LabelAssigned", "LabelUnassigned", "LabelDeleted", "WorktreeClearRequested", "WorktreeCleared", "WorktreeClearRemoved", "NetworkRulesSet", "NetworkRulesDeclared", "NetworkRulesDraftSaved", "NetworkRulesDraftDiscarded", "NetworkPluginRegistered", "NetworkPluginUnregistered", "BuiltInRuleChanged", "ScopesDeclared", "ScopesChanged", "ScopeDefined", "ScopeDescribed", "ScopeRemoved", "PluginConnected", "PluginDisconnected", "VerifiedFactsSet", "VerifiedFactsRemoved", "MeetingOpened", "ParticipantAdded", "MicRequested", "MicRequestWithdrawn", "MicGiven", "MicReleased", "MicTaken", "MicPatternSet", "ParticipantLeft", "ParticipantRejoined", "ParticipantRevoked", "OwnershipTransferred", "ModeratorNamed", "MeetingEnded", "ScheduleCreated", "ScheduleCancelled", "ScheduledSendRefused", "ScheduledSendMissed", "SchedulePaused", "ScheduleResumed", "ScheduleEnded", "HistoryPruned", "FleetSealingTurnedOn", "FleetPayloadsSealed", "FleetKeyUnavailable", "FleetKeyAvailable", "FleetDataKeyCreated", "FleetCompanyKeyChanged", "FleetRecoveryKeyChanged", "FleetKeysRecovered", "FeatureFlagTurnedOn", "FeatureFlagTurnedOff", "AlertRaised", "AlertCleared", "ExpectationsSet"];
189
193
  export declare const eventTypeSchema: z.ZodEnum<{
190
194
  FleetInitialised: "FleetInitialised";
191
195
  ShipCommissioned: "ShipCommissioned";
@@ -280,6 +284,9 @@ export declare const eventTypeSchema: z.ZodEnum<{
280
284
  FleetKeysRecovered: "FleetKeysRecovered";
281
285
  FeatureFlagTurnedOn: "FeatureFlagTurnedOn";
282
286
  FeatureFlagTurnedOff: "FeatureFlagTurnedOff";
287
+ AlertRaised: "AlertRaised";
288
+ AlertCleared: "AlertCleared";
289
+ ExpectationsSet: "ExpectationsSet";
283
290
  }>;
284
291
  export type EventType = z.infer<typeof eventTypeSchema>;
285
292
  export * from './argo-message.js';
@@ -13,7 +13,8 @@ import { z } from 'zod';
13
13
  * (decision 0046) and `scopes:define` defines the fleet's own scopes. `fleet:person`, `fleet:owner`, `fleet:explain`,
14
14
  * `fleet:connect` and `labels:any` are the jobs that were argo's alone
15
15
  * (decision 0053). `fleet:verify` writes verified facts (decision 0059).
16
- * `meetings:open` opens a meeting (decision 0061).
16
+ * `meetings:open` opens a meeting (decision 0061). `fleet:alert` raises and
17
+ * clears alerts (decision 0071).
17
18
  */
18
19
  export const SCOPES = [
19
20
  'messages:send',
@@ -40,6 +41,7 @@ export const SCOPES = [
40
41
  'scopes:define',
41
42
  'meetings:open',
42
43
  'fleet:keys',
44
+ 'fleet:alert',
43
45
  ];
44
46
  export const scopeSchema = z.enum(SCOPES);
45
47
  /** What each core scope allows, on one line (decision 0046). */
@@ -68,6 +70,7 @@ export const CORE_SCOPE_DESCRIPTIONS = {
68
70
  'scopes:define': "Define, describe and remove the fleet's own scopes",
69
71
  'meetings:open': 'Open a meeting of the ships its ship reaches, owning and moderating it',
70
72
  'fleet:keys': "Turn sealing on and change the fleet's company key and recovery key",
73
+ 'fleet:alert': 'Raise and clear alerts on the ships its ship reads',
71
74
  };
72
75
  /** The namespaces core reserves and enforces; every other one is a plugin's (decision 0046). */
73
76
  export const CORE_NAMESPACES = ['messages', 'fleet', 'crew', 'labels', 'scopes', 'meetings'];
@@ -110,7 +113,8 @@ export const scopeNameSchema = z
110
113
  * 0034). `fleet:on-behalf` reads on behalf of a named ship (decision 0034).
111
114
  * The jobs that were argo's alone are scopes an agent ship can hold too
112
115
  * (decision 0053), and so is writing verified facts (decision 0059) and
113
- * opening meetings (decision 0061).
116
+ * opening meetings (decision 0061), and raising alerts, the watch's
117
+ * (decision 0071).
114
118
  */
115
119
  export const FLEET_SCOPES = [
116
120
  'messages:resend',
@@ -130,6 +134,7 @@ export const FLEET_SCOPES = [
130
134
  'labels:any',
131
135
  'fleet:verify',
132
136
  'meetings:open',
137
+ 'fleet:alert',
133
138
  ];
134
139
  export const fleetScopeSchema = z.enum(FLEET_SCOPES);
135
140
  /**
@@ -277,6 +282,9 @@ export const EVENT_TYPES = [
277
282
  'FleetKeysRecovered',
278
283
  'FeatureFlagTurnedOn',
279
284
  'FeatureFlagTurnedOff',
285
+ 'AlertRaised',
286
+ 'AlertCleared',
287
+ 'ExpectationsSet',
280
288
  ];
281
289
  export const eventTypeSchema = z.enum(EVENT_TYPES);
282
290
  export * from './argo-message.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fleet/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fleet/index.ts"],"names":[],"mappings":"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"}
@@ -19,3 +19,5 @@ export * from './apps.js';
19
19
  export * from './avatar-entry.js';
20
20
  export * from './avatar-menu.js';
21
21
  export * from './command-palette.js';
22
+ export * from './sign-in-background.js';
23
+ export * from './sign-in-backgrounds.js';
@@ -19,4 +19,6 @@ export * from './apps.js';
19
19
  export * from './avatar-entry.js';
20
20
  export * from './avatar-menu.js';
21
21
  export * from './command-palette.js';
22
+ export * from './sign-in-background.js';
23
+ export * from './sign-in-backgrounds.js';
22
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { type SignInBackgroundName } from './sign-in-backgrounds.js';
2
+ /**
3
+ * The ground of a signed-out screen (docs/design/sign-in-backgrounds): one of
4
+ * the six backgrounds, picked at random at load, covering its positioned
5
+ * parent behind the card. Without a background named, it shows the one picked.
6
+ */
7
+ export declare function SignInBackground({ background, className }: {
8
+ background?: SignInBackgroundName;
9
+ className?: string;
10
+ }): import("react").JSX.Element | null;
@@ -0,0 +1,48 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId, useSyncExternalStore } from 'react';
4
+ import { classNames } from './class-names.js';
5
+ import { SIGN_IN_CANVAS, SIGN_IN_HORIZON, SIGN_IN_SUN_SHARE, drawSignInBackground, pickSignInBackground, } from './sign-in-backgrounds.js';
6
+ /**
7
+ * Picked once per page load in the browser, so every screen that shows a
8
+ * background in this load shows the same one. The server picks none: the
9
+ * background appears once the page runs, and server and browser agree.
10
+ */
11
+ const PICKED_AT_LOAD = pickSignInBackground(Math.random);
12
+ function pickedAtLoad() {
13
+ return PICKED_AT_LOAD;
14
+ }
15
+ function pickedOnServer() {
16
+ return undefined;
17
+ }
18
+ function staysPut() {
19
+ return () => undefined;
20
+ }
21
+ /** The faintness from the mockup, on the brand foreground and primary; the sun and the sky have their own light and dark. */
22
+ const TONES = classNames('[--sign-in-faint:color-mix(in_oklch,var(--foreground)_11%,transparent)] [--sign-in-brand:color-mix(in_oklch,var(--primary)_22%,transparent)]', '[--sign-in-warm:oklch(0.88_0.06_60)] [--sign-in-sky:oklch(0.9_0.04_255)]', 'dark:[--sign-in-faint:color-mix(in_oklch,var(--foreground)_9%,transparent)] dark:[--sign-in-brand:color-mix(in_oklch,var(--primary)_20%,transparent)]', 'dark:[--sign-in-warm:oklch(0.55_0.06_55)] dark:[--sign-in-sky:oklch(0.3_0.05_260)]');
23
+ const COLOUR = {
24
+ faint: 'var(--sign-in-faint)',
25
+ brand: 'var(--sign-in-brand)',
26
+ warm: 'var(--sign-in-warm)',
27
+ };
28
+ const { width: WIDTH, height: HEIGHT } = SIGN_IN_CANVAS;
29
+ const HORIZON_PERCENT = `${String((SIGN_IN_HORIZON / HEIGHT) * 100)}%`;
30
+ const HILLS = `M0 ${String(SIGN_IN_HORIZON)} L0 186 C 180 166 320 182 470 172 S 760 192 920 178 S 1260 160 1420 182 L ${String(WIDTH)} 176 L ${String(WIDTH)} ${String(SIGN_IN_HORIZON)} Z`;
31
+ const SUN_TRANSFORM = `translate(${String(SIGN_IN_SUN_SHARE)} 0.2) scale(0.35 1) translate(${String(-SIGN_IN_SUN_SHARE)} -0.2)`;
32
+ /**
33
+ * The ground of a signed-out screen (docs/design/sign-in-backgrounds): one of
34
+ * the six backgrounds, picked at random at load, covering its positioned
35
+ * parent behind the card. Without a background named, it shows the one picked.
36
+ */
37
+ export function SignInBackground({ background, className }) {
38
+ const picked = useSyncExternalStore(staysPut, pickedAtLoad, pickedOnServer);
39
+ const id = useId();
40
+ const shown = background ?? picked;
41
+ if (shown === undefined) {
42
+ return null;
43
+ }
44
+ const skyId = `${id}-sky`;
45
+ const sunId = `${id}-sun`;
46
+ return (_jsxs("svg", { "data-testid": "sign-in-background", "data-background": shown, "aria-hidden": "true", viewBox: `0 0 ${String(WIDTH)} ${String(HEIGHT)}`, preserveAspectRatio: "xMidYMid slice", className: classNames('pointer-events-none absolute inset-0 size-full', TONES, className), children: [_jsxs("defs", { children: [_jsxs("linearGradient", { id: skyId, x1: 0, y1: 0, x2: 0, y2: 1, children: [_jsx("stop", { offset: "0%", stopColor: "var(--sign-in-sky)", stopOpacity: 0 }), _jsx("stop", { offset: HORIZON_PERCENT, stopColor: "var(--sign-in-warm)", stopOpacity: 0.4 }), _jsx("stop", { offset: "50%", stopColor: "var(--sign-in-sky)", stopOpacity: 0.12 }), _jsx("stop", { offset: "100%", stopColor: "var(--sign-in-sky)", stopOpacity: 0 })] }), _jsxs("radialGradient", { id: sunId, cx: SIGN_IN_SUN_SHARE, cy: 0.2, r: 0.35, gradientTransform: SUN_TRANSFORM, children: [_jsx("stop", { offset: "0%", stopColor: "var(--sign-in-warm)", stopOpacity: 0.4 }), _jsx("stop", { offset: "100%", stopColor: "var(--sign-in-warm)", stopOpacity: 0 })] })] }), _jsx("rect", { width: WIDTH, height: HEIGHT, fill: `url(#${skyId})` }), _jsx("rect", { width: WIDTH, height: HEIGHT, fill: `url(#${sunId})` }), _jsx("path", { d: HILLS, fill: COLOUR.brand, opacity: 0.45 }), _jsx("line", { x1: 0, y1: SIGN_IN_HORIZON, x2: WIDTH, y2: SIGN_IN_HORIZON, stroke: COLOUR.faint, strokeWidth: 1 }), drawSignInBackground(shown).map((mark) => mark.kind === 'boat' ? (_jsxs("g", { transform: `translate(${String(mark.x)} ${String(mark.y)}) scale(${String(mark.scale)})`, fill: COLOUR[mark.tone], children: [_jsx("path", { d: "M0 -26 L0 0 L13 0 Z" }), _jsx("path", { d: "M-2 -20 L-2 0 L-11 0 Z", opacity: 0.75 }), _jsx("path", { d: "M-13 3 L15 3 L11 8 L-9 8 Z" })] }, `boat ${String(mark.x)} ${String(mark.y)}`)) : (_jsx("line", { x1: mark.x1, y1: mark.y1, x2: mark.x2, y2: mark.y2, stroke: COLOUR[mark.tone], strokeWidth: mark.width, opacity: mark.opacity, strokeLinecap: mark.isDashed ? undefined : 'round', strokeDasharray: mark.isDashed ? '4 6' : undefined }, `line ${String(mark.x1)} ${String(mark.y1)} ${String(mark.x2)} ${String(mark.y2)}`)))] }));
47
+ }
48
+ //# sourceMappingURL=sign-in-background.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sign-in-background.js","sourceRoot":"","sources":["../../src/header/sign-in-background.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * The six backgrounds of the signed-out screens, ported from
3
+ * docs/design/sign-in-backgrounds/mockup.html: the sea seen from above with
4
+ * single ships, and in five of them squadrons sailing among them. Each draws
5
+ * the same every time from its seeds, on a 1600 by 1000 canvas; one is picked
6
+ * at random when a screen loads.
7
+ */
8
+ export declare const SIGN_IN_BACKGROUNDS: readonly ["from-above-1", "squadrons-1", "squadrons-3", "squadrons-4", "squadrons-5", "squadrons-6"];
9
+ export type SignInBackgroundName = (typeof SIGN_IN_BACKGROUNDS)[number];
10
+ /** The canvas every background is drawn on; it covers the screen, cut at the sides or the top and bottom. */
11
+ export declare const SIGN_IN_CANVAS: {
12
+ readonly width: 1600;
13
+ readonly height: 1000;
14
+ };
15
+ export declare const SIGN_IN_HORIZON: number;
16
+ /** Where the sun's glow on the water sits, as a share of the width. */
17
+ export declare const SIGN_IN_SUN_SHARE = 0.68;
18
+ /** faint: the foreground, barely there. brand: the primary, a little stronger. warm: the sun's glow. */
19
+ export type SignInTone = 'faint' | 'brand' | 'warm';
20
+ export type SignInMark = {
21
+ readonly kind: 'line';
22
+ readonly x1: number;
23
+ readonly y1: number;
24
+ readonly x2: number;
25
+ readonly y2: number;
26
+ readonly tone: SignInTone;
27
+ readonly width: number;
28
+ readonly opacity: number;
29
+ readonly isDashed: boolean;
30
+ } | {
31
+ readonly kind: 'boat';
32
+ readonly x: number;
33
+ readonly y: number;
34
+ readonly scale: number;
35
+ readonly tone: SignInTone;
36
+ };
37
+ /** Which background a screen shows, from a random number in [0, 1). */
38
+ export declare function pickSignInBackground(random: () => number): SignInBackgroundName;
39
+ /** The marks of one background, back to front: the water, then each ship's wake and the ship. */
40
+ export declare function drawSignInBackground(background: SignInBackgroundName): readonly SignInMark[];
@@ -0,0 +1,135 @@
1
+ /**
2
+ * The six backgrounds of the signed-out screens, ported from
3
+ * docs/design/sign-in-backgrounds/mockup.html: the sea seen from above with
4
+ * single ships, and in five of them squadrons sailing among them. Each draws
5
+ * the same every time from its seeds, on a 1600 by 1000 canvas; one is picked
6
+ * at random when a screen loads.
7
+ */
8
+ export const SIGN_IN_BACKGROUNDS = ['from-above-1', 'squadrons-1', 'squadrons-3', 'squadrons-4', 'squadrons-5', 'squadrons-6'];
9
+ /** The canvas every background is drawn on; it covers the screen, cut at the sides or the top and bottom. */
10
+ export const SIGN_IN_CANVAS = { width: 1600, height: 1000 };
11
+ /** Where the sea meets the hills, as a share of the height. */
12
+ const HORIZON_SHARE = 0.2;
13
+ export const SIGN_IN_HORIZON = SIGN_IN_CANVAS.height * HORIZON_SHARE;
14
+ /** Where the sun's glow on the water sits, as a share of the width. */
15
+ export const SIGN_IN_SUN_SHARE = 0.68;
16
+ const WATER_SEED = 41;
17
+ const WATER_LINES = 190;
18
+ const SHIPS_FROM_ABOVE = [
19
+ [0.14, 0.25, 20], [0.42, 0.12, -10], [0.83, 0.2, 200], [0.9, 0.55, -30], [0.22, 0.7, 15], [0.62, 0.82, 195], [0.08, 0.95, -20], [0.95, 0.9, 170],
20
+ [0.5, 0.4, 10], [0.33, 0.5, 190], [0.7, 0.06, 0], [0.27, 0.06, 180], [0.58, 0.3, 200], [0.04, 0.45, 10], [0.76, 0.68, -15], [0.4, 0.96, 185],
21
+ ];
22
+ const SINGLE_SHIPS = [
23
+ [0.14, 0.25, 20], [0.42, 0.12, -10], [0.83, 0.2, 200], [0.9, 0.55, -30], [0.08, 0.95, -20], [0.95, 0.9, 170],
24
+ [0.33, 0.5, 190], [0.04, 0.45, 10], [0.7, 0.06, 0], [0.27, 0.07, 180], [0.58, 0.32, 200], [0.52, 0.05, 10],
25
+ ];
26
+ const SQUADRONS = {
27
+ 'squadrons-1': { seed: 61, squadrons: [[0.2, 0.72, 15, 'loose', 4], [0.74, 0.6, 195, 'loose', 5], [0.6, 0.15, 5, 'loose', 3]] },
28
+ 'squadrons-3': { seed: 89, squadrons: [[0.18, 0.78, 15, 'line', 4], [0.8, 0.6, 195, 'line', 5], [0.55, 0.18, 5, 'line', 4], [0.3, 0.3, 190, 'line', 3]] },
29
+ 'squadrons-4': { seed: 97, squadrons: [[0.2, 0.72, 15, 'loose', 4], [0.8, 0.6, 195, 'line', 4], [0.58, 0.16, 5, 'loose', 3], [0.3, 0.32, 190, 'line', 3]] },
30
+ 'squadrons-5': { seed: 53, squadrons: [[0.2, 0.74, 15, 'tight', 5], [0.76, 0.6, 195, 'tight', 4], [0.6, 0.15, 5, 'tight', 3], [0.12, 0.4, 10, 'tight', 3]] },
31
+ 'squadrons-6': { seed: 83, squadrons: [[0.18, 0.78, 15, 'curve', 5], [0.82, 0.6, 195, 'curve', 5], [0.55, 0.17, 5, 'curve', 4]] },
32
+ };
33
+ /** The card's place in the middle of the canvas, where no ship sails. */
34
+ const CARD_HALF_WIDTH = 250;
35
+ const CARD_HALF_HEIGHT = 200;
36
+ /** Which background a screen shows, from a random number in [0, 1). */
37
+ export function pickSignInBackground(random) {
38
+ const index = Math.min(SIGN_IN_BACKGROUNDS.length - 1, Math.floor(random() * SIGN_IN_BACKGROUNDS.length));
39
+ return SIGN_IN_BACKGROUNDS[index] ?? 'from-above-1';
40
+ }
41
+ /** The marks of one background, back to front: the water, then each ship's wake and the ship. */
42
+ export function drawSignInBackground(background) {
43
+ const random = seededRandom(WATER_SEED);
44
+ const water = Array.from({ length: WATER_LINES }, () => waterLine(random));
45
+ const ships = background === 'from-above-1' ? SHIPS_FROM_ABOVE : shipsInSquadrons(SQUADRONS[background]);
46
+ return [...water, ...ships.flatMap(shipMarks)];
47
+ }
48
+ /** The mockup's generator (Park and Miller), so each seed draws what the mockup drew. */
49
+ function seededRandom(seed) {
50
+ const modulus = 2147483647;
51
+ const multiplier = 16807;
52
+ let state = seed;
53
+ return () => {
54
+ state = (state * multiplier) % modulus;
55
+ return state / modulus;
56
+ };
57
+ }
58
+ /** A short line on the water, longer and thicker toward the viewer, warm where the sun glows on it. */
59
+ function waterLine(random) {
60
+ const { width, height } = SIGN_IN_CANVAS;
61
+ const toward = Math.pow(random(), 1.6);
62
+ const y = SIGN_IN_HORIZON + 4 + (height - SIGN_IN_HORIZON) * toward;
63
+ const x = random() * width;
64
+ const length = (6 + random() * 18) * (0.4 + toward * 3);
65
+ const isNearSun = Math.abs(x - width * SIGN_IN_SUN_SHARE) < 40 + toward * 260;
66
+ return {
67
+ kind: 'line',
68
+ x1: x - length / 2,
69
+ y1: y,
70
+ x2: x + length / 2,
71
+ y2: y,
72
+ tone: isNearSun ? 'warm' : 'faint',
73
+ width: 0.6 + toward * 1.2,
74
+ opacity: isNearSun ? 0.8 : 0.6,
75
+ isDashed: false,
76
+ };
77
+ }
78
+ /** The single ships, then each squadron's ships around its lead. */
79
+ function shipsInSquadrons({ seed, squadrons }) {
80
+ const random = seededRandom(seed);
81
+ const inSquadrons = squadrons.flatMap(([across, toward, heading, shape, size]) => {
82
+ const direction = Math.cos(radians(heading)) >= 0 ? 1 : -1;
83
+ return Array.from({ length: size }, (_, place) => {
84
+ const [offsetAcross, offsetToward] = squadronOffset({ shape, place, size, direction, random });
85
+ return [across + offsetAcross, Math.min(0.99, Math.max(0.02, toward + offsetToward)), heading];
86
+ });
87
+ });
88
+ return [...SINGLE_SHIPS, ...inSquadrons];
89
+ }
90
+ /** Where a ship sails from its squadron's lead: scattered, close abreast, astern on a bending course, or astern in line. */
91
+ function squadronOffset({ shape, place, size, direction, random }) {
92
+ switch (shape) {
93
+ case 'loose': {
94
+ const across = (random() - 0.5) * 0.09;
95
+ return [across, (random() - 0.5) * 0.08];
96
+ }
97
+ case 'tight': {
98
+ const across = (place - (size - 1) / 2) * 0.018 + (random() - 0.5) * 0.02;
99
+ return [across, (random() - 0.5) * 0.05];
100
+ }
101
+ case 'curve':
102
+ return [-direction * place * 0.03, place * 0.012 + Math.sin(place * 0.9) * 0.025];
103
+ case 'line':
104
+ return [-direction * place * 0.03, place * 0.012];
105
+ }
106
+ }
107
+ /** A ship and its wake, bigger toward the viewer; none sails where the card sits. */
108
+ function shipMarks([across, toward, heading]) {
109
+ const { width, height } = SIGN_IN_CANVAS;
110
+ const x = across * width;
111
+ const y = SIGN_IN_HORIZON + (height - SIGN_IN_HORIZON) * toward;
112
+ if (Math.abs(x - width / 2) < CARD_HALF_WIDTH && Math.abs(y - height / 2) < CARD_HALF_HEIGHT) {
113
+ return [];
114
+ }
115
+ const scale = 0.3 + toward * 1.2;
116
+ const tone = toward > 0.6 ? 'brand' : 'faint';
117
+ const isHeadingLeft = heading > 90 && heading < 270;
118
+ return [...wake({ x, y: y + 6 * scale, scale: scale * 0.8, heading: isHeadingLeft ? 180 : 0, length: 40 + toward * 120, tone }), { kind: 'boat', x, y, scale, tone }];
119
+ }
120
+ /** The V a ship leaves behind it, and the dashed line along its middle. */
121
+ function wake({ x, y, scale, heading, length, tone }) {
122
+ const back = radians(heading + 180);
123
+ const sternX = x + Math.cos(back) * 14 * scale;
124
+ const sternY = y + Math.sin(back) * 14 * scale;
125
+ const arms = [-14, 14].map((spread) => {
126
+ const angle = back + radians(spread);
127
+ return { kind: 'line', x1: sternX, y1: sternY, x2: x + Math.cos(angle) * length, y2: y + Math.sin(angle) * length, tone, width: Math.max(0.6, scale * 0.9), opacity: 0.7, isDashed: false };
128
+ });
129
+ const middle = { kind: 'line', x1: sternX, y1: sternY, x2: x + Math.cos(back) * length * 1.1, y2: y + Math.sin(back) * length * 1.1, tone, width: Math.max(0.5, scale * 0.6), opacity: 0.4, isDashed: true };
130
+ return [...arms, middle];
131
+ }
132
+ function radians(degrees) {
133
+ return (degrees * Math.PI) / 180;
134
+ }
135
+ //# sourceMappingURL=sign-in-backgrounds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sign-in-backgrounds.js","sourceRoot":"","sources":["../../src/header/sign-in-backgrounds.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,8 @@ export declare const ID_PREFIXES: {
30
30
  readonly schedule: "sch";
31
31
  /** A sealed fleet's data key (decision 0068). */
32
32
  readonly dataKey: "dky";
33
+ /** An alert on a ship, open until it clears (decision 0071). */
34
+ readonly alert: "alt";
33
35
  };
34
36
  export type IdKind = keyof typeof ID_PREFIXES;
35
37
  /** Every kind of id, in the order of ID_PREFIXES. */
@@ -52,6 +54,7 @@ export type RequestId = Id<'request'>;
52
54
  export type MeetingId = Id<'meeting'>;
53
55
  export type ScheduleId = Id<'schedule'>;
54
56
  export type DataKeyId = Id<'dataKey'>;
57
+ export type AlertId = Id<'alert'>;
55
58
  export interface IdGeneratorOptions {
56
59
  /** Milliseconds since the Unix epoch. Defaults to `Date.now`. */
57
60
  now?: () => number;
package/dist/ids/index.js CHANGED
@@ -30,6 +30,8 @@ export const ID_PREFIXES = {
30
30
  schedule: 'sch',
31
31
  /** A sealed fleet's data key (decision 0068). */
32
32
  dataKey: 'dky',
33
+ /** An alert on a ship, open until it clears (decision 0071). */
34
+ alert: 'alt',
33
35
  };
34
36
  function isIdKind(value) {
35
37
  return value in ID_PREFIXES;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ids/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,KAAK,EAAE,KAAK;IACZ,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,KAAK;IACf,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,KAAK;IACf,cAAc,EAAE,KAAK;IACrB,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,KAAK;IACjB,YAAY,EAAE,KAAK;IACnB,uFAAuF;IACvF,OAAO,EAAE,KAAK;IACd,0CAA0C;IAC1C,OAAO,EAAE,KAAK;IACd,kDAAkD;IAClD,QAAQ,EAAE,KAAK;IACf,iDAAiD;IACjD,OAAO,EAAE,KAAK;CACN,CAAC;AAIX,SAAS,QAAQ,CAAC,KAAa;IAC7B,OAAO,KAAK,IAAI,WAAW,CAAC;AAC9B,CAAC;AAED,qDAAqD;AACrD,MAAM,CAAC,MAAM,QAAQ,GAAsB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAqBrF,6DAA6D;AAC7D,MAAM,QAAQ,GAAG,kCAAkC,CAAC;AACpD,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAC7B,MAAM,YAAY,GAAG,+BAA+B,CAAC;AAErD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAiB,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAWlG;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAA8B,EAAE;IAChE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;IACpC,MAAM,UAAU,GACd,OAAO,CAAC,UAAU;QAClB,CAAC,CAAC,KAA8B,EAAE,EAAE;YAClC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IAEL,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;IAClB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;IAE5C,OAAO,CAAmB,IAAO,EAAS,EAAE;QAC1C,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;YAC3D,MAAM,IAAI,UAAU,CAAC,4CAA4C,MAAM,CAAC,QAAQ,CAAC,SAAS,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5G,CAAC;QAED,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;YACpB,QAAQ,GAAG,IAAI,CAAC;YAChB,UAAU,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,MAAM,CAAC,CAAC;QACpB,CAAC;QAED,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACzD,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IACxC,CAAC,CAAC;AACJ,CAAC;AAQD,gGAAgG;AAChG,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACxC,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/E,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,IAAI,CAAmB,KAAc,EAAE,IAAO;IAC5D,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAmB,IAAO;IAChD,MAAM,KAAK,GAAG,GAAG,IAAI,QAAQ,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;IACtD,OAAO,CAAC;SACL,eAAe,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,KAAK,EAAE,EAAE,CAAC;SAC1G,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,KAAK,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,WAAW,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,SAAS,GAAG,EAAE,CAAC;QAC7B,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;QAClC,SAAS,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;IACvC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,UAAU,CAAC,OAAe;IACjC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,4EAA4E;AAC5E,SAAS,YAAY,CAAC,KAAiB;IACrC,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QAC9B,IAAI,IAAI,CAAC,CAAC;QACV,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC;YACjB,IAAI,IAAI,CAAC,CAAC;YACV,OAAO,IAAI,MAAM,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,KAAiB;IAClC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,UAAU,CAAC,kDAAkD,CAAC,CAAC;IAC3E,CAAC;IACD,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,IAAI,GAAG,GAAG,EAAE,CAAC;YACf,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAa;IAC3B,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,UAAU,CAAC,uBAAuB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ids/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Whether a ship's activity reads unknown at `now`: its trierarch wrote it
3
+ * longer ago than twice the report interval it stated with the write, so the
4
+ * trierarch is likely down (docs/design/monitoring, 4.3). Unknown is never
5
+ * stopped work.
6
+ */
7
+ export declare function isActivityUnknown(written: {
8
+ reportedAt: Date;
9
+ intervalSeconds: number;
10
+ }, now: Date): boolean;
@@ -0,0 +1,13 @@
1
+ /** How many report intervals may pass before a trierarch's activity write reads as unknown (docs/design/monitoring, N4). */
2
+ const UNKNOWN_AFTER_INTERVALS = 2;
3
+ const SECOND_MS = 1000;
4
+ /**
5
+ * Whether a ship's activity reads unknown at `now`: its trierarch wrote it
6
+ * longer ago than twice the report interval it stated with the write, so the
7
+ * trierarch is likely down (docs/design/monitoring, 4.3). Unknown is never
8
+ * stopped work.
9
+ */
10
+ export function isActivityUnknown(written, now) {
11
+ return now.getTime() - written.reportedAt.getTime() > UNKNOWN_AFTER_INTERVALS * written.intervalSeconds * SECOND_MS;
12
+ }
13
+ //# sourceMappingURL=activity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activity.js","sourceRoot":"","sources":["../../src/rules/activity.ts"],"names":[],"mappings":"AAAA,4HAA4H;AAC5H,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAElC,MAAM,SAAS,GAAG,IAAI,CAAC;AAEvB;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAsD,EAAE,GAAS;IACjG,OAAO,GAAG,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,uBAAuB,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;AACtH,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * How a reader shows an alert message (docs/design/monitoring, 4.8, 4.9,
3
+ * N10): by its `headline` and its `body` as markdown, whatever its signal,
4
+ * so a new signal changes no reader. A payload without both is no alert and
5
+ * shows as a plain message. No zod: the console's browser reads it too.
6
+ */
7
+ /** The headline and the markdown body an alert message shows by; null for any other message. */
8
+ export declare function alertTextOf({ contentType, payload }: {
9
+ contentType: string;
10
+ payload: string;
11
+ }): {
12
+ headline: string;
13
+ body: string;
14
+ } | null;
@@ -0,0 +1,33 @@
1
+ /**
2
+ * How a reader shows an alert message (docs/design/monitoring, 4.8, 4.9,
3
+ * N10): by its `headline` and its `body` as markdown, whatever its signal,
4
+ * so a new signal changes no reader. A payload without both is no alert and
5
+ * shows as a plain message. No zod: the console's browser reads it too.
6
+ */
7
+ const ALERT_CONTENT_TYPE = 'application/vnd.aeolus.alert+json';
8
+ /** A content type's essence: media types compare without case and without their parameters (RFC 9110). */
9
+ function essenceOf(contentType) {
10
+ const [essence = ''] = contentType.split(';');
11
+ return essence.trim().toLowerCase();
12
+ }
13
+ function jsonOf(payload) {
14
+ try {
15
+ return JSON.parse(payload);
16
+ }
17
+ catch {
18
+ return undefined;
19
+ }
20
+ }
21
+ /** The headline and the markdown body an alert message shows by; null for any other message. */
22
+ export function alertTextOf({ contentType, payload }) {
23
+ if (essenceOf(contentType) !== ALERT_CONTENT_TYPE) {
24
+ return null;
25
+ }
26
+ const alert = jsonOf(payload);
27
+ if (typeof alert !== 'object' || alert === null || !('headline' in alert) || !('body' in alert)) {
28
+ return null;
29
+ }
30
+ const { headline, body } = alert;
31
+ return typeof headline === 'string' && headline !== '' && typeof body === 'string' ? { headline, body } : null;
32
+ }
33
+ //# sourceMappingURL=alert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert.js","sourceRoot":"","sources":["../../src/rules/alert.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,kBAAkB,GAAG,mCAAmC,CAAC;AAE/D,0GAA0G;AAC1G,SAAS,SAAS,CAAC,WAAmB;IACpC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,MAAM,CAAC,OAAe;IAC7B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,WAAW,CAAC,EAAE,WAAW,EAAE,OAAO,EAA4C;IAC5F,IAAI,SAAS,CAAC,WAAW,CAAC,KAAK,kBAAkB,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC;QAChG,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IACjC,OAAO,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,EAAE,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACjH,CAAC"}
@@ -4,6 +4,8 @@
4
4
  * no schema. Common's schemas are built on the same rules, and the server
5
5
  * stays the authority on submit.
6
6
  */
7
+ export * from './activity.js';
8
+ export * from './alert.js';
7
9
  export * from './duration.js';
8
10
  export * from './label-handle.js';
9
11
  export * from './page-size.js';
@@ -4,6 +4,8 @@
4
4
  * no schema. Common's schemas are built on the same rules, and the server
5
5
  * stays the authority on submit.
6
6
  */
7
+ export * from './activity.js';
8
+ export * from './alert.js';
7
9
  export * from './duration.js';
8
10
  export * from './label-handle.js';
9
11
  export * from './page-size.js';