@leemour/cli-messaging 0.141.0 → 0.142.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 (128) hide show
  1. package/dist/cli/config-command.js +5 -0
  2. package/dist/cli/config-command.js.map +1 -1
  3. package/dist/cli/messenger/archive-commands.d.ts.map +1 -1
  4. package/dist/cli/messenger/archive-commands.js +91 -7
  5. package/dist/cli/messenger/archive-commands.js.map +1 -1
  6. package/dist/cli/messenger/catch-up.d.ts +17 -0
  7. package/dist/cli/messenger/catch-up.d.ts.map +1 -0
  8. package/dist/cli/messenger/catch-up.js +30 -0
  9. package/dist/cli/messenger/catch-up.js.map +1 -0
  10. package/dist/cli/messenger/conversations-command.d.ts.map +1 -1
  11. package/dist/cli/messenger/conversations-command.js +213 -27
  12. package/dist/cli/messenger/conversations-command.js.map +1 -1
  13. package/dist/cli/messenger/export-folder.d.ts +54 -0
  14. package/dist/cli/messenger/export-folder.d.ts.map +1 -0
  15. package/dist/cli/messenger/export-folder.js +106 -0
  16. package/dist/cli/messenger/export-folder.js.map +1 -0
  17. package/dist/cli/messenger/inbox.d.ts +4 -3
  18. package/dist/cli/messenger/inbox.d.ts.map +1 -1
  19. package/dist/cli/messenger/inbox.js +28 -32
  20. package/dist/cli/messenger/inbox.js.map +1 -1
  21. package/dist/cli/messenger/messages-command.d.ts.map +1 -1
  22. package/dist/cli/messenger/messages-command.js +2 -0
  23. package/dist/cli/messenger/messages-command.js.map +1 -1
  24. package/dist/cli/messenger/messages-stats-command.d.ts +4 -0
  25. package/dist/cli/messenger/messages-stats-command.d.ts.map +1 -0
  26. package/dist/cli/messenger/messages-stats-command.js +49 -0
  27. package/dist/cli/messenger/messages-stats-command.js.map +1 -0
  28. package/dist/cli/messenger/password.d.ts +11 -0
  29. package/dist/cli/messenger/password.d.ts.map +1 -0
  30. package/dist/cli/messenger/password.js +26 -0
  31. package/dist/cli/messenger/password.js.map +1 -0
  32. package/dist/cli/messenger/points.d.ts +21 -0
  33. package/dist/cli/messenger/points.d.ts.map +1 -0
  34. package/dist/cli/messenger/points.js +39 -0
  35. package/dist/cli/messenger/points.js.map +1 -0
  36. package/dist/cli/messenger/review.d.ts.map +1 -1
  37. package/dist/cli/messenger/review.js +55 -20
  38. package/dist/cli/messenger/review.js.map +1 -1
  39. package/dist/cli/messenger/store-maintenance-command.d.ts.map +1 -1
  40. package/dist/cli/messenger/store-maintenance-command.js +75 -20
  41. package/dist/cli/messenger/store-maintenance-command.js.map +1 -1
  42. package/dist/cli/permission-migration.d.ts.map +1 -1
  43. package/dist/cli/permission-migration.js +14 -9
  44. package/dist/cli/permission-migration.js.map +1 -1
  45. package/dist/cli/settings.d.ts +4 -0
  46. package/dist/cli/settings.d.ts.map +1 -1
  47. package/dist/cli/settings.js +12 -22
  48. package/dist/cli/settings.js.map +1 -1
  49. package/dist/domain/models.d.ts +4 -0
  50. package/dist/domain/models.d.ts.map +1 -1
  51. package/dist/mcp/server.d.ts.map +1 -1
  52. package/dist/mcp/server.js +2 -1
  53. package/dist/mcp/server.js.map +1 -1
  54. package/dist/mcp/tool.d.ts +1 -1
  55. package/dist/mcp/tool.d.ts.map +1 -1
  56. package/dist/mcp/tools/conversations.d.ts +1 -1
  57. package/dist/mcp/tools/conversations.d.ts.map +1 -1
  58. package/dist/mcp/tools/conversations.js +76 -5
  59. package/dist/mcp/tools/conversations.js.map +1 -1
  60. package/dist/mcp/tools/messages.d.ts.map +1 -1
  61. package/dist/mcp/tools/messages.js +8 -1
  62. package/dist/mcp/tools/messages.js.map +1 -1
  63. package/dist/mcp/tools/search.d.ts +24 -0
  64. package/dist/mcp/tools/search.d.ts.map +1 -1
  65. package/dist/mcp/tools/search.js +25 -0
  66. package/dist/mcp/tools/search.js.map +1 -1
  67. package/dist/sealed.d.ts +39 -0
  68. package/dist/sealed.d.ts.map +1 -0
  69. package/dist/sealed.js +140 -0
  70. package/dist/sealed.js.map +1 -0
  71. package/dist/search/lucene/dates.d.ts +2 -2
  72. package/dist/search/lucene/dates.d.ts.map +1 -1
  73. package/dist/search/lucene/dates.js +27 -5
  74. package/dist/search/lucene/dates.js.map +1 -1
  75. package/dist/search/lucene/registry.d.ts +1 -1
  76. package/dist/search/lucene/registry.d.ts.map +1 -1
  77. package/dist/search/lucene/registry.js +1 -1
  78. package/dist/search/lucene/registry.js.map +1 -1
  79. package/dist/sends/index.d.ts +1 -1
  80. package/dist/sends/index.d.ts.map +1 -1
  81. package/dist/sends/index.js +1 -1
  82. package/dist/sends/index.js.map +1 -1
  83. package/dist/sends/permissions.d.ts +9 -0
  84. package/dist/sends/permissions.d.ts.map +1 -1
  85. package/dist/sends/permissions.js +19 -0
  86. package/dist/sends/permissions.js.map +1 -1
  87. package/dist/services/archive.d.ts +22 -1
  88. package/dist/services/archive.d.ts.map +1 -1
  89. package/dist/services/archive.js +25 -0
  90. package/dist/services/archive.js.map +1 -1
  91. package/dist/services/embeddings.d.ts +108 -3
  92. package/dist/services/embeddings.d.ts.map +1 -1
  93. package/dist/services/embeddings.js +250 -59
  94. package/dist/services/embeddings.js.map +1 -1
  95. package/dist/services/inbox.d.ts +27 -9
  96. package/dist/services/inbox.d.ts.map +1 -1
  97. package/dist/services/inbox.js +57 -22
  98. package/dist/services/inbox.js.map +1 -1
  99. package/dist/services/messages-search.d.ts +21 -1
  100. package/dist/services/messages-search.d.ts.map +1 -1
  101. package/dist/services/messages-search.js +90 -26
  102. package/dist/services/messages-search.js.map +1 -1
  103. package/dist/services/messages.d.ts +8 -1
  104. package/dist/services/messages.d.ts.map +1 -1
  105. package/dist/services/messages.js +7 -1
  106. package/dist/services/messages.js.map +1 -1
  107. package/dist/store/sqlite/lucene.d.ts +11 -0
  108. package/dist/store/sqlite/lucene.d.ts.map +1 -1
  109. package/dist/store/sqlite/lucene.js +53 -18
  110. package/dist/store/sqlite/lucene.js.map +1 -1
  111. package/dist/store/sqlite/messages.d.ts +2 -2
  112. package/dist/store/sqlite/messages.d.ts.map +1 -1
  113. package/dist/store/sqlite/messages.js +5 -2
  114. package/dist/store/sqlite/messages.js.map +1 -1
  115. package/dist/store/sqlite/reads.d.ts +10 -0
  116. package/dist/store/sqlite/reads.d.ts.map +1 -1
  117. package/dist/store/sqlite/reads.js +25 -2
  118. package/dist/store/sqlite/reads.js.map +1 -1
  119. package/dist/store/sqlite/vectors.d.ts +49 -1
  120. package/dist/store/sqlite/vectors.d.ts.map +1 -1
  121. package/dist/store/sqlite/vectors.js +121 -6
  122. package/dist/store/sqlite/vectors.js.map +1 -1
  123. package/dist/store/store.d.ts +51 -1
  124. package/dist/store/store.d.ts.map +1 -1
  125. package/dist/store/store.js +55 -7
  126. package/dist/store/store.js.map +1 -1
  127. package/package.json +1 -1
  128. package/parity.json +170 -2
@@ -31,4 +31,28 @@ export declare const answerMessagesSearch: (messages: Pick<MessagesService, "sea
31
31
  page: number;
32
32
  limit: number;
33
33
  }>;
34
+ export declare const MESSAGES_STATS_DESCRIPTION = "Count what a strict Lucene query matches in the local store, by chat, sender, calendar day or hour (in the timezone). Each message is counted once; no text means every stored message. Counts are lower bounds where coverage is not complete. Returns { by, items: [{ key, name, account?, count }], total, hasMore, page, limit, query, coverage, completeness }.";
35
+ export declare const messagesStatsInput: (messenger: Messenger) => v.ObjectSchema<{
36
+ readonly text: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.DescriptionAction<string, "a strict Lucene query; omit to count all">]>, undefined>;
37
+ readonly ast: v.OptionalSchema<v.UnknownSchema, undefined>;
38
+ readonly by: v.OptionalSchema<v.PicklistSchema<["chat", "sender", "day", "hour"], undefined>, undefined>;
39
+ readonly timezone: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
40
+ readonly chat: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.DescriptionAction<string, string>]>, undefined>;
41
+ readonly source: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.DescriptionAction<string, "a messenger held on this machine; personal, bots or all — as in: in text">]>, undefined>;
42
+ readonly limit: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 100, undefined>, v.DescriptionAction<number, "how many">]>, undefined>;
43
+ }, undefined>;
44
+ export declare const answerMessagesStats: (messages: Pick<MessagesService, "stats">, args: v.InferOutput<ReturnType<typeof messagesStatsInput>>, defaults: {
45
+ limit: number;
46
+ signal?: AbortSignal;
47
+ }) => Promise<{
48
+ by: import("../../services/messages-search.js").StatsGrouping;
49
+ items: import("../../services/messages-search.js").StatsRow[];
50
+ total: number;
51
+ hasMore: boolean;
52
+ query: import("../../services/messages-search.js").QueryMetadata;
53
+ coverage: import("../../services/messages-search.js").SearchCoverage;
54
+ completeness: (import("../../store/store.js").ChatCompleteness & import("../../store/store.js").AccountKey)[];
55
+ page: number;
56
+ limit: number;
57
+ }>;
34
58
  //# sourceMappingURL=search.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAGjE,eAAO,MAAM,2BAA2B,8fACqd,CAAA;AAE7f,eAAO,MAAM,mBAAmB,cAAe,SAAS;;;;;;;;;;aAqBpD,CAAA;AAEJ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAA;AAEtF,eAAO,MAAM,oBAAoB,aACrB,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,QACnC,kBAAkB,YACd;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE;;;;;;;;;;;;;EAkBlD,CAAA"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAGjE,eAAO,MAAM,2BAA2B,8fACqd,CAAA;AAE7f,eAAO,MAAM,mBAAmB,cAAe,SAAS;;;;;;;;;;aAqBpD,CAAA;AAEJ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAA;AAEtF,eAAO,MAAM,oBAAoB,aACrB,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,QACnC,kBAAkB,YACd;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE;;;;;;;;;;;;;EAkBlD,CAAA;AAED,eAAO,MAAM,0BAA0B,yWACiU,CAAA;AAExW,eAAO,MAAM,kBAAkB,cAAe,SAAS;;;;;;;;aAenD,CAAA;AAEJ,eAAO,MAAM,mBAAmB,aACpB,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,QAClC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,YAChD;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE;;;;;;;;;;EAelD,CAAA"}
@@ -31,4 +31,29 @@ export const answerMessagesSearch = async (messages, args, defaults) => {
31
31
  });
32
32
  return { ...found, page: 1, limit: size };
33
33
  };
34
+ export const MESSAGES_STATS_DESCRIPTION = "Count what a strict Lucene query matches in the local store, by chat, sender, calendar day or hour (in the timezone). Each message is counted once; no text means every stored message. Counts are lower bounds where coverage is not complete. Returns { by, items: [{ key, name, account?, count }], total, hasMore, page, limit, query, coverage, completeness }.";
35
+ export const messagesStatsInput = (messenger) => v.object({
36
+ text: v.optional(v.pipe(v.string(), v.minLength(1), v.description("a strict Lucene query; omit to count all"))),
37
+ ast: v.optional(v.unknown()),
38
+ by: v.optional(v.picklist(["chat", "sender", "day", "hour"])),
39
+ timezone: v.optional(v.string()),
40
+ chat: v.optional(chatOf(messenger)),
41
+ source: v.optional(v.pipe(v.string(), v.minLength(1), v.description("a messenger held on this machine; personal, bots or all — as in: in text"))),
42
+ limit,
43
+ });
44
+ export const answerMessagesStats = async (messages, args, defaults) => {
45
+ const size = args.limit ?? defaults.limit;
46
+ const stats = await messages.stats({
47
+ ...(args.text === undefined ? {} : { text: args.text }),
48
+ ...(args.ast === undefined ? {} : { ast: args.ast }),
49
+ by: args.by ?? "chat",
50
+ language: "lucene",
51
+ signal: defaults.signal,
52
+ ...(args.timezone === undefined ? {} : { timezone: args.timezone }),
53
+ limit: size,
54
+ ...(args.chat === undefined ? {} : { chat: args.chat }),
55
+ ...(args.source === undefined ? {} : { source: args.source }),
56
+ });
57
+ return { ...stats, page: 1, limit: size };
58
+ };
34
59
  //# sourceMappingURL=search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/mcp/tools/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/mcp/tools/search.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { type Readable } from "node:stream";
2
+ export interface Cost {
3
+ log2N: number;
4
+ r: number;
5
+ p: number;
6
+ }
7
+ /** About half a second and 128 MB on a laptop: slow enough to make guessing a short password costly. */
8
+ export declare const COST: Cost;
9
+ /** What a folder of sealed files keeps to tell, before reading anything, whether a password is the one it was sealed with. */
10
+ export interface PasswordCheck {
11
+ salt: string;
12
+ log2N: number;
13
+ r: number;
14
+ p: number;
15
+ /** SHA-256 of the key scrypt derives from the password and this salt — no file uses that key. */
16
+ hash: string;
17
+ }
18
+ /**
19
+ * A check for this password. Guessing against it costs the same scrypt work as guessing against
20
+ * any sealed file, so it makes no password easier to find.
21
+ */
22
+ export declare const checkFor: (password: string, cost?: Cost) => Promise<PasswordCheck>;
23
+ export declare const passes: (password: string, check: PasswordCheck) => Promise<boolean>;
24
+ /** Whether the file starts as a sealed file does. */
25
+ export declare const isSealed: (path: string) => boolean;
26
+ /** Seals `from` into `to`, a new file readable only by its owner; never overwrites. */
27
+ export declare const sealFile: (from: string, to: string, password: string, cost?: Cost) => Promise<void>;
28
+ /**
29
+ * Seals what `open` yields into `to`, so what is sealed never lands on disk in the clear. Opened
30
+ * only once the password is accepted: a stream opened and then refused would be left dangling.
31
+ */
32
+ export declare const seal: (open: () => Readable, to: string, password: string, cost?: Cost) => Promise<void>;
33
+ /**
34
+ * Opens `from` into `to`, a new file readable only by its owner. The plain text goes to a file
35
+ * beside `to` first and takes its name only once the tag checks out, so a wrong password or a
36
+ * damaged file leaves nothing half-written behind.
37
+ */
38
+ export declare const unsealFile: (from: string, to: string, password: string) => Promise<void>;
39
+ //# sourceMappingURL=sealed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sealed.d.ts","sourceRoot":"","sources":["../src/sealed.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,aAAa,CAAA;AAmBtD,MAAM,WAAW,IAAI;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,wGAAwG;AACxG,eAAO,MAAM,IAAI,EAAE,IAAgC,CAAA;AASnD,8HAA8H;AAC9H,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,iGAAiG;IACjG,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,aAAoB,MAAM,SAAQ,IAAI,KAAU,OAAO,CAAC,aAAa,CAOzF,CAAA;AAED,eAAO,MAAM,MAAM,aAAoB,MAAM,SAAS,aAAa,KAAG,OAAO,CAAC,OAAO,CAIpF,CAAA;AAYD,qDAAqD;AACrD,eAAO,MAAM,QAAQ,SAAU,MAAM,KAAG,OAQvC,CAAA;AAED,uFAAuF;AACvF,eAAO,MAAM,QAAQ,SAAU,MAAM,MAAM,MAAM,YAAY,MAAM,SAAQ,IAAI,KAAU,OAAO,CAAC,IAAI,CAC7C,CAAA;AAExD;;;GAGG;AACH,eAAO,MAAM,IAAI,SAAgB,MAAM,QAAQ,MAAM,MAAM,YAAY,MAAM,SAAQ,IAAI,KAAU,OAAO,CAAC,IAAI,CAuB9G,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,UAAU,SAAgB,MAAM,MAAM,MAAM,YAAY,MAAM,KAAG,OAAO,CAAC,IAAI,CA4CzF,CAAA"}
package/dist/sealed.js ADDED
@@ -0,0 +1,140 @@
1
+ import { createCipheriv, createDecipheriv, createHash, randomBytes, scrypt, timingSafeEqual } from "node:crypto";
2
+ import { closeSync, createReadStream, createWriteStream, existsSync, openSync, readSync, renameSync, rmSync, statSync, } from "node:fs";
3
+ import { Transform } from "node:stream";
4
+ import { pipeline } from "node:stream/promises";
5
+ import { createGunzip, createGzip } from "node:zlib";
6
+ import { CliError } from "@leemour/cli-core";
7
+ /**
8
+ * A file compressed and then encrypted with a password, by Node alone — no outside tool, no
9
+ * dependency (owner's ruling `NEED-567`). The password is never kept: losing it loses the file.
10
+ *
11
+ * Layout: `MAGIC`, scrypt's cost as log2 N, r and p (one byte each), a 16-byte salt and a 12-byte
12
+ * nonce; then the gzip stream under AES-256-GCM, the header bound to it as associated data; then
13
+ * GCM's 16-byte tag, which makes a wrong password or a changed byte fail instead of yielding garbage.
14
+ */
15
+ const MAGIC = Buffer.from("CMSEAL01");
16
+ const SALT = 16;
17
+ const NONCE = 12;
18
+ const TAG = 16;
19
+ const HEADER = MAGIC.length + 3 + SALT + NONCE;
20
+ /** About half a second and 128 MB on a laptop: slow enough to make guessing a short password costly. */
21
+ export const COST = { log2N: 17, r: 8, p: 1 };
22
+ const keyOf = (password, salt, { log2N, r, p }) => new Promise((resolve, reject) => scrypt(password, salt, 32, { N: 2 ** log2N, r, p, maxmem: 2 * 128 * r * 2 ** log2N }, (error, key) => error ? reject(error) : resolve(key)));
23
+ /**
24
+ * A check for this password. Guessing against it costs the same scrypt work as guessing against
25
+ * any sealed file, so it makes no password easier to find.
26
+ */
27
+ export const checkFor = async (password, cost = COST) => {
28
+ refuseEmpty(password);
29
+ const salt = randomBytes(SALT);
30
+ const hash = createHash("sha256")
31
+ .update(await keyOf(password, salt, cost))
32
+ .digest("hex");
33
+ return { salt: salt.toString("hex"), ...cost, hash };
34
+ };
35
+ export const passes = async (password, check) => {
36
+ refuseCost(check);
37
+ const key = await keyOf(password, Buffer.from(check.salt, "hex"), check);
38
+ return timingSafeEqual(createHash("sha256").update(key).digest(), Buffer.from(check.hash, "hex"));
39
+ };
40
+ /** A damaged header must not make us reserve a gigabyte or more before the tag can say it is damaged. */
41
+ const refuseCost = ({ log2N, r, p }) => {
42
+ if (log2N > 20 || r > 8 || p > 4)
43
+ throw new CliError("validation_error", "asks for a key cost this version does not accept");
44
+ };
45
+ const refuseEmpty = (password) => {
46
+ if (password.length === 0)
47
+ throw new CliError("validation_error", "the password is empty");
48
+ };
49
+ /** Whether the file starts as a sealed file does. */
50
+ export const isSealed = (path) => {
51
+ const fd = openSync(path, "r");
52
+ try {
53
+ const start = Buffer.alloc(MAGIC.length);
54
+ return readSync(fd, start, 0, MAGIC.length, 0) === MAGIC.length && start.equals(MAGIC);
55
+ }
56
+ finally {
57
+ closeSync(fd);
58
+ }
59
+ };
60
+ /** Seals `from` into `to`, a new file readable only by its owner; never overwrites. */
61
+ export const sealFile = (from, to, password, cost = COST) => seal(() => createReadStream(from), to, password, cost);
62
+ /**
63
+ * Seals what `open` yields into `to`, so what is sealed never lands on disk in the clear. Opened
64
+ * only once the password is accepted: a stream opened and then refused would be left dangling.
65
+ */
66
+ export const seal = async (open, to, password, cost = COST) => {
67
+ refuseEmpty(password);
68
+ const salt = randomBytes(SALT);
69
+ const nonce = randomBytes(NONCE);
70
+ const cipher = createCipheriv("aes-256-gcm", await keyOf(password, salt, cost), nonce);
71
+ const header = Buffer.concat([MAGIC, Buffer.from([cost.log2N, cost.r, cost.p]), salt, nonce]);
72
+ cipher.setAAD(header);
73
+ const out = createWriteStream(to, { flags: "wx", mode: 0o600 });
74
+ out.write(header);
75
+ const tagged = new Transform({
76
+ transform: (chunk, _encoding, done) => done(null, cipher.update(chunk)),
77
+ flush: (done) => {
78
+ const last = cipher.final();
79
+ done(null, Buffer.concat([last, cipher.getAuthTag()]));
80
+ },
81
+ });
82
+ try {
83
+ await pipeline(open(), createGzip(), tagged, out);
84
+ }
85
+ catch (error) {
86
+ // `wx` means a file that was there is not ours to remove; one this call created and did not finish is.
87
+ if (error.code !== "EEXIST")
88
+ rmSync(to, { force: true });
89
+ throw error;
90
+ }
91
+ };
92
+ /**
93
+ * Opens `from` into `to`, a new file readable only by its owner. The plain text goes to a file
94
+ * beside `to` first and takes its name only once the tag checks out, so a wrong password or a
95
+ * damaged file leaves nothing half-written behind.
96
+ */
97
+ export const unsealFile = async (from, to, password) => {
98
+ refuseEmpty(password);
99
+ const size = statSync(from).size;
100
+ if (size < HEADER + TAG || !isSealed(from)) {
101
+ throw new CliError("validation_error", `${from} is not a sealed file`);
102
+ }
103
+ const fd = openSync(from, "r");
104
+ const header = Buffer.alloc(HEADER);
105
+ const tag = Buffer.alloc(TAG);
106
+ try {
107
+ readSync(fd, header, 0, HEADER, 0);
108
+ readSync(fd, tag, 0, TAG, size - TAG);
109
+ }
110
+ finally {
111
+ closeSync(fd);
112
+ }
113
+ const at = MAGIC.length;
114
+ const cost = { log2N: header[at], r: header[at + 1], p: header[at + 2] };
115
+ refuseCost(cost);
116
+ if (existsSync(to))
117
+ throw new CliError("validation_error", `${to} exists — never overwritten`);
118
+ const salt = header.subarray(at + 3, at + 3 + SALT);
119
+ const nonce = header.subarray(at + 3 + SALT, HEADER);
120
+ const decipher = createDecipheriv("aes-256-gcm", await keyOf(password, salt, cost), nonce);
121
+ decipher.setAuthTag(tag);
122
+ decipher.setAAD(header);
123
+ const pending = `${to}.partial`;
124
+ try {
125
+ await pipeline(createReadStream(from, { start: HEADER, end: size - TAG - 1 }), decipher, createGunzip(), createWriteStream(pending, { flags: "wx", mode: 0o600 }));
126
+ }
127
+ catch (error) {
128
+ if (error.code === "EEXIST")
129
+ throw error;
130
+ rmSync(pending, { force: true });
131
+ // A wrong key yields noise, which gzip usually refuses before GCM gets to check the tag.
132
+ const { code, message } = error;
133
+ if (code === "Z_DATA_ERROR" || code === "Z_BUF_ERROR" || message.includes("unable to authenticate")) {
134
+ throw new CliError("validation_error", "wrong password, or the file was changed — nothing was written");
135
+ }
136
+ throw error;
137
+ }
138
+ renameSync(pending, to);
139
+ };
140
+ //# sourceMappingURL=sealed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sealed.js","sourceRoot":"","sources":["../src/sealed.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ export interface DateRange {
7
7
  lowerInclusive: boolean;
8
8
  upperInclusive: boolean;
9
9
  }
10
- export declare const dateEndpoint: (value: string, zone: string, side: "lower" | "upper", inclusive: boolean, span: Span) => {
10
+ export declare const dateEndpoint: (value: string, zone: string, side: "lower" | "upper", inclusive: boolean, span: Span, now?: number) => {
11
11
  time?: number;
12
12
  inclusive: boolean;
13
13
  };
14
- export declare const dateRange: (lower: string, upper: string, lowerInclusive: boolean, upperInclusive: boolean, zone: string, span: Span) => DateRange;
14
+ export declare const dateRange: (lower: string, upper: string, lowerInclusive: boolean, upperInclusive: boolean, zone: string, span: Span, now?: number) => DateRange;
15
15
  //# sourceMappingURL=dates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../../src/search/lucene/dates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,YAAY,CAAA;AAElD,eAAO,MAAM,UAAU,WAAY,MAAM,KAAG,MAQ3C,CAAA;AAcD,eAAO,MAAM,WAAW,UAAW,MAAM,QAAQ,MAAM,QAAQ,OAAO,QAAQ,IAAI,KAAG,MA2BpF,CAAA;AACD,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,OAAO,CAAA;IACvB,cAAc,EAAE,OAAO,CAAA;CACxB;AACD,eAAO,MAAM,YAAY,UAChB,MAAM,QACP,MAAM,QACN,OAAO,GAAG,OAAO,aACZ,OAAO,QACZ,IAAI,KACT;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAmBrC,CAAA;AACD,eAAO,MAAM,SAAS,UACb,MAAM,SACN,MAAM,kBACG,OAAO,kBACP,OAAO,QACjB,MAAM,QACN,IAAI,KACT,SASF,CAAA"}
1
+ {"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../../src/search/lucene/dates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,YAAY,CAAA;AAElD,eAAO,MAAM,UAAU,WAAY,MAAM,KAAG,MAQ3C,CAAA;AAcD,eAAO,MAAM,WAAW,UAAW,MAAM,QAAQ,MAAM,QAAQ,OAAO,QAAQ,IAAI,KAAG,MA2BpF,CAAA;AAeD,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,EAAE,OAAO,CAAA;IACvB,cAAc,EAAE,OAAO,CAAA;CACxB;AACD,eAAO,MAAM,YAAY,UAChB,MAAM,QACP,MAAM,QACN,OAAO,GAAG,OAAO,aACZ,OAAO,QACZ,IAAI,mBAET;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CA4BrC,CAAA;AACD,eAAO,MAAM,SAAS,UACb,MAAM,SACN,MAAM,kBACG,OAAO,kBACP,OAAO,QACjB,MAAM,QACN,IAAI,mBAET,SAUF,CAAA"}
@@ -50,16 +50,37 @@ export const dayBoundary = (value, zone, next, span) => {
50
50
  queryError("invalid_date", span, "this calendar day does not exist in the selected timezone");
51
51
  return lo;
52
52
  };
53
- export const dateEndpoint = (value, zone, side, inclusive, span) => {
53
+ const AGO = /^(\d+)(m|h|d)$/u;
54
+ const AGO_MS = { m: 60_000, h: 3_600_000, d: 86_400_000 };
55
+ const dayOf = (word, zone, now, span) => {
56
+ const today = new Intl.DateTimeFormat("en-CA", {
57
+ timeZone: zone,
58
+ year: "numeric",
59
+ month: "2-digit",
60
+ day: "2-digit",
61
+ }).format(now);
62
+ if (word === "today")
63
+ return today;
64
+ const date = calendar(today, span);
65
+ date.setUTCDate(date.getUTCDate() - 1);
66
+ return date.toISOString().slice(0, 10);
67
+ };
68
+ export const dateEndpoint = (value, zone, side, inclusive, span, now = Date.now()) => {
54
69
  if (value === "*")
55
70
  return { inclusive };
71
+ const word = value.toLowerCase();
72
+ if (word === "today" || word === "yesterday")
73
+ return dateEndpoint(dayOf(word, zone, now, span), zone, side, inclusive, span);
74
+ const [, amount, unit] = AGO.exec(word) ?? [];
75
+ if (amount && unit)
76
+ return { time: now - Number(amount) * (AGO_MS[unit] ?? 0), inclusive };
56
77
  if (/^\d{4}-\d{2}-\d{2}$/u.test(value))
57
78
  return {
58
79
  time: dayBoundary(value, zone, side === "lower" ? !inclusive : inclusive, span),
59
80
  inclusive: side === "lower",
60
81
  };
61
82
  if (!/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{1,3})?(?:Z|[+-]\d{2}:\d{2})$/u.test(value))
62
- queryError("invalid_date", span, "quote an ISO timestamp with seconds and timezone offset");
83
+ queryError("invalid_date", span, "use an ISO date, today, yesterday, 30m/2h/7d ago, or a quoted timestamp with offset");
63
84
  calendar(value.slice(0, 10), span);
64
85
  const time = Date.parse(value);
65
86
  if (!Number.isFinite(time) ||
@@ -69,9 +90,10 @@ export const dateEndpoint = (value, zone, side, inclusive, span) => {
69
90
  queryError("invalid_date", span);
70
91
  return { time, inclusive };
71
92
  };
72
- export const dateRange = (lower, upper, lowerInclusive, upperInclusive, zone, span) => {
73
- const lo = dateEndpoint(lower, zone, "lower", lowerInclusive, span);
74
- const hi = dateEndpoint(upper, zone, "upper", upperInclusive, span);
93
+ export const dateRange = (lower, upper, lowerInclusive, upperInclusive, zone, span, now = Date.now()) => {
94
+ const since = lower === upper && AGO.test(lower.toLowerCase());
95
+ const lo = dateEndpoint(lower, zone, "lower", lowerInclusive, span, now);
96
+ const hi = dateEndpoint(since ? "*" : upper, zone, "upper", upperInclusive, span, now);
75
97
  return {
76
98
  ...(lo.time === undefined ? {} : { lower: lo.time }),
77
99
  ...(hi.time === undefined ? {} : { upper: hi.time }),
@@ -1 +1 @@
1
- {"version":3,"file":"dates.js","sourceRoot":"","sources":["../../../src/search/lucene/dates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dates.js","sourceRoot":"","sources":["../../../src/search/lucene/dates.ts"],"names":[],"mappings":"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"}
@@ -43,7 +43,7 @@ export declare const QUERY_FIELDS: readonly [{
43
43
  readonly aliases: readonly [];
44
44
  readonly type: "timestamp";
45
45
  readonly operators: readonly [...Operator[], "range"];
46
- readonly normalization: "ISO/calendar timezone";
46
+ readonly normalization: "ISO/calendar timezone; today, yesterday, 30m/2h/7d ago";
47
47
  readonly support: "A1";
48
48
  }, {
49
49
  readonly name: "kind";
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/search/lucene/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/search/lucene/registry.ts"],"names":[],"mappings":"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"}
@@ -49,7 +49,7 @@ export const QUERY_FIELDS = [
49
49
  aliases: [],
50
50
  type: "timestamp",
51
51
  operators: [...terms, "range"],
52
- normalization: "ISO/calendar timezone",
52
+ normalization: "ISO/calendar timezone; today, yesterday, 30m/2h/7d ago",
53
53
  support: "A1",
54
54
  },
55
55
  {
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/search/lucene/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/search/lucene/registry.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  export { type Asker, type GuardRequest, guardFor, type SendGuard, type SendGuardOptions, sendGuard, sharedJournal, } from "./guard.js";
2
2
  export { currentOperation, guardedWrite, type Operated } from "./guarded.js";
3
3
  export { type AccountAction, type ChatAction, type SendEntry, SendJournal, type SendKind, type SendOutcome, sendsPathFor, } from "./journal.js";
4
- export { DEFAULT_PERMISSIONS, fromOldSettings, keyForCommand, keyForWrite, LEVELS, type Level, levelFor, PERMISSIONS, type Permission, type PermissionKey, permissionFor, } from "./permissions.js";
4
+ export { DEFAULT_PERMISSIONS, fromOldSettings, keyForCommand, keyForWrite, LEVELS, type Level, layerPermissions, levelFor, PERMISSIONS, type Permission, type PermissionKey, permissionFor, } from "./permissions.js";
5
5
  export { type Recipient, RecipientList, recipientsPathFor } from "./recipients.js";
6
6
  export { newOperationId, newSendId } from "./send-id.js";
7
7
  export { readUpload, type Upload, type UploadKind } from "./upload.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sends/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,KAAK,EACV,KAAK,YAAY,EACjB,QAAQ,EACR,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,SAAS,EACT,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,YAAY,GACb,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,MAAM,EACN,KAAK,KAAK,EACV,QAAQ,EACR,WAAW,EACX,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,aAAa,GACd,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,KAAK,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAClF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,KAAK,MAAM,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sends/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,KAAK,EACV,KAAK,YAAY,EACjB,QAAQ,EACR,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,SAAS,EACT,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,SAAS,EACd,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,YAAY,GACb,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,MAAM,EACN,KAAK,KAAK,EACV,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,aAAa,GACd,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,KAAK,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAClF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,UAAU,EAAE,KAAK,MAAM,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAA"}
@@ -1,7 +1,7 @@
1
1
  export { guardFor, sendGuard, sharedJournal, } from "./guard.js";
2
2
  export { currentOperation, guardedWrite } from "./guarded.js";
3
3
  export { SendJournal, sendsPathFor, } from "./journal.js";
4
- export { DEFAULT_PERMISSIONS, fromOldSettings, keyForCommand, keyForWrite, LEVELS, levelFor, PERMISSIONS, permissionFor, } from "./permissions.js";
4
+ export { DEFAULT_PERMISSIONS, fromOldSettings, keyForCommand, keyForWrite, LEVELS, layerPermissions, levelFor, PERMISSIONS, permissionFor, } from "./permissions.js";
5
5
  export { RecipientList, recipientsPathFor } from "./recipients.js";
6
6
  export { newOperationId, newSendId } from "./send-id.js";
7
7
  export { readUpload } from "./upload.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sends/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EAGR,SAAS,EACT,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAiB,MAAM,cAAc,CAAA;AAC5E,OAAO,EAIL,WAAW,EAGX,YAAY,GACb,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,MAAM,EAEN,QAAQ,EACR,WAAW,EAGX,aAAa,GACd,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAkB,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAClF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,UAAU,EAAgC,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sends/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,QAAQ,EAGR,SAAS,EACT,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAiB,MAAM,cAAc,CAAA;AAC5E,OAAO,EAIL,WAAW,EAGX,YAAY,GACb,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,MAAM,EAEN,gBAAgB,EAChB,QAAQ,EACR,WAAW,EAGX,aAAa,GACd,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAkB,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAClF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,UAAU,EAAgC,MAAM,aAAa,CAAA"}
@@ -23,6 +23,15 @@ export declare const keyOfWord: (word: Permission) => PermissionKey;
23
23
  export declare const fromOldSettings: (readOnly: boolean, allow: readonly Permission[] | undefined, { bot }?: {
24
24
  bot?: boolean;
25
25
  }) => Record<PermissionKey, Level>;
26
+ /**
27
+ * Layers come nearest first. A key a nearer layer sets hides that key and every key under it in the
28
+ * farther layers, so a profile's `messages: readonly` is not undone by `messages.delete: allow` in
29
+ * `defaults` — the nearest section wins, as it does for every other setting (NEED-573).
30
+ */
31
+ export declare const layerPermissions: (layers: readonly [string, Readonly<Record<PermissionKey, Level>> | undefined][]) => {
32
+ levels: Record<string, "allow" | "ask" | "deny" | "readonly">;
33
+ sources: Record<string, string>;
34
+ };
26
35
  /**
27
36
  * The most specific key the owner set wins. A built-in default (`DEFAULT_PERMISSIONS`) only ever
28
37
  * tightens: against a broader key of the owner's, the stricter of the two holds — so
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/sends/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,WAAW,YACtB,MAAM,EACN,SAAS,EACT,UAAU,EACV,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,UAAU,CACF,CAAA;AAEV,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAgBrD,eAAO,MAAM,aAAa,SAAU,QAAQ,WAAW,MAAM,KAAG,UAc/D,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,MAAM,YAAI,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAU,CAAA;AAEnE,MAAM,MAAM,KAAK,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,CAAC,CAAA;AAE3C,qFAAqF;AACrF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAA;AAElC,sGAAsG;AACtG,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAKtE,CAAA;AAED,4GAA4G;AAC5G,eAAO,MAAM,SAAS,YACpB,UAAU,EACV,WAAW,EACX,OAAO,EACP,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,KAAK,EACL,eAAe,CACP,CAAA;AA6BV,uHAAuH;AACvH,eAAO,MAAM,SAAS,SAAU,UAAU,KAAG,aAAoD,CAAA;AAajG,wFAAwF;AACxF,eAAO,MAAM,eAAe,aAChB,OAAO,SACV,SAAS,UAAU,EAAE,GAAG,SAAS,YACvB;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,KACjC,MAAM,CAAC,aAAa,EAAE,KAAK,CAW7B,CAAA;AAeD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,gBACN,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,OAC9C,aAAa,aACR,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,KAC/C;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAAA;CAM3C,CAAA;AA4BD,oFAAoF;AACpF,eAAO,MAAM,WAAW,SAAU,QAAQ,WAAW,MAAM,KAAG,aAQ7D,CAAA;AA2BD;;;GAGG;AACH,eAAO,MAAM,aAAa,SAAU,SAAS,MAAM,EAAE,KAAG,aAAa,GAAG,IAAI,GAAG,SAgB9E,CAAA"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/sends/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,WAAW,YACtB,MAAM,EACN,SAAS,EACT,UAAU,EACV,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,UAAU,CACF,CAAA;AAEV,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAgBrD,eAAO,MAAM,aAAa,SAAU,QAAQ,WAAW,MAAM,KAAG,UAc/D,CAAA;AAED,kFAAkF;AAClF,eAAO,MAAM,MAAM,YAAI,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAU,CAAA;AAEnE,MAAM,MAAM,KAAK,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,CAAC,CAAA;AAE3C,qFAAqF;AACrF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAA;AAElC,sGAAsG;AACtG,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAKtE,CAAA;AAED,4GAA4G;AAC5G,eAAO,MAAM,SAAS,YACpB,UAAU,EACV,WAAW,EACX,OAAO,EACP,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,KAAK,EACL,eAAe,CACP,CAAA;AA6BV,uHAAuH;AACvH,eAAO,MAAM,SAAS,SAAU,UAAU,KAAG,aAAoD,CAAA;AAajG,wFAAwF;AACxF,eAAO,MAAM,eAAe,aAChB,OAAO,SACV,SAAS,UAAU,EAAE,GAAG,SAAS,YACvB;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,KACjC,MAAM,CAAC,aAAa,EAAE,KAAK,CAW7B,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,WAAY,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE;;;CAY/G,CAAA;AAeD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,gBACN,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,OAC9C,aAAa,aACR,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,KAC/C;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAAA;CAM3C,CAAA;AA4BD,oFAAoF;AACpF,eAAO,MAAM,WAAW,SAAU,QAAQ,WAAW,MAAM,KAAG,aAQ7D,CAAA;AA2BD;;;GAGG;AACH,eAAO,MAAM,aAAa,SAAU,SAAS,MAAM,EAAE,KAAG,aAAa,GAAG,IAAI,GAAG,SAgB9E,CAAA"}
@@ -124,6 +124,25 @@ export const fromOldSettings = (readOnly, allow, { bot = false } = {}) => {
124
124
  }
125
125
  return levels;
126
126
  };
127
+ /**
128
+ * Layers come nearest first. A key a nearer layer sets hides that key and every key under it in the
129
+ * farther layers, so a profile's `messages: readonly` is not undone by `messages.delete: allow` in
130
+ * `defaults` — the nearest section wins, as it does for every other setting (NEED-573).
131
+ */
132
+ export const layerPermissions = (layers) => {
133
+ const levels = {};
134
+ const sources = {};
135
+ for (const [from, layer] of layers) {
136
+ const nearer = Object.keys(levels);
137
+ for (const [key, level] of Object.entries(layer ?? {})) {
138
+ if (nearer.some((named) => key === named || key.startsWith(`${named}.`)))
139
+ continue;
140
+ levels[key] = level;
141
+ sources[key] = from;
142
+ }
143
+ }
144
+ return { levels, sources };
145
+ };
127
146
  const ALLOWED = { level: "allow", key: null };
128
147
  const ORDER = { deny: 0, readonly: 1, ask: 2, allow: 3 };
129
148
  const nearest = (levels, key) => {
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/sends/permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/sends/permissions.ts"],"names":[],"mappings":"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"}