merge v0.23.0-rc changes

This commit is contained in:
Gani Georgiev
2024-09-29 19:23:19 +03:00
parent ad92992324
commit 844f18cac3
753 changed files with 85141 additions and 63396 deletions
@@ -1,14 +1,14 @@
<script>
import { tick } from "svelte";
import Field from "@/components/base/Field.svelte";
import PageWrapper from "@/components/base/PageWrapper.svelte";
import ImportPopup from "@/components/settings/ImportPopup.svelte";
import SettingsSidebar from "@/components/settings/SettingsSidebar.svelte";
import { pageTitle } from "@/stores/app";
import { setErrors } from "@/stores/errors";
import { addErrorToast } from "@/stores/toasts";
import ApiClient from "@/utils/ApiClient";
import CommonHelper from "@/utils/CommonHelper";
import { pageTitle } from "@/stores/app";
import { addErrorToast } from "@/stores/toasts";
import { setErrors } from "@/stores/errors";
import PageWrapper from "@/components/base/PageWrapper.svelte";
import Field from "@/components/base/Field.svelte";
import SettingsSidebar from "@/components/settings/SettingsSidebar.svelte";
import ImportPopup from "@/components/settings/ImportPopup.svelte";
import { tick } from "svelte";
$pageTitle = "Import collections";
@@ -69,15 +69,15 @@
}
// check for matching schema fields
const oldSchema = Array.isArray(old.schema) ? old.schema : [];
const newSchema = Array.isArray(collection.schema) ? collection.schema : [];
for (const field of newSchema) {
const oldFieldById = CommonHelper.findByKey(oldSchema, "id", field.id);
const oldFields = Array.isArray(old.fields) ? old.fields : [];
const newFields = Array.isArray(collection.fields) ? collection.fields : [];
for (const field of newFields) {
const oldFieldById = CommonHelper.findByKey(oldFields, "id", field.id);
if (oldFieldById) {
continue; // no need to do any replacements
}
const oldFieldByName = CommonHelper.findByKey(oldSchema, "name", field.name);
const oldFieldByName = CommonHelper.findByKey(oldFields, "name", field.name);
if (oldFieldByName && field.id != oldFieldByName.id) {
return true;
}
@@ -93,10 +93,13 @@
try {
oldCollections = await ApiClient.collections.getFullList(200);
// delete timestamps
for (let collection of oldCollections) {
// delete timestamps
delete collection.created;
delete collection.updated;
// unset oauth2 providers
delete collection.oauth2?.providers;
}
} catch (err) {
ApiClient.error(err);
@@ -150,7 +153,7 @@
delete collection.updated;
// merge fields with duplicated ids
collection.schema = CommonHelper.filterDuplicatesByKey(collection.schema);
collection.fields = CommonHelper.filterDuplicatesByKey(collection.fields);
}
}
@@ -169,10 +172,10 @@
collection.id = replacedId;
// replace field ids
const oldSchema = Array.isArray(old.schema) ? old.schema : [];
const newSchema = Array.isArray(collection.schema) ? collection.schema : [];
for (const field of newSchema) {
const oldField = CommonHelper.findByKey(oldSchema, "name", field.name);
const oldFields = Array.isArray(old.fields) ? old.fields : [];
const newFields = Array.isArray(collection.fields) ? collection.fields : [];
for (const field of newFields) {
const oldField = CommonHelper.findByKey(oldFields, "name", field.name);
if (oldField && oldField.id) {
field.id = oldField.id;
}
@@ -180,12 +183,12 @@
// update references
for (let ref of newCollections) {
if (!Array.isArray(ref.schema)) {
if (!Array.isArray(ref.fields)) {
continue;
}
for (let field of ref.schema) {
if (field.options?.collectionId && field.options?.collectionId === originalId) {
field.options.collectionId = replacedId;
for (let field of ref.fields) {
if (field.collectionId && field.collectionId === originalId) {
field.collectionId = replacedId;
}
}
}