unclean SPARC
This commit is contained in:
+97
@@ -0,0 +1,97 @@
|
||||
/**
|
||||
* FastTrack management
|
||||
*
|
||||
* @version 1.0
|
||||
* @author Michael Fallise
|
||||
*/
|
||||
class BypassController extends EICController {
|
||||
|
||||
guidelinesURL = "https://eic.ec.europa.eu/eic-funding-opportunities/eic-accelerator/fast-track-and-plug-schemes-eic-accelerator_en";
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
app.meta.add('accelerator-tracks', app.Assets.Store.json['accelerator-tracks']);
|
||||
app.meta.add('organisation-functions', app.Assets.Store.json['organisation-functions']);
|
||||
app.meta.add('organisation-genders', app.Assets.Store.json['organisation-genders']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Entrypoint for FastTrack Managers
|
||||
*/
|
||||
dashboardAdmin() {
|
||||
|
||||
app.User.getBusinessPermissions(['/organisations/tokens', '/organisations/tokens/users', '/organisations'])
|
||||
.then(payload => {
|
||||
let profile = Object.keys(payload).reduce((acc, perm)=>{ Object.assign(acc,payload[perm].profile); return(acc) }, {})
|
||||
|
||||
let models = {
|
||||
tokens: new BypassTokensModel(payload['/organisations/tokens'].permissions),
|
||||
company: new BypassCompanyModel([...payload['/organisations'].permissions, ...payload['/organisations/tokens'].permissions]),
|
||||
};
|
||||
|
||||
if(payload['/organisations/tokens/users'].permissions && (payload['/organisations/tokens/users'].permissions.length>0)) {
|
||||
models.users = new BypassUsersModel(payload['/organisations/tokens/users'].permissions)
|
||||
}
|
||||
|
||||
this.loadWindow(
|
||||
'projects/bypass/BypassAdminDashboard',
|
||||
{ title: 'Bypass', static: true, expanded: true },
|
||||
{ profile: profile, models: models }
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Entrypoint for FastTrack KIC Managers
|
||||
*/
|
||||
dashboardKIC() {
|
||||
app.User.getBusinessPermissions(['/organisations/tokens', '/organisations/tokens/users', '/organisations'])
|
||||
.then(payload => {
|
||||
let profile = Object.keys(payload).reduce((acc, perm)=>{ Object.assign(acc,payload[perm].profile); return(acc) }, {})
|
||||
|
||||
let models = {
|
||||
tokens: new BypassTokensModel(payload['/organisations/tokens'].permissions),
|
||||
company: new BypassCompanyModel([...payload['/organisations'].permissions, ...payload['/organisations/tokens'].permissions])
|
||||
};
|
||||
|
||||
if(payload['/organisations/tokens/users'].permissions && (payload['/organisations/tokens/users'].permissions.length>0)) {
|
||||
models.users = new BypassUsersModel(payload['/organisations/tokens/users'].permissions)
|
||||
}
|
||||
|
||||
this.loadWindow(
|
||||
'projects/bypass/BypassKICDashboard',
|
||||
{ title: 'Fast-Tracks', static: true, expanded: true },
|
||||
{ profile: profile, models: models }
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Entrypoint for FastTrack Plugin Managers
|
||||
*/
|
||||
dashboardPlugin() {
|
||||
app.User.getBusinessPermissions(['/organisations/tokens', '/organisations/tokens/users', '/organisations'])
|
||||
.then(payload => {
|
||||
let profile = Object.keys(payload).reduce((acc, perm)=>{ Object.assign(acc,payload[perm].profile); return(acc) }, {})
|
||||
|
||||
let models = {
|
||||
tokens: new BypassTokensModel(payload['/organisations/tokens'].permissions),
|
||||
company: new BypassCompanyModel([...payload['/organisations'].permissions, ...payload['/organisations/tokens'].permissions])
|
||||
};
|
||||
|
||||
if(payload['/organisations/tokens/users'].permissions) {
|
||||
models.users = new BypassUsersModel(payload['/organisations/tokens/users'].permissions)
|
||||
}
|
||||
|
||||
this.loadWindow(
|
||||
'projects/bypass/BypassPluginDashboard',
|
||||
{ title: 'Plugins', static: true, expanded: true },
|
||||
{ profile: profile, models: models } );
|
||||
});
|
||||
}
|
||||
|
||||
guidelines() { window.open(this.guidelinesURL, "_blank"); }
|
||||
}
|
||||
|
||||
app.registerClass('BypassController', BypassController);
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"routes": [
|
||||
{
|
||||
"url": "/",
|
||||
"role": ["BP_SPOC_Plugin"],
|
||||
"exturl":"/bypass/plugins"
|
||||
},
|
||||
{
|
||||
"url": "/",
|
||||
"role": ["BP_SPOC_FastTrack"],
|
||||
"exturl":"/bypass/fast-tracks"
|
||||
},
|
||||
{
|
||||
"url": "/",
|
||||
"role": ["BP_PO", "BP_HoU"],
|
||||
"controller" : "/projects/bypass/BypassController",
|
||||
"method": "dashboardAdmin"
|
||||
},
|
||||
{
|
||||
"url": "/fast-tracks",
|
||||
"role": ["BP_SPOC_FastTrack"],
|
||||
"controller" : "/projects/bypass/BypassController",
|
||||
"method": "dashboardKIC"
|
||||
},
|
||||
{
|
||||
"url": "/plugins",
|
||||
"role": ["BP_SPOC_Plugin"],
|
||||
"controller" : "/projects/bypass/BypassController",
|
||||
"method": "dashboardPlugin"
|
||||
},
|
||||
{
|
||||
"url": "/path-finder",
|
||||
"role": ["BP_SPOC_FastTrack"],
|
||||
"controller" : "/projects/bypass/BypassController",
|
||||
"method": "dashboardKIC"
|
||||
},
|
||||
{
|
||||
"url": "/guidelines",
|
||||
"role": ["BP_PO", "BP_HoU", "BP_SPOC_FastTrack", "BP_SPOC_Plugin"],
|
||||
"controller" : "/projects/bypass/BypassController",
|
||||
"method": "guidelines"
|
||||
}
|
||||
],
|
||||
"models": [
|
||||
"evaluations/BypassTokensModel",
|
||||
"organisations/BypassCompanyModel",
|
||||
"users/BypassUsersModel"
|
||||
],
|
||||
"views": [
|
||||
"projects/bypass/BypassAdminDashboard",
|
||||
"projects/bypass/BypassKICDashboard",
|
||||
"projects/bypass/BypassPluginDashboard",
|
||||
{"view":"projects/bypass/BypassPluginManagementContent", "dependencies": ["projects/bypass/BypassBaseManagementContent"]},
|
||||
{"view":"projects/bypass/BypassAdminManagementContent", "dependencies": ["projects/bypass/BypassBaseManagementContent"]},
|
||||
{"view":"projects/bypass/BypassKICManagementContent", "dependencies": ["projects/bypass/BypassBaseManagementContent"]},
|
||||
"projects/bypass/dialogs/BypassProgramAddDialog",
|
||||
"projects/bypass/dialogs/BypassTokenGrantDialog",
|
||||
"projects/bypass/dialogs/BypassTokenGrantProposalDialog",
|
||||
"projects/bypass/dialogs/BypassTokenRevokeDialog",
|
||||
"projects/bypass/dialogs/BypassTrackSetupDialog",
|
||||
"projects/bypass/dialogs/BypassUserProfileDialog"
|
||||
],
|
||||
"controllerDependencies": [ "/helpers/basicDialogs", "/helpers/translator" ],
|
||||
"assets": {
|
||||
"styles": [
|
||||
{ "name": "projects/bypass.css" }
|
||||
],
|
||||
"json": [
|
||||
{ "id": "accelerator-tracks", "name": "meta/accelerator-tracks.json" },
|
||||
{ "id":"organisation-genders", "name": "meta/organisation-genders.json"},
|
||||
{ "id":"organisation-functions", "name": "meta/organisation-functions.json"}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
class ICMPController extends EICController {
|
||||
|
||||
constructor(params) {
|
||||
super(params)
|
||||
app.meta.add('icmp-techdd-status', app.Assets.Store.json['icmp-techdd-status']);
|
||||
app.meta.add('icmp-fundings', app.Assets.Store.json['icmp-fundings']);
|
||||
app.meta.add('icmp-countries', app.Assets.Store.json['icmp-countries']);
|
||||
app.meta.add('icmp-instruments', app.Assets.Store.json['icmp-instruments']);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @returns
|
||||
*/
|
||||
Dashboard() {
|
||||
console.log('here')
|
||||
ui.lock();
|
||||
|
||||
app.User.getBusinessPermissions([ '/icmp/projects' ])
|
||||
.then(async payload => {
|
||||
|
||||
ui.unlock();
|
||||
|
||||
if(payload['/icmp/projects'].permissions.length > 0) {
|
||||
let models = {
|
||||
projects: new ICMPProjectsModel(payload['/icmp/projects'].permissions)
|
||||
};
|
||||
|
||||
if(app.User.hasRole('PROJECT_PO') || app.User.hasRole('PROJECT_FIO')) {
|
||||
this.loadWindow(
|
||||
'projects/icmp/ProjectFundingPODashboardView',
|
||||
{ title: 'ICMP', static: true, expanded: true },
|
||||
{ models: models } );
|
||||
return;
|
||||
}
|
||||
|
||||
if(app.User.hasRole('PROJECT_TechDDExpert')) {
|
||||
this.loadWindow(
|
||||
'projects/icmp/ProjectFundingExpertDashboardView',
|
||||
{ title: 'ICMP', static: true, expanded: true },
|
||||
{ models: models } );
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
ui.growl.append('You don\'t have access to this resource', 'danger' );
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {*} options
|
||||
*/
|
||||
project(options) {
|
||||
|
||||
let number = options.params.number
|
||||
let node = options.params.node
|
||||
let nodeId = options.params.nodeId
|
||||
|
||||
ui.lock();
|
||||
|
||||
app.User.getBusinessPermissions([`/icmp/projects/${number}`])
|
||||
.then(async payload => {
|
||||
|
||||
if(payload[`/icmp/projects/${number}`].permissions.length > 0) {
|
||||
ui.unlock();
|
||||
|
||||
let models = {
|
||||
project: new ICMPProjectModel(payload[`/icmp/projects/${number}`].permissions)
|
||||
};
|
||||
|
||||
this.loadWindow(
|
||||
'projects/icmp/ProjectFundingProjectView',
|
||||
{ title: 'Project sheet', static: true, expanded: true },
|
||||
{
|
||||
models: models,
|
||||
projectNumber: number,
|
||||
node: node,
|
||||
nodeId: nodeId,
|
||||
});
|
||||
} else {
|
||||
ui.growl.append('You don\'t have access to this resource', 'danger' );
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
app.registerClass('ICMPController', ICMPController);
|
||||
@@ -0,0 +1,39 @@
|
||||
{
|
||||
"routes": [],
|
||||
"models": [
|
||||
"projects/icmp/ProjectFundingModel",
|
||||
"projects/icmp/ICMPProjectsModel",
|
||||
"projects/icmp/ICMPProjectModel",
|
||||
"projects/icmp/ICMPProjectNodeModel"
|
||||
],
|
||||
"views": [
|
||||
"projects/icmp/ProjectFundingPODashboardView",
|
||||
"projects/icmp/ProjectFundingExpertDashboardView",
|
||||
"projects/icmp/ProjectFundingProjectView",
|
||||
"projects/icmp/project/ProjectFundingInfoView",
|
||||
"projects/icmp/project/ProjectFundingTechDDView",
|
||||
"projects/icmp/project/ProjectFundingTeamView",
|
||||
"projects/icmp/project/ProjectFundingHistoryView",
|
||||
"projects/icmp/project/ProjectFundingDocumentsView",
|
||||
"projects/icmp/project/dialogs/ICMPNodeActionConfirmDialog",
|
||||
{"view":"projects/icmp/project/forms/ICMPFormTechddV1FullView", "dependencies": ["projects/icmp/project/forms/ICMPFormTechddV1View"]},
|
||||
{"view":"projects/icmp/project/forms/ICMPFormTechddV1EnhancedView", "dependencies": ["projects/icmp/project/forms/ICMPFormTechddV1View"]}
|
||||
|
||||
],
|
||||
"controllerDependencies": [
|
||||
"/thirdparty/eicui/plugins/SVG/SVG",
|
||||
"/thirdparty/eicui/plugins/NodeMap/NodeMap"
|
||||
],
|
||||
"assets": {
|
||||
"styles": [
|
||||
{"path": "/app/thirdparty/eicui/plugins/SVG", "name":"/SVG.css" },
|
||||
{"path": "/app/thirdparty/eicui/plugins/NodeMap", "name":"/NodeMap.css" }
|
||||
],
|
||||
"json": [
|
||||
{ "id": "icmp-techdd-status", "name": "meta/icmp-techdd-statuses.json" },
|
||||
{ "id": "icmp-fundings", "name": "meta/project-funding-types.json" },
|
||||
{ "id": "icmp-countries", "name": "meta/coaching-countries.json" },
|
||||
{ "id": "icmp-instruments", "name": "meta/project-funding-instruments.json" }
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
|
||||
class SoeController extends EICController {
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
app.meta.add('soe-fundings', app.Assets.Store.json['soe-fundings']);
|
||||
app.meta.add('soe-countries', app.Assets.Store.json['coaching-countries']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Entrypoint for FastTrack Managers
|
||||
*/
|
||||
dashboard() {
|
||||
|
||||
app.User.getBusinessPermissions(['/soe'])
|
||||
.then(payload => {
|
||||
|
||||
if(payload['/soe'].permissions.length > 0) {
|
||||
let models = {
|
||||
soe: new SoeModel(payload['/soe'].permissions)
|
||||
}
|
||||
|
||||
let scope = payload['/soe'].profile.country ? app.meta.getItem('soe-countries', payload['/soe'].profile.country).label: 'Monitoring';
|
||||
|
||||
this.loadWindow(
|
||||
'projects/soe/SoeDashboardView',
|
||||
{ title: 'SoE ' + scope, static: true, expanded: true },
|
||||
{
|
||||
models: models,
|
||||
scope : scope
|
||||
}
|
||||
);
|
||||
} else {
|
||||
ui.growl.append('Sorry, you do not have access to this resource!', 'danger')
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
feedbacks(options) {
|
||||
|
||||
let pic = options.params.pic
|
||||
let number = options.params.number
|
||||
|
||||
app.User.getBusinessPermissions([`/soe/organisations/${pic}/projects/${number}/fundings`])
|
||||
.then(payload => {
|
||||
let scope = payload[`/soe/organisations/${pic}/projects/${number}/fundings`]
|
||||
if(scope.permissions.length > 0) {
|
||||
|
||||
let models = { soe: new SoeModel(scope.permissions) }
|
||||
|
||||
this.loadWindow(
|
||||
'projects/soe/SoeFeedbacksView',
|
||||
{ title: `Project ${number} (SoE)`, static: true, expanded: true },
|
||||
{
|
||||
pic: pic,
|
||||
number: number,
|
||||
models: models
|
||||
}
|
||||
);
|
||||
} else {
|
||||
ui.growl.append('Sorry, you do not have access to this resource', 'danger')
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
app.registerClass('SoeController', SoeController);
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"routes": [ ],
|
||||
"models": [ "projects/SoeModel" ],
|
||||
"views": [
|
||||
"projects/soe/SoeDashboardView",
|
||||
"projects/soe/SoeFeedbacksView",
|
||||
"projects/soe/dialogs/SoeFeedbackFormDialog",
|
||||
"projects/soe/dialogs/SoeFeedbackHistoryDialog"
|
||||
],
|
||||
"dependencies": { },
|
||||
"assets": {
|
||||
"json": [
|
||||
{ "id":"coaching-countries", "name": "meta/coaching-countries.json" },
|
||||
{ "id":"soe-fundings", "name": "meta/soe-fundings.json" }
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
/**
|
||||
* Submission management
|
||||
*
|
||||
* @version 1.0
|
||||
*/
|
||||
class SubmissionsController extends EICController {
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {*} options
|
||||
*
|
||||
*/
|
||||
proposal(options) {
|
||||
let pic = options.params.pic;
|
||||
let number = options.params.pid;
|
||||
let mode = options.params.mode || 'read';
|
||||
|
||||
app.User.getBusinessPermissions([
|
||||
`/organisations/${pic}/proposals/${number}`,
|
||||
`/organisations/${pic}/proposals/${number}/members`
|
||||
], 'Org_Member')
|
||||
.then( async payload => {
|
||||
|
||||
if(mode == 'edit') {
|
||||
if(!payload[`/organisations/${pic}/proposals/${number}`].permissions.includes('update')) {
|
||||
mode = 'read';
|
||||
}
|
||||
}
|
||||
|
||||
if(payload[`/organisations/${pic}/proposals/${number}`].permissions.includes('read')) {
|
||||
|
||||
let models = {
|
||||
'submission' : new SubmissionModel( payload[`/organisations/${pic}/proposals/${number}`].permissions ),
|
||||
'team' : new SubmissionTeamModel( [ 'create', 'update', 'delete' ] ),
|
||||
'members' : new SubmissionMembersModel( payload[`/organisations/${pic}/proposals/${number}/members`].permissions )
|
||||
};
|
||||
|
||||
app.meta.add('organisation-functions', app.Assets.Store.json['organisation-functions']);
|
||||
app.meta.add('organisation-genders', app.Assets.Store.json['organisation-genders']);
|
||||
app.meta.add('eic-keywords', app.Assets.Store.json['eic-keywords']);
|
||||
|
||||
models.submission.getProposal(pic,number).then(
|
||||
async () => {
|
||||
let formVersions = {
|
||||
'legacy' : '2022',
|
||||
'1.0' : '2023',
|
||||
'1.1' : '2023'
|
||||
};
|
||||
|
||||
let formVersion = formVersions[models.submission.data.version || 'legacy'];
|
||||
|
||||
await Loader.loadViews(app.Router.ControllerConfigs.SubmissionsController.lazyViews[formVersion]);
|
||||
this.loadWindow(
|
||||
`projects/submissions/${formVersion}/SubmissionShortForm${formVersion}View`,
|
||||
{ title: 'Proposal ' + number, static: true, expanded: true },
|
||||
{
|
||||
profile: {
|
||||
mode: mode,
|
||||
pic: pic,
|
||||
number: number
|
||||
},
|
||||
models: models
|
||||
}
|
||||
);
|
||||
})
|
||||
|
||||
} else {
|
||||
ui.growl.append('You are not allowed to access this proposal', 'danger');
|
||||
}
|
||||
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
app.registerClass('SubmissionsController', SubmissionsController);
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"routes": [
|
||||
{
|
||||
"url": "/:pid",
|
||||
"role": "Org_Member",
|
||||
"controller" : "/projects/submissions/SubmissionsController",
|
||||
"method": "proposal"
|
||||
}
|
||||
],
|
||||
"models": [
|
||||
"/submissions/SubmissionModel",
|
||||
"/organisations/ApplicantMembersModel"
|
||||
],
|
||||
"views": [
|
||||
"/projects/submissions/dialogs/SubmissionFormAccessDialog",
|
||||
"/projects/submissions/dialogs/SubmissionFormComplaintDialog"
|
||||
|
||||
],
|
||||
"controllerDependencies": [ "/thirdparty/AwsGoodies/AwsFileDownload", "/thirdparty/AwsGoodies/AwsFileUpload", "https://cdn.jsdelivr.net/npm/hls.js@latest" ],
|
||||
"assets": {
|
||||
"styles": [ { "name": "projects/submissions.css" } ],
|
||||
"json": [
|
||||
{"id":"organisation-genders", "name": "meta/organisation-genders.json"},
|
||||
{"id":"eic-keywords", "name": "meta/eic-keywords.json"},
|
||||
{"id":"organisation-functions", "name": "meta/organisation-functions.json"}
|
||||
]
|
||||
},
|
||||
"lazyViews": {
|
||||
"2022": [
|
||||
"/projects/submissions/2022/SubmissionShortForm2022View",
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022WhatView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022WhyView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022WhoView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022HowView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022AmountView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022WhomView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022ImpactView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022DocumentsView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2022/tabs/SubmissionShortForm2022StatusView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]}
|
||||
],
|
||||
"2023": [
|
||||
"/projects/submissions/2023/SubmissionShortForm2023View",
|
||||
"/projects/submissions/dialogs/SubmissionFormTeamMemberDialog",
|
||||
"/projects/submissions/dialogs/SubmissionFormUploadDialog",
|
||||
"/projects/submissions/dialogs/SubmissionFormConcurrencyDialog",
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023CompanyView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023CompetitionView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023FundingView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023GeneralView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023ProblemView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023SolutionView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023TeamView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023ImpactView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023DocumentsView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023DisclaimerView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023StatusView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]},
|
||||
{"view":"projects/submissions/2023/tabs/SubmissionShortForm2023ConsentView", "dependencies": [ "projects/submissions/SubmissionShortFormTabView" ]}
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user