@powerhousedao/knowledge-note 1.0.2 → 1.0.4

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 (62) hide show
  1. package/README.md +359 -122
  2. package/dist/editors/knowledge-vault/components/DriveExplorer.d.ts.map +1 -1
  3. package/dist/editors/knowledge-vault/components/DriveExplorer.js +8 -2
  4. package/dist/editors/knowledge-vault/components/GraphView.d.ts.map +1 -1
  5. package/dist/editors/knowledge-vault/components/GraphView.js +210 -32
  6. package/dist/editors/knowledge-vault/components/NoteList.d.ts.map +1 -1
  7. package/dist/editors/knowledge-vault/components/NoteList.js +13 -16
  8. package/dist/editors/knowledge-vault/components/SearchView.d.ts +2 -0
  9. package/dist/editors/knowledge-vault/components/SearchView.d.ts.map +1 -0
  10. package/dist/editors/knowledge-vault/components/SearchView.js +96 -0
  11. package/dist/editors/knowledge-vault/hooks/use-drive-init.d.ts.map +1 -1
  12. package/dist/editors/knowledge-vault/hooks/use-drive-init.js +0 -2
  13. package/dist/editors/knowledge-vault/hooks/use-graph-search.d.ts +25 -0
  14. package/dist/editors/knowledge-vault/hooks/use-graph-search.d.ts.map +1 -0
  15. package/dist/editors/knowledge-vault/hooks/use-graph-search.js +198 -0
  16. package/dist/package.json +3 -2
  17. package/dist/processors/factory.d.ts.map +1 -1
  18. package/dist/processors/factory.js +0 -3
  19. package/dist/processors/graph-indexer/embedder.d.ts +5 -0
  20. package/dist/processors/graph-indexer/embedder.d.ts.map +1 -0
  21. package/dist/processors/graph-indexer/embedder.js +27 -0
  22. package/dist/processors/graph-indexer/embedding-store.d.ts +11 -0
  23. package/dist/processors/graph-indexer/embedding-store.d.ts.map +1 -0
  24. package/dist/processors/graph-indexer/embedding-store.js +70 -0
  25. package/dist/processors/graph-indexer/index.d.ts.map +1 -1
  26. package/dist/processors/graph-indexer/index.js +53 -8
  27. package/dist/processors/graph-indexer/migrations.d.ts.map +1 -1
  28. package/dist/processors/graph-indexer/migrations.js +35 -0
  29. package/dist/processors/graph-indexer/query.d.ts +21 -0
  30. package/dist/processors/graph-indexer/query.d.ts.map +1 -1
  31. package/dist/processors/graph-indexer/query.js +154 -13
  32. package/dist/processors/graph-indexer/schema.d.ts +11 -0
  33. package/dist/processors/graph-indexer/schema.d.ts.map +1 -1
  34. package/dist/style.css +130 -0
  35. package/dist/subgraphs/index.d.ts +0 -1
  36. package/dist/subgraphs/index.d.ts.map +1 -1
  37. package/dist/subgraphs/index.js +0 -1
  38. package/dist/subgraphs/knowledge-graph/subgraph.d.ts +348 -24
  39. package/dist/subgraphs/knowledge-graph/subgraph.d.ts.map +1 -1
  40. package/dist/subgraphs/knowledge-graph/subgraph.js +334 -20
  41. package/package.json +4 -3
  42. package/dist/processors/methodology-indexer/factory.d.ts +0 -4
  43. package/dist/processors/methodology-indexer/factory.d.ts.map +0 -1
  44. package/dist/processors/methodology-indexer/factory.js +0 -23
  45. package/dist/processors/methodology-indexer/index.d.ts +0 -11
  46. package/dist/processors/methodology-indexer/index.d.ts.map +0 -1
  47. package/dist/processors/methodology-indexer/index.js +0 -116
  48. package/dist/processors/methodology-indexer/migrations.d.ts +0 -4
  49. package/dist/processors/methodology-indexer/migrations.d.ts.map +0 -1
  50. package/dist/processors/methodology-indexer/migrations.js +0 -39
  51. package/dist/processors/methodology-indexer/query.d.ts +0 -35
  52. package/dist/processors/methodology-indexer/query.d.ts.map +0 -1
  53. package/dist/processors/methodology-indexer/query.js +0 -114
  54. package/dist/processors/methodology-indexer/schema.d.ts +0 -22
  55. package/dist/processors/methodology-indexer/schema.d.ts.map +0 -1
  56. package/dist/processors/methodology-indexer/schema.js +0 -1
  57. package/dist/subgraphs/methodology/index.d.ts +0 -2
  58. package/dist/subgraphs/methodology/index.d.ts.map +0 -1
  59. package/dist/subgraphs/methodology/index.js +0 -1
  60. package/dist/subgraphs/methodology/subgraph.d.ts +0 -47
  61. package/dist/subgraphs/methodology/subgraph.d.ts.map +0 -1
  62. package/dist/subgraphs/methodology/subgraph.js +0 -100
@@ -1,3 +1,4 @@
1
+ import { sql } from "kysely";
1
2
  function rowToNode(row) {
2
3
  return {
3
4
  id: row.id,
@@ -6,6 +7,10 @@ function rowToNode(row) {
6
7
  description: row.description,
7
8
  noteType: row.note_type,
8
9
  status: row.status,
10
+ content: row.content,
11
+ author: row.author,
12
+ sourceOrigin: row.source_origin,
13
+ createdAt: row.created_at,
9
14
  updatedAt: row.updated_at,
10
15
  };
11
16
  }
@@ -55,14 +60,24 @@ export function createGraphQuery(db) {
55
60
  return rows.map(rowToNode);
56
61
  },
57
62
  async stats() {
58
- const nodes = await db.selectFrom("graph_nodes").selectAll().execute();
59
- const edges = await db.selectFrom("graph_edges").selectAll().execute();
60
- const targetIds = new Set(edges.map((e) => e.target_document_id));
61
- const orphanCount = nodes.filter((n) => !targetIds.has(n.document_id)).length;
63
+ const nodeCountResult = await db
64
+ .selectFrom("graph_nodes")
65
+ .select(sql `count(*)`.as("cnt"))
66
+ .executeTakeFirstOrThrow();
67
+ const edgeCountResult = await db
68
+ .selectFrom("graph_edges")
69
+ .select(sql `count(*)`.as("cnt"))
70
+ .executeTakeFirstOrThrow();
71
+ // Orphans: nodes not targeted by any edge
72
+ const orphanResult = await db
73
+ .selectFrom("graph_nodes")
74
+ .select(sql `count(*)`.as("cnt"))
75
+ .where("document_id", "not in", db.selectFrom("graph_edges").select("target_document_id"))
76
+ .executeTakeFirstOrThrow();
62
77
  return {
63
- nodeCount: nodes.length,
64
- edgeCount: edges.length,
65
- orphanCount,
78
+ nodeCount: Number(nodeCountResult.cnt),
79
+ edgeCount: Number(edgeCountResult.cnt),
80
+ orphanCount: Number(orphanResult.cnt),
66
81
  };
67
82
  },
68
83
  async connections(documentId, maxDepth = 2) {
@@ -110,11 +125,19 @@ export function createGraphQuery(db) {
110
125
  return rows.map(rowToEdge);
111
126
  },
112
127
  async density() {
113
- const nodes = await db.selectFrom("graph_nodes").selectAll().execute();
114
- const edges = await db.selectFrom("graph_edges").selectAll().execute();
115
- if (nodes.length <= 1)
128
+ const nodeCountResult = await db
129
+ .selectFrom("graph_nodes")
130
+ .select(sql `count(*)`.as("cnt"))
131
+ .executeTakeFirstOrThrow();
132
+ const edgeCountResult = await db
133
+ .selectFrom("graph_edges")
134
+ .select(sql `count(*)`.as("cnt"))
135
+ .executeTakeFirstOrThrow();
136
+ const nodeCount = Number(nodeCountResult.cnt);
137
+ const edgeCount = Number(edgeCountResult.cnt);
138
+ if (nodeCount <= 1)
116
139
  return 0;
117
- return edges.length / (nodes.length * (nodes.length - 1));
140
+ return edgeCount / (nodeCount * (nodeCount - 1));
118
141
  },
119
142
  async searchNodes(query, limit = 50) {
120
143
  const q = `%${query.toLowerCase()}%`;
@@ -142,7 +165,7 @@ export function createGraphQuery(db) {
142
165
  const edges = await db.selectFrom("graph_edges").selectAll().execute();
143
166
  const nodeRows = await db.selectFrom("graph_nodes").selectAll().execute();
144
167
  const nodeMap = new Map(nodeRows.map((n) => [n.document_id, rowToNode(n)]));
145
- // Build incoming map: target [source1, source2, ...]
168
+ // Build incoming map: target -> [source1, source2, ...]
146
169
  const incoming = new Map();
147
170
  const edgeSet = new Set();
148
171
  for (const e of edges) {
@@ -162,7 +185,7 @@ export function createGraphQuery(db) {
162
185
  for (let j = i + 1; j < sources.length && results.length < limit; j++) {
163
186
  const aId = sources[i];
164
187
  const bId = sources[j];
165
- // Check if AB or BA exists
188
+ // Check if A->B or B->A exists
166
189
  if (!edgeSet.has(`${aId}->${bId}`) &&
167
190
  !edgeSet.has(`${bId}->${aId}`)) {
168
191
  const a = nodeMap.get(aId);
@@ -231,5 +254,123 @@ export function createGraphQuery(db) {
231
254
  }
232
255
  return bridgeNodes;
233
256
  },
257
+ // --- Phase 1: topics, content, provenance queries ---
258
+ async topicStats() {
259
+ const rows = await db
260
+ .selectFrom("graph_topics")
261
+ .select(["name"])
262
+ .select(sql `count(*)`.as("note_count"))
263
+ .groupBy("name")
264
+ .orderBy(sql `count(*)`, "desc")
265
+ .execute();
266
+ return rows.map((r) => ({
267
+ name: r.name,
268
+ noteCount: Number(r.note_count),
269
+ }));
270
+ },
271
+ async topicsForNode(documentId) {
272
+ const rows = await db
273
+ .selectFrom("graph_topics")
274
+ .where("document_id", "=", documentId)
275
+ .select("name")
276
+ .execute();
277
+ return rows.map((r) => r.name);
278
+ },
279
+ async nodesByTopic(topic) {
280
+ const rows = await db
281
+ .selectFrom("graph_nodes")
282
+ .innerJoin("graph_topics", "graph_nodes.document_id", "graph_topics.document_id")
283
+ .where("graph_topics.name", "=", topic)
284
+ .selectAll("graph_nodes")
285
+ .execute();
286
+ return rows.map(rowToNode);
287
+ },
288
+ async relatedByTopic(documentId, limit = 10) {
289
+ // Get topics of the source document
290
+ const sourceTopics = await db
291
+ .selectFrom("graph_topics")
292
+ .where("document_id", "=", documentId)
293
+ .select("name")
294
+ .execute();
295
+ if (sourceTopics.length === 0)
296
+ return [];
297
+ const topicNames = sourceTopics.map((t) => t.name);
298
+ // Find other documents sharing those topics
299
+ const rows = await db
300
+ .selectFrom("graph_topics")
301
+ .where("document_id", "!=", documentId)
302
+ .where("name", "in", topicNames)
303
+ .select(["document_id", "name"])
304
+ .execute();
305
+ // Group by document_id
306
+ const docTopics = new Map();
307
+ for (const row of rows) {
308
+ const existing = docTopics.get(row.document_id) ?? [];
309
+ existing.push(row.name);
310
+ docTopics.set(row.document_id, existing);
311
+ }
312
+ // Sort by shared topic count descending
313
+ const sorted = [...docTopics.entries()]
314
+ .sort((a, b) => b[1].length - a[1].length)
315
+ .slice(0, limit);
316
+ const results = [];
317
+ for (const [docId, shared] of sorted) {
318
+ const node = await db
319
+ .selectFrom("graph_nodes")
320
+ .where("document_id", "=", docId)
321
+ .selectAll()
322
+ .executeTakeFirst();
323
+ if (node) {
324
+ results.push({
325
+ node: rowToNode(node),
326
+ sharedTopics: shared,
327
+ sharedTopicCount: shared.length,
328
+ });
329
+ }
330
+ }
331
+ return results;
332
+ },
333
+ async fullSearch(query, limit = 50) {
334
+ const q = `%${query.toLowerCase()}%`;
335
+ const rows = await db
336
+ .selectFrom("graph_nodes")
337
+ .where((eb) => eb.or([
338
+ eb(eb.fn("lower", ["title"]), "like", q),
339
+ eb(eb.fn("lower", ["description"]), "like", q),
340
+ eb(eb.fn("lower", ["content"]), "like", q),
341
+ ]))
342
+ .selectAll()
343
+ .limit(limit)
344
+ .execute();
345
+ return rows.map(rowToNode);
346
+ },
347
+ async nodesByAuthor(author) {
348
+ const rows = await db
349
+ .selectFrom("graph_nodes")
350
+ .where("author", "=", author)
351
+ .selectAll()
352
+ .execute();
353
+ return rows.map(rowToNode);
354
+ },
355
+ async nodesByOrigin(origin) {
356
+ const rows = await db
357
+ .selectFrom("graph_nodes")
358
+ .where("source_origin", "=", origin)
359
+ .selectAll()
360
+ .execute();
361
+ return rows.map(rowToNode);
362
+ },
363
+ async recentNodes(limit = 20, since) {
364
+ let query = db
365
+ .selectFrom("graph_nodes")
366
+ .selectAll()
367
+ .orderBy("created_at", "desc")
368
+ .limit(limit);
369
+ if (since) {
370
+ query = query.where("created_at", ">", since);
371
+ }
372
+ const rows = await query.execute();
373
+ return rows.map(rowToNode);
374
+ },
234
375
  };
235
376
  }
@@ -5,6 +5,16 @@ export interface GraphNode {
5
5
  description: string | null;
6
6
  note_type: string | null;
7
7
  status: string | null;
8
+ content: string | null;
9
+ author: string | null;
10
+ source_origin: string | null;
11
+ created_at: string | null;
12
+ updated_at: string;
13
+ }
14
+ export interface GraphTopic {
15
+ id: string;
16
+ document_id: string;
17
+ name: string;
8
18
  updated_at: string;
9
19
  }
10
20
  export interface GraphEdge {
@@ -18,5 +28,6 @@ export interface GraphEdge {
18
28
  export interface DB {
19
29
  graph_nodes: GraphNode;
20
30
  graph_edges: GraphEdge;
31
+ graph_topics: GraphTopic;
21
32
  }
22
33
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../processors/graph-indexer/schema.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,EAAE;IACjB,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,SAAS,CAAC;CACxB"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../processors/graph-indexer/schema.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,EAAE;IACjB,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,SAAS,CAAC;IACvB,YAAY,EAAE,UAAU,CAAC;CAC1B"}
package/dist/style.css CHANGED
@@ -51,6 +51,7 @@
51
51
  --color-black: hsl(0 0% 0%);
52
52
  --color-white: hsl(0 0% 100%);
53
53
  --spacing: 0.25rem;
54
+ --container-md: 28rem;
54
55
  --container-2xl: 42rem;
55
56
  --container-3xl: 48rem;
56
57
  --container-4xl: 56rem;
@@ -239,6 +240,9 @@
239
240
  .pointer-events-none {
240
241
  pointer-events: none;
241
242
  }
243
+ .collapse {
244
+ visibility: collapse;
245
+ }
242
246
  .invisible {
243
247
  visibility: hidden;
244
248
  }
@@ -257,6 +261,9 @@
257
261
  .static {
258
262
  position: static;
259
263
  }
264
+ .sticky {
265
+ position: sticky;
266
+ }
260
267
  .inset-0 {
261
268
  inset: calc(var(--spacing) * 0);
262
269
  }
@@ -269,12 +276,18 @@
269
276
  .top-0 {
270
277
  top: calc(var(--spacing) * 0);
271
278
  }
279
+ .top-1\/2 {
280
+ top: calc(1 / 2 * 100%);
281
+ }
272
282
  .top-4 {
273
283
  top: calc(var(--spacing) * 4);
274
284
  }
275
285
  .right-0 {
276
286
  right: calc(var(--spacing) * 0);
277
287
  }
288
+ .right-3 {
289
+ right: calc(var(--spacing) * 3);
290
+ }
278
291
  .right-4 {
279
292
  right: calc(var(--spacing) * 4);
280
293
  }
@@ -284,9 +297,15 @@
284
297
  .bottom-4 {
285
298
  bottom: calc(var(--spacing) * 4);
286
299
  }
300
+ .left-3 {
301
+ left: calc(var(--spacing) * 3);
302
+ }
287
303
  .left-4 {
288
304
  left: calc(var(--spacing) * 4);
289
305
  }
306
+ .isolate {
307
+ isolation: isolate;
308
+ }
290
309
  .z-10 {
291
310
  z-index: 10;
292
311
  }
@@ -371,6 +390,9 @@
371
390
  .mb-4 {
372
391
  margin-bottom: calc(var(--spacing) * 4);
373
392
  }
393
+ .mb-6 {
394
+ margin-bottom: calc(var(--spacing) * 6);
395
+ }
374
396
  .ml-0\.5 {
375
397
  margin-left: calc(var(--spacing) * 0.5);
376
398
  }
@@ -539,6 +561,9 @@
539
561
  .w-10 {
540
562
  width: calc(var(--spacing) * 10);
541
563
  }
564
+ .w-12 {
565
+ width: calc(var(--spacing) * 12);
566
+ }
542
567
  .w-16 {
543
568
  width: calc(var(--spacing) * 16);
544
569
  }
@@ -605,6 +630,9 @@
605
630
  .max-w-full {
606
631
  max-width: 100%;
607
632
  }
633
+ .max-w-md {
634
+ max-width: var(--container-md);
635
+ }
608
636
  .min-w-0 {
609
637
  min-width: calc(var(--spacing) * 0);
610
638
  }
@@ -614,12 +642,22 @@
614
642
  .flex-shrink-0 {
615
643
  flex-shrink: 0;
616
644
  }
645
+ .shrink {
646
+ flex-shrink: 1;
647
+ }
617
648
  .shrink-0 {
618
649
  flex-shrink: 0;
619
650
  }
651
+ .grow {
652
+ flex-grow: 1;
653
+ }
620
654
  .border-collapse {
621
655
  border-collapse: collapse;
622
656
  }
657
+ .-translate-y-1\/2 {
658
+ --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
659
+ translate: var(--tw-translate-x) var(--tw-translate-y);
660
+ }
623
661
  .rotate-90 {
624
662
  rotate: 90deg;
625
663
  }
@@ -856,6 +894,9 @@
856
894
  .border-\[\#cba6f7\]\/20 {
857
895
  border-color: color-mix(in oklab, #cba6f7 20%, transparent);
858
896
  }
897
+ .border-\[var\(--bai-border\)\] {
898
+ border-color: var(--bai-border);
899
+ }
859
900
  .border-amber-500\/30 {
860
901
  border-color: color-mix(in srgb, oklch(76.9% 0.188 70.08) 30%, transparent);
861
902
  @supports (color: color-mix(in lab, red, red)) {
@@ -946,6 +987,9 @@
946
987
  .bg-\[\#cba6f7\]\/10 {
947
988
  background-color: color-mix(in oklab, #cba6f7 10%, transparent);
948
989
  }
990
+ .bg-\[var\(--bai-surface\)\] {
991
+ background-color: var(--bai-surface);
992
+ }
949
993
  .bg-amber-400 {
950
994
  background-color: var(--color-amber-400);
951
995
  }
@@ -1081,6 +1125,9 @@
1081
1125
  background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
1082
1126
  }
1083
1127
  }
1128
+ .p-0\.5 {
1129
+ padding: calc(var(--spacing) * 0.5);
1130
+ }
1084
1131
  .p-1 {
1085
1132
  padding: calc(var(--spacing) * 1);
1086
1133
  }
@@ -1162,6 +1209,12 @@
1162
1209
  .pt-2 {
1163
1210
  padding-top: calc(var(--spacing) * 2);
1164
1211
  }
1212
+ .pt-16 {
1213
+ padding-top: calc(var(--spacing) * 16);
1214
+ }
1215
+ .pr-10 {
1216
+ padding-right: calc(var(--spacing) * 10);
1217
+ }
1165
1218
  .pb-1 {
1166
1219
  padding-bottom: calc(var(--spacing) * 1);
1167
1220
  }
@@ -1174,6 +1227,9 @@
1174
1227
  .pb-12 {
1175
1228
  padding-bottom: calc(var(--spacing) * 12);
1176
1229
  }
1230
+ .pl-10 {
1231
+ padding-left: calc(var(--spacing) * 10);
1232
+ }
1177
1233
  .pl-18 {
1178
1234
  padding-left: calc(var(--spacing) * 18);
1179
1235
  }
@@ -1265,6 +1321,9 @@
1265
1321
  .text-\[\#cba6f7\]\/40 {
1266
1322
  color: color-mix(in oklab, #cba6f7 40%, transparent);
1267
1323
  }
1324
+ .text-\[var\(--bai-text\)\] {
1325
+ color: var(--bai-text);
1326
+ }
1268
1327
  .text-amber-300 {
1269
1328
  color: var(--color-amber-300);
1270
1329
  }
@@ -1353,9 +1412,16 @@
1353
1412
  .opacity-0 {
1354
1413
  opacity: 0%;
1355
1414
  }
1415
+ .opacity-50 {
1416
+ opacity: 50%;
1417
+ }
1356
1418
  .opacity-60 {
1357
1419
  opacity: 60%;
1358
1420
  }
1421
+ .shadow {
1422
+ --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1423
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1424
+ }
1359
1425
  .shadow-2xl {
1360
1426
  --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
1361
1427
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -1364,6 +1430,10 @@
1364
1430
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
1365
1431
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1366
1432
  }
1433
+ .ring {
1434
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1435
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
1436
+ }
1367
1437
  .ring-1 {
1368
1438
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
1369
1439
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -1380,6 +1450,14 @@
1380
1450
  --tw-ring-color: color-mix(in oklab, var(--color-white) 5%, transparent);
1381
1451
  }
1382
1452
  }
1453
+ .outline {
1454
+ outline-style: var(--tw-outline-style);
1455
+ outline-width: 1px;
1456
+ }
1457
+ .blur {
1458
+ --tw-blur: blur(8px);
1459
+ filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1460
+ }
1383
1461
  .filter {
1384
1462
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
1385
1463
  }
@@ -1424,6 +1502,20 @@
1424
1502
  }
1425
1503
  }
1426
1504
  }
1505
+ .group-hover\:text-\[var\(--bai-accent\)\] {
1506
+ &:is(:where(.group):hover *) {
1507
+ @media (hover: hover) {
1508
+ color: var(--bai-accent);
1509
+ }
1510
+ }
1511
+ }
1512
+ .group-hover\:opacity-60 {
1513
+ &:is(:where(.group):hover *) {
1514
+ @media (hover: hover) {
1515
+ opacity: 60%;
1516
+ }
1517
+ }
1518
+ }
1427
1519
  .group-hover\:opacity-100 {
1428
1520
  &:is(:where(.group):hover *) {
1429
1521
  @media (hover: hover) {
@@ -1453,6 +1545,13 @@
1453
1545
  }
1454
1546
  }
1455
1547
  }
1548
+ .hover\:border-\[var\(--bai-accent\)\] {
1549
+ &:hover {
1550
+ @media (hover: hover) {
1551
+ border-color: var(--bai-accent);
1552
+ }
1553
+ }
1554
+ }
1456
1555
  .hover\:border-gray-600 {
1457
1556
  &:hover {
1458
1557
  @media (hover: hover) {
@@ -1474,6 +1573,13 @@
1474
1573
  }
1475
1574
  }
1476
1575
  }
1576
+ .hover\:bg-\[var\(--bai-hover\)\] {
1577
+ &:hover {
1578
+ @media (hover: hover) {
1579
+ background-color: var(--bai-hover);
1580
+ }
1581
+ }
1582
+ }
1477
1583
  .hover\:bg-amber-700 {
1478
1584
  &:hover {
1479
1585
  @media (hover: hover) {
@@ -1801,6 +1907,21 @@
1801
1907
  [data-bai-theme="dark"] #document-editor-context[data-document-type^="bai/"] hr {
1802
1908
  border-color: var(--bai-border) !important;
1803
1909
  }
1910
+ @property --tw-translate-x {
1911
+ syntax: "*";
1912
+ inherits: false;
1913
+ initial-value: 0;
1914
+ }
1915
+ @property --tw-translate-y {
1916
+ syntax: "*";
1917
+ inherits: false;
1918
+ initial-value: 0;
1919
+ }
1920
+ @property --tw-translate-z {
1921
+ syntax: "*";
1922
+ inherits: false;
1923
+ initial-value: 0;
1924
+ }
1804
1925
  @property --tw-rotate-x {
1805
1926
  syntax: "*";
1806
1927
  inherits: false;
@@ -1928,6 +2049,11 @@
1928
2049
  inherits: false;
1929
2050
  initial-value: 0 0 #0000;
1930
2051
  }
2052
+ @property --tw-outline-style {
2053
+ syntax: "*";
2054
+ inherits: false;
2055
+ initial-value: solid;
2056
+ }
1931
2057
  @property --tw-blur {
1932
2058
  syntax: "*";
1933
2059
  inherits: false;
@@ -2025,6 +2151,9 @@
2025
2151
  @layer properties {
2026
2152
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
2027
2153
  *, ::before, ::after, ::backdrop {
2154
+ --tw-translate-x: 0;
2155
+ --tw-translate-y: 0;
2156
+ --tw-translate-z: 0;
2028
2157
  --tw-rotate-x: initial;
2029
2158
  --tw-rotate-y: initial;
2030
2159
  --tw-rotate-z: initial;
@@ -2054,6 +2183,7 @@
2054
2183
  --tw-ring-offset-width: 0px;
2055
2184
  --tw-ring-offset-color: #fff;
2056
2185
  --tw-ring-offset-shadow: 0 0 #0000;
2186
+ --tw-outline-style: solid;
2057
2187
  --tw-blur: initial;
2058
2188
  --tw-brightness: initial;
2059
2189
  --tw-contrast: initial;
@@ -1,3 +1,2 @@
1
1
  export * as KnowledgeGraphSubgraph from "./knowledge-graph/index.js";
2
- export * as MethodologySubgraph from "./methodology/index.js";
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../subgraphs/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,mBAAmB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../subgraphs/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,sBAAsB,MAAM,4BAA4B,CAAC"}
@@ -1,2 +1 @@
1
1
  export * as KnowledgeGraphSubgraph from "./knowledge-graph/index.js";
2
- export * as MethodologySubgraph from "./methodology/index.js";