@localazy/strapi-plugin 0.1.13-rc.1 → 0.1.13-rc.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/src/modules/plugin-settings/components/GlobalSettings/index.js +10 -8
- package/admin/src/modules/plugin-settings/components/Tree/index.js +0 -1
- package/admin/src/modules/plugin-settings/functions/build-content-transfer-setup-schema.js +26 -0
- package/admin/src/modules/plugin-settings/functions/has-model-changed.js +20 -0
- package/package.json +1 -1
- package/server/bootstrap.js +0 -19
- package/server/controllers/localazy-transfer-controller.js +4 -3
- package/server/services/plugin-settings-service.js +0 -4
|
@@ -200,14 +200,16 @@ function GlobalSettings() {
|
|
|
200
200
|
<Option value="updated">{t("plugin_settings.editing_data_entry")}</Option>
|
|
201
201
|
</Select>
|
|
202
202
|
{/* Deprecate source keys on deletion */}
|
|
203
|
-
<
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
203
|
+
<div style={{ display: "none" }}>
|
|
204
|
+
<br /><br />
|
|
205
|
+
<ToggleInput
|
|
206
|
+
label={t("plugin_settings.deprecate_source_keys_on_delete")}
|
|
207
|
+
hint={t("plugin_settings.deprecate_source_keys_on_delete_info")}
|
|
208
|
+
offLabel={t("plugin_settings.off")}
|
|
209
|
+
onLabel={t("plugin_settings.on")}
|
|
210
|
+
checked={typeof formModel?.upload?.allowDeprecate === "boolean" ? formModel.upload.allowDeprecate : false}
|
|
211
|
+
onChange={e => patchFormModel("upload.allowDeprecate", e.target.checked)} />
|
|
212
|
+
</div>
|
|
211
213
|
<br /><br />
|
|
212
214
|
<Divider />
|
|
213
215
|
{/* Download Settings */}
|
|
@@ -31,7 +31,6 @@ function Tree(props) {
|
|
|
31
31
|
flattened = Object.fromEntries(Object.entries(flattened).filter(([key]) => !key.includes("__component__")));
|
|
32
32
|
const flattenedKeys = Object.keys(flattened).map((k) => `${path}.${key}.${k}`);
|
|
33
33
|
|
|
34
|
-
// debugger;
|
|
35
34
|
const hasTruthyValue = Object
|
|
36
35
|
.values(flattened)
|
|
37
36
|
.some(v => v);
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import set from "lodash-es/set";
|
|
2
2
|
import get from "lodash-es/get";
|
|
3
|
+
import uniq from "lodash-es/uniq";
|
|
3
4
|
import deepKeys from "@david-vaclavek/deep-keys";
|
|
4
5
|
import sortByModelName from "../../@common/utils/sort-by-model-name";
|
|
5
6
|
import arrayOfModelsToObject from "../utils/array-of-models-to-object";
|
|
@@ -17,6 +18,31 @@ export default (
|
|
|
17
18
|
storedSetupSchema.sort(sortByModelName)
|
|
18
19
|
);
|
|
19
20
|
|
|
21
|
+
const unsortedCurrentModelsSchemaKeys = deepKeys(localizableTree);
|
|
22
|
+
const unsortedStoredSetupSchemaKeys = deepKeys(storedSetupSchema);
|
|
23
|
+
const unsortedAllModelsSchemaKeys = deepKeys(allModelsTree);
|
|
24
|
+
|
|
25
|
+
// components order may have changed; this would prevent properties from mixing up
|
|
26
|
+
const regex = /\.\d+\.__component__/;
|
|
27
|
+
let currentModelsSchemaComponentKeys = unsortedCurrentModelsSchemaKeys.filter((key) => key.match(regex)).map((key) => key.replace(regex, ''));
|
|
28
|
+
let storedSetupSchemaComponentKeys = unsortedStoredSetupSchemaKeys.filter((key) => key.match(regex)).map((key) => key.replace(regex, ''));
|
|
29
|
+
let allModelsSchemaComponentKeys = unsortedAllModelsSchemaKeys.filter((key) => key.match(regex)).map((key) => key.replace(regex, ''));
|
|
30
|
+
currentModelsSchemaComponentKeys = uniq(currentModelsSchemaComponentKeys);
|
|
31
|
+
storedSetupSchemaComponentKeys = uniq(storedSetupSchemaComponentKeys);
|
|
32
|
+
allModelsSchemaComponentKeys = uniq(allModelsSchemaComponentKeys);
|
|
33
|
+
|
|
34
|
+
currentModelsSchemaComponentKeys.forEach((key) => {
|
|
35
|
+
get(localizableTree, key).sort((a, b) => a.__component__ > b.__component__ ? 1 : -1);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
storedSetupSchemaComponentKeys.forEach((key) => {
|
|
39
|
+
get(storedSetupSchema, key).sort((a, b) => a.__component__ > b.__component__ ? 1 : -1);
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
allModelsSchemaComponentKeys.forEach((key) => {
|
|
43
|
+
get(allModelsTree, key).sort((a, b) => a.__component__ > b.__component__ ? 1 : -1);
|
|
44
|
+
});
|
|
45
|
+
|
|
20
46
|
const currentModelsSchemaKeys = deepKeys(localizableTree);
|
|
21
47
|
const storedSetupSchemaKeys = deepKeys(storedSetupSchema);
|
|
22
48
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import deepKeys from "@david-vaclavek/deep-keys";
|
|
2
2
|
import get from "lodash-es/get";
|
|
3
|
+
import uniq from "lodash-es/uniq";
|
|
3
4
|
import PluginSettingsService from "../services/plugin-settings-service";
|
|
4
5
|
import StrapiModelService from "../services/strapi-model-service";
|
|
5
6
|
import getModelsTree from "../utils/get-models-tree";
|
|
@@ -43,9 +44,28 @@ export default async (
|
|
|
43
44
|
storedSetupSchema.sort(sortByModelName)
|
|
44
45
|
);
|
|
45
46
|
|
|
47
|
+
const currentModelsSchemaKeys = deepKeys(localizableTree);
|
|
48
|
+
const unsortedStoredSetupSchemaKeys = deepKeys(storedSetupSchema);
|
|
49
|
+
|
|
50
|
+
// components order may have changed; this would prevent properties from mixing up
|
|
51
|
+
const regex = /\.\d+\.__component__/;
|
|
52
|
+
let currentModelsSchemaComponentKeys = currentModelsSchemaKeys.filter((key) => key.match(regex)).map((key) => key.replace(regex, ''));
|
|
53
|
+
let storedSetupSchemaComponentKeys = unsortedStoredSetupSchemaKeys.filter((key) => key.match(regex)).map((key) => key.replace(regex, ''));
|
|
54
|
+
currentModelsSchemaComponentKeys = uniq(currentModelsSchemaComponentKeys);
|
|
55
|
+
storedSetupSchemaComponentKeys = uniq(storedSetupSchemaComponentKeys);
|
|
56
|
+
|
|
57
|
+
currentModelsSchemaComponentKeys.forEach((key) => {
|
|
58
|
+
get(localizableTree, key).sort((a, b) => a.__component__ > b.__component__ ? 1 : -1);
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
storedSetupSchemaComponentKeys.forEach((key) => {
|
|
62
|
+
get(storedSetupSchema, key).sort((a, b) => a.__component__ > b.__component__ ? 1 : -1);
|
|
63
|
+
});
|
|
64
|
+
|
|
46
65
|
const modelsTreeKeys = deepKeys(localizableTree);
|
|
47
66
|
const storedSetupSchemaKeys = deepKeys(storedSetupSchema);
|
|
48
67
|
|
|
68
|
+
|
|
49
69
|
const removedKeys = storedSetupSchemaKeys.filter(
|
|
50
70
|
(x) => !modelsTreeKeys.includes(x)
|
|
51
71
|
);
|
package/package.json
CHANGED
package/server/bootstrap.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
const deepPopulateHook = require('./lifecycles/deep-populate-hook');
|
|
4
4
|
const uploadEventEntryToLocalazyHook = require('./lifecycles/upload-event-entry-to-localazy-hook');
|
|
5
|
-
const deprecateEventEntryInLocalazyHook = require('./lifecycles/deprecate-event-entry-in-localazy-hook');
|
|
6
5
|
const RequestInitiatorHelper = require('./utils/request-initiator-helper');
|
|
7
6
|
|
|
8
7
|
module.exports = ({ strapi }) => {
|
|
@@ -35,24 +34,6 @@ module.exports = ({ strapi }) => {
|
|
|
35
34
|
break;
|
|
36
35
|
}
|
|
37
36
|
}
|
|
38
|
-
case 'beforeDeleteMany':
|
|
39
|
-
case 'beforeDelete': {
|
|
40
|
-
try {
|
|
41
|
-
if (requestInitiatorHelper.isInitiatedByLocalazyWebhook() || requestInitiatorHelper.isInitiatedByLocalazyPluginUI()) {
|
|
42
|
-
break;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
// have to await here
|
|
46
|
-
const result = await deprecateEventEntryInLocalazyHook(event);
|
|
47
|
-
if (typeof result !== 'undefined') {
|
|
48
|
-
strapi.log.info(`${action} hook result: ${JSON.stringify(result)}`);
|
|
49
|
-
}
|
|
50
|
-
} catch (e) {
|
|
51
|
-
strapi.log.error(e);
|
|
52
|
-
} finally {
|
|
53
|
-
break;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
37
|
default:
|
|
57
38
|
break;
|
|
58
39
|
}
|
|
@@ -3,10 +3,6 @@
|
|
|
3
3
|
const contentTransferSetupModel = require("../db/model/content-transfer-setup");
|
|
4
4
|
|
|
5
5
|
const pluginSettingsModel = require("../db/model/plugin-settings");
|
|
6
|
-
// {
|
|
7
|
-
// KEY,
|
|
8
|
-
// emptyPluginSettings,
|
|
9
|
-
// } = require("../db/model/plugin-settings");
|
|
10
6
|
const getStrapiStore = require("../db/model/utils/get-strapi-store");
|
|
11
7
|
|
|
12
8
|
module.exports = ({ strapi }) => ({
|