@restorecommerce/facade 2.1.2 → 2.1.4

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/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [2.1.4](https://github.com/restorecommerce/libs/compare/@restorecommerce/facade@2.1.3...@restorecommerce/facade@2.1.4) (2024-08-30)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **facade:** improve proto processor tests ([eeb340b](https://github.com/restorecommerce/libs/commit/eeb340b9d02f62688606f1ab55980e5e2331daa6))
12
+
13
+
14
+
15
+
16
+
17
+ ## [2.1.3](https://github.com/restorecommerce/libs/compare/@restorecommerce/facade@2.1.2...@restorecommerce/facade@2.1.3) (2024-08-30)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **facade:** error in nested object output ([2f190bf](https://github.com/restorecommerce/libs/commit/2f190bf20b73d1b6b57bb61e0ab0f646dc23da00))
23
+
24
+
25
+
26
+
27
+
6
28
  ## [2.1.2](https://github.com/restorecommerce/libs/compare/@restorecommerce/facade@2.1.1...@restorecommerce/facade@2.1.2) (2024-08-29)
7
29
 
8
30
 
@@ -1 +1 @@
1
- {"version":3,"file":"graphql.d.ts","sourceRoot":"","sources":["../../../src/gql/protos/graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAItB,KAAK,iBAAiB,EACvB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,KAAK,gBAAgB,EAEtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAEpE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,eAAO,MAAM,MAAM,UAAiC,CAAC;AAErD,eAAO,MAAM,kBAAkB,SACvB,GAAG,SACF,sBAAsB,GAAG,eAAe,GAAG,iBAAiB,GAAG,gBAAgB,KACrF,OAAO,CAAC,GAAG,CAuEb,CAAC;AAEF,eAAO,MAAM,oBAAoB,SAAU,GAAG,SAAS,iBAAiB,KAAG,GA2C1E,CAAC;AAEF,eAAO,MAAM,2BAA2B,gBACzB,sBAAsB,UAC3B,aAAa,QACf,aAAa,UACX,MAAM,KACb;IAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAoEhD,CAAC"}
1
+ {"version":3,"file":"graphql.d.ts","sourceRoot":"","sources":["../../../src/gql/protos/graphql.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EAItB,KAAK,iBAAiB,EACvB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,KAAK,gBAAgB,EAEtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAEpE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,eAAO,MAAM,MAAM,UAAiC,CAAC;AAErD,eAAO,MAAM,kBAAkB,SACvB,GAAG,SACF,sBAAsB,GAAG,eAAe,GAAG,iBAAiB,GAAG,gBAAgB,KACrF,OAAO,CAAC,GAAG,CA0Eb,CAAC;AAEF,eAAO,MAAM,oBAAoB,SAAU,GAAG,SAAS,iBAAiB,KAAG,GA2C1E,CAAC;AAEF,eAAO,MAAM,2BAA2B,gBACzB,sBAAsB,UAC3B,aAAa,QACf,aAAa,UACX,MAAM,KACb;IAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAoEhD,CAAC"}
@@ -3,7 +3,7 @@ import { GraphQLEnumType, GraphQLInputObjectType, GraphQLScalarType, } from 'gra
3
3
  export const Mutate = ['Create', 'Update', 'Upsert'];
4
4
  export const preProcessGQLInput = async (data, model) => {
5
5
  if (data === null || data === undefined) {
6
- return undefined;
6
+ return data;
7
7
  }
8
8
  if (model instanceof GraphQLEnumType) {
9
9
  return data;
@@ -25,8 +25,11 @@ export const preProcessGQLInput = async (data, model) => {
25
25
  }
26
26
  else {
27
27
  const fields = model.getFields();
28
- await Promise.all(Object.keys(fields).filter(key => key in data).map(async (key) => data[key] = await preProcessGQLInput(data[key], fields[key].type)));
29
- return data;
28
+ const converted = Object.assign({}, ...(await Promise.all(Object.keys(fields).filter(key => key in data).map(async (key) => ({ [key]: await preProcessGQLInput(data[key], fields[key].type) })))));
29
+ return {
30
+ ...data,
31
+ ...converted,
32
+ };
30
33
  }
31
34
  }
32
35
  if (model instanceof GraphQLScalarType) {
@@ -56,7 +59,7 @@ export const preProcessGQLInput = async (data, model) => {
56
59
  };
57
60
  export const postProcessGQLOutput = (data, model) => {
58
61
  if (data === null || data === undefined) {
59
- return undefined;
62
+ return data;
60
63
  }
61
64
  if (model instanceof GraphQLEnumType) {
62
65
  return data;
@@ -72,7 +75,7 @@ export const postProcessGQLOutput = (data, model) => {
72
75
  }
73
76
  else {
74
77
  const fields = model.getFields();
75
- const converted = Object.keys(fields).filter(key => key in data).map(key => postProcessGQLOutput(data[key], fields[key].type));
78
+ const converted = Object.assign({}, ...Object.keys(fields).filter(key => key in data).map(key => ({ [key]: postProcessGQLOutput(data[key], fields[key].type) })));
76
79
  return {
77
80
  ...data,
78
81
  ...converted,
@@ -1 +1 @@
1
- {"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../../src/gql/protos/graphql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../../src/gql/protos/graphql.ts"],"names":[],"mappings":"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"}