diff --git a/front/js/svelte/content/Index.svelte b/front/js/svelte/content/Index.svelte index 77bfcc5..7cd2c3d 100644 --- a/front/js/svelte/content/Index.svelte +++ b/front/js/svelte/content/Index.svelte @@ -14,7 +14,8 @@ // export let visibleFields; export let systemFields; - export let sort; + export let sortParam; + export let sortField; export let operators; export let filter; export let limit; @@ -42,7 +43,8 @@ .get(newUrl) .then((response) => { records = response.data.records; - sort = response.data.sort; + sortParam = response.data.sortParam; + sortField = response.data.sortField; operators = response.data.operators; filter = response.data.filter; skip = response.data.skip; @@ -70,7 +72,8 @@ bind:schema bind:records {systemFields} - {sort} + {sortParam} + {sortField} {operators} {filter} {inModal} @@ -85,7 +88,8 @@ {records} {graph} {schema} - {sort} + {sortParam} + {sortField} {systemFields} {inModal} {users} diff --git a/front/js/svelte/content/RecordRow.svelte b/front/js/svelte/content/RecordRow.svelte index 4caef73..7f2d7a6 100644 --- a/front/js/svelte/content/RecordRow.svelte +++ b/front/js/svelte/content/RecordRow.svelte @@ -9,7 +9,8 @@ export let users; export let graph; export let record; - export let sort; + export let sortParam; + export let sortField; export let visibleColumns; @@ -17,7 +18,7 @@ {#each visibleColumns as field, index} @@ -25,7 +26,7 @@ {#if schema.visible.includes("status")} @@ -33,7 +34,7 @@ {#if schema.visible.includes("_sys.createdBy")} @@ -41,18 +42,18 @@ {#if schema.visible.includes("_sys.updatedBy")} {/if} {#if schema.visible.includes("_sys.createdAt")} - + {friendlyDate(record._sys.createdAt)} {/if} {#if schema.visible.includes("_sys.updatedAt")} - + {friendlyDate(record._sys.updatedAt)} {/if} diff --git a/front/js/svelte/content/Table.svelte b/front/js/svelte/content/Table.svelte index 6e1f1f4..b2a88bd 100644 --- a/front/js/svelte/content/Table.svelte +++ b/front/js/svelte/content/Table.svelte @@ -12,7 +12,8 @@ export let records; export let graph; export let systemFields; - export let sort; + export let sortParam; + export let sortField; export let inModal; export let isWritable; export let selected = []; @@ -61,8 +62,7 @@ {#each visibleColumns as field} diff --git a/front/js/svelte/content/tools/SortFields.svelte b/front/js/svelte/content/tools/SortFields.svelte index b5d53f2..3585b44 100644 --- a/front/js/svelte/content/tools/SortFields.svelte +++ b/front/js/svelte/content/tools/SortFields.svelte @@ -4,24 +4,22 @@ const dispatch = createEventDispatcher(); export let schema; - export let sort; + export let sortParam; + export let sortField; export let inModal; export let modalUrl; export let systemFields = []; - $: activeField = [...schema.fields, ...systemFields].find( - (f) => f.name === sort || "-" + f.name === sort || "data." + f.name === sort || "-data." + f.name === sort - ); - $: sortableFields = schema.fields.filter( - (f) => !["reference", "file", "json", "id", "tab"].includes(f.ui) + (f) => !["reference", "file", "json", "id", "rich", "markdown", "block"].includes(f.info.name) ); $: systemFieldsFiltered = systemFields; $: if (schema.type === "collection") { systemFieldsFiltered = systemFields.filter((f) => f.files === false); } - function sortField(fieldSort) { + + function triggerSortField(fieldSort) { const url = new URL(modalUrl ?? window.location.href); url.searchParams.set("sort", fieldSort); if (inModal) { @@ -33,14 +31,14 @@ function sortAsc(e, field) { e.preventDefault(); - let prefix = systemFields.includes(el => el.name === field.name) ? "" : "data."; - return sortField(prefix + field.name); + let prefix = systemFields.map((el) => el.name).includes(field.name) ? "" : "data."; + return triggerSortField(prefix + field.name); } function sortDesc(e, field) { e.preventDefault(); - let prefix = systemFields.includes(el => el.name === field.name) ? "" : "data."; - return sortField("-" + prefix + field.name); + let prefix = systemFields.map((el) => el.name).includes(field.name) ? "" : "data."; + return triggerSortField("-" + prefix + field.name); } @@ -52,12 +50,12 @@ data-bs-auto-close="outside" aria-expanded="false" > - {#if sort.startsWith("-")} + {#if sortParam.startsWith("-")} {:else} {/if} - {activeField.label} + {sortField.label}