things-api 0.8.0 → 0.10.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 +31 -11
- package/dist/audit/log.js +56 -2
- package/dist/audit/log.js.map +1 -1
- package/dist/audit/schema.d.ts +26 -8
- package/dist/audit/schema.js +42 -1
- package/dist/audit/schema.js.map +1 -1
- package/dist/cli/commands/area.d.ts +34 -2
- package/dist/cli/commands/area.js +140 -28
- package/dist/cli/commands/area.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts +1 -1
- package/dist/cli/commands/doctor.js +44 -5
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/mcp.js +23 -4
- package/dist/cli/commands/mcp.js.map +1 -1
- package/dist/cli/commands/project.d.ts +23 -1
- package/dist/cli/commands/project.js +82 -15
- package/dist/cli/commands/project.js.map +1 -1
- package/dist/cli/commands/reads.d.ts +6 -125
- package/dist/cli/commands/reads.js +649 -657
- package/dist/cli/commands/reads.js.map +1 -1
- package/dist/cli/commands/repeat-flags.d.ts +20 -0
- package/dist/cli/commands/repeat-flags.js +76 -0
- package/dist/cli/commands/repeat-flags.js.map +1 -0
- package/dist/cli/commands/setup.js +2 -3
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/commands/show.d.ts +1 -1
- package/dist/cli/commands/show.js +169 -18
- package/dist/cli/commands/show.js.map +1 -1
- package/dist/cli/commands/snapshot.js +1 -1
- package/dist/cli/commands/snapshot.js.map +1 -1
- package/dist/cli/commands/todo.d.ts +1 -1
- package/dist/cli/commands/todo.js +21 -9
- package/dist/cli/commands/todo.js.map +1 -1
- package/dist/cli/commands/writes.js +378 -148
- package/dist/cli/commands/writes.js.map +1 -1
- package/dist/cli/did-you-mean.d.ts +29 -0
- package/dist/cli/did-you-mean.js +53 -0
- package/dist/cli/did-you-mean.js.map +1 -0
- package/dist/cli/excess-args.d.ts +15 -0
- package/dist/cli/excess-args.js +51 -0
- package/dist/cli/excess-args.js.map +1 -0
- package/dist/cli/glyphs.d.ts +67 -7
- package/dist/cli/glyphs.js +202 -19
- package/dist/cli/glyphs.js.map +1 -1
- package/dist/cli/help.d.ts +54 -0
- package/dist/cli/help.js +355 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/main.js +36 -21
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/period.d.ts +39 -0
- package/dist/cli/period.js +141 -0
- package/dist/cli/period.js.map +1 -0
- package/dist/cli/read-driver.d.ts +83 -0
- package/dist/cli/read-driver.js +215 -0
- package/dist/cli/read-driver.js.map +1 -0
- package/dist/cli/render.d.ts +246 -0
- package/dist/cli/render.js +806 -0
- package/dist/cli/render.js.map +1 -0
- package/dist/cli/resolve-invocation.d.ts +116 -0
- package/dist/cli/resolve-invocation.js +261 -0
- package/dist/cli/resolve-invocation.js.map +1 -0
- package/dist/cli/shell-quote.d.ts +9 -0
- package/dist/cli/shell-quote.js +12 -0
- package/dist/cli/shell-quote.js.map +1 -0
- package/dist/cli/tag-filters.d.ts +59 -0
- package/dist/cli/tag-filters.js +57 -0
- package/dist/cli/tag-filters.js.map +1 -0
- package/dist/cli/verb-hint.d.ts +25 -0
- package/dist/cli/verb-hint.js +138 -0
- package/dist/cli/verb-hint.js.map +1 -0
- package/dist/cli/width.d.ts +135 -0
- package/dist/cli/width.js +313 -0
- package/dist/cli/width.js.map +1 -0
- package/dist/client.d.ts +146 -24
- package/dist/client.js +106 -16
- package/dist/client.js.map +1 -1
- package/dist/config.d.ts +11 -0
- package/dist/config.js +3 -0
- package/dist/config.js.map +1 -1
- package/dist/contracts.d.ts +136 -1
- package/dist/contracts.js +44 -1
- package/dist/contracts.js.map +1 -1
- package/dist/db/fingerprint.d.ts +12 -0
- package/dist/db/fingerprint.js +15 -1
- package/dist/db/fingerprint.js.map +1 -1
- package/dist/db/locate.js +1 -1
- package/dist/db/locate.js.map +1 -1
- package/dist/diagnose.d.ts +63 -0
- package/dist/diagnose.js +38 -1
- package/dist/diagnose.js.map +1 -1
- package/dist/index.d.ts +30 -4
- package/dist/index.js +35 -2
- package/dist/index.js.map +1 -1
- package/dist/mcp/server.d.ts +9 -1
- package/dist/mcp/server.js +850 -128
- package/dist/mcp/server.js.map +1 -1
- package/dist/model/entities.d.ts +40 -7
- package/dist/model/entities.js.map +1 -1
- package/dist/model/mappers.d.ts +7 -0
- package/dist/model/mappers.js +20 -3
- package/dist/model/mappers.js.map +1 -1
- package/dist/model/occurrences.d.ts +6 -1
- package/dist/model/occurrences.js +9 -5
- package/dist/model/occurrences.js.map +1 -1
- package/dist/model/recurrence.d.ts +17 -8
- package/dist/model/recurrence.js.map +1 -1
- package/dist/model/serialize.d.ts +28 -0
- package/dist/model/serialize.js +80 -0
- package/dist/model/serialize.js.map +1 -0
- package/dist/model/when-sugar.d.ts +47 -0
- package/dist/model/when-sugar.js +45 -0
- package/dist/model/when-sugar.js.map +1 -0
- package/dist/read/area-view.d.ts +8 -1
- package/dist/read/area-view.js +49 -13
- package/dist/read/area-view.js.map +1 -1
- package/dist/read/caps.d.ts +14 -0
- package/dist/read/caps.js +21 -0
- package/dist/read/caps.js.map +1 -0
- package/dist/read/filter-contract.d.ts +117 -0
- package/dist/read/filter-contract.js +78 -0
- package/dist/read/filter-contract.js.map +1 -0
- package/dist/read/log-boundary.d.ts +9 -4
- package/dist/read/log-boundary.js.map +1 -1
- package/dist/read/predicates.d.ts +61 -0
- package/dist/read/predicates.js +78 -0
- package/dist/read/predicates.js.map +1 -0
- package/dist/read/project-view.d.ts +12 -1
- package/dist/read/project-view.js +39 -8
- package/dist/read/project-view.js.map +1 -1
- package/dist/read/queries.d.ts +156 -8
- package/dist/read/queries.js +261 -38
- package/dist/read/queries.js.map +1 -1
- package/dist/read/search-rank.d.ts +36 -0
- package/dist/read/search-rank.js +31 -0
- package/dist/read/search-rank.js.map +1 -0
- package/dist/read/sections.d.ts +51 -0
- package/dist/read/sections.js +37 -0
- package/dist/read/sections.js.map +1 -0
- package/dist/read/show-target.d.ts +13 -4
- package/dist/read/show-target.js +11 -2
- package/dist/read/show-target.js.map +1 -1
- package/dist/read/sidebar-order.d.ts +19 -0
- package/dist/read/sidebar-order.js +93 -0
- package/dist/read/sidebar-order.js.map +1 -0
- package/dist/read/tags.d.ts +27 -3
- package/dist/read/tags.js +83 -12
- package/dist/read/tags.js.map +1 -1
- package/dist/read/truncation.d.ts +71 -0
- package/dist/read/truncation.js +217 -0
- package/dist/read/truncation.js.map +1 -0
- package/dist/read/views.d.ts +177 -19
- package/dist/read/views.js +390 -213
- package/dist/read/views.js.map +1 -1
- package/dist/surface-copy.d.ts +42 -0
- package/dist/surface-copy.js +55 -0
- package/dist/surface-copy.js.map +1 -1
- package/dist/sync-health.d.ts +78 -0
- package/dist/sync-health.js +312 -0
- package/dist/sync-health.js.map +1 -0
- package/dist/write/accessibility-probe.d.ts +12 -0
- package/dist/write/accessibility-probe.js +63 -0
- package/dist/write/accessibility-probe.js.map +1 -0
- package/dist/write/automation-probe.d.ts +7 -0
- package/dist/write/automation-probe.js +8 -1
- package/dist/write/automation-probe.js.map +1 -1
- package/dist/write/batch.js +4 -2
- package/dist/write/batch.js.map +1 -1
- package/dist/write/capabilities.d.ts +8 -0
- package/dist/write/capabilities.js +13 -5
- package/dist/write/capabilities.js.map +1 -1
- package/dist/write/commands.d.ts +2 -0
- package/dist/write/commands.js +562 -48
- package/dist/write/commands.js.map +1 -1
- package/dist/write/edit-checklist.js +3 -2
- package/dist/write/edit-checklist.js.map +1 -1
- package/dist/write/guards.d.ts +2 -7
- package/dist/write/guards.js +64 -6
- package/dist/write/guards.js.map +1 -1
- package/dist/write/heading.js +2 -0
- package/dist/write/heading.js.map +1 -1
- package/dist/write/lock.d.ts +40 -2
- package/dist/write/lock.js +91 -14
- package/dist/write/lock.js.map +1 -1
- package/dist/write/make-repeating-project.d.ts +4 -0
- package/dist/write/make-repeating-project.js +253 -0
- package/dist/write/make-repeating-project.js.map +1 -0
- package/dist/write/operations.d.ts +145 -1
- package/dist/write/operations.js +48 -0
- package/dist/write/operations.js.map +1 -1
- package/dist/write/pipeline.d.ts +19 -0
- package/dist/write/pipeline.js +109 -26
- package/dist/write/pipeline.js.map +1 -1
- package/dist/write/pre-state.d.ts +68 -3
- package/dist/write/pre-state.js +102 -3
- package/dist/write/pre-state.js.map +1 -1
- package/dist/write/reopen.js +3 -2
- package/dist/write/reopen.js.map +1 -1
- package/dist/write/reorder.js +27 -17
- package/dist/write/reorder.js.map +1 -1
- package/dist/write/repeat-rule.d.ts +22 -0
- package/dist/write/repeat-rule.js +258 -0
- package/dist/write/repeat-rule.js.map +1 -0
- package/dist/write/reversibility.js +49 -0
- package/dist/write/reversibility.js.map +1 -1
- package/dist/write/tag-refs.d.ts +47 -0
- package/dist/write/tag-refs.js +126 -0
- package/dist/write/tag-refs.js.map +1 -0
- package/dist/write/undo.d.ts +74 -5
- package/dist/write/undo.js +494 -80
- package/dist/write/undo.js.map +1 -1
- package/dist/write/vectors/registry.d.ts +17 -1
- package/dist/write/vectors/registry.js +18 -2
- package/dist/write/vectors/registry.js.map +1 -1
- package/dist/write/vectors/types.d.ts +119 -3
- package/dist/write/vectors/ui-certification.d.ts +48 -0
- package/dist/write/vectors/ui-certification.js +46 -0
- package/dist/write/vectors/ui-certification.js.map +1 -0
- package/dist/write/vectors/ui-drag.d.ts +188 -0
- package/dist/write/vectors/ui-drag.js +1095 -0
- package/dist/write/vectors/ui-drag.js.map +1 -0
- package/dist/write/vectors/ui-recipes.d.ts +70 -0
- package/dist/write/vectors/ui-recipes.js +558 -0
- package/dist/write/vectors/ui-recipes.js.map +1 -0
- package/dist/write/vectors/ui.d.ts +137 -0
- package/dist/write/vectors/ui.js +656 -0
- package/dist/write/vectors/ui.js.map +1 -0
- package/dist/write/verify/delta.d.ts +31 -3
- package/dist/write/verify/delta.js +22 -6
- package/dist/write/verify/delta.js.map +1 -1
- package/dist/write/verify/poller.js +1 -0
- package/dist/write/verify/poller.js.map +1 -1
- package/package.json +1 -1
- package/dist/cli/exit-codes.d.ts +0 -26
- package/dist/cli/exit-codes.js +0 -26
- package/dist/cli/exit-codes.js.map +0 -1
- package/dist/cli/output.d.ts +0 -42
- package/dist/cli/output.js +0 -16
- package/dist/cli/output.js.map +0 -1
package/dist/client.d.ts
CHANGED
|
@@ -4,14 +4,15 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { AuditWriter } from "./audit/log.ts";
|
|
6
6
|
import { type ThingsApiConfig } from "./config.ts";
|
|
7
|
-
import { type
|
|
7
|
+
import { type GroupedTruncation, type Truncation } from "./contracts.ts";
|
|
8
|
+
import { type FingerprintStatus, type SchemaStatus } from "./db/fingerprint.ts";
|
|
8
9
|
import type { AnyTask, Area, Project, Tag } from "./model/entities.ts";
|
|
9
10
|
import { type AreaView } from "./read/area-view.ts";
|
|
10
11
|
import { type ProjectView } from "./read/project-view.ts";
|
|
11
12
|
import { type Snapshot } from "./read/snapshot.ts";
|
|
12
13
|
import { type ShowTarget } from "./read/show-target.ts";
|
|
13
|
-
import { type ChangedItem, type ListItem, type LogbookFilter, type SearchOptions, type SidebarSection, type SomedayFilter, type TodayView, type UpcomingFilter, type ViewFilter } from "./read/views.ts";
|
|
14
|
-
import type { AreaAddParams, AreaUpdateParams, ContainerRef, ProjectCancelParams, OperationKind, OperationParamsMap, ProjectAddParams, ProjectCompleteParams, ProjectUpdateParams, ReorderParams, TagAddParams, TagUpdateParams, HeadingArchiveParams, HeadingUnarchiveParams, TodoAddLoggedParams, TodoAddParams, TodoBackdateParams, TodoMoveParams, TodoUpdateParams } from "./write/operations.ts";
|
|
14
|
+
import { type ChangedItem, type InboxFilter, type LiteSearchResult, type ListItem, type LogbookFilter, type SearchOptions, type SearchResultItem, type SidebarSection, type SomedayFilter, type TodayFilter, type TodayView, type UpcomingFilter, type ViewFilter } from "./read/views.ts";
|
|
15
|
+
import type { AreaAddParams, AreaUpdateParams, ContainerRef, ProjectCancelParams, OperationKind, OperationParamsMap, ProjectAddParams, ProjectCompleteParams, ProjectCreateRepeatingParams, ProjectUpdateParams, RepeatRuleParams, ReorderParams, TagAddParams, TagUpdateParams, HeadingArchiveParams, HeadingUnarchiveParams, TodoAddLoggedParams, TodoAddParams, TodoBackdateParams, TodoMoveParams, TodoUpdateParams } from "./write/operations.ts";
|
|
15
16
|
import { type MutationResult, type WriteOptions } from "./write/pipeline.ts";
|
|
16
17
|
import { type BatchItemResult, type BatchOp, type BatchOptions } from "./write/batch.ts";
|
|
17
18
|
import { type EnvironmentTracker } from "./write/environment.ts";
|
|
@@ -40,20 +41,93 @@ export interface OpenOptions {
|
|
|
40
41
|
environment?: EnvironmentTracker;
|
|
41
42
|
};
|
|
42
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Row cap for a bounded FLAT view (inbox/today/upcoming/logbook/trash/search/
|
|
46
|
+
* changes). Resolution follows resolveCap: omitted → the 50-row default,
|
|
47
|
+
* an explicit number caps at it, `null` or `all: true` returns every row.
|
|
48
|
+
*/
|
|
49
|
+
export interface ListBound {
|
|
50
|
+
limit?: number | null;
|
|
51
|
+
all?: boolean;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Per-block caps for a bounded GROUPED view (anytime/someday) or the composite
|
|
55
|
+
* area card. Each omitted cap falls back to the view's own default (anytime:
|
|
56
|
+
* 30 per area, 3 per project; someday: 30 per area, every active-project item;
|
|
57
|
+
* area card: 30 per section); `null` on a cap, or `all: true`, lifts it.
|
|
58
|
+
*/
|
|
59
|
+
export interface GroupedBound {
|
|
60
|
+
areaLimit?: number | null;
|
|
61
|
+
projectLimit?: number | null;
|
|
62
|
+
all?: boolean;
|
|
63
|
+
}
|
|
64
|
+
/** A bounded flat view: the shown rows plus the exact truncation counts. */
|
|
65
|
+
export interface BoundedList<T> {
|
|
66
|
+
items: T[];
|
|
67
|
+
truncation: Truncation;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* A bounded Today view: `view` is the shown split (capped in render order —
|
|
71
|
+
* Today, then This Evening) and `truncation` the exact counts, including the
|
|
72
|
+
* per-section (`today`/`evening`) breakdown a renderer needs to stay honest.
|
|
73
|
+
*/
|
|
74
|
+
export interface BoundedTodayView {
|
|
75
|
+
view: TodayView;
|
|
76
|
+
truncation: Truncation;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* A bounded sidebar catalogue (anytime/someday): `view` is the
|
|
80
|
+
* per-block-capped sections and `grouped` the per-block counts (identity-
|
|
81
|
+
* carrying, project blocks nested under their area/loose block).
|
|
82
|
+
*/
|
|
83
|
+
export interface BoundedSectionsView {
|
|
84
|
+
view: SidebarSection[];
|
|
85
|
+
grouped: GroupedTruncation;
|
|
86
|
+
}
|
|
87
|
+
/** A bounded composite area card: the per-section-capped view and the per-block counts. */
|
|
88
|
+
export interface BoundedAreaView {
|
|
89
|
+
view: AreaView;
|
|
90
|
+
grouped: GroupedTruncation;
|
|
91
|
+
}
|
|
43
92
|
export interface ThingsClient {
|
|
44
93
|
dbPath: string;
|
|
45
94
|
config: ThingsApiConfig;
|
|
46
95
|
fingerprint(): FingerprintStatus;
|
|
96
|
+
/**
|
|
97
|
+
* The read-path schema check: the cached fingerprint comparison reduced to a
|
|
98
|
+
* warn-or-not verdict (ok / drift / unknown-version) with detail. Reuses the
|
|
99
|
+
* SAME lazily-built fingerprint the write path gates on — computed at most
|
|
100
|
+
* once per client, so it costs nothing after the first read.
|
|
101
|
+
*/
|
|
102
|
+
schemaStatus(): SchemaStatus;
|
|
47
103
|
read: {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
104
|
+
/**
|
|
105
|
+
* The Today list (Today + This Evening split) with the sidebar badge,
|
|
106
|
+
* bounded to `limit` rows (default 50) counted in render order — Today
|
|
107
|
+
* first, then This Evening. `all`/`limit: null` returns every row; the
|
|
108
|
+
* `truncation` metadata carries the per-section (`today`/`evening`) counts.
|
|
109
|
+
*/
|
|
110
|
+
today(options?: TodayFilter & ListBound): BoundedTodayView;
|
|
111
|
+
/** Inbox captures, bounded (default 50). */
|
|
112
|
+
inbox(options?: InboxFilter & ListBound): BoundedList<ListItem>;
|
|
113
|
+
/**
|
|
114
|
+
* Anytime catalogue: every area header and project row is always present;
|
|
115
|
+
* `areaLimit` (default 30) caps each area/loose block, `projectLimit`
|
|
116
|
+
* (default 3) each project block. `all` lifts both.
|
|
117
|
+
*/
|
|
118
|
+
anytime(options?: ViewFilter & GroupedBound): BoundedSectionsView;
|
|
119
|
+
/** Future-scheduled items in date order, bounded (default 50). */
|
|
120
|
+
upcoming(options?: UpcomingFilter & ListBound): BoundedList<ListItem>;
|
|
121
|
+
/**
|
|
122
|
+
* Someday catalogue: `areaLimit` (default 30) caps each group; with
|
|
123
|
+
* `activeProjectItems`, `projectLimit` (default: every item) caps each
|
|
124
|
+
* active project's trailing child list. `all` lifts both.
|
|
125
|
+
*/
|
|
126
|
+
someday(options?: SomedayFilter & GroupedBound): BoundedSectionsView;
|
|
127
|
+
/** Logbook entries (most recent first), bounded (default 50). */
|
|
128
|
+
logbook(options?: Omit<LogbookFilter, "limit"> & ListBound): BoundedList<ListItem>;
|
|
129
|
+
/** Trashed items (most recently modified first), bounded (default 50). */
|
|
130
|
+
trash(options?: ListBound): BoundedList<ListItem>;
|
|
57
131
|
/**
|
|
58
132
|
* Projects in sidebar order. LATER (someday + future-scheduled) projects
|
|
59
133
|
* are excluded by default — `later: true` appends them after the active
|
|
@@ -62,19 +136,45 @@ export interface ThingsClient {
|
|
|
62
136
|
projects(options?: {
|
|
63
137
|
areaUuid?: string;
|
|
64
138
|
later?: boolean;
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
139
|
+
overdue?: boolean;
|
|
140
|
+
} & ViewFilter): Project[];
|
|
141
|
+
/**
|
|
142
|
+
* Composite project view. Targets by uuid, unique name, or uuid prefix.
|
|
143
|
+
* `overdue: true` keeps only child to-dos whose own deadline is overdue
|
|
144
|
+
* (open, before today); the tag filters (`tags`/`untagged`) keep only the
|
|
145
|
+
* child to-dos carrying the tag DIRECTLY (the container semantics — tags
|
|
146
|
+
* inherited from this project are ignored). Any content scope collapses
|
|
147
|
+
* headings left with no surviving child.
|
|
148
|
+
*/
|
|
149
|
+
projectView(ref: string, options?: ViewFilter): ProjectView;
|
|
150
|
+
/**
|
|
151
|
+
* Composite area view: direct to-dos, projects in sidebar order, later,
|
|
152
|
+
* logged. `overdue: true` keeps only the loose to-dos AND child projects
|
|
153
|
+
* whose OWN deadline is overdue; the tag filters keep only the rows
|
|
154
|
+
* matching by their own tags — no descent into project contents. Bounded
|
|
155
|
+
* per section: `projectLimit`/`areaLimit` (default 30 each) cap the ACTIVE
|
|
156
|
+
* project-rows and direct-to-dos sections (scheduled/someday project rows
|
|
157
|
+
* always survive, routed to the card's later sections); `all` lifts both.
|
|
158
|
+
* The `grouped` metadata carries the per-section counts.
|
|
159
|
+
*/
|
|
160
|
+
areaView(ref: string, options?: ViewFilter & GroupedBound): BoundedAreaView;
|
|
70
161
|
areas(): Area[];
|
|
71
162
|
tags(): Tag[];
|
|
72
|
-
search
|
|
73
|
-
|
|
163
|
+
/** Title/notes substring search, ranked, bounded (default 50). */
|
|
164
|
+
search(query: string, options?: SearchOptions): BoundedList<SearchResultItem>;
|
|
165
|
+
/**
|
|
166
|
+
* Did-you-mean fallback: case-insensitive title-only substring match over
|
|
167
|
+
* areas/projects/to-dos (open + untrashed), ordered and capped. `type`
|
|
168
|
+
* scopes to one class.
|
|
169
|
+
*/
|
|
170
|
+
liteTitleSearch(query: string, options?: {
|
|
171
|
+
type?: "to-do" | "project" | "area";
|
|
172
|
+
limit?: number;
|
|
173
|
+
}): LiteSearchResult;
|
|
174
|
+
/** Rows created/modified since a moment — incl. trashed/logged/templates — bounded (default 50). */
|
|
74
175
|
changes(options: {
|
|
75
176
|
since: Date;
|
|
76
|
-
|
|
77
|
-
}): ChangedItem[];
|
|
177
|
+
} & ListBound): BoundedList<ChangedItem>;
|
|
78
178
|
byUuid(uuid: string): AnyTask | null;
|
|
79
179
|
/**
|
|
80
180
|
* Classify a loose reference (uuid, >=6-char prefix, share link, or
|
|
@@ -167,6 +267,24 @@ export interface ThingsClient {
|
|
|
167
267
|
/** Duplicate a project INCLUDING its children; the copy's uuid is on the result. */
|
|
168
268
|
duplicateProject(uuid: string, options?: WriteOptions): Promise<MutationResult>;
|
|
169
269
|
deleteProject(uuid: string, options?: WriteOptions): Promise<MutationResult>;
|
|
270
|
+
/**
|
|
271
|
+
* Turn an existing project into a repeating series. Drives the local Things
|
|
272
|
+
* app through the Accessibility API (two-key gated: `ui.enabled` config +
|
|
273
|
+
* `dangerouslyDriveGui`). This REPLACES the project with a new repeating
|
|
274
|
+
* template (its area is kept, its schedule is normalized to Someday); the
|
|
275
|
+
* original's identity is gone and it cannot be undone. The new template's
|
|
276
|
+
* uuid is on the result. An area-less Anytime project is moved to Someday
|
|
277
|
+
* first — a cleanup-free intermediate step surfaced in the plan.
|
|
278
|
+
*/
|
|
279
|
+
makeRepeatingProject(uuid: string, rule: Omit<RepeatRuleParams, "uuid">, options?: WriteOptions): Promise<MutationResult>;
|
|
280
|
+
/**
|
|
281
|
+
* Create a project and, in the same call, turn it into a repeating series.
|
|
282
|
+
* TWO operations: the project is created first (and persists even if the
|
|
283
|
+
* make-repeating step refuses); then it is promoted (which drives the GUI —
|
|
284
|
+
* two-key gated, same as makeRepeatingProject). Give an `area` to place it,
|
|
285
|
+
* or omit it to create in Someday. The new template's uuid is on the result.
|
|
286
|
+
*/
|
|
287
|
+
createRepeatingProject(params: ProjectCreateRepeatingParams, options?: WriteOptions): Promise<MutationResult>;
|
|
170
288
|
/** Replace a project's full tag set (an empty list clears all tags). */
|
|
171
289
|
setProjectTags(uuid: string, tags: string[], options?: WriteOptions): Promise<MutationResult>;
|
|
172
290
|
/** Merge: current project tags + new ones, then replace. */
|
|
@@ -189,9 +307,13 @@ export interface ThingsClient {
|
|
|
189
307
|
*/
|
|
190
308
|
batch(ops: BatchOp[], options?: BatchOptions, onResult?: (result: BatchItemResult) => void): Promise<BatchItemResult[]>;
|
|
191
309
|
/**
|
|
192
|
-
* Undo
|
|
193
|
-
*
|
|
194
|
-
*
|
|
310
|
+
* Undo changes made through this client, newest first, by applying the
|
|
311
|
+
* inverse change. Selection: `last` trailing changes (default 1), narrowed
|
|
312
|
+
* to author `by` (exact actor, or `*`/undefined for all), or `txn` for one
|
|
313
|
+
* exact change by its `undoToken`. Irreversible changes are reported as
|
|
314
|
+
* such, never guessed at. An inverse is refused when the item changed
|
|
315
|
+
* outside things-api since (its container, status, schedule, trashed state,
|
|
316
|
+
* or a content field moved); `acknowledgeOutOfBandChanges` overwrites anyway.
|
|
195
317
|
*/
|
|
196
318
|
undo(options?: UndoOptions, onItem?: (item: UndoItemResult) => void): Promise<UndoItemResult[]>;
|
|
197
319
|
};
|
package/dist/client.js
CHANGED
|
@@ -3,7 +3,7 @@ import { loadConfig } from "./config.js";
|
|
|
3
3
|
import { PKG_VERSION } from "./contracts.js";
|
|
4
4
|
import { BASELINES } from "./db/baselines/index.js";
|
|
5
5
|
import { openConnection } from "./db/connection.js";
|
|
6
|
-
import { compareToBaseline, observeSchema } from "./db/fingerprint.js";
|
|
6
|
+
import { compareToBaseline, observeSchema, toSchemaStatus, } from "./db/fingerprint.js";
|
|
7
7
|
import { locateThingsDb } from "./db/locate.js";
|
|
8
8
|
import { auditDir, mutationLockPath } from "./paths.js";
|
|
9
9
|
import { byUuid } from "./read/detail.js";
|
|
@@ -13,17 +13,44 @@ import { projectView } from "./read/project-view.js";
|
|
|
13
13
|
import { snapshotView } from "./read/snapshot.js";
|
|
14
14
|
import { classifyShowTarget } from "./read/show-target.js";
|
|
15
15
|
import { areasView, tagsView } from "./read/tags.js";
|
|
16
|
-
import { anytimeView, changesView, inboxView, logbookView, projectsView, searchView, somedayView, todayView, trashView, upcomingView, } from "./read/views.js";
|
|
16
|
+
import { anytimeView, changesView, inboxView, liteTitleSearch, logbookView, projectsView, searchView, somedayView, todayView, trashView, upcomingView, } from "./read/views.js";
|
|
17
|
+
import { capAreaSections, previewSections, previewSomedaySections, truncateList, truncateToday, } from "./read/truncation.js";
|
|
18
|
+
import { resolveCap } from "./read/caps.js";
|
|
19
|
+
import { AREA_PREVIEW_LIMIT, DEFAULT_LIST_LIMIT, PROJECT_PREVIEW_LIMIT } from "./surface-copy.js";
|
|
17
20
|
import { readAuthToken, runMutation, } from "./write/pipeline.js";
|
|
18
21
|
import { runBatch } from "./write/batch.js";
|
|
22
|
+
import { planTagCreation } from "./write/tag-refs.js";
|
|
19
23
|
import { createEnvironmentTracker } from "./write/environment.js";
|
|
20
24
|
import { runHeadingArchive, runHeadingUnarchive, } from "./write/heading.js";
|
|
21
25
|
import { runClearReminder } from "./write/clear-reminder.js";
|
|
22
26
|
import { runEditChecklist } from "./write/edit-checklist.js";
|
|
27
|
+
import { runCreateRepeatingProject, runMakeRepeatingProject, } from "./write/make-repeating-project.js";
|
|
23
28
|
import { runReorder } from "./write/reorder.js";
|
|
24
29
|
import { runUndo } from "./write/undo.js";
|
|
25
30
|
import { runProjectReopen, } from "./write/reopen.js";
|
|
26
31
|
import { defaultVectors } from "./write/vectors/registry.js";
|
|
32
|
+
import { createUiDriveAux } from "./write/vectors/ui-drag.js";
|
|
33
|
+
/** Resolve a flat-view row cap (omitted → default 50; null or all → unbounded). */
|
|
34
|
+
function listCap(bound) {
|
|
35
|
+
if (bound?.limit === null)
|
|
36
|
+
return null;
|
|
37
|
+
const decision = resolveCap(bound?.limit, bound?.all, DEFAULT_LIST_LIMIT);
|
|
38
|
+
return decision === "conflict" ? null : decision;
|
|
39
|
+
}
|
|
40
|
+
/** Resolve per-block caps (each omitted → its view default; null on a cap, or all, lifts it). */
|
|
41
|
+
function groupedCaps(bound, areaDefault, projectDefault) {
|
|
42
|
+
const one = (value, dflt) => {
|
|
43
|
+
if (bound?.all === true)
|
|
44
|
+
return null;
|
|
45
|
+
if (value === null)
|
|
46
|
+
return null;
|
|
47
|
+
return value ?? dflt;
|
|
48
|
+
};
|
|
49
|
+
return {
|
|
50
|
+
area: one(bound?.areaLimit, areaDefault),
|
|
51
|
+
project: one(bound?.projectLimit, projectDefault),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
27
54
|
export { applyChecklistEdit } from "./write/checklist.js";
|
|
28
55
|
export function openThings(options = {}) {
|
|
29
56
|
const located = locateThingsDb(options.dbPath ? { dbPath: options.dbPath } : undefined);
|
|
@@ -45,7 +72,7 @@ export function openThings(options = {}) {
|
|
|
45
72
|
});
|
|
46
73
|
const writeDeps = {
|
|
47
74
|
db: conn.db,
|
|
48
|
-
vectors: options.vectors ?? defaultVectors(),
|
|
75
|
+
vectors: options.vectors ?? defaultVectors(config, createUiDriveAux(conn.db)),
|
|
49
76
|
config,
|
|
50
77
|
audit,
|
|
51
78
|
fingerprint,
|
|
@@ -65,26 +92,87 @@ export function openThings(options = {}) {
|
|
|
65
92
|
}),
|
|
66
93
|
environment: options.writeOverrides?.environment ?? createEnvironmentTracker(PKG_VERSION, env),
|
|
67
94
|
};
|
|
68
|
-
const run = (op, params, writeOptions) =>
|
|
95
|
+
const run = async (op, params, writeOptions) => {
|
|
96
|
+
// --create-tags: create any missing tag named in this op's tags (clean
|
|
97
|
+
// `make new tag` path, mkdir-p for parent/child) before applying. Skipped
|
|
98
|
+
// on a dry run (no side effects). A failed creation leg short-circuits and
|
|
99
|
+
// is returned as this op's result.
|
|
100
|
+
const tags = params.tags;
|
|
101
|
+
if (writeOptions?.createTags === true && writeOptions.dryRun !== true && Array.isArray(tags)) {
|
|
102
|
+
const legOptions = { ...writeOptions, createTags: false };
|
|
103
|
+
for (const step of planTagCreation(conn.db, tags)) {
|
|
104
|
+
// parents must land before children (mkdir-p ordering)
|
|
105
|
+
const legResult = await runMutation(writeDeps, "tag.add", step.parent === undefined
|
|
106
|
+
? { title: step.title }
|
|
107
|
+
: { title: step.title, parent: step.parent }, legOptions);
|
|
108
|
+
if (legResult.kind !== "ok")
|
|
109
|
+
return legResult;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return runMutation(writeDeps, op, params, writeOptions ?? {});
|
|
113
|
+
};
|
|
69
114
|
return {
|
|
70
115
|
dbPath: located.path,
|
|
71
116
|
config,
|
|
72
117
|
fingerprint,
|
|
118
|
+
schemaStatus: () => toSchemaStatus(fingerprint()),
|
|
73
119
|
read: {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
120
|
+
// The list views own their bounding: run the full filtered query, then
|
|
121
|
+
// truncate to the resolved cap (default 50 / per-block 30·3) — the exact
|
|
122
|
+
// move the CLI/MCP surfaces used to make. The bounded shape carries the
|
|
123
|
+
// capped view plus the truncation/grouped metadata (the human renderers
|
|
124
|
+
// derive their hidden-count hints from that metadata alone).
|
|
125
|
+
today: (o) => {
|
|
126
|
+
const { data, truncation } = truncateToday(todayView(conn.db, now(), o), listCap(o));
|
|
127
|
+
return { view: data, truncation };
|
|
128
|
+
},
|
|
129
|
+
inbox: (o) => {
|
|
130
|
+
const { data, truncation } = truncateList(inboxView(conn.db, now(), o), listCap(o));
|
|
131
|
+
return { items: data, truncation };
|
|
132
|
+
},
|
|
133
|
+
anytime: (o) => {
|
|
134
|
+
const { data, grouped } = previewSections(anytimeView(conn.db, now(), o), groupedCaps(o, AREA_PREVIEW_LIMIT, PROJECT_PREVIEW_LIMIT));
|
|
135
|
+
return { view: data, grouped };
|
|
136
|
+
},
|
|
137
|
+
upcoming: (o) => {
|
|
138
|
+
const { data, truncation } = truncateList(upcomingView(conn.db, now(), o), listCap(o));
|
|
139
|
+
return { items: data, truncation };
|
|
140
|
+
},
|
|
141
|
+
someday: (o) => {
|
|
142
|
+
const { data, grouped } = previewSomedaySections(somedayView(conn.db, now(), o), groupedCaps(o, AREA_PREVIEW_LIMIT, null));
|
|
143
|
+
return { view: data, grouped };
|
|
144
|
+
},
|
|
145
|
+
logbook: (o) => {
|
|
146
|
+
// The bound is the truncation cap; the underlying query stays unbounded
|
|
147
|
+
// (limit: null) so the exact total behind the cut is honest.
|
|
148
|
+
const { limit: _limit, all: _all, ...filter } = o ?? {};
|
|
149
|
+
const { data, truncation } = truncateList(logbookView(conn.db, now(), { ...filter, limit: null }), listCap(o));
|
|
150
|
+
return { items: data, truncation };
|
|
151
|
+
},
|
|
152
|
+
trash: (o) => {
|
|
153
|
+
const { data, truncation } = truncateList(trashView(conn.db, now(), { limit: null }), listCap(o));
|
|
154
|
+
return { items: data, truncation };
|
|
155
|
+
},
|
|
156
|
+
// Thread the injected clock so `--overdue`'s (and later's) today boundary
|
|
157
|
+
// rides the same clock as every other view — never a hardcoded date.
|
|
158
|
+
projects: (o) => projectsView(conn.db, { ...o, now: now() }),
|
|
159
|
+
projectView: (ref, o) => projectView(conn.db, resolveProjectUuid(conn.db, ref, { trashed: true }), now(), o ?? {}),
|
|
160
|
+
areaView: (ref, o) => {
|
|
161
|
+
const { data, grouped } = capAreaSections(areaView(conn.db, ref, now(), o ?? {}), groupedCaps(o, AREA_PREVIEW_LIMIT, AREA_PREVIEW_LIMIT), now());
|
|
162
|
+
return { view: data, grouped };
|
|
163
|
+
},
|
|
84
164
|
areas: () => areasView(conn.db),
|
|
85
165
|
tags: () => tagsView(conn.db),
|
|
86
|
-
search: (query, o) =>
|
|
87
|
-
|
|
166
|
+
search: (query, o) => {
|
|
167
|
+
const { limit: _limit, ...rest } = o ?? {};
|
|
168
|
+
const { data, truncation } = truncateList(searchView(conn.db, query, { ...rest, limit: null }, now()), listCap(o));
|
|
169
|
+
return { items: data, truncation };
|
|
170
|
+
},
|
|
171
|
+
liteTitleSearch: (query, o) => liteTitleSearch(conn.db, query, o, now()),
|
|
172
|
+
changes: (o) => {
|
|
173
|
+
const { data, truncation } = truncateList(changesView(conn.db, now(), { since: o.since, limit: null }), listCap(o));
|
|
174
|
+
return { items: data, truncation };
|
|
175
|
+
},
|
|
88
176
|
showTarget: (ref) => classifyShowTarget(conn.db, ref),
|
|
89
177
|
byUuid: (uuid) => {
|
|
90
178
|
// Prefix-friendly: unknown refs keep the null contract; ambiguity throws.
|
|
@@ -137,6 +225,8 @@ export function openThings(options = {}) {
|
|
|
137
225
|
restoreProject: (uuid, o) => run("project.restore", { uuid }, o),
|
|
138
226
|
duplicateProject: (uuid, o) => run("project.duplicate", { uuid }, o),
|
|
139
227
|
deleteProject: (uuid, o) => run("project.delete", { uuid }, o),
|
|
228
|
+
makeRepeatingProject: (uuid, rule, o) => runMakeRepeatingProject(writeDeps, { uuid, ...rule }, o ?? {}),
|
|
229
|
+
createRepeatingProject: (params, o) => runCreateRepeatingProject(writeDeps, params, o ?? {}),
|
|
140
230
|
setProjectTags: (uuid, tags, o) => run("project.set-tags", { uuid, tags }, o),
|
|
141
231
|
addProjectTags(uuid, tags, o) {
|
|
142
232
|
const current = byUuid(conn.db, uuid);
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -15,6 +15,16 @@ export interface ThingsApiConfig {
|
|
|
15
15
|
* sdef reorder command). Guarded further by the pipeline's sdef canary.
|
|
16
16
|
*/
|
|
17
17
|
allowExperimental: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* The Accessibility GUI ("ui") write vector. When disabled the vector does
|
|
20
|
+
* not exist on this machine: its GUI-only operations report unsupported.
|
|
21
|
+
* Enabling it is the FIRST of two keys — every ui-vector call still needs a
|
|
22
|
+
* per-call `dangerouslyDriveGui` acknowledgement. Intended for a dedicated
|
|
23
|
+
* always-on Mac ("closet mini") kept unlocked; see docs/design/ui-vector.md.
|
|
24
|
+
*/
|
|
25
|
+
ui: {
|
|
26
|
+
enabled: boolean;
|
|
27
|
+
};
|
|
18
28
|
host: string;
|
|
19
29
|
}
|
|
20
30
|
interface ConfigFile {
|
|
@@ -24,6 +34,7 @@ interface ConfigFile {
|
|
|
24
34
|
auditEnabled?: boolean;
|
|
25
35
|
acceptedFingerprint?: string;
|
|
26
36
|
allowExperimental?: boolean;
|
|
37
|
+
uiEnabled?: boolean;
|
|
27
38
|
}
|
|
28
39
|
export declare function loadConfig(env?: NodeJS.ProcessEnv): ThingsApiConfig;
|
|
29
40
|
/** Persist one config key (CLI `things config set`). */
|
package/dist/config.js
CHANGED
|
@@ -48,6 +48,9 @@ export function loadConfig(env = process.env) {
|
|
|
48
48
|
auditEnabled: env["THINGS_API_AUDIT"] === "off" ? false : (file.auditEnabled ?? true),
|
|
49
49
|
acceptedFingerprint: file.acceptedFingerprint ?? null,
|
|
50
50
|
allowExperimental: env["THINGS_API_ALLOW_EXPERIMENTAL"] === "true" || file.allowExperimental === true,
|
|
51
|
+
ui: {
|
|
52
|
+
enabled: env["THINGS_API_UI_ENABLED"] === "true" || file.uiEnabled === true,
|
|
53
|
+
},
|
|
51
54
|
host: hostname(),
|
|
52
55
|
};
|
|
53
56
|
}
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|