/** @jsx jsx */ /** @jsxFrag React.Fragment */ import update from 'immutability-helper'; import React from 'react'; import { jsx } from '@emotion/react'; import { TextArea, InputGroup } from '@blueprintjs/core'; import type { ItemClassConfiguration, ItemEditView, ItemListView } from '@riboseinc/paneron-registry-kit/types'; import { PropertyDetailView } from '@riboseinc/paneron-registry-kit/views/util'; import { type Extent, CombinedExtentWidget, DEFAULT_EXTENT, } from './extent'; import { type CommonGRItemData, DEFAULTS as SHARED_DEFAULTS, EditView as CommonEditView, ListItemView as CommonListItemView, COMMON_PROPERTIES, RelatedItem, } from './common'; export interface DatumData extends CommonGRItemData { scope: string extent: Extent /** UUID of relevant Extent item. */ extentRef?: string /** A.k.a. “anchor”. */ originDescription: string coordinateReferenceEpoch: string | null releaseDate: string } export const DATUM_DEFAULTS: DatumData = { ...SHARED_DEFAULTS, scope: '', extent: DEFAULT_EXTENT, originDescription: '', releaseDate: '', coordinateReferenceEpoch: null, } as const; const DatumEditView: ItemEditView = function (props) { return ( { if (!props.onChange) { return; } props.onChange({ ...props.itemData, ...newData }); } : undefined}> {props.children} {/* TODO: We need to move anchor definition before remarks */}