@singi-labs/sifa-sdk 0.19.78 → 0.19.79
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/dist/{index-DAiJZvPg.d.ts → index-B0BDMGLm.d.ts} +8 -0
- package/dist/{index-k6tBrbEU.d.cts → index-BrWWVQLL.d.cts} +8 -0
- package/dist/index.cjs +7 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -7
- package/dist/index.d.ts +7 -7
- package/dist/index.js +1 -1
- package/dist/jsonld/index.cjs +11 -0
- package/dist/jsonld/index.cjs.map +1 -1
- package/dist/jsonld/index.d.cts +1 -1
- package/dist/jsonld/index.d.ts +1 -1
- package/dist/jsonld/terms.js +11 -0
- package/dist/jsonld/terms.js.map +1 -1
- package/dist/{network-map-D8JcKu28.d.ts → network-map-BEOM5v7g.d.ts} +3 -3
- package/dist/{network-map-Db_EPUDX.d.cts → network-map-DMDU4liU.d.cts} +3 -3
- package/dist/{profile-investment-Cn5b--EG.d.cts → profile-investment-QSwX2GL5.d.cts} +1 -0
- package/dist/{profile-investment-Cn5b--EG.d.ts → profile-investment-QSwX2GL5.d.ts} +1 -0
- package/dist/{profile-summary-PRDqxAQT.d.ts → profile-summary-1oXL1guc.d.ts} +1 -1
- package/dist/{profile-summary-BcbJrph1.d.cts → profile-summary-CpM9l8iq.d.cts} +1 -1
- package/dist/query/fetchers/index.cjs +2 -1
- package/dist/query/fetchers/index.cjs.map +1 -1
- package/dist/query/fetchers/index.d.cts +6 -6
- package/dist/query/fetchers/index.d.ts +6 -6
- package/dist/query/fetchers/profile-mutations.js.map +1 -1
- package/dist/query/hooks/index.cjs +24 -2
- package/dist/query/hooks/index.cjs.map +1 -1
- package/dist/query/hooks/index.d.cts +4 -4
- package/dist/query/hooks/index.d.ts +4 -4
- package/dist/query/hooks/index.js +2 -0
- package/dist/query/hooks/index.js.map +1 -1
- package/dist/query/hooks/use-rpg-status.js +19 -0
- package/dist/query/hooks/use-rpg-status.js.map +1 -0
- package/dist/query/index.cjs +11 -1
- package/dist/query/index.cjs.map +1 -1
- package/dist/query/index.d.cts +9 -9
- package/dist/query/index.d.ts +9 -9
- package/dist/query/index.js +2 -0
- package/dist/query/index.js.map +1 -1
- package/dist/query/keys.js +2 -1
- package/dist/query/keys.js.map +1 -1
- package/dist/resume/index.d.cts +1 -1
- package/dist/resume/index.d.ts +1 -1
- package/dist/rpg/avatar.js +6 -0
- package/dist/rpg/avatar.js.map +1 -0
- package/dist/rpg/index.cjs +4 -0
- package/dist/rpg/index.cjs.map +1 -1
- package/dist/rpg/index.d.cts +9 -1
- package/dist/rpg/index.d.ts +9 -1
- package/dist/rpg/index.js +2 -0
- package/dist/rpg/index.js.map +1 -1
- package/dist/schemas/index.cjs +6 -0
- package/dist/schemas/index.cjs.map +1 -1
- package/dist/schemas/index.d.cts +1 -1
- package/dist/schemas/index.d.ts +1 -1
- package/dist/schemas/profile-self.js +6 -0
- package/dist/schemas/profile-self.js.map +1 -1
- package/dist/schemas/write/index.cjs +13 -1
- package/dist/schemas/write/index.cjs.map +1 -1
- package/dist/schemas/write/index.d.cts +3 -0
- package/dist/schemas/write/index.d.ts +3 -0
- package/dist/schemas/write/profile-self.js +9 -1
- package/dist/schemas/write/profile-self.js.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/{types-CI24asgo.d.ts → types-DB7UkX43.d.ts} +1 -1
- package/dist/{types-qw55KvoV.d.cts → types-DQfWqSud.d.cts} +1 -1
- package/dist/{use-user-settings-fWHkdX3c.d.ts → use-user-settings-A_i6Nrj1.d.ts} +25 -4
- package/dist/{use-user-settings-DWj8BC5K.d.cts → use-user-settings-U-cIysUa.d.cts} +25 -4
- package/dist/{user-settings-nov4rgwR.d.ts → user-settings-CGJPdwTM.d.ts} +9 -3
- package/dist/{user-settings-qkxxTwFP.d.cts → user-settings-DdWaL2AG.d.cts} +9 -3
- package/package.json +1 -1
package/dist/jsonld/terms.js
CHANGED
|
@@ -274,6 +274,12 @@ var term_mappings_default = {
|
|
|
274
274
|
match: "exactMatch",
|
|
275
275
|
terms: ["schema:Project", "foaf:Project"]
|
|
276
276
|
},
|
|
277
|
+
{
|
|
278
|
+
lexicon: "id.sifa.profile.project",
|
|
279
|
+
field: "events",
|
|
280
|
+
match: "relatedMatch",
|
|
281
|
+
terms: ["schema:organizer"]
|
|
282
|
+
},
|
|
277
283
|
{
|
|
278
284
|
lexicon: "id.sifa.profile.publication",
|
|
279
285
|
match: "broadMatch",
|
|
@@ -413,6 +419,11 @@ var term_mappings_default = {
|
|
|
413
419
|
field: "discoverable",
|
|
414
420
|
reason: "Sifa indexing control, not a fact about the person."
|
|
415
421
|
},
|
|
422
|
+
{
|
|
423
|
+
lexicon: "id.sifa.profile.self",
|
|
424
|
+
field: "avatarSource",
|
|
425
|
+
reason: "Rendering instruction for apps, not a fact about the person."
|
|
426
|
+
},
|
|
416
427
|
{
|
|
417
428
|
lexicon: "id.sifa.profile.position",
|
|
418
429
|
field: "isPrimary",
|
package/dist/jsonld/terms.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/jsonld/term-mappings.json","../../src/jsonld/terms.ts"],"sourcesContent":["{\n \"$schema\": \"https://sifa.id/schemas/term-mappings/v1.json\",\n \"version\": \"1.0.0\",\n \"description\": \"Reconciliation between id.sifa.* lexicon terms and existing RDF vocabularies. RDF is used here as vocabulary only: Sifa records are Lexicon JSON on the AT Protocol, and nothing here changes how they are stored or transmitted. Match strengths use SKOS mapping relations.\",\n \"vocabularies\": {\n \"schema\": \"https://schema.org/\",\n \"bibo\": \"http://purl.org/ontology/bibo/\",\n \"dcterms\": \"http://purl.org/dc/terms/\",\n \"foaf\": \"http://xmlns.com/foaf/0.1/\",\n \"org\": \"http://www.w3.org/ns/org#\",\n \"prism\": \"http://prismstandard.org/namespaces/basic/2.1/\",\n \"event\": \"http://purl.org/NET/c4dm/event.owl#\",\n \"skos\": \"http://www.w3.org/2004/02/skos/core#\"\n },\n \"mappings\": [\n {\n \"lexicon\": \"id.sifa.org.profile\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:Organization\", \"org:FormalOrganization\"],\n \"note\": \"ROR is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.certification\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:EducationalOccupationalCredential\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.certification\",\n \"field\": \"credentialUrl\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:url\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.certification\",\n \"field\": \"expiresAt\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:validUntil\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.course\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:Course\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.course\",\n \"field\": \"number\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:courseCode\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:EducationalOccupationalCredential\"],\n \"note\": \"One record maps to two schema.org assertions: alumniOf for the institution and hasCredential for the degree.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"degree\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:hasCredential\", \"bibo:degree\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"eqfLevel\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:educationalLevel\"],\n \"note\": \"EQF is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"fieldOfStudy\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:educationalCredentialAwarded\"],\n \"note\": \"ISCED-F is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"institution\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:alumniOf\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.externalAccount\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:sameAs\", \"foaf:account\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.honor\",\n \"match\": \"broadMatch\",\n \"terms\": [\"schema:award\"],\n \"note\": \"schema:award is a bare string, so issuer and date are lost. No better term exists in BIBO either.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.involvement\",\n \"match\": \"broadMatch\",\n \"terms\": [\"org:Membership\"],\n \"note\": \"The kind known values have no external equivalent.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.language\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:knowsLanguage\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"match\": \"closeMatch\",\n \"terms\": [\"org:Membership\", \"schema:OrganizationRole\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"company\",\n \"match\": \"exactMatch\",\n \"terms\": [\"org:organization\", \"schema:worksFor\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"description\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:description\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"employmentType\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:employmentType\"],\n \"note\": \"schema:employmentType is free text. ESCO is the better value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"endedAt\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:endDate\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"entityRef\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:sameAs\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"location\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:jobLocation\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"startedAt\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:startDate\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"title\",\n \"match\": \"exactMatch\",\n \"terms\": [\"org:role\", \"schema:roleName\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"workplaceType\",\n \"match\": \"narrowMatch\",\n \"terms\": [\"schema:jobLocationType\"],\n \"note\": \"schema.org models only a remote flag; Sifa distinguishes onSite, remote, and hybrid.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"match\": \"closeMatch\",\n \"terms\": [\"bibo:Slideshow\", \"schema:PresentationDigitalDocument\"],\n \"note\": \"Neither term carries the \\\"reusable, deliverable more than once\\\" semantics of the Sifa record.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"coverImage\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:image\", \"foaf:depiction\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"description\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:abstract\", \"schema:abstract\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"duration\",\n \"match\": \"narrowMatch\",\n \"terms\": [\"schema:timeRequired\"],\n \"note\": \"The lexicon models a range; schema:timeRequired is a single ISO 8601 duration.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"intendedAudiences\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:audience\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"title\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:title\", \"schema:name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"writeupRef\",\n \"match\": \"closeMatch\",\n \"terms\": [\"dcterms:isReferencedBy\", \"schema:subjectOf\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:Event\", \"event:Event\"],\n \"note\": \"BIBO models this relation as bibo:Slideshow bibo:presentedAt event:Event.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"address\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:location\", \"event:place\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"coSpeakers\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:performer\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"date\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:startDate\", \"event:time\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"eventName\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:superEvent\", \"bibo:Conference\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"mode\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:eventAttendanceMode\"],\n \"note\": \"The community.lexicon.calendar.event known values are already one-to-one with the schema.org enumeration.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"presentationRef\",\n \"match\": \"closeMatch\",\n \"terms\": [\"bibo:presentedAt\", \"schema:workPerformed\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"role\",\n \"match\": \"closeMatch\",\n \"terms\": [\"bibo:performer\", \"schema:performer\"],\n \"note\": \"No external vocabulary distinguishes presenter, panelist, keynote, workshop and host at this granularity.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"status\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:eventStatus\"],\n \"note\": \"As with mode, already one-to-one with the schema.org enumeration.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"title\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:title\", \"schema:name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.project\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:Project\", \"foaf:Project\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"match\": \"broadMatch\",\n \"terms\": [\"bibo:Document\", \"schema:CreativeWork\"],\n \"note\": \"Refine to bibo:AcademicArticle, bibo:Book, bibo:Report or bibo:Thesis when a resource type is known. COAR is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"authors\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:authorList\", \"schema:author\"],\n \"note\": \"bibo:authorList is an ordered rdf:List and preserves author order, which schema:author does not guarantee.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"description\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:abstract\", \"schema:abstract\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"doi\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:doi\", \"prism:doi\"],\n \"note\": \"schema:identifier with a PropertyValue of propertyID 'doi' is the JSON-LD serialization; bibo:doi is the direct term.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"publishedAt\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:issued\", \"schema:datePublished\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"publisher\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:publisher\", \"schema:publisher\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"relatedIdentifiers\",\n \"match\": \"closeMatch\",\n \"terms\": [\"dcterms:relation\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"subtitle\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:alternativeHeadline\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"title\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:title\", \"schema:name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"type\",\n \"match\": \"closeMatch\",\n \"terms\": [\"dcterms:type\", \"schema:additionalType\"],\n \"note\": \"COAR Resource Types is the anchor a consumer should map to. The values here are ORCID's because that is the vocabulary the data arrives in; deviating from the id.sifa.defs token convention is deliberate, since the vocabulary is ORCID's rather than Sifa's.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"url\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:uri\", \"schema:url\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:Person\", \"foaf:Person\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"about\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:description\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"avatar\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:image\", \"foaf:depiction\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"displayName\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:name\", \"foaf:name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"familyName\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:familyName\", \"foaf:family_name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"givenName\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:givenName\", \"foaf:givenname\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"headline\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:jobTitle\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"location\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:homeLocation\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.skill\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:knowsAbout\", \"schema:DefinedTerm\"],\n \"note\": \"ESCO is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.volunteering\",\n \"match\": \"closeMatch\",\n \"terms\": [\"org:Membership\", \"schema:OrganizationRole\"]\n }\n ],\n \"unmapped\": [\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"pronouns\",\n \"reason\": \"No stable external term. schema.org has no pronouns property.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"discoverable\",\n \"reason\": \"Sifa indexing control, not a fact about the person.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"isPrimary\",\n \"reason\": \"Sifa display ordering concern.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"grade\",\n \"reason\": \"No comparable external term; grading scales are not portable.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.language\",\n \"field\": \"proficiency\",\n \"reason\": \"The known values are CEFR-shaped but not CEFR-named. Map only; renaming a published lexicon for a cosmetic gain is not worth the break.\"\n },\n {\n \"lexicon\": \"id.sifa.confirmation\",\n \"reason\": \"A record affirming another record is reification. schema:Review and schema:ClaimReview both imply an evaluation that a confirmation does not make.\"\n },\n {\n \"lexicon\": \"id.sifa.endorsement\",\n \"reason\": \"Same reification problem as confirmation. Any mapping that lets a consumer aggregate endorsements into a score works against the descriptive-only trust model.\"\n },\n {\n \"lexicon\": \"id.sifa.graph.connection\",\n \"reason\": \"foaf:knows carries no consent semantics. A Sifa connection is bilateral and confirmed; flattening it to foaf:knows would misrepresent an unconfirmed acquaintance claim as mutual.\"\n },\n {\n \"lexicon\": \"id.sifa.graph.follow\",\n \"reason\": \"See id.sifa.graph.connection.\"\n },\n {\n \"lexicon\": \"id.sifa.meeting\",\n \"reason\": \"Attestation semantics; same reification problem as confirmation.\"\n }\n ]\n}\n","/**\n * Reconciliation between `id.sifa.*` lexicon terms and existing RDF\n * vocabularies.\n *\n * The facts live in sifa-lexicons, as `x-skos:*` annotations on the lexicon\n * defs and properties. Those annotations are published to the authority PDS,\n * so a third party resolving `id.sifa.*` already reads them; that makes the\n * lexicons the source of truth and `./term-mappings.json` a derived copy,\n * refreshed by `scripts/sync-term-mappings.mjs` and drift-checked in CI.\n *\n * To change a mapping, change the lexicon, not this file.\n *\n * Scope note: RDF is adopted here as *vocabulary only*. Sifa records are\n * Lexicon JSON on the AT Protocol; nothing in this module changes how records\n * are stored or transmitted. A mapping is a one-directional annotation over a\n * lexicon designed on its own merits, never a constraint on lexicon design.\n * When a term does not fit, the correct answer is `noMatch`, not a different\n * lexicon.\n */\n\nimport document from './term-mappings.json';\n\n/** Vocabulary prefix -> namespace IRI. */\nexport const VOCABULARIES: Readonly<Record<string, string>> = document.vocabularies;\n\nexport type VocabularyPrefix = keyof typeof document.vocabularies;\n\n/**\n * Strength of a mapping, using SKOS mapping relations so the table is itself\n * expressible as RDF.\n *\n * `noMatch` is not the absence of an entry. It is a deliberate statement that\n * no external term should be used for this concept, and it carries a reason.\n */\nexport type MatchStrength =\n 'exactMatch' | 'closeMatch' | 'broadMatch' | 'narrowMatch' | 'relatedMatch' | 'noMatch';\n\nexport interface TermMapping {\n /** Lexicon NSID, e.g. `id.sifa.profile.presentation`. */\n readonly lexicon: string;\n /**\n * Field name within the record. Omitted for a record-level class mapping\n * (what the record *is*, rather than what one of its fields means).\n */\n readonly field?: string;\n /** CURIEs, e.g. `dcterms:title`. Empty when `match` is `noMatch`. */\n readonly terms: readonly string[];\n readonly match: MatchStrength;\n /** Rationale. Always present when `match` is `noMatch`. */\n readonly note?: string;\n}\n\ninterface RawMapping {\n lexicon: string;\n field?: string;\n terms: string[];\n match: string;\n note?: string;\n}\n\ninterface RawUnmapped {\n lexicon: string;\n field?: string;\n reason: string;\n}\n\n/**\n * Every reconciliation Sifa asserts, including the deliberate non-mappings.\n *\n * The published document splits these into `mappings` and `unmapped`, which\n * reads better over the wire. Callers here want one list, so they are\n * flattened back together.\n */\nexport const TERM_MAPPINGS: readonly TermMapping[] = [\n ...(document.mappings as RawMapping[]).map((m): TermMapping => ({\n lexicon: m.lexicon,\n ...(m.field ? { field: m.field } : {}),\n terms: m.terms,\n match: m.match as MatchStrength,\n ...(m.note ? { note: m.note } : {}),\n })),\n ...(document.unmapped as RawUnmapped[]).map((u): TermMapping => ({\n lexicon: u.lexicon,\n ...(u.field ? { field: u.field } : {}),\n terms: [],\n match: 'noMatch',\n note: u.reason,\n })),\n];\n\n/**\n * Expand a CURIE (`dcterms:title`) to a full IRI. Returns null for an unknown\n * prefix rather than guessing a namespace.\n */\nexport function expandCurie(curie: string): string | null {\n const separator = curie.indexOf(':');\n if (separator <= 0) return null;\n const prefix = curie.slice(0, separator);\n const local = curie.slice(separator + 1);\n if (!local) return null;\n if (!Object.prototype.hasOwnProperty.call(VOCABULARIES, prefix)) return null;\n return `${VOCABULARIES[prefix]}${local}`;\n}\n\n/** All mappings declared for one lexicon NSID, record level and field level. */\nexport function mappingsForLexicon(nsid: string): readonly TermMapping[] {\n return TERM_MAPPINGS.filter((m) => m.lexicon === nsid);\n}\n\n/** True when Sifa has deliberately declined to map this lexicon or field. */\nexport function isDeliberatelyUnmapped(nsid: string, field?: string): boolean {\n return TERM_MAPPINGS.some(\n (m) => m.lexicon === nsid && m.field === field && m.match === 'noMatch',\n );\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/jsonld/term-mappings.json","../../src/jsonld/terms.ts"],"sourcesContent":["{\n \"$schema\": \"https://sifa.id/schemas/term-mappings/v1.json\",\n \"version\": \"1.0.0\",\n \"description\": \"Reconciliation between id.sifa.* lexicon terms and existing RDF vocabularies. RDF is used here as vocabulary only: Sifa records are Lexicon JSON on the AT Protocol, and nothing here changes how they are stored or transmitted. Match strengths use SKOS mapping relations.\",\n \"vocabularies\": {\n \"schema\": \"https://schema.org/\",\n \"bibo\": \"http://purl.org/ontology/bibo/\",\n \"dcterms\": \"http://purl.org/dc/terms/\",\n \"foaf\": \"http://xmlns.com/foaf/0.1/\",\n \"org\": \"http://www.w3.org/ns/org#\",\n \"prism\": \"http://prismstandard.org/namespaces/basic/2.1/\",\n \"event\": \"http://purl.org/NET/c4dm/event.owl#\",\n \"skos\": \"http://www.w3.org/2004/02/skos/core#\"\n },\n \"mappings\": [\n {\n \"lexicon\": \"id.sifa.org.profile\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:Organization\", \"org:FormalOrganization\"],\n \"note\": \"ROR is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.certification\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:EducationalOccupationalCredential\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.certification\",\n \"field\": \"credentialUrl\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:url\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.certification\",\n \"field\": \"expiresAt\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:validUntil\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.course\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:Course\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.course\",\n \"field\": \"number\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:courseCode\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:EducationalOccupationalCredential\"],\n \"note\": \"One record maps to two schema.org assertions: alumniOf for the institution and hasCredential for the degree.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"degree\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:hasCredential\", \"bibo:degree\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"eqfLevel\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:educationalLevel\"],\n \"note\": \"EQF is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"fieldOfStudy\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:educationalCredentialAwarded\"],\n \"note\": \"ISCED-F is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"institution\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:alumniOf\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.externalAccount\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:sameAs\", \"foaf:account\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.honor\",\n \"match\": \"broadMatch\",\n \"terms\": [\"schema:award\"],\n \"note\": \"schema:award is a bare string, so issuer and date are lost. No better term exists in BIBO either.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.involvement\",\n \"match\": \"broadMatch\",\n \"terms\": [\"org:Membership\"],\n \"note\": \"The kind known values have no external equivalent.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.language\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:knowsLanguage\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"match\": \"closeMatch\",\n \"terms\": [\"org:Membership\", \"schema:OrganizationRole\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"company\",\n \"match\": \"exactMatch\",\n \"terms\": [\"org:organization\", \"schema:worksFor\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"description\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:description\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"employmentType\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:employmentType\"],\n \"note\": \"schema:employmentType is free text. ESCO is the better value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"endedAt\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:endDate\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"entityRef\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:sameAs\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"location\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:jobLocation\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"startedAt\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:startDate\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"title\",\n \"match\": \"exactMatch\",\n \"terms\": [\"org:role\", \"schema:roleName\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"workplaceType\",\n \"match\": \"narrowMatch\",\n \"terms\": [\"schema:jobLocationType\"],\n \"note\": \"schema.org models only a remote flag; Sifa distinguishes onSite, remote, and hybrid.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"match\": \"closeMatch\",\n \"terms\": [\"bibo:Slideshow\", \"schema:PresentationDigitalDocument\"],\n \"note\": \"Neither term carries the \\\"reusable, deliverable more than once\\\" semantics of the Sifa record.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"coverImage\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:image\", \"foaf:depiction\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"description\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:abstract\", \"schema:abstract\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"duration\",\n \"match\": \"narrowMatch\",\n \"terms\": [\"schema:timeRequired\"],\n \"note\": \"The lexicon models a range; schema:timeRequired is a single ISO 8601 duration.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"intendedAudiences\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:audience\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"title\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:title\", \"schema:name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentation\",\n \"field\": \"writeupRef\",\n \"match\": \"closeMatch\",\n \"terms\": [\"dcterms:isReferencedBy\", \"schema:subjectOf\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:Event\", \"event:Event\"],\n \"note\": \"BIBO models this relation as bibo:Slideshow bibo:presentedAt event:Event.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"address\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:location\", \"event:place\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"coSpeakers\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:performer\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"date\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:startDate\", \"event:time\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"eventName\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:superEvent\", \"bibo:Conference\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"mode\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:eventAttendanceMode\"],\n \"note\": \"The community.lexicon.calendar.event known values are already one-to-one with the schema.org enumeration.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"presentationRef\",\n \"match\": \"closeMatch\",\n \"terms\": [\"bibo:presentedAt\", \"schema:workPerformed\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"role\",\n \"match\": \"closeMatch\",\n \"terms\": [\"bibo:performer\", \"schema:performer\"],\n \"note\": \"No external vocabulary distinguishes presenter, panelist, keynote, workshop and host at this granularity.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"status\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:eventStatus\"],\n \"note\": \"As with mode, already one-to-one with the schema.org enumeration.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.presentationDelivery\",\n \"field\": \"title\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:title\", \"schema:name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.project\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:Project\", \"foaf:Project\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.project\",\n \"field\": \"events\",\n \"match\": \"relatedMatch\",\n \"terms\": [\"schema:organizer\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"match\": \"broadMatch\",\n \"terms\": [\"bibo:Document\", \"schema:CreativeWork\"],\n \"note\": \"Refine to bibo:AcademicArticle, bibo:Book, bibo:Report or bibo:Thesis when a resource type is known. COAR is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"authors\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:authorList\", \"schema:author\"],\n \"note\": \"bibo:authorList is an ordered rdf:List and preserves author order, which schema:author does not guarantee.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"description\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:abstract\", \"schema:abstract\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"doi\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:doi\", \"prism:doi\"],\n \"note\": \"schema:identifier with a PropertyValue of propertyID 'doi' is the JSON-LD serialization; bibo:doi is the direct term.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"publishedAt\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:issued\", \"schema:datePublished\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"publisher\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:publisher\", \"schema:publisher\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"relatedIdentifiers\",\n \"match\": \"closeMatch\",\n \"terms\": [\"dcterms:relation\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"subtitle\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:alternativeHeadline\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"title\",\n \"match\": \"exactMatch\",\n \"terms\": [\"dcterms:title\", \"schema:name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"type\",\n \"match\": \"closeMatch\",\n \"terms\": [\"dcterms:type\", \"schema:additionalType\"],\n \"note\": \"COAR Resource Types is the anchor a consumer should map to. The values here are ORCID's because that is the vocabulary the data arrives in; deviating from the id.sifa.defs token convention is deliberate, since the vocabulary is ORCID's rather than Sifa's.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.publication\",\n \"field\": \"url\",\n \"match\": \"exactMatch\",\n \"terms\": [\"bibo:uri\", \"schema:url\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:Person\", \"foaf:Person\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"about\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:description\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"avatar\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:image\", \"foaf:depiction\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"displayName\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:name\", \"foaf:name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"familyName\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:familyName\", \"foaf:family_name\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"givenName\",\n \"match\": \"exactMatch\",\n \"terms\": [\"schema:givenName\", \"foaf:givenname\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"headline\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:jobTitle\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"location\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:homeLocation\"]\n },\n {\n \"lexicon\": \"id.sifa.profile.skill\",\n \"match\": \"closeMatch\",\n \"terms\": [\"schema:knowsAbout\", \"schema:DefinedTerm\"],\n \"note\": \"ESCO is the value anchor.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.volunteering\",\n \"match\": \"closeMatch\",\n \"terms\": [\"org:Membership\", \"schema:OrganizationRole\"]\n }\n ],\n \"unmapped\": [\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"pronouns\",\n \"reason\": \"No stable external term. schema.org has no pronouns property.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"discoverable\",\n \"reason\": \"Sifa indexing control, not a fact about the person.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.self\",\n \"field\": \"avatarSource\",\n \"reason\": \"Rendering instruction for apps, not a fact about the person.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.position\",\n \"field\": \"isPrimary\",\n \"reason\": \"Sifa display ordering concern.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.education\",\n \"field\": \"grade\",\n \"reason\": \"No comparable external term; grading scales are not portable.\"\n },\n {\n \"lexicon\": \"id.sifa.profile.language\",\n \"field\": \"proficiency\",\n \"reason\": \"The known values are CEFR-shaped but not CEFR-named. Map only; renaming a published lexicon for a cosmetic gain is not worth the break.\"\n },\n {\n \"lexicon\": \"id.sifa.confirmation\",\n \"reason\": \"A record affirming another record is reification. schema:Review and schema:ClaimReview both imply an evaluation that a confirmation does not make.\"\n },\n {\n \"lexicon\": \"id.sifa.endorsement\",\n \"reason\": \"Same reification problem as confirmation. Any mapping that lets a consumer aggregate endorsements into a score works against the descriptive-only trust model.\"\n },\n {\n \"lexicon\": \"id.sifa.graph.connection\",\n \"reason\": \"foaf:knows carries no consent semantics. A Sifa connection is bilateral and confirmed; flattening it to foaf:knows would misrepresent an unconfirmed acquaintance claim as mutual.\"\n },\n {\n \"lexicon\": \"id.sifa.graph.follow\",\n \"reason\": \"See id.sifa.graph.connection.\"\n },\n {\n \"lexicon\": \"id.sifa.meeting\",\n \"reason\": \"Attestation semantics; same reification problem as confirmation.\"\n }\n ]\n}\n","/**\n * Reconciliation between `id.sifa.*` lexicon terms and existing RDF\n * vocabularies.\n *\n * The facts live in sifa-lexicons, as `x-skos:*` annotations on the lexicon\n * defs and properties. Those annotations are published to the authority PDS,\n * so a third party resolving `id.sifa.*` already reads them; that makes the\n * lexicons the source of truth and `./term-mappings.json` a derived copy,\n * refreshed by `scripts/sync-term-mappings.mjs` and drift-checked in CI.\n *\n * To change a mapping, change the lexicon, not this file.\n *\n * Scope note: RDF is adopted here as *vocabulary only*. Sifa records are\n * Lexicon JSON on the AT Protocol; nothing in this module changes how records\n * are stored or transmitted. A mapping is a one-directional annotation over a\n * lexicon designed on its own merits, never a constraint on lexicon design.\n * When a term does not fit, the correct answer is `noMatch`, not a different\n * lexicon.\n */\n\nimport document from './term-mappings.json';\n\n/** Vocabulary prefix -> namespace IRI. */\nexport const VOCABULARIES: Readonly<Record<string, string>> = document.vocabularies;\n\nexport type VocabularyPrefix = keyof typeof document.vocabularies;\n\n/**\n * Strength of a mapping, using SKOS mapping relations so the table is itself\n * expressible as RDF.\n *\n * `noMatch` is not the absence of an entry. It is a deliberate statement that\n * no external term should be used for this concept, and it carries a reason.\n */\nexport type MatchStrength =\n 'exactMatch' | 'closeMatch' | 'broadMatch' | 'narrowMatch' | 'relatedMatch' | 'noMatch';\n\nexport interface TermMapping {\n /** Lexicon NSID, e.g. `id.sifa.profile.presentation`. */\n readonly lexicon: string;\n /**\n * Field name within the record. Omitted for a record-level class mapping\n * (what the record *is*, rather than what one of its fields means).\n */\n readonly field?: string;\n /** CURIEs, e.g. `dcterms:title`. Empty when `match` is `noMatch`. */\n readonly terms: readonly string[];\n readonly match: MatchStrength;\n /** Rationale. Always present when `match` is `noMatch`. */\n readonly note?: string;\n}\n\ninterface RawMapping {\n lexicon: string;\n field?: string;\n terms: string[];\n match: string;\n note?: string;\n}\n\ninterface RawUnmapped {\n lexicon: string;\n field?: string;\n reason: string;\n}\n\n/**\n * Every reconciliation Sifa asserts, including the deliberate non-mappings.\n *\n * The published document splits these into `mappings` and `unmapped`, which\n * reads better over the wire. Callers here want one list, so they are\n * flattened back together.\n */\nexport const TERM_MAPPINGS: readonly TermMapping[] = [\n ...(document.mappings as RawMapping[]).map((m): TermMapping => ({\n lexicon: m.lexicon,\n ...(m.field ? { field: m.field } : {}),\n terms: m.terms,\n match: m.match as MatchStrength,\n ...(m.note ? { note: m.note } : {}),\n })),\n ...(document.unmapped as RawUnmapped[]).map((u): TermMapping => ({\n lexicon: u.lexicon,\n ...(u.field ? { field: u.field } : {}),\n terms: [],\n match: 'noMatch',\n note: u.reason,\n })),\n];\n\n/**\n * Expand a CURIE (`dcterms:title`) to a full IRI. Returns null for an unknown\n * prefix rather than guessing a namespace.\n */\nexport function expandCurie(curie: string): string | null {\n const separator = curie.indexOf(':');\n if (separator <= 0) return null;\n const prefix = curie.slice(0, separator);\n const local = curie.slice(separator + 1);\n if (!local) return null;\n if (!Object.prototype.hasOwnProperty.call(VOCABULARIES, prefix)) return null;\n return `${VOCABULARIES[prefix]}${local}`;\n}\n\n/** All mappings declared for one lexicon NSID, record level and field level. */\nexport function mappingsForLexicon(nsid: string): readonly TermMapping[] {\n return TERM_MAPPINGS.filter((m) => m.lexicon === nsid);\n}\n\n/** True when Sifa has deliberately declined to map this lexicon or field. */\nexport function isDeliberatelyUnmapped(nsid: string, field?: string): boolean {\n return TERM_MAPPINGS.some(\n (m) => m.lexicon === nsid && m.field === field && m.match === 'noMatch',\n );\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { c as Profile, d as ProfilePosition, W as SkillRef, z as PresentationLinkView } from './index-
|
|
2
|
-
import { a0 as SifaApiConfig, a1 as ApiFetchOptions, o as ProfileView, a2 as CreateResult, a3 as WriteResult } from './types-
|
|
3
|
-
import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-
|
|
1
|
+
import { c as Profile, d as ProfilePosition, W as SkillRef, z as PresentationLinkView } from './index-B0BDMGLm.js';
|
|
2
|
+
import { a0 as SifaApiConfig, a1 as ApiFetchOptions, o as ProfileView, a2 as CreateResult, a3 as WriteResult } from './types-DB7UkX43.js';
|
|
3
|
+
import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-1oXL1guc.js';
|
|
4
4
|
import { i as EntitySearchResponse, E as EntitySearchResult, c as EntityMintDomainResponse, g as EntityResolveDomainResponse, l as EntitySelectRequest, n as EntitySelectResponse } from './follow-profile-ceqefXAw.js';
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { c as Profile, d as ProfilePosition, W as SkillRef, z as PresentationLinkView } from './index-
|
|
2
|
-
import { a0 as SifaApiConfig, a1 as ApiFetchOptions, o as ProfileView, a2 as CreateResult, a3 as WriteResult } from './types-
|
|
3
|
-
import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-
|
|
1
|
+
import { c as Profile, d as ProfilePosition, W as SkillRef, z as PresentationLinkView } from './index-BrWWVQLL.cjs';
|
|
2
|
+
import { a0 as SifaApiConfig, a1 as ApiFetchOptions, o as ProfileView, a2 as CreateResult, a3 as WriteResult } from './types-DQfWqSud.cjs';
|
|
3
|
+
import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-CpM9l8iq.cjs';
|
|
4
4
|
import { i as EntitySearchResponse, E as EntitySearchResult, c as EntityMintDomainResponse, g as EntityResolveDomainResponse, l as EntitySelectRequest, n as EntitySelectResponse } from './follow-profile-CQ3DTTak.cjs';
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -801,6 +801,7 @@ declare const ProfileSelfRecordSchema: z.ZodObject<{
|
|
|
801
801
|
}, z.core.$strip>>;
|
|
802
802
|
}, z.core.$strip>>;
|
|
803
803
|
discoverable: z.ZodOptional<z.ZodBoolean>;
|
|
804
|
+
avatarSource: z.ZodOptional<z.ZodString>;
|
|
804
805
|
createdAt: z.ZodString;
|
|
805
806
|
}, z.core.$strip>;
|
|
806
807
|
type ProfileSelfRecord = z.infer<typeof ProfileSelfRecordSchema>;
|
|
@@ -801,6 +801,7 @@ declare const ProfileSelfRecordSchema: z.ZodObject<{
|
|
|
801
801
|
}, z.core.$strip>>;
|
|
802
802
|
}, z.core.$strip>>;
|
|
803
803
|
discoverable: z.ZodOptional<z.ZodBoolean>;
|
|
804
|
+
avatarSource: z.ZodOptional<z.ZodString>;
|
|
804
805
|
createdAt: z.ZodString;
|
|
805
806
|
}, z.core.$strip>;
|
|
806
807
|
type ProfileSelfRecord = z.infer<typeof ProfileSelfRecordSchema>;
|
|
@@ -1969,7 +1969,8 @@ var sifaQueryKeys = {
|
|
|
1969
1969
|
// the Inbox item and the bell dropdown.
|
|
1970
1970
|
rpg: {
|
|
1971
1971
|
all: () => ["sifa", "rpg"],
|
|
1972
|
-
claimable: () => ["sifa", "rpg", "claimable"]
|
|
1972
|
+
claimable: () => ["sifa", "rpg", "claimable"],
|
|
1973
|
+
status: () => ["sifa", "rpg", "status"]
|
|
1973
1974
|
},
|
|
1974
1975
|
search: {
|
|
1975
1976
|
all: () => ["sifa", "search"],
|