Skip to content

issue-cas-7709: Schema Mapper UI shell + Schema Config DwC section#8035

Open
foozleface wants to merge 3 commits intoissue-cas-7714from
issue-cas-7709
Open

issue-cas-7709: Schema Mapper UI shell + Schema Config DwC section#8035
foozleface wants to merge 3 commits intoissue-cas-7714from
issue-cas-7709

Conversation

@foozleface
Copy link
Copy Markdown
Collaborator

Summary

PR 4 of 7 in CAS DwC export stack. Based on #8034.

Adds the Schema Mapper UI shell and a DwC section to Schema Config:

  • Schema Mapper component shell — entry point, routing, layout
  • Schema Config integration — new DwC tab/section for mapping admin
  • Frontend types/hooks for DwC schema mappings

Stack

  1. issue-cas-7746: extensions join table + vocabulary on Schemamapping #8032, issue-cas-7737: CacheTableMeta model + cache table infrastructure #8033, issue-cas-7714: DwC schema terms vocabulary + permissions #8034 (predecessors)
  2. issue-cas-7709 — Schema Mapper UI shell + Schema Config DwC section (this PR)
  3. issue-cas-7712, issue-cas-7710, issue-cas-7733

Test plan

  • Webpack build clean
  • Schema Config renders new DwC section without regressing existing tabs
  • Schema Mapper route loads without errors

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 27, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 4c03912c-5870-412b-8b38-bdfe68e8abcc

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch issue-cas-7709

Comment @coderabbitai help to get the list of available commands and usage tips.

Adds the export-app cache infrastructure:
- CacheTableMeta model + migration tracking build state per (mapping, collection)
- export.models shim: re-exports Caroline's Schemamapping/Exportdataset/
  Exportdatasetextension under PascalCase aliases for use throughout the package
- cache.py: get_cache_table_name, create_cache_table, drop_cache_table,
  _build_single_cache, _execute_and_populate, _infer_column_type, build_cache_tables
- dwca_utils.py: shared sanitize/build helpers used by cache and archive code
- Tests for SchemaMapping, ExportDataSet, ExportDataSetExtension, CacheTableMeta,
  and cache table operations

Fixes #7737. Closes overlap with the cache mechanism part of c381907
on dwc/foundation; remaining cache features (orphan cleanup, signal handlers,
build API, progress callbacks) ship in later atomic PRs.
…ssions

Adds the DwC vocabulary infrastructure:
- schema_terms.json — full DwC term list with descriptions and types
  (Occurrence core, Identification, MeasurementOrFact, Multimedia, etc.)
- get_schema_terms API endpoint serving the JSON
- SchemaMappingPT and ExportPackagePT PermissionTarget classes restricting
  Schema Mapper and Export Packages tools to institution admins
- Frontend vocabulary helper module that loads the terms JSON

Fixes #7714 (schema terms JSON files), #7727 (admin-only access).
Adds the frontend shell for the Schema Mapper tool:
- SchemaMapper/index.tsx — main UI shell with mapping list and editor wiring
- MappingList.tsx — list view of mappings
- TermDropdown.tsx — searchable DwC term picker
- VocabularyDialog.tsx — vocabulary key selection dialog
- types.ts — shared types
- userToolDefinitions: register Schema Mapper as a User Tool
- OverlayRoutes: add the Schema Mapper route
- SchemaConfig/Field.tsx: add 'Darwin Core' section to schema config
- localization/header.ts: localized strings for the new tool

Fixes #7709 (Schema Mapper tool), #7713 (vocabulary dialog),
#7715 (Term mapping column), #7729 (Schema Config DwC section).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 📋Back Log

Development

Successfully merging this pull request may close these issues.

1 participant