35 lines
900 B
JavaScript
Raw Normal View History

2020-12-18 11:24:52 +01:00
'use strict';
const { intersection, prop } = require('lodash/fp');
2021-04-29 13:51:12 +02:00
const { getRelationalFields } = require('@strapi/utils').relations;
2020-12-18 11:24:52 +01:00
2021-08-20 15:23:02 +02:00
module.exports = ({ strapi }) => {
const sendDidConfigureListView = async (contentType, configuration) => {
const displayedFields = prop('length', configuration.layouts.list);
const relationalFields = getRelationalFields(contentType);
const displayedRelationalFields = intersection(relationalFields, configuration.layouts.list)
.length;
2020-12-18 11:24:52 +01:00
2021-08-20 15:23:02 +02:00
const data = {
containsRelationalFields: !!displayedRelationalFields,
};
2020-12-18 11:24:52 +01:00
2021-08-20 15:23:02 +02:00
if (data.containsRelationalFields) {
Object.assign(data, {
displayedFields,
displayedRelationalFields,
});
}
2020-12-18 11:24:52 +01:00
2021-08-20 15:23:02 +02:00
try {
await strapi.telemetry.send('didConfigureListView', data);
} catch (e) {
// silence
}
};
2020-12-18 11:24:52 +01:00
2021-08-20 15:23:02 +02:00
return {
sendDidConfigureListView,
};
};