@reqlan/analytical 0.5.1 → 0.6.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 +37 -2
- package/out/analysis/git-dates-analyser.js +41 -12
- package/out/analysis/git-dates-analyser.js.map +1 -1
- package/out/core/analytical-store.d.ts +9 -2
- package/out/core/analytical-store.js +7 -5
- package/out/core/analytical-store.js.map +1 -1
- package/out/core/application-memory.d.ts +17 -2
- package/out/core/application-memory.js +23 -5
- package/out/core/application-memory.js.map +1 -1
- package/out/core/base-discovery.d.ts +40 -0
- package/out/core/base-discovery.js +166 -0
- package/out/core/base-discovery.js.map +1 -0
- package/out/core/context-model.d.ts +17 -0
- package/out/core/context-model.js.map +1 -1
- package/out/core/create-base.d.ts +11 -0
- package/out/core/create-base.js +33 -0
- package/out/core/create-base.js.map +1 -0
- package/out/core/rqignore.d.ts +25 -0
- package/out/core/rqignore.js +149 -0
- package/out/core/rqignore.js.map +1 -0
- package/out/core/types.d.ts +5 -1
- package/out/core/types.js.map +1 -1
- package/out/create-runtime.d.ts +29 -4
- package/out/create-runtime.js +47 -8
- package/out/create-runtime.js.map +1 -1
- package/out/export/html-export-assets.d.ts +2 -2
- package/out/export/html-export-assets.js +259 -239
- package/out/export/html-export-assets.js.map +1 -1
- package/out/graph/physics-core.d.ts +141 -0
- package/out/graph/physics-core.js +237 -0
- package/out/graph/physics-core.js.map +1 -0
- package/out/headless-index-service.d.ts +6 -23
- package/out/headless-index-service.js +5 -171
- package/out/headless-index-service.js.map +1 -1
- package/out/index-store/base-registry.d.ts +57 -0
- package/out/index-store/base-registry.js +192 -0
- package/out/index-store/base-registry.js.map +1 -0
- package/out/index-store/index-diagnostics-store.d.ts +72 -0
- package/out/index-store/index-diagnostics-store.js +238 -0
- package/out/index-store/index-diagnostics-store.js.map +1 -0
- package/out/index-store/index-file-error.d.ts +16 -0
- package/out/index-store/index-file-error.js +27 -0
- package/out/index-store/index-file-error.js.map +1 -0
- package/out/index-store/index-parse-issues.d.ts +9 -0
- package/out/index-store/index-parse-issues.js +62 -0
- package/out/index-store/index-parse-issues.js.map +1 -0
- package/out/index-store/index-status.d.ts +20 -0
- package/out/index-store/index-status.js +2 -0
- package/out/index-store/index-status.js.map +1 -0
- package/out/index-store/overview-coverage.d.ts +23 -0
- package/out/index-store/overview-coverage.js +254 -0
- package/out/index-store/overview-coverage.js.map +1 -0
- package/out/index-store/schema.d.ts +1 -1
- package/out/index-store/schema.js +4 -1
- package/out/index-store/schema.js.map +1 -1
- package/out/index-store/sqlite-store.d.ts +31 -2
- package/out/index-store/sqlite-store.js +152 -13
- package/out/index-store/sqlite-store.js.map +1 -1
- package/out/index-store/webview-table-queries.d.ts +65 -1
- package/out/index-store/webview-table-queries.js +188 -26
- package/out/index-store/webview-table-queries.js.map +1 -1
- package/out/index-store/workspace-index-file.d.ts +27 -0
- package/out/index-store/workspace-index-file.js +98 -0
- package/out/index-store/workspace-index-file.js.map +1 -0
- package/out/index-store/workspace-index-sync.d.ts +53 -0
- package/out/index-store/workspace-index-sync.js +164 -0
- package/out/index-store/workspace-index-sync.js.map +1 -0
- package/out/index-store/workspace-index.d.ts +80 -0
- package/out/index-store/workspace-index.js +525 -0
- package/out/index-store/workspace-index.js.map +1 -0
- package/out/index-store/workspace-mtime.d.ts +14 -0
- package/out/index-store/workspace-mtime.js +56 -0
- package/out/index-store/workspace-mtime.js.map +1 -0
- package/out/index.d.ts +25 -6
- package/out/index.js +12 -3
- package/out/index.js.map +1 -1
- package/package.json +7 -2
|
@@ -9,7 +9,7 @@ import { BASE_MIGRATIONS, SCHEMA_VERSION, VERSION_MIGRATIONS } from './schema.js
|
|
|
9
9
|
import { BLOCKING_STATUSES, ideaStatus, ideaTags, parseAttributes } from '../core/types.js';
|
|
10
10
|
import { resolveReferencedFilePath } from '../core/file-reference-resolve.js';
|
|
11
11
|
import { buildGraphTruncationOrderClause } from './webview-graph-queries.js';
|
|
12
|
-
import { attributeValuesForKeys, buildIdeasetsOrderClause, buildIdeasetsWhereClause, buildIdeasOrderClause, buildIdeasWhereClause, buildReferencesOrderClause, buildReferencesWhereClause } from './webview-table-queries.js';
|
|
12
|
+
import { aggregateAttributesFromRows, attributeValuesForKeys, buildIdeasetsOrderClause, buildIdeasetsWhereClause, buildIdeasOrderClause, buildIdeasWhereClause, buildReferencesOrderClause, buildReferencesWhereClause, filterAndPageAttributes } from './webview-table-queries.js';
|
|
13
13
|
import { buildGraphFilterWhereClause } from './webview-graph-queries.js';
|
|
14
14
|
export class SqliteIndexStore {
|
|
15
15
|
constructor(db) {
|
|
@@ -43,9 +43,31 @@ export class SqliteIndexStore {
|
|
|
43
43
|
const row = await get(this.db, 'SELECT content_hash FROM documents WHERE file_uri = ?', fileUri);
|
|
44
44
|
return row?.content_hash;
|
|
45
45
|
}
|
|
46
|
-
async
|
|
46
|
+
async getDocumentMtimeMs(fileUri) {
|
|
47
|
+
const row = await get(this.db, 'SELECT mtime_ms FROM documents WHERE file_uri = ?', fileUri);
|
|
48
|
+
return row?.mtime_ms == null ? undefined : row.mtime_ms;
|
|
49
|
+
}
|
|
50
|
+
async updateDocumentMtime(fileUri, mtimeMs) {
|
|
51
|
+
await run(this.db, `UPDATE documents SET mtime_ms = ?, indexed_at = datetime('now') WHERE file_uri = ?`, mtimeMs, fileUri);
|
|
52
|
+
}
|
|
53
|
+
async listDocumentMtimes() {
|
|
54
|
+
const rows = await all(this.db, 'SELECT file_uri, mtime_ms FROM documents');
|
|
55
|
+
const result = new Map();
|
|
56
|
+
for (const row of rows) {
|
|
57
|
+
result.set(row.file_uri, row.mtime_ms == null ? undefined : row.mtime_ms);
|
|
58
|
+
}
|
|
59
|
+
return result;
|
|
60
|
+
}
|
|
61
|
+
async upsertDocument(fileUri, contentHash, ideas, edges, mtimeMs) {
|
|
47
62
|
await run(this.db, 'BEGIN');
|
|
48
63
|
try {
|
|
64
|
+
// Preserve analyser-populated git dates across delete+reinsert reindex.
|
|
65
|
+
const existingGit = await all(this.db, `
|
|
66
|
+
SELECT id, git_created_at, git_modified_at
|
|
67
|
+
FROM ideas
|
|
68
|
+
WHERE file_uri = ?
|
|
69
|
+
`, fileUri);
|
|
70
|
+
const gitById = new Map(existingGit.map(row => [row.id, row]));
|
|
49
71
|
await run(this.db, 'DELETE FROM edges WHERE source_id IN (SELECT id FROM ideas WHERE file_uri = ?)', fileUri);
|
|
50
72
|
await run(this.db, 'DELETE FROM ideas WHERE file_uri = ?', fileUri);
|
|
51
73
|
const insertIdeaSql = `
|
|
@@ -58,7 +80,8 @@ export class SqliteIndexStore {
|
|
|
58
80
|
)
|
|
59
81
|
`;
|
|
60
82
|
for (const idea of ideas) {
|
|
61
|
-
|
|
83
|
+
const previous = gitById.get(idea.id);
|
|
84
|
+
await run(this.db, insertIdeaSql, idea.id, idea.name, idea.kind, idea.fileUri, idea.lineStart, idea.lineEnd, idea.summary, idea.attributesJson, idea.contentHash, idea.gitCreatedAt ?? previous?.git_created_at ?? null, idea.gitModifiedAt ?? previous?.git_modified_at ?? null);
|
|
62
85
|
}
|
|
63
86
|
const insertEdgeSql = `
|
|
64
87
|
INSERT OR IGNORE INTO edges (
|
|
@@ -71,12 +94,13 @@ export class SqliteIndexStore {
|
|
|
71
94
|
await run(this.db, insertEdgeSql, edge.id, edge.sourceId, edge.targetId ?? null, edge.targetFile ?? null, edge.kind, edge.label ?? null, edge.sourceLine ?? null, edge.snippet ?? null, edge.isResolved === false ? 0 : 1);
|
|
72
95
|
}
|
|
73
96
|
await run(this.db, `
|
|
74
|
-
INSERT INTO documents (file_uri, content_hash, indexed_at)
|
|
75
|
-
VALUES (?, ?, datetime('now'))
|
|
97
|
+
INSERT INTO documents (file_uri, content_hash, indexed_at, mtime_ms)
|
|
98
|
+
VALUES (?, ?, datetime('now'), ?)
|
|
76
99
|
ON CONFLICT(file_uri) DO UPDATE SET
|
|
77
100
|
content_hash = excluded.content_hash,
|
|
78
|
-
indexed_at = excluded.indexed_at
|
|
79
|
-
|
|
101
|
+
indexed_at = excluded.indexed_at,
|
|
102
|
+
mtime_ms = excluded.mtime_ms
|
|
103
|
+
`, fileUri, contentHash, mtimeMs ?? null);
|
|
80
104
|
await run(this.db, 'COMMIT');
|
|
81
105
|
}
|
|
82
106
|
catch (error) {
|
|
@@ -85,11 +109,20 @@ export class SqliteIndexStore {
|
|
|
85
109
|
}
|
|
86
110
|
}
|
|
87
111
|
async removeDocument(fileUri) {
|
|
112
|
+
await this.removeDocuments([fileUri]);
|
|
113
|
+
}
|
|
114
|
+
/** Delete many document rows (and their ideas/edges) in one transaction. */
|
|
115
|
+
async removeDocuments(fileUris) {
|
|
116
|
+
if (fileUris.length === 0) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
88
119
|
await run(this.db, 'BEGIN');
|
|
89
120
|
try {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
121
|
+
for (const fileUri of fileUris) {
|
|
122
|
+
await run(this.db, 'DELETE FROM edges WHERE source_id IN (SELECT id FROM ideas WHERE file_uri = ?)', fileUri);
|
|
123
|
+
await run(this.db, 'DELETE FROM ideas WHERE file_uri = ?', fileUri);
|
|
124
|
+
await run(this.db, 'DELETE FROM documents WHERE file_uri = ?', fileUri);
|
|
125
|
+
}
|
|
93
126
|
await run(this.db, 'COMMIT');
|
|
94
127
|
}
|
|
95
128
|
catch (error) {
|
|
@@ -349,6 +382,17 @@ export class SqliteIndexStore {
|
|
|
349
382
|
const rows = await all(this.db, 'SELECT * FROM edges');
|
|
350
383
|
return rows.map(mapEdgeRow);
|
|
351
384
|
}
|
|
385
|
+
/** Outbound file_reference targets for coverage metrics (source id + authored path). */
|
|
386
|
+
async listFileReferenceTargets() {
|
|
387
|
+
const rows = await all(this.db, `SELECT source_id, target_file
|
|
388
|
+
FROM edges
|
|
389
|
+
WHERE target_file IS NOT NULL AND target_file != ''
|
|
390
|
+
AND (kind = 'file_reference' OR target_id IS NULL)`);
|
|
391
|
+
return rows.map(row => ({
|
|
392
|
+
sourceId: row.source_id,
|
|
393
|
+
targetFile: row.target_file
|
|
394
|
+
}));
|
|
395
|
+
}
|
|
352
396
|
async getAllIdeasRaw() {
|
|
353
397
|
const rows = await all(this.db, 'SELECT * FROM ideas');
|
|
354
398
|
return rows.map(mapIdeaRow);
|
|
@@ -430,6 +474,7 @@ export class SqliteIndexStore {
|
|
|
430
474
|
SELECT
|
|
431
475
|
i.id,
|
|
432
476
|
i.name,
|
|
477
|
+
i.kind,
|
|
433
478
|
i.file_uri,
|
|
434
479
|
i.line_start,
|
|
435
480
|
i.summary,
|
|
@@ -616,6 +661,7 @@ export class SqliteIndexStore {
|
|
|
616
661
|
const rows = await all(this.db, `
|
|
617
662
|
SELECT
|
|
618
663
|
e.kind,
|
|
664
|
+
e.source_id,
|
|
619
665
|
e.target_id,
|
|
620
666
|
e.target_file,
|
|
621
667
|
e.label,
|
|
@@ -633,6 +679,90 @@ export class SqliteIndexStore {
|
|
|
633
679
|
`, ...whereParams, query.pageSize, query.page * query.pageSize);
|
|
634
680
|
return rows.map(row => toReferenceTableRow(row));
|
|
635
681
|
}
|
|
682
|
+
/**
|
|
683
|
+
* Aggregate attribute keys for the Ideas Summary attributes tab.
|
|
684
|
+
* per ["../../../../reqlan rq/extension/module/ideas_summary/webview.rq".attributes_tab]
|
|
685
|
+
*/
|
|
686
|
+
async countAttributes(query) {
|
|
687
|
+
const { total } = await this.queryAttributesPage(query);
|
|
688
|
+
return total;
|
|
689
|
+
}
|
|
690
|
+
async listAttributesPage(query) {
|
|
691
|
+
const { rows } = await this.queryAttributesPage(query);
|
|
692
|
+
return rows;
|
|
693
|
+
}
|
|
694
|
+
async queryAttributesPage(query) {
|
|
695
|
+
const rows = await all(this.db, `
|
|
696
|
+
SELECT id, attributes_json
|
|
697
|
+
FROM ideas
|
|
698
|
+
WHERE kind != 'ideaset'
|
|
699
|
+
`);
|
|
700
|
+
return filterAndPageAttributes(aggregateAttributesFromRows(rows), query);
|
|
701
|
+
}
|
|
702
|
+
/**
|
|
703
|
+
* Idea ids that still need git date backfill for the Timeline tab.
|
|
704
|
+
* per ["../../../../reqlan rq/extension/module/ideas_summary/webview.rq".timeline_page]
|
|
705
|
+
*/
|
|
706
|
+
async listIdeaIdsMissingGitDates(limit = 40) {
|
|
707
|
+
const rows = await all(this.db, `
|
|
708
|
+
SELECT id
|
|
709
|
+
FROM ideas
|
|
710
|
+
WHERE kind != 'ideaset'
|
|
711
|
+
AND git_created_at IS NULL
|
|
712
|
+
AND git_modified_at IS NULL
|
|
713
|
+
ORDER BY file_uri ASC, line_start ASC
|
|
714
|
+
LIMIT ?
|
|
715
|
+
`, Math.max(1, Math.min(limit, 200)));
|
|
716
|
+
return rows.map(row => row.id);
|
|
717
|
+
}
|
|
718
|
+
/**
|
|
719
|
+
* Recent idea evolution events from indexed git dates for the Timeline tab.
|
|
720
|
+
* Emits separate created / modified entries when both timestamps exist and differ.
|
|
721
|
+
* per ["../../../../reqlan rq/extension/module/ideas_summary/webview.rq".timeline_page]
|
|
722
|
+
*/
|
|
723
|
+
async listRecentGitIdeaEvents(limit = 50) {
|
|
724
|
+
const rows = await all(this.db, `
|
|
725
|
+
SELECT id, name, kind, file_uri, line_start, summary, attributes_json,
|
|
726
|
+
git_created_at, git_modified_at
|
|
727
|
+
FROM ideas
|
|
728
|
+
WHERE kind != 'ideaset'
|
|
729
|
+
AND (git_modified_at IS NOT NULL OR git_created_at IS NOT NULL)
|
|
730
|
+
ORDER BY COALESCE(git_modified_at, git_created_at) DESC
|
|
731
|
+
LIMIT ?
|
|
732
|
+
`, Math.max(1, Math.min(limit * 2, 400)));
|
|
733
|
+
const events = [];
|
|
734
|
+
for (const row of rows) {
|
|
735
|
+
const attributes = parseAttributes(row.attributes_json);
|
|
736
|
+
const created = row.git_created_at ?? undefined;
|
|
737
|
+
const modified = row.git_modified_at ?? undefined;
|
|
738
|
+
const base = {
|
|
739
|
+
ideaId: row.id,
|
|
740
|
+
name: row.name,
|
|
741
|
+
fileUri: row.file_uri,
|
|
742
|
+
lineStart: row.line_start,
|
|
743
|
+
summary: row.summary || undefined,
|
|
744
|
+
status: ideaStatus(attributes),
|
|
745
|
+
ideaKind: row.kind,
|
|
746
|
+
tags: ideaTags(attributes),
|
|
747
|
+
gitCreatedAt: created,
|
|
748
|
+
gitModifiedAt: modified
|
|
749
|
+
};
|
|
750
|
+
if (modified && created && modified === created) {
|
|
751
|
+
events.push({ ...base, at: created, kind: 'created' });
|
|
752
|
+
}
|
|
753
|
+
else {
|
|
754
|
+
if (modified) {
|
|
755
|
+
events.push({ ...base, at: modified, kind: 'modified' });
|
|
756
|
+
}
|
|
757
|
+
if (created) {
|
|
758
|
+
events.push({ ...base, at: created, kind: 'created' });
|
|
759
|
+
}
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
return events
|
|
763
|
+
.sort((left, right) => Date.parse(right.at) - Date.parse(left.at))
|
|
764
|
+
.slice(0, Math.max(1, Math.min(limit, 200)));
|
|
765
|
+
}
|
|
636
766
|
toSummary(row) {
|
|
637
767
|
const attributes = parseAttributes(row.attributes_json);
|
|
638
768
|
return {
|
|
@@ -793,6 +923,7 @@ function toIdeaTableRow(row, attributeColumns, outboundReferences, inboundRefere
|
|
|
793
923
|
id: row.id,
|
|
794
924
|
title: row.name,
|
|
795
925
|
path: row.file_uri,
|
|
926
|
+
kind: row.kind === 'oneliner' ? 'oneliner' : 'block',
|
|
796
927
|
mainAttribute: row.summary || undefined,
|
|
797
928
|
otherAttributes: otherAttributeItems.join('; '),
|
|
798
929
|
otherAttributeItems,
|
|
@@ -851,9 +982,13 @@ function toOutgoingReferenceChip(row) {
|
|
|
851
982
|
const filterKey = row.target_id
|
|
852
983
|
? `outbound:idea:${row.target_id}`
|
|
853
984
|
: `outbound:file:${row.target_file ?? row.label ?? ''}`;
|
|
985
|
+
const fileUri = row.target_uri
|
|
986
|
+
?? (row.target_file
|
|
987
|
+
? resolveReferencedFilePath(row.target_file, row.source_id)
|
|
988
|
+
: row.source_uri);
|
|
854
989
|
return {
|
|
855
990
|
label: targetName,
|
|
856
|
-
fileUri
|
|
991
|
+
fileUri,
|
|
857
992
|
line: row.target_line ?? row.source_line,
|
|
858
993
|
direction: 'outbound',
|
|
859
994
|
filterKey
|
|
@@ -869,7 +1004,10 @@ function toIncomingReferenceChip(row) {
|
|
|
869
1004
|
};
|
|
870
1005
|
}
|
|
871
1006
|
function toReferenceTableRow(row) {
|
|
872
|
-
const
|
|
1007
|
+
const rawTargetPath = row.target_uri ?? row.target_file ?? '';
|
|
1008
|
+
const targetPath = !row.target_uri && row.target_file
|
|
1009
|
+
? resolveReferencedFilePath(row.target_file, row.source_id)
|
|
1010
|
+
: rawTargetPath;
|
|
873
1011
|
const targetName = row.target_name ?? row.label ?? row.target_file ?? '—';
|
|
874
1012
|
return {
|
|
875
1013
|
sourcePath: row.source_uri,
|
|
@@ -879,7 +1017,8 @@ function toReferenceTableRow(row) {
|
|
|
879
1017
|
isInRq: row.target_id !== null,
|
|
880
1018
|
referenceType: toReferenceViewType(row.kind),
|
|
881
1019
|
sourceFileUri: row.source_uri,
|
|
882
|
-
sourceLineStart: row.source_line
|
|
1020
|
+
sourceLineStart: row.source_line,
|
|
1021
|
+
targetFileUri: targetPath || undefined
|
|
883
1022
|
};
|
|
884
1023
|
}
|
|
885
1024
|
function toReferenceViewType(kind) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-store.js","sourceRoot":"","sources":["../../src/index-store/sqlite-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sqlite-store.js","sourceRoot":"","sources":["../../src/index-store/sqlite-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UI-SQL helpers for Ideas Summary table queries.
|
|
3
|
+
* per ["../../../../reqlan rq/extension/module/ideas_summary/webview.rq".table_column_filters]
|
|
4
|
+
* per ["../../../../reqlan rq/extension/module/ideas_summary/webview.rq".group_by_type]
|
|
5
|
+
* per ["../../../../reqlan rq/extension/module/ideas_summary/webview.rq".attributes_tab]
|
|
6
|
+
*/
|
|
1
7
|
import type { IdeaAttributeMap } from '../core/types.js';
|
|
2
8
|
export type SortDirection = 'asc' | 'desc';
|
|
3
|
-
export type IdeasSortColumn = 'title' | 'path' | 'body' | 'outRefs' | 'inRefs' | `attr:${string}`;
|
|
9
|
+
export type IdeasSortColumn = 'title' | 'path' | 'body' | 'kind' | 'outRefs' | 'inRefs' | `attr:${string}`;
|
|
4
10
|
export interface ReferenceFilter {
|
|
5
11
|
direction: 'inbound' | 'outbound';
|
|
6
12
|
filterKey: string;
|
|
7
13
|
label: string;
|
|
8
14
|
}
|
|
15
|
+
/** Per-column filter: text substring and/or selected enum values. */
|
|
16
|
+
export interface ColumnFilter {
|
|
17
|
+
column: string;
|
|
18
|
+
text?: string;
|
|
19
|
+
selected?: string[];
|
|
20
|
+
}
|
|
21
|
+
export type IdeasGroupBy = 'kind';
|
|
22
|
+
export type ReferencesGroupBy = 'type';
|
|
9
23
|
export interface IdeasTableQuery {
|
|
10
24
|
page: number;
|
|
11
25
|
pageSize: number;
|
|
@@ -14,6 +28,8 @@ export interface IdeasTableQuery {
|
|
|
14
28
|
sortDir?: SortDirection;
|
|
15
29
|
attributeColumns: string[];
|
|
16
30
|
referenceFilters: ReferenceFilter[];
|
|
31
|
+
columnFilters?: ColumnFilter[];
|
|
32
|
+
groupBy?: IdeasGroupBy;
|
|
17
33
|
}
|
|
18
34
|
export type IdeasetsSortColumn = 'name' | 'path' | 'kind' | 'members';
|
|
19
35
|
export interface IdeasetsTableQuery {
|
|
@@ -22,6 +38,7 @@ export interface IdeasetsTableQuery {
|
|
|
22
38
|
search?: string;
|
|
23
39
|
sortBy?: IdeasetsSortColumn;
|
|
24
40
|
sortDir?: SortDirection;
|
|
41
|
+
columnFilters?: ColumnFilter[];
|
|
25
42
|
}
|
|
26
43
|
export type ReferencesSortColumn = 'source' | 'target' | 'inRq' | 'type';
|
|
27
44
|
export interface ReferencesTableQuery {
|
|
@@ -30,12 +47,51 @@ export interface ReferencesTableQuery {
|
|
|
30
47
|
search?: string;
|
|
31
48
|
sortBy?: ReferencesSortColumn;
|
|
32
49
|
sortDir?: SortDirection;
|
|
50
|
+
columnFilters?: ColumnFilter[];
|
|
51
|
+
groupBy?: ReferencesGroupBy;
|
|
52
|
+
}
|
|
53
|
+
export type AttributesSortColumn = 'key' | 'ideaCount' | 'valueCount';
|
|
54
|
+
export interface AttributesTableQuery {
|
|
55
|
+
page: number;
|
|
56
|
+
pageSize: number;
|
|
57
|
+
search?: string;
|
|
58
|
+
sortBy?: AttributesSortColumn;
|
|
59
|
+
sortDir?: SortDirection;
|
|
60
|
+
columnFilters?: ColumnFilter[];
|
|
61
|
+
}
|
|
62
|
+
export interface AttributeTableRow {
|
|
63
|
+
key: string;
|
|
64
|
+
ideaCount: number;
|
|
65
|
+
valueCount: number;
|
|
66
|
+
sampleValues: string[];
|
|
67
|
+
}
|
|
68
|
+
/** Indexed git-date event for Ideas Summary Timeline (idea evolution). */
|
|
69
|
+
export interface GitIdeaTimelineEvent {
|
|
70
|
+
ideaId: string;
|
|
71
|
+
name: string;
|
|
72
|
+
fileUri: string;
|
|
73
|
+
lineStart: number;
|
|
74
|
+
at: string;
|
|
75
|
+
kind: 'created' | 'modified';
|
|
76
|
+
summary?: string;
|
|
77
|
+
status?: string;
|
|
78
|
+
ideaKind?: string;
|
|
79
|
+
tags?: string[];
|
|
80
|
+
gitCreatedAt?: string;
|
|
81
|
+
gitModifiedAt?: string;
|
|
82
|
+
}
|
|
83
|
+
export interface AttributeAggregate {
|
|
84
|
+
key: string;
|
|
85
|
+
ideaIds: Set<string>;
|
|
86
|
+
values: Map<string, number>;
|
|
33
87
|
}
|
|
34
88
|
export declare function attributeJsonPath(key: string): string;
|
|
35
89
|
export declare function attributeKeyFromChipItem(item: string): string;
|
|
36
90
|
export declare function formatAttributeValue(value: string | string[] | boolean | undefined): string;
|
|
37
91
|
export declare function attributeValuesForKeys(attributesJson: string, keys: string[]): Record<string, string>;
|
|
38
92
|
export declare function hasMeaningfulAttribute(attributes: IdeaAttributeMap, key: string): boolean;
|
|
93
|
+
/** Map References table view types back to edge kinds for SQL filters. */
|
|
94
|
+
export declare function edgeKindsForReferenceViewTypes(types: string[]): string[];
|
|
39
95
|
export declare function buildIdeasWhereClause(query: IdeasTableQuery): {
|
|
40
96
|
sql: string;
|
|
41
97
|
params: unknown[];
|
|
@@ -55,3 +111,11 @@ export declare function buildReferenceFilterClause(filterKey: string): {
|
|
|
55
111
|
sql: string;
|
|
56
112
|
params: unknown[];
|
|
57
113
|
};
|
|
114
|
+
export declare function aggregateAttributesFromRows(rows: Array<{
|
|
115
|
+
id: string;
|
|
116
|
+
attributes_json: string;
|
|
117
|
+
}>): AttributeAggregate[];
|
|
118
|
+
export declare function filterAndPageAttributes(aggregates: AttributeAggregate[], query: AttributesTableQuery): {
|
|
119
|
+
total: number;
|
|
120
|
+
rows: AttributeTableRow[];
|
|
121
|
+
};
|