Skip to content

Commit

Permalink
hotfix: restored foreign key reference
Browse files Browse the repository at this point in the history
  • Loading branch information
vkalta authored Feb 21, 2022
1 parent e2b1250 commit 00ba5b4
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 19 deletions.
2 changes: 1 addition & 1 deletion .babelrc
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"@babel/preset-env",
{
"targets": {
"node": 14.15
"node": 12.13
},
"forceAllTransforms": true
}
Expand Down
10 changes: 5 additions & 5 deletions create-resolvers.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ exports.createResolvers = /*#__PURE__*/function () {
fileFields && fileFields.forEach(function (fileField) {
resolvers[fileField.parent] = _objectSpread(_objectSpread({}, resolvers[fileField.parent]), (0, _defineProperty2["default"])({}, fileField.field.uid, {
resolve: function resolve(source, args, context) {
if (fileField.field.multiple && source[fileField.field.uid]) {
if (fileField.field.multiple && source["".concat(fileField.field.uid, "___NODE")]) {
var nodesData = [];
source[fileField.field.uid].forEach(function (id) {
source["".concat(fileField.field.uid, "___NODE")].forEach(function (id) {
var existingNode = context.nodeModel.getNodeById({
id: id
});
Expand All @@ -50,7 +50,7 @@ exports.createResolvers = /*#__PURE__*/function () {
});
return nodesData;
} else {
var id = source[fileField.field.uid];
var id = source["".concat(fileField.field.uid, "___NODE")];
return context.nodeModel.getNodeById({
id: id
});
Expand All @@ -61,9 +61,9 @@ exports.createResolvers = /*#__PURE__*/function () {
references && references.forEach(function (reference) {
resolvers[reference.parent] = _objectSpread(_objectSpread({}, resolvers[reference.parent]), {}, (0, _defineProperty2["default"])({}, reference.uid, {
resolve: function resolve(source, args, context) {
if (source[reference.uid]) {
if (source["".concat(reference.uid, "___NODE")]) {
var nodesData = [];
source[reference.uid].forEach(function (id) {
source["".concat(reference.uid, "___NODE")].forEach(function (id) {
var existingNode = context.nodeModel.getNodeById({
id: id
});
Expand Down
4 changes: 2 additions & 2 deletions normalize.js
Original file line number Diff line number Diff line change
Expand Up @@ -179,12 +179,12 @@ var builtEntry = function builtEntry(schema, entry, locale, entriesNodeIds, asse

switch (field.data_type) {
case 'reference':
entryObj[field.uid] = value && normalizeReferenceField(value, locale, entriesNodeIds, createNodeId, typePrefix);
entryObj["".concat(field.uid, "___NODE")] = value && normalizeReferenceField(value, locale, entriesNodeIds, createNodeId, typePrefix);
break;

case 'file':
if (!value) value = null;
entryObj[field.uid] = value && normalizeFileField(value, locale, assetsNodeIds, createNodeId, typePrefix);
entryObj["".concat(field.uid, "___NODE")] = value && normalizeFileField(value, locale, assetsNodeIds, createNodeId, typePrefix);
break;

case 'group':
Expand Down
8 changes: 4 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"name": "gatsby-source-contentstack",
"version": "4.0.1",
"version": "3.1.3",
"description": "Gatsby source plugin for building websites using Contentstack as a data source",
"scripts": {
"prepublish": "npm run build",
"build": "babel src --out-dir .",
"watch": "babel -w src --out-dir ."
},
"engines": {
"node": ">=14.15.0"
"node": ">=12.13.0"
},
"main": "gatsby-node.js",
"repository": {
Expand All @@ -27,7 +27,7 @@
"license": "MIT",
"dependencies": {
"gatsby-core-utils": "^3.3.0",
"gatsby-source-filesystem": "^4.4.0",
"gatsby-source-filesystem": "^3.13.0",
"node-fetch": "2.1.2",
"progress": "^2.0.3",
"query-string": "6.0.0"
Expand Down Expand Up @@ -57,7 +57,7 @@
"semantic-release": "^17.4.4"
},
"peerDependencies": {
"gatsby": "^4.0.0",
"gatsby": "^3.0.0",
"gatsby-plugin-image": "^2.0.0-next"
},
"husky": {
Expand Down
10 changes: 5 additions & 5 deletions src/create-resolvers.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ exports.createResolvers = async ({ createResolvers, cache }, configOptions) => {
... {
[fileField.field.uid]: {
resolve(source, args, context) {
if (fileField.field.multiple && source[fileField.field.uid]) {
if (fileField.field.multiple && source[`${fileField.field.uid}___NODE`]) {
const nodesData = [];

source[fileField.field.uid].forEach(id => {
source[`${fileField.field.uid}___NODE`].forEach(id => {
const existingNode = context.nodeModel.getNodeById({ id });

if (existingNode) {
Expand All @@ -29,7 +29,7 @@ exports.createResolvers = async ({ createResolvers, cache }, configOptions) => {

return nodesData;
} else {
const id = source[fileField.field.uid];
const id = source[`${fileField.field.uid}___NODE`];
return context.nodeModel.getNodeById({ id });
}
},
Expand All @@ -42,10 +42,10 @@ exports.createResolvers = async ({ createResolvers, cache }, configOptions) => {
...resolvers[reference.parent],
[reference.uid]: {
resolve(source, args, context) {
if (source[reference.uid]) {
if (source[`${reference.uid}___NODE`]) {
const nodesData = [];

source[reference.uid].forEach(id => {
source[`${reference.uid}___NODE`].forEach(id => {
const existingNode = context.nodeModel.getNodeById({ id });

if (existingNode) {
Expand Down
4 changes: 2 additions & 2 deletions src/normalize.js
Original file line number Diff line number Diff line change
Expand Up @@ -156,11 +156,11 @@ const builtEntry = (schema, entry, locale, entriesNodeIds, assetsNodeIds, create
let value = getSchemaValue(entry, field);
switch (field.data_type) {
case 'reference':
entryObj[field.uid] = value && normalizeReferenceField(value, locale, entriesNodeIds, createNodeId, typePrefix);
entryObj[`${field.uid}___NODE`] = value && normalizeReferenceField(value, locale, entriesNodeIds, createNodeId, typePrefix);
break;
case 'file':
if (!value) value = null;
entryObj[field.uid] = value && normalizeFileField(value, locale, assetsNodeIds, createNodeId, typePrefix);
entryObj[`${field.uid}___NODE`] = value && normalizeFileField(value, locale, assetsNodeIds, createNodeId, typePrefix);
break;
case 'group':
case 'global_field':
Expand Down

0 comments on commit 00ba5b4

Please sign in to comment.