input min max
continuous-integration/drone/push Build is passing Details

This commit is contained in:
Вячеслав Нагель 2023-07-03 09:38:07 +07:00
parent e9d0bcc206
commit d29c011e5f
Signed by: v9gel
GPG Key ID: 7C2360915BE4C743
2 changed files with 19 additions and 14 deletions

View File

@ -55,12 +55,10 @@ const rotatePage = () => {
<div class="container"> <div class="container">
<Sidebar> <Sidebar>
<SidebarBlock title="Фон"> <SidebarBlock title="Фон">
<Input v-model="imageBackgroundColor" :type="InputType.Color"> <Input v-model="imageBackgroundColor" :type="InputType.Color">Цвет {{ imageBackgroundColor }}</Input>
Цвет {{ imageBackgroundColor }}
</Input>
</SidebarBlock> </SidebarBlock>
<SidebarBlock title="Вертикальные линии"> <SidebarBlock title="Вертикальные линии">
<Input v-model="vMargin">Отступ, мм</Input> <Input v-model="vMargin" :min="1">Отступ, мм</Input>
<Input v-model="vRotation">Поворот, градусы</Input> <Input v-model="vRotation">Поворот, градусы</Input>
<ButtonsBar> <ButtonsBar>
<Button :size="ButtonSize.Small" :click="() => { <Button :size="ButtonSize.Small" :click="() => {
@ -90,8 +88,8 @@ const rotatePage = () => {
</ButtonsBar> </ButtonsBar>
</SidebarBlock> </SidebarBlock>
<SidebarBlock title="Горизонтальные линии"> <SidebarBlock title="Горизонтальные линии">
<Input v-model="hMargin">Отступ, мм</Input> <Input v-model="hMargin" :min="1">Отступ, мм</Input>
<Input v-model="hMargin2">Дополнительный отступ, мм</Input> <Input v-model="hMargin2" :min="1">Дополнительный отступ, мм</Input>
</SidebarBlock> </SidebarBlock>
<SidebarBlock title="Поля"> <SidebarBlock title="Поля">
<label class="switch"> <label class="switch">
@ -101,7 +99,7 @@ const rotatePage = () => {
<Input v-model="marginColor" :type="InputType.Color"> <Input v-model="marginColor" :type="InputType.Color">
Цвет {{ marginColor }} Цвет {{ marginColor }}
</Input> </Input>
<Input v-model="marginLeftMargin">Отступ слева, мм</Input> <Input v-model="marginLeftMargin" :min="1">Отступ слева, мм</Input>
</SidebarBlock> </SidebarBlock>
</Sidebar> </Sidebar>
<Page> <Page>
@ -111,8 +109,8 @@ const rotatePage = () => {
</Page> </Page>
<Sidebar horizontalPosition="right"> <Sidebar horizontalPosition="right">
<SidebarBlock title="Изображение"> <SidebarBlock title="Изображение">
<Input v-model="imageHeight">Высота, мм</Input> <Input v-model="imageHeight" :min="1">Высота, мм</Input>
<Input v-model="imageWidth">Ширина, мм</Input> <Input v-model="imageWidth" :min="1">Ширина, мм</Input>
<ButtonsBar> <ButtonsBar>
<Button :size="ButtonSize.Small" :click="() => { <Button :size="ButtonSize.Small" :click="() => {
imageWidth = 148; imageWidth = 148;

View File

@ -3,7 +3,8 @@ import { InputType } from '../types';
interface Props { interface Props {
type: InputType; type: InputType;
min?: number;
max?: number;
} }
withDefaults(defineProps<Props>(), { withDefaults(defineProps<Props>(), {
@ -19,10 +20,16 @@ const modelValue = defineModel();
<slot></slot> <slot></slot>
</label> </label>
<br /> <br />
<input :class="{ <input
input: true, :class="{
'input--color': type === InputType.Color, input: true,
}" :type="type" v-model="modelValue" /> 'input--color': type === InputType.Color,
}"
:type="type"
v-model="modelValue"
:min="min"
:max="max"
/>
</div> </div>
</template> </template>