Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: user officer experiment safety review workflow #917

Open
wants to merge 24 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 21 commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
25cb2cf
WIP
yoganandaness Jan 18, 2025
563c21e
Data Sources Setup Done
yoganandaness Jan 18, 2025
aea58ca
DataSource Status Action Generalization
yoganandaness Jan 18, 2025
ab18c7f
Mutation, Queries along with Resolvers done. Now Types needed to be d…
yoganandaness Jan 18, 2025
2a417cf
Query for Status and Workflow generalised.
yoganandaness Jan 20, 2025
9c39296
WIP.
yoganandaness Jan 20, 2025
849537a
WIP.
yoganandaness Jan 20, 2025
cf8f2f4
Graphql Optimisation
yoganandaness Jan 20, 2025
3152822
Graphql Optimisation
yoganandaness Jan 20, 2025
7a756ef
Backend type fix
yoganandaness Jan 20, 2025
aa7b0c4
WIP
yoganandaness Jan 23, 2025
c9821d5
Frontend Proposal Workflow working
yoganandaness Jan 23, 2025
3680675
wip
yoganandaness Jan 23, 2025
f30b235
test
yoganandaness Jan 23, 2025
c19c27c
Workflow page done.
yoganandaness Jan 27, 2025
b8b3280
Proposal Workflow Editor working
yoganandaness Jan 27, 2025
ce1eeef
Experiment Workflow table done
yoganandaness Jan 28, 2025
39060e2
Merge branch 'develop' into SWAP-4396-user-officer-experiment-safety-…
yoganandaness Jan 30, 2025
657061c
Merge branch 'develop' of github.com:UserOfficeProject/user-office-co…
yoganandaness Jan 30, 2025
999c64c
Merge branch 'develop' into SWAP-4396-user-officer-experiment-safety-…
yoganandaness Jan 31, 2025
b75216f
Merge branch 'develop' into SWAP-4396-user-officer-experiment-safety-…
yoganandaness Feb 3, 2025
ce741bf
Merge branch 'develop' into SWAP-4396-user-officer-experiment-safety-…
yoganandaness Feb 10, 2025
ef57198
Merge branch 'develop' of github.com:UserOfficeProject/user-office-co…
yoganandaness Feb 11, 2025
bd6bbbb
Merge branch 'develop' into SWAP-4396-user-officer-experiment-safety-…
yoganandaness Feb 11, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions apps/backend/db_patches/0168_ExperimentWorkflow.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
DO
$$
BEGIN
IF register_patch('0168_ExperimentWorkflow', 'Yoganandan Pandiyan', 'Generalising Workflow and Statuses for supporting Experiments and Proposals', '2025-01-16') THEN
BEGIN
/* altering table names*/
ALTER TABLE proposal_statuses RENAME TO statuses;
ALTER TABLE proposal_status_actions RENAME TO status_actions;
Comment on lines +7 to +8
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question: Is there a reason why these are not workflow_statuses and workflow_status_actions?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So the idea here is to make a generic table for statuses and workflows, and use it for various purposes including Proposal and Experiment and much more.

This is the reason, why we have the new column entity_type

ALTER TABLE proposal_workflows RENAME TO workflows;
ALTER TABLE proposal_workflow_connections RENAME TO workflow_connections;
ALTER TABLE proposal_workflow_connection_has_actions RENAME TO workflow_connection_has_actions;
END;

BEGIN
/* Renaming the columns */
ALTER TABLE statuses RENAME COLUMN proposal_status_id TO status_id;
ALTER TABLE status_actions RENAME COLUMN proposal_status_action_id TO status_action_id;
ALTER TABLE workflows RENAME COLUMN proposal_workflow_id TO workflow_id;
ALTER TABLE workflow_connections RENAME COLUMN proposal_workflow_connection_id TO workflow_connection_id;
ALTER TABLE workflow_connections RENAME COLUMN proposal_workflow_id TO workflow_id;
ALTER TABLE workflow_connections RENAME COLUMN proposal_status_id TO status_id;
ALTER TABLE workflow_connections RENAME COLUMN next_proposal_status_id TO next_status_id;
ALTER TABLE workflow_connections RENAME COLUMN prev_proposal_status_id TO prev_status_id;
ALTER TABLE status_changing_events RENAME COLUMN proposal_workflow_connection_id TO workflow_connection_id;
END;

BEGIN
/* Creating enum for entity_type */
CREATE TYPE entity_type AS ENUM ('PROPOSAL', 'EXPERIMENT');
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion: Should we call this EXPERIMENT_SAFETY ? Calling it just EXPERIMENT could be a little too general

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. Good point. Will update in the next PR.

END;

BEGIN
/* Adding entity_type column to the workflow and status related tables. Set the default to proposal temporarily, so that the existing record get populated with the value as proposal. Remove the default value after this. */
ALTER TABLE statuses ADD COLUMN entity_type entity_type NOT NULL DEFAULT 'PROPOSAL';
ALTER TABLE workflows ADD COLUMN entity_type entity_type NOT NULL DEFAULT 'PROPOSAL';
END;

BEGIN
/* Drop the default value of proposal */
ALTER TABLE statuses ALTER COLUMN entity_type DROP DEFAULT;
ALTER TABLE workflows ALTER COLUMN entity_type DROP DEFAULT;
END;

BEGIN
-- Insert the Workflow Statuses
INSERT INTO statuses (name, short_code, description, entity_type, is_default) VALUES ('AWAITING ESF', 'AWAITING_ESF', 'When an Experiment is created, the default status will be AWAITING_ESF. This means that the experimenter needs to submit the ESF(Experiment Safety Form).', 'EXPERIMENT', true);
INSERT INTO statuses (name, short_code, description, entity_type, is_default) VALUES ('ESF IS REVIEW', 'ESF_IS_REVIEW', 'IS(Instrument Scientist) needs to review the ESF.', 'EXPERIMENT', true);
INSERT INTO statuses (name, short_code, description, entity_type, is_default) VALUES ('ESF ESR REVIEW', 'ESF_ESR_REVIEW', 'ESR(Experiment Safety Reviewer) needs to review the ESF.', 'EXPERIMENT', true);
INSERT INTO statuses (name, short_code, description, entity_type, is_default) VALUES ('ESF REJECTED', 'ESF_REJECTED', 'ESF rejected.', 'EXPERIMENT', true);
INSERT INTO statuses (name, short_code, description, entity_type, is_default) VALUES ('ESF APROVED', 'ESF_APROVED', 'ESF approved.', 'EXPERIMENT', true);
END;

END IF;
END;
$$
LANGUAGE plpgsql;
9 changes: 4 additions & 5 deletions apps/backend/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions apps/backend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
"@user-office-software/duo-localisation": "^1.2.0",
"@user-office-software/duo-logger": "^2.1.1",
"@user-office-software/duo-message-broker": "^1.6.0",
"@user-office-software/duo-validation": "^5.1.11",
"@user-office-software/duo-validation": "^5.1.13",
"@user-office-software/openid": "^1.4.0",
"await-to-js": "^2.1.1",
"bcryptjs": "^2.4.3",
Expand Down Expand Up @@ -126,4 +126,4 @@
"npm": ">=9.0.0",
"node": ">=18.0.0"
}
}
}
10 changes: 5 additions & 5 deletions apps/backend/src/auth/ProposalAuthorization.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ import { CallDataSource } from '../datasources/CallDataSource';
import { FapDataSource } from '../datasources/FapDataSource';
import { ProposalDataSource } from '../datasources/ProposalDataSource';
import { ReviewDataSource } from '../datasources/ReviewDataSource';
import { StatusDataSource } from '../datasources/StatusDataSource';
import { VisitDataSource } from '../datasources/VisitDataSource';
import { ProposalStatusDefaultShortCodes } from '../models/ProposalStatus';
import { Roles } from '../models/Role';
import { ProposalStatusDefaultShortCodes } from '../models/Status';
import { UserWithRole } from '../models/User';
import { Proposal } from '../resolvers/types/Proposal';
import { ProposalSettingsDataSource } from './../datasources/ProposalSettingsDataSource';
import { UserDataSource } from './../datasources/UserDataSource';
import { UserJWT } from './../models/User';
import { UserAuthorization } from './UserAuthorization';
Expand All @@ -30,8 +30,8 @@ export class ProposalAuthorization {
private visitDataSource: VisitDataSource,
@inject(Tokens.CallDataSource)
private callDataSource: CallDataSource,
@inject(Tokens.ProposalSettingsDataSource)
private proposalSettingsDataSource: ProposalSettingsDataSource,
@inject(Tokens.StatusDataSource)
private statusDataSource: StatusDataSource,
@inject(Tokens.UserAuthorization) protected userAuth: UserAuthorization
) {}

Expand Down Expand Up @@ -260,7 +260,7 @@ export class ProposalAuthorization {
checkIfInternalEditable
);
const proposalStatus = (
await this.proposalSettingsDataSource.getProposalStatus(proposal.statusId)
await this.statusDataSource.getStatus(proposal.statusId)
)?.shortCode;
if (
proposalStatus === ProposalStatusDefaultShortCodes.EDITABLE_SUBMITTED ||
Expand Down
16 changes: 12 additions & 4 deletions apps/backend/src/buildContext.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,20 @@ import PdfTemplateMutations from './mutations/PdfTemplateMutations';
import PredefinedMessageMutations from './mutations/PredefinedMessageMutations';
import ProposalEsiMutations from './mutations/ProposalEsiMutations';
import ProposalMutations from './mutations/ProposalMutations';
import ProposalSettingsMutations from './mutations/ProposalSettingsMutations';
import QuestionaryMutations from './mutations/QuestionaryMutations';
import RedeemCodesMutations from './mutations/RedeemCodesMutations';
import ReviewMutations from './mutations/ReviewMutations';
import SampleEsiMutations from './mutations/SampleEsiMutations';
import SampleMutations from './mutations/SampleMutations';
import ShipmentMutations from './mutations/ShipmentMutations';
import StatusActionsLogsMutations from './mutations/StatusActionsLogsMutations';
import StatusMutations from './mutations/StatusMutations';
import TechniqueMutations from './mutations/TechniqueMutations';
import TemplateMutations from './mutations/TemplateMutations';
import UnitMutations from './mutations/UnitMutations';
import UserMutations from './mutations/UserMutations';
import VisitMutations from './mutations/VisitMutations';
import WorkflowMutations from './mutations/WorkflowMutations';
import AdminQueries from './queries/AdminQueries';
import CallQueries from './queries/CallQueries';
import EventLogQueries from './queries/EventLogQueries';
Expand All @@ -42,20 +43,23 @@ import PdfTemplateQueries from './queries/PdfTemplateQueries';
import PredefinedMessageQueries from './queries/PredefinedMessageQueries';
import ProposalEsiQueries from './queries/ProposalEsiQueries';
import ProposalQueries from './queries/ProposalQueries';
import ProposalSettingsQueries from './queries/ProposalSettingsQueries';
import QuestionaryQueries from './queries/QuestionaryQueries';
import ReviewQueries from './queries/ReviewQueries';
import SampleEsiQueries from './queries/SampleEsiQueries';
import SampleQueries from './queries/SampleQueries';
import ScheduledEventQueries from './queries/ScheduledEventQueries';
import SettingsQueries from './queries/SettingsQueries';
import ShipmentQueries from './queries/ShipmentQueries';
import StatusActionQueries from './queries/StatusActionQueries';
import StatusActionsLogsQueries from './queries/StatusActionsLogsQueries';
import StatusQueries from './queries/StatusQueries';
import SystemQueries from './queries/SystemQueries';
import TechniqueQueries from './queries/TechniqueQueries';
import TemplateQueries from './queries/TemplateQueries';
import UnitQueries from './queries/UnitQueries';
import UserQueries from './queries/UserQueries';
import VisitQueries from './queries/VisitQueries';
import WorkflowQueries from './queries/WorkflowQueries';

const context: BasicResolverContext = {
queries: {
Expand All @@ -69,7 +73,6 @@ const context: BasicResolverContext = {
pdfTemplate: container.resolve(PdfTemplateQueries),
proposal: container.resolve(ProposalQueries),
proposalEsi: container.resolve(ProposalEsiQueries),
proposalSettings: container.resolve(ProposalSettingsQueries),
questionary: container.resolve(QuestionaryQueries),
review: container.resolve(ReviewQueries),
sample: container.resolve(SampleQueries),
Expand All @@ -86,6 +89,10 @@ const context: BasicResolverContext = {
internalReview: container.resolve(InternalReviewQueries),
technique: container.resolve(TechniqueQueries),
statusActionsLogs: container.resolve(StatusActionsLogsQueries),
status: container.resolve(StatusQueries),
workflow: container.resolve(WorkflowQueries),
statusAction: container.resolve(StatusActionQueries),
settings: container.resolve(SettingsQueries),
},
mutations: {
admin: container.resolve(AdminMutations),
Expand All @@ -98,7 +105,6 @@ const context: BasicResolverContext = {
pdfTemplate: container.resolve(PdfTemplateMutations),
proposal: container.resolve(ProposalMutations),
proposalEsi: container.resolve(ProposalEsiMutations),
proposalSettings: container.resolve(ProposalSettingsMutations),
questionary: container.resolve(QuestionaryMutations),
redeemCodes: container.resolve(RedeemCodesMutations),
review: container.resolve(ReviewMutations),
Expand All @@ -114,6 +120,8 @@ const context: BasicResolverContext = {
internalReview: container.resolve(InternalReviewMutations),
technique: container.resolve(TechniqueMutations),
statusActionsLogs: container.resolve(StatusActionsLogsMutations),
status: container.resolve(StatusMutations),
workflow: container.resolve(WorkflowMutations),
},
clients: {
scheduler: async () => {
Expand Down
2 changes: 2 additions & 0 deletions apps/backend/src/config/Tokens.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,4 +51,6 @@ export const Tokens = {
ProposalInternalCommentsDataSource: Symbol(
'ProposalInternalCommentsDataSource'
),
WorkflowDataSource: Symbol('WorkflowDataSource'),
StatusDataSource: Symbol('StatusDataSource'),
};
7 changes: 4 additions & 3 deletions apps/backend/src/config/dependencyConfigDefault.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ import PostgresPredefinedMessageDataSource from '../datasources/postgres/Predefi
import PostgresProposalDataSource from '../datasources/postgres/ProposalDataSource';
import PostgresProposalEsiDataSource from '../datasources/postgres/ProposalEsiDataSource';
import PostgresProposalInternalCommentsDataSource from '../datasources/postgres/ProposalInternalCommentsDataSource';
import PostgresProposalSettingsDataSource from '../datasources/postgres/ProposalSettingsDataSource';
import PostgresQuestionaryDataSource from '../datasources/postgres/QuestionaryDataSource';
import PostgresRedeemCodesDataSource from '../datasources/postgres/RedeemCodesDataSource';
import PostgresReviewDataSource from '../datasources/postgres/ReviewDataSource';
Expand All @@ -35,12 +34,14 @@ import PostgresScheduledEventDataSource from '../datasources/postgres/ScheduledE
import PostgresShipmentDataSource from '../datasources/postgres/ShipmentDataSource';
import PostgresStatusActionsDataSource from '../datasources/postgres/StatusActionsDataSource';
import StatusActionsLogsDataSource from '../datasources/postgres/StatusActionsLogsDataSource';
import PostgresStatusDataSource from '../datasources/postgres/StatusDataSource';
import PostgresSystemDataSource from '../datasources/postgres/SystemDataSource';
import PostgresTechniqueDataSource from '../datasources/postgres/TechniqueDataSource';
import PostgresTemplateDataSource from '../datasources/postgres/TemplateDataSource';
import PostgresUnitDataSource from '../datasources/postgres/UnitDataSource';
import PostgresUserDataSource from '../datasources/postgres/UserDataSource';
import PostgresVisitDataSource from '../datasources/postgres/VisitDataSource';
import PostgresWorkflowDataSource from '../datasources/postgres/WorkflowDataSource';
import { SkipSendMailService } from '../eventHandlers/MailService/SkipSendMailService';
import {
createSkipListeningHandler,
Expand Down Expand Up @@ -79,7 +80,6 @@ mapClass(Tokens.InternalReviewDataSource, PostgresInternalReviewDataSource);
mapClass(Tokens.PdfTemplateDataSource, PostgresPdfTemplateDataSource);
mapClass(Tokens.ProposalDataSource, PostgresProposalDataSource);
mapClass(Tokens.ProposalEsiDataSource, PostgresProposalEsiDataSource);
mapClass(Tokens.ProposalSettingsDataSource, PostgresProposalSettingsDataSource);
mapClass(
Tokens.ProposalInternalCommentsDataSource,
PostgresProposalInternalCommentsDataSource
Expand All @@ -104,7 +104,8 @@ mapClass(
PostgresPredefinedMessageDataSource
);
mapClass(Tokens.StatusActionsLogsDataSource, StatusActionsLogsDataSource);

mapClass(Tokens.WorkflowDataSource, PostgresWorkflowDataSource);
mapClass(Tokens.StatusDataSource, PostgresStatusDataSource);
mapClass(Tokens.UserAuthorization, OAuthAuthorization);
mapClass(Tokens.ProposalAuthorization, ProposalAuthorization);

Expand Down
6 changes: 4 additions & 2 deletions apps/backend/src/config/dependencyConfigE2E.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ import PostgresPredefinedMessageDataSource from '../datasources/postgres/Predefi
import PostgresProposalDataSource from '../datasources/postgres/ProposalDataSource';
import PostgresProposalEsiDataSource from '../datasources/postgres/ProposalEsiDataSource';
import PostgresProposalInternalCommentsDataSource from '../datasources/postgres/ProposalInternalCommentsDataSource';
import PostgresProposalSettingsDataSource from '../datasources/postgres/ProposalSettingsDataSource';
import PostgresQuestionaryDataSource from '../datasources/postgres/QuestionaryDataSource';
import PostgresRedeemCodesDataSource from '../datasources/postgres/RedeemCodesDataSource';
import PostgresReviewDataSource from '../datasources/postgres/ReviewDataSource';
Expand All @@ -31,12 +30,14 @@ import PostgresScheduledEventDataSource from '../datasources/postgres/ScheduledE
import PostgresShipmentDataSource from '../datasources/postgres/ShipmentDataSource';
import PostgresStatusActionsDataSource from '../datasources/postgres/StatusActionsDataSource';
import StatusActionsLogsDataSource from '../datasources/postgres/StatusActionsLogsDataSource';
import PostgresStatusDataSource from '../datasources/postgres/StatusDataSource';
import PostgresSystemDataSource from '../datasources/postgres/SystemDataSource';
import PostgresTechniqueDataSource from '../datasources/postgres/TechniqueDataSource';
import PostgresTemplateDataSource from '../datasources/postgres/TemplateDataSource';
import PostgresUnitDataSource from '../datasources/postgres/UnitDataSource';
import PostgresUserDataSource from '../datasources/postgres/UserDataSource';
import PostgresVisitDataSource from '../datasources/postgres/VisitDataSource';
import PostgresWorkflowDataSource from '../datasources/postgres/WorkflowDataSource';
import { essEmailHandler } from '../eventHandlers/email/essEmailHandler';
import { SkipSendMailService } from '../eventHandlers/MailService/SkipSendMailService';
import {
Expand Down Expand Up @@ -71,7 +72,6 @@ mapClass(Tokens.InternalReviewDataSource, PostgresInternalReviewDataSource);
mapClass(Tokens.PdfTemplateDataSource, PostgresPdfTemplateDataSource);
mapClass(Tokens.ProposalDataSource, PostgresProposalDataSource);
mapClass(Tokens.ProposalEsiDataSource, PostgresProposalEsiDataSource);
mapClass(Tokens.ProposalSettingsDataSource, PostgresProposalSettingsDataSource);
mapClass(
Tokens.ProposalInternalCommentsDataSource,
PostgresProposalInternalCommentsDataSource
Expand All @@ -96,6 +96,8 @@ mapClass(
PostgresPredefinedMessageDataSource
);
mapClass(Tokens.StatusActionsLogsDataSource, StatusActionsLogsDataSource);
mapClass(Tokens.WorkflowDataSource, PostgresWorkflowDataSource);
mapClass(Tokens.StatusDataSource, PostgresStatusDataSource);
mapClass(Tokens.UserAuthorization, OAuthAuthorization);
mapClass(Tokens.ProposalAuthorization, ProposalAuthorization);

Expand Down
6 changes: 4 additions & 2 deletions apps/backend/src/config/dependencyConfigELI.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ import PostgresPredefinedMessageDataSource from '../datasources/postgres/Predefi
import PostgresProposalDataSource from '../datasources/postgres/ProposalDataSource';
import PostgresProposalEsiDataSource from '../datasources/postgres/ProposalEsiDataSource';
import PostgresProposalInternalCommentsDataSource from '../datasources/postgres/ProposalInternalCommentsDataSource';
import PostgresProposalSettingsDataSource from '../datasources/postgres/ProposalSettingsDataSource';
import PostgresQuestionaryDataSource from '../datasources/postgres/QuestionaryDataSource';
import PostgresRedeemCodesDataSource from '../datasources/postgres/RedeemCodesDataSource';
import PostgresReviewDataSource from '../datasources/postgres/ReviewDataSource';
Expand All @@ -30,12 +29,14 @@ import PostgresScheduledEventDataSource from '../datasources/postgres/ScheduledE
import PostgresShipmentDataSource from '../datasources/postgres/ShipmentDataSource';
import PostgresStatusActionsDataSource from '../datasources/postgres/StatusActionsDataSource';
import StatusActionsLogsDataSource from '../datasources/postgres/StatusActionsLogsDataSource';
import PostgresStatusDataSource from '../datasources/postgres/StatusDataSource';
import PostgresSystemDataSource from '../datasources/postgres/SystemDataSource';
import PostgresTechniqueDataSource from '../datasources/postgres/TechniqueDataSource';
import PostgresTemplateDataSource from '../datasources/postgres/TemplateDataSource';
import PostgresUnitDataSource from '../datasources/postgres/UnitDataSource';
import PostgresUserDataSource from '../datasources/postgres/UserDataSource';
import PostgresVisitDataSource from '../datasources/postgres/VisitDataSource';
import PostgresWorkflowDataSource from '../datasources/postgres/WorkflowDataSource';
import { eliEmailHandler } from '../eventHandlers/email/eliEmailHandler';
import { SMTPMailService } from '../eventHandlers/MailService/SMTPMailService';
import {
Expand Down Expand Up @@ -72,7 +73,6 @@ mapClass(Tokens.InviteAuthorization, InviteAuthorization);
mapClass(Tokens.PdfTemplateDataSource, PostgresPdfTemplateDataSource);
mapClass(Tokens.ProposalDataSource, PostgresProposalDataSource);
mapClass(Tokens.ProposalEsiDataSource, PostgresProposalEsiDataSource);
mapClass(Tokens.ProposalSettingsDataSource, PostgresProposalSettingsDataSource);
mapClass(
Tokens.ProposalInternalCommentsDataSource,
PostgresProposalInternalCommentsDataSource
Expand All @@ -99,6 +99,8 @@ mapClass(
PostgresPredefinedMessageDataSource
);
mapClass(Tokens.StatusActionsLogsDataSource, StatusActionsLogsDataSource);
mapClass(Tokens.WorkflowDataSource, PostgresWorkflowDataSource);
mapClass(Tokens.StatusDataSource, PostgresStatusDataSource);
mapClass(Tokens.UserAuthorization, OAuthAuthorization);
mapClass(Tokens.ProposalAuthorization, ProposalAuthorization);

Expand Down
Loading
Loading