@webiny/api-headless-cms-ddb
Version:
DynamoDB storage operations plugin for Headless CMS API.
90 lines (88 loc) • 2.22 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createSystemFields = void 0;
var _constants = require("@webiny/api-headless-cms/constants");
var _startCase = _interopRequireDefault(require("lodash/startCase"));
const createSystemFields = () => {
const onMetaFields = _constants.ENTRY_META_FIELDS.filter(_constants.isDateTimeEntryMetaField).map(fieldName => {
return {
id: fieldName,
type: "datetime",
storageId: fieldName,
fieldId: fieldName,
label: (0, _startCase.default)(fieldName)
};
});
const byMetaFields = _constants.ENTRY_META_FIELDS.filter(_constants.isIdentityEntryMetaField).map(fieldName => {
return {
id: fieldName,
type: "plainObject",
storageId: fieldName,
fieldId: fieldName,
label: (0, _startCase.default)(fieldName),
settings: {
path: `${fieldName}.id`
}
};
});
return [{
id: "id",
type: "text",
storageId: "id",
fieldId: "id",
label: "ID"
}, {
id: "entryId",
type: "text",
storageId: "entryId",
fieldId: "entryId",
label: "Entry ID"
}, ...onMetaFields, ...byMetaFields, {
id: "meta",
type: "plainObject",
storageId: "meta",
fieldId: "meta",
label: "Meta"
}, {
id: "wbyAco_location",
type: "object",
storageId: "location",
label: "Location",
fieldId: "wbyAco_location",
settings: {
fields: [{
id: "folderId",
type: "text",
fieldId: "folderId",
label: "Folder ID",
storageId: "folderId",
settings: {
path: "location.folderId"
}
}]
}
}, {
id: "version",
type: "number",
storageId: "version",
fieldId: "version",
label: "Version"
}, {
id: "status",
type: "text",
storageId: "status",
fieldId: "status",
label: "Status"
}, {
id: "wbyDeleted",
type: "boolean",
storageId: "wbyDeleted",
fieldId: "wbyDeleted",
label: "Deleted"
}];
};
exports.createSystemFields = createSystemFields;
//# sourceMappingURL=systemFields.js.map