Skip to content

Commit c75a717

Browse files
committed
package input files and folders (frontend)
1 parent 4d9e18c commit c75a717

File tree

6 files changed

+47
-4
lines changed

6 files changed

+47
-4
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import React, { ChangeEvent } from 'react';
2+
3+
import { Checkbox, FormControlLabel, FormGroup } from '@mui/material';
4+
5+
export function PackageInputFolderControl(props: {
6+
onChange: (event: ChangeEvent<HTMLInputElement>) => void;
7+
}): JSX.Element {
8+
return (
9+
<FormGroup>
10+
<FormControlLabel
11+
control={
12+
<Checkbox onChange={props.onChange} name={'packageInputFolder'} />
13+
}
14+
label="Package input folder"
15+
/>
16+
</FormGroup>
17+
);
18+
}

src/handler.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,7 @@ export namespace Scheduler {
363363
compute_type?: string;
364364
schedule?: string;
365365
timezone?: string;
366+
package_input_folder?: boolean;
366367
}
367368

368369
export interface IUpdateJobDefinition {
@@ -389,6 +390,7 @@ export namespace Scheduler {
389390
create_time: number;
390391
update_time: number;
391392
active: boolean;
393+
packageInputFolder?: boolean;
392394
}
393395

394396
export interface IEmailNotifications {
@@ -415,6 +417,7 @@ export namespace Scheduler {
415417
output_filename_template?: string;
416418
output_formats?: string[];
417419
compute_type?: string;
420+
package_input_folder?: boolean;
418421
}
419422

420423
export interface ICreateJobFromDefinition {
@@ -463,6 +466,7 @@ export namespace Scheduler {
463466
start_time?: number;
464467
end_time?: number;
465468
downloaded: boolean;
469+
packageInputFolder?: boolean;
466470
}
467471

468472
export interface ICreateJobResponse {

src/mainviews/create-job.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ import {
4242

4343
import { Box, Stack } from '@mui/system';
4444
import { getErrorMessage } from '../util/errors';
45+
import { PackageInputFolderControl } from '../components/input-folder-checkbox';
4546

4647
export interface ICreateJobProps {
4748
model: ICreateJobModel;
@@ -320,7 +321,8 @@ export function CreateJob(props: ICreateJobProps): JSX.Element {
320321
compute_type: props.model.computeType,
321322
idempotency_token: props.model.idempotencyToken,
322323
tags: props.model.tags,
323-
runtime_environment_parameters: props.model.runtimeEnvironmentParameters
324+
runtime_environment_parameters: props.model.runtimeEnvironmentParameters,
325+
package_input_folder: props.model.packageInputFolder
324326
};
325327

326328
if (props.model.parameters !== undefined) {
@@ -368,7 +370,8 @@ export function CreateJob(props: ICreateJobProps): JSX.Element {
368370
tags: props.model.tags,
369371
runtime_environment_parameters: props.model.runtimeEnvironmentParameters,
370372
schedule: props.model.schedule,
371-
timezone: props.model.timezone
373+
timezone: props.model.timezone,
374+
package_input_folder: props.model.packageInputFolder
372375
};
373376

374377
if (props.model.parameters !== undefined) {
@@ -504,6 +507,7 @@ export function CreateJob(props: ICreateJobProps): JSX.Element {
504507
environmentList={environmentList}
505508
value={props.model.environment}
506509
/>
510+
<PackageInputFolderControl onChange={handleInputChange} />
507511
<OutputFormatPicker
508512
label={trans.__('Output formats')}
509513
name="outputFormat"

src/mainviews/detail-view/job-definition.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,12 @@ export function JobDefinition(props: IJobDefinitionProps): JSX.Element {
230230
value: model.timezone ?? '',
231231
label: trans.__('Time zone')
232232
}
233+
],
234+
[
235+
{
236+
value: model.packageInputFolder ? trans.__('Yes') : trans.__('No'),
237+
label: trans.__('Package input folder')
238+
}
233239
]
234240
];
235241

src/mainviews/detail-view/job-detail.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -249,6 +249,12 @@ export function JobDetail(props: IJobDetailProps): JSX.Element {
249249
{
250250
value: timestampLocalize(props.model.endTime ?? ''),
251251
label: trans.__('End time')
252+
},
253+
{
254+
value: props.model.packageInputFolder
255+
? trans.__('Yes')
256+
: trans.__('No'),
257+
label: trans.__('Package input folder')
252258
}
253259
]
254260
];

src/model.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ export interface ICreateJobModel
9999
tags?: string[];
100100
// Is the create button disabled due to a submission in progress?
101101
createInProgress?: boolean;
102+
packageInputFolder?: boolean;
102103
}
103104

104105
export const defaultScheduleFields: ModelWithScheduleFields = {
@@ -310,6 +311,7 @@ export interface IJobDetailModel {
310311
outputPrefix?: string;
311312
job_files: Scheduler.IJobFile[];
312313
downloaded: boolean;
314+
packageInputFolder?: boolean;
313315
}
314316

315317
export interface IJobDefinitionModel {
@@ -336,6 +338,7 @@ export interface IJobDefinitionModel {
336338
startTime?: number;
337339
endTime?: number;
338340
outputPrefix?: string;
341+
packageInputFolder?: boolean;
339342
}
340343

341344
const convertParameters = (parameters: {
@@ -384,7 +387,8 @@ export function convertDescribeJobtoJobDetail(
384387
updateTime: describeJob.update_time,
385388
startTime: describeJob.start_time,
386389
endTime: describeJob.end_time,
387-
downloaded: describeJob.downloaded
390+
downloaded: describeJob.downloaded,
391+
packageInputFolder: describeJob.packageInputFolder
388392
};
389393
}
390394

@@ -412,7 +416,8 @@ export function convertDescribeDefinitiontoDefinition(
412416
createTime: describeDefinition.create_time,
413417
updateTime: describeDefinition.update_time,
414418
schedule: describeDefinition.schedule,
415-
timezone: describeDefinition.timezone
419+
timezone: describeDefinition.timezone,
420+
packageInputFolder: describeDefinition.packageInputFolder
416421
};
417422
}
418423

0 commit comments

Comments
 (0)