Skip to content

Commit 27fc35e

Browse files
committed
refactor: . move TaskLayoutComponent & taskLayoutComponents to TaskLayoutOptions.ts
1 parent a30e46d commit 27fc35e

File tree

7 files changed

+37
-41
lines changed

7 files changed

+37
-41
lines changed

src/Layout/TaskLayout.ts

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,6 @@
11
import { generateHiddenClassForTaskList } from './LayoutHelpers';
22
import { TaskLayoutOptions } from './TaskLayoutOptions';
33

4-
export type TaskLayoutComponent =
5-
// NEW_TASK_FIELD_EDIT_REQUIRED
6-
| 'description'
7-
| 'priority'
8-
| 'recurrenceRule'
9-
| 'createdDate'
10-
| 'startDate'
11-
| 'scheduledDate'
12-
| 'dueDate'
13-
| 'doneDate'
14-
| 'cancelledDate'
15-
| 'blockedBy'
16-
| 'id'
17-
| 'blockLink';
18-
19-
// The order here determines the order that task fields are rendered and written to markdown.
20-
export const taskLayoutComponents: TaskLayoutComponent[] = [
21-
// NEW_TASK_FIELD_EDIT_REQUIRED
22-
'description',
23-
'id',
24-
'blockedBy',
25-
'priority',
26-
'recurrenceRule',
27-
'createdDate',
28-
'startDate',
29-
'scheduledDate',
30-
'dueDate',
31-
'cancelledDate',
32-
'doneDate',
33-
'blockLink',
34-
];
35-
364
/**
375
* This represents the desired layout of tasks when they are rendered in a given configuration.
386
* The layout is used when flattening the task to a string and when rendering queries, and can be

src/Layout/TaskLayoutOptions.ts

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,34 @@
1-
import { type TaskLayoutComponent, taskLayoutComponents } from './TaskLayout';
1+
export type TaskLayoutComponent =
2+
// NEW_TASK_FIELD_EDIT_REQUIRED
3+
| 'description'
4+
| 'priority'
5+
| 'recurrenceRule'
6+
| 'createdDate'
7+
| 'startDate'
8+
| 'scheduledDate'
9+
| 'dueDate'
10+
| 'doneDate'
11+
| 'cancelledDate'
12+
| 'blockedBy'
13+
| 'id'
14+
| 'blockLink';
15+
16+
// The order here determines the order that task fields are rendered and written to markdown.
17+
export const taskLayoutComponents: TaskLayoutComponent[] = [
18+
// NEW_TASK_FIELD_EDIT_REQUIRED
19+
'description',
20+
'id',
21+
'blockedBy',
22+
'priority',
23+
'recurrenceRule',
24+
'createdDate',
25+
'startDate',
26+
'scheduledDate',
27+
'dueDate',
28+
'cancelledDate',
29+
'doneDate',
30+
'blockLink',
31+
];
232

333
/**
434
* Various rendering options of tasks in a query.

src/Renderer/TaskFieldRenderer.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import type { Moment } from 'moment';
2-
import type { TaskLayoutComponent } from '../Layout/TaskLayout';
2+
3+
import type { TaskLayoutComponent } from '../Layout/TaskLayoutOptions';
34
import { PriorityTools } from '../lib/PriorityTools';
45
import type { Task } from '../Task/Task';
56

src/Renderer/TaskLineRenderer.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@ import { Component, MarkdownRenderer } from 'obsidian';
33
import { GlobalFilter } from '../Config/GlobalFilter';
44
import { TASK_FORMATS, getSettings } from '../Config/Settings';
55
import { replaceTaskWithTasks } from '../Obsidian/File';
6-
import type { TaskLayoutOptions } from '../Layout/TaskLayoutOptions';
6+
import type { TaskLayoutComponent, TaskLayoutOptions } from '../Layout/TaskLayoutOptions';
77
import type { QueryLayoutOptions } from '../Layout/QueryLayoutOptions';
88
import type { Task } from '../Task/Task';
99
import * as taskModule from '../Task/Task';
10-
import type { TaskLayoutComponent } from '../Layout/TaskLayout';
1110
import { StatusMenu } from '../ui/Menus/StatusMenu';
1211
import { StatusRegistry } from '../Statuses/StatusRegistry';
1312
import { TaskFieldRenderer } from './TaskFieldRenderer';

src/TaskSerializer/DataviewTaskSerializer.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type { TaskLayoutComponent } from '../Layout/TaskLayout';
1+
import type { TaskLayoutComponent } from '../Layout/TaskLayoutOptions';
22
import type { Task } from '../Task/Task';
33
import { Priority } from '../Task/Task';
44
import { DefaultTaskSerializer } from './DefaultTaskSerializer';

src/TaskSerializer/DefaultTaskSerializer.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import type { Moment } from 'moment';
2-
import { TaskLayoutOptions } from '../Layout/TaskLayoutOptions';
3-
import type { TaskLayoutComponent } from '../Layout/TaskLayout';
2+
import { type TaskLayoutComponent, TaskLayoutOptions } from '../Layout/TaskLayoutOptions';
43
import { Recurrence } from '../Task/Recurrence';
54
import { Priority, Task, TaskRegularExpressions } from '../Task/Task';
65
import type { TaskDetails, TaskSerializer } from '.';

tests/Renderer/TaskLineRenderer.test.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,11 @@ import moment from 'moment';
55
import { DebugSettings } from '../../src/Config/DebugSettings';
66
import { GlobalFilter } from '../../src/Config/GlobalFilter';
77
import { resetSettings, updateSettings } from '../../src/Config/Settings';
8-
import { TaskLayoutOptions } from '../../src/Layout/TaskLayoutOptions';
8+
import { type TaskLayoutComponent, TaskLayoutOptions, taskLayoutComponents } from '../../src/Layout/TaskLayoutOptions';
99
import { DateParser } from '../../src/Query/DateParser';
1010
import { QueryLayoutOptions } from '../../src/Layout/QueryLayoutOptions';
1111
import type { Task } from '../../src/Task/Task';
1212
import { TaskRegularExpressions } from '../../src/Task/Task';
13-
import { type TaskLayoutComponent, taskLayoutComponents } from '../../src/Layout/TaskLayout';
1413
import type { TextRenderer } from '../../src/Renderer/TaskLineRenderer';
1514
import { TaskLineRenderer } from '../../src/Renderer/TaskLineRenderer';
1615
import { fromLine } from '../TestingTools/TestHelpers';

0 commit comments

Comments
 (0)