things-api 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (192) hide show
  1. package/README.md +16 -5
  2. package/dist/audit/schema.d.ts +7 -0
  3. package/dist/audit/schema.js.map +1 -1
  4. package/dist/cli/commands/area.d.ts +18 -11
  5. package/dist/cli/commands/area.js +55 -67
  6. package/dist/cli/commands/area.js.map +1 -1
  7. package/dist/cli/commands/doctor.d.ts +1 -2
  8. package/dist/cli/commands/doctor.js +11 -1
  9. package/dist/cli/commands/doctor.js.map +1 -1
  10. package/dist/cli/commands/install-skill.d.ts +19 -4
  11. package/dist/cli/commands/install-skill.js +101 -52
  12. package/dist/cli/commands/install-skill.js.map +1 -1
  13. package/dist/cli/commands/mcp.js +9 -0
  14. package/dist/cli/commands/mcp.js.map +1 -1
  15. package/dist/cli/commands/project.d.ts +1 -0
  16. package/dist/cli/commands/project.js +20 -28
  17. package/dist/cli/commands/project.js.map +1 -1
  18. package/dist/cli/commands/reads.js +100 -28
  19. package/dist/cli/commands/reads.js.map +1 -1
  20. package/dist/cli/commands/show.js +32 -8
  21. package/dist/cli/commands/show.js.map +1 -1
  22. package/dist/cli/commands/todo.js +1 -1
  23. package/dist/cli/commands/todo.js.map +1 -1
  24. package/dist/cli/commands/writes.js +769 -143
  25. package/dist/cli/commands/writes.js.map +1 -1
  26. package/dist/cli/did-you-mean.d.ts +14 -3
  27. package/dist/cli/did-you-mean.js +26 -3
  28. package/dist/cli/did-you-mean.js.map +1 -1
  29. package/dist/cli/glyphs.d.ts +16 -2
  30. package/dist/cli/glyphs.js +60 -12
  31. package/dist/cli/glyphs.js.map +1 -1
  32. package/dist/cli/help.js +67 -12
  33. package/dist/cli/help.js.map +1 -1
  34. package/dist/cli/main.js +1 -1
  35. package/dist/cli/main.js.map +1 -1
  36. package/dist/cli/move-hint.d.ts +3 -2
  37. package/dist/cli/move-hint.js +2 -2
  38. package/dist/cli/move-hint.js.map +1 -1
  39. package/dist/cli/read-driver.d.ts +43 -5
  40. package/dist/cli/read-driver.js +81 -15
  41. package/dist/cli/read-driver.js.map +1 -1
  42. package/dist/cli/render.d.ts +19 -8
  43. package/dist/cli/render.js +59 -25
  44. package/dist/cli/render.js.map +1 -1
  45. package/dist/cli/resolve-invocation.d.ts +2 -2
  46. package/dist/cli/resolve-invocation.js +3 -3
  47. package/dist/cli/resolve-invocation.js.map +1 -1
  48. package/dist/cli/skill-check.d.ts +12 -6
  49. package/dist/cli/skill-check.js +31 -14
  50. package/dist/cli/skill-check.js.map +1 -1
  51. package/dist/cli/skill.d.ts +8 -0
  52. package/dist/cli/skill.js +10 -0
  53. package/dist/cli/skill.js.map +1 -1
  54. package/dist/cli/verb-hint.js +1 -1
  55. package/dist/cli/verb-hint.js.map +1 -1
  56. package/dist/client.d.ts +140 -19
  57. package/dist/client.js +253 -38
  58. package/dist/client.js.map +1 -1
  59. package/dist/config.d.ts +66 -2
  60. package/dist/config.js +120 -12
  61. package/dist/config.js.map +1 -1
  62. package/dist/contracts.d.ts +176 -28
  63. package/dist/contracts.js +22 -1
  64. package/dist/contracts.js.map +1 -1
  65. package/dist/diagnose.d.ts +34 -2
  66. package/dist/diagnose.js +36 -1
  67. package/dist/diagnose.js.map +1 -1
  68. package/dist/index.d.ts +19 -8
  69. package/dist/index.js +19 -3
  70. package/dist/index.js.map +1 -1
  71. package/dist/mcp/server.d.ts +9 -0
  72. package/dist/mcp/server.js +733 -304
  73. package/dist/mcp/server.js.map +1 -1
  74. package/dist/model/entities.d.ts +46 -3
  75. package/dist/model/entities.js.map +1 -1
  76. package/dist/model/mappers.d.ts +2 -0
  77. package/dist/model/mappers.js +41 -2
  78. package/dist/model/mappers.js.map +1 -1
  79. package/dist/model/recurrence.d.ts +8 -1
  80. package/dist/model/recurrence.js.map +1 -1
  81. package/dist/read/area-filter.d.ts +76 -0
  82. package/dist/read/area-filter.js +59 -0
  83. package/dist/read/area-filter.js.map +1 -0
  84. package/dist/read/area-view.d.ts +11 -11
  85. package/dist/read/area-view.js +50 -28
  86. package/dist/read/area-view.js.map +1 -1
  87. package/dist/read/detail.js +15 -8
  88. package/dist/read/detail.js.map +1 -1
  89. package/dist/read/predicates.d.ts +18 -0
  90. package/dist/read/predicates.js +19 -0
  91. package/dist/read/predicates.js.map +1 -1
  92. package/dist/read/project-view.d.ts +31 -15
  93. package/dist/read/project-view.js +72 -39
  94. package/dist/read/project-view.js.map +1 -1
  95. package/dist/read/pseudo-area.d.ts +29 -0
  96. package/dist/read/pseudo-area.js +27 -0
  97. package/dist/read/pseudo-area.js.map +1 -0
  98. package/dist/read/queries.d.ts +105 -18
  99. package/dist/read/queries.js +185 -30
  100. package/dist/read/queries.js.map +1 -1
  101. package/dist/read/scope.d.ts +126 -0
  102. package/dist/read/scope.js +162 -0
  103. package/dist/read/scope.js.map +1 -0
  104. package/dist/read/search-rank.d.ts +2 -5
  105. package/dist/read/shape.d.ts +162 -0
  106. package/dist/read/shape.js +686 -0
  107. package/dist/read/shape.js.map +1 -0
  108. package/dist/read/show-target.d.ts +9 -1
  109. package/dist/read/show-target.js +45 -4
  110. package/dist/read/show-target.js.map +1 -1
  111. package/dist/read/stage.d.ts +199 -0
  112. package/dist/read/stage.js +125 -0
  113. package/dist/read/stage.js.map +1 -0
  114. package/dist/read/truncation.d.ts +7 -5
  115. package/dist/read/truncation.js +33 -8
  116. package/dist/read/truncation.js.map +1 -1
  117. package/dist/read/views.d.ts +49 -9
  118. package/dist/read/views.js +193 -40
  119. package/dist/read/views.js.map +1 -1
  120. package/dist/surface-copy.d.ts +9 -0
  121. package/dist/surface-copy.js +9 -0
  122. package/dist/surface-copy.js.map +1 -1
  123. package/dist/write/batch.d.ts +49 -10
  124. package/dist/write/batch.js +423 -71
  125. package/dist/write/batch.js.map +1 -1
  126. package/dist/write/commands.js +266 -55
  127. package/dist/write/commands.js.map +1 -1
  128. package/dist/write/guards.d.ts +1 -1
  129. package/dist/write/guards.js +71 -10
  130. package/dist/write/guards.js.map +1 -1
  131. package/dist/write/heading.d.ts +10 -1
  132. package/dist/write/heading.js +35 -5
  133. package/dist/write/heading.js.map +1 -1
  134. package/dist/write/make-repeating-project.d.ts +2 -2
  135. package/dist/write/make-repeating-project.js +9 -9
  136. package/dist/write/make-repeating-project.js.map +1 -1
  137. package/dist/write/move.d.ts +130 -0
  138. package/dist/write/move.js +1533 -0
  139. package/dist/write/move.js.map +1 -0
  140. package/dist/write/operations.d.ts +105 -19
  141. package/dist/write/operations.js +56 -7
  142. package/dist/write/operations.js.map +1 -1
  143. package/dist/write/opid.d.ts +31 -0
  144. package/dist/write/opid.js +30 -0
  145. package/dist/write/opid.js.map +1 -0
  146. package/dist/write/pipeline.d.ts +70 -3
  147. package/dist/write/pipeline.js +198 -33
  148. package/dist/write/pipeline.js.map +1 -1
  149. package/dist/write/pre-state.d.ts +162 -8
  150. package/dist/write/pre-state.js +385 -20
  151. package/dist/write/pre-state.js.map +1 -1
  152. package/dist/write/reorder.d.ts +23 -3
  153. package/dist/write/reorder.js +1871 -85
  154. package/dist/write/reorder.js.map +1 -1
  155. package/dist/write/reversibility.js +19 -7
  156. package/dist/write/reversibility.js.map +1 -1
  157. package/dist/write/scope-guard.d.ts +31 -0
  158. package/dist/write/scope-guard.js +162 -0
  159. package/dist/write/scope-guard.js.map +1 -0
  160. package/dist/write/undo.js +120 -13
  161. package/dist/write/undo.js.map +1 -1
  162. package/dist/write/vectors/applescript.js +16 -7
  163. package/dist/write/vectors/applescript.js.map +1 -1
  164. package/dist/write/vectors/shortcuts.js +1 -1
  165. package/dist/write/vectors/shortcuts.js.map +1 -1
  166. package/dist/write/vectors/simulator.js +83 -27
  167. package/dist/write/vectors/simulator.js.map +1 -1
  168. package/dist/write/vectors/types.d.ts +11 -0
  169. package/dist/write/vectors/ui-certification.d.ts +3 -3
  170. package/dist/write/vectors/ui-certification.js +41 -5
  171. package/dist/write/vectors/ui-certification.js.map +1 -1
  172. package/dist/write/vectors/ui-drag.d.ts +21 -1
  173. package/dist/write/vectors/ui-drag.js +138 -27
  174. package/dist/write/vectors/ui-drag.js.map +1 -1
  175. package/dist/write/vectors/ui-recipes.d.ts +21 -1
  176. package/dist/write/vectors/ui-recipes.js +166 -7
  177. package/dist/write/vectors/ui-recipes.js.map +1 -1
  178. package/dist/write/vectors/ui.d.ts +25 -1
  179. package/dist/write/vectors/ui.js +142 -33
  180. package/dist/write/vectors/ui.js.map +1 -1
  181. package/dist/write/verify/delta.d.ts +17 -1
  182. package/dist/write/verify/delta.js +106 -29
  183. package/dist/write/verify/delta.js.map +1 -1
  184. package/package.json +7 -1
  185. package/schema/envelope.schema.json +383 -0
  186. package/skills/things-cli/SKILL.md +34 -17
  187. package/skills/things-cli/references/banner.md +35 -0
  188. package/skills/things-cli/references/contracts.md +30 -9
  189. package/skills/things-cli/references/errors.md +49 -0
  190. package/skills/things-cli/references/gui.md +1 -1
  191. package/skills/things-cli/references/model.md +15 -6
  192. package/skills/things-cli/references/ordering.md +71 -0
@@ -2,7 +2,10 @@
2
2
  * List views mirroring the Things sidebar. Predicates derived from the
3
3
  * validated research plus live probes (docs/atlas/schema-v26.md):
4
4
  *
5
- * - inbox: start=0
5
+ * - inbox: start=0, MINUS due-deadline-pulled undated rows (BANNER1 Q1b:
6
+ * a due/overdue unsuppressed deadline removes an undated Inbox row
7
+ * from the GUI Inbox list and files it under Today/Anytime, even
8
+ * while raw `start` still reads 0 — DEADLINE_PULLED, predicates.ts)
6
9
  * - today: (startDate <= today AND start IN (1, 2)) OR a DUE DEADLINE
7
10
  * with no startDate — a due/overdue deadline pulls an item into
8
11
  * Today even from the Inbox; a FUTURE startDate suppresses it
@@ -35,7 +38,11 @@
35
38
  * - anytime: ALL active items — unscheduled PLUS Today members (the UI
36
39
  * renders Today members with a star; live-verified via screenshot
37
40
  * 2026-07-02: starred = in Today, unstarred = unscheduled).
38
- * Star equivalence: startDate != NULL && <= today.
41
+ * Star equivalence: startDate != NULL && <= today. Anytime is a
42
+ * SUPERSET of Today's to-dos (BANNER1b): a due-deadline pull re-files
43
+ * an undated Inbox/Someday row INTO Anytime (out of its origin
44
+ * bucket) even while raw `start` still reads 0/2 — so membership is
45
+ * ANYTIME_SELF OR DEADLINE_PULLED (predicates.ts).
39
46
  * CONTAINER CASCADE (live-verified 2026-07-09): children of a
40
47
  * project that is not itself anytime-visible (someday/future/
41
48
  * logged/trashed) are excluded — the project row represents
@@ -67,7 +74,11 @@
67
74
  * rt1_nextInstanceStartDate (UI parity; opt out via
68
75
  * repeats:false). Occurrence deadline = start − rule.ts
69
76
  * (instance-validated 2026-07-04).
70
- * - someday: start=2 AND startDate IS NULL, container-less members only
77
+ * - someday: start=2 AND startDate IS NULL, MINUS due-deadline-pulled rows
78
+ * (BANNER1 Q1b: a due/overdue unsuppressed deadline removes an
79
+ * undated Someday row from the GUI Someday list and files it under
80
+ * Today/Anytime — DEADLINE_PULLED, predicates.ts); container-less
81
+ * members only
71
82
  * (project children appear ONLY via the activeProjectItems
72
83
  * toggle, and only for anytime-active projects — mirrors the
73
84
  * UI's "Show items from active projects"). Grouped in sidebar
@@ -264,6 +275,14 @@ export interface LogbookFilter extends ViewFilter {
264
275
  until?: Date;
265
276
  }
266
277
  export declare function logbookView(db: DatabaseSync, now?: Date, options?: LogbookFilter, zone?: string): ListItem[];
278
+ /**
279
+ * A cheap COUNT of one area's logged rows — the SAME subtree-inclusive scope
280
+ * (own area OR containing project's area) and log-move boundary logbookView
281
+ * applies, without materializing a single row. Feeds the `area show` TTY card's
282
+ * live logbook-footer count; real areas only (the loose pseudo-area accumulates
283
+ * no `logbook --area` archive).
284
+ */
285
+ export declare function areaLoggedCount(db: DatabaseSync, areaUuid: string, now?: Date, zone?: string): number;
267
286
  export declare function trashView(db: DatabaseSync, now?: Date, options?: {
268
287
  limit?: number | null;
269
288
  }, zone?: string): ListItem[];
@@ -279,7 +298,7 @@ export interface SearchOptions extends ViewFilter {
279
298
  limit?: number | null;
280
299
  /** Restrict to one project's children (headed children included). */
281
300
  project?: string;
282
- /** Restrict to one area's direct members. */
301
+ /** Restrict to one area's subtree (direct members plus its projects' children). Uuid or unique name. */
283
302
  area?: string;
284
303
  type?: "to-do" | "project";
285
304
  /** Include completed/canceled items (default: open only). */
@@ -318,16 +337,37 @@ export interface LiteSearchResult {
318
337
  candidates: LiteCandidate[];
319
338
  /** Total matches before the cap. */
320
339
  total: number;
340
+ /**
341
+ * Present ONLY when there were ZERO live matches (`total === 0`) yet the name
342
+ * DOES match dead rows — trashed and/or logbook (swept-completed) to-dos /
343
+ * projects. The counts feed the honest not-found hint (see
344
+ * `deadNameMatchHint`); the dead rows are NOT listed as candidates (domain
345
+ * scoping — a live-only pool never invites a dangling-ref op on a dead row).
346
+ */
347
+ deadMatches?: {
348
+ trashed: number;
349
+ logbook: number;
350
+ };
321
351
  }
322
352
  export declare function liteTitleSearch(db: DatabaseSync, query: string, options?: {
323
353
  type?: "to-do" | "project" | "area";
324
354
  limit?: number;
325
355
  }, now?: Date, zone?: string): LiteSearchResult;
326
- /** A search result annotated with WHY it surfaced (additive; `matchedVia` present only for heading-credited projects). */
356
+ /**
357
+ * The match-provenance annotation on a search hit — WHERE the query matched
358
+ * when it was NOT the title. `field` names the matched text kind; `text` is the
359
+ * matched heading title, a bounded notes snippet centered on the hit, or the
360
+ * matched checklist item's title. PRESENCE-KEYED: a TITLE match carries NO
361
+ * annotation (absence = matched where you'd expect). Exactly one annotation max;
362
+ * when several fields match, precedence is title (none) > heading > notes >
363
+ * checklist.
364
+ */
365
+ export interface SearchMatchAnnotation {
366
+ field: "heading" | "notes" | "checklist";
367
+ text: string;
368
+ }
369
+ /** A search result, optionally annotated with its non-title match provenance. */
327
370
  export type SearchResultItem = ListItem & {
328
- matchedVia?: {
329
- kind: "heading";
330
- title: string;
331
- };
371
+ match?: SearchMatchAnnotation;
332
372
  };
333
373
  export declare function searchView(db: DatabaseSync, query: string, options?: SearchOptions, now?: Date, zone?: string): SearchResultItem[];
@@ -4,7 +4,9 @@ import { mapProject, mapTodo } from "../model/mappers.js";
4
4
  import { projectOccurrences } from "../model/occurrences.js";
5
5
  import { decodeRecurrenceRule } from "../model/recurrence.js";
6
6
  import { directTagScopeSql, directUntaggedScopeSql, fetchTagsForTasks, fetchTaskRows, makeHeadingProjectResolver, makeRefResolver, NOT_TEMPLATE, resolveAreaUuid, resolveProjectUuid, resolveTagUuid, tagScopeBinds, tagScopeSql, tagWithDescendants, untaggedScopeSql, } from "./queries.js";
7
- import { ANYTIME_SELF, CONTAINER_UNTRASHED, EFF_PROJECT, LIVE, OPEN, OPEN_OR_UNSWEPT, OVERDUE, PROJECT_ANYTIME_ACTIVE, } from "./predicates.js";
7
+ import { ANYTIME_SELF, CONTAINER_UNTRASHED, DEADLINE_PULLED, EFF_PROJECT, LIVE, OPEN, OPEN_OR_UNSWEPT, OVERDUE, PROJECT_ANYTIME_ACTIVE, } from "./predicates.js";
8
+ import { isLooseRef } from "./pseudo-area.js";
9
+ import { CANDIDATE_CAP } from "./shape.js";
8
10
  import { groupBySidebar } from "./sidebar-order.js";
9
11
  import { areasView } from "./tags.js";
10
12
  import { compareSearchMatches } from "./search-rank.js";
@@ -128,8 +130,7 @@ export function todayView(db, now, filter, zone) {
128
130
  const boundary = logBoundary(db, now, zone);
129
131
  const rows = fetchTaskRows(db, `${OPEN_OR_UNSWEPT} AND ${CONTAINER_UNTRASHED} AND (
130
132
  (t.startDate IS NOT NULL AND t.startDate <= ? AND t.start IN (1, 2))
131
- OR (t.deadline IS NOT NULL AND t.deadline <= ? AND t.startDate IS NULL
132
- AND (t.deadlineSuppressionDate IS NULL OR t.deadlineSuppressionDate < t.deadline))
133
+ OR ${DEADLINE_PULLED}
133
134
  )${tf.sql}${of.sql}
134
135
  ORDER BY t.startBucket ASC,
135
136
  COALESCE(t.todayIndexReferenceDate, t.startDate, t.deadline) DESC,
@@ -164,9 +165,11 @@ export function todayView(db, now, filter, zone) {
164
165
  }
165
166
  export function inboxView(db, now, filter, zone) {
166
167
  const tf = tagFilter(db, filter);
167
- // `now` is threaded only for the `--overdue` boundary (the inbox order and
168
- // the since/until window key on epoch creationDate, not on today).
169
- const of = overdueFilter(filter, encodePackedDate(localToday(now, zone)));
168
+ // `now` is threaded for the `--overdue` boundary AND for the deadline-pull
169
+ // exclusion below (the inbox order and the since/until window key on epoch
170
+ // creationDate, not on today).
171
+ const packedToday = encodePackedDate(localToday(now, zone));
172
+ const of = overdueFilter(filter, packedToday);
170
173
  const where = [OPEN, "t.start = 0"];
171
174
  const binds = [];
172
175
  // creationDate is an epoch REAL (Unix seconds) — mirror the changes/logbook
@@ -179,6 +182,14 @@ export function inboxView(db, now, filter, zone) {
179
182
  where.push("t.creationDate <= ?");
180
183
  binds.push(filter.until.getTime() / 1000);
181
184
  }
185
+ // R13 (BANNER1 Q1b, law L-A): a due/overdue un-dismissed deadline pulls an
186
+ // undated Inbox row into Today AND removes it from the GUI Inbox list — even
187
+ // while its raw `start` still reads 0. EXCLUDE the pulled rows so the flat
188
+ // inbox view stays GUI-faithful; reuse the Today deadline arm verbatim so the
189
+ // exclusion can never drift from the pull todayView claims. A SUPPRESSED
190
+ // deadline (guard inside DEADLINE_PULLED) is not a pull, so it stays in Inbox.
191
+ where.push(`NOT ${DEADLINE_PULLED}`);
192
+ binds.push(packedToday);
182
193
  const rows = fetchTaskRows(db, `${where.join(" AND ")}${tf.sql}${of.sql} ORDER BY t."index" ASC`, [...binds, ...tf.binds, ...of.binds]);
183
194
  return materialize(db, rows, logBoundary(db, now, zone), encodePackedDate(localToday(now, zone)));
184
195
  }
@@ -194,14 +205,23 @@ export function anytimeView(db, now, filter, zone) {
194
205
  // the parent project be open, so a closed-but-unswept project's children stay
195
206
  // cascade-excluded — the checked project row represents them. The boundary is
196
207
  // threaded into the SQL filter and materialize so presence and `logged` agree.
208
+ //
209
+ // R13 (BANNER1b, law L-A): Anytime is a SUPERSET of Today's to-dos — a
210
+ // due-deadline pull re-files an undated Inbox/Someday row into Anytime (out of
211
+ // its origin bucket) even while its raw `start` still reads 0/2. So the
212
+ // membership arm is ANYTIME_SELF *OR* the Today deadline-pull arm (reused
213
+ // verbatim from todayView, never re-derived). The container cascade still
214
+ // applies (a pulled child of a non-active project is represented by that
215
+ // project row).
197
216
  const boundary = logBoundary(db, now, zone);
198
- const rows = fetchTaskRows(db, `${OPEN_OR_UNSWEPT} AND ${ANYTIME_SELF("t")}
217
+ const rows = fetchTaskRows(db, `${OPEN_OR_UNSWEPT} AND (${ANYTIME_SELF("t")} OR ${DEADLINE_PULLED})
199
218
  AND ${PROJECT_ANYTIME_ACTIVE}${tf.sql}${of.sql} ORDER BY t."index" ASC`, [
200
219
  boundary.getTime() / 1000,
201
- packedToday,
202
- packedToday,
203
- packedToday,
204
- packedToday,
220
+ packedToday, // ANYTIME_SELF arm 1
221
+ packedToday, // ANYTIME_SELF arm 2
222
+ packedToday, // DEADLINE_PULLED
223
+ packedToday, // PROJECT_ANYTIME_ACTIVE arm 1
224
+ packedToday, // PROJECT_ANYTIME_ACTIVE arm 2
205
225
  ...tf.binds,
206
226
  ...of.binds,
207
227
  ]);
@@ -373,8 +393,19 @@ export function somedayView(db, now, filter, zone) {
373
393
  ? `EXISTS (SELECT 1 FROM TMTask p WHERE p.uuid = ${EFF_PROJECT}
374
394
  AND p.trashed = 0 AND p.status = 0 AND ${ANYTIME_SELF("p")})`
375
395
  : "0";
396
+ // R13 (BANNER1 Q1b, law L-A): a due/overdue un-dismissed deadline pulls an
397
+ // undated Someday row into Today AND removes it from the GUI Someday list —
398
+ // even while its raw `start` still reads 2. EXCLUDE the pulled rows so the flat
399
+ // someday view stays GUI-faithful; reuse the Today deadline arm verbatim so the
400
+ // exclusion can never drift from the pull todayView claims. A SUPPRESSED
401
+ // deadline (guard inside DEADLINE_PULLED) is not a pull, so it stays in Someday.
376
402
  const rows = fetchTaskRows(db, `${OPEN} AND t.start = 2 AND t.startDate IS NULL
377
- AND (${EFF_PROJECT} IS NULL OR ${childArm})${tf.sql}${of.sql} ORDER BY t."index" ASC`, [...(withActiveChildren ? [packedToday, packedToday] : []), ...tf.binds, ...of.binds]);
403
+ AND (${EFF_PROJECT} IS NULL OR ${childArm}) AND NOT ${DEADLINE_PULLED}${tf.sql}${of.sql} ORDER BY t."index" ASC`, [
404
+ ...(withActiveChildren ? [packedToday, packedToday] : []),
405
+ packedToday, // DEADLINE_PULLED exclusion
406
+ ...tf.binds,
407
+ ...of.binds,
408
+ ]);
378
409
  const sections = groupBySidebar(db, materialize(db, rows, logBoundary(db, now, zone), encodePackedDate(localToday(now, zone))));
379
410
  // GUI order within a Someday group (live side-by-side, 2026-07-12):
380
411
  // PROJECT rows first (their sidebar order preserved), then direct to-dos in
@@ -400,9 +431,17 @@ export function logbookView(db, now, options, zone) {
400
431
  binds.push(resolveProjectUuid(db, options.project));
401
432
  }
402
433
  if (options?.area !== undefined) {
403
- const areaUuid = resolveAreaUuid(db, options.area);
404
- where.push(`(t.area = ? OR EXISTS (SELECT 1 FROM TMTask p WHERE p.uuid = ${EFF_PROJECT} AND p.area = ?))`);
405
- binds.push(areaUuid, areaUuid);
434
+ if (isLooseRef(options.area)) {
435
+ // `--area loose`: the area-less logged rows effective area is null (own
436
+ // area null AND no area-carrying containing project). The inversion of the
437
+ // real-area subtree keep-rule below.
438
+ where.push(`t.area IS NULL AND (${EFF_PROJECT} IS NULL OR NOT EXISTS (SELECT 1 FROM TMTask p WHERE p.uuid = ${EFF_PROJECT} AND p.area IS NOT NULL))`);
439
+ }
440
+ else {
441
+ const areaUuid = resolveAreaUuid(db, options.area);
442
+ where.push(`(t.area = ? OR EXISTS (SELECT 1 FROM TMTask p WHERE p.uuid = ${EFF_PROJECT} AND p.area = ?))`);
443
+ binds.push(areaUuid, areaUuid);
444
+ }
406
445
  }
407
446
  if (options?.since !== undefined) {
408
447
  where.push("t.stopDate >= ?");
@@ -421,6 +460,22 @@ export function logbookView(db, now, options, zone) {
421
460
  const rows = fetchTaskRows(db, `${LIVE} AND t.status IN (2, 3) AND t.stopDate <= ?${extra}${tf.sql} ORDER BY t.stopDate DESC${cap === null ? "" : " LIMIT ?"}`, [boundary.getTime() / 1000, ...binds, ...tf.binds, ...(cap === null ? [] : [cap])]);
422
461
  return materialize(db, rows, boundary, encodePackedDate(localToday(now, zone)));
423
462
  }
463
+ /**
464
+ * A cheap COUNT of one area's logged rows — the SAME subtree-inclusive scope
465
+ * (own area OR containing project's area) and log-move boundary logbookView
466
+ * applies, without materializing a single row. Feeds the `area show` TTY card's
467
+ * live logbook-footer count; real areas only (the loose pseudo-area accumulates
468
+ * no `logbook --area` archive).
469
+ */
470
+ export function areaLoggedCount(db, areaUuid, now, zone) {
471
+ const boundary = logBoundary(db, now, zone);
472
+ const row = db
473
+ .prepare(`SELECT COUNT(*) AS n FROM TMTask t
474
+ WHERE ${LIVE} AND t.status IN (2, 3) AND t.stopDate <= ?
475
+ AND (t.area = ? OR EXISTS (SELECT 1 FROM TMTask p WHERE p.uuid = ${EFF_PROJECT} AND p.area = ?))`)
476
+ .get(boundary.getTime() / 1000, areaUuid, areaUuid);
477
+ return row.n;
478
+ }
424
479
  export function trashView(db, now, options, zone) {
425
480
  const cap = options?.limit === null ? null : (options?.limit ?? 200);
426
481
  const rows = fetchTaskRows(db, `t.type IN (0, 1) AND t.trashed = 1 AND ${NOT_TEMPLATE}
@@ -429,8 +484,11 @@ export function trashView(db, now, options, zone) {
429
484
  }
430
485
  export function projectsView(db, options) {
431
486
  // areaUuid accepts a uuid OR a unique (case-insensitive) title; ambiguous
432
- // or unknown references throw like every other ref resolver.
433
- const area = options?.areaUuid === undefined ? null : resolveAreaUuid(db, options.areaUuid);
487
+ // or unknown references throw like every other ref resolver. The reserved
488
+ // `loose` ref scopes to the NULL area (area-less projects) — the sidebar's
489
+ // leading loose block — with no uuid to resolve.
490
+ const loose = options?.areaUuid !== undefined && isLooseRef(options.areaUuid);
491
+ const area = options?.areaUuid === undefined || loose ? null : resolveAreaUuid(db, options.areaUuid);
434
492
  const packedToday = encodePackedDate(localToday(options?.now, options?.zone));
435
493
  // Tag scope (§9a): the projects LIST is a FLAT view (like `anytime` restricted
436
494
  // to project rows), NOT a single-container view — projects sit in different
@@ -460,8 +518,11 @@ export function projectsView(db, options) {
460
518
  // (area-less) projects first in their own drag order — the GUI lists them
461
519
  // above the areas — then each area by ITS sidebar rank (TMArea."index"),
462
520
  // projects within an area by their drag order.
463
- const where = area
464
- ? `${OPEN} AND t.type = 1 AND t.area = ?${laterSql}${overdueSql}${tf.sql}
521
+ // A single-group flat listing (loose OR a real area) shares one ORDER shape;
522
+ // only the unscoped sidebar catalogue interleaves areas by their rank.
523
+ const areaClause = loose ? " AND t.area IS NULL" : area ? " AND t.area = ?" : "";
524
+ const where = loose || area
525
+ ? `${OPEN} AND t.type = 1${areaClause}${laterSql}${overdueSql}${tf.sql}
465
526
  ORDER BY ${activeFirst}t."index" ASC`
466
527
  : `${OPEN} AND t.type = 1${laterSql}${overdueSql}${tf.sql} ORDER BY (t.area IS NOT NULL) ASC,
467
528
  (SELECT a."index" FROM TMArea a WHERE a.uuid = t.area) ASC, ${activeFirst}t."index" ASC`;
@@ -545,8 +606,8 @@ export function changesView(db, now, options, zone) {
545
606
  * doctrine: containers (areas, then projects) first, then to-dos; within a
546
607
  * group active rows precede someday rows, then most-recently-modified. `type`
547
608
  * scopes to a single class (the typed-namespace paths). Results are capped
548
- * (default 10); `total` reports the pre-cap match count so the caller can
549
- * append a "… n more" tail.
609
+ * (default {@link CANDIDATE_CAP}); `total` reports the pre-cap match count so the
610
+ * caller can append a "… n more" tail.
550
611
  */
551
612
  const somedayRank = (i) => (i.start === "someday" ? 1 : 0);
552
613
  /** Lite-search order within a task group: active before someday, then most-recently-modified. */
@@ -554,7 +615,7 @@ function byStatusThenRecent(a, b) {
554
615
  return somedayRank(a) - somedayRank(b) || b.modified.getTime() - a.modified.getTime();
555
616
  }
556
617
  export function liteTitleSearch(db, query, options, now, zone) {
557
- const cap = options?.limit ?? 10;
618
+ const cap = options?.limit ?? CANDIDATE_CAP;
558
619
  const type = options?.type;
559
620
  const needle = query.toLowerCase();
560
621
  const areas = type === undefined || type === "area"
@@ -575,7 +636,44 @@ export function liteTitleSearch(db, query, options, now, zone) {
575
636
  ...projects.map((task) => ({ kind: "task", task })),
576
637
  ...todos.map((task) => ({ kind: "task", task })),
577
638
  ];
578
- return { candidates: ordered.slice(0, cap), total: ordered.length };
639
+ // Zero LIVE matches: probe whether the name matches DEAD rows (trashed, or
640
+ // swept to the logbook) so the caller gets an honest hint instead of a bare
641
+ // miss — the dead rows themselves never become candidates (areas can be
642
+ // neither trashed nor logged, so only tasks are counted).
643
+ let deadMatches;
644
+ if (ordered.length === 0 && type !== "area") {
645
+ const typeSql = type === "to-do" ? "t.type = 0" : type === "project" ? "t.type = 1" : "t.type IN (0, 1)";
646
+ const boundary = logBoundary(db, now, zone).getTime() / 1000;
647
+ const row = db
648
+ .prepare(`SELECT
649
+ SUM(CASE WHEN t.trashed = 1 THEN 1 ELSE 0 END) AS trashed,
650
+ SUM(CASE WHEN t.trashed = 0 AND t.status IN (2, 3) AND t.stopDate IS NOT NULL AND t.stopDate <= ? THEN 1 ELSE 0 END) AS logbook
651
+ FROM TMTask t
652
+ WHERE ${NOT_TEMPLATE} AND ${typeSql} AND t.title LIKE ?${LIKE_ESCAPE}`)
653
+ .get(boundary, `%${escapeLike(query)}%`);
654
+ const trashed = row.trashed ?? 0;
655
+ const logbook = row.logbook ?? 0;
656
+ if (trashed > 0 || logbook > 0)
657
+ deadMatches = { trashed, logbook };
658
+ }
659
+ return {
660
+ candidates: ordered.slice(0, cap),
661
+ total: ordered.length,
662
+ ...(deadMatches !== undefined && { deadMatches }),
663
+ };
664
+ }
665
+ /** A one-line notes snippet (~80 chars) centered on the first occurrence of the needle. */
666
+ const SNIPPET_MAX = 80;
667
+ function notesSnippet(notes, needleLower) {
668
+ const flat = notes.replace(/\s+/g, " ").trim();
669
+ if (flat.length <= SNIPPET_MAX)
670
+ return flat;
671
+ const hit = Math.max(0, flat.toLowerCase().indexOf(needleLower));
672
+ const half = Math.max(0, Math.floor((SNIPPET_MAX - needleLower.length) / 2));
673
+ let end = Math.min(flat.length, Math.max(hit - half, 0) + SNIPPET_MAX);
674
+ const start = Math.max(0, end - SNIPPET_MAX);
675
+ const core = flat.slice(start, end);
676
+ return `${start > 0 ? "…" : ""}${core}${end < flat.length ? "…" : ""}`;
579
677
  }
580
678
  export function searchView(db, query, options, now, zone) {
581
679
  const cap = options?.limit === null ? null : (options?.limit ?? 50);
@@ -614,24 +712,49 @@ export function searchView(db, query, options, now, zone) {
614
712
  scopeBinds.push(uuid, uuid);
615
713
  }
616
714
  if (options?.area !== undefined) {
617
- const uuid = resolveAreaUuid(db, options.area);
618
- scope.push("t.area = ?");
619
- scopeBinds.push(uuid);
715
+ if (isLooseRef(options.area)) {
716
+ // `--area loose`: the area-less hits — effective area is null (own area
717
+ // null AND no area-carrying containing project). The inversion of the
718
+ // real-area subtree keep-rule below; inbox captures (area-less) are
719
+ // legitimately included.
720
+ scope.push(`t.area IS NULL AND (${EFF_PROJECT} IS NULL OR NOT EXISTS (SELECT 1 FROM TMTask p WHERE p.uuid = ${EFF_PROJECT} AND p.area IS NOT NULL))`);
721
+ }
722
+ else {
723
+ // Real-area filter is SUBTREE-INCLUSIVE (own area OR containing project's
724
+ // area) — the same effective-area shape logbookView uses, so every --area
725
+ // view scopes to the whole subtree, not just an area's direct members.
726
+ const uuid = resolveAreaUuid(db, options.area);
727
+ scope.push(`(t.area = ? OR EXISTS (SELECT 1 FROM TMTask p WHERE p.uuid = ${EFF_PROJECT} AND p.area = ?))`);
728
+ scopeBinds.push(uuid, uuid);
729
+ }
620
730
  }
621
731
  const tf = tagFilter(db, options);
622
732
  // Needle matches: title OR notes. No SQL LIMIT — ranking runs before the cap.
623
733
  const rows = fetchTaskRows(db, `${scope.join(" AND ")} AND (t.title LIKE ?${LIKE_ESCAPE} OR t.notes LIKE ?${LIKE_ESCAPE})${tf.sql}${of.sql}`, [...scopeBinds, needle, needle, ...tf.binds, ...of.binds]);
624
734
  const needleLower = query.toLowerCase();
625
735
  const matches = new Map();
736
+ /** Attach a match annotation to a materialized hit (title matches carry none). */
737
+ const annotate = (item, ann) => {
738
+ if (ann !== undefined)
739
+ item.match = ann;
740
+ };
626
741
  for (const item of materialize(db, rows, boundary, packedToday)) {
627
- // Field credit: title beats notes when both carry the substring.
742
+ // Field credit: title beats notes when both carry the substring. A notes-only
743
+ // hit is annotated with a bounded snippet centered on the match; a title hit
744
+ // carries no annotation (presence-keyed — matched where you'd expect).
628
745
  const field = item.title.toLowerCase().includes(needleLower) ? "title" : "notes";
746
+ if (field === "notes") {
747
+ annotate(item, { field: "notes", text: notesSnippet(item.notes ?? "", needleLower) });
748
+ }
629
749
  matches.set(item.uuid, { item, field });
630
750
  }
631
751
  // Heading titles are treated as if they lived in the parent PROJECT's notes:
632
752
  // a heading-title match surfaces the parent project (never a bare heading
633
- // row), credited at the heading-via-project field rank. A to-do-only search
634
- // has no project rows, so headings do not apply there.
753
+ // row), credited at the heading field rank. A to-do-only search has no project
754
+ // rows, so headings do not apply there. Heading OUTRANKS notes for the
755
+ // annotation (precedence title > heading > notes): a project matched by its
756
+ // own notes AND by a child heading shows the heading annotation, though it
757
+ // keeps its notes rank; a title-matched project keeps NO annotation.
635
758
  if (options?.type !== "to-do") {
636
759
  const headingRows = db
637
760
  .prepare(`SELECT project AS projectUuid, title FROM TMTask
@@ -642,21 +765,51 @@ export function searchView(db, query, options, now, zone) {
642
765
  if (!headingTitleFor.has(h.projectUuid))
643
766
  headingTitleFor.set(h.projectUuid, h.title ?? "");
644
767
  }
645
- // Surface only the projects NOT already matched by their own title/notes
646
- // (a higher-ranked field already represents them), and only those passing
647
- // the view's scope.
648
- const wanted = [...headingTitleFor.keys()].filter((uuid) => !matches.has(uuid));
768
+ // Projects ALREADY matched: re-credit a notes annotation to the heading
769
+ // (title stays annotation-free). Projects NOT yet matched: materialize and
770
+ // add them at the heading rank. Both only where the view's scope allows.
771
+ const wanted = [];
772
+ for (const [uuid, headingTitle] of headingTitleFor) {
773
+ const existing = matches.get(uuid);
774
+ if (existing === undefined) {
775
+ wanted.push(uuid);
776
+ }
777
+ else if (existing.item.type === "project" && existing.field === "notes") {
778
+ annotate(existing.item, { field: "heading", text: headingTitle });
779
+ }
780
+ }
649
781
  if (wanted.length > 0) {
650
782
  const placeholders = wanted.map(() => "?").join(", ");
651
783
  const projectRows = fetchTaskRows(db, `${scope.join(" AND ")} AND t.type = 1 AND t.uuid IN (${placeholders})${tf.sql}${of.sql}`, [...scopeBinds, ...wanted, ...tf.binds, ...of.binds]);
652
784
  for (const item of materialize(db, projectRows, boundary, packedToday)) {
653
- const matchedVia = {
654
- kind: "heading",
655
- title: headingTitleFor.get(item.uuid) ?? "",
656
- };
657
- // Annotate the freshly materialized entity in place (owned here).
658
- item.matchedVia = matchedVia;
659
- matches.set(item.uuid, { item, field: "heading", matchedVia });
785
+ annotate(item, { field: "heading", text: headingTitleFor.get(item.uuid) ?? "" });
786
+ matches.set(item.uuid, { item, field: "heading" });
787
+ }
788
+ }
789
+ }
790
+ // Checklist-item titles are treated as properties of the parent TO-DO (like
791
+ // notes): a checklist-body match surfaces the parent to-do (deduped — one to-do
792
+ // no matter how many of its rows match), annotated with the FIRST matching
793
+ // row's title. Checklist is the lowest-precedence field, so it only adds to-dos
794
+ // not already matched by their own title/notes (those keep the higher credit).
795
+ // Checklist-item uuids appear on NO surface — the join reads titles only.
796
+ if (options?.type !== "project") {
797
+ const checklistRows = db
798
+ .prepare(`SELECT task AS todoUuid, title FROM TMChecklistItem
799
+ WHERE task IS NOT NULL AND title LIKE ?${LIKE_ESCAPE} ORDER BY "index" ASC`)
800
+ .all(needle);
801
+ const checklistTitleFor = new Map();
802
+ for (const c of checklistRows) {
803
+ if (!checklistTitleFor.has(c.todoUuid))
804
+ checklistTitleFor.set(c.todoUuid, c.title ?? "");
805
+ }
806
+ const wanted = [...checklistTitleFor.keys()].filter((uuid) => !matches.has(uuid));
807
+ if (wanted.length > 0) {
808
+ const placeholders = wanted.map(() => "?").join(", ");
809
+ const todoRows = fetchTaskRows(db, `${scope.join(" AND ")} AND t.type = 0 AND t.uuid IN (${placeholders})${tf.sql}${of.sql}`, [...scopeBinds, ...wanted, ...tf.binds, ...of.binds]);
810
+ for (const item of materialize(db, todoRows, boundary, packedToday)) {
811
+ annotate(item, { field: "checklist", text: checklistTitleFor.get(item.uuid) ?? "" });
812
+ matches.set(item.uuid, { item, field: "checklist" });
660
813
  }
661
814
  }
662
815
  }
@@ -1 +1 @@
1
- {"version":3,"file":"views.js","sourceRoot":"","sources":["../../src/read/views.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"views.js","sourceRoot":"","sources":["../../src/read/views.ts"],"names":[],"mappings":"AA6FA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAgB,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,OAAO,EAAgB,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,0BAA0B,EAC1B,eAAe,EACf,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,IAAI,EACJ,IAAI,EACJ,eAAe,EACf,OAAO,EACP,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,oBAAoB,EAAqC,MAAM,kBAAkB,CAAC;AAI3F;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,8EAA8E;AAC9E,MAAM,WAAW,GAAG,cAAc,CAAC;AAqDnC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,SAAS,CACvB,EAAgB,EAChB,MAA8B,EAC9B,OAAiC;IAEjC,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC;IAC9C,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,EAAE,QAAQ,KAAK,IAAI;QAC3B,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAG,MAAM,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9F,MAAM,MAAM,GAAG,CAAC,GAAW,EAAY,EAAE;QACvC,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACvC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9C,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACxD,OAAO,EAAE,GAAG,EAAE,QAAQ,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC;AACzD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CACpB,MAA8B,EAC9B,WAAmB;IAEnB,IAAI,MAAM,EAAE,OAAO,KAAK,IAAI;QAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC5D,OAAO,EAAE,GAAG,EAAE,QAAQ,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED,2EAA2E;AAC3E,gFAAgF;AAChF,6EAA6E;AAC7E,0DAA0D;AAC1D,+EAA+E;AAC/E,4EAA4E;AAC5E,iDAAiD;AACjD,SAAS,WAAW,CAClB,EAAgB,EAChB,IAAe,EACf,QAAc,EACd,WAAmB;IAEnB,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;IACjC,MAAM,cAAc,GAAG,0BAA0B,CAAC,EAAE,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,iBAAiB,CAC5B,EAAE,EACF,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CACxB,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC7B,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;QACxF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;QACvE,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,KAAK,IAAI;gBAAE,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,0EAA0E;IAC1E,8EAA8E;IAC9E,2CAA2C;IAC3C,OAAO,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACrC,CAAC;AAkBD,uEAAuE;AACvE,MAAM,MAAM,GAAG,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;AAEpD,MAAM,UAAU,SAAS,CACvB,EAAgB,EAChB,GAAU,EACV,MAAoB,EACpB,IAAa;IAEb,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,uEAAuE;IACvE,sEAAsE;IACtE,mEAAmE;IACnE,2EAA2E;IAC3E,wEAAwE;IACxE,oEAAoE;IACpE,4DAA4D;IAC5D,sEAAsE;IACtE,0EAA0E;IAC1E,wEAAwE;IACxE,uBAAuB;IACvB,6EAA6E;IAC7E,2EAA2E;IAC3E,qEAAqE;IACrE,iEAAiE;IACjE,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,GAAG,eAAe,QAAQ,mBAAmB;;YAErC,eAAe;QACnB,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG;;;2CAGoB,EACvC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAChF,CAAC;IACF,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC3D,wEAAwE;IACxE,0EAA0E;IAC1E,MAAM,SAAS,GAAG,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC;IAC5F,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,CAAC,IAAgB,EAAE,EAAE,CACjC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC,MAAM,CAAC;IAC3E,qEAAqE;IACrE,6EAA6E;IAC7E,+EAA+E;IAC/E,yEAAyE;IACzE,0EAA0E;IAC1E,IAAI,MAAM,EAAE,WAAW,KAAK,IAAI,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;QACtC,OAAO;YACL,KAAK,EAAE,EAAE;YACT,OAAO;YACP,KAAK,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,GAAG,UAAU,EAAE;SAC5E,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;IACtC,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO;QACP,KAAK,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,GAAG,YAAY,EAAE;KAChE,CAAC;AACJ,CAAC;AAeD,MAAM,UAAU,SAAS,CACvB,EAAgB,EAChB,GAAU,EACV,MAAoB,EACpB,IAAa;IAEb,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACjC,2EAA2E;IAC3E,2EAA2E;IAC3E,+BAA+B;IAC/B,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACpC,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,4EAA4E;IAC5E,8EAA8E;IAC9E,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC5C,CAAC;IACD,2EAA2E;IAC3E,6EAA6E;IAC7E,2EAA2E;IAC3E,8EAA8E;IAC9E,yEAAyE;IACzE,+EAA+E;IAC/E,KAAK,CAAC,IAAI,CAAC,OAAO,eAAe,EAAE,CAAC,CAAC;IACrC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxB,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,yBAAyB,EACjE,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CACrC,CAAC;IACF,OAAO,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACpG,CAAC;AAaD,MAAM,UAAU,WAAW,CACzB,EAAgB,EAChB,GAAU,EACV,MAAmB,EACnB,IAAa;IAEb,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,oEAAoE;IACpE,yEAAyE;IACzE,4EAA4E;IAC5E,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,8EAA8E;IAC9E,+EAA+E;IAC/E,EAAE;IACF,uEAAuE;IACvE,+EAA+E;IAC/E,wEAAwE;IACxE,0EAA0E;IAC1E,0EAA0E;IAC1E,yEAAyE;IACzE,gBAAgB;IAChB,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,GAAG,eAAe,SAAS,YAAY,CAAC,GAAG,CAAC,OAAO,eAAe;WAC3D,sBAAsB,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,yBAAyB,EACxE;QACE,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI;QACzB,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE,+BAA+B;QAC5C,WAAW,EAAE,+BAA+B;QAC5C,GAAG,EAAE,CAAC,KAAK;QACX,GAAG,EAAE,CAAC,KAAK;KACZ,CACF,CAAC;IACF,OAAO,cAAc,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,aAAa,CAAC,IAAc,EAAE,GAAU,EAAE,IAAa;IACrE,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC;IAC5D,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC;AAC1D,CAAC;AA2BD;;;GAGG;AACH,MAAM,QAAQ,GAAG,CAAC,CAAW,EAAU,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;AAE1E,MAAM,UAAU,YAAY,CAC1B,EAAgB,EAChB,GAAU,EACV,MAAuB,EACvB,IAAa;IAEb,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,CAAC;IAC5B,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,CAAC;IAC5B,MAAM,UAAU,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAEjC,6EAA6E;IAC7E,sEAAsE;IACtE,MAAM,aAAa,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC;IACzE,MAAM,aAAa,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC;IACzE,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,GAAG,IAAI,QAAQ,mBAAmB;sEACgC,aAAa,GAAG,aAAa,GAAG,EAAE,CAAC,GAAG;6CAC/D,EACzC,CAAC,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CACzD,CAAC;IAEF,4EAA4E;IAC5E,0EAA0E;IAC1E,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,uEAAuE;IACvE,yEAAyE;IACzE,aAAa;IACb,MAAM,UAAU,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC;IACrE,MAAM,UAAU,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC;IACrE,MAAM,YAAY,GAAG,aAAa,CAChC,EAAE,EACF,GAAG,IAAI,QAAQ,mBAAmB;;;wFAGkD,UAAU,GAAG,UAAU,GAAG,EAAE,CAAC,GAAG;4CAC5E,EACxC,CAAC,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CACzD,CAAC;IAEF,MAAM,SAAS,GAAG,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAEtE,2EAA2E;IAC3E,8EAA8E;IAC9E,uEAAuE;IACvE,uEAAuE;IACvE,4BAA4B;IAC5B,MAAM,SAAS,GAAG,CAAC,IAAgB,EAAE,SAAoB,EAAc,EAAE;QACvE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAiB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAChG,OAAO,IAAI;aACR,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;aACnC,QAAQ,CACP,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACP,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAChD,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3E,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG;YACb,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACzC;aACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,IAAI,MAAM,EAAE,OAAO,KAAK,KAAK;QAC3B,OAAO,SAAS,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC;IAE5E,wEAAwE;IACxE,oEAAoE;IACpE,mEAAmE;IACnE,2EAA2E;IAC3E,6EAA6E;IAC7E,MAAM,YAAY,GAAG,aAAa,CAChC,EAAE,EACF,2DAA2D,mBAAmB;;;sFAGI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,uCAAuC,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,uCAAuC,GAAG,EAAE,CAAC,GAAG;6DACzK,EACzD,CAAC,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CACzD,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACnF,MAAM,WAAW,GAAG,WAAW,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC5F,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,cAAc,IAAI,IAAI,CAAC;QAC5D,IAAI,SAAS,KAAK,IAAI;YAAE,OAAO,EAAE,CAAC;QAClC,2EAA2E;QAC3E,wEAAwE;QACxE,yEAAyE;QACzE,0EAA0E;QAC1E,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,SAAS,KAAK,IAAI,CAAC;QACxD,IAAI,IAAI,GAAmD,IAAI,CAAC;QAChE,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;YAAC,MAAM,CAAC;gBACP,iFAAiF;YACnF,CAAC;QACH,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5D,gEAAgE;YAChE,kEAAkE;YAClE,MAAM,QAAQ,GACZ,IAAI,KAAK,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnF,OAAO,CAAC,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChD,CAAC;QACD,kEAAkE;QAClE,wEAAwE;QACxE,uDAAuD;QACvD,OAAO,CACL,kBAAkB,CAChB,IAAI,EACJ,SAAS,EACT;YACE,KAAK,EAAE,OAAO;YACd,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;SACtC,EACD,SAAS,CACV;aACE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC;aAC1D,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC;YAC3D,4FAA4F;aAC3F,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACX,GAAG,QAAQ;YACX,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB,CAAC,CAAC,CACN,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,2EAA2E;IAC3E,wEAAwE;IACxE,MAAM,KAAK,GAAG,SAAS,CACrB,CAAC,GAAG,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,WAAW,CAAC,EAC3C,CAAC,GAAG,IAAI,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,CAAC,CAC5C,CAAC;IAEF,sEAAsE;IACtE,wEAAwE;IACxE,uEAAuE;IACvE,iEAAiE;IACjE,MAAM,WAAW,GAAG,aAAa,CAC/B,EAAE,EACF,2DAA2D,mBAAmB;;;gDAGlC,EAAE,CAAC,GAAG;8CACR,EAC1C,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAC3B,CAAC;IACF,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC/E,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC;QAC9E,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAClD,CAAC;YAAC,MAAM,CAAC;gBACP,8DAA8D;YAChE,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC,CAAC;AAChC,CAAC;AAYD,0EAA0E;AAC1E,MAAM,OAAO,GAAG,CAAC,CAAW,EAAE,EAAE,CAC9B,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC;AAE1E,MAAM,UAAU,WAAW,CACzB,EAAgB,EAChB,GAAU,EACV,MAAsB,EACtB,IAAa;IAEb,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC9C,sEAAsE;IACtE,0EAA0E;IAC1E,oEAAoE;IACpE,MAAM,kBAAkB,GAAG,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/D,MAAM,QAAQ,GAAG,kBAAkB;QACjC,CAAC,CAAC,iDAAiD,WAAW;kDAChB,YAAY,CAAC,GAAG,CAAC,GAAG;QAClE,CAAC,CAAC,GAAG,CAAC;IACR,2EAA2E;IAC3E,4EAA4E;IAC5E,gFAAgF;IAChF,gFAAgF;IAChF,yEAAyE;IACzE,iFAAiF;IACjF,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,GAAG,IAAI;YACC,WAAW,eAAe,QAAQ,aAAa,eAAe,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,yBAAyB,EACjH;QACE,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,WAAW,EAAE,4BAA4B;QACzC,GAAG,EAAE,CAAC,KAAK;QACX,GAAG,EAAE,CAAC,KAAK;KACZ,CACF,CAAC;IACF,MAAM,QAAQ,GAAG,cAAc,CAC7B,EAAE,EACF,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAC3F,CAAC;IACF,oEAAoE;IACpE,4EAA4E;IAC5E,0EAA0E;IAC1E,uEAAuE;IACvE,6DAA6D;IAC7D,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,KAAK,EAAE;YACL,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC;YAC9C,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC3D,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;SAC3B;KACF,CAAC,CAAC,CAAC;AACN,CAAC;AAmBD,MAAM,UAAU,WAAW,CACzB,EAAgB,EAChB,GAAU,EACV,OAAuB,EACvB,IAAa;IAEb,MAAM,GAAG,GAAG,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC;IACrE,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAClC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,IAAI,OAAO,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,MAAM,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,0EAA0E;YAC1E,2EAA2E;YAC3E,qCAAqC;YACrC,KAAK,CAAC,IAAI,CACR,uBAAuB,WAAW,iEAAiE,WAAW,2BAA2B,CAC1I,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YACnD,KAAK,CAAC,IAAI,CACR,gEAAgE,WAAW,mBAAmB,CAC/F,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IACD,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,yEAAyE;IACzE,uEAAuE;IACvE,2EAA2E;IAC3E,mEAAmE;IACnE,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,GAAG,IAAI,8CAA8C,KAAK,GAAG,EAAE,CAAC,GAAG,4BAA4B,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,EAC/H,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CACnF,CAAC;IACF,OAAO,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,EAAgB,EAChB,QAAgB,EAChB,GAAU,EACV,IAAa;IAEb,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5C,MAAM,GAAG,GAAG,EAAE;SACX,OAAO,CACN;eACS,IAAI;4EACyD,WAAW,mBAAmB,CACrG;SACA,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAkB,CAAC;IACvE,OAAO,GAAG,CAAC,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,EAAgB,EAChB,GAAU,EACV,OAAmC,EACnC,IAAa;IAEb,MAAM,GAAG,GAAG,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,0CAA0C,YAAY;2CACf,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,EACvE,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAC1B,CAAC;IACF,OAAO,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACpG,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,EAAgB,EAChB,OAMc;IAEd,0EAA0E;IAC1E,0EAA0E;IAC1E,2EAA2E;IAC3E,iDAAiD;IACjD,MAAM,KAAK,GAAG,OAAO,EAAE,QAAQ,KAAK,SAAS,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9E,MAAM,IAAI,GACR,OAAO,EAAE,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1F,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9E,+EAA+E;IAC/E,4EAA4E;IAC5E,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,gFAAgF;IAChF,0EAA0E;IAC1E,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAClC,8EAA8E;IAC9E,6EAA6E;IAC7E,0EAA0E;IAC1E,4EAA4E;IAC5E,MAAM,UAAU,GAAG,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,YAAY,GAAG,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,4EAA4E;IAC5E,wEAAwE;IACxE,4EAA4E;IAC5E,oEAAoE;IACpE,MAAM,QAAQ,GAAG,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IAC5E,MAAM,UAAU,GAAG,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAC7E,uEAAuE;IACvE,qDAAqD;IACrD,MAAM,WAAW,GACf,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,YAAY,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5F,MAAM,gBAAgB,GAAG,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,uEAAuE;IACvE,0EAA0E;IAC1E,yEAAyE;IACzE,+CAA+C;IAC/C,6EAA6E;IAC7E,uEAAuE;IACvE,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IACjF,MAAM,KAAK,GACT,KAAK,IAAI,IAAI;QACX,CAAC,CAAC,GAAG,IAAI,kBAAkB,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAC,GAAG;kBAC1D,WAAW,eAAe;QACtC,CAAC,CAAC,GAAG,IAAI,kBAAkB,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAC,GAAG;qEACM,WAAW,eAAe,CAAC;IAC9F,MAAM,IAAI,GAAG,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE;QACpC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,GAAG,UAAU;QACb,GAAG,YAAY;QACf,GAAG,EAAE,CAAC,KAAK;QACX,GAAG,gBAAgB;KACpB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,WAAW,CACvB,EAAE,EACF,IAAI,EACJ,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAC5C,WAAW,CACC,CAAC;IACf,IAAI,OAAO,EAAE,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1C,uEAAuE;IACvE,wEAAwE;IACxE,yEAAyE;IACzE,0EAA0E;IAC1E,gEAAgE;IAChE,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACzD,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,CAAC,CAAU,EAAE,EAAE,CAC7B,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC;IACxE,MAAM,GAAG,GAAc,EAAE,CAAC;IAC1B,IAAI,GAAG,GAAc,EAAE,CAAC;IACxB,IAAI,OAAkC,CAAC;IACvC,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,GAAG,CAAC,IAAI,CACN,GAAG,GAAG;aACH,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;aACnC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACjB,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;YAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;YAC5B,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI;gBAC5B,OAAO,CACL,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;oBACpB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvD,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CACd,CAAC;YACJ,IAAI,EAAE,KAAK,IAAI;gBAAE,OAAO,CAAC,CAAC,CAAC;YAC3B,IAAI,EAAE,KAAK,IAAI;gBAAE,OAAO,CAAC,CAAC;YAC1B,OAAO,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,2BAA2B;QACnD,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CACtB,CAAC;QACF,GAAG,GAAG,EAAE,CAAC;IACX,CAAC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,OAAO;YAAE,KAAK,EAAE,CAAC;QAC/C,OAAO,GAAG,GAAG,CAAC;QACd,IAAI,OAAO,CAAC,IAAI,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;YAC7B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,KAAK,EAAE,CAAC;IACR,OAAO,GAAG,CAAC;AACb,CAAC;AAqBD;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,EAAgB,EAChB,GAAqB,EACrB,OAA+C,EAC/C,IAAa;IAEb,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;IAClD,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF;2CACuC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,EACvE,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAC7C,CAAC;IACF,MAAM,OAAO,GAAG,WAAW,CACzB,EAAE,EACF,IAAI,EACJ,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAC1B,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CACxC,CAAC;IACF,wFAAwF;IACxF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/B,GAAG,IAAI;QACP,UAAU,EACR,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAE,SAAmB,CAAC,CAAC,CAAE,UAAoB;KAC3F,CAAC,CAAC,CAAC;AACN,CAAC;AAoBD;;;;;;;;;GASG;AACH,MAAM,WAAW,GAAG,CAAC,CAAW,EAAU,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7E,iGAAiG;AACjG,SAAS,kBAAkB,CAAC,CAAW,EAAE,CAAW;IAClD,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;AACxF,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,EAAgB,EAChB,KAAa,EACb,OAAiE,EACjE,GAAU,EACV,IAAa;IAEb,MAAM,GAAG,GAAG,OAAO,EAAE,KAAK,IAAI,aAAa,CAAC;IAC5C,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,CAAC;IAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEnC,MAAM,KAAK,GACT,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,MAAM;QACnC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;aACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aACrD,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC,CAAC,EAAE,CAAC;IAET,IAAI,KAAK,GAAe,EAAE,CAAC;IAC3B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACjE,MAAM,OAAO,GACX,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC;QAC3F,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,GAAG,IAAI,QAAQ,mBAAmB,QAAQ,OAAO,sBAAsB,WAAW,EAAE,EACpF,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAC3B,CAAC;QACF,KAAK,GAAG,WAAW,CACjB,EAAE,EACF,IAAI,EACJ,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAC1B,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CACxC,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACxF,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAEnF,MAAM,OAAO,GAAoB;QAC/B,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAiB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAiB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAiB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;KAChE,CAAC;IACF,2EAA2E;IAC3E,4EAA4E;IAC5E,wEAAwE;IACxE,0DAA0D;IAC1D,IAAI,WAA6D,CAAC;IAClE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAC5C,MAAM,OAAO,GACX,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC;QAC3F,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;QAC7D,MAAM,GAAG,GAAG,EAAE;aACX,OAAO,CACN;;;;iBAIS,YAAY,QAAQ,OAAO,sBAAsB,WAAW,EAAE,CACxE;aACA,GAAG,CAAC,QAAQ,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAGxC,CAAC;QACF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;QACjC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC;YAAE,WAAW,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IACrE,CAAC;IACD,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;QACjC,KAAK,EAAE,OAAO,CAAC,MAAM;QACrB,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAmBD,2FAA2F;AAC3F,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,SAAS,YAAY,CAAC,KAAa,EAAE,WAAmB;IACtD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/C,IAAI,IAAI,CAAC,MAAM,IAAI,WAAW;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7E,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;IACvE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,WAAW,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpC,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,EAAgB,EAChB,KAAa,EACb,OAAuB,EACvB,GAAU,EACV,IAAa;IAEb,MAAM,GAAG,GAAG,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC;IACxC,8EAA8E;IAC9E,4EAA4E;IAC5E,0EAA0E;IAC1E,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5D,MAAM,EAAE,GAAG,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC/C,2EAA2E;IAC3E,yDAAyD;IACzD,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAE5C,6EAA6E;IAC7E,4EAA4E;IAC5E,0CAA0C;IAC1C,MAAM,KAAK,GAAa,CAAC,YAAY,CAAC,CAAC;IACvC,MAAM,UAAU,GAAc,EAAE,CAAC;IACjC,KAAK,CAAC,IAAI,CACR,OAAO,EAAE,IAAI,KAAK,OAAO;QACvB,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,OAAO,EAAE,IAAI,KAAK,SAAS;YAC3B,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,kBAAkB,CACzB,CAAC;IACF,yEAAyE;IACzE,oEAAoE;IACpE,sEAAsE;IACtE,IAAI,OAAO,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;QAChE,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,OAAO,KAAK,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,qBAAqB,mBAAmB,EAAE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,OAAO,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,kBAAkB,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACrD,oEAAoE;QACpE,KAAK,CAAC,IAAI,CACR,0FAA0F,CAC3F,CAAC;QACF,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,wEAAwE;YACxE,sEAAsE;YACtE,oEAAoE;YACpE,yBAAyB;YACzB,KAAK,CAAC,IAAI,CACR,uBAAuB,WAAW,iEAAiE,WAAW,2BAA2B,CAC1I,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,0EAA0E;YAC1E,0EAA0E;YAC1E,uEAAuE;YACvE,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,CAAC,IAAI,CACR,gEAAgE,WAAW,mBAAmB,CAC/F,CAAC;YACF,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAElC,8EAA8E;IAC9E,MAAM,IAAI,GAAG,aAAa,CACxB,EAAE,EACF,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,uBAAuB,WAAW,qBAAqB,WAAW,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,EAC7G,CAAC,GAAG,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAC1D,CAAC;IACF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC/C,kFAAkF;IAClF,MAAM,QAAQ,GAAG,CAAC,IAAc,EAAE,GAAsC,EAAQ,EAAE;QAChF,IAAI,GAAG,KAAK,SAAS;YAAG,IAAyB,CAAC,KAAK,GAAG,GAAG,CAAC;IAChE,CAAC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;QAChE,8EAA8E;QAC9E,6EAA6E;QAC7E,uEAAuE;QACvE,MAAM,KAAK,GAAe,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAC7F,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,6EAA6E;IAC7E,0EAA0E;IAC1E,+EAA+E;IAC/E,uEAAuE;IACvE,4EAA4E;IAC5E,2EAA2E;IAC3E,qEAAqE;IACrE,IAAI,OAAO,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAG,EAAE;aACnB,OAAO,CACN;kFAC0E,WAAW,EAAE,CACxF;aACA,GAAG,CAAC,MAAM,CAAoE,CAAC;QAClF,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;QAClD,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;gBAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC7F,CAAC;QACD,wEAAwE;QACxE,2EAA2E;QAC3E,yEAAyE;QACzE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,eAAe,EAAE,CAAC;YACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC1E,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,MAAM,WAAW,GAAG,aAAa,CAC/B,EAAE,EACF,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,kCAAkC,YAAY,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,EACzF,CAAC,GAAG,UAAU,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CACrD,CAAC;YACF,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;gBACvE,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACjF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,gFAAgF;IAChF,2EAA2E;IAC3E,gFAAgF;IAChF,+EAA+E;IAC/E,0EAA0E;IAC1E,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,aAAa,GAAG,EAAE;aACrB,OAAO,CACN;kDAC0C,WAAW,uBAAuB,CAC7E;aACA,GAAG,CAAC,MAAM,CAAiE,CAAC;QAC/E,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACpD,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAClF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,MAAM,QAAQ,GAAG,aAAa,CAC5B,EAAE,EACF,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,kCAAkC,YAAY,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,EACzF,CAAC,GAAG,UAAU,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CACrD,CAAC;YACF,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC;gBACpE,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACrF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAwB,CAAC,CAAC;AACvD,CAAC"}
@@ -26,6 +26,13 @@ export declare const DEFAULT_LIST_LIMIT = 50;
26
26
  export declare const LIMIT_DESC = "maximum items to show (default 50)";
27
27
  /** Shared `--all`/`all` description (lift the row limit). */
28
28
  export declare const ALL_DESC = "show every matching item, no limit";
29
+ /**
30
+ * Shared `--full`/`full` description — the R7 tier escape hatch. List views
31
+ * default to a compact line-item; this forces the full per-row record
32
+ * (`created`/`modified`, the full repeat block, full notes, default-valued
33
+ * fields). The no-redundant-ancestry pruning (R6) still applies.
34
+ */
35
+ export declare const FULL_DESC = "full detail per row (default is a compact line-item)";
29
36
  /** Default per-project preview cap in the grouped catalogues (anytime). */
30
37
  export declare const PROJECT_PREVIEW_LIMIT = 3;
31
38
  /** Default per-area-block cap in the grouped catalogues (anytime/someday). */
@@ -36,6 +43,8 @@ export declare const AREA_LIMIT_DESC = "items shown per area block \u2014 includ
36
43
  export declare const PROJECT_LIMIT_DESC = "items shown per project block before truncating (default 3); every project row is always shown";
37
44
  /** `--all`/`all` description for the grouped views (lift every per-block cap). */
38
45
  export declare const GROUPED_ALL_DESC = "show every item in every group (no per-block caps)";
46
+ /** Shared `--area`/`area` view-filter description (restrict a view to one area). */
47
+ export declare const AREA_FILTER_DESC = "restrict to one area: its direct items and its projects' children (uuid or unique name, or `loose` for the area-less items)";
39
48
  /**
40
49
  * The omit-empty result note appended to every read tool description: optional
41
50
  * fields are dropped from the JSON when empty, so a consumer reads an absent