move backendTypes.ts to src/shared/types

This commit is contained in:
arttu
2024-12-08 14:58:17 +02:00
parent 68c7752216
commit a56703ce43
125 changed files with 129 additions and 131 deletions
+2 -4
View File
@@ -4,13 +4,11 @@ ENV TZ="Europe/Helsinki"
RUN npm i -g npm
WORKDIR /usr/src/app
RUN mkdir -p /usr/src/app/frontend/src/validators
USER node
COPY --chown=node frontend/src/backendTypes.d.ts /usr/src/app/frontend/src/backendTypes.d.ts
COPY --chown=node frontend/src/shared /usr/src/app/frontend/src/shared/
COPY --chown=node frontend/src/types.ts /usr/src/app/frontend/src/types.ts
COPY --chown=node frontend/src/validators /usr/src/app/frontend/src/validators
COPY --chown=node backend/package.json backend/
COPY --chown=node backend/package-lock.json backend/
COPY --chown=node backend/prisma/schema.prisma backend
@@ -41,7 +39,7 @@ RUN chown node:node /usr/src/app -R
WORKDIR /usr/src/app
USER node
COPY --from=backend-build --chown=node /usr/src/app/frontend/src/backendTypes.d.ts ../frontend/src/backendTypes.d.ts
COPY --from=backend-build --chown=node /usr/src/app/frontend/src/shared/types.d.ts ../frontend/src/shared/types.d.ts
COPY --from=backend-build --chown=node /usr/src/app/frontend/src/types.ts ../frontend/src/types.ts
COPY --from=backend-build --chown=node /usr/src/app/backend/build .
COPY --from=backend-build --chown=node /usr/src/app/backend/node_modules ./backend/node_modules
@@ -1,4 +1,4 @@
import type { CrossSearch } from '../../../../frontend/src/backendTypes'
import type { CrossSearch } from '../../../../frontend/src/shared/types'
import { beforeAll, afterAll, describe, it, expect } from '@jest/globals'
import { resetDatabase, send, resetDatabaseTimeout, login, logout } from '../utils'
import { pool } from '../../utils/db'
+1 -1
View File
@@ -1,5 +1,5 @@
import { afterAll, describe, it, expect } from '@jest/globals'
import type { ParsedGeoname } from '../../../frontend/src/backendTypes'
import type { ParsedGeoname } from '../../../frontend/src/shared/types'
import { send } from './utils'
import { pool } from '../utils/db'
+1 -1
View File
@@ -1,4 +1,4 @@
import type { ParsedGeoname } from '../../../../frontend/src/backendTypes'
import type { ParsedGeoname } from '../../../../frontend/src/shared/types'
export const localities: ParsedGeoname[] = [
{ countryName: 'Finland', lat: 63.05484, lng: 24.75291, name: 'Kumpula' },
@@ -1,5 +1,5 @@
import { beforeEach, beforeAll, afterAll, describe, it, expect } from '@jest/globals'
import { LocalityDetailsType } from '../../../../frontend/src/backendTypes'
import { LocalityDetailsType } from '../../../../frontend/src/shared/types'
import { editedLocality, newLocalityBasis } from './data'
import { login, resetDatabase, send, resetDatabaseTimeout } from '../utils'
import { pool } from '../../utils/db'
@@ -1,5 +1,5 @@
import { beforeEach, beforeAll, afterAll, describe, it, expect } from '@jest/globals'
import { LocalityDetailsType, SpeciesDetailsType } from '../../../../frontend/src/backendTypes'
import { LocalityDetailsType, SpeciesDetailsType } from '../../../../frontend/src/shared/types'
import { LogRow } from '../../services/write/writeOperations/types'
import { newLocalityBasis } from './data'
import { login, logout, resetDatabase, send, testLogRows, resetDatabaseTimeout, noPermError } from '../utils'
+1 -1
View File
@@ -1,4 +1,4 @@
import { SpeciesDetailsType } from '../../../../frontend/src/backendTypes'
import { SpeciesDetailsType } from '../../../../frontend/src/shared/types'
const references = [
{
@@ -1,5 +1,5 @@
import { beforeEach, beforeAll, afterAll, describe, it, expect } from '@jest/globals'
import { LocalityDetailsType, SpeciesDetailsType } from '../../../../frontend/src/backendTypes'
import { LocalityDetailsType, SpeciesDetailsType } from '../../../../frontend/src/shared/types'
import { LogRow } from '../../services/write/writeOperations/types'
import { editedLocality } from './data'
import { login, resetDatabase, send, testLogRows, resetDatabaseTimeout } from '../utils'
@@ -1,5 +1,5 @@
import { beforeEach, beforeAll, afterAll, describe, it, expect } from '@jest/globals'
import { ReferenceDetailsType } from '../../../../frontend/src/backendTypes'
import { ReferenceDetailsType } from '../../../../frontend/src/shared/types'
//import { LogRow } from '../../services/write/writeOperations/types'
import { newReferenceBasis, emptyReferenceBasis } from './data'
import { login, logout, resetDatabase, send, /*testLogRows,*/ resetDatabaseTimeout, noPermError } from '../utils'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, /*EditMetaData, Reference,*/ ReferenceDetailsType } from '../../../../frontend/src/backendTypes'
import { EditDataType, /*EditMetaData, Reference,*/ ReferenceDetailsType } from '../../../../frontend/src/shared/types'
/*
"ref_type_id": 1, "ref_type": "Journal"'
@@ -1,7 +1,7 @@
import { afterAll, beforeAll, beforeEach, describe, expect, it } from '@jest/globals'
import { pool } from '../../utils/db'
import { login, logout, resetDatabase, resetDatabaseTimeout, send } from '../utils'
import { ReferenceDetailsType } from '../../../../frontend/src/backendTypes'
import { ReferenceDetailsType } from '../../../../frontend/src/shared/types'
import Prisma from '../../../prisma/generated/now_test_client'
import { newReferenceBasis } from './data'
+1 -1
View File
@@ -1,5 +1,5 @@
import { beforeEach, beforeAll, afterAll, describe, it, expect } from '@jest/globals'
import { LocalityDetailsType, SpeciesDetailsType } from '../../../../frontend/src/backendTypes'
import { LocalityDetailsType, SpeciesDetailsType } from '../../../../frontend/src/shared/types'
import { LogRow } from '../../services/write/writeOperations/types'
import { newSpeciesBasis, newSpeciesWithoutRequiredFields } from './data'
import { login, logout, resetDatabase, send, testLogRows, resetDatabaseTimeout, noPermError } from '../utils'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, EditMetaData, SpeciesDetailsType } from '../../../../frontend/src/backendTypes'
import { EditDataType, EditMetaData, SpeciesDetailsType } from '../../../../frontend/src/shared/types'
const references = [
{
+1 -1
View File
@@ -1,5 +1,5 @@
import { beforeEach, beforeAll, afterAll, describe, it, expect } from '@jest/globals'
import { EditMetaData, SpeciesDetailsType } from '../../../../frontend/src/backendTypes'
import { EditMetaData, SpeciesDetailsType } from '../../../../frontend/src/shared/types'
import { LogRow } from '../../services/write/writeOperations/types'
import { login, resetDatabase, send, testLogRows, resetDatabaseTimeout } from '../utils'
import { editedSpecies } from './data'
@@ -2,7 +2,7 @@ import { beforeEach, beforeAll, afterAll, describe, it, expect } from '@jest/glo
import { LogRow } from '../../services/write/writeOperations/types'
import { login, logout, resetDatabase, send, testLogRows, resetDatabaseTimeout, noPermError } from '../utils'
import { newTimeBoundBasis } from './data'
import { TimeBoundDetailsType } from '../../../../frontend/src/backendTypes'
import { TimeBoundDetailsType } from '../../../../frontend/src/shared/types'
import { pool } from '../../utils/db'
let createdTimeBound: TimeBoundDetailsType | null = null
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, EditMetaData, TimeBoundDetailsType } from '../../../../frontend/src/backendTypes'
import { EditDataType, EditMetaData, TimeBoundDetailsType } from '../../../../frontend/src/shared/types'
const references = [
{
@@ -1,7 +1,7 @@
import { describe, it, beforeAll, afterAll, beforeEach, expect } from '@jest/globals'
import { editedTimeBound, newTimeBoundBasis } from './data'
import { send, resetDatabase, login, resetDatabaseTimeout, testLogRows } from '../utils'
import { TimeBoundDetailsType } from '../../../../frontend/src/backendTypes'
import { TimeBoundDetailsType } from '../../../../frontend/src/shared/types'
import { LogRow } from '../../services/write/writeOperations/types'
import { pool } from '../../utils/db'
@@ -1,5 +1,5 @@
import { beforeEach, beforeAll, afterAll, describe, it, expect } from '@jest/globals'
import { TimeUnitDetailsType } from '../../../../frontend/src/backendTypes'
import { TimeUnitDetailsType } from '../../../../frontend/src/shared/types'
import { LogRow } from '../../services/write/writeOperations/types'
import { login, logout, resetDatabase, send, testLogRows, resetDatabaseTimeout, noPermError } from '../utils'
import { newTimeUnitBasis } from './data'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, EditMetaData, TimeUnitDetailsType } from '../../../../frontend/src/backendTypes'
import { EditDataType, EditMetaData, TimeUnitDetailsType } from '../../../../frontend/src/shared/types'
const references = [
{
@@ -1,5 +1,5 @@
import { describe, it, beforeEach, beforeAll, afterAll, expect } from '@jest/globals'
import { TimeUnitDetailsType, EditDataType, EditMetaData } from '../../../../frontend/src/backendTypes'
import { TimeUnitDetailsType, EditDataType, EditMetaData } from '../../../../frontend/src/shared/types'
import { login, resetDatabase, send, resetDatabaseTimeout, testLogRows } from '../utils'
import { editedTimeUnit, newTimeUnitBasis, conflictingTimeUnit } from './data'
import { pool } from '../../utils/db'
+1 -1
View File
@@ -1,7 +1,7 @@
import request from 'supertest'
import app from '../app'
import { expect } from '@jest/globals'
import { UpdateLog } from '../../../frontend/src/backendTypes'
import { UpdateLog } from '../../../frontend/src/shared/types'
import { LogRow } from '../services/write/writeOperations/types'
let token: string | null = null
+1 -1
View File
@@ -2,7 +2,7 @@ import { Middleware } from '../types'
import { SECRET } from '../utils/config'
import jwt, { Secret, TokenExpiredError } from 'jsonwebtoken'
import { nowDb } from '../utils/db'
import { User } from '../../../frontend/src/backendTypes'
import { User } from '../../../frontend/src/shared/types'
import { Role } from '../../../frontend/src/types'
/*
+1 -1
View File
@@ -1,7 +1,7 @@
import { Router, Request } from 'express'
import { GEONAMES_USERNAME } from '../utils/config'
import { logger } from '../utils/logger'
import { GeonamesJSON, ParsedGeoname } from '../../../frontend/src/backendTypes'
import { GeonamesJSON, ParsedGeoname } from '../../../frontend/src/shared/types'
const router = Router()
+1 -1
View File
@@ -1,7 +1,7 @@
import { Request, Router } from 'express'
import { getAllLocalities, getLocalityDetails, validateEntireLocality } from '../services/locality'
import { fixBigInt } from '../utils/common'
import { EditDataType, EditMetaData, LocalityDetailsType } from '../../../frontend/src/backendTypes'
import { EditDataType, EditMetaData, LocalityDetailsType } from '../../../frontend/src/shared/types'
import { requireOneOf } from '../middlewares/authorizer'
import { Role } from '../../../frontend/src/types'
import { deleteLocality, writeLocality } from '../services/write/locality'
+1 -1
View File
@@ -11,7 +11,7 @@ import {
} from '../services/reference'
import { requireOneOf } from '../middlewares/authorizer'
import { Role } from '../../../frontend/src/types'
import { EditMetaData, ReferenceDetailsType, EditDataType } from '../../../frontend/src/backendTypes'
import { EditMetaData, ReferenceDetailsType, EditDataType } from '../../../frontend/src/shared/types'
import { deleteReference, writeReference } from '../services/write/reference'
const router = Router()
+1 -1
View File
@@ -1,7 +1,7 @@
import { Request, Router } from 'express'
import { getAllSpecies, getSpeciesDetails, validateEntireSpecies } from '../services/species'
import { fixBigInt } from '../utils/common'
import { EditMetaData, SpeciesDetailsType } from '../../../frontend/src/backendTypes'
import { EditMetaData, SpeciesDetailsType } from '../../../frontend/src/shared/types'
import { deleteSpecies, writeSpecies } from '../services/write/species'
import { requireOneOf } from '../middlewares/authorizer'
import { Role } from '../../../frontend/src/types'
+1 -1
View File
@@ -1,5 +1,5 @@
import { Request, Router } from 'express'
import { EditDataType, EditMetaData, TimeBoundDetailsType } from '../../../frontend/src/backendTypes'
import { EditDataType, EditMetaData, TimeBoundDetailsType } from '../../../frontend/src/shared/types'
import { Role } from '../../../frontend/src/types'
import { requireOneOf } from '../middlewares/authorizer'
import {
+1 -1
View File
@@ -1,5 +1,5 @@
import { Request, Router } from 'express'
import { EditDataType, EditMetaData, TimeUnitDetailsType } from '../../../frontend/src/backendTypes'
import { EditDataType, EditMetaData, TimeUnitDetailsType } from '../../../frontend/src/shared/types'
import { Role } from '../../../frontend/src/types'
import { requireOneOf } from '../middlewares/authorizer'
import { getAllSequences } from '../services/sequence'
+1 -1
View File
@@ -1,4 +1,4 @@
import { User, CrossSearch } from '../../../frontend/src/backendTypes'
import { User, CrossSearch } from '../../../frontend/src/shared/types'
import { Role } from '../../../frontend/src/types'
import { nowDb } from '../utils/db'
import {
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, EditMetaData, LocalityDetailsType, User } from '../../../frontend/src/backendTypes'
import { EditDataType, EditMetaData, LocalityDetailsType, User } from '../../../frontend/src/shared/types'
import { Role } from '../../../frontend/src/types'
import { validateLocality } from '../../../frontend/src/validators/locality'
import { ValidationObject, referenceValidator } from '../../../frontend/src/validators/validator'
@@ -1,5 +1,5 @@
import { PoolConnection } from 'mariadb'
import { User } from '../../../frontend/src/backendTypes'
import { User } from '../../../frontend/src/shared/types'
import { NOW_DB_NAME } from '../utils/config'
import { Role } from '../../../frontend/src/types'
import { pool } from '../utils/db'
+1 -1
View File
@@ -1,5 +1,5 @@
import { nowDb } from '../utils/db'
import { EditDataType, ReferenceDetailsType } from '../../../frontend/src/backendTypes'
import { EditDataType, ReferenceDetailsType } from '../../../frontend/src/shared/types'
import { ValidationObject } from '../../../frontend/src/validators/validator'
import { validateReference } from '../../../frontend/src/validators/reference'
import Prisma from '../../prisma/generated/now_test_client'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, EditMetaData, SpeciesDetailsType } from '../../../frontend/src/backendTypes'
import { EditDataType, EditMetaData, SpeciesDetailsType } from '../../../frontend/src/shared/types'
import { validateSpecies } from '../../../frontend/src/validators/species'
import { ValidationObject, referenceValidator } from '../../../frontend/src/validators/validator'
import Prisma from '../../prisma/generated/now_test_client'
+1 -1
View File
@@ -1,6 +1,6 @@
import { logDb, nowDb } from '../utils/db'
import { validateTimeBound } from '../../../frontend/src/validators/timeBound'
import { TimeBoundDetailsType, EditDataType, EditMetaData } from '../../../frontend/src/backendTypes'
import { TimeBoundDetailsType, EditDataType, EditMetaData } from '../../../frontend/src/shared/types'
import Prisma from '../../prisma/generated/now_test_client'
import { ValidationObject, referenceValidator } from '../../../frontend/src/validators/validator'
import { getReferenceDetails } from './reference'
+1 -1
View File
@@ -1,5 +1,5 @@
import { logDb, nowDb } from '../utils/db'
import { EditDataType, TimeUnitDetailsType, EditMetaData } from '../../../frontend/src/backendTypes'
import { EditDataType, TimeUnitDetailsType, EditMetaData } from '../../../frontend/src/shared/types'
import { ValidationObject, referenceValidator } from '../../../frontend/src/validators/validator'
import { validateTimeUnit } from '../../../frontend/src/validators/timeUnit'
import { getReferenceDetails } from './reference'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, FixBigInt, ReferenceAuthorType } from '../../../../frontend/src/backendTypes'
import { EditDataType, FixBigInt, ReferenceAuthorType } from '../../../../frontend/src/shared/types'
import { getFieldsOfTables, nowDb } from '../../utils/db'
import { filterAllowedKeys } from './writeOperations/utils'
import Prisma from '../../../prisma/generated/now_test_client'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, FixBigInt, ReferenceJournalType } from '../../../../frontend/src/backendTypes'
import { EditDataType, FixBigInt, ReferenceJournalType } from '../../../../frontend/src/shared/types'
import { getFieldsOfTables, nowDb } from '../../utils/db'
import { filterAllowedKeys } from './writeOperations/utils'
import Prisma from '../../../prisma/generated/now_test_client'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, LocalityDetailsType, Reference, User } from '../../../../frontend/src/backendTypes'
import { EditDataType, LocalityDetailsType, Reference, User } from '../../../../frontend/src/shared/types'
import { NOW_DB_NAME } from '../../utils/config'
import { WriteHandler } from './writeOperations/writeHandler'
import { getFieldsOfTables } from '../../utils/db'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, FixBigInt, ReferenceDetailsType } from '../../../../frontend/src/backendTypes'
import { EditDataType, FixBigInt, ReferenceDetailsType } from '../../../../frontend/src/shared/types'
import { getFieldsOfTables, nowDb } from '../../utils/db'
import { getReferenceDetails } from '../reference'
import { filterAllowedKeys, convertToPrismaDate } from './writeOperations/utils'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, FixBigInt, Reference, SpeciesDetailsType, User } from '../../../../frontend/src/backendTypes'
import { EditDataType, FixBigInt, Reference, SpeciesDetailsType, User } from '../../../../frontend/src/shared/types'
import { NOW_DB_NAME } from '../../utils/config'
import { WriteHandler } from './writeOperations/writeHandler'
import { getFieldsOfTables } from '../../utils/db'
+1 -1
View File
@@ -5,7 +5,7 @@ import {
LocalityDetailsType,
TimeUnitDetailsType,
User,
} from '../../../../frontend/src/backendTypes'
} from '../../../../frontend/src/shared/types'
import { NOW_DB_NAME } from '../../utils/config'
import { WriteHandler } from './writeOperations/writeHandler'
import { getFieldsOfTables } from '../../utils/db'
+1 -1
View File
@@ -4,7 +4,7 @@ import {
TimeUnitDetailsType,
LocalityDetailsType,
User,
} from '../../../../frontend/src/backendTypes'
} from '../../../../frontend/src/shared/types'
import { NOW_DB_NAME } from '../../utils/config'
import { WriteHandler } from './writeOperations/writeHandler'
import { getFieldsOfTables } from '../../utils/db'
@@ -1,4 +1,4 @@
import { Reference } from '../../../../../../frontend/src/backendTypes'
import { Reference } from '../../../../../../frontend/src/shared/types'
import { COORDINATOR } from '../../../../utils/config'
import { AllowedTables, ActionType, Item, LogRow, PrimaryTables, WriteItem, UpdateEntry } from '../types'
import { WriteHandler } from '../writeHandler'
@@ -1,4 +1,4 @@
import { Reference } from '../../../../../../frontend/src/backendTypes'
import { Reference } from '../../../../../../frontend/src/shared/types'
import { LOG_DB_NAME } from '../../../../utils/config'
import { LogRow, ActionType, AllowedTables, UpdateEntry } from '../types'
import { WriteHandler } from '../writeHandler'
@@ -1,4 +1,4 @@
import { Editable } from '../../../../../frontend/src/backendTypes'
import { Editable } from '../../../../../frontend/src/shared/types'
import { DbWriteItem } from './databaseHandler'
import { DbValue } from './types'
@@ -1,4 +1,4 @@
import { Reference, RowState } from '../../../../../frontend/src/backendTypes'
import { Reference, RowState } from '../../../../../frontend/src/shared/types'
import { logger } from '../../../utils/logger'
import { logAllUpdates } from './updateLogger/prepareUpdates'
import { DatabaseHandler, DbWriteItem } from './databaseHandler'
+1 -1
View File
@@ -1,4 +1,4 @@
import { EditDataType, TimeUnitDetailsType, TimeBoundDetailsType } from '../../../frontend/src/backendTypes'
import { EditDataType, TimeUnitDetailsType, TimeBoundDetailsType } from '../../../frontend/src/shared/types'
import { nowDb } from './db'
import { calculateLocalityMaxAge, calculateLocalityMinAge } from './ageCalculator'
+1 -1
View File
@@ -1,5 +1,5 @@
import { MRT_ColumnDef } from 'material-react-table'
import { Reference } from './backendTypes'
import { Reference } from './shared/types'
import { Cell } from './components/commonComponents'
export const formatLastLoginDate = (date: Date) => {
@@ -1,6 +1,6 @@
import { useMemo } from 'react'
import { type MRT_ColumnDef } from 'material-react-table'
import { CrossSearch } from '@/backendTypes'
import { CrossSearch } from '@/shared/types'
import { TableView } from '../TableView/TableView'
import { useGetAllCrossSearchQuery } from '@/redux/crossSearchReducer'
@@ -3,7 +3,7 @@ import { ReactNode, createContext, useState, JSX, useEffect, Context, useContext
import { DropdownOption } from '../common/editingComponents'
import { cloneDeep } from 'lodash-es'
import { ValidationObject } from '@/validators/validator'
import { EditDataType } from '@/backendTypes'
import { EditDataType } from '@/shared/types'
import {
TextFieldOptions,
OptionalRadioSelectionProps,
@@ -15,7 +15,7 @@ import { DetailBrowser } from './DetailBrowser'
import { StagingView } from './StagingView'
import { ErrorBox, ReturnButton, WriteButton } from './components'
import { ValidationObject } from '@/validators/validator'
import { EditDataType } from '@/backendTypes'
import { EditDataType } from '@/shared/types'
import { usePageContext } from '../Page'
export type TabType = {
@@ -4,7 +4,7 @@ import { SelectingTable } from './common/SelectingTable'
import { useGetAllReferencesQuery } from '@/redux/referenceReducer'
import { referenceTableColumns } from '@/common'
import { MRT_RowData } from 'material-react-table'
import { Editable, Reference } from '@/backendTypes'
import { Editable, Reference } from '@/shared/types'
import { EditableTable } from './common/EditableTable'
export const StagingView = <T extends MRT_RowData>() => {
@@ -1,4 +1,4 @@
import { EditDataType, RowState } from '@/backendTypes'
import { EditDataType, RowState } from '@/shared/types'
import { CircularProgress, Box, Button } from '@mui/material'
import {
type MRT_ColumnDef,
@@ -1,7 +1,7 @@
import { Box, TextField } from '@mui/material'
import { EditingModal } from './EditingModal'
import { useForm } from 'react-hook-form'
import { EditDataType, Editable } from '@/backendTypes'
import { EditDataType, Editable } from '@/shared/types'
import { useDetailContext } from '../Context/DetailContext'
export type EditingFormField = { name: string; label: string; required?: boolean }
@@ -4,7 +4,7 @@ import { TableView } from '@/components/TableView/TableView'
import { useDetailContext } from '../Context/DetailContext'
import { useMemo } from 'react'
import { Box, CircularProgress } from '@mui/material'
import { EditDataType } from '@/backendTypes'
import { EditDataType } from '@/shared/types'
/*
If editabletable has different type than selectingtable rows,
@@ -1,4 +1,4 @@
import { ReferenceOfUpdate, UpdateLog } from '@/backendTypes'
import { ReferenceOfUpdate, UpdateLog } from '@/shared/types'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { EditingModal } from '@/components/DetailView/common/EditingModal'
import { SimpleTable } from '@/components/DetailView/common/SimpleTable'
@@ -4,7 +4,7 @@ import {
SpeciesDetailsType,
TimeBoundDetailsType,
TimeUnitDetailsType,
} from '@/backendTypes'
} from '@/shared/types'
export const emptyLocality = {
bfa_max: '',
@@ -19,7 +19,7 @@ import { RegisterOptions, FieldValues, UseFormRegisterReturn, FieldErrors } from
import { useDetailContext } from '../Context/DetailContext'
import { DataValue } from './tabLayoutHelpers'
import { modalStyle } from './misc'
import { EditDataType } from '@/backendTypes'
import { EditDataType } from '@/shared/types'
import { calculateLocalityMinAge, calculateLocalityMaxAge } from '@/util/ageCalculator'
import { checkFieldErrors } from './checkFieldErrors'
@@ -1,7 +1,7 @@
import { Card, Typography, Box, Grid, Divider } from '@mui/material'
import { ReactNode } from 'react'
import { useDetailContext } from '../Context/DetailContext'
import { EditDataType } from '@/backendTypes'
import { EditDataType } from '@/shared/types'
export const ArrayToTable = ({ array, half }: { array: Array<Array<ReactNode>>; half?: boolean }) => {
const maxRowLength = Math.max(...array.map(row => row.length))
@@ -5,7 +5,7 @@ import ArrowBackIcon from '@mui/icons-material/ArrowBack'
import SaveIcon from '@mui/icons-material/Save'
import { usePageContext } from '../Page'
import { useDetailContext } from './Context/DetailContext'
import { EditDataType, Editable, Reference } from '@/backendTypes'
import { EditDataType, Editable, Reference } from '@/shared/types'
import { useState, useEffect, Fragment } from 'react'
import { referenceValidator } from '@/validators/validator'
@@ -16,7 +16,7 @@ import { MuseumTab } from './Tabs/MuseumTab'
import { ProjectTab } from './Tabs/ProjectTab'
import { SpeciesTab } from './Tabs/SpeciesTab'
import { TaphonomyTab } from './Tabs/TaphonomyTab'
import { EditDataType, LocalityDetailsType, ValidationErrors } from '@/backendTypes'
import { EditDataType, LocalityDetailsType, ValidationErrors } from '@/shared/types'
import { validateLocality } from '@/validators/locality'
import { UpdateTab } from '../DetailView/common/UpdateTab'
import { emptyLocality } from '../DetailView/common/defaultValues'
@@ -1,7 +1,7 @@
import { useMemo } from 'react'
import { type MRT_ColumnDef } from 'material-react-table'
import { useGetAllLocalitiesQuery, useGetLocalitySpeciesListMutation } from '../../redux/localityReducer'
import { Locality } from '@/backendTypes'
import { Locality } from '@/shared/types'
import { TableView } from '../TableView/TableView'
import { useNotify } from '@/hooks/notification'
@@ -1,4 +1,4 @@
import { LocalityDetailsType, TimeUnitDetailsType } from '@/backendTypes'
import { LocalityDetailsType, TimeUnitDetailsType } from '@/shared/types'
import { BasisForAgeSelection } from '@/components/DetailView/common/editingComponents'
import { emptyOption } from '@/components/DetailView/common/misc'
import { ArrayFrame, HalfFrames } from '@/components/DetailView/common/tabLayoutHelpers'
@@ -1,4 +1,4 @@
import { LocalityDetailsType } from '@/backendTypes'
import { LocalityDetailsType } from '@/shared/types'
import { emptyOption } from '@/components/DetailView/common/misc'
import { ArrayFrame } from '@/components/DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
@@ -1,4 +1,4 @@
import { LocalityDetailsType } from '@/backendTypes'
import { LocalityDetailsType } from '@/shared/types'
import { emptyOption } from '@/components/DetailView/common/misc'
import { ArrayFrame, HalfFrames } from '@/components/DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
@@ -1,4 +1,4 @@
import { LocalityDetailsType } from '@/backendTypes'
import { LocalityDetailsType } from '@/shared/types'
import { ArrayFrame } from '../../DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { calculateMeanHypsodonty } from '@/types'
@@ -1,4 +1,4 @@
import { Editable, LocalityDetailsType, SedimentaryStructure, SedimentaryStructureValues } from '@/backendTypes'
import { Editable, LocalityDetailsType, SedimentaryStructure, SedimentaryStructureValues } from '@/shared/types'
import { EditableTable } from '@/components/DetailView/common/EditableTable'
import { emptyOption } from '@/components/DetailView/common/misc'
import { SelectingTable } from '@/components/DetailView/common/SelectingTable'
@@ -1,4 +1,4 @@
import { Editable, LocalityDetailsType, LocalitySynonym } from '@/backendTypes'
import { Editable, LocalityDetailsType, LocalitySynonym } from '@/shared/types'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { Grouped, ArrayFrame, HalfFrames } from '@/components/DetailView/common/tabLayoutHelpers'
import { Box, TextField } from '@mui/material'
@@ -1,4 +1,4 @@
import { Editable, LocalityDetailsType, Museum } from '@/backendTypes'
import { Editable, LocalityDetailsType, Museum } from '@/shared/types'
import { EditableTable } from '@/components/DetailView/common/EditableTable'
import { Grouped } from '@/components/DetailView/common/tabLayoutHelpers'
import { SelectingTable } from '@/components/DetailView/common/SelectingTable'
@@ -1,4 +1,4 @@
import { Editable, LocalityDetailsType, Project } from '@/backendTypes'
import { Editable, LocalityDetailsType, Project } from '@/shared/types'
import { EditableTable } from '@/components/DetailView/common/EditableTable'
import { Grouped } from '@/components/DetailView/common/tabLayoutHelpers'
import { SelectingTable } from '@/components/DetailView/common/SelectingTable'
@@ -1,4 +1,4 @@
import { LocalityDetailsType, LocalitySpecies, Species, SpeciesDetailsType } from '@/backendTypes'
import { LocalityDetailsType, LocalitySpecies, Species, SpeciesDetailsType } from '@/shared/types'
import { EditableTable } from '@/components/DetailView/common/EditableTable'
import { EditingForm } from '@/components/DetailView/common/EditingForm'
import { SelectingTable } from '@/components/DetailView/common/SelectingTable'
@@ -1,4 +1,4 @@
import { Editable, LocalityDetailsType, CollectingMethod } from '@/backendTypes'
import { Editable, LocalityDetailsType, CollectingMethod } from '@/shared/types'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { Grouped, ArrayFrame, HalfFrames } from '@/components/DetailView/common/tabLayoutHelpers'
import { MRT_ColumnDef } from 'material-react-table'
@@ -5,7 +5,7 @@ import 'leaflet/dist/leaflet.css'
import markerIconPng from 'leaflet/dist/images/marker-icon.png'
import { Icon } from 'leaflet'
import { useLazyGetGeonamesQuery } from '../../redux/geonamesReducer'
import { ParsedGeoname } from '../../backendTypes'
import { ParsedGeoname } from '../../shared/types'
type Coordinate = {
lat: number
@@ -4,7 +4,7 @@ import { CircularProgress } from '@mui/material'
import { DetailView, TabType } from '../DetailView/DetailView'
import { PersonTab } from './Tabs/PersonTab'
import { useUser } from '@/hooks/user'
import { EditDataType, PersonDetailsType } from '@/backendTypes'
import { EditDataType, PersonDetailsType } from '@/shared/types'
export const PersonDetails = () => {
const { id: idFromUrl } = useParams()
@@ -1,7 +1,7 @@
import { useMemo } from 'react'
import { type MRT_ColumnDef } from 'material-react-table'
import { useGetAllPersonsQuery } from '../../redux/personReducer'
import { PersonDetailsType } from '@/backendTypes'
import { PersonDetailsType } from '@/shared/types'
import { TableView } from '../TableView/TableView'
import { formatLastLoginDate } from '@/common'
@@ -1,4 +1,4 @@
import { PersonDetailsType } from '@/backendTypes'
import { PersonDetailsType } from '@/shared/types'
import { ArrayFrame, Grouped } from '../../DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { formatLastLoginDate } from '@/common'
@@ -1,7 +1,7 @@
import { useMemo } from 'react'
import { type MRT_ColumnDef } from 'material-react-table'
import { useGetAllProjectsQuery } from '../../redux/projectReducer'
import { Project } from '@/backendTypes'
import { Project } from '@/shared/types'
import { TableView } from '../TableView/TableView'
export const ProjectTable = ({ selectorFn }: { selectorFn?: (id: Project) => void }) => {
@@ -1,4 +1,4 @@
import { ProjectDetailsType, ProjectPeople } from '@/backendTypes'
import { ProjectDetailsType, ProjectPeople } from '@/shared/types'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { ArrayFrame, Grouped } from '@/components/DetailView/common/tabLayoutHelpers'
import { MRT_ColumnDef } from 'material-react-table'
@@ -7,7 +7,7 @@ import {
useGetReferenceDetailsQuery,
useDeleteReferenceMutation,
} from '@/redux/referenceReducer'
import { EditDataType, ReferenceDetailsType, ValidationErrors } from '@/backendTypes'
import { EditDataType, ReferenceDetailsType, ValidationErrors } from '@/shared/types'
import { emptyReference } from '../DetailView/common/defaultValues'
import { validateReference } from '@/validators/reference'
import { useNotify } from '@/hooks/notification'
@@ -1,5 +1,5 @@
import { useGetAllReferencesQuery } from '../../redux/referenceReducer'
import { Reference } from '@/backendTypes'
import { Reference } from '@/shared/types'
import { TableView } from '../TableView/TableView'
import { referenceTableColumns } from '@/common'
@@ -1,5 +1,5 @@
import React, { useEffect } from 'react'
import { ReferenceDetailsType, ReferenceAuthorType, RowState, EditDataType } from '@/backendTypes'
import { ReferenceDetailsType, ReferenceAuthorType, RowState, EditDataType } from '@/shared/types'
import { EditableTable } from '@/components/DetailView/common/EditableTable'
import { EditingForm } from '@/components/DetailView/common/EditingForm'
import { SelectingTable } from '@/components/DetailView/common/SelectingTable'
@@ -1,5 +1,5 @@
/* eslint-disable react/prop-types */
import { ReferenceDetailsType, ReferenceJournalType } from '@/backendTypes'
import { ReferenceDetailsType, ReferenceJournalType } from '@/shared/types'
import { EditableTable } from '@/components/DetailView/common/EditableTable'
import { EditingForm } from '@/components/DetailView/common/EditingForm'
import { SelectingTable } from '@/components/DetailView/common/SelectingTable'
@@ -1,4 +1,4 @@
import { ReferenceDetailsType } from '@/backendTypes'
import { ReferenceDetailsType } from '@/shared/types'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { ArrayFrame } from '@/components/DetailView/common/tabLayoutHelpers'
import { useGetReferenceTypesQuery } from '@/redux/referenceReducer'
@@ -1,7 +1,7 @@
import { useMemo } from 'react'
import { type MRT_ColumnDef } from 'material-react-table'
import { useGetAllRegionsQuery } from '../../redux/regionReducer'
import { Region } from '@/backendTypes'
import { Region } from '@/shared/types'
import { TableView } from '../TableView/TableView'
export const RegionTable = ({ selectorFn }: { selectorFn?: (id: Region) => void }) => {
@@ -1,4 +1,4 @@
import { RegionDetails, RegionCoordinator, RegionCountry } from '@/backendTypes'
import { RegionDetails, RegionCoordinator, RegionCountry } from '@/shared/types'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { Grouped } from '@/components/DetailView/common/tabLayoutHelpers'
import { MRT_ColumnDef } from 'material-react-table'
@@ -1,7 +1,7 @@
import { useMemo } from 'react'
import { type MRT_ColumnDef } from 'material-react-table'
import { useGetSequencesQuery } from '../../redux/timeUnitReducer'
import { Sequence } from '@/backendTypes'
import { Sequence } from '@/shared/types'
import { TableView } from '../TableView/TableView'
export const SequenceTable = ({ selectorFn }: { selectorFn?: (id: Sequence) => void }) => {
@@ -11,7 +11,7 @@ import { SynonymTab } from './Tabs/SynonymTab'
import { TaxonomyTab } from './Tabs/TaxonomyTab'
import { TeethTab } from './Tabs/TeethTab'
import { UpdateTab } from '../DetailView/common/UpdateTab'
import { EditDataType, SpeciesDetailsType, ValidationErrors } from '@/backendTypes'
import { EditDataType, SpeciesDetailsType, ValidationErrors } from '@/shared/types'
import { validateSpecies } from '@/validators/species'
import { emptySpecies } from '../DetailView/common/defaultValues'
import { useNotify } from '@/hooks/notification'
@@ -1,7 +1,7 @@
import { useMemo } from 'react'
import { type MRT_ColumnDef } from 'material-react-table'
import { useGetAllSpeciesQuery } from '../../redux/speciesReducer'
import { Species } from '@/backendTypes'
import { Species } from '@/shared/types'
import { TableView } from '../TableView/TableView'
export const SpeciesTable = ({ selectorFn }: { selectorFn?: (id: Species) => void }) => {
@@ -1,4 +1,4 @@
import { SpeciesDetailsType } from '@/backendTypes'
import { SpeciesDetailsType } from '@/shared/types'
import { emptyOption } from '@/components/DetailView/common/misc'
import { ArrayFrame } from '@/components/DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
@@ -1,4 +1,4 @@
import { Editable, SpeciesDetailsType, SpeciesLocality } from '@/backendTypes'
import { Editable, SpeciesDetailsType, SpeciesLocality } from '@/shared/types'
import { EditableTable } from '@/components/DetailView/common/EditableTable'
import { EditingModal } from '@/components/DetailView/common/EditingModal'
import { Grouped } from '@/components/DetailView/common/tabLayoutHelpers'
@@ -1,4 +1,4 @@
import { Editable, Locality, SpeciesDetailsType } from '@/backendTypes'
import { Editable, Locality, SpeciesDetailsType } from '@/shared/types'
import { Grouped } from '@/components/DetailView/common/tabLayoutHelpers'
import { EditableTable } from '@/components/DetailView/common/EditableTable'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
@@ -1,4 +1,4 @@
import { SpeciesDetailsType } from '@/backendTypes'
import { SpeciesDetailsType } from '@/shared/types'
import { ArrayFrame, HalfFrames } from '@/components/DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { emptyOption } from '@/components/DetailView/common/misc'
@@ -1,4 +1,4 @@
import { SpeciesDetailsType } from '@/backendTypes'
import { SpeciesDetailsType } from '@/shared/types'
import { ArrayFrame, HalfFrames } from '@/components/DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@components/DetailView/Context/DetailContext'
import { emptyOption } from '@/components/DetailView/common/misc'
@@ -1,4 +1,4 @@
import { Editable, EditDataType, Species, SpeciesDetailsType, SpeciesSynonym } from '@/backendTypes'
import { Editable, EditDataType, Species, SpeciesDetailsType, SpeciesSynonym } from '@/shared/types'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { Grouped } from '@/components/DetailView/common/tabLayoutHelpers'
import { MRT_ColumnDef } from 'material-react-table'
@@ -1,4 +1,4 @@
import { SpeciesDetailsType } from '@/backendTypes'
import { SpeciesDetailsType } from '@/shared/types'
import { ArrayFrame, HalfFrames } from '@/components/DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
import { emptyOption } from '@/components/DetailView/common/misc'
@@ -1,4 +1,4 @@
import { SpeciesDetailsType } from '@/backendTypes'
import { SpeciesDetailsType } from '@/shared/types'
import { emptyOption } from '@/components/DetailView/common/misc'
import { ArrayFrame, HalfFrames } from '@/components/DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
@@ -1,4 +1,4 @@
import { TimeBoundDetailsType } from '@/backendTypes'
import { TimeBoundDetailsType } from '@/shared/types'
import { ArrayFrame } from '@/components/DetailView/common/tabLayoutHelpers'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
@@ -1,4 +1,4 @@
import { TimeUnit, TimeBoundDetailsType } from '@/backendTypes'
import { TimeUnit, TimeBoundDetailsType } from '@/shared/types'
import { useGetTimeBoundTimeUnitsQuery } from '@/redux/timeBoundReducer'
import { CircularProgress } from '@mui/material'
import { useDetailContext } from '@/components/DetailView/Context/DetailContext'
@@ -1,4 +1,4 @@
import { EditDataType, TimeBoundDetailsType, ValidationErrors } from '@/backendTypes.js'
import { EditDataType, TimeBoundDetailsType, ValidationErrors } from '@/shared/types.js'
import { useNotify } from '@/hooks/notification.ts'
import { CircularProgress } from '@mui/material'
import { useEffect } from 'react'
@@ -1,7 +1,7 @@
import { useMemo } from 'react'
import { type MRT_ColumnDef } from 'material-react-table'
import { useGetAllTimeBoundsQuery } from '../../redux/timeBoundReducer'
import { TimeBound } from '@/backendTypes'
import { TimeBound } from '@/shared/types'
import { TableView } from '../TableView/TableView'
export const TimeBoundTable = ({

Some files were not shown because too many files have changed in this diff Show More