From f0af24d78fb679d273151f980f475422482ae271 Mon Sep 17 00:00:00 2001 From: Gani Georgiev Date: Mon, 21 Aug 2023 18:06:35 +0300 Subject: [PATCH] use the presentable prop when displaying relations --- .../collections/schema/SchemaField.svelte | 16 ++++- .../schema/SchemaFieldRelation.svelte | 61 +------------------ .../records/RecordFieldValue.svelte | 2 +- ui/src/components/records/RecordInfo.svelte | 9 +-- .../components/records/RecordsPicker.svelte | 6 +- .../records/fields/RelationField.svelte | 2 +- ui/src/scss/_schema_field.scss | 1 + ui/src/utils/CommonHelper.js | 12 ++-- 8 files changed, 32 insertions(+), 77 deletions(-) diff --git a/ui/src/components/collections/schema/SchemaField.svelte b/ui/src/components/collections/schema/SchemaField.svelte index abcba1f3..add1ed04 100644 --- a/ui/src/components/collections/schema/SchemaField.svelte +++ b/ui/src/components/collections/schema/SchemaField.svelte @@ -216,7 +216,21 @@ text: `Requires the field value NOT to be ${CommonHelper.zeroDefaultStr( field )}.`, - position: "right", + }} + /> + + + + +
+ + + diff --git a/ui/src/components/collections/schema/SchemaFieldRelation.svelte b/ui/src/components/collections/schema/SchemaFieldRelation.svelte index d84d4c00..d262827c 100644 --- a/ui/src/components/collections/schema/SchemaFieldRelation.svelte +++ b/ui/src/components/collections/schema/SchemaFieldRelation.svelte @@ -21,13 +21,8 @@ { label: "True", value: true }, ]; - const baseFields = ["id", "created", "updated"]; - - const authFields = ["username", "email", "emailVisibility", "verified"]; - let upsertPanel = null; let displayFieldsList = []; - let oldCollectionId = null; let isSingle = field.options?.maxSelect == 1; let oldIsSingle = isSingle; @@ -50,45 +45,15 @@ $: selectedColection = $collections.find((c) => c.id == field.options.collectionId) || null; - $: if (oldCollectionId != field.options.collectionId) { - oldCollectionId = field.options.collectionId; - refreshDisplayFieldsList(); - } - function loadDefaults() { field.options = { maxSelect: 1, collectionId: null, cascadeDelete: false, - displayFields: [], }; isSingle = true; oldIsSingle = isSingle; } - - function refreshDisplayFieldsList() { - displayFieldsList = baseFields.slice(0); - if (!selectedColection) { - return; - } - - if (selectedColection.type === "auth") { - displayFieldsList = displayFieldsList.concat(authFields); - } - - for (const f of selectedColection.schema) { - displayFieldsList.push(f.name); - } - - // deselect any missing display field - if (field.options?.displayFields?.length > 0) { - for (let i = field.options.displayFields.length - 1; i >= 0; i--) { - if (!displayFieldsList.includes(field.options.displayFields[i])) { - field.options.displayFields.splice(i, 1); - } - } - } - } @@ -174,29 +139,7 @@
{/if} -
- - -