From ee830d0e8504fb244eb3375a8249fae8fd1abb12 Mon Sep 17 00:00:00 2001 From: Peter Clement Date: Fri, 27 Aug 2021 08:05:22 +0100 Subject: [PATCH] refactor of multi-option filtering and validation --- .../ValidationEditor/ValidationDrawer.svelte | 18 +++++----- packages/builder/src/helpers/lucene.js | 6 ++-- .../src/api/controllers/row/internalSearch.js | 34 ------------------- .../src/forms/MultiFieldSelect.svelte | 8 ++--- .../src/forms/validation.js | 21 +----------- 5 files changed, 16 insertions(+), 71 deletions(-) diff --git a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/ValidationEditor/ValidationDrawer.svelte b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/ValidationEditor/ValidationDrawer.svelte index 073ad18795..8ab9d61e36 100644 --- a/packages/builder/src/components/design/PropertiesPanel/PropertyControls/ValidationEditor/ValidationDrawer.svelte +++ b/packages/builder/src/components/design/PropertiesPanel/PropertyControls/ValidationEditor/ValidationDrawer.svelte @@ -15,7 +15,6 @@ import { getSchemaForDatasource } from "builderStore/dataBinding" import DrawerBindableInput from "components/common/bindings/DrawerBindableInput.svelte" import { generate } from "shortid" - import Multiselect from "../../../../../../../bbui/src/Form/Core/Multiselect.svelte" export let rules = [] export let bindings = [] @@ -59,11 +58,11 @@ value: "notRegex", }, Contains: { - label: "Must contain one", + label: "Must contain", value: "contains", }, NotContains: { - label: "Must not contain ", + label: "Must not contain", value: "notContains", }, } @@ -98,8 +97,8 @@ ["attachment"]: [Constraints.Required], ["link"]: [ Constraints.Required, - Constraints.ContainsRowID, - Constraints.NotContainsRowID, + Constraints.Contains, + Constraints.NotContains, Constraints.MinLength, Constraints.MaxLength, ], @@ -283,7 +282,7 @@ disabled={rule.constraint === "required"} on:change={e => (rule.value = e.detail)} /> - {:else if ["maxLength", "minLength", "regex", "notRegex"].includes(rule.constraint)} + {:else if rule.type !== "array" && ["maxLength", "minLength", "regex", "notRegex", "contains", "notContains"].includes(rule.constraint)} - {:else if rule.type === "array" && ["contains", "notContains"].includes(rule.constraint)} - x} getOptionValue={x => x} - on:change={e => (rule.value = e.detail)} - bind:value={rule.value} + value={rule.value} /> {:else if rule.type === "boolean"}