Skip to content

Commit ae8830d

Browse files
committed
format update
1 parent 19c6779 commit ae8830d

11 files changed

Lines changed: 85 additions & 75 deletions

File tree

src/components/api/searchApi.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,9 +96,12 @@ export const fetchTextLanguages = async (textId: string) => {
9696
return data;
9797
};
9898

99-
export const fetchLanguageVersions = async (textId: string, language: string) => {
99+
export const fetchLanguageVersions = async (
100+
textId: string,
101+
language: string,
102+
) => {
100103
const { data } = await axiosInstance.get(
101-
`/api/v1/texts/${textId}/languages/${language}/versions`
104+
`/api/v1/texts/${textId}/languages/${language}/versions`,
102105
);
103106
return data;
104107
};

src/components/routes/groups/GroupsTable.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,9 @@ const GroupsTable = ({ groups, isLoading }: GroupsTableProps) => {
5454
size="sm"
5555
/>
5656
</Pecha.TableCell>
57-
<Pecha.TableCell>{groupTypeLabel(group.group_type)}</Pecha.TableCell>
57+
<Pecha.TableCell>
58+
{groupTypeLabel(group.group_type)}
59+
</Pecha.TableCell>
5860
<Pecha.TableCell className="text-muted-foreground font-mono text-sm">
5961
{group.slug}
6062
</Pecha.TableCell>

src/components/routes/task/api/presetApi.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,27 +22,27 @@ export interface PresetResponse {
2222

2323
export const createOrUpdatePreset = async (
2424
subtaskId: string,
25-
preset: PresetRequest
25+
preset: PresetRequest,
2626
): Promise<PresetResponse> => {
2727
const { data } = await axiosInstance.post(
2828
`/api/v1/cms/sub-tasks/${subtaskId}/preset`,
2929
preset,
3030
{
3131
headers: getAuthHeaders(),
32-
}
32+
},
3333
);
3434
return data;
3535
};
3636

3737
export const getPreset = async (
38-
subtaskId: string
38+
subtaskId: string,
3939
): Promise<PresetResponse | null> => {
4040
try {
4141
const { data } = await axiosInstance.get(
4242
`/api/v1/cms/sub-tasks/${subtaskId}/preset`,
4343
{
4444
headers: getAuthHeaders(),
45-
}
45+
},
4646
);
4747
return data;
4848
} catch (error: any) {

src/components/routes/task/api/taskApi.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -180,12 +180,9 @@ export const deleteSubTaskAudio = async (sub_task_id: string) => {
180180
};
181181

182182
export const deleteSubTaskTimestamp = async (sub_task_id: string) => {
183-
await axiosInstance.delete(
184-
`/api/v1/cms/sub-tasks/${sub_task_id}/timestamp`,
185-
{
186-
headers: getAuthHeaders(),
187-
},
188-
);
183+
await axiosInstance.delete(`/api/v1/cms/sub-tasks/${sub_task_id}/timestamp`, {
184+
headers: getAuthHeaders(),
185+
});
189186
};
190187

191188
export const generateDayAudio = async (

src/components/routes/task/components/view/TaskView.test.tsx

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -170,9 +170,7 @@ describe("TaskView Component", () => {
170170
expect(screen.getByText("Segment: 1:00 – 2:30")).toBeInTheDocument();
171171
});
172172
expect(
173-
document.querySelector(
174-
'audio[src="https://example.com/day-audio.mp3"]',
175-
),
173+
document.querySelector('audio[src="https://example.com/day-audio.mp3"]'),
176174
).toBeInTheDocument();
177175
});
178176

@@ -197,9 +195,7 @@ describe("TaskView Component", () => {
197195
<TaskView onEditTask={mockOnEditTask} taskId="task-123" />,
198196
);
199197
await waitFor(() => {
200-
expect(
201-
screen.getByText("Timeline: 0:30 – 1:30"),
202-
).toBeInTheDocument();
198+
expect(screen.getByText("Timeline: 0:30 – 1:30")).toBeInTheDocument();
203199
});
204200
expect(document.querySelector("audio")).not.toBeInTheDocument();
205201
});
@@ -230,7 +226,9 @@ describe("TaskView Component", () => {
230226
/>,
231227
);
232228
await waitFor(() => {
233-
expect(screen.getByText("Task With Both Audio Sources")).toBeInTheDocument();
229+
expect(
230+
screen.getByText("Task With Both Audio Sources"),
231+
).toBeInTheDocument();
234232
});
235233
expect(
236234
container.querySelector(

src/components/routes/task/components/view/TaskView.tsx

Lines changed: 43 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -69,12 +69,13 @@ const SourceReferenceWithVersion = ({ subtask }: { subtask: any }) => {
6969

7070
const { data: versionsData } = useQuery({
7171
queryKey: ["languageVersions", subtask.source_text_id, preset?.language],
72-
queryFn: () => fetchLanguageVersions(subtask.source_text_id, preset!.language),
72+
queryFn: () =>
73+
fetchLanguageVersions(subtask.source_text_id, preset!.language),
7374
enabled: !!preset && !!subtask.source_text_id && !!preset.language,
7475
});
7576

7677
const versionTitle = versionsData?.available_versions?.find(
77-
(v: any) => v.id === preset?.version_id
78+
(v: any) => v.id === preset?.version_id,
7879
)?.title;
7980

8081
return (
@@ -85,14 +86,17 @@ const SourceReferenceWithVersion = ({ subtask }: { subtask: any }) => {
8586
{/* Connecting line */}
8687
<div className="absolute -top-2 left-0 w-px h-2 bg-blue-400 dark:bg-blue-500" />
8788
<div className="absolute top-0 left-0 w-3 h-px bg-blue-400 dark:bg-blue-500" />
88-
89+
8990
{/* Version info box */}
9091
<div className="ml-4 flex items-center gap-2 px-3 py-2 bg-blue-50 dark:bg-blue-900/20 rounded-md border border-blue-200 dark:border-blue-800">
9192
<span className="text-xs font-semibold text-blue-600 dark:text-blue-400 uppercase tracking-wide">
9293
{preset.language}
9394
</span>
9495
<span className="text-xs text-gray-500 dark:text-gray-400"></span>
95-
<span className="text-sm text-gray-700 dark:text-gray-300 truncate max-w-[300px]" title={versionTitle || preset.version_id}>
96+
<span
97+
className="text-sm text-gray-700 dark:text-gray-300 truncate max-w-[300px]"
98+
title={versionTitle || preset.version_id}
99+
>
96100
{versionTitle || preset.version_id.substring(0, 8) + "..."}
97101
</span>
98102
</div>
@@ -115,7 +119,7 @@ const SubtaskCard = ({
115119
}) => {
116120
const [isModalOpen, setIsModalOpen] = useState(false);
117121
const queryClient = useQueryClient();
118-
122+
119123
const { data: preset } = useQuery({
120124
queryKey: ["preset", subtask.id],
121125
queryFn: () => getPreset(subtask.id),
@@ -132,16 +136,18 @@ const SubtaskCard = ({
132136
<div className="flex items-center border w-fit bg-[#F7F7F7] dark:bg-sidebar-secondary px-2 py-1 text-sm rounded-md border-dashed gap-2">
133137
<ContentIcon type={subtask.content_type} /> {subtask.content_type}
134138
</div>
135-
{subtask.content_type === "SOURCE_REFERENCE" && !preset && subtask.source_text_id && (
136-
<Pecha.Button
137-
variant="outline"
138-
size="sm"
139-
onClick={() => setIsModalOpen(true)}
140-
className="text-xs"
141-
>
142-
Add Version
143-
</Pecha.Button>
144-
)}
139+
{subtask.content_type === "SOURCE_REFERENCE" &&
140+
!preset &&
141+
subtask.source_text_id && (
142+
<Pecha.Button
143+
variant="outline"
144+
size="sm"
145+
onClick={() => setIsModalOpen(true)}
146+
className="text-xs"
147+
>
148+
Add Version
149+
</Pecha.Button>
150+
)}
145151
</div>
146152
{listeners && isEditable && (
147153
<PiDotsSixVertical
@@ -153,7 +159,10 @@ const SubtaskCard = ({
153159
{subtask.content_type === "SOURCE_REFERENCE" ? (
154160
<SourceReferenceWithVersion subtask={subtask} />
155161
) : (
156-
<SubtaskContent type={subtask.content_type} content={subtask.content} />
162+
<SubtaskContent
163+
type={subtask.content_type}
164+
content={subtask.content}
165+
/>
157166
)}
158167
{subtask.audio_url ? (
159168
<div className="border-t border-dashed pt-2">
@@ -175,24 +184,28 @@ const SubtaskCard = ({
175184
/>
176185
) : (
177186
<p className="text-xs text-muted-foreground border-t border-dashed pt-2">
178-
Timeline: {formatMs(subtask.start_ms)}{formatMs(subtask.end_ms)}
187+
Timeline: {formatMs(subtask.start_ms)}{" "}
188+
{formatMs(subtask.end_ms)}
179189
</p>
180190
))
181191
)}
182192
</div>
183-
184-
{subtask.content_type === "SOURCE_REFERENCE" && subtask.source_text_id && (
185-
<VersionSelectorModal
186-
isOpen={isModalOpen}
187-
onOpenChange={setIsModalOpen}
188-
textId={subtask.source_text_id}
189-
subtaskId={subtask.id}
190-
onSuccess={() => {
191-
setIsModalOpen(false);
192-
queryClient.invalidateQueries({ queryKey: ["preset", subtask.id] });
193-
}}
194-
/>
195-
)}
193+
194+
{subtask.content_type === "SOURCE_REFERENCE" &&
195+
subtask.source_text_id && (
196+
<VersionSelectorModal
197+
isOpen={isModalOpen}
198+
onOpenChange={setIsModalOpen}
199+
textId={subtask.source_text_id}
200+
subtaskId={subtask.id}
201+
onSuccess={() => {
202+
setIsModalOpen(false);
203+
queryClient.invalidateQueries({
204+
queryKey: ["preset", subtask.id],
205+
});
206+
}}
207+
/>
208+
)}
196209
</>
197210
);
198211
};

src/components/ui/atoms/markdown-editor.tsx

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -86,9 +86,7 @@ const MarkdownEditor = ({
8686
const prefix = "## ";
8787
const insertText = `${prefix}${currentValue.slice(start, end)}`;
8888
const nextValue =
89-
currentValue.slice(0, lineStart) +
90-
insertText +
91-
currentValue.slice(end);
89+
currentValue.slice(0, lineStart) + insertText + currentValue.slice(end);
9290
const cursorStart = lineStart + prefix.length;
9391
const cursorEnd = cursorStart + (end - start);
9492
return { nextValue, cursorStart, cursorEnd };
@@ -124,14 +122,11 @@ const MarkdownEditor = ({
124122
setIsLinkDialogOpen(true);
125123
};
126124

127-
const handleInsertLink = ({
128-
label,
129-
url,
130-
}: {
131-
label: string;
132-
url: string;
133-
}) => {
134-
const selection = savedSelection.current ?? { start: value.length, end: value.length };
125+
const handleInsertLink = ({ label, url }: { label: string; url: string }) => {
126+
const selection = savedSelection.current ?? {
127+
start: value.length,
128+
end: value.length,
129+
};
135130
const markdown = buildMarkdownLink(label, url);
136131
const result = insertAtSelection(
137132
value,

src/components/ui/molecules/markdown-editor/MarkdownLinkDialog.tsx

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -64,12 +64,10 @@ const MarkdownLinkDialog = ({
6464
const [linkType, setLinkType] = useState<LinkType>("group");
6565
const [searchQuery, setSearchQuery] = useState("");
6666
const [debouncedQuery] = useDebounce(searchQuery.trim(), DEBOUNCE_MS);
67-
const [selectedGroup, setSelectedGroup] = useState<AuthorGroupListItem | null>(
68-
null,
69-
);
70-
const [selectedTextItem, setSelectedTextItem] = useState<TextTitleItem | null>(
71-
null,
72-
);
67+
const [selectedGroup, setSelectedGroup] =
68+
useState<AuthorGroupListItem | null>(null);
69+
const [selectedTextItem, setSelectedTextItem] =
70+
useState<TextTitleItem | null>(null);
7371
const [selectedSegment, setSelectedSegment] = useState<SegmentItem | null>(
7472
null,
7573
);
@@ -386,7 +384,8 @@ const MarkdownLinkDialog = ({
386384
</p>
387385
<div className="max-h-48 space-y-2 overflow-y-auto">
388386
{segments.map((segment, index) => {
389-
const isSelected = selectedSegment?.segment_id === segment.segment_id;
387+
const isSelected =
388+
selectedSegment?.segment_id === segment.segment_id;
390389
return (
391390
<button
392391
key={segment.segment_id || index}

src/components/ui/molecules/subtask-card/SubTaskCard.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -222,14 +222,17 @@ const SourceSubtask = ({ subTask }: { subTask: SourceSubTask }) => {
222222
{/* Connecting line */}
223223
<div className="absolute -top-2 left-0 w-px h-2 bg-blue-400 dark:bg-blue-500" />
224224
<div className="absolute top-0 left-0 w-3 h-px bg-blue-400 dark:bg-blue-500" />
225-
225+
226226
{/* Version info box */}
227227
<div className="ml-4 flex items-center gap-2 px-3 py-2 bg-blue-50 dark:bg-blue-900/20 rounded-md border border-blue-200 dark:border-blue-800">
228228
<span className="text-xs font-semibold text-blue-600 dark:text-blue-400 uppercase tracking-wide">
229229
{preset.language}
230230
</span>
231231
<span className="text-xs text-gray-500 dark:text-gray-400"></span>
232-
<span className="text-sm text-gray-700 dark:text-gray-300 truncate max-w-[200px]" title={preset.version_id}>
232+
<span
233+
className="text-sm text-gray-700 dark:text-gray-300 truncate max-w-[200px]"
234+
title={preset.version_id}
235+
>
233236
{preset.version_id.substring(0, 8)}...
234237
</span>
235238
</div>
@@ -536,8 +539,7 @@ export const SubTaskCard = ({
536539
}: SubTaskCardProps) => {
537540
const hasDayAudio =
538541
!!dayAudioUrl && dayAudioDurationMs != null && dayAudioDurationMs > 0;
539-
const hasTimestamps =
540-
subTask.start_ms != null && subTask.end_ms != null;
542+
const hasTimestamps = subTask.start_ms != null && subTask.end_ms != null;
541543
const showTimestampSection = hasDayAudio || hasTimestamps;
542544

543545
const renderContent = () => {

src/components/ui/molecules/tts-generate-controls/TtsGenerateControls.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,8 @@ const TtsGenerateControls = ({
4242
const showEnglishOptions = isEnglishTtsLanguage(planLanguage);
4343
const showTibetanOptions = isTibetanTtsLanguage(planLanguage);
4444
const isDisabled = disabled || isPending || !isSupported;
45-
const triggerClassName = size === "sm" ? "w-[160px] h-9" : "w-full sm:w-[200px]";
45+
const triggerClassName =
46+
size === "sm" ? "w-[160px] h-9" : "w-full sm:w-[200px]";
4647

4748
const handleGenerate = () => {
4849
onGenerate({

0 commit comments

Comments
 (0)