mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-04-21 00:01:22 +02:00
Generalized frontend model store (#193)
This commit is contained in:
31
src-web/lib/renameModelWithPrompt.tsx
Normal file
31
src-web/lib/renameModelWithPrompt.tsx
Normal file
@@ -0,0 +1,31 @@
|
||||
import type { AnyModel} from '@yaakapp-internal/models';
|
||||
import { patchModel } from '@yaakapp-internal/models';
|
||||
import { InlineCode } from '../components/core/InlineCode';
|
||||
import { showPrompt } from './prompt';
|
||||
|
||||
export async function renameModelWithPrompt(model: Extract<AnyModel, { name: string }> | null) {
|
||||
if (model == null) {
|
||||
throw new Error('Tried to rename null model');
|
||||
}
|
||||
|
||||
const name = await showPrompt({
|
||||
id: 'rename-request',
|
||||
title: 'Rename Request',
|
||||
description:
|
||||
model.name === '' ? (
|
||||
'Enter a new name'
|
||||
) : (
|
||||
<>
|
||||
Enter a new name for <InlineCode>{model.name}</InlineCode>
|
||||
</>
|
||||
),
|
||||
label: 'Name',
|
||||
placeholder: 'New Name',
|
||||
defaultValue: model.name,
|
||||
confirmText: 'Save',
|
||||
});
|
||||
|
||||
if (name == null) return;
|
||||
|
||||
await patchModel(model, { name });
|
||||
}
|
||||
Reference in New Issue
Block a user