+
-
- {#if isWritable}
-
-
+ {#if isWritable}
+
+ 0 && selected.length < records.length}
+ indeterminate={selected.length > 0 &&
+ selected.length < records.length}
checked={selected.length === records.length}
- >
-
-
- {/if}
+ >
+
+ {/if}
- {#each visibleColumns as field}
- {field.label}
- {/each}
- {#each systemFields.filter(c => schema.visible?.includes(c.name)) as sysField}
- {sysField.label}
- {/each}
-
-
+ title={field.help}>{field.label}
+ {/each}
+ {#each systemFields.filter( (c) => schema.visible?.includes(c.name), ) as sysField}
+ {sysField.label}
+ {/each}
+
+
- {#each records as record (record.id)}
-
-
-
- {#if isWritable}
-
+
+
+ {#if isWritable}
+
select(record)}
- checked={selected.find((r) => r.id === record.id)}
+ checked={selected.find(
+ (r) => r.id === record.id,
+ )}
value={record}
- >
-
+ >
+ {/if}
- {/if}
- {#if record._file?.path}
-
-
0 ? "medium" : "small"}/>
-
-
-
-
- {:else}
{#if record.status === "draft"}
- {record.status}
+ {record.status}
{/if}
{previewTitle(channel.schemas, record, graph)}
- {/if}
-
-
-
-
-
+
+
-
-
-
-
- {/each}
+
+
+
+
+ {/each}
-
diff --git a/front/js/svelte/content/tools/Tools.svelte b/front/js/svelte/content/tools/Tools.svelte
index fdd9fbf..f33f916 100644
--- a/front/js/svelte/content/tools/Tools.svelte
+++ b/front/js/svelte/content/tools/Tools.svelte
@@ -1,6 +1,5 @@
-
{schema.label}
-
-
+
{schema.label}
-
+
{frieldlyUpdatedAt}
diff --git a/front/js/svelte/libs/CodemirrorMarkdown.svelte b/front/js/svelte/libs/CodemirrorMarkdown.svelte
index 703fbee..cb7d10c 100644
--- a/front/js/svelte/libs/CodemirrorMarkdown.svelte
+++ b/front/js/svelte/libs/CodemirrorMarkdown.svelte
@@ -1,14 +1,13 @@
-
+
diff --git a/front/js/svelte/libs/Trix.svelte b/front/js/svelte/libs/Trix.svelte
index 566b550..df908ee 100644
--- a/front/js/svelte/libs/Trix.svelte
+++ b/front/js/svelte/libs/Trix.svelte
@@ -1,68 +1,66 @@
-
+
diff --git a/front/js/svelte/records/Edit.svelte b/front/js/svelte/records/Edit.svelte
index 64b63d7..71edd4f 100644
--- a/front/js/svelte/records/Edit.svelte
+++ b/front/js/svelte/records/Edit.svelte
@@ -1,14 +1,13 @@
-
+
-
+
-
-
+
-
+
{#if !["_graph", "_info"].includes(activeContentTab)}
-
{#each activeFields as field (field.name)}
{#if activeContentTab === field.group}
{/if}
{/each}
{:else if activeContentTab === "_graph"}
-
+
{:else if activeContentTab === "_info"}
-
+
{/if}
diff --git a/front/js/svelte/records/FormField.svelte b/front/js/svelte/records/FormField.svelte
index cb0c29b..e3a263b 100644
--- a/front/js/svelte/records/FormField.svelte
+++ b/front/js/svelte/records/FormField.svelte
@@ -45,25 +45,20 @@
-
+
{#if field.info.name === "reference" && field.layout === "tags"}
-
+
{:else if field.info.name === "reference"}
-
+ {:else if field.info.name === "file"}
+
+
- {:else if field.info.name === "file"}
-
{:else if field.info.name === "text"}
{:else if field.info.name === "slug"}
{:else if field.info.name === "textarea"}
{:else if field.info.name === "rich"}
{:else if field.info.name === "markdown"}
{:else}
- import {friendlyDate} from "../../helpers";
+ import { friendlyDate } from "../../helpers";
import Avatar from "../account/Avatar.svelte";
- import {usernameById} from "../account/users";
- import {isEqual} from "lodash";
+ import { usernameById } from "../account/users";
+ import { isEqual } from "lodash";
import Icon from "../common/Icon.svelte";
import RevisionCell from "./revisions/RevisionCell.svelte";
- import {getContext} from "svelte";
+ import { getContext } from "svelte";
import RevisionEdgeRow from "./revisions/RevisionEdgeRow.svelte";
const channel = getContext("channel");
@@ -30,27 +30,27 @@
});
function getEdgesByField(fieldsWithDiff, revision) {
-
- edgeFieldsDiff = graph.edges.filter((e) => e.depth === 1).reduce((c, e) => {
- if (!c[e.field]) {
- c[e.field] = {
- record: [],
- revision: [],
+ edgeFieldsDiff = graph.edges
+ .filter((e) => e.depth === 1)
+ .reduce((c, e) => {
+ if (!c[e.field]) {
+ c[e.field] = {
+ record: [],
+ revision: [],
+ };
}
- }
- c[e.field]["record"].push(e)
- return c;
- }, {});
-
+ c[e.field]["record"].push(e);
+ return c;
+ }, {});
edgeFieldsDiff = revision._edges.reduce((c, e) => {
if (!c[e.field]) {
c[e.field] = {
record: [],
revision: [],
- }
+ };
}
- c[e.field]["revision"].push(e)
+ c[e.field]["revision"].push(e);
return c;
}, edgeFieldsDiff);
}
@@ -62,7 +62,7 @@
fieldsWithDiff = schema.fields.filter((f) => {
return !isEqual(selectedRevision.data[f.name], record.data[f.name]);
});
- getEdgesByField(fieldsWithDiff, revision)
+ getEdgesByField(fieldsWithDiff, revision);
revisionSection.scrollIntoView();
}
@@ -71,7 +71,7 @@
rollbackError = "";
axios
.post(
- `${channel.lucentUrl}/records/${record.id}/rollback/${selectedRevision._sys.version}`
+ `${channel.lucentUrl}/records/${record.id}/rollback/${selectedRevision.version}`,
)
.then((response) => {
window.location.reload();
@@ -84,7 +84,7 @@
}
-
+
@@ -93,29 +93,27 @@
current version
- {record._sys.version}
+ {record.version}
created
- {friendlyDate(record._sys.createdAt)}
+ {friendlyDate(record.createdAt)}
-
updated
+
updated
- {friendlyDate(record._sys.updatedAt)}
+ {friendlyDate(record.updatedAt)}
- Rules for this schema
-
+ Rules for this schema
Each record maintains the last {schema.revisions}
versions
@@ -125,33 +123,31 @@
{#if schema.revisions > 0}
-
+
{#each revisions as revision}
- {#if revision._sys.version !== record._sys.version}
+ {#if revision.version !== record.version}
-
-
version {revision._sys.version}
+
version {revision.version}
- {friendlyDate(revision._sys.updatedAt)}
+ {friendlyDate(revision.updatedAt)}
compare(e, revision)}
- >Compare
-
+ disabled={revision.version ===
+ selectedRevision?.version}
+ class="button"
+ on:click={(e) => compare(e, revision)}
+ >Compare
+
{/if}
@@ -169,15 +165,13 @@
If you choose to rollback to this revision
-
- Rollback to version {selectedRevision._sys.version}
+
+ Rollback to version {selectedRevision.version}
{#if rollbackError}
- {rollbackError}
+ {rollbackError}
{/if}
{#each fieldsWithDiff as field}
@@ -188,31 +182,28 @@
-
+
@@ -226,22 +217,16 @@
{/if}
-
- Record References
-
+
Record References
{#each Object.entries(edgeFieldsDiff) as [field, edges]}
-
+
{field}:
-
Record
{#each edges.record as edge}
-
+
{:else}
No references
{/each}
@@ -249,7 +234,7 @@
Revision
{#each edges.revision as edge}
-
+
{:else}
No references
{/each}
@@ -258,7 +243,5 @@
{/each}
-
{/if}
-
diff --git a/front/js/svelte/records/InlineEdit.svelte b/front/js/svelte/records/InlineEdit.svelte
index f84feb2..077219a 100644
--- a/front/js/svelte/records/InlineEdit.svelte
+++ b/front/js/svelte/records/InlineEdit.svelte
@@ -1,7 +1,12 @@
-
+
-
-
+
+
-
-
+
+
{#each activeFields as field (field.name)}
{#if activeContentTab === field.group}
{/if}
{/each}
-
diff --git a/front/js/svelte/records/Preview.js b/front/js/svelte/records/Preview.js
index bcc32b0..34237e6 100644
--- a/front/js/svelte/records/Preview.js
+++ b/front/js/svelte/records/Preview.js
@@ -1,33 +1,33 @@
import Mustache from "mustache";
-import {stripHtml} from "../../helpers";
+import { stripHtml } from "../../helpers";
export function previewTitle(schemas, record, graph) {
- let schema = schemas.find((aSchema) => aSchema.name === record?.schema);
- if (!schema?.cardTitle) {
- return noTemplate(schema, record);
- }
+ let schema = schemas.find((aSchema) => aSchema.name === record?.schema);
+ if (!schema?.cardTitle) {
+ return noTemplate(schema, record);
+ }
- let recordData = record.data;
- let render = Mustache.render(schema.cardTitle, recordData);
- if (!render || render === "") {
- return noTemplate(schema, record);
- }
+ let recordData = record.data;
+ let render = Mustache.render(schema.cardTitle, recordData);
+ if (!render || render === "") {
+ return noTemplate(schema, record);
+ }
- return stripHtml(render.slice(0, 300));
+ return stripHtml(render.slice(0, 300));
}
function noTemplate(schema, record) {
- if (schema?.type === "files") {
- return record._file.path;
- }
+ if (schema?.type === "files") {
+ return file.path;
+ }
- let title = stripHtml(
- record?.data[schema.fields.filter((f) => f.info.name === "text")[0]?.name]
- ).slice(0, 300);
+ let title = stripHtml(
+ record?.data[schema.fields.filter((f) => f.info.name === "text")[0]?.name],
+ ).slice(0, 300);
- if(title.trim() === ""){
- return "~Untitled~";
- }
+ if (title.trim() === "") {
+ return "~Untitled~";
+ }
- return title;
+ return title;
}
diff --git a/front/js/svelte/records/elements/File.svelte b/front/js/svelte/records/elements/File.svelte
index eb50b00..02a3c7f 100644
--- a/front/js/svelte/records/elements/File.svelte
+++ b/front/js/svelte/records/elements/File.svelte
@@ -1,10 +1,7 @@
-
- {cardTitle}
-
-
- from {schema.label}
- {#if record.status === "draft"}
-
- {/if}
-
-
+ {file.filename}
-
-
+
{#if hasInsert}
-
+
- insert(e,null)}>original
+ insert(e, null)}>original
{#each imagePresets as preset}
- insert(e,preset)}>{preset}
+ insert(e, preset)}>{preset}
{/each}
-
{/if}
{#if hasDelete}
-
-
+
+
{/if}
-
diff --git a/front/js/svelte/records/revisions/RevisionCell.svelte b/front/js/svelte/records/revisions/RevisionCell.svelte
index 9f7c86b..a256730 100644
--- a/front/js/svelte/records/revisions/RevisionCell.svelte
+++ b/front/js/svelte/records/revisions/RevisionCell.svelte
@@ -12,22 +12,9 @@
{#each edges[field.name] as edgeRecord}
- {#if edgeRecord._file?.path}
-
- {:else}
-
- {/if}
+
{/each}
@@ -43,7 +30,6 @@