3
0

Make vue-selects rounded

This commit is contained in:
Jože Fortun 2023-11-06 15:43:43 +01:00
parent cbcb27d188
commit c56b3cc989
41 changed files with 205 additions and 201 deletions

View File

@ -1,146 +1,139 @@
<template>
<div>
<div v-if="filter.params.length">
<b-form-group
v-if="filter.params.length"
class="w-100 mb-0"
v-for="(param, index) in filter.params"
:key="index"
class="text-primary"
>
<template
v-for="(param, index) in filter.params"
>
<b-form-group
:key="index"
>
<template slot="label">
{{ $t(`filters.labels.${param.label}`) }}
<template slot="label">
{{ $t(`filters.labels.${param.label}`) }}
<template v-if="param.label === 'expr'">
<a
v-if="param.label === 'expr'"
:href="documentationURL"
target="_blank"
<template v-if="param.label === 'expr'">
<a
v-if="param.label === 'expr'"
:href="documentationURL"
target="_blank"
>
<font-awesome-icon
:icon="['far', 'question-circle']"
/>
</a>
</template>
</template>
<!-- TODO create multi field component-->
<b-form-checkbox
v-if="param.type === 'bool'"
v-model="param.value"
/>
<vue-select
v-else-if="param.label === 'workflow'"
v-model="param.value"
:options="workflows"
:get-option-key="getOptionKey"
:reduce="wf => wf.workflowID"
:placeholder="$t('filters.placeholders.workflow')"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
/>
<b-form-select
v-else-if="param.label === 'status'"
v-model="param.value"
:options="httpStatusOptions"
>
<template #first>
<b-form-select-option
:value="undefined"
>
{{ $t('filters.httpStatus.none') }}
</b-form-select-option>
</template>
</b-form-select>
<template v-else-if="filter.ref === 'response'">
<template v-if="param.type === 'input'">
<b-form-select
v-model="param.value.type"
:options="inputTypeOptions"
class="mb-2"
/>
<b-input-group>
<b-input-group-prepend>
<b-button variant="dark">
ƒ
</b-button>
</b-input-group-prepend>
<b-form-input
v-model="param.value.expr"
:placeholder="$t('filters.help.expression.example')"
/>
</b-input-group>
</template>
<template v-else>
<b-input-group
v-for="(header, hIndex) in param.value"
:key="`header-${hIndex}`"
class="mb-2"
>
<b-form-input
v-model="header.name"
:placeholder="$t('filters.labels.name')"
/>
<b-form-input
v-model="header.expr"
:placeholder="$t('filters.labels.value')"
/>
<b-input-group-append>
<b-button
variant="danger"
@click="param.value.splice(hIndex, 1)"
>
<font-awesome-icon
:icon="['far', 'question-circle']"
:icon="['far', 'trash-alt']"
/>
</a>
</template>
</template>
<!-- TODO create multi field component-->
<b-form-checkbox
v-if="param.type === 'bool'"
v-model="param.value"
/>
<vue-select
v-else-if="param.label === 'workflow'"
v-model="param.value"
:options="workflows"
:get-option-key="getOptionKey"
:reduce="wf => wf.workflowID"
:placeholder="$t('filters.placeholders.workflow')"
:calculate-position="calculateDropdownPosition"
class="bg-white"
/>
<b-form-select
v-else-if="param.label === 'status'"
v-model="param.value"
:options="httpStatusOptions"
>
<template #first>
<b-form-select-option
:value="undefined"
>
{{ $t('filters.httpStatus.none') }}
</b-form-select-option>
</template>
</b-form-select>
<template v-else-if="filter.ref === 'response'">
<template v-if="param.type === 'input'">
<b-form-select
v-model="param.value.type"
:options="inputTypeOptions"
class="mb-2"
/>
<b-input-group>
<b-input-group-prepend>
<b-button variant="dark">
ƒ
</b-button>
</b-input-group-prepend>
<b-form-input
v-model="param.value.expr"
:placeholder="$t('filters.help.expression.example')"
/>
</b-input-group>
</template>
<template v-else>
<b-input-group
v-for="(header, hIndex) in param.value"
:key="`header-${hIndex}`"
class="mb-2"
>
<b-form-input
v-model="header.name"
:placeholder="$t('filters.labels.name')"
/>
<b-form-input
v-model="header.expr"
:placeholder="$t('filters.labels.value')"
/>
<b-input-group-append>
<b-button
variant="danger"
@click="param.value.splice(hIndex, 1)"
>
<font-awesome-icon
:icon="['far', 'trash-alt']"
/>
</b-button>
</b-input-group-append>
</b-input-group>
<b-button
variant="link"
class="text-decoration-none px-0"
@click="param.value.push({ name: '', expr: '' })"
>
+ {{ $t('filters.addHeader') }}
</b-button>
</template>
</template>
</b-input-group-append>
</b-input-group>
<template v-else>
<b-form-textarea
v-if="param.label === 'jsfunc'"
v-model="param.value"
max-rows="6"
/>
<b-input-group v-else>
<b-input-group-prepend
v-if="param.label === 'expr'"
>
<b-button variant="dark">
ƒ
</b-button>
</b-input-group-prepend>
<b-form-input
v-if="param.label === 'expr'"
v-model="param.value"
:placeholder="$t('filters.help.expression.example')"
/>
<b-form-input
v-else
v-model="param.value"
/>
</b-input-group>
</template>
</b-form-group>
<b-button
variant="link"
class="text-decoration-none px-0"
@click="param.value.push({ name: '', expr: '' })"
>
+ {{ $t('filters.addHeader') }}
</b-button>
</template>
</template>
<template v-else>
<b-form-textarea
v-if="param.label === 'jsfunc'"
v-model="param.value"
max-rows="6"
/>
<b-input-group v-else>
<b-input-group-prepend
v-if="param.label === 'expr'"
>
<b-button variant="dark">
ƒ
</b-button>
</b-input-group-prepend>
<b-form-input
v-if="param.label === 'expr'"
v-model="param.value"
:placeholder="$t('filters.help.expression.example')"
/>
<b-form-input
v-else
v-model="param.value"
/>
</b-input-group>
</template>
</b-form-group>
</div>

View File

@ -2,8 +2,9 @@
<b-dropdown
data-test-id="dropdown-add-filter"
:text="$t('filters.addFilter')"
variant="light"
class="d-inline-flex min-content"
variant="primary"
size="lg"
class="d-inline-flex mt-3"
>
<template v-if="filterList.length">
<b-dropdown-item

View File

@ -11,6 +11,14 @@
<h3 class="m-0">
{{ $t('filters.title') }}
</h3>
<div class="d-flex flex-wrap flex-fill-child gap-1">
<c-filters-dropdown
:available-filters="getAvailableFiltersByStep"
:filters="getSelectedFiltersByStep"
@addFilter="onAddFilter"
/>
</div>
</template>
<b-tabs
@ -38,12 +46,6 @@
</b-tabs>
<template #footer>
<c-filters-dropdown
:available-filters="getAvailableFiltersByStep"
:filters="getSelectedFiltersByStep"
@addFilter="onAddFilter"
/>
<c-button-submit
:disabled="disabled"
:processing="processing"

View File

@ -6,7 +6,7 @@
:get-option-key="getOptionKey"
:value="user.value"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
@search="search"
@input="updateRunAs"
/>

View File

@ -10,7 +10,7 @@
:get-option-label="r => getRoleLabel(r)"
:calculate-position="calculateDropdownPosition"
:placeholder="$t('admin:picker.role.placeholder')"
class="bg-white w-100"
class="bg-white w-100 rounded"
multiple
@search="search"
@input="updateValue($event)"

View File

@ -37,7 +37,7 @@
multiple
:placeholder="$t('ui.clone.pick-role')"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-modal>

View File

@ -231,7 +231,7 @@
:disabled="add.mode === 'eval' && !!add.userID"
:placeholder="$t('ui.add.role.placeholder')"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
@ -253,7 +253,7 @@
clearable
:placeholder="$t('ui.add.user.placeholder')"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
@search="searchUsers"
/>
</b-form-group>

View File

@ -22,7 +22,7 @@
:get-option-label="u => getUserLabel(u)"
:calculate-position="calculateDropdownPosition"
:placeholder="$t('admin:picker.member.placeholder')"
class="bg-white w-100"
class="bg-white w-100 rounded"
multiple
@search="search"
@input="updateValue($event)"

View File

@ -17,7 +17,7 @@
:placeholder="$t('connection.placeholder')"
:get-option-label="getConnectionLabel"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>

View File

@ -31,7 +31,7 @@
:get-option-key="getOptionKey"
:options="filterFieldOptions(rule)"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
style="min-width: 300px;"
/>

View File

@ -50,7 +50,7 @@
:calculate-position="calculateDropdownPosition"
:placeholder="$t('selector.selectableBlocks.placeholder')"
append-to-body
class="bg-white"
class="bg-white rounded"
/>
<b-input-group-append>

View File

@ -79,7 +79,7 @@
append-to-body
:calculate-position="calculateDropdownPosition"
:class="{ 'filter-field-picker': !!filter.name }"
class="field-selector bg-white"
class="field-selector bg-white rounded"
@input="onChange($event, groupIndex, index)"
/>
</b-td>

View File

@ -24,7 +24,7 @@
:calculate-position="calculateDropdownPosition"
multiple
label="name"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>

View File

@ -55,7 +55,7 @@
:filterable="false"
:searchable="searchable"
:selectable="option => option.selectable"
class="bg-white w-100"
class="bg-white w-100 rounded"
:placeholder="placeholder"
multiple
@search="search"
@ -84,7 +84,7 @@
:filterable="false"
:searchable="searchable"
:selectable="option => option.selectable"
class="bg-white w-100"
class="bg-white w-100 rounded"
:placeholder="placeholder"
@input="selectChange($event)"
@search="search"
@ -114,7 +114,7 @@
:filterable="false"
:searchable="searchable"
:selectable="option => option.selectable"
class="bg-white w-100"
class="bg-white w-100 rounded"
:placeholder="placeholder"
:value="getRecord(ctx.index)"
@input="setRecord($event, ctx.index)"
@ -156,7 +156,7 @@
:filterable="false"
:searchable="searchable"
:selectable="option => option.selectable"
class="bg-white w-100"
class="bg-white w-100 rounded"
@search="search"
>
<pagination

View File

@ -53,7 +53,7 @@
:filterable="false"
:selectable="option => option.selectable"
:loading="processing"
class="bg-white w-100"
class="bg-white w-100 rounded"
@search="search"
@input="updateValue($event)"
>
@ -79,7 +79,7 @@
:selectable="option => option.selectable"
:loading="processing"
multiple
class="bg-white w-100"
class="bg-white w-100 rounded"
@search="search"
>
<pagination
@ -106,7 +106,7 @@
:filterable="false"
:selectable="option => option.selectable"
:loading="processing"
class="bg-white w-100"
class="bg-white w-100 rounded"
@search="search"
@input="updateValue($event, ctx.index)"
>
@ -136,7 +136,7 @@
:filterable="false"
:selectable="option => option.selectable"
:loading="processing"
class="bg-white w-100"
class="bg-white w-100 rounded"
@input="updateValue($event)"
@search="search"
>

View File

@ -17,7 +17,7 @@
:placeholder="$t('pickNamespace')"
:calculate-position="calculateDropdownPosition"
:autoscroll="false"
class="bg-white"
class="bg-white rounded"
@option:selected="namespaceSelected"
>
<template #list-header>

View File

@ -76,7 +76,7 @@
:calculate-position="calculateDropdownPosition"
:reduce="user => user.userID"
option-value="userID"
class="bg-white"
class="bg-white rounded"
@search="searchUsers"
/>
</b-form-group>

View File

@ -15,7 +15,7 @@
label="name"
append-to-body
:selectable="c => !c.deletedAt"
class="bg-white"
class="bg-white rounded"
@input="chartSelected"
/>
<b-input-group-append>
@ -58,7 +58,7 @@
:clearable="true"
:placeholder="$t('chart.drillDown.openInModal')"
append-to-body
class="bg-white w-100"
class="bg-white w-100 rounded"
/>
</b-form-group>
</template>

View File

@ -191,7 +191,7 @@
:get-option-key="getOptionMetricFieldKey"
:reduce="f => f.name"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
@input="onMetricFieldChange"
/>
</b-form-group>
@ -208,7 +208,7 @@
:get-option-key="getOptionAggregationOperationKey"
:reduce="a => a.operation"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
@ -280,7 +280,7 @@
:clearable="true"
:placeholder="$t('metric.drillDown.openInModal')"
append-to-body
class="block-selector bg-white w-100"
class="block-selector bg-white w-100 rounded"
/>
</b-form-group>
</fieldset>

View File

@ -29,7 +29,7 @@
:reduce="f => f.pageID"
option-value="pageID"
option-text="title"
class="bg-white"
class="bg-white rounded"
@input="updateLabelValue"
/>
</b-form-group>

View File

@ -74,7 +74,7 @@
:reduce="getOptionKey"
:calculate-position="calculateDropdownPosition"
append-to-body
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>
@ -95,7 +95,7 @@
:reduce="getOptionKey"
:calculate-position="calculateDropdownPosition"
append-to-body
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>
@ -116,7 +116,7 @@
:reduce="getOptionKey"
:calculate-position="calculateDropdownPosition"
append-to-body
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>
@ -140,7 +140,7 @@
:reduce="getOptionKey"
:calculate-position="calculateDropdownPosition"
append-to-body
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>

View File

@ -41,7 +41,7 @@
:get-option-key="getOptionModuleKey"
:reduce="m => m.moduleID"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>
@ -88,7 +88,7 @@
:get-option-key="getOptionModuleFieldKey"
:reduce="f => f.name"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
@input="fieldChanged($event, options.value)"
/>
</b-form-group>
@ -111,7 +111,7 @@
:get-option-key="getOptionAggregationOperationKey"
:reduce="a => a.operation"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>
@ -159,7 +159,7 @@
:get-option-key="getOptionModuleKey"
:reduce="m => m.moduleID"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>
@ -206,7 +206,7 @@
:get-option-key="getOptionModuleFieldKey"
:reduce="f => f.name"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
@input="fieldChanged($event, options.minValue)"
/>
</b-form-group>
@ -229,7 +229,7 @@
:get-option-key="getOptionAggregationOperationKey"
:reduce="a => a.operation"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>
@ -277,7 +277,7 @@
:get-option-key="getOptionModuleKey"
:reduce="m => m.moduleID"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>
@ -324,7 +324,7 @@
:get-option-key="getOptionModuleFieldKey"
:reduce="f => f.name"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
@input="fieldChanged($event, options.maxValue)"
/>
</b-form-group>
@ -347,7 +347,7 @@
:get-option-key="getOptionAggregationOperationKey"
:reduce="a => a.operation"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</b-col>

View File

@ -58,7 +58,7 @@
:reduce="getOptionKey"
:calculate-position="calculateDropdownPosition"
append-to-body
class="bg-white"
class="bg-white rounded"
@input="updateReferenceModule($event, [])"
/>
</b-form-group>
@ -184,7 +184,7 @@
:get-option-key="getOptionKey"
:reduce="option => option.isSystem ? option.name : option.fieldID"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-td>

View File

@ -369,7 +369,7 @@
:calculate-position="calculateDropdownPosition"
append-to-body
multiple
class="bg-white"
class="bg-white rounded"
/>
</b-td>

View File

@ -175,7 +175,7 @@
:reduce="option => option.value"
:calculate-position="calculateDropdownPosition"
append-to-body
class="bg-white"
class="bg-white rounded"
/>
<b-input-group-append>

View File

@ -61,7 +61,7 @@
:calculate-position="calculateDropdownPosition"
:selectable="option => !fields.includes(option.name)"
:reduce="f => f.name"
class="bg-white position-relative"
class="bg-white position-relative rounded"
@input="addField"
/>

View File

@ -154,7 +154,7 @@
:get-option-key="getOptionKey"
:calculate-position="calculateDropdownPosition"
:placeholder="$t('recordList.export.timezonePlaceholder')"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
</template>

View File

@ -104,7 +104,7 @@
:get-option-key="o => o.id"
:placeholder="$t('colorScheme.placeholder')"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
>
<template #option="option">
<p

View File

@ -547,7 +547,7 @@
:selectable="role => !currentLayoutRoles.includes(role.roleID)"
append-to-body
multiple
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>

View File

@ -19,7 +19,7 @@
:get-option-key="getOptionKey"
:placeholder="$t('connection.placeholder')"
:calculate-position="calculateDropdownPosition"
class="h-100 bg-white"
class="h-100 bg-white rounded"
/>
</b-form-group>
</b-card>

View File

@ -19,7 +19,7 @@
:get-option-key="getOptionKey"
:placeholder="$t('connection.placeholder')"
:calculate-position="calculateDropdownPosition"
class="h-100 bg-white"
class="h-100 bg-white rounded"
/>
</b-form-group>
</b-card>

View File

@ -23,7 +23,7 @@
:calculate-position="calculateDropdownPosition"
:get-option-label="({ handle, meta }) => meta.name || handle"
:get-option-key="getOptionKey"
class="h-100 bg-white"
class="h-100 bg-white rounded"
/>
</b-form-group>
</b-card>

View File

@ -9,7 +9,7 @@
:reduce="r => r.name"
append-to-body
:calculate-position="calculateDropdownPosition"
class="column-selector bg-white"
class="column-selector bg-white rounded"
v-on="$listeners"
/>
</template>

View File

@ -60,7 +60,7 @@
option-value="value"
clearable
:calculate-position="calculateDropdownPosition"
class="mw-100"
class="mw-100 rounded"
style="min-width: 100%;"
>
<template #option="option">

View File

@ -35,6 +35,7 @@
:filter="functionFilter"
:placeholder="$t('steps:function.configurator.select-function')"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@input="functionChanged"
/>
</b-form-group>
@ -111,6 +112,7 @@
:filter="argTypeFilter"
:clearable="false"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@input="$root.$emit('change-detected')"
/>
</b-form-group>
@ -148,6 +150,7 @@
:reduce="a => a.value"
:placeholder="$t('steps:function.configurator.option-select')"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@input="$root.$emit('change-detected')"
/>

View File

@ -29,6 +29,7 @@
:filter="resTypeFilter"
:placeholder="$t('steps:trigger.configurator.select-resource-type')"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@input="resourceChanged"
/>
</b-form-group>
@ -47,6 +48,7 @@
:filter="evtTypeFilter"
:placeholder="$t('steps:trigger.configurator.select-event-type')"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@input="eventChanged"
/>
</b-form-group>
@ -152,6 +154,7 @@
:filter="constrFilter"
:placeholder="$t('steps:trigger.configurator.select-constraint-type')"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@input="$root.$emit('change-detected')"
/>
</b-form-group>
@ -168,6 +171,7 @@
:reduce="c => c.value"
:placeholder="$t('steps:trigger.configurator.select-operator')"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@input="$root.$emit('change-detected')"
/>
</b-form-group>

View File

@ -54,6 +54,7 @@
:get-option-key="getOptionKey"
:value="user.value"
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@search="search"
@input="updateRunAs"
/>

View File

@ -97,6 +97,7 @@
:filter="varFilter"
append-to-body
:calculate-position="calculateDropdownPosition"
class="bg-white rounded"
@input="$root.$emit('change-detected')"
/>
</b-form-group>

View File

@ -53,7 +53,7 @@
:get-option-key="getOptionRoleKey"
append-to-body
:calculate-position="calculateDropdownPosition"
class="h-100 bg-white"
class="h-100 bg-white rounded"
@input="onRoleChange"
/>
</b-form-group>
@ -207,7 +207,7 @@
:disabled="!!add.userID"
:placeholder="labels.add.role.placeholder"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
/>
</b-form-group>
@ -228,7 +228,7 @@
clearable
:placeholder="labels.add.user.placeholder"
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
@search="searchUsers"
/>
</b-form-group>
@ -242,7 +242,6 @@
</b-button>
<c-button-submit
v-if="false"
data-test-id="button-save"
:disabled="submitDisabled"
:processing="processing"

View File

@ -11,7 +11,7 @@
:reduce="l => l.sensitivityLevelID"
append-to-body
:calculate-position="calculateDropdownPosition"
class="bg-white"
class="bg-white rounded"
@input="onInput"
/>
</template>

View File

@ -17,7 +17,7 @@
option-text="label"
placeholder="Select record"
:filterable="false"
class="bg-white w-100 mb-3"
class="bg-white w-100 mb-3 rounded"
@search="search"
>
<c-pagination