From 0a1f6c6f348702625ff082dd4f452c37c624c33b Mon Sep 17 00:00:00 2001 From: kempersc Date: Fri, 16 Jan 2026 15:04:18 +0100 Subject: [PATCH] fix: update generated timestamp in manifest.json --- .../schemas/20251121/linkml/manifest.json | 2 +- frontend/src/pages/EntityReviewPage.tsx | 24 +++++++++++++++++-- schemas/20251121/linkml/manifest.json | 21 +++++++++++++--- .../modules/slots/has_or_had_hyponym.yaml | 8 +++++-- 4 files changed, 47 insertions(+), 8 deletions(-) diff --git a/frontend/public/schemas/20251121/linkml/manifest.json b/frontend/public/schemas/20251121/linkml/manifest.json index 2dccfb07a1..6d8415b821 100644 --- a/frontend/public/schemas/20251121/linkml/manifest.json +++ b/frontend/public/schemas/20251121/linkml/manifest.json @@ -1,5 +1,5 @@ { - "generated": "2026-01-16T12:29:25.004Z", + "generated": "2026-01-16T13:33:06.596Z", "schemaRoot": "/schemas/20251121/linkml", "totalFiles": 3007, "categoryCounts": { diff --git a/frontend/src/pages/EntityReviewPage.tsx b/frontend/src/pages/EntityReviewPage.tsx index dcab774776..839c99c084 100644 --- a/frontend/src/pages/EntityReviewPage.tsx +++ b/frontend/src/pages/EntityReviewPage.tsx @@ -168,6 +168,8 @@ interface LinkupSearchResult { interface ReviewStats { total_profiles: number; profiles_with_candidates: number; + wcms_only_count: number; // WCMS profiles without LinkedIn candidates + total_wcms_in_index: number; // Total in WCMS email index total_candidates: number; reviewed_candidates: number; pending_candidates: number; @@ -269,10 +271,28 @@ export default function EntityReviewPage() { const [hideWrongPerson, setHideWrongPerson] = useState(false); const [availableSignals, setAvailableSignals] = useState<{signal_types: string[], signal_counts: Record}>({signal_types: [], signal_counts: {}}); - // Stats filter: 'all' | 'reviewed' | 'pending' - type StatsFilter = 'all' | 'reviewed' | 'pending'; + // Stats filter: 'all' | 'reviewed' | 'pending' | 'wcms_only' + type StatsFilter = 'all' | 'reviewed' | 'pending' | 'wcms_only'; const [statsFilter, setStatsFilter] = useState('pending'); + // WCMS-only profiles state (profiles without LinkedIn candidates) + const [wcmsOnlyProfiles, setWcmsOnlyProfiles] = useState>([]); + const [wcmsOnlyTotal, setWcmsOnlyTotal] = useState(0); + const [wcmsOnlyPage, setWcmsOnlyPage] = useState(1); + const [wcmsOnlyLoading, setWcmsOnlyLoading] = useState(false); + const [wcmsOnlySearch, setWcmsOnlySearch] = useState(''); + // Profile search - now with semantic search mode const [profileSearchQuery, setProfileSearchQuery] = useState(''); const [useSemanticSearch, setUseSemanticSearch] = useState(false); // Toggle: semantic vs local filter diff --git a/schemas/20251121/linkml/manifest.json b/schemas/20251121/linkml/manifest.json index 6d8415b821..112c353aea 100644 --- a/schemas/20251121/linkml/manifest.json +++ b/schemas/20251121/linkml/manifest.json @@ -1,12 +1,12 @@ { - "generated": "2026-01-16T13:33:06.596Z", + "generated": "2026-01-16T14:04:19.745Z", "schemaRoot": "/schemas/20251121/linkml", - "totalFiles": 3007, + "totalFiles": 3010, "categoryCounts": { "main": 4, "class": 818, "enum": 152, - "slot": 2029, + "slot": 2032, "module": 4 }, "categories": [ @@ -9182,6 +9182,11 @@ "path": "modules/slots/has_or_had_domain.yaml", "category": "slot" }, + { + "name": "has_or_had_entity_status", + "path": "modules/slots/has_or_had_entity_status.yaml", + "category": "slot" + }, { "name": "has_or_had_environmental_condition", "path": "modules/slots/has_or_had_environmental_condition.yaml", @@ -9447,6 +9452,11 @@ "path": "modules/slots/has_or_had_notes.yaml", "category": "slot" }, + { + "name": "has_or_had_observation_source_document", + "path": "modules/slots/has_or_had_observation_source_document.yaml", + "category": "slot" + }, { "name": "has_or_had_open_access_endpoint", "path": "modules/slots/has_or_had_open_access_endpoint.yaml", @@ -9802,6 +9812,11 @@ "path": "modules/slots/has_or_had_strategic_objective.yaml", "category": "slot" }, + { + "name": "has_or_had_structured_description", + "path": "modules/slots/has_or_had_structured_description.yaml", + "category": "slot" + }, { "name": "has_or_had_sub_collection", "path": "modules/slots/has_or_had_sub_collection.yaml", diff --git a/schemas/20251121/linkml/modules/slots/has_or_had_hyponym.yaml b/schemas/20251121/linkml/modules/slots/has_or_had_hyponym.yaml index 4f3f5450e4..ce8ea71095 100644 --- a/schemas/20251121/linkml/modules/slots/has_or_had_hyponym.yaml +++ b/schemas/20251121/linkml/modules/slots/has_or_had_hyponym.yaml @@ -53,9 +53,13 @@ slots: to allow consistent class-valued ranges when classes override. skos:narrower moved to exact_mappings (it is already an ObjectProperty in SKOS). - **Range**: `Any` (2026-01-16) - Allows uriorcurie values and class instances. + **Range**: `uriorcurie` (2026-01-16) - Allows both URIs and CURIE references. - range: string + Note: Individual Type classes may override to their specific type in slot_usage, + but since they're all referring to URIs, this causes no OWL ambiguity when + the base range is uriorcurie (compatible with ObjectProperty). + + range: uriorcurie required: false multivalued: true inlined_as_list: true