Changeset View
Changeset View
Standalone View
Standalone View
keyserver/src/responders/entry-responders.js
Show All 10 Lines | import type { | ||||
DeleteEntryRequest, | DeleteEntryRequest, | ||||
DeleteEntryResponse, | DeleteEntryResponse, | ||||
RestoreEntryRequest, | RestoreEntryRequest, | ||||
RestoreEntryResponse, | RestoreEntryResponse, | ||||
FetchEntryInfosResponse, | FetchEntryInfosResponse, | ||||
DeltaEntryInfosResult, | DeltaEntryInfosResult, | ||||
SaveEntryResponse, | SaveEntryResponse, | ||||
} from 'lib/types/entry-types.js'; | } from 'lib/types/entry-types.js'; | ||||
import { calendarThreadFilterTypes } from 'lib/types/filter-types.js'; | import { | ||||
type CalendarFilter, | |||||
calendarThreadFilterTypes, | |||||
} from 'lib/types/filter-types.js'; | |||||
import type { | import type { | ||||
FetchEntryRevisionInfosResult, | FetchEntryRevisionInfosResult, | ||||
FetchEntryRevisionInfosRequest, | FetchEntryRevisionInfosRequest, | ||||
} from 'lib/types/history-types.js'; | } from 'lib/types/history-types.js'; | ||||
import { ServerError } from 'lib/utils/errors.js'; | import { ServerError } from 'lib/utils/errors.js'; | ||||
import { tString, tShape, tDate } from 'lib/utils/validation-utils.js'; | import { tString, tShape, tDate } from 'lib/utils/validation-utils.js'; | ||||
import createEntry from '../creators/entry-creator.js'; | import createEntry from '../creators/entry-creator.js'; | ||||
import { deleteEntry, restoreEntry } from '../deleters/entry-deleters.js'; | import { deleteEntry, restoreEntry } from '../deleters/entry-deleters.js'; | ||||
import { | import { | ||||
fetchEntryInfos, | fetchEntryInfos, | ||||
fetchEntryRevisionInfo, | fetchEntryRevisionInfo, | ||||
fetchEntriesForSession, | fetchEntriesForSession, | ||||
} from '../fetchers/entry-fetchers.js'; | } from '../fetchers/entry-fetchers.js'; | ||||
import { verifyThreadIDs } from '../fetchers/thread-fetchers.js'; | import { verifyThreadIDs } from '../fetchers/thread-fetchers.js'; | ||||
import type { Viewer } from '../session/viewer.js'; | import type { Viewer } from '../session/viewer.js'; | ||||
import { | import { | ||||
updateEntry, | updateEntry, | ||||
compareNewCalendarQuery, | compareNewCalendarQuery, | ||||
} from '../updaters/entry-updaters.js'; | } from '../updaters/entry-updaters.js'; | ||||
import { commitSessionUpdate } from '../updaters/session-updaters.js'; | import { commitSessionUpdate } from '../updaters/session-updaters.js'; | ||||
import { validateInput } from '../utils/validation-utils.js'; | import { validateInput } from '../utils/validation-utils.js'; | ||||
const entryQueryInputValidator: TInterface = tShape({ | type EntryQueryInput = { | ||||
+startDate: string, | |||||
+endDate: string, | |||||
+navID?: ?string, | |||||
+includeDeleted?: ?boolean, | |||||
+filters?: ?$ReadOnlyArray<CalendarFilter>, | |||||
}; | |||||
const entryQueryInputValidator: TInterface<EntryQueryInput> = tShape({ | |||||
navID: t.maybe(t.String), | navID: t.maybe(t.String), | ||||
startDate: tDate, | startDate: tDate, | ||||
endDate: tDate, | endDate: tDate, | ||||
includeDeleted: t.maybe(t.Boolean), | includeDeleted: t.maybe(t.Boolean), | ||||
filters: t.maybe( | filters: t.maybe( | ||||
t.list( | t.list( | ||||
t.union([ | t.union([ | ||||
tShape({ | tShape({ | ||||
type: tString(calendarThreadFilterTypes.NOT_DELETED), | type: tString(calendarThreadFilterTypes.NOT_DELETED), | ||||
}), | }), | ||||
tShape({ | tShape({ | ||||
type: tString(calendarThreadFilterTypes.THREAD_LIST), | type: tString(calendarThreadFilterTypes.THREAD_LIST), | ||||
threadIDs: t.list(t.String), | threadIDs: t.list(t.String), | ||||
}), | }), | ||||
]), | ]), | ||||
), | ), | ||||
), | ), | ||||
}); | }); | ||||
const newEntryQueryInputValidator: TInterface = tShape({ | |||||
const newEntryQueryInputValidator: TInterface<CalendarQuery> = tShape({ | |||||
startDate: tDate, | startDate: tDate, | ||||
endDate: tDate, | endDate: tDate, | ||||
filters: t.list( | filters: t.list( | ||||
t.union([ | t.union([ | ||||
tShape({ | tShape({ | ||||
type: tString(calendarThreadFilterTypes.NOT_DELETED), | type: tString(calendarThreadFilterTypes.NOT_DELETED), | ||||
}), | }), | ||||
tShape({ | tShape({ | ||||
▲ Show 20 Lines • Show All 182 Lines • Show Last 20 Lines |