Skip to content

Commit d962f89

Browse files
mechkglukashroch
authored andcommitted
feat(prompts): food entry auto focus option (#V4-1357)
1 parent 5ed5b23 commit d962f89

File tree

6 files changed

+25
-3
lines changed

6 files changed

+25
-3
lines changed

apps/admin/src/components/prompts/standard/edit-meal-prompt.vue

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@
88
:model-value="separateDrinks"
99
@update:model-value="update('separateDrinks', $event)"
1010
/>
11+
<v-switch
12+
hide-details="auto"
13+
:label="$t('survey-schemes.prompts.edit-meal-prompt.inputAutoFocus')"
14+
:model-value="inputAutoFocus"
15+
@update:model-value="update('inputAutoFocus', $event)"
16+
/>
1117
</v-col>
1218
</v-row>
1319
</v-tabs-window-item>
@@ -31,6 +37,10 @@ export default defineComponent({
3137
type: Boolean as PropType<Prompts['edit-meal-prompt']['separateDrinks']>,
3238
required: true,
3339
},
40+
inputAutoFocus: {
41+
type: Boolean as PropType<Prompts['edit-meal-prompt']['inputAutoFocus']>,
42+
required: true,
43+
},
3444
},
3545
});
3646
</script>

apps/api/src/jobs/survey-schemes/migrations/2_refactor_conditions.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,15 @@ function migrateSinglePrompt(prompt: SinglePromptV1, section: PromptSection): Si
218218
},
219219
};
220220
}
221+
case 'edit-meal-prompt':
222+
return {
223+
...prompt,
224+
version: 2,
225+
useGraph: false,
226+
conditions,
227+
separateDrinks: true,
228+
inputAutoFocus: true,
229+
};
221230
default:
222231
return {
223232
...prompt,

apps/survey/src/components/prompts/standard/EditMealPrompt.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<editable-food-list
55
v-model="foodsOnly"
66
v-bind="{ prompt, section }"
7-
focus
7+
:focus="prompt.inputAutoFocus"
88
mode="foodsOnly"
99
@delete="deleteFood"
1010
/>
@@ -19,7 +19,7 @@
1919
v-else
2020
v-bind="{ prompt, section }"
2121
v-model="state"
22-
focus
22+
:focus="prompt.inputAutoFocus"
2323
@delete="deleteFood"
2424
/>
2525
<template #actions>

packages/common/src/prompts/prompts.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -367,6 +367,7 @@ const generalAssociatedFoodsPrompt = baseStandardPrompt.merge(foodBrowser).exten
367367
const editMealPrompt = baseStandardPrompt.extend({
368368
component: z.literal('edit-meal-prompt'),
369369
separateDrinks: z.boolean(),
370+
inputAutoFocus: z.boolean(),
370371
});
371372

372373
const externalSourcePrompt = baseStandardPrompt.extend({

packages/common/src/prompts/standard.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ export const editMealPrompt: Prompts['edit-meal-prompt'] = copy({
3737
id: 'edit-meal-prompt',
3838
name: 'Meal Edit prompt',
3939
separateDrinks: false,
40+
inputAutoFocus: true,
4041
});
4142

4243
export const externalSourcePrompt: Prompts['external-source-prompt'] = copy({

packages/i18n/src/admin/en/survey-schemes.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -524,7 +524,8 @@
524524
"edit-meal-prompt": {
525525
"title": "Food list",
526526
"subtitle": "List or edit foods in this meal as free text descriptions",
527-
"separateDrinks": "Separate drinks list"
527+
"separateDrinks": "Separate drinks list",
528+
"inputAutoFocus": "Automatically set focus to the food entry text field"
528529
},
529530
"external-source-prompt": {
530531
"title": "External source",

0 commit comments

Comments
 (0)