@wirecat/cli-memo 0.37.1 → 0.39.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/dist/actions/actions.d.ts.map +1 -1
- package/dist/actions/actions.js +2 -2
- package/dist/actions/actions.js.map +1 -1
- package/dist/actions/command.d.ts.map +1 -1
- package/dist/actions/command.js +2 -4
- package/dist/actions/command.js.map +1 -1
- package/dist/agents/command.d.ts.map +1 -1
- package/dist/agents/command.js +2 -2
- package/dist/agents/command.js.map +1 -1
- package/dist/agents/log.d.ts.map +1 -1
- package/dist/agents/log.js +3 -3
- package/dist/agents/log.js.map +1 -1
- package/dist/doctor/command.d.ts +1 -1
- package/dist/facts/command.d.ts.map +1 -1
- package/dist/facts/command.js +1 -1
- package/dist/facts/command.js.map +1 -1
- package/dist/facts/fact.d.ts +5 -5
- package/dist/facts/fact.d.ts.map +1 -1
- package/dist/facts/fact.js +10 -10
- package/dist/facts/fact.js.map +1 -1
- package/dist/failure.d.ts +3 -1
- package/dist/failure.d.ts.map +1 -1
- package/dist/failure.js +3 -3
- package/dist/failure.js.map +1 -1
- package/dist/knowledge/command.d.ts.map +1 -1
- package/dist/knowledge/command.js +3 -6
- package/dist/knowledge/command.js.map +1 -1
- package/dist/knowledge/meeting-projects-command.d.ts.map +1 -1
- package/dist/knowledge/meeting-projects-command.js +3 -3
- package/dist/knowledge/meeting-projects-command.js.map +1 -1
- package/dist/mcp/knowledge.d.ts.map +1 -1
- package/dist/mcp/knowledge.js +5 -6
- package/dist/mcp/knowledge.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +17 -15
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/task-relations.js +1 -1
- package/dist/mcp/task-relations.js.map +1 -1
- package/dist/mcp/vocabulary.js +2 -2
- package/dist/mcp/vocabulary.js.map +1 -1
- package/dist/memories/command.d.ts.map +1 -1
- package/dist/memories/command.js +1 -1
- package/dist/memories/command.js.map +1 -1
- package/dist/memories/memory.d.ts.map +1 -1
- package/dist/memories/memory.js +5 -5
- package/dist/memories/memory.js.map +1 -1
- package/dist/notes/command.d.ts.map +1 -1
- package/dist/notes/command.js +4 -4
- package/dist/notes/command.js.map +1 -1
- package/dist/notes/folders-command.d.ts.map +1 -1
- package/dist/notes/folders-command.js +6 -4
- package/dist/notes/folders-command.js.map +1 -1
- package/dist/tags/command.d.ts.map +1 -1
- package/dist/tags/command.js +4 -6
- package/dist/tags/command.js.map +1 -1
- package/dist/tasks/command.d.ts.map +1 -1
- package/dist/tasks/command.js +10 -3
- package/dist/tasks/command.js.map +1 -1
- package/dist/tasks/list.d.ts +1 -1
- package/dist/tasks/list.d.ts.map +1 -1
- package/dist/tasks/list.js +61 -18
- package/dist/tasks/list.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/vocabulary/command.d.ts.map +1 -1
- package/dist/vocabulary/command.js +2 -2
- package/dist/vocabulary/command.js.map +1 -1
- package/dist/vocabulary/list.d.ts.map +1 -1
- package/dist/vocabulary/list.js +3 -3
- package/dist/vocabulary/list.js.map +1 -1
- package/package.json +2 -2
- package/dist/list-query.d.ts +0 -21
- package/dist/list-query.d.ts.map +0 -1
- package/dist/list-query.js +0 -69
- package/dist/list-query.js.map +0 -1
package/dist/tasks/command.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { CliError } from "@wirecat/cli-base";
|
|
2
2
|
import { parseLocator } from "@wirecat/cli-core";
|
|
3
|
+
import { withQuery } from "@wirecat/cli-core/cli";
|
|
3
4
|
import { closedStateOf, storeOnlyDeps, tasksService } from "@wirecat/cli-core/services";
|
|
4
5
|
import { TASK_ROLES, TASK_TYPES, WORK_TASK_TYPES, } from "@wirecat/cli-core/store";
|
|
5
6
|
import { InvalidArgumentError } from "commander";
|
|
6
7
|
import { answers, itemAnswer, withStore } from "../answer.js";
|
|
7
8
|
import { APP } from "../app.js";
|
|
8
|
-
import { withQuery } from "../list-query.js";
|
|
9
9
|
import { isNoteReference } from "../notes/about.js";
|
|
10
10
|
import { accountOptions, oneOf, positive } from "../options.js";
|
|
11
11
|
import { heldMessage } from "../store/held.js";
|
|
@@ -46,11 +46,15 @@ export const tasksCommand = (program, streams, env) => {
|
|
|
46
46
|
.option("--type <type>", "question, request (default), mention or promise from a source; bug, feature or chore (default) in a project", oneOf(TASK_TYPES))
|
|
47
47
|
.option("--project <project>", "a task without a source: the project's key or project:<id>")
|
|
48
48
|
.option("--assignee <person...>", "who does it: a person's UID")
|
|
49
|
+
.option("--attach <task>", "link the source to this task instead of opening one that may be the same job")
|
|
50
|
+
.option("--new", "open the task even when one like it is open or was closed in the last 14 days")
|
|
49
51
|
.action(async (source, options) => {
|
|
50
52
|
await withStore(env, async (store) => {
|
|
51
53
|
if (source === undefined) {
|
|
52
54
|
if (options.project === undefined || options.title === undefined)
|
|
53
55
|
throw new CliError("validation_error", "a task without a source needs --project and --title");
|
|
56
|
+
if (options.attach !== undefined || options.new)
|
|
57
|
+
throw new CliError("validation_error", "--attach and --new are for a task from a source");
|
|
54
58
|
const type = options.type ?? "chore";
|
|
55
59
|
if (!WORK_TASK_TYPES.includes(type))
|
|
56
60
|
throw new CliError("validation_error", `a task in a project is ${WORK_TASK_TYPES.join(", ")}`);
|
|
@@ -82,7 +86,10 @@ export const tasksCommand = (program, streams, env) => {
|
|
|
82
86
|
parsed.provider !== "notes" &&
|
|
83
87
|
(await heldMessage(store, key, parsed.message, parsed.chat)) === undefined)
|
|
84
88
|
throw new CliError("not_found", "the task source is unavailable or deleted");
|
|
85
|
-
const answer = await tasksService(storeOnlyDeps(store, key, { app: APP, env })).add(source, type, "owner"
|
|
89
|
+
const answer = await tasksService(storeOnlyDeps(store, key, { app: APP, env })).add(source, type, "owner", undefined, {
|
|
90
|
+
...(options.attach === undefined ? {} : { attach: options.attach }),
|
|
91
|
+
...(options.new ? { new: true } : {}),
|
|
92
|
+
});
|
|
86
93
|
const fields = fieldsOf(options);
|
|
87
94
|
if (Object.keys(fields).length === 0 && !options.assignee?.length) {
|
|
88
95
|
print(options.json, itemAnswer(answer));
|
|
@@ -93,7 +100,7 @@ export const tasksCommand = (program, streams, env) => {
|
|
|
93
100
|
print(options.json, itemAnswer({ ...answer, details: await store.tasks.details(answer.task.id) }));
|
|
94
101
|
});
|
|
95
102
|
});
|
|
96
|
-
withQuery(accountOptions(group.command("list").description("tasks of one account or one project, open by default")), TASKS_LIST_QUERY
|
|
103
|
+
withQuery(accountOptions(group.command("list").description("tasks of one account or one project, open by default")), TASKS_LIST_QUERY)
|
|
97
104
|
.option("--limit <n>", "most tasks", positive, 100)
|
|
98
105
|
.action(async (words, options) => {
|
|
99
106
|
await withStore(env, async (store) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/tasks/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAgB,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACvF,OAAO,EAEL,UAAU,EACV,UAAU,EAIV,eAAe,GAEhB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAgB,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAC/B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/tasks/command.ts"],"names":[],"mappings":"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"}
|
package/dist/tasks/list.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type AccountKey, type MessageStore } from "@wirecat/cli-core/store";
|
|
2
|
-
/** The store filters by state, and a project's tasks by kind too
|
|
2
|
+
/** The store filters by state, and a project's tasks by kind too. */
|
|
3
3
|
export declare const TASKS_LIST_QUERY: {
|
|
4
4
|
readonly entity: "task";
|
|
5
5
|
readonly backend: "native";
|
package/dist/tasks/list.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/tasks/list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/tasks/list.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,UAAU,EACf,KAAK,YAAY,EAIlB,MAAM,yBAAyB,CAAA;AAIhC,qEAAqE;AACrE,eAAO,MAAM,gBAAgB;qBACnB,MAAM;sBACL,QAAQ;;;CAee,CAAA;AA2DlC;;;GAGG;AACH,eAAO,MAAM,SAAS,UACb,YAAY,SACZ,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,SACtC,MAAM,WACJ,MAAM,OAAO,CAAC,UAAU,CAAC,+DAyCnC,CAAA"}
|
package/dist/tasks/list.js
CHANGED
|
@@ -1,33 +1,75 @@
|
|
|
1
1
|
import { CliError } from "@wirecat/cli-base";
|
|
2
|
-
import {
|
|
2
|
+
import { formatReference } from "@wirecat/cli-core";
|
|
3
|
+
import { queryTerms, termField } from "@wirecat/cli-core/cli";
|
|
4
|
+
import { TASK_TYPES, } from "@wirecat/cli-core/store";
|
|
3
5
|
import { listAnswer } from "../answer.js";
|
|
4
|
-
import { queryField, queryTerms } from "../list-query.js";
|
|
5
6
|
import { canonicalProject } from "../vocabulary/project.js";
|
|
6
|
-
|
|
7
|
-
/** The store filters by state, and a project's tasks by kind too; the rows are memo's, not cli-core's task entity. */
|
|
7
|
+
/** The store filters by state, and a project's tasks by kind too. */
|
|
8
8
|
export const TASKS_LIST_QUERY = {
|
|
9
9
|
entity: "task",
|
|
10
10
|
backend: "native",
|
|
11
11
|
fields: [
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
termField("state", "enum", "state:done", { values: ["open", "done", "dismissed"] }),
|
|
13
|
+
termField("kind", "enum", "kind:bug", { values: TASK_TYPES }),
|
|
14
|
+
termField("project", "kw", "project:HRB", {
|
|
15
15
|
relation: "a project's tasks, by its key or project:<id>, instead of an account's",
|
|
16
16
|
}),
|
|
17
|
-
|
|
17
|
+
termField("ready", "bool", "ready:true", {
|
|
18
18
|
relation: "with project: only open tasks whose prerequisites are done; this claims none",
|
|
19
19
|
}),
|
|
20
|
-
|
|
20
|
+
termField("source", "ref", 'source:"msg:telegram/1/7/1"', {
|
|
21
21
|
relation: "tasks from this message, note or document; an account's tasks only",
|
|
22
22
|
}),
|
|
23
23
|
],
|
|
24
24
|
defaults: ["state:open"],
|
|
25
25
|
};
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
/** A task as cli-core's `task` entity; one found in a message also names its account and chat. */
|
|
27
|
+
const taskItem = (task, held) => ({
|
|
28
|
+
ref: task.ref,
|
|
29
|
+
id: task.id,
|
|
30
|
+
key: task.key,
|
|
31
|
+
title: task.title,
|
|
32
|
+
description: task.description,
|
|
33
|
+
kind: task.type,
|
|
34
|
+
state: task.status,
|
|
35
|
+
project: task.project,
|
|
36
|
+
...(held
|
|
37
|
+
? {
|
|
38
|
+
origin: held.origin,
|
|
39
|
+
account: held.account,
|
|
40
|
+
chat: held.sourceKind === "note"
|
|
41
|
+
? null
|
|
42
|
+
: formatReference({
|
|
43
|
+
type: "chat",
|
|
44
|
+
provider: held.account.split(":")[0] ?? "",
|
|
45
|
+
account: held.account.split(":").slice(1).join(":"),
|
|
46
|
+
chat: held.group,
|
|
47
|
+
}),
|
|
48
|
+
}
|
|
49
|
+
: {}),
|
|
50
|
+
source_message: task.source,
|
|
51
|
+
priority: task.priority,
|
|
52
|
+
parent: task.parent,
|
|
53
|
+
due_at: task.dueAt,
|
|
54
|
+
closed_at: task.closedAt,
|
|
55
|
+
reason: task.reason,
|
|
56
|
+
category: task.category,
|
|
57
|
+
claimed_by: task.claimedBy,
|
|
58
|
+
claimed_until: task.claimedUntil,
|
|
59
|
+
created_at: task.createdAt,
|
|
60
|
+
updated_at: task.updatedAt,
|
|
30
61
|
});
|
|
62
|
+
const tasksPage = (items, hasMore, limit) => listAnswer("tasks list", { items, limit, has_more: hasMore });
|
|
63
|
+
const accountTasks = async (store, key, options) => {
|
|
64
|
+
const page = await store.knowledge.taskIds(key, options);
|
|
65
|
+
const items = [];
|
|
66
|
+
for (const id of page.items) {
|
|
67
|
+
const held = await store.tasks.get(id);
|
|
68
|
+
if (held)
|
|
69
|
+
items.push(taskItem(await store.tasks.details(id), held));
|
|
70
|
+
}
|
|
71
|
+
return tasksPage(items, page.hasMore, options.limit);
|
|
72
|
+
};
|
|
31
73
|
/**
|
|
32
74
|
* A project's tasks when the query names project:, otherwise the tasks of the account `account` picks; CLI and MCP
|
|
33
75
|
* list through it.
|
|
@@ -47,21 +89,22 @@ export const listTasks = async (store, query, limit, account) => {
|
|
|
47
89
|
throw new CliError("validation_error", "source: narrows an account's tasks, not a project's");
|
|
48
90
|
if (project !== undefined) {
|
|
49
91
|
const canonical = await canonicalProject(store, project);
|
|
50
|
-
if (ready)
|
|
51
|
-
|
|
92
|
+
if (ready) {
|
|
93
|
+
const page = await store.tasks.readyTasks(canonical, { limit });
|
|
94
|
+
return tasksPage(await Promise.all(page.items.map(async ({ id }) => taskItem(await store.tasks.details(id)))), page.hasMore, limit);
|
|
95
|
+
}
|
|
52
96
|
const items = await store.tasks.find({
|
|
53
97
|
project: canonical,
|
|
54
98
|
status: state,
|
|
55
99
|
...(kind === undefined ? {} : { type: kind }),
|
|
56
100
|
limit: limit + 1,
|
|
57
101
|
});
|
|
58
|
-
return tasksPage(
|
|
102
|
+
return tasksPage(items.slice(0, limit).map((task) => taskItem(task)), items.length > limit, limit);
|
|
59
103
|
}
|
|
60
|
-
|
|
104
|
+
return accountTasks(store, await account(), {
|
|
61
105
|
state,
|
|
62
106
|
limit,
|
|
63
107
|
...(source === undefined ? {} : { sources: [source] }),
|
|
64
108
|
});
|
|
65
|
-
return tasksPage(page, limit);
|
|
66
109
|
};
|
|
67
110
|
//# sourceMappingURL=list.js.map
|
package/dist/tasks/list.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/tasks/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/tasks/list.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.
|
|
1
|
+
export declare const VERSION = "0.39.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = "0.
|
|
1
|
+
export const VERSION = "0.39.0";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/vocabulary/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/vocabulary/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAG1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAaxC,eAAO,MAAM,iBAAiB,YAAa,OAAO,WAAW,OAAO,OAAO,MAAM,CAAC,UAAU,KAAG,IAuI9F,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CliError } from "@wirecat/cli-base";
|
|
2
|
+
import { withQuery } from "@wirecat/cli-core/cli";
|
|
2
3
|
import { answers, itemAnswer } from "../answer.js";
|
|
3
|
-
import { withQuery } from "../list-query.js";
|
|
4
4
|
import { oneOf, positive } from "../options.js";
|
|
5
5
|
import { VOCABULARY_QUERY, vocabularyFilter } from "./list.js";
|
|
6
6
|
const kinds = ["project", "tag", "topic"];
|
|
@@ -29,7 +29,7 @@ export const vocabularyCommand = (program, streams, env) => {
|
|
|
29
29
|
...(options.maxEntries === undefined ? {} : { maxEntries: options.maxEntries }),
|
|
30
30
|
...(options.maxReadBytes === undefined ? {} : { maxReadBytes: options.maxReadBytes }),
|
|
31
31
|
});
|
|
32
|
-
budgetOptions(withQuery(vocabulary.command("list").description("list canonical IDs, aliases, usage counts and a preview fingerprint"), VOCABULARY_QUERY
|
|
32
|
+
budgetOptions(withQuery(vocabulary.command("list").description("list canonical IDs, aliases, usage counts and a preview fingerprint"), VOCABULARY_QUERY)).action((words, options) => execute(options, (store) => store.knowledge.vocabulary({ ...catalogOptions(options), ...vocabularyFilter(words, "vocabulary list") })));
|
|
33
33
|
readOptions(vocabulary
|
|
34
34
|
.command("show")
|
|
35
35
|
.argument("<name>", "the name or alias to look up, exactly")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/vocabulary/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAgB,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/vocabulary/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAgB,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAGjD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAE9D,MAAM,KAAK,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAU,CAAA;AAClD,MAAM,QAAQ,GAAG,CAAC,SAAiB,EAAoB,EAAE;IACvD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACjE,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,kEAAkE,CAAC,CAAA;IACtH,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAmB,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAW,EAAE,CAAA;AACrE,CAAC,CAAA;AAGD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,OAAgB,EAAE,OAAgB,EAAE,GAAsB,EAAQ,EAAE;IACpG,MAAM,UAAU,GAAG,OAAO;SACvB,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC,2DAA2D,CAAC,CAAA;IAC3E,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,CAAC,OAAgB,EAAE,IAA+C,EAAE,EAAE,CACpF,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACnE,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,EAAE,CACzC,OAAO;SACJ,MAAM,CAAC,mBAAmB,EAAE,uCAAuC,EAAE,QAAQ,CAAC;SAC9E,MAAM,CAAC,0BAA0B,EAAE,2BAA2B,EAAE,QAAQ,CAAC;SACzE,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC,CAAA;IAC5E,MAAM,WAAW,GAAG,CAAC,OAAgB,EAAE,EAAE,CACvC,aAAa,CACX,OAAO;SACJ,MAAM,CAAC,eAAe,EAAE,uBAAuB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;SAC9D,MAAM,CAAC,iBAAiB,EAAE,2BAA2B,EAAE,KAAK,CAAC,CAAC,UAAU,EAAE,MAAM,CAAU,CAAC,CAAC,CAChG,CAAA;IACH,MAAM,cAAc,GAAG,CAAC,OAAgB,EAAqB,EAAE,CAAC,CAAC;QAC/D,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QAChE,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;QAC/E,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;KACtF,CAAC,CAAA;IACF,aAAa,CACX,SAAS,CACP,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,qEAAqE,CAAC,EAC7G,gBAAgB,CACjB,CACF,CAAC,MAAM,CAAC,CAAC,KAAe,EAAE,OAAgB,EAAE,EAAE,CAC7C,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACzB,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAC1G,CACF,CAAA;IACD,WAAW,CACT,UAAU;SACP,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,QAAQ,EAAE,uCAAuC,CAAC;SAC3D,WAAW,CAAC,+EAA+E,CAAC,CAChG,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,OAAgB,EAAE,EAAE,CAC1C,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAC9F,CAAA;IACD,WAAW,CACT,UAAU;SACP,OAAO,CAAC,OAAO,CAAC;SAChB,QAAQ,CAAC,QAAQ,EAAE,qEAAqE,CAAC;SACzF,OAAO,CAAC,6EAA6E,CAAC;SACtF,WAAW,CACV,0GAA0G;QACxG,yEAAyE,CAC5E,CACJ;SACE,MAAM,CAAC,sBAAsB,EAAE,oDAAoD,EAAE,MAAM,CAAC;SAC5F,MAAM,CAAC,uBAAuB,EAAE,uCAAuC,EAAE,QAAQ,CAAC;SAClF,MAAM,CAAC,aAAa,EAAE,sCAAsC,EAAE,QAAQ,CAAC;SACvE,MAAM,CACL,CACE,IAAwB,EACxB,OAAsF,EACtF,EAAE,CACF,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QACzB,IAAI,IAAI,KAAK,SAAS;YACpB,OAAO,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC;gBACrC,GAAG,cAAc,CAAC,OAAO,CAAC;gBAC1B,GAAG,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;gBACxF,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC3F,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;aACjE,CAAC,CAAA;QACJ,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;YAC3D,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,sEAAsE,CACvE,CAAA;QACH,IACE,OAAO,CAAC,aAAa,KAAK,SAAS;YACnC,OAAO,CAAC,cAAc,KAAK,SAAS;YACpC,OAAO,CAAC,KAAK,KAAK,SAAS;YAE3B,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,gGAAgG,CACjG,CAAA;QACH,OAAO,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE;YACxC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;YAC7D,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;YAC/E,GAAG,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;SACtF,CAAC,CAAA;IACJ,CAAC,CAAC,CACL,CAAA;IACH,UAAU;SACP,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;SAC1C,WAAW,CAAC,qEAAqE,CAAC;SAClF,MAAM,CAAC,eAAe,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,OAAO,CAAU,CAAC,CAAC;SACzE,cAAc,CAAC,sBAAsB,EAAE,uDAAuD,CAAC;SAC/F,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC;SACvE,MAAM,CAAC,CAAC,IAAY,EAAE,OAA6C,EAAE,EAAE,CACtE,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACzB,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE;QAC9B,EAAE,EAAE,OAAO;QACX,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,2BAA2B,EAAE,OAAO,CAAC,WAAW;KACjD,CAAC,CACH,CACF,CAAA;IACH,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,gDAAgD,CAAC,CAAA;IAC3G,OAAO;SACJ,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,qDAAqD,CAAC;SAClE,QAAQ,CAAC,aAAa,EAAE,4DAA4D,CAAC;SACrF,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SACpC,cAAc,CAAC,sBAAsB,EAAE,4CAA4C,CAAC;SACpF,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC;SACvE,MAAM,CAAC,CAAC,SAAiB,EAAE,IAAY,EAAE,OAAgB,EAAE,EAAE;QAC5D,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;QAClC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAChC,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAC5G,CAAA;IACH,CAAC,CAAC,CAAA;IACJ,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,yDAAyD,CAAC;SACtE,QAAQ,CAAC,aAAa,EAAE,4DAA4D,CAAC;SACrF,QAAQ,CAAC,YAAY,EAAE,sCAAsC,CAAC;SAC9D,cAAc,CAAC,sBAAsB,EAAE,4CAA4C,CAAC;SACpF,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC;SACvE,MAAM,CAAC,CAAC,SAAiB,EAAE,OAAe,EAAE,OAAgB,EAAE,EAAE;QAC/D,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;QAClC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAChC,KAAK,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,EAAE;YACrD,EAAE,EAAE,OAAO;YACX,mBAAmB,EAAE,OAAO,CAAC,WAAW;SACzC,CAAC,CACH,CAAA;IACH,CAAC,CAAC,CAAA;AACN,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/vocabulary/list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/vocabulary/list.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAEhE,eAAO,MAAM,gBAAgB;qBACnB,YAAY;sBACX,QAAQ;;CAKe,CAAA;AAElC,kFAAkF;AAClF,eAAO,MAAM,gBAAgB,UACpB,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,WACpC,MAAM,KACd,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAM1C,CAAA"}
|
package/dist/vocabulary/list.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { queryTerms, termField } from "@wirecat/cli-core/cli";
|
|
2
2
|
export const VOCABULARY_QUERY = {
|
|
3
3
|
entity: "vocabulary",
|
|
4
4
|
backend: "native",
|
|
5
5
|
fields: [
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
termField("kind", "enum", "kind:tag", { values: ["project", "tag", "topic"] }),
|
|
7
|
+
termField("scope", "enum", "scope:work", { values: ["personal", "work"] }),
|
|
8
8
|
],
|
|
9
9
|
};
|
|
10
10
|
/** The catalog's kind and scope from a query; the store reads only those rows. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/vocabulary/list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/vocabulary/list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAG7D,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE;QACN,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;QAC9E,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC;KAC3E;CAC+B,CAAA;AAElC,kFAAkF;AAClF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,KAA6C,EAC7C,OAAe,EAC4B,EAAE;IAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAA;IAC1D,OAAO;QACL,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAA8B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAA+B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3F,CAAA;AACH,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wirecat/cli-memo",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.39.0",
|
|
4
4
|
"description": "Context about people across messengers, notes and mail, from a local store",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Viacheslav Ptsarev",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@modelcontextprotocol/server": "2.1.0",
|
|
49
49
|
"@valibot/to-json-schema": "1.8.0",
|
|
50
50
|
"@wirecat/cli-base": "0.31.1",
|
|
51
|
-
"@wirecat/cli-core": "0.
|
|
51
|
+
"@wirecat/cli-core": "0.285.0",
|
|
52
52
|
"commander": "15.0.0",
|
|
53
53
|
"disposable-email-domains-js": "1.26.0",
|
|
54
54
|
"postal-mime": "4.0.0",
|
package/dist/list-query.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { type FieldSpec, type FieldType, type QueryRegistry } from "@wirecat/cli-base/query";
|
|
2
|
-
import type { Command } from "commander";
|
|
3
|
-
import * as v from "valibot";
|
|
4
|
-
/** A field the store filters by itself, named as in the entity; it compares whole values only. */
|
|
5
|
-
export declare const queryField: (name: string, type: FieldType, example: string, more?: Pick<FieldSpec, "values" | "relation">) => FieldSpec;
|
|
6
|
-
/**
|
|
7
|
-
* A list narrowed by one query: `[query...]` last, a Fields section in its help, and the query and entity in
|
|
8
|
-
* `commands --json`. An old filter flag stays an unknown option, so it fails rather than reads as a word.
|
|
9
|
-
* `answersEntity: false` for a list whose rows are memo's own shape, not the entity's.
|
|
10
|
-
*/
|
|
11
|
-
export declare const withQuery: (command: Command, registry: QueryRegistry, { answersEntity }?: {
|
|
12
|
-
answersEntity?: boolean | undefined;
|
|
13
|
-
}) => Command;
|
|
14
|
-
/**
|
|
15
|
-
* The terms of a list's query, each field once and joined by AND, with each default whose field it does not name.
|
|
16
|
-
* The store filters by these in SQL; a question it cannot ask is refused rather than answered from part of the list.
|
|
17
|
-
*/
|
|
18
|
-
export declare const queryTerms: (words: readonly string[] | string | undefined, registry: QueryRegistry, command: string) => Map<string, string>;
|
|
19
|
-
/** An MCP list's `query` argument: the terms the CLI list takes after its arguments. */
|
|
20
|
-
export declare const queryArgument: (registry: QueryRegistry) => v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 8192, undefined>, v.DescriptionAction<string, `field:value terms joined by AND that narrow the list; fields: ${string}; e.g. ${string}`>]>, undefined>;
|
|
21
|
-
//# sourceMappingURL=list-query.d.ts.map
|
package/dist/list-query.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-query.d.ts","sourceRoot":"","sources":["../src/list-query.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,SAAS,EAQd,KAAK,aAAa,EAGnB,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B,kGAAkG;AAClG,eAAO,MAAM,UAAU,SACf,MAAM,QACN,SAAS,WACN,MAAM,SACT,IAAI,CAAC,SAAS,EAAE,QAAQ,GAAG,UAAU,CAAC,KAC3C,SAOD,CAAA;AAMF;;;;GAIG;AACH,eAAO,MAAM,SAAS,YAAa,OAAO,YAAY,aAAa;;MAAkC,OAMpG,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,UACd,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,YACnC,aAAa,WACd,MAAM,KACd,GAAG,CAAC,MAAM,EAAE,MAAM,CAiCpB,CAAA;AAED,wFAAwF;AACxF,eAAO,MAAM,aAAa,aAAc,aAAa,4PAapD,CAAA"}
|
package/dist/list-query.js
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { annotate } from "@wirecat/cli-base/commands";
|
|
2
|
-
import { defineQuery, fieldsHelp, fieldsNamed, OPERATORS_BY_TYPE, parseLucene, QUERY_LIMITS, queryError, validateQuery, } from "@wirecat/cli-base/query";
|
|
3
|
-
import * as v from "valibot";
|
|
4
|
-
const GUIDE = "https://github.com/WireCatLabs/cli-core/blob/main/docs/search/query-language.md";
|
|
5
|
-
/** A field the store filters by itself, named as in the entity; it compares whole values only. */
|
|
6
|
-
export const queryField = (name, type, example, more = {}) => ({
|
|
7
|
-
name,
|
|
8
|
-
type,
|
|
9
|
-
operators: OPERATORS_BY_TYPE[type].filter((operator) => operator === "term" || operator === "phrase"),
|
|
10
|
-
example,
|
|
11
|
-
native: true,
|
|
12
|
-
...more,
|
|
13
|
-
});
|
|
14
|
-
/** The fields a list filters by: on a store-filtered (`native`) list, only those its store takes. */
|
|
15
|
-
const askable = (registry) => registry.backend === "native" ? registry.fields.filter((field) => field.native) : registry.fields;
|
|
16
|
-
/**
|
|
17
|
-
* A list narrowed by one query: `[query...]` last, a Fields section in its help, and the query and entity in
|
|
18
|
-
* `commands --json`. An old filter flag stays an unknown option, so it fails rather than reads as a word.
|
|
19
|
-
* `answersEntity: false` for a list whose rows are memo's own shape, not the entity's.
|
|
20
|
-
*/
|
|
21
|
-
export const withQuery = (command, registry, { answersEntity = true } = {}) => {
|
|
22
|
-
const query = defineQuery(registry);
|
|
23
|
-
annotate(command, { query, ...(answersEntity ? { output: { entity: registry.entity } } : {}) });
|
|
24
|
-
return command
|
|
25
|
-
.argument("[query...]", "field:value terms that narrow the list — the fields are below")
|
|
26
|
-
.addHelpText("after", `\n${fieldsHelp({ ...query, fields: askable(query) }, GUIDE)}`);
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* The terms of a list's query, each field once and joined by AND, with each default whose field it does not name.
|
|
30
|
-
* The store filters by these in SQL; a question it cannot ask is refused rather than answered from part of the list.
|
|
31
|
-
*/
|
|
32
|
-
export const queryTerms = (words, registry, command) => {
|
|
33
|
-
const text = typeof words === "string" ? words : (words ?? []).join(" ");
|
|
34
|
-
const context = { command, guide: GUIDE };
|
|
35
|
-
const typed = text.trim() === "" ? undefined : parseLucene(text, { defaultField: "none", ...context });
|
|
36
|
-
if (typed)
|
|
37
|
-
validateQuery(typed, registry, context);
|
|
38
|
-
const named = typed ? fieldsNamed(typed) : new Set();
|
|
39
|
-
const terms = new Map();
|
|
40
|
-
const add = (node) => {
|
|
41
|
-
if (node.kind !== "predicate" || (node.operator !== "term" && node.operator !== "phrase"))
|
|
42
|
-
queryError("query.unsupported-placement", node.span, "this list takes only field:value terms joined by AND", context);
|
|
43
|
-
if (terms.has(node.field))
|
|
44
|
-
queryError("query.unsupported-placement", node.span, `${node.field} only once here`, context);
|
|
45
|
-
const { value } = node;
|
|
46
|
-
const enumerated = registry.fields.find(({ name }) => name === node.field)?.type === "enum";
|
|
47
|
-
terms.set(node.field, enumerated ? value.toLowerCase() : value);
|
|
48
|
-
};
|
|
49
|
-
if (typed?.root.kind === "boolean")
|
|
50
|
-
for (const clause of typed.root.clauses) {
|
|
51
|
-
if (clause.occur !== "must")
|
|
52
|
-
queryError("query.unsupported-placement", clause.node.span, "this list takes only terms joined by AND", context);
|
|
53
|
-
add(clause.node);
|
|
54
|
-
}
|
|
55
|
-
else if (typed)
|
|
56
|
-
add(typed.root);
|
|
57
|
-
for (const term of registry.defaults ?? []) {
|
|
58
|
-
const root = parseLucene(term, { defaultField: "none", ...context }).root;
|
|
59
|
-
if (root.kind === "predicate" && !named.has(root.field))
|
|
60
|
-
terms.set(root.field, root.value);
|
|
61
|
-
}
|
|
62
|
-
return terms;
|
|
63
|
-
};
|
|
64
|
-
/** An MCP list's `query` argument: the terms the CLI list takes after its arguments. */
|
|
65
|
-
export const queryArgument = (registry) => {
|
|
66
|
-
const fields = askable(registry);
|
|
67
|
-
return v.optional(v.pipe(v.string(), v.maxLength(QUERY_LIMITS.bytes), v.description(`field:value terms joined by AND that narrow the list; fields: ${fields.map(({ name }) => name).join(", ")}; e.g. ${fields[0]?.example ?? ""}`)));
|
|
68
|
-
};
|
|
69
|
-
//# sourceMappingURL=list-query.js.map
|
package/dist/list-query.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-query.js","sourceRoot":"","sources":["../src/list-query.ts"],"names":[],"mappings":"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"}
|