@wirecat/cli-core 0.262.0 → 0.263.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -3
- package/dist/cli/app.d.ts +3 -0
- package/dist/cli/app.d.ts.map +1 -1
- package/dist/cli/app.js.map +1 -1
- package/dist/cli/command-contract.d.ts.map +1 -1
- package/dist/cli/command-contract.js +1 -1
- package/dist/cli/command-contract.js.map +1 -1
- package/dist/cli/envelope.d.ts +48 -0
- package/dist/cli/envelope.d.ts.map +1 -0
- package/dist/cli/envelope.js +83 -0
- package/dist/cli/envelope.js.map +1 -0
- package/dist/cli/execution.d.ts.map +1 -1
- package/dist/cli/execution.js +2 -2
- package/dist/cli/execution.js.map +1 -1
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +1 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/json-fields.d.ts +18 -0
- package/dist/cli/json-fields.d.ts.map +1 -0
- package/dist/cli/json-fields.js +73 -0
- package/dist/cli/json-fields.js.map +1 -0
- package/dist/cli/messenger/conversations-command.d.ts.map +1 -1
- package/dist/cli/messenger/conversations-command.js +14 -10
- package/dist/cli/messenger/conversations-command.js.map +1 -1
- package/dist/cli/messenger/doctor-command.js +1 -1
- package/dist/cli/messenger/doctor-command.js.map +1 -1
- package/dist/cli/messenger/flooded.js +2 -2
- package/dist/cli/messenger/flooded.js.map +1 -1
- package/dist/cli/messenger/observed.js +1 -1
- package/dist/cli/messenger/observed.js.map +1 -1
- package/dist/cli/program.d.ts.map +1 -1
- package/dist/cli/program.js +12 -9
- package/dist/cli/program.js.map +1 -1
- package/dist/cli/reasons.d.ts +9 -1
- package/dist/cli/reasons.d.ts.map +1 -1
- package/dist/cli/reasons.js +23 -0
- package/dist/cli/reasons.js.map +1 -1
- package/dist/cli/result-fields.d.ts +2 -1
- package/dist/cli/result-fields.d.ts.map +1 -1
- package/dist/cli/result-fields.js +20 -3
- package/dist/cli/result-fields.js.map +1 -1
- package/dist/cli/runs/recording.d.ts.map +1 -1
- package/dist/cli/runs/recording.js +2 -2
- package/dist/cli/runs/recording.js.map +1 -1
- package/dist/cli/runs/scope.d.ts +2 -0
- package/dist/cli/runs/scope.d.ts.map +1 -1
- package/dist/cli/runs/scope.js +1 -1
- package/dist/cli/runs/scope.js.map +1 -1
- package/dist/cli/settings.d.ts +0 -2
- package/dist/cli/settings.d.ts.map +1 -1
- package/dist/cli/settings.js +0 -1
- package/dist/cli/settings.js.map +1 -1
- package/dist/cli/steps.d.ts +24 -0
- package/dist/cli/steps.d.ts.map +1 -0
- package/dist/cli/steps.js +65 -0
- package/dist/cli/steps.js.map +1 -0
- package/dist/entities/attachment.d.ts +1 -1
- package/dist/entities/attachment.js +1 -1
- package/dist/entities/attachment.js.map +1 -1
- package/dist/entities/chat.d.ts +7 -7
- package/dist/entities/chat.js +7 -7
- package/dist/entities/chat.js.map +1 -1
- package/dist/entities/contact.d.ts +2 -2
- package/dist/entities/contact.js +2 -2
- package/dist/entities/contact.js.map +1 -1
- package/dist/entities/document.d.ts +2 -2
- package/dist/entities/document.js +2 -2
- package/dist/entities/document.js.map +1 -1
- package/dist/entities/fact.d.ts +5 -4
- package/dist/entities/fact.d.ts.map +1 -1
- package/dist/entities/fact.js +5 -4
- package/dist/entities/fact.js.map +1 -1
- package/dist/entities/index.d.ts +171 -171
- package/dist/entities/index.js +2 -2
- package/dist/entities/index.js.map +1 -1
- package/dist/entities/meeting.d.ts +6 -6
- package/dist/entities/meeting.js +6 -6
- package/dist/entities/meeting.js.map +1 -1
- package/dist/entities/memory.d.ts +3 -3
- package/dist/entities/memory.js +3 -3
- package/dist/entities/memory.js.map +1 -1
- package/dist/entities/message.d.ts +24 -23
- package/dist/entities/message.d.ts.map +1 -1
- package/dist/entities/message.js +19 -18
- package/dist/entities/message.js.map +1 -1
- package/dist/entities/note.d.ts +4 -4
- package/dist/entities/note.js +4 -4
- package/dist/entities/note.js.map +1 -1
- package/dist/entities/task.d.ts +5 -5
- package/dist/entities/task.js +5 -5
- package/dist/entities/task.js.map +1 -1
- package/dist/images/context/index.d.ts +12 -0
- package/dist/images/context/index.d.ts.map +1 -0
- package/dist/images/context/index.js +31 -0
- package/dist/images/context/index.js.map +1 -0
- package/dist/images/registry.d.ts +7 -0
- package/dist/images/registry.d.ts.map +1 -0
- package/dist/images/registry.js +22 -0
- package/dist/images/registry.js.map +1 -0
- package/dist/images/types.d.ts +39 -0
- package/dist/images/types.d.ts.map +1 -0
- package/dist/images/types.js +2 -0
- package/dist/images/types.js.map +1 -0
- package/dist/mcp/surface.d.ts +4 -1
- package/dist/mcp/surface.d.ts.map +1 -1
- package/dist/mcp/surface.js +21 -5
- package/dist/mcp/surface.js.map +1 -1
- package/dist/mcp/tool.d.ts +15 -3
- package/dist/mcp/tool.d.ts.map +1 -1
- package/dist/mcp/tool.js +26 -9
- package/dist/mcp/tool.js.map +1 -1
- package/dist/meetings/cli/index.d.ts +1 -0
- package/dist/meetings/cli/index.d.ts.map +1 -1
- package/dist/meetings/cli/index.js +1 -0
- package/dist/meetings/cli/index.js.map +1 -1
- package/dist/meetings/cli/passage.d.ts +9 -0
- package/dist/meetings/cli/passage.d.ts.map +1 -0
- package/dist/meetings/cli/passage.js +46 -0
- package/dist/meetings/cli/passage.js.map +1 -0
- package/dist/meetings/index.d.ts +1 -0
- package/dist/meetings/index.d.ts.map +1 -1
- package/dist/meetings/index.js +1 -0
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/mcp/index.d.ts +5 -1
- package/dist/meetings/mcp/index.d.ts.map +1 -1
- package/dist/meetings/mcp/index.js +5 -2
- package/dist/meetings/mcp/index.js.map +1 -1
- package/dist/meetings/mcp/passage.d.ts +86 -0
- package/dist/meetings/mcp/passage.d.ts.map +1 -0
- package/dist/meetings/mcp/passage.js +51 -0
- package/dist/meetings/mcp/passage.js.map +1 -0
- package/dist/meetings/mcp/search.d.ts +2 -1
- package/dist/meetings/mcp/search.d.ts.map +1 -1
- package/dist/meetings/mcp/search.js +3 -3
- package/dist/meetings/mcp/search.js.map +1 -1
- package/dist/meetings/passage.d.ts +68 -0
- package/dist/meetings/passage.d.ts.map +1 -0
- package/dist/meetings/passage.js +25 -0
- package/dist/meetings/passage.js.map +1 -0
- package/dist/meetings/store.d.ts +2 -0
- package/dist/meetings/store.d.ts.map +1 -1
- package/dist/output.d.ts +1 -2
- package/dist/output.d.ts.map +1 -1
- package/dist/output.js +4 -12
- package/dist/output.js.map +1 -1
- package/dist/services/embeddings.d.ts +2 -0
- package/dist/services/embeddings.d.ts.map +1 -1
- package/dist/services/embeddings.js +79 -2
- package/dist/services/embeddings.js.map +1 -1
- package/dist/services/index.d.ts +2 -0
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +2 -0
- package/dist/services/index.js.map +1 -1
- package/dist/services/meeting-evidence.d.ts +2 -0
- package/dist/services/meeting-evidence.d.ts.map +1 -1
- package/dist/services/meeting-evidence.js +1 -1
- package/dist/services/meeting-evidence.js.map +1 -1
- package/dist/services/meeting-hit-context.d.ts +6 -0
- package/dist/services/meeting-hit-context.d.ts.map +1 -0
- package/dist/services/meeting-hit-context.js +140 -0
- package/dist/services/meeting-hit-context.js.map +1 -0
- package/dist/services/meeting-passage-format.d.ts +9 -0
- package/dist/services/meeting-passage-format.d.ts.map +1 -0
- package/dist/services/meeting-passage-format.js +99 -0
- package/dist/services/meeting-passage-format.js.map +1 -0
- package/dist/store/account-store.d.ts +1 -1
- package/dist/store/account-store.d.ts.map +1 -1
- package/dist/store/account-store.js +3 -0
- package/dist/store/account-store.js.map +1 -1
- package/dist/store/index.d.ts +3 -1
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +1 -0
- package/dist/store/index.js.map +1 -1
- package/dist/store/sqlite/catalog.d.ts +54 -0
- package/dist/store/sqlite/catalog.d.ts.map +1 -0
- package/dist/store/sqlite/catalog.js +269 -0
- package/dist/store/sqlite/catalog.js.map +1 -0
- package/dist/store/sqlite/entity-types.d.ts +1 -0
- package/dist/store/sqlite/entity-types.d.ts.map +1 -1
- package/dist/store/sqlite/entity-types.js +1 -0
- package/dist/store/sqlite/entity-types.js.map +1 -1
- package/dist/store/sqlite/image-chunks.d.ts +53 -0
- package/dist/store/sqlite/image-chunks.d.ts.map +1 -0
- package/dist/store/sqlite/image-chunks.js +87 -0
- package/dist/store/sqlite/image-chunks.js.map +1 -0
- package/dist/store/sqlite/meeting-hit-search.d.ts.map +1 -1
- package/dist/store/sqlite/meeting-hit-search.js +10 -3
- package/dist/store/sqlite/meeting-hit-search.js.map +1 -1
- package/dist/store/sqlite/meeting-reads.d.ts +16 -1
- package/dist/store/sqlite/meeting-reads.d.ts.map +1 -1
- package/dist/store/sqlite/meeting-reads.js +53 -1
- package/dist/store/sqlite/meeting-reads.js.map +1 -1
- package/dist/store/sqlite/meetings.d.ts +2 -2
- package/dist/store/sqlite/meetings.d.ts.map +1 -1
- package/dist/store/sqlite/meetings.js +1 -1
- package/dist/store/sqlite/meetings.js.map +1 -1
- package/dist/store/sqlite/notes.d.ts.map +1 -1
- package/dist/store/sqlite/notes.js +6 -1
- package/dist/store/sqlite/notes.js.map +1 -1
- package/dist/store/store.d.ts +25 -3
- package/dist/store/store.d.ts.map +1 -1
- package/dist/store/store.js +51 -0
- package/dist/store/store.js.map +1 -1
- package/package.json +1 -1
- package/parity.json +1 -27
package/dist/entities/index.js
CHANGED
|
@@ -22,8 +22,8 @@ import { task } from "./task.js";
|
|
|
22
22
|
export { account, attachment, chat, contact, document, fact, identity, meeting, memory, message, note, person, reference, task, };
|
|
23
23
|
export const ENTITIES = {
|
|
24
24
|
message,
|
|
25
|
-
"message.hit": v.pick(message, ["ref", "
|
|
26
|
-
"message.summary": v.pick(message, ["ref", "timestamp", "
|
|
25
|
+
"message.hit": v.pick(message, ["ref", "chat_title", "timestamp", "sender_name", "excerpt", "matched_in", "score"]),
|
|
26
|
+
"message.summary": v.pick(message, ["ref", "timestamp", "sender_name", "text"]),
|
|
27
27
|
chat,
|
|
28
28
|
person,
|
|
29
29
|
identity,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/entities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC;;;;GAIG;AAEH,OAAO,EACL,OAAO,EACP,UAAU,EACV,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,SAAS,EACT,IAAI,GACL,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,OAAO;IACP,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/entities/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC;;;;GAIG;AAEH,OAAO,EACL,OAAO,EACP,UAAU,EACV,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,MAAM,EACN,OAAO,EACP,IAAI,EACJ,MAAM,EACN,SAAS,EACT,IAAI,GACL,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,OAAO;IACP,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACnH,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IAC/E,IAAI;IACJ,MAAM;IACN,QAAQ;IACR,OAAO;IACP,OAAO;IACP,IAAI;IACJ,QAAQ;IACR,UAAU;IACV,IAAI;IACJ,IAAI;IACJ,MAAM;IACN,OAAO;IACP,SAAS;CACD,CAAA;AAIV,2GAA2G;AAC3G,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAgC,EAAE,CACjE,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE;IAC9C,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,UAAU,EAAE,GAAG,YAAY,CAAC,MAAM,CAA4B,CAAA;IACrF,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;AAC3B,CAAC,CAAC,CAC4B,CAAA"}
|
|
@@ -9,12 +9,12 @@ export declare const meeting: v.StrictObjectSchema<{
|
|
|
9
9
|
readonly location: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
10
10
|
/** The link that joins it. */
|
|
11
11
|
readonly url: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
12
|
-
readonly
|
|
13
|
-
readonly
|
|
14
|
-
readonly
|
|
12
|
+
readonly started_at: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>;
|
|
13
|
+
readonly ended_at: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>;
|
|
14
|
+
readonly duration_ms: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
|
|
15
15
|
readonly timezone: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
16
|
-
readonly
|
|
17
|
-
readonly
|
|
18
|
-
readonly
|
|
16
|
+
readonly participants_count: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
|
|
17
|
+
readonly created_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>;
|
|
18
|
+
readonly updated_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>;
|
|
19
19
|
}, undefined>;
|
|
20
20
|
//# sourceMappingURL=meeting.d.ts.map
|
package/dist/entities/meeting.js
CHANGED
|
@@ -10,12 +10,12 @@ export const meeting = v.strictObject({
|
|
|
10
10
|
location: v.optional(v.nullable(text)),
|
|
11
11
|
/** The link that joins it. */
|
|
12
12
|
url: v.nullable(text),
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
started_at: v.nullable(time),
|
|
14
|
+
ended_at: v.nullable(time),
|
|
15
|
+
duration_ms: v.nullable(count),
|
|
16
16
|
timezone: v.optional(v.nullable(text)),
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
participants_count: v.nullable(count),
|
|
18
|
+
created_at: time,
|
|
19
|
+
updated_at: time,
|
|
20
20
|
});
|
|
21
21
|
//# sourceMappingURL=meeting.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meeting.js","sourceRoot":"","sources":["../../src/entities/meeting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAE9D,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,CAAC;IACpC,GAAG,EAAE,SAAS;IACd,EAAE;IACF,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtC,8BAA8B;IAC9B,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"meeting.js","sourceRoot":"","sources":["../../src/entities/meeting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAE9D,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,CAAC;IACpC,GAAG,EAAE,SAAS;IACd,EAAE;IACF,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtC,8BAA8B;IAC9B,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACrB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC5B,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC1B,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC9B,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACtC,kBAAkB,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IACrC,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;CACjB,CAAC,CAAA"}
|
|
@@ -16,8 +16,8 @@ export declare const memory: v.StrictObjectSchema<{
|
|
|
16
16
|
readonly scope: v.PicklistSchema<readonly ["personal", "work"], undefined>;
|
|
17
17
|
readonly supersedes: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>, undefined>;
|
|
18
18
|
readonly evidence: v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>, undefined>;
|
|
19
|
-
readonly
|
|
20
|
-
readonly
|
|
21
|
-
readonly
|
|
19
|
+
readonly last_verified_at: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>;
|
|
20
|
+
readonly created_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>;
|
|
21
|
+
readonly updated_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>;
|
|
22
22
|
}, undefined>;
|
|
23
23
|
//# sourceMappingURL=memory.d.ts.map
|
package/dist/entities/memory.js
CHANGED
|
@@ -14,8 +14,8 @@ export const memory = v.strictObject({
|
|
|
14
14
|
scope: v.picklist(MEMORY_SCOPES),
|
|
15
15
|
supersedes: v.nullable(reference),
|
|
16
16
|
evidence: v.array(reference),
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
last_verified_at: v.nullable(time),
|
|
18
|
+
created_at: time,
|
|
19
|
+
updated_at: time,
|
|
20
20
|
});
|
|
21
21
|
//# sourceMappingURL=memory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/entities/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC1F,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAE/D,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC;IACnC,GAAG,EAAE,SAAS;IACd,EAAE;IACF,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC9B,IAAI;IACJ,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IAC9B,MAAM;IACN,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACvB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;IAChC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IACjC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;IAC5B,
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/entities/memory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC1F,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAE/D,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC;IACnC,GAAG,EAAE,SAAS;IACd,EAAE;IACF,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC9B,IAAI;IACJ,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IAC9B,MAAM;IACN,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACvB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;IAChC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;IACjC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;IAC5B,gBAAgB,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IAClC,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,IAAI;CACjB,CAAC,CAAA"}
|
|
@@ -5,20 +5,20 @@ export declare const message: v.StrictObjectSchema<{
|
|
|
5
5
|
readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
6
6
|
readonly provider: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
7
7
|
readonly account: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
8
|
-
readonly
|
|
9
|
-
readonly
|
|
10
|
-
readonly
|
|
11
|
-
readonly
|
|
12
|
-
readonly
|
|
13
|
-
readonly
|
|
8
|
+
readonly chat_id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
9
|
+
readonly chat_title: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
10
|
+
readonly sender_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
11
|
+
readonly sender_name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
12
|
+
readonly sender_username: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
13
|
+
readonly sender_is_chat: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
14
14
|
readonly mentions: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>, undefined>;
|
|
15
15
|
/** When it was sent. */
|
|
16
16
|
readonly timestamp: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>;
|
|
17
|
-
readonly
|
|
17
|
+
readonly edited_at: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>;
|
|
18
18
|
readonly text: v.StringSchema<undefined>;
|
|
19
19
|
/** A stretch of the text, transcript, file name or file text around what a search matched. */
|
|
20
20
|
readonly excerpt: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
21
|
-
readonly
|
|
21
|
+
readonly matched_in: v.OptionalSchema<v.PicklistSchema<["text", "transcript", "filename", "file", "context"], undefined>, undefined>;
|
|
22
22
|
readonly score: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
23
23
|
readonly outgoing: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
|
|
24
24
|
readonly attachments: v.ArraySchema<v.StrictObjectSchema<{
|
|
@@ -39,12 +39,12 @@ export declare const message: v.StrictObjectSchema<{
|
|
|
39
39
|
readonly chars: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
|
|
40
40
|
readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
41
41
|
}, undefined>, undefined>;
|
|
42
|
-
readonly
|
|
42
|
+
readonly local_path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
43
43
|
}, undefined>, undefined>;
|
|
44
|
-
readonly
|
|
44
|
+
readonly reply_to: v.NullableSchema<v.StrictObjectSchema<{
|
|
45
45
|
readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
46
|
-
readonly
|
|
47
|
-
readonly
|
|
46
|
+
readonly sender_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
47
|
+
readonly sender_name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
48
48
|
readonly timestamp: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>;
|
|
49
49
|
readonly text: v.StringSchema<undefined>;
|
|
50
50
|
readonly attachments: v.ArraySchema<v.StrictObjectSchema<{
|
|
@@ -65,16 +65,16 @@ export declare const message: v.StrictObjectSchema<{
|
|
|
65
65
|
readonly chars: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
|
|
66
66
|
readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
67
67
|
}, undefined>, undefined>;
|
|
68
|
-
readonly
|
|
68
|
+
readonly local_path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
69
69
|
}, undefined>, undefined>;
|
|
70
70
|
readonly outgoing: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
|
|
71
71
|
}, undefined>, undefined>;
|
|
72
72
|
/** The id a reply answers, also when the provider sent no copy of that message. */
|
|
73
|
-
readonly
|
|
74
|
-
readonly
|
|
73
|
+
readonly reply_to_id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
74
|
+
readonly forwarded_from: v.NullableSchema<v.StrictObjectSchema<{
|
|
75
75
|
readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
76
|
-
readonly
|
|
77
|
-
readonly
|
|
76
|
+
readonly sender_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
77
|
+
readonly sender_name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
78
78
|
readonly timestamp: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>;
|
|
79
79
|
readonly text: v.StringSchema<undefined>;
|
|
80
80
|
readonly attachments: v.ArraySchema<v.StrictObjectSchema<{
|
|
@@ -95,12 +95,12 @@ export declare const message: v.StrictObjectSchema<{
|
|
|
95
95
|
readonly chars: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
|
|
96
96
|
readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
97
97
|
}, undefined>, undefined>;
|
|
98
|
-
readonly
|
|
98
|
+
readonly local_path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
99
99
|
}, undefined>, undefined>;
|
|
100
100
|
readonly outgoing: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
|
|
101
101
|
}, undefined>, undefined>;
|
|
102
|
-
readonly
|
|
103
|
-
readonly
|
|
102
|
+
readonly thread_id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
103
|
+
readonly thread_root_id: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
104
104
|
readonly reactions: v.OptionalSchema<v.NullableSchema<v.StrictObjectSchema<{
|
|
105
105
|
readonly counts: v.ArraySchema<v.StrictObjectSchema<{
|
|
106
106
|
readonly reaction: v.StringSchema<undefined>;
|
|
@@ -109,7 +109,7 @@ export declare const message: v.StrictObjectSchema<{
|
|
|
109
109
|
readonly mine: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
110
110
|
readonly total: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
|
|
111
111
|
}, undefined>, undefined>, undefined>;
|
|
112
|
-
readonly
|
|
112
|
+
readonly scheduled_for: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>;
|
|
113
113
|
readonly email: v.OptionalSchema<v.StrictObjectSchema<{
|
|
114
114
|
readonly subject: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
115
115
|
readonly from: v.NullableSchema<v.StrictObjectSchema<{
|
|
@@ -132,7 +132,8 @@ export declare const message: v.StrictObjectSchema<{
|
|
|
132
132
|
readonly address: v.StringSchema<undefined>;
|
|
133
133
|
readonly ref: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>, undefined>;
|
|
134
134
|
}, undefined>, undefined>;
|
|
135
|
-
|
|
135
|
+
/** The mail header Reply-To; `reply_to` is the quoted message a chat reply answers. */
|
|
136
|
+
readonly reply_addresses: v.ArraySchema<v.StrictObjectSchema<{
|
|
136
137
|
readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
137
138
|
readonly address: v.StringSchema<undefined>;
|
|
138
139
|
readonly ref: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>, undefined>;
|
|
@@ -143,6 +144,6 @@ export declare const message: v.StrictObjectSchema<{
|
|
|
143
144
|
readonly read: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
|
|
144
145
|
readonly flagged: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
|
|
145
146
|
}, undefined>, undefined>;
|
|
146
|
-
readonly
|
|
147
|
+
readonly provider_metadata: v.OptionalSchema<v.RecordSchema<v.StringSchema<undefined>, v.UnknownSchema, undefined>, undefined>;
|
|
147
148
|
}, undefined>;
|
|
148
149
|
//# sourceMappingURL=message.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/entities/message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAgB5B,eAAO,MAAM,OAAO;IAClB,6BAA6B;;;;;;;;;;;;IAY7B,wBAAwB;;;;IAIxB,8FAA8F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAO9F,mFAAmF
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/entities/message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAgB5B,eAAO,MAAM,OAAO;IAClB,6BAA6B;;;;;;;;;;;;IAY7B,wBAAwB;;;;IAIxB,8FAA8F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAO9F,mFAAmF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAsB/E,uFAAuF;;;;;;;QAGvF,yCAAyC;;;;;;aAO7C,CAAA"}
|
package/dist/entities/message.js
CHANGED
|
@@ -3,8 +3,8 @@ import { attachment } from "./attachment.js";
|
|
|
3
3
|
import { count, id, providerMetadata, reference, text, time } from "./fields.js";
|
|
4
4
|
const quoted = v.strictObject({
|
|
5
5
|
id,
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
sender_id: v.nullable(id),
|
|
7
|
+
sender_name: v.nullable(text),
|
|
8
8
|
timestamp: v.nullable(time),
|
|
9
9
|
text,
|
|
10
10
|
attachments: v.array(attachment),
|
|
@@ -17,48 +17,49 @@ export const message = v.strictObject({
|
|
|
17
17
|
id,
|
|
18
18
|
provider: v.optional(text),
|
|
19
19
|
account: v.optional(text),
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
20
|
+
chat_id: id,
|
|
21
|
+
chat_title: v.optional(v.nullable(text)),
|
|
22
|
+
sender_id: v.nullable(id),
|
|
23
|
+
sender_name: v.nullable(text),
|
|
24
|
+
sender_username: v.optional(text),
|
|
25
|
+
sender_is_chat: v.optional(v.boolean()),
|
|
26
26
|
mentions: v.optional(v.array(id)),
|
|
27
27
|
/** When it was sent. */
|
|
28
28
|
timestamp: time,
|
|
29
|
-
|
|
29
|
+
edited_at: v.nullable(time),
|
|
30
30
|
text,
|
|
31
31
|
/** A stretch of the text, transcript, file name or file text around what a search matched. */
|
|
32
32
|
excerpt: v.optional(text),
|
|
33
|
-
|
|
33
|
+
matched_in: v.optional(v.picklist(["text", "transcript", "filename", "file", "context"])),
|
|
34
34
|
score: v.optional(v.number()),
|
|
35
35
|
outgoing: v.nullable(v.boolean()),
|
|
36
36
|
attachments: v.array(attachment),
|
|
37
|
-
|
|
37
|
+
reply_to: v.nullable(quoted),
|
|
38
38
|
/** The id a reply answers, also when the provider sent no copy of that message. */
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
reply_to_id: v.optional(id),
|
|
40
|
+
forwarded_from: v.nullable(quoted),
|
|
41
|
+
thread_id: v.optional(id),
|
|
42
|
+
thread_root_id: v.optional(id),
|
|
43
43
|
reactions: v.optional(v.nullable(v.strictObject({
|
|
44
44
|
counts: v.array(v.strictObject({ reaction: text, count })),
|
|
45
45
|
mine: v.nullable(text),
|
|
46
46
|
total: count,
|
|
47
47
|
}))),
|
|
48
|
-
|
|
48
|
+
scheduled_for: v.optional(time),
|
|
49
49
|
email: v.optional(v.strictObject({
|
|
50
50
|
subject: v.nullable(text),
|
|
51
51
|
from: v.nullable(mailPerson),
|
|
52
52
|
to: v.array(mailPerson),
|
|
53
53
|
cc: v.array(mailPerson),
|
|
54
54
|
bcc: v.array(mailPerson),
|
|
55
|
-
|
|
55
|
+
/** The mail header Reply-To; `reply_to` is the quoted message a chat reply answers. */
|
|
56
|
+
reply_addresses: v.array(mailPerson),
|
|
56
57
|
labels: v.array(text),
|
|
57
58
|
/** The thread as a `chat:` reference. */
|
|
58
59
|
thread: reference,
|
|
59
60
|
read: v.nullable(v.boolean()),
|
|
60
61
|
flagged: v.nullable(v.boolean()),
|
|
61
62
|
})),
|
|
62
|
-
providerMetadata,
|
|
63
|
+
provider_metadata: providerMetadata,
|
|
63
64
|
});
|
|
64
65
|
//# sourceMappingURL=message.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/entities/message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAEhF,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC;IAC5B,EAAE;IACF,
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/entities/message.ts"],"names":[],"mappings":"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"}
|
package/dist/entities/note.d.ts
CHANGED
|
@@ -3,13 +3,13 @@ export declare const note: v.StrictObjectSchema<{
|
|
|
3
3
|
readonly ref: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>;
|
|
4
4
|
readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
5
5
|
readonly source: v.PicklistSchema<["file", "internal"], undefined>;
|
|
6
|
-
readonly
|
|
6
|
+
readonly folder_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
7
7
|
readonly path: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
8
8
|
readonly title: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
9
9
|
readonly text: v.StringSchema<undefined>;
|
|
10
|
-
readonly
|
|
10
|
+
readonly created_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>;
|
|
11
11
|
/** When the store's copy last changed. */
|
|
12
|
-
readonly
|
|
13
|
-
readonly
|
|
12
|
+
readonly updated_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>;
|
|
13
|
+
readonly deleted_at: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>, undefined>;
|
|
14
14
|
}, undefined>;
|
|
15
15
|
//# sourceMappingURL=note.d.ts.map
|
package/dist/entities/note.js
CHANGED
|
@@ -4,13 +4,13 @@ export const note = v.strictObject({
|
|
|
4
4
|
ref: reference,
|
|
5
5
|
id,
|
|
6
6
|
source: v.picklist(["file", "internal"]),
|
|
7
|
-
|
|
7
|
+
folder_id: v.nullable(id),
|
|
8
8
|
path: v.nullable(text),
|
|
9
9
|
title: v.nullable(text),
|
|
10
10
|
text,
|
|
11
|
-
|
|
11
|
+
created_at: time,
|
|
12
12
|
/** When the store's copy last changed. */
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
updated_at: time,
|
|
14
|
+
deleted_at: v.optional(v.nullable(time)),
|
|
15
15
|
});
|
|
16
16
|
//# sourceMappingURL=note.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"note.js","sourceRoot":"","sources":["../../src/entities/note.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAEvD,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC;IACjC,GAAG,EAAE,SAAS;IACd,EAAE;IACF,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACxC,
|
|
1
|
+
{"version":3,"file":"note.js","sourceRoot":"","sources":["../../src/entities/note.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAEvD,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC;IACjC,GAAG,EAAE,SAAS;IACd,EAAE;IACF,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzB,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACvB,IAAI;IACJ,UAAU,EAAE,IAAI;IAChB,0CAA0C;IAC1C,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;CACzC,CAAC,CAAA"}
|
package/dist/entities/task.d.ts
CHANGED
|
@@ -12,13 +12,13 @@ export declare const task: v.StrictObjectSchema<{
|
|
|
12
12
|
/** The chat it came from, as a `chat:` reference. */
|
|
13
13
|
readonly chat: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>, undefined>, undefined>;
|
|
14
14
|
/** The message it came from. */
|
|
15
|
-
readonly
|
|
15
|
+
readonly source_message: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>, undefined>, undefined>;
|
|
16
16
|
readonly priority: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
|
|
17
17
|
readonly parent: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>, undefined>, undefined>;
|
|
18
|
-
readonly
|
|
19
|
-
readonly
|
|
18
|
+
readonly due_at: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>, undefined>;
|
|
19
|
+
readonly closed_at: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>, undefined>;
|
|
20
20
|
readonly reason: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
21
|
-
readonly
|
|
22
|
-
readonly
|
|
21
|
+
readonly created_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>;
|
|
22
|
+
readonly updated_at: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time with a zone">]>, undefined>;
|
|
23
23
|
}, undefined>;
|
|
24
24
|
//# sourceMappingURL=task.d.ts.map
|
package/dist/entities/task.js
CHANGED
|
@@ -15,13 +15,13 @@ export const task = v.strictObject({
|
|
|
15
15
|
/** The chat it came from, as a `chat:` reference. */
|
|
16
16
|
chat: v.optional(v.nullable(reference)),
|
|
17
17
|
/** The message it came from. */
|
|
18
|
-
|
|
18
|
+
source_message: v.optional(v.nullable(reference)),
|
|
19
19
|
priority: v.optional(v.nullable(v.number())),
|
|
20
20
|
parent: v.optional(v.nullable(reference)),
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
due_at: v.optional(v.nullable(time)),
|
|
22
|
+
closed_at: v.optional(v.nullable(time)),
|
|
23
23
|
reason: v.optional(v.nullable(text)),
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
created_at: time,
|
|
25
|
+
updated_at: v.optional(time),
|
|
26
26
|
});
|
|
27
27
|
//# sourceMappingURL=task.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/entities/task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAEvD,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC;IACjC,GAAG,EAAE,SAAS;IACd,EAAE;IACF,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC5B,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC9B,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACzB,qDAAqD;IACrD,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvC,gCAAgC;IAChC,
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/entities/task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAEvD,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC;IACjC,GAAG,EAAE,SAAS;IACd,EAAE;IACF,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC5B,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC9B,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACzB,qDAAqD;IACrD,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvC,gCAAgC;IAChC,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACjD,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpC,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;CAC7B,CAAC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ImageContext, ImageProvider } from "../types.js";
|
|
2
|
+
/** Messages taken on each side of the image. */
|
|
3
|
+
export declare const CONTEXT_MESSAGES = 3;
|
|
4
|
+
/** How far, in minutes, a message may be from the image and still describe it. */
|
|
5
|
+
export declare const CONTEXT_MINUTES = 10;
|
|
6
|
+
/**
|
|
7
|
+
* What the chat says around a photo, as the photo's own text. The chat title and the sender alone say nothing
|
|
8
|
+
* about the picture, so without a caption or a neighbour there is no text.
|
|
9
|
+
*/
|
|
10
|
+
export declare const contextText: ({ chatTitle, sender, caption, sentAt, before, after, }: ImageContext) => string | undefined;
|
|
11
|
+
export declare const context: ImageProvider;
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/images/context/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE9E,gDAAgD;AAChD,eAAO,MAAM,gBAAgB,IAAI,CAAA;AACjC,kFAAkF;AAClF,eAAO,MAAM,eAAe,KAAK,CAAA;AAWjC;;;GAGG;AACH,eAAO,MAAM,WAAW,2DAOrB,YAAY,KAAG,MAAM,GAAG,SAO1B,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,aAOrB,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/** Messages taken on each side of the image. */
|
|
2
|
+
export const CONTEXT_MESSAGES = 3;
|
|
3
|
+
/** How far, in minutes, a message may be from the image and still describe it. */
|
|
4
|
+
export const CONTEXT_MINUTES = 10;
|
|
5
|
+
const MAX_CHARS = 1_200;
|
|
6
|
+
const line = ({ sender, text }) => (sender ? `${sender}: ${text.trim()}` : text.trim());
|
|
7
|
+
const near = (messages, sentAt) => messages
|
|
8
|
+
.filter(({ text, sentAt: at }) => text.trim() && Math.abs(at - sentAt) <= CONTEXT_MINUTES * 60_000)
|
|
9
|
+
.slice(0, CONTEXT_MESSAGES);
|
|
10
|
+
/**
|
|
11
|
+
* What the chat says around a photo, as the photo's own text. The chat title and the sender alone say nothing
|
|
12
|
+
* about the picture, so without a caption or a neighbour there is no text.
|
|
13
|
+
*/
|
|
14
|
+
export const contextText = ({ chatTitle, sender, caption, sentAt, before, after, }) => {
|
|
15
|
+
const earlier = near(before, sentAt).reverse();
|
|
16
|
+
const later = near(after, sentAt);
|
|
17
|
+
if (!caption.trim() && earlier.length === 0 && later.length === 0)
|
|
18
|
+
return undefined;
|
|
19
|
+
const own = line({ sender, text: `[photo] ${caption}`, sentAt });
|
|
20
|
+
const lines = [...(chatTitle?.trim() ? [chatTitle.trim()] : []), ...earlier.map(line), own, ...later.map(line)];
|
|
21
|
+
return lines.join("\n").slice(0, MAX_CHARS);
|
|
22
|
+
};
|
|
23
|
+
export const context = {
|
|
24
|
+
id: "context",
|
|
25
|
+
version: "1",
|
|
26
|
+
describe: async (_image, imageContext) => {
|
|
27
|
+
const text = contextText(imageContext);
|
|
28
|
+
return text === undefined ? {} : { text };
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/images/context/index.ts"],"names":[],"mappings":"AAEA,gDAAgD;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAA;AACjC,kFAAkF;AAClF,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAA;AAEjC,MAAM,SAAS,GAAG,KAAK,CAAA;AAEvB,MAAM,IAAI,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAkB,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;AAEvG,MAAM,IAAI,GAAG,CAAC,QAA0B,EAAE,MAAc,EAAE,EAAE,CAC1D,QAAQ;KACL,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,eAAe,GAAG,MAAM,CAAC;KAClG,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;AAE/B;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAC1B,SAAS,EACT,MAAM,EACN,OAAO,EACP,MAAM,EACN,MAAM,EACN,KAAK,GACQ,EAAsB,EAAE;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAA;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACjC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IACnF,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IAChE,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;IAC/G,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;AAC7C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAkB;IACpC,EAAE,EAAE,SAAS;IACb,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE;QACvC,MAAM,IAAI,GAAG,WAAW,CAAC,YAAY,CAAC,CAAA;QACtC,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;IAC3C,CAAC;CACF,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ImageProvider } from "./types.js";
|
|
2
|
+
export declare const registeredImageProviders: () => readonly ImageProvider[];
|
|
3
|
+
/** Adds a provider, or replaces the one with the same id in place. `before` puts it ahead of another provider. */
|
|
4
|
+
export declare const registerImageProvider: (provider: ImageProvider, options?: {
|
|
5
|
+
before?: string;
|
|
6
|
+
}) => (() => void);
|
|
7
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/images/registry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAO/C,eAAO,MAAM,wBAAwB,QAAO,SAAS,aAAa,EAAe,CAAA;AAEjF,kHAAkH;AAClH,eAAO,MAAM,qBAAqB,aAAc,aAAa,YAAW;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAAQ,CAAC,MAAM,IAAI,CAW7G,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { context } from "./context/index.js";
|
|
2
|
+
/** The order is the contract: the first provider that gives an image text describes it. */
|
|
3
|
+
const BUILT_INS = [context];
|
|
4
|
+
let providers = [...BUILT_INS];
|
|
5
|
+
export const registeredImageProviders = () => providers;
|
|
6
|
+
/** Adds a provider, or replaces the one with the same id in place. `before` puts it ahead of another provider. */
|
|
7
|
+
export const registerImageProvider = (provider, options = {}) => {
|
|
8
|
+
const without = providers.filter((existing) => existing.id !== provider.id);
|
|
9
|
+
let at = providers.findIndex((existing) => existing.id === provider.id);
|
|
10
|
+
if (options.before !== undefined) {
|
|
11
|
+
at = without.findIndex((existing) => existing.id === options.before);
|
|
12
|
+
if (at === -1)
|
|
13
|
+
throw new Error(`no image provider named ${options.before} to register ${provider.id} before`);
|
|
14
|
+
}
|
|
15
|
+
else if (at === -1)
|
|
16
|
+
at = without.length;
|
|
17
|
+
providers = [...without.slice(0, at), provider, ...without.slice(at)];
|
|
18
|
+
return () => {
|
|
19
|
+
providers = providers.filter((existing) => existing !== provider);
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/images/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAG5C,2FAA2F;AAC3F,MAAM,SAAS,GAA6B,CAAC,OAAO,CAAC,CAAA;AAErD,IAAI,SAAS,GAAoB,CAAC,GAAG,SAAS,CAAC,CAAA;AAE/C,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAA6B,EAAE,CAAC,SAAS,CAAA;AAEjF,kHAAkH;AAClH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAAuB,EAAE,OAAO,GAAwB,EAAE,EAAgB,EAAE;IAChH,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC3E,IAAI,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC,CAAA;IACvE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;QACpE,IAAI,EAAE,KAAK,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,CAAC,MAAM,gBAAgB,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAA;IAC/G,CAAC;SAAM,IAAI,EAAE,KAAK,CAAC,CAAC;QAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAA;IACzC,SAAS,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACrE,OAAO,GAAG,EAAE;QACV,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAA;IACnE,CAAC,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export interface ImageRef {
|
|
2
|
+
kind: string;
|
|
3
|
+
name: string | null;
|
|
4
|
+
mime: string | null;
|
|
5
|
+
/** Where the messenger's file was saved, when it was. Level 1 never reads it. */
|
|
6
|
+
localPath: string | null;
|
|
7
|
+
}
|
|
8
|
+
export interface ContextMessage {
|
|
9
|
+
sender: string | null;
|
|
10
|
+
text: string;
|
|
11
|
+
/** Epoch milliseconds. */
|
|
12
|
+
sentAt: number;
|
|
13
|
+
}
|
|
14
|
+
/** What the store knows around one image: its message and the chat's messages near it. */
|
|
15
|
+
export interface ImageContext {
|
|
16
|
+
chatTitle: string | null;
|
|
17
|
+
sender: string | null;
|
|
18
|
+
caption: string;
|
|
19
|
+
sentAt: number;
|
|
20
|
+
/** The chat's messages before the image, nearest first. */
|
|
21
|
+
before: ContextMessage[];
|
|
22
|
+
/** The chat's messages after the image, nearest first. */
|
|
23
|
+
after: ContextMessage[];
|
|
24
|
+
signal?: AbortSignal;
|
|
25
|
+
}
|
|
26
|
+
export interface ImageDescription {
|
|
27
|
+
/** Searchable text; embedded like any other. */
|
|
28
|
+
text?: string;
|
|
29
|
+
/** A vector of the provider's own space, for a provider that has one. */
|
|
30
|
+
vector?: Float32Array;
|
|
31
|
+
metadata?: Record<string, unknown>;
|
|
32
|
+
}
|
|
33
|
+
export interface ImageProvider {
|
|
34
|
+
id: string;
|
|
35
|
+
/** Stored beside what the provider wrote: a new version describes every image again. */
|
|
36
|
+
version: string;
|
|
37
|
+
describe(image: ImageRef, context: ImageContext): Promise<ImageDescription>;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/images/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,iFAAiF;IACjF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,0FAA0F;AAC1F,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,2DAA2D;IAC3D,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,0DAA0D;IAC1D,KAAK,EAAE,cAAc,EAAE,CAAA;IACvB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,yEAAyE;IACzE,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,wFAAwF;IACxF,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAC5E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/images/types.ts"],"names":[],"mappings":""}
|
package/dist/mcp/surface.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { CallToolResult, McpServer, ServerContext } from "@modelcontextprotocol/server";
|
|
2
2
|
import * as v from "valibot";
|
|
3
|
+
import type { AppErrors } from "../cli/reasons.js";
|
|
3
4
|
import { type AnyTool, type Registration } from "./tool.js";
|
|
4
5
|
type Input = v.ObjectSchema<v.ObjectEntries, undefined> | v.StrictObjectSchema<v.ObjectEntries, undefined>;
|
|
5
6
|
/** One command an agent can find and run: its arguments are checked against `input` before `run`. */
|
|
@@ -8,6 +9,8 @@ export interface McpCommand {
|
|
|
8
9
|
description: string;
|
|
9
10
|
writes: boolean;
|
|
10
11
|
input: Input;
|
|
12
|
+
/** The envelope it answers with, once it declares its entity. */
|
|
13
|
+
output?: v.GenericSchema;
|
|
11
14
|
run: (args: Record<string, unknown>, ctx: ServerContext) => Promise<CallToolResult>;
|
|
12
15
|
}
|
|
13
16
|
/** `chats_mark_read` is `chats mark-read`: the one verb with a hyphen. */
|
|
@@ -22,7 +25,7 @@ export declare const search: (commands: Record<string, McpCommand>, query: strin
|
|
|
22
25
|
* with `read` or `write`. A command keeps its CLI path and its arguments, and runs as its own tool
|
|
23
26
|
* did. The list never changes during a connection; what a profile may not use is not in `commands`.
|
|
24
27
|
*/
|
|
25
|
-
export declare const registerCommands: (server: McpServer, prefix: string, commands: Record<string, McpCommand
|
|
28
|
+
export declare const registerCommands: (server: McpServer, prefix: string, commands: Record<string, McpCommand>, errors?: AppErrors) => void;
|
|
26
29
|
/** The personal account's definitions as commands, each run through the shared runner. */
|
|
27
30
|
export declare const registerSurface: (server: McpServer, tools: Record<string, AnyTool>, registration: Registration) => void;
|
|
28
31
|
export {};
|