@manta-eu/react 0.2.0 → 0.3.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 (324) hide show
  1. package/dist/components/channel-icon/index.d.ts +1 -0
  2. package/dist/components/channel-icon/index.d.ts.map +1 -1
  3. package/dist/components/channel-icon/index.js +1 -1
  4. package/dist/components/channel-icon/index.js.map +1 -1
  5. package/dist/components/datastore-management/tree.d.ts +1 -1
  6. package/dist/components/datastore-management/tree.d.ts.map +1 -1
  7. package/dist/components/datastore-management/tree.js +5 -5
  8. package/dist/components/datastore-management/tree.js.map +1 -1
  9. package/dist/components/explain-fact/ExplainFact.js +3 -3
  10. package/dist/components/explain-fact/ExplainFact.js.map +1 -1
  11. package/dist/components/planning/ActioningView.d.ts +1 -2
  12. package/dist/components/planning/ActioningView.d.ts.map +1 -1
  13. package/dist/components/planning/ActioningView.js +19 -44
  14. package/dist/components/planning/ActioningView.js.map +1 -1
  15. package/dist/components/planning/ManualActionCard.d.ts +4 -0
  16. package/dist/components/planning/ManualActionCard.d.ts.map +1 -1
  17. package/dist/components/planning/ManualActionCard.js +7 -5
  18. package/dist/components/planning/ManualActionCard.js.map +1 -1
  19. package/dist/components/planning/ManualActionList.d.ts +4 -0
  20. package/dist/components/planning/ManualActionList.d.ts.map +1 -1
  21. package/dist/components/planning/ManualActionList.js +8 -2
  22. package/dist/components/planning/ManualActionList.js.map +1 -1
  23. package/dist/components/planning/actioning-view-utils.d.ts +9 -0
  24. package/dist/components/planning/actioning-view-utils.d.ts.map +1 -1
  25. package/dist/components/planning/actioning-view-utils.js +19 -1
  26. package/dist/components/planning/actioning-view-utils.js.map +1 -1
  27. package/dist/components/planning/plan-detail-utils.d.ts.map +1 -1
  28. package/dist/components/planning/plan-detail-utils.js +2 -0
  29. package/dist/components/planning/plan-detail-utils.js.map +1 -1
  30. package/dist/components/tool-invocation-card/ListRulesResultDisplay.d.ts +2 -2
  31. package/dist/components/tool-invocation-card/ListRulesResultDisplay.d.ts.map +1 -1
  32. package/dist/components/tool-invocation-card/ToolOutputRenderer.d.ts.map +1 -1
  33. package/dist/components/tool-invocation-card/ToolOutputRenderer.js +7 -4
  34. package/dist/components/tool-invocation-card/ToolOutputRenderer.js.map +1 -1
  35. package/dist/components/tool-invocation-card/types.d.ts +5 -5
  36. package/dist/components/tool-invocation-card/types.d.ts.map +1 -1
  37. package/dist/components/tool-invocation-card/types.js +5 -5
  38. package/dist/components/tool-invocation-card/types.js.map +1 -1
  39. package/dist/components/tooltip/index.d.ts +7 -0
  40. package/dist/components/tooltip/index.d.ts.map +1 -1
  41. package/dist/components/tooltip/index.js +10 -1
  42. package/dist/components/tooltip/index.js.map +1 -1
  43. package/dist/explain-fact/rule-presentation.js +2 -2
  44. package/dist/explain-fact/rule-presentation.js.map +1 -1
  45. package/dist/explain-fact/tree-model.js +2 -2
  46. package/dist/explain-fact/tree-model.js.map +1 -1
  47. package/dist/globals.css +19 -6
  48. package/dist/graph/entity-link.d.ts +14 -0
  49. package/dist/graph/entity-link.d.ts.map +1 -0
  50. package/dist/graph/entity-link.js +12 -0
  51. package/dist/graph/entity-link.js.map +1 -0
  52. package/dist/graph/graph-list-utils.d.ts +1 -0
  53. package/dist/graph/graph-list-utils.d.ts.map +1 -1
  54. package/dist/graph/graph-list-utils.js +1 -0
  55. package/dist/graph/graph-list-utils.js.map +1 -1
  56. package/dist/graph/graph-model.d.ts.map +1 -1
  57. package/dist/graph/graph-model.js +14 -5
  58. package/dist/graph/graph-model.js.map +1 -1
  59. package/dist/graph/nodes/BrandAssetAnalysisView.d.ts.map +1 -1
  60. package/dist/graph/nodes/BrandAssetAnalysisView.js +2 -1
  61. package/dist/graph/nodes/BrandAssetAnalysisView.js.map +1 -1
  62. package/dist/graph/nodes/BrandFontSuggestionView.d.ts.map +1 -1
  63. package/dist/graph/nodes/BrandFontSuggestionView.js +2 -1
  64. package/dist/graph/nodes/BrandFontSuggestionView.js.map +1 -1
  65. package/dist/graph/nodes/BrandGuidelinesView.js +1 -1
  66. package/dist/graph/nodes/BrandGuidelinesView.js.map +1 -1
  67. package/dist/graph/nodes/NodePropertyTable.d.ts +4 -2
  68. package/dist/graph/nodes/NodePropertyTable.d.ts.map +1 -1
  69. package/dist/graph/nodes/NodePropertyTable.js +12 -59
  70. package/dist/graph/nodes/NodePropertyTable.js.map +1 -1
  71. package/dist/graph/nodes/node-property-row.d.ts +30 -0
  72. package/dist/graph/nodes/node-property-row.d.ts.map +1 -0
  73. package/dist/graph/nodes/node-property-row.js +35 -0
  74. package/dist/graph/nodes/node-property-row.js.map +1 -0
  75. package/dist/graph/property-formatters.d.ts +1 -0
  76. package/dist/graph/property-formatters.d.ts.map +1 -1
  77. package/dist/graph/property-formatters.js +4 -1
  78. package/dist/graph/property-formatters.js.map +1 -1
  79. package/dist/graph/special-nodes/AttributeList.d.ts +27 -0
  80. package/dist/graph/special-nodes/AttributeList.d.ts.map +1 -0
  81. package/dist/graph/special-nodes/AttributeList.js +57 -0
  82. package/dist/graph/special-nodes/AttributeList.js.map +1 -0
  83. package/dist/graph/special-nodes/EntityPreview.d.ts +5 -0
  84. package/dist/graph/special-nodes/EntityPreview.d.ts.map +1 -0
  85. package/dist/graph/special-nodes/EntityPreview.js +19 -0
  86. package/dist/graph/special-nodes/EntityPreview.js.map +1 -0
  87. package/dist/graph/special-nodes/EntityValueChip.d.ts +11 -0
  88. package/dist/graph/special-nodes/EntityValueChip.d.ts.map +1 -0
  89. package/dist/graph/special-nodes/EntityValueChip.js +40 -0
  90. package/dist/graph/special-nodes/EntityValueChip.js.map +1 -0
  91. package/dist/graph/special-nodes/GenericView.d.ts +2 -1
  92. package/dist/graph/special-nodes/GenericView.d.ts.map +1 -1
  93. package/dist/graph/special-nodes/GenericView.js +23 -69
  94. package/dist/graph/special-nodes/GenericView.js.map +1 -1
  95. package/dist/graph/special-nodes/card-facts.d.ts +52 -0
  96. package/dist/graph/special-nodes/card-facts.d.ts.map +1 -0
  97. package/dist/graph/special-nodes/card-facts.js +189 -0
  98. package/dist/graph/special-nodes/card-facts.js.map +1 -0
  99. package/dist/graph/special-nodes/property-icons.d.ts +9 -0
  100. package/dist/graph/special-nodes/property-icons.d.ts.map +1 -0
  101. package/dist/graph/special-nodes/property-icons.js +39 -0
  102. package/dist/graph/special-nodes/property-icons.js.map +1 -0
  103. package/dist/graph/status-utils.d.ts +16 -0
  104. package/dist/graph/status-utils.d.ts.map +1 -1
  105. package/dist/graph/status-utils.js +35 -0
  106. package/dist/graph/status-utils.js.map +1 -1
  107. package/dist/graph/types.d.ts +5 -0
  108. package/dist/graph/types.d.ts.map +1 -1
  109. package/dist/hooks/use-approve-anyway.d.ts +12 -0
  110. package/dist/hooks/use-approve-anyway.d.ts.map +1 -0
  111. package/dist/hooks/use-approve-anyway.js +81 -0
  112. package/dist/hooks/use-approve-anyway.js.map +1 -0
  113. package/dist/hooks/use-connection-problems.d.ts.map +1 -1
  114. package/dist/hooks/useValidateActionPlan.d.ts.map +1 -1
  115. package/dist/ldo-ui.d.ts +2 -1
  116. package/dist/ldo-ui.d.ts.map +1 -1
  117. package/dist/ldo-ui.js +1 -0
  118. package/dist/ldo-ui.js.map +1 -1
  119. package/dist/lib/find-latest-staged-rule.js +1 -1
  120. package/dist/lib/find-latest-staged-rule.js.map +1 -1
  121. package/dist/lib/manual-actions.d.ts +2 -1
  122. package/dist/lib/manual-actions.d.ts.map +1 -1
  123. package/dist/lib/manual-actions.js +3 -2
  124. package/dist/lib/manual-actions.js.map +1 -1
  125. package/dist/lib/tool-icons.js +6 -6
  126. package/dist/lib/tool-icons.js.map +1 -1
  127. package/dist/lib/tool-names.d.ts.map +1 -1
  128. package/dist/lib/tool-names.js +0 -1
  129. package/dist/lib/tool-names.js.map +1 -1
  130. package/dist/ontology/skolem.js +2 -2
  131. package/dist/ontology/skolem.js.map +1 -1
  132. package/dist/providers/ActiveChatProvider.js +3 -1
  133. package/dist/providers/ActiveChatProvider.js.map +1 -1
  134. package/dist/providers/ChatManagerProvider.d.ts.map +1 -1
  135. package/dist/providers/ChatManagerProvider.js +3 -1
  136. package/dist/providers/ChatManagerProvider.js.map +1 -1
  137. package/dist/providers/KnowledgeGraphStateProvider.js +1 -1
  138. package/dist/providers/KnowledgeGraphStateProvider.js.map +1 -1
  139. package/dist/providers/chat-socket-auth.d.ts +7 -2
  140. package/dist/providers/chat-socket-auth.d.ts.map +1 -1
  141. package/dist/providers/chat-socket-auth.js +87 -16
  142. package/dist/providers/chat-socket-auth.js.map +1 -1
  143. package/dist/providers/index.d.ts.map +1 -1
  144. package/dist/providers/index.js +8 -1
  145. package/dist/providers/index.js.map +1 -1
  146. package/dist/routes/activity/detail/ActivityChanges.d.ts +2 -0
  147. package/dist/routes/activity/detail/ActivityChanges.d.ts.map +1 -1
  148. package/dist/routes/activity/detail/ActivityChanges.js +8 -7
  149. package/dist/routes/activity/detail/ActivityChanges.js.map +1 -1
  150. package/dist/routes/activity/detail/ActivityDetail.d.ts +1 -0
  151. package/dist/routes/activity/detail/ActivityDetail.d.ts.map +1 -1
  152. package/dist/routes/activity/detail/ActivityDetail.js +5 -4
  153. package/dist/routes/activity/detail/ActivityDetail.js.map +1 -1
  154. package/dist/routes/activity/detail/ActivityStepsRail.d.ts +1 -0
  155. package/dist/routes/activity/detail/ActivityStepsRail.d.ts.map +1 -1
  156. package/dist/routes/activity/detail/ActivityStepsRail.js +3 -2
  157. package/dist/routes/activity/detail/ActivityStepsRail.js.map +1 -1
  158. package/dist/routes/activity/detail/ActivityTimeline.js +2 -2
  159. package/dist/routes/activity/detail/ActivityTimeline.js.map +1 -1
  160. package/dist/routes/activity/detail/NoChangesMessage.d.ts +6 -0
  161. package/dist/routes/activity/detail/NoChangesMessage.d.ts.map +1 -0
  162. package/dist/routes/activity/detail/NoChangesMessage.js +10 -0
  163. package/dist/routes/activity/detail/NoChangesMessage.js.map +1 -0
  164. package/dist/routes/data-explorer/class-properties.js +2 -2
  165. package/dist/routes/data-explorer/class-properties.js.map +1 -1
  166. package/dist/routes/data-explorer/classes.js +2 -2
  167. package/dist/routes/data-explorer/classes.js.map +1 -1
  168. package/dist/routes/data-explorer/components/RawTriples.js +1 -1
  169. package/dist/routes/data-explorer/components/RawTriples.js.map +1 -1
  170. package/dist/routes/data-explorer/components/RecentTypes.js +1 -1
  171. package/dist/routes/data-explorer/components/RecentTypes.js.map +1 -1
  172. package/dist/routes/data-explorer/components/class-detail/Instances.js +1 -1
  173. package/dist/routes/data-explorer/components/class-detail/Instances.js.map +1 -1
  174. package/dist/routes/data-explorer/components/namespace-detail/NamespaceClassRow.js +1 -1
  175. package/dist/routes/data-explorer/components/namespace-detail/NamespaceClassRow.js.map +1 -1
  176. package/dist/routes/data-explorer/components/ontology-coverage/CoverageTermColumns.js +1 -1
  177. package/dist/routes/data-explorer/components/ontology-coverage/CoverageTermColumns.js.map +1 -1
  178. package/dist/routes/data-explorer/components/ontology-coverage/UnobservedRuleVocabulary.js +1 -1
  179. package/dist/routes/data-explorer/components/ontology-coverage/UnobservedRuleVocabulary.js.map +1 -1
  180. package/dist/routes/data-explorer/components/record-detail/ChatPreview.js +2 -2
  181. package/dist/routes/data-explorer/components/record-detail/ChatPreview.js.map +1 -1
  182. package/dist/routes/data-explorer/recents.js +1 -1
  183. package/dist/routes/data-explorer/recents.js.map +1 -1
  184. package/dist/routes/data-explorer/shapes.js +2 -2
  185. package/dist/routes/data-explorer/shapes.js.map +1 -1
  186. package/dist/routes/integrations/components/connect-forms/CanvaConnectForm.d.ts +3 -0
  187. package/dist/routes/integrations/components/connect-forms/CanvaConnectForm.d.ts.map +1 -0
  188. package/dist/routes/integrations/components/connect-forms/CanvaConnectForm.js +12 -0
  189. package/dist/routes/integrations/components/connect-forms/CanvaConnectForm.js.map +1 -0
  190. package/dist/routes/integrations/components/connect-forms/DataConnectionConnectForm.d.ts.map +1 -1
  191. package/dist/routes/integrations/components/connect-forms/DataConnectionConnectForm.js +13 -6
  192. package/dist/routes/integrations/components/connect-forms/DataConnectionConnectForm.js.map +1 -1
  193. package/dist/routes/integrations/components/connect-forms/data-connection-fields.d.ts +3 -0
  194. package/dist/routes/integrations/components/connect-forms/data-connection-fields.d.ts.map +1 -1
  195. package/dist/routes/integrations/components/connect-forms/data-connection-fields.js +9 -2
  196. package/dist/routes/integrations/components/connect-forms/data-connection-fields.js.map +1 -1
  197. package/dist/routes/integrations/connect-forms.d.ts +1 -0
  198. package/dist/routes/integrations/connect-forms.d.ts.map +1 -1
  199. package/dist/routes/integrations/connect-forms.js +1 -0
  200. package/dist/routes/integrations/connect-forms.js.map +1 -1
  201. package/dist/routes/integrations/connection-view.d.ts.map +1 -1
  202. package/dist/routes/integrations/connection-view.js +1 -0
  203. package/dist/routes/integrations/connection-view.js.map +1 -1
  204. package/dist/routes/integrations/types.d.ts +2 -1
  205. package/dist/routes/integrations/types.d.ts.map +1 -1
  206. package/dist/routes/integrations/types.js +1 -0
  207. package/dist/routes/integrations/types.js.map +1 -1
  208. package/dist/routes/plans/components/ActionPlanPage.d.ts.map +1 -1
  209. package/dist/routes/plans/components/ActionPlanPage.js +4 -7
  210. package/dist/routes/plans/components/ActionPlanPage.js.map +1 -1
  211. package/dist/routes/plans/components/PlanDetailRouteContent.d.ts.map +1 -1
  212. package/dist/routes/plans/components/PlanDetailRouteContent.js +2 -1
  213. package/dist/routes/plans/components/PlanDetailRouteContent.js.map +1 -1
  214. package/dist/routes/rules/hooks/useRuleFactsPreview.js +4 -4
  215. package/dist/routes/rules/hooks/useRuleFactsPreview.js.map +1 -1
  216. package/dist/shacl/form-appearance.d.ts +1 -1
  217. package/dist/shacl/form-appearance.d.ts.map +1 -1
  218. package/dist/shacl/form-appearance.js +1 -1
  219. package/dist/shacl/form-appearance.js.map +1 -1
  220. package/dist/shared/graph-derived-queries.js +2 -2
  221. package/dist/shared/graph-derived-queries.js.map +1 -1
  222. package/package.json +12 -7
  223. package/src/app-subpaths.json +1 -0
  224. package/src/components/channel-icon/index.tsx +1 -1
  225. package/src/components/datastore-management/tree.ts +5 -5
  226. package/src/components/explain-fact/ExplainFact.tsx +3 -3
  227. package/src/components/planning/ActioningView.tsx +62 -70
  228. package/src/components/planning/ManualActionCard.tsx +66 -14
  229. package/src/components/planning/ManualActionList.tsx +30 -11
  230. package/src/components/planning/actioning-view-utils.ts +27 -1
  231. package/src/components/planning/plan-detail-utils.tsx +2 -0
  232. package/src/components/tool-invocation-card/ListRulesResultDisplay.tsx +2 -2
  233. package/src/components/tool-invocation-card/ToolOutputRenderer.tsx +10 -8
  234. package/src/components/tool-invocation-card/types.ts +8 -8
  235. package/src/components/tooltip/index.tsx +35 -2
  236. package/src/explain-fact/rule-presentation.ts +2 -2
  237. package/src/explain-fact/tree-model.ts +2 -2
  238. package/src/graph/entity-link.tsx +20 -0
  239. package/src/graph/graph-list-utils.ts +2 -0
  240. package/src/graph/graph-model.ts +15 -6
  241. package/src/graph/nodes/BrandAssetAnalysisView.tsx +3 -1
  242. package/src/graph/nodes/BrandFontSuggestionView.tsx +7 -1
  243. package/src/graph/nodes/BrandGuidelinesView.tsx +1 -1
  244. package/src/graph/nodes/NodePropertyTable.tsx +32 -143
  245. package/src/graph/nodes/node-property-row.tsx +154 -0
  246. package/src/graph/property-formatters.ts +5 -1
  247. package/src/graph/special-nodes/AttributeList.tsx +177 -0
  248. package/src/graph/special-nodes/EntityPreview.tsx +27 -0
  249. package/src/graph/special-nodes/EntityValueChip.tsx +85 -0
  250. package/src/graph/special-nodes/GenericView.tsx +49 -139
  251. package/src/graph/special-nodes/card-facts.ts +278 -0
  252. package/src/graph/special-nodes/property-icons.ts +59 -0
  253. package/src/graph/status-utils.ts +40 -0
  254. package/src/graph/types.ts +4 -0
  255. package/src/hooks/use-approve-anyway.ts +100 -0
  256. package/src/ldo-ui.ts +8 -0
  257. package/src/lib/find-latest-staged-rule.ts +1 -1
  258. package/src/lib/manual-actions.ts +3 -2
  259. package/src/lib/tool-icons.ts +6 -6
  260. package/src/lib/tool-names.ts +0 -1
  261. package/src/ontology/skolem.ts +2 -2
  262. package/src/providers/ActiveChatProvider.tsx +3 -1
  263. package/src/providers/ChatManagerProvider.tsx +3 -1
  264. package/src/providers/KnowledgeGraphStateProvider.tsx +1 -1
  265. package/src/providers/chat-socket-auth.ts +95 -16
  266. package/src/providers/index.tsx +16 -1
  267. package/src/routes/activity/detail/ActivityChanges.tsx +21 -5
  268. package/src/routes/activity/detail/ActivityDetail.tsx +24 -5
  269. package/src/routes/activity/detail/ActivityStepsRail.tsx +4 -2
  270. package/src/routes/activity/detail/ActivityTimeline.tsx +2 -2
  271. package/src/routes/activity/detail/NoChangesMessage.tsx +20 -0
  272. package/src/routes/data-explorer/class-properties.ts +2 -2
  273. package/src/routes/data-explorer/classes.ts +2 -2
  274. package/src/routes/data-explorer/components/RawTriples.tsx +1 -1
  275. package/src/routes/data-explorer/components/RecentTypes.tsx +1 -1
  276. package/src/routes/data-explorer/components/class-detail/Instances.tsx +1 -1
  277. package/src/routes/data-explorer/components/namespace-detail/NamespaceClassRow.tsx +1 -1
  278. package/src/routes/data-explorer/components/ontology-coverage/CoverageTermColumns.tsx +1 -1
  279. package/src/routes/data-explorer/components/ontology-coverage/UnobservedRuleVocabulary.tsx +1 -1
  280. package/src/routes/data-explorer/components/record-detail/ChatPreview.tsx +2 -2
  281. package/src/routes/data-explorer/recents.ts +1 -1
  282. package/src/routes/data-explorer/shapes.ts +2 -2
  283. package/src/routes/datastores/flatten.ts +1 -1
  284. package/src/routes/integrations/components/connect-forms/CanvaConnectForm.tsx +26 -0
  285. package/src/routes/integrations/components/connect-forms/DataConnectionConnectForm.tsx +38 -12
  286. package/src/routes/integrations/components/connect-forms/data-connection-fields.ts +11 -2
  287. package/src/routes/integrations/connect-forms.ts +1 -0
  288. package/src/routes/integrations/connection-view.ts +1 -0
  289. package/src/routes/integrations/types.ts +2 -0
  290. package/src/routes/plans/components/ActionPlanPage.tsx +9 -8
  291. package/src/routes/plans/components/PlanDetailRouteContent.tsx +4 -3
  292. package/src/routes/rules/hooks/useRuleFactsPreview.ts +4 -4
  293. package/src/shacl/form-appearance.ts +1 -1
  294. package/src/shared/graph-derived-queries.ts +2 -2
  295. package/dist/components/planning/ExecutionActivityRow.d.ts +0 -9
  296. package/dist/components/planning/ExecutionActivityRow.d.ts.map +0 -1
  297. package/dist/components/planning/ExecutionActivityRow.js +0 -53
  298. package/dist/components/planning/ExecutionActivityRow.js.map +0 -1
  299. package/dist/components/planning/ExecutionSectionItem.d.ts +0 -20
  300. package/dist/components/planning/ExecutionSectionItem.d.ts.map +0 -1
  301. package/dist/components/planning/ExecutionSectionItem.js +0 -66
  302. package/dist/components/planning/ExecutionSectionItem.js.map +0 -1
  303. package/dist/components/planning/ExecutionSections.d.ts +0 -16
  304. package/dist/components/planning/ExecutionSections.d.ts.map +0 -1
  305. package/dist/components/planning/ExecutionSections.js +0 -32
  306. package/dist/components/planning/ExecutionSections.js.map +0 -1
  307. package/dist/components/planning/action-plan-icons.d.ts +0 -3
  308. package/dist/components/planning/action-plan-icons.d.ts.map +0 -1
  309. package/dist/components/planning/action-plan-icons.js +0 -25
  310. package/dist/components/planning/action-plan-icons.js.map +0 -1
  311. package/dist/components/planning/execution-section-model.d.ts +0 -24
  312. package/dist/components/planning/execution-section-model.d.ts.map +0 -1
  313. package/dist/components/planning/execution-section-model.js +0 -150
  314. package/dist/components/planning/execution-section-model.js.map +0 -1
  315. package/dist/routes/data-explorer/components/TruncateTooltip.d.ts +0 -7
  316. package/dist/routes/data-explorer/components/TruncateTooltip.d.ts.map +0 -1
  317. package/dist/routes/data-explorer/components/TruncateTooltip.js +0 -9
  318. package/dist/routes/data-explorer/components/TruncateTooltip.js.map +0 -1
  319. package/src/components/planning/ExecutionActivityRow.tsx +0 -89
  320. package/src/components/planning/ExecutionSectionItem.tsx +0 -184
  321. package/src/components/planning/ExecutionSections.tsx +0 -97
  322. package/src/components/planning/action-plan-icons.tsx +0 -27
  323. package/src/components/planning/execution-section-model.ts +0 -190
  324. package/src/routes/data-explorer/components/TruncateTooltip.tsx +0 -25
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-property-row.js","sourceRoot":"","sources":["../../../src/graph/nodes/node-property-row.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAmB,CAAC,EAAE,MAAM,cAAc,CAAC;AAEpF,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE5B,SAAS,GAAG,CAAC,KAA2B;IACtC,OAAO,CACL,eAAM,SAAS,EAAC,0EAA0E,YAAE,KAAK,CAAC,QAAQ,GAAQ,CACnH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAmC;IAC/D,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;SACxB,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CACtC,cAAK,SAAS,EAAC,sBAAsB,YAClC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACrB,KAAC,GAAG,cAAc,KAAK,IAAb,KAAK,CAAe,CAC/B,CAAC,GACE,CACP,CAAC;SACD,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACpC,gBAAM,SAAS,EAAC,2BAA2B,aACzC,oCAEE,SAAS,EAAC,2DAA2D,EACrE,KAAK,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,GAC/B,EACF,eAAM,SAAS,EAAC,cAAc,YAAE,GAAG,GAAQ,IACtC,CACR,CAAC;SACD,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAC/C,gBAAM,SAAS,EAAC,2BAA2B,aACzC,oCAAkB,SAAS,EAAC,yDAAyD,YACnF,eAAM,SAAS,EAAC,gDAAgD,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,QAAQ,GAAG,GAAG,GAAG,EAAE,GAAI,GACtG,EACP,eAAM,SAAS,EAAC,cAAc,YAAE,IAAI,GAAQ,IACvC,CACR,CAAC;SACD,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,eAAM,SAAS,EAAC,cAAc,YAAE,IAAI,GAAQ,CAAC;SACpF,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CACvC,KAAK,CAAC,CAAC,CAAC,CACN,gBAAM,SAAS,EAAC,yBAAyB,aACvC,KAAC,KAAK,yBAAa,SAAS,EAAC,2CAA2C,GAAG,YAEtE,CACR,CAAC,CAAC,CAAC,CACF,gBAAM,SAAS,EAAC,yBAAyB,aACvC,KAAC,CAAC,yBAAa,SAAS,EAAC,yCAAyC,GAAG,aAEhE,CACR,CACF;SACA,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,yBAAO,IAAI,GAAQ,CAAC;SACrF,UAAU,EAAE,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAA8B;IAC7D,OAAO,aAAI,SAAS,EAAC,eAAe,YAAE,KAAK,CAAC,QAAQ,GAAM,CAAC;AAC7D,CAAC;AAgBD,iEAAiE;AACjE,MAAM,UAAU,eAAe,CAAC,KAA2B;IACzD,MAAM,EACJ,KAAK,EACL,IAAI,EAAE,IAAI,EACV,WAAW,EACX,QAAQ,EACR,SAAS,GAAG,KAAK,EACjB,QAAQ,GAAG,MAAM,EACjB,UAAU,EACV,OAAO,GAAG,IAAI,EACd,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,KAAK,EAClB,cAAc,GACf,GAAG,KAAK,CAAC;IAEV,MAAM,OAAO,GAAG,QAAQ,KAAK,MAAM,CAAC;IACpC,MAAM,QAAQ,GAAG,SAAS,IAAI,QAAQ,KAAK,OAAO,CAAC;IAEnD,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,qCAAqC;QACrC,qGAAqG;QACrG,SAAS,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC,CAAC,0CAA0C,EACrG,OAAO,CAAC,CAAC,CAAC,yDAAyD,CAAC,CAAC,CAAC,MAAM,CAC7E,aAED,cAAI,SAAS,EAAE,EAAE,CAAC,2DAA2D,EAAE,QAAQ,IAAI,YAAY,CAAC,aACrG,IAAI,IAAI,KAAC,IAAI,yBAAa,SAAS,EAAC,6BAA6B,GAAG,EACpE,WAAW,EACX,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,CACzB,KAAC,eAAe,IAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAC,yDAAyD,GAAG,CACrG,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,4DAA4D,YAAE,KAAK,GAAQ,CAC5F,IACE,EACL,aACE,SAAS,EAAE,EAAE,CACX,UAAU,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,iBAAiB,EACzD,iCAAiC,EACjC,QAAQ,KAAK,MAAM,IAAI,aAAa,EACpC,QAAQ,IAAI,YAAY,EACxB,cAAc,CACf,YAEA,OAAO,IAAI,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,CACrC,KAAC,eAAe,IACd,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,EAAE,CAAC,eAAe,EAAE,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,0BAA0B,CAAC,YAEhG,QAAQ,GACO,CACnB,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,GACE,IACD,CACP,CAAC;AACJ,CAAC;AAID,MAAM,UAAU,oBAAoB,CAAC,KAAgC;IACnE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAErD,OAAO,CACL,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,mBACF,QAAQ,EACvB,SAAS,EAAC,kHAAkH,aAE3H,QAAQ,CAAC,CAAC,CAAC,KAAC,WAAW,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,UAAU,GAAG,CAAC,CAAC,CAAC,KAAC,YAAY,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,UAAU,GAAG,EAC3G,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,IACjC,CACV,CAAC;AACJ,CAAC"}
@@ -7,6 +7,7 @@ export declare function formatTermCurrency(value: number | null | undefined, ter
7
7
  export declare function formatPercentValue(value: number): string;
8
8
  export declare function formatPercentFraction(value: number): string;
9
9
  export declare function formatPercent(value: number): string;
10
+ export declare function isIsoDateTime(value: string): boolean;
10
11
  export declare function formatDisplayValue(value: string, options?: {
11
12
  predicate?: string;
12
13
  predicateLabel?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"property-formatters.d.ts","sourceRoot":"","sources":["../../src/graph/property-formatters.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AA0C1D,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYzD;AAgBD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAIrF;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,UAIxE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAEjF;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,sBAOzB;AAGD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAGD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnD;AAwBD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,MAAM,CA0BR"}
1
+ {"version":3,"file":"property-formatters.d.ts","sourceRoot":"","sources":["../../src/graph/property-formatters.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AA0C1D,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAYzD;AAgBD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAIrF;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,UAIxE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAEjF;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,IAAI,EAAE,YAAY,GAAG,SAAS,EAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,sBAOzB;AAGD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAGD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnD;AAwBD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,MAAM,CA0BR"}
@@ -103,6 +103,9 @@ function humanizeToken(value) {
103
103
  }
104
104
  return value;
105
105
  }
106
+ export function isIsoDateTime(value) {
107
+ return /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}/.test(value);
108
+ }
106
109
  export function formatDisplayValue(value, options) {
107
110
  const combinedLabel = `${options?.predicateLabel ?? ""} ${options?.predicate ?? ""}`.toLowerCase();
108
111
  const numericValue = parseNumeric(value);
@@ -119,7 +122,7 @@ export function formatDisplayValue(value, options) {
119
122
  }
120
123
  if (combinedLabel.includes("currency"))
121
124
  return value;
122
- if (/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}/.test(value)) {
125
+ if (isIsoDateTime(value)) {
123
126
  const date = parseISO(value);
124
127
  if (isValid(date))
125
128
  return format(date, "MMM d, yyyy");
@@ -1 +1 @@
1
- {"version":3,"file":"property-formatters.js","sourceRoot":"","sources":["../../src/graph/property-formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"property-formatters.js","sourceRoot":"","sources":["../../src/graph/property-formatters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { PreviewFieldHints } from "../graph-list-utils.js";
2
+ import type { NodeProperty, NodeRelation } from "../types.js";
3
+ import { type CardFact } from "./card-facts.js";
4
+ export type UseAttributeFactsArgs = {
5
+ properties: NodeProperty[];
6
+ relations?: NodeRelation[];
7
+ jsonLd: Record<string, unknown>;
8
+ title?: string;
9
+ type?: string;
10
+ prefixLabels?: boolean;
11
+ previewHints?: PreviewFieldHints;
12
+ include?: (property: NodeProperty) => boolean;
13
+ };
14
+ export declare function useAttributeFacts(args: UseAttributeFactsArgs): {
15
+ facts: CardFact[];
16
+ previewCount: number;
17
+ };
18
+ export type AttributeListProps = {
19
+ facts: CardFact[];
20
+ previewCount: number;
21
+ searchClassName?: string;
22
+ bodyClassName?: string;
23
+ showAll?: boolean;
24
+ defaultExpanded?: boolean;
25
+ };
26
+ export declare function AttributeList(props: AttributeListProps): import("react/jsx-runtime").JSX.Element | null;
27
+ //# sourceMappingURL=AttributeList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttributeList.d.ts","sourceRoot":"","sources":["../../../src/graph/special-nodes/AttributeList.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAG7D,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAkB,KAAK,QAAQ,EAAoD,MAAM,cAAc,CAAC;AAM/G,MAAM,MAAM,qBAAqB,GAAG;IAClC,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IAEjC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,OAAO,CAAC;CAC/C,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG;IAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CA6B1G;AAmBD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,kDA4FtD"}
@@ -0,0 +1,57 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { isFullIri } from "@manta-eu/client/shared/rdf-namespaces";
3
+ import { isPresent } from "@manta-eu/lib/present";
4
+ import { Search } from "lucide-react";
5
+ import { useMemo, useState } from "react";
6
+ import { NodePropertyExpander, NodePropertyList, NodePropertyRow, PropertyValue } from "../nodes/node-property-row.js";
7
+ import { ontologyTermIrisForProperties, withOntologyLabels } from "../ontology-labels.js";
8
+ import { buildCardFacts, isAttributeSearchable, searchFacts, visibleChips } from "./card-facts.js";
9
+ import { EntityValueChip } from "./EntityValueChip.js";
10
+ import { ChannelIcon, channelDisplayName } from "#components/channel-icon/index";
11
+ import { useOntologyTerms } from "#hooks/use-ontology-terms";
12
+ import { cn } from "#style";
13
+ export function useAttributeFacts(args) {
14
+ const { properties, jsonLd, title, type, prefixLabels, previewHints, include } = args;
15
+ const relations = useMemo(() => args.relations ?? [], [args.relations]);
16
+ const terms = useOntologyTerms(useMemo(() => [
17
+ ...ontologyTermIrisForProperties(properties),
18
+ ...relations.flatMap((relation) => [relation.predicate, relation.target]).filter(isFullIri),
19
+ ], [properties, relations]));
20
+ return useMemo(() => {
21
+ const labeled = withOntologyLabels(properties, terms);
22
+ return buildCardFacts({
23
+ properties: include ? labeled.filter(include) : labeled,
24
+ relations,
25
+ jsonLd,
26
+ terms,
27
+ title,
28
+ type,
29
+ prefixLabels,
30
+ previewHints,
31
+ });
32
+ }, [properties, terms, include, relations, jsonLd, title, type, prefixLabels, previewHints]);
33
+ }
34
+ function EntityChips(props) {
35
+ const { iris, color, expanded } = props;
36
+ const { shown, hiddenCount } = visibleChips(iris, expanded);
37
+ return (_jsxs("span", { className: "flex min-w-0 flex-wrap items-center gap-1", children: [shown.map((iri) => (_jsx(EntityValueChip, { iri: iri, color: color }, iri))), hiddenCount > 0 && _jsxs("span", { className: "typography-tiny text-muted-foreground", children: ["+", hiddenCount] })] }));
38
+ }
39
+ export function AttributeList(props) {
40
+ const { facts, previewCount, searchClassName, bodyClassName, showAll = false, defaultExpanded = false } = props;
41
+ const [expandedByUser, setExpanded] = useState(defaultExpanded);
42
+ const expanded = showAll || expandedByUser;
43
+ const [query, setQuery] = useState("");
44
+ const searchable = isAttributeSearchable(expanded, facts.length);
45
+ const searching = searchable && isPresent(query.trim());
46
+ const matchingFacts = useMemo(() => (searching ? searchFacts(facts, query.trim()) : facts), [searching, facts, query]);
47
+ const visibleFacts = searching || expanded ? matchingFacts : facts.slice(0, previewCount);
48
+ const hasHiddenChips = visibleFacts.some((fact) => visibleChips(fact.entityIris, expanded).hiddenCount > 0);
49
+ const hiddenCount = facts.length - previewCount;
50
+ if (!isPresent(facts))
51
+ return null;
52
+ return (_jsxs("div", { className: "flex flex-col", children: [searchable && (_jsxs("label", { className: cn("nodrag nopan flex items-center gap-2 border-b border-muted-border py-2 text-muted-foreground", searchClassName), children: [_jsx(Search, { "aria-hidden": true, className: "size-3.5 shrink-0" }), _jsx("input", { type: "search", value: query, onChange: (event) => setQuery(event.target.value), onKeyDown: (event) => event.stopPropagation(), placeholder: "Search attributes\u2026", "aria-label": "Search attributes", className: "typography-tiny min-w-0 flex-1 bg-transparent text-default-foreground outline-none placeholder:text-muted-foreground" })] })), _jsxs("div", { className: cn("flex flex-col", bodyClassName), children: [_jsx(NodePropertyList, { children: visibleFacts.map(({ key, label, value, display, icon, entityIris, entityColor, highlighted, channel }) => (_jsx(NodePropertyRow, { label: label, icon: channel ? undefined : icon, labelPrefix: channel && (_jsx("span", { role: "img", "aria-label": channelDisplayName[channel], title: channelDisplayName[channel], className: "shrink-0 self-center", children: _jsx(ChannelIcon, { channel: channel, iconClassName: "size-3" }) })), overflow: isPresent(entityIris) ? "wrap" : expanded && display.kind === "prose" ? "clamp" : "truncate", valueTitle: value, divided: false, wideLabel: true, emphasized: highlighted, valueClassName: cn("tabular-nums", highlighted && "text-primary"), children: isPresent(entityIris) ? (_jsx(EntityChips, { iris: entityIris, color: entityColor, expanded: expanded })) : (_jsx(PropertyValue, { display: display })) }, key))) }), searching && !isPresent(visibleFacts) && (_jsx("span", { className: "typography-tiny py-1 text-muted-foreground", children: "No matching attributes." })), !showAll && (hiddenCount > 0 || hasHiddenChips || expanded) && (_jsx(NodePropertyExpander, { expanded: expanded, collapsedLabel: hiddenCount > 0 ? `Show all ${facts.length}` : "Show all", onToggle: () => {
53
+ setExpanded((value) => !value);
54
+ setQuery("");
55
+ } }))] })] }));
56
+ }
57
+ //# sourceMappingURL=AttributeList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AttributeList.js","sourceRoot":"","sources":["../../../src/graph/special-nodes/AttributeList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AACpH,OAAO,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEvF,OAAO,EAAE,cAAc,EAAiB,qBAAqB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAc5B,MAAM,UAAU,iBAAiB,CAAC,IAA2B;IAC3D,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAEtF,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAExE,MAAM,KAAK,GAAG,gBAAgB,CAC5B,OAAO,CACL,GAAG,EAAE,CAAC;QACJ,GAAG,6BAA6B,CAAC,UAAU,CAAC;QAC5C,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;KAC5F,EACD,CAAC,UAAU,EAAE,SAAS,CAAC,CACxB,CACF,CAAC;IAEF,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAEtD,OAAO,cAAc,CAAC;YACpB,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;YACvD,SAAS;YACT,MAAM;YACN,KAAK;YACL,KAAK;YACL,IAAI;YACJ,YAAY;YACZ,YAAY;SACb,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;AAC/F,CAAC;AAID,SAAS,WAAW,CAAC,KAAuB;IAC1C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAExC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE5D,OAAO,CACL,gBAAM,SAAS,EAAC,2CAA2C,aACxD,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAClB,KAAC,eAAe,IAAW,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,IAA3B,GAAG,CAA4B,CACtD,CAAC,EACD,WAAW,GAAG,CAAC,IAAI,gBAAM,SAAS,EAAC,uCAAuC,kBAAG,WAAW,IAAQ,IAC5F,CACR,CAAC;AACJ,CAAC;AAYD,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,GAAG,KAAK,EAAE,eAAe,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;IAEhH,MAAM,CAAC,cAAc,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,OAAO,IAAI,cAAc,CAAC;IAC3C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEvC,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,UAAU,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAC5D,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAC1B,CAAC;IAEF,MAAM,YAAY,GAAG,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IAC1F,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;IAC5G,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC;IAEhD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEnC,OAAO,CACL,eAAK,SAAS,EAAC,eAAe,aAC3B,UAAU,IAAI,CACb,iBACE,SAAS,EAAE,EAAE,CACX,8FAA8F,EAC9F,eAAe,CAChB,aAED,KAAC,MAAM,yBAAa,SAAS,EAAC,mBAAmB,GAAG,EACpD,gBACE,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACjD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EAC7C,WAAW,EAAC,yBAAoB,gBACrB,mBAAmB,EAC9B,SAAS,EAAC,sHAAsH,GAChI,IACI,CACT,EAED,eAAK,SAAS,EAAE,EAAE,CAAC,eAAe,EAAE,aAAa,CAAC,aAChD,KAAC,gBAAgB,cACd,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CACzG,KAAC,eAAe,IAEd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAChC,WAAW,EACT,OAAO,IAAI,CACT,eACE,IAAI,EAAC,KAAK,gBACE,kBAAkB,CAAC,OAAO,CAAC,EACvC,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAClC,SAAS,EAAC,sBAAsB,YAEhC,KAAC,WAAW,IAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAC,QAAQ,GAAG,GACnD,CACR,EAEH,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EACtG,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,EACd,SAAS,QACT,UAAU,EAAE,WAAW,EACvB,cAAc,EAAE,EAAE,CAAC,cAAc,EAAE,WAAW,IAAI,cAAc,CAAC,YAEhE,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CACvB,KAAC,WAAW,IAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAI,CAC1E,CAAC,CAAC,CAAC,CACF,KAAC,aAAa,IAAC,OAAO,EAAE,OAAO,GAAI,CACpC,IA1BI,GAAG,CA2BQ,CACnB,CAAC,GACe,EAClB,SAAS,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CACxC,eAAM,SAAS,EAAC,4CAA4C,wCAA+B,CAC5F,EACA,CAAC,OAAO,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,cAAc,IAAI,QAAQ,CAAC,IAAI,CAC9D,KAAC,oBAAoB,IACnB,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,UAAU,EACzE,QAAQ,EAAE,GAAG,EAAE;4BACb,WAAW,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;4BAC/B,QAAQ,CAAC,EAAE,CAAC,CAAC;wBACf,CAAC,GACD,CACH,IACG,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ export type EntityPreviewProps = {
2
+ iri: string;
3
+ };
4
+ export declare function EntityPreview(props: EntityPreviewProps): import("react/jsx-runtime").JSX.Element;
5
+ //# sourceMappingURL=EntityPreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityPreview.d.ts","sourceRoot":"","sources":["../../../src/graph/special-nodes/EntityPreview.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,kBAAkB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAGjD,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,2CAgBtD"}
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useMemo } from "react";
3
+ import { stubNodeData } from "../stub-node.js";
4
+ import { InsideEntityPreview } from "./EntityValueChip.js";
5
+ import { GenericView } from "./GenericView.js";
6
+ import { getEntityView } from "./router.js";
7
+ import { useEntityNodes } from "#hooks/use-entity-nodes";
8
+ // Loaded lazily from EntityValueChip: a static import would cycle through the node router back to GenericView.
9
+ export function EntityPreview(props) {
10
+ const { iri } = props;
11
+ const iris = useMemo(() => [iri], [iri]);
12
+ const { nodesByIri, isLoading } = useEntityNodes(iris);
13
+ if (isLoading)
14
+ return _jsx("div", { className: "typography-tiny px-3 py-2 text-muted-foreground", children: "Loading\u2026" });
15
+ const node = nodesByIri.get(iri);
16
+ const View = (node && getEntityView(node.data.type, node.data.actionShape)) ?? GenericView;
17
+ return (_jsx(InsideEntityPreview.Provider, { value: true, children: _jsx(View, { data: node?.data ?? stubNodeData(iri) }) }));
18
+ }
19
+ //# sourceMappingURL=EntityPreview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityPreview.js","sourceRoot":"","sources":["../../../src/graph/special-nodes/EntityPreview.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAIzD,+GAA+G;AAC/G,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;IAEtB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IAEvD,IAAI,SAAS;QAAE,OAAO,cAAK,SAAS,EAAC,iDAAiD,8BAAe,CAAC;IAEtG,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,WAAW,CAAC;IAE3F,OAAO,CACL,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI,YACvC,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,YAAY,CAAC,GAAG,CAAC,GAAI,GAClB,CAChC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ export declare const InsideEntityPreview: import("react").Context<boolean>;
2
+ export declare function useEntityValueLabel(iri: string): {
3
+ label: string;
4
+ isOntologyTerm: boolean;
5
+ };
6
+ export type EntityValueChipProps = {
7
+ iri: string;
8
+ color?: string;
9
+ };
10
+ export declare function EntityValueChip(props: EntityValueChipProps): import("react/jsx-runtime").JSX.Element;
11
+ //# sourceMappingURL=EntityValueChip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityValueChip.d.ts","sourceRoot":"","sources":["../../../src/graph/special-nodes/EntityValueChip.tsx"],"names":[],"mappings":"AAeA,eAAO,MAAM,mBAAmB,kCAAuB,CAAC;AAGxD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAE,CAQ3F;AAED,MAAM,MAAM,oBAAoB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,2CAsD1D"}
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { humanizeEntityName } from "@manta-eu/client/shared/agent-mode";
3
+ import { iriLocalName } from "@manta-eu/client/shared/rdf-namespaces";
4
+ import { isPresent } from "@manta-eu/lib/present";
5
+ import { createContext, lazy, Suspense, useContext } from "react";
6
+ import { useEntityLink } from "../entity-link.js";
7
+ import { iriChannel } from "./card-facts.js";
8
+ import { ChannelIcon, channelDisplayName } from "#components/channel-icon/index";
9
+ import { Tooltip, TooltipContent, TooltipTrigger } from "#components/tooltip/index";
10
+ import { useInstanceLabel } from "#hooks/use-instance-labels";
11
+ import { useOntologyTerm } from "#hooks/use-ontology-terms";
12
+ import { cn } from "#style";
13
+ const EntityPreview = lazy(() => import("./EntityPreview.js").then((module) => ({ default: module.EntityPreview })));
14
+ // A preview already shows one entity card; its own chips skip the hover so previews never stack.
15
+ export const InsideEntityPreview = createContext(false);
16
+ // An ontology term (e.g. an enum concept) has a label but no record of its own to open or preview.
17
+ export function useEntityValueLabel(iri) {
18
+ const term = useOntologyTerm(iri);
19
+ const instanceLabel = useInstanceLabel(term?.label ? undefined : iri);
20
+ return {
21
+ label: term?.label ?? instanceLabel ?? humanizeEntityName(iriLocalName(iri)),
22
+ isOntologyTerm: isPresent(term?.label),
23
+ };
24
+ }
25
+ export function EntityValueChip(props) {
26
+ const { iri, color } = props;
27
+ const { label, isOntologyTerm } = useEntityValueLabel(iri);
28
+ const EntityLink = useEntityLink();
29
+ const insidePreview = useContext(InsideEntityPreview);
30
+ const channel = iriChannel(iri);
31
+ if (isOntologyTerm)
32
+ return _jsx("span", { className: "min-w-0 truncate", children: label });
33
+ const chipClassName = cn("nodrag inline-flex min-w-0 max-w-full items-center gap-1.5 rounded bg-faint px-1.5 py-px text-default-foreground", EntityLink && "transition-colors hover:bg-accent hover:text-primary");
34
+ const content = (_jsxs(_Fragment, { children: [channel ? (_jsx("span", { role: "img", "aria-label": channelDisplayName[channel], className: "shrink-0", children: _jsx(ChannelIcon, { channel: channel, iconClassName: "size-3" }) })) : (color && _jsx("span", { "aria-hidden": true, className: "size-1.5 shrink-0 rounded-full", style: { backgroundColor: color } })), _jsx("span", { className: "min-w-0 truncate", children: label })] }));
35
+ const chip = EntityLink ? (_jsx(EntityLink, { iri: iri, className: chipClassName, children: content })) : (_jsx("span", { className: chipClassName, children: content }));
36
+ if (insidePreview)
37
+ return chip;
38
+ return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "inline-flex min-w-0 max-w-full", children: chip }) }), _jsx(TooltipContent, { side: "bottom", align: "start", collisionPadding: 8, showArrow: false, className: "rounded-lg-v4 border border-default-border bg-card p-1.5 shadow-v4", children: _jsx(Suspense, { fallback: null, children: _jsx(EntityPreview, { iri: iri }) }) })] }));
39
+ }
40
+ //# sourceMappingURL=EntityValueChip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntityValueChip.js","sourceRoot":"","sources":["../../../src/graph/special-nodes/EntityValueChip.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
- import { type PreviewFieldHints } from "../graph-list-utils.js";
1
+ import type { PreviewFieldHints } from "../graph-list-utils.js";
2
2
  import type { EntityViewProps } from "../types.js";
3
3
  export type GenericViewProps = EntityViewProps & {
4
4
  previewHints?: PreviewFieldHints;
5
5
  onToggleCollapse?: () => void;
6
+ defaultExpanded?: boolean;
6
7
  };
7
8
  export declare const GenericView: import("react").NamedExoticComponent<GenericViewProps>;
8
9
  //# sourceMappingURL=GenericView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenericView.d.ts","sourceRoot":"","sources":["../../../src/graph/special-nodes/GenericView.tsx"],"names":[],"mappings":"AAIA,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAmBhD,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG;IAC/C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,WAAW,wDAwJtB,CAAC"}
1
+ {"version":3,"file":"GenericView.d.ts","sourceRoot":"","sources":["../../../src/graph/special-nodes/GenericView.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,UAAU,CAAC;AAO9D,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG;IAC/C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,WAAW,wDAmFtB,CAAC"}
@@ -1,30 +1,15 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { isPresent } from "@manta-eu/lib/present";
3
- import { expandPrefix } from "@manta-eu/rdf-lib/namespaces";
4
2
  import { ChevronRight } from "lucide-react";
5
3
  import { memo, useCallback, useMemo } from "react";
6
- import { getCurrencyCode, isDisplayablePreviewKey, selectPriorityPreviewFields, } from "../graph-list-utils.js";
7
- import { ontologyTermIrisForProperties, withOntologyLabels } from "../ontology-labels.js";
8
- import { rdfTypeColors } from "../rdf-type-colors.js";
9
- import { statusColors } from "../status-utils.js";
10
- import { useGraphTheme } from "../themes.js";
4
+ import { statusBadgeVariant } from "../status-utils.js";
5
+ import { AttributeList, useAttributeFacts } from "./AttributeList.js";
6
+ import { typeColor } from "./card-facts.js";
11
7
  import { getStatus } from "./node-data.js";
12
- import { useOntologyTerms } from "#hooks/use-ontology-terms";
8
+ import { Badge } from "#components/badge/index";
13
9
  import { cn } from "#style";
14
- const defaultColor = "#6b7280";
15
- const explainCardMaxFacts = 5;
16
- function getNodeColor(type) {
17
- if (!type)
18
- return defaultColor;
19
- return rdfTypeColors[type] ?? rdfTypeColors[expandPrefix(type)] ?? defaultColor;
20
- }
21
- function getStatusStyle(status) {
22
- return statusColors[status.toLowerCase()] ?? { bg: "#94a3b8", text: "#ffffff" };
23
- }
24
10
  export const GenericView = memo(function GenericView(props) {
25
- const { data, selected = false, onContextMenu, previewHints, onToggleCollapse } = props;
26
- const theme = useGraphTheme();
27
- const color = useMemo(() => getNodeColor(data.type), [data.type]);
11
+ const { data, selected = false, onContextMenu, previewHints, onToggleCollapse, defaultExpanded } = props;
12
+ const color = useMemo(() => typeColor(data.type), [data.type]);
28
13
  const hasChildren = data.hasChildren;
29
14
  const isCollapsed = data.isCollapsed;
30
15
  const handleToggleClick = useCallback((e) => {
@@ -32,53 +17,22 @@ export const GenericView = memo(function GenericView(props) {
32
17
  onToggleCollapse?.();
33
18
  }, [onToggleCollapse]);
34
19
  const status = useMemo(() => getStatus(data), [data]);
35
- const ontologyTerms = useOntologyTerms(useMemo(() => ontologyTermIrisForProperties(data.properties), [data.properties]));
36
- const labeledProperties = useMemo(() => withOntologyLabels(data.properties, ontologyTerms), [data.properties, ontologyTerms]);
37
- const { displayProperties, hiddenPropertiesCount } = useMemo(() => {
38
- const properties = status ? labeledProperties.filter((prop) => prop.key !== status.key) : labeledProperties;
39
- if (previewHints) {
40
- const fields = selectPriorityPreviewFields(properties, previewHints, getCurrencyCode([], properties), {
41
- limit: explainCardMaxFacts,
42
- keepUnmatched: true,
43
- });
44
- const total = properties.filter((prop) => isDisplayablePreviewKey(prop.key)).length;
45
- const facts = fields.map((field) => ({
46
- label: field.label,
47
- value: field.value,
48
- highlighted: field.isHighlighted ?? false,
49
- }));
50
- return { displayProperties: facts, hiddenPropertiesCount: Math.max(0, total - facts.length) };
51
- }
52
- const importantKeys = ["name", "title", "label", "description", "id"];
53
- const important = [];
54
- const other = [];
55
- for (const prop of properties) {
56
- const keyLower = prop.key.toLowerCase();
57
- if (importantKeys.some((k) => keyLower.includes(k))) {
58
- important.push(prop);
59
- }
60
- else {
61
- other.push(prop);
62
- }
63
- }
64
- const maxProperties = 4;
65
- const allDisplayed = [...important, ...other]
66
- .slice(0, maxProperties)
67
- .map((prop) => ({ label: prop.label ?? prop.key, value: prop.value, highlighted: false }));
68
- return {
69
- displayProperties: allDisplayed,
70
- hiddenPropertiesCount: Math.max(0, important.length + other.length - maxProperties),
71
- };
72
- }, [labeledProperties, status, previewHints]);
73
- return (_jsxs("div", { className: "rounded-lg shadow-md min-w-60 max-w-80 transition-all duration-200 overflow-hidden", style: {
74
- backgroundColor: theme.node.background,
75
- borderColor: color,
76
- borderWidth: 2,
77
- borderStyle: "solid",
78
- ...(selected && { boxShadow: `0 0 0 2px ${theme.node.selectedRing}` }),
79
- }, onContextMenu: onContextMenu, children: [_jsxs("div", { className: "px-3 py-2 flex items-center justify-between gap-2", style: { backgroundColor: `${color}20` }, children: [_jsxs("div", { className: "flex items-center gap-2 min-w-0", children: [hasChildren && onToggleCollapse && (_jsx("button", { onClick: handleToggleClick, className: cn("w-5 h-5 rounded flex items-center justify-center shrink-0", "bg-muted", "hover:bg-muted transition-all duration-200"), style: { color: theme.node.text }, title: isCollapsed ? "Expand" : "Collapse", children: _jsx(ChevronRight, { className: cn("w-3 h-3 transition-transform duration-200", !isCollapsed && "rotate-90") }) })), _jsx("div", { className: "typography-small truncate", style: { color: theme.node.text }, title: data.label, children: data.label })] }), _jsxs("div", { className: "flex items-center gap-1.5 shrink-0", children: [status && (_jsx("span", { className: "px-1.5 py-0.5 rounded typography-tiny", style: { backgroundColor: getStatusStyle(status.value).bg, color: getStatusStyle(status.value).text }, children: status.value.toLowerCase() })), hasChildren && isCollapsed && (_jsxs("span", { className: "px-1.5 py-0.5 rounded typography-tiny text-primary-foreground", style: { backgroundColor: color }, children: ["+", data.childIds.length] }))] })] }), isPresent(displayProperties) && (_jsxs("div", { className: "px-3 py-2 space-y-1", children: [displayProperties.map(({ label, value, highlighted }, index) => (_jsxs("div", { className: "flex justify-between typography-tiny gap-2", children: [_jsxs("span", { style: { color: theme.node.textMuted }, className: "shrink-0", children: [label, ":"] }), _jsx("span", { style: {
80
- color: highlighted ? theme.node.selectedRing : theme.node.text,
81
- fontWeight: highlighted ? 600 : undefined,
82
- }, className: "truncate text-right tabular-nums", title: value, children: value })] }, index))), hiddenPropertiesCount > 0 && (_jsxs("div", { className: "typography-tiny italic", style: { color: theme.node.textMuted }, children: ["+", hiddenPropertiesCount, " more"] }))] }))] }));
20
+ const include = useCallback((property) => !status || property.key !== status.key, [status]);
21
+ // The header badge shows the status, so an IRI-valued one must not come back as a relation row either.
22
+ const relations = useMemo(() => {
23
+ const statusIri = status ? data.properties.find((property) => property.key === status.key)?.iri : undefined;
24
+ return statusIri ? data.relations?.filter((relation) => relation.predicate !== statusIri) : data.relations;
25
+ }, [status, data.properties, data.relations]);
26
+ const { facts, previewCount } = useAttributeFacts({
27
+ properties: data.properties,
28
+ relations,
29
+ jsonLd: data.jsonLd,
30
+ title: data.label,
31
+ type: data.type,
32
+ prefixLabels: true,
33
+ previewHints,
34
+ include,
35
+ });
36
+ return (_jsxs("div", { className: cn("min-w-60 max-w-80 overflow-hidden rounded-md-v4 border border-muted-border bg-muted text-default-foreground transition-shadow duration-200", selected && "ring-2 ring-active-border"), onContextMenu: onContextMenu, children: [_jsxs("div", { className: "flex items-center justify-between gap-2 border-b border-muted-border px-3 py-2", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2", children: [hasChildren && onToggleCollapse && (_jsx("button", { type: "button", onClick: handleToggleClick, className: "nodrag flex size-5 shrink-0 items-center justify-center rounded bg-accent text-muted-foreground transition-colors hover:text-default-foreground", title: isCollapsed ? "Expand" : "Collapse", children: _jsx(ChevronRight, { className: cn("size-3 transition-transform duration-200", !isCollapsed && "rotate-90") }) })), _jsx("span", { "aria-hidden": true, className: "size-2 shrink-0 rounded-full", style: { backgroundColor: color } }), _jsx("div", { className: "typography-small-medium truncate", title: data.label, children: data.label })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-1.5", children: [status && (_jsx(Badge, { size: "sm", variant: statusBadgeVariant(status.value), children: status.value.toLowerCase() })), hasChildren && isCollapsed && (_jsxs(Badge, { size: "sm", variant: "secondary", children: ["+", data.childIds.length] }))] })] }), _jsx(AttributeList, { facts: facts, previewCount: previewCount, defaultExpanded: defaultExpanded, searchClassName: "px-3", bodyClassName: "px-3 py-2" })] }));
83
37
  });
84
38
  //# sourceMappingURL=GenericView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GenericView.js","sourceRoot":"","sources":["../../../src/graph/special-nodes/GenericView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GenericView.js","sourceRoot":"","sources":["../../../src/graph/special-nodes/GenericView.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ import type { LucideIcon } from "lucide-react";
2
+ import { type PreviewFieldHints } from "../graph-list-utils.js";
3
+ import { type PropertyDisplay } from "../nodes/node-property-display.js";
4
+ import type { NodeProperty, NodeRelation } from "../types.js";
5
+ import type { Channel } from "#components/channel-icon/index";
6
+ import type { OntologyTerm } from "#lib/ontology-terms";
7
+ export declare const explainCardMaxFacts = 5;
8
+ export declare const defaultCardMaxFacts = 4;
9
+ export declare const attributeSearchThreshold = 8;
10
+ export declare const collapsedChipLimit = 3;
11
+ export type CardFact = {
12
+ key: string;
13
+ predicate?: string;
14
+ label: string;
15
+ value: string;
16
+ display: PropertyDisplay;
17
+ icon: LucideIcon;
18
+ entityIris: string[];
19
+ entityColor?: string;
20
+ highlighted: boolean;
21
+ channel?: Channel;
22
+ };
23
+ export declare function typeColor(type?: string): string;
24
+ export declare function formatFactValue(property: NodeProperty): string;
25
+ export declare function readableLabel(property: NodeProperty): string;
26
+ export declare function iriChannel(iri: string | undefined): Channel | undefined;
27
+ export declare function sourcedLabel(label: string, predicate: string | undefined, type?: string): string;
28
+ type LabelSource = (label: string, predicate: string | undefined) => string;
29
+ export declare function keyWords(key: string): string[];
30
+ export declare function relationFacts(relations: NodeRelation[], terms: Map<string, OntologyTerm>, labelFor?: LabelSource): CardFact[];
31
+ export type BuildCardFactsArgs = {
32
+ properties: NodeProperty[];
33
+ relations: NodeRelation[];
34
+ jsonLd: Record<string, unknown>;
35
+ terms: Map<string, OntologyTerm>;
36
+ title?: string;
37
+ type?: string;
38
+ prefixLabels?: boolean;
39
+ previewHints?: PreviewFieldHints;
40
+ };
41
+ export declare function buildCardFacts(args: BuildCardFactsArgs): {
42
+ facts: CardFact[];
43
+ previewCount: number;
44
+ };
45
+ export declare function isAttributeSearchable(expanded: boolean, factCount: number): boolean;
46
+ export declare function visibleChips(iris: string[], expanded: boolean): {
47
+ shown: string[];
48
+ hiddenCount: number;
49
+ };
50
+ export declare function searchFacts(facts: CardFact[], query: string): CardFact[];
51
+ export {};
52
+ //# sourceMappingURL=card-facts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-facts.d.ts","sourceRoot":"","sources":["../../../src/graph/special-nodes/card-facts.ts"],"names":[],"mappings":"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"}