@pothos/plugin-drizzle 0.6.0 → 0.7.0

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
@@ -1,5 +1,11 @@
1
1
  # @pothos/plugin-drizzle
2
2
 
3
+ ## 0.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 9cfb6a7: cache input mappings accross resolvers to reduce memory ussage in large schemas
8
+
3
9
  ## 0.6.0
4
10
 
5
11
  ### Minor Changes
package/dts/index.d.ts CHANGED
@@ -8,6 +8,7 @@ export * from './types';
8
8
  declare const pluginName = "drizzle";
9
9
  export default pluginName;
10
10
  export declare class PothosDrizzlePlugin<Types extends SchemaTypes> extends BasePlugin<Types> {
11
+ private mappingCache;
11
12
  onOutputFieldConfig(fieldConfig: PothosOutputFieldConfig<Types>): PothosOutputFieldConfig<Types> | null;
12
13
  wrapResolve(resolver: GraphQLFieldResolver<unknown, Types['Context'], object, unknown>, fieldConfig: PothosOutputFieldConfig<Types>): GraphQLFieldResolver<unknown, Types['Context'], object>;
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAsB,EACpB,UAAU,EAGV,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AASpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,cAAc,SAAS,CAAC;AAExB,QAAA,MAAM,UAAU,YAAY,CAAC;AAE7B,eAAe,UAAU,CAAC;AAE1B,qBAAa,mBAAmB,CAAC,KAAK,SAAS,WAAW,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IAC1E,mBAAmB,CAC1B,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,uBAAuB,CAAC,KAAK,CAAC,GAAG,IAAI;IA0E/B,WAAW,CAClB,QAAQ,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAC1E,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CA2D3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAsB,EACpB,UAAU,EAIV,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AASpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,cAAc,SAAS,CAAC;AAExB,QAAA,MAAM,UAAU,YAAY,CAAC;AAE7B,eAAe,UAAU,CAAC;AAE1B,qBAAa,mBAAmB,CAAC,KAAK,SAAS,WAAW,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IACnF,OAAO,CAAC,YAAY,CAGhB;IACK,mBAAmB,CAC1B,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,uBAAuB,CAAC,KAAK,CAAC,GAAG,IAAI;IA2E/B,WAAW,CAClB,QAAQ,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAC1E,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CA2D3D"}
package/esm/index.d.ts CHANGED
@@ -8,6 +8,7 @@ export * from './types.js';
8
8
  declare const pluginName = "drizzle";
9
9
  export default pluginName;
10
10
  export declare class PothosDrizzlePlugin<Types extends SchemaTypes> extends BasePlugin<Types> {
11
+ private mappingCache;
11
12
  onOutputFieldConfig(fieldConfig: PothosOutputFieldConfig<Types>): PothosOutputFieldConfig<Types> | null;
12
13
  wrapResolve(resolver: GraphQLFieldResolver<unknown, Types["Context"], object, unknown>, fieldConfig: PothosOutputFieldConfig<Types>): GraphQLFieldResolver<unknown, Types["Context"], object>;
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAsB,EACpB,UAAU,EAGV,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AASpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,cAAc,SAAS,CAAC;AAExB,QAAA,MAAM,UAAU,YAAY,CAAC;AAE7B,eAAe,UAAU,CAAC;AAE1B,qBAAa,mBAAmB,CAAC,KAAK,SAAS,WAAW,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IAC1E,mBAAmB,CAC1B,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,uBAAuB,CAAC,KAAK,CAAC,GAAG,IAAI;IA0E/B,WAAW,CAClB,QAAQ,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAC1E,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CA2D3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AACxB,OAAO,iBAAiB,CAAC;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAsB,EACpB,UAAU,EAIV,KAAK,uBAAuB,EAC5B,KAAK,WAAW,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AASpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,cAAc,SAAS,CAAC;AAExB,QAAA,MAAM,UAAU,YAAY,CAAC;AAE7B,eAAe,UAAU,CAAC;AAE1B,qBAAa,mBAAmB,CAAC,KAAK,SAAS,WAAW,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IACnF,OAAO,CAAC,YAAY,CAGhB;IACK,mBAAmB,CAC1B,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,uBAAuB,CAAC,KAAK,CAAC,GAAG,IAAI;IA2E/B,WAAW,CAClB,QAAQ,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAC1E,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,GAC1C,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CA2D3D"}
package/esm/index.js CHANGED
@@ -1,3 +1,17 @@
1
+ function _define_property(obj, key, value) {
2
+ if (key in obj) {
3
+ Object.defineProperty(obj, key, {
4
+ value: value,
5
+ enumerable: true,
6
+ configurable: true,
7
+ writable: true
8
+ });
9
+ }
10
+ else {
11
+ obj[key] = value;
12
+ }
13
+ return obj;
14
+ }
1
15
  import './global-types.js';
2
16
  import './field-builder.js';
3
17
  import './schema-builder.js';
@@ -18,7 +32,7 @@ export class PothosDrizzlePlugin extends BasePlugin {
18
32
  return (_config_extensions_drizzleGraphQL = (_config_extensions = config.extensions) === null || _config_extensions === void 0 ? void 0 : _config_extensions.drizzleGraphQL) !== null && _config_extensions_drizzleGraphQL !== void 0 ? _config_extensions_drizzleGraphQL : null;
19
33
  }
20
34
  return null;
21
- });
35
+ }, this.mappingCache);
22
36
  const argMapper = argMappings ? createInputValueMapper(argMappings, (input, mappings) => {
23
37
  if (!mappings.value) {
24
38
  return input;
@@ -103,6 +117,9 @@ export class PothosDrizzlePlugin extends BasePlugin {
103
117
  return modelLoader(context).loadSelection(info, parent).then((result) => resolver(result, args, context, info));
104
118
  };
105
119
  }
120
+ constructor(...args) {
121
+ super(...args), _define_property(this, "mappingCache", new Map());
122
+ }
106
123
  }
107
124
  SchemaBuilder.registerPlugin(pluginName, PothosDrizzlePlugin, {});
108
125
  //# sourceMappingURL=index.js.map
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":["SchemaBuilder","BasePlugin","createInputValueMapper","mapInputFields","extractFilters","extractOrderBy","remapFromGraphQLSingleInput","getLoaderMapping","setLoaderMappings","drizzleClientCache","pluginName","PothosDrizzlePlugin","onOutputFieldConfig","fieldConfig","argMappings","args","buildCache","inputField","type","kind","config","getTypeConfig","ref","extensions","drizzleGraphQL","argMapper","input","mappings","value","table","tableConfig","inputType","Error","argMappers","undefined","pothosOptions","select","pothosDrizzleSelect","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","iface","interfaces","interfaceConfig","pothosDrizzleModel","add","name","modelLoader","pothosDrizzleLoader","parent","context","info","mapping","path","primaryKeys","pothosDrizzleTable","primaryKey","length","loadSelection","then","result","registerPlugin"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/index.ts"],"names":["SchemaBuilder","BasePlugin","createInputValueMapper","mapInputFields","extractFilters","extractOrderBy","remapFromGraphQLSingleInput","getLoaderMapping","setLoaderMappings","drizzleClientCache","pluginName","PothosDrizzlePlugin","onOutputFieldConfig","fieldConfig","argMappings","args","buildCache","inputField","type","kind","config","getTypeConfig","ref","extensions","drizzleGraphQL","mappingCache","argMapper","input","mappings","value","table","tableConfig","inputType","Error","argMappers","undefined","pothosOptions","select","pothosDrizzleSelect","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","iface","interfaces","interfaceConfig","pothosDrizzleModel","add","name","modelLoader","pothosDrizzleLoader","parent","context","info","mapping","path","primaryKeys","pothosDrizzleTable","primaryKey","length","loadSelection","then","result","Map","registerPlugin"],"mappings":"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"}
package/lib/index.js CHANGED
@@ -27,6 +27,19 @@ const _drizzlegraphql = require("./utils/drizzle-graphql");
27
27
  const _loadermap = require("./utils/loader-map");
28
28
  const _config = require("./utils/config");
29
29
  _export_star(require("./types"), exports);
30
+ function _define_property(obj, key, value) {
31
+ if (key in obj) {
32
+ Object.defineProperty(obj, key, {
33
+ value: value,
34
+ enumerable: true,
35
+ configurable: true,
36
+ writable: true
37
+ });
38
+ } else {
39
+ obj[key] = value;
40
+ }
41
+ return obj;
42
+ }
30
43
  function _export_star(from, to) {
31
44
  Object.keys(from).forEach(function(k) {
32
45
  if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
@@ -93,7 +106,7 @@ class PothosDrizzlePlugin extends _core.BasePlugin {
93
106
  return (_config_extensions_drizzleGraphQL = (_config_extensions = config.extensions) === null || _config_extensions === void 0 ? void 0 : _config_extensions.drizzleGraphQL) !== null && _config_extensions_drizzleGraphQL !== void 0 ? _config_extensions_drizzleGraphQL : null;
94
107
  }
95
108
  return null;
96
- });
109
+ }, this.mappingCache);
97
110
  const argMapper = argMappings ? (0, _core.createInputValueMapper)(argMappings, (input, mappings)=>{
98
111
  if (!mappings.value) {
99
112
  return input;
@@ -178,6 +191,9 @@ class PothosDrizzlePlugin extends _core.BasePlugin {
178
191
  return modelLoader(context).loadSelection(info, parent).then((result)=>resolver(result, args, context, info));
179
192
  };
180
193
  }
194
+ constructor(...args){
195
+ super(...args), _define_property(this, "mappingCache", new Map());
196
+ }
181
197
  }
182
198
  _core.default.registerPlugin(pluginName, PothosDrizzlePlugin, {});
183
199
 
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":["PothosDrizzlePlugin","drizzleClientCache","pluginName","BasePlugin","onOutputFieldConfig","fieldConfig","argMappings","mapInputFields","args","buildCache","inputField","type","kind","config","getTypeConfig","ref","extensions","drizzleGraphQL","argMapper","createInputValueMapper","input","mappings","value","table","tableConfig","inputType","extractOrderBy","extractFilters","remapFromGraphQLSingleInput","Error","argMappers","undefined","pothosOptions","select","pothosDrizzleSelect","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","iface","interfaces","interfaceConfig","pothosDrizzleModel","add","name","modelLoader","pothosDrizzleLoader","parent","context","info","mapping","getLoaderMapping","path","setLoaderMappings","primaryKeys","pothosDrizzleTable","primaryKey","length","loadSelection","then","result","SchemaBuilder","registerPlugin"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/index.ts"],"names":["PothosDrizzlePlugin","drizzleClientCache","pluginName","BasePlugin","onOutputFieldConfig","fieldConfig","argMappings","mapInputFields","args","buildCache","inputField","type","kind","config","getTypeConfig","ref","extensions","drizzleGraphQL","mappingCache","argMapper","createInputValueMapper","input","mappings","value","table","tableConfig","inputType","extractOrderBy","extractFilters","remapFromGraphQLSingleInput","Error","argMappers","undefined","pothosOptions","select","pothosDrizzleSelect","ctx","nestedQuery","wrapResolve","resolver","parentConfig","parentType","parentTypes","Set","iface","interfaces","interfaceConfig","pothosDrizzleModel","add","name","modelLoader","pothosDrizzleLoader","parent","context","info","mapping","getLoaderMapping","path","setLoaderMappings","primaryKeys","pothosDrizzleTable","primaryKey","length","loadSelection","then","result","Map","SchemaBuilder","registerPlugin"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pothos/plugin-drizzle",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "A Pothos plugin for drizzle",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./dts/index.d.ts",
@@ -46,10 +46,10 @@
46
46
  "graphql-scalars": "^1.24.0",
47
47
  "graphql-tag": "^2.12.6",
48
48
  "postgres": "^3.4.5",
49
- "@pothos/core": "4.3.0",
50
- "@pothos/plugin-relay": "4.3.0",
49
+ "@pothos/core": "4.5.0",
51
50
  "@pothos/plugin-add-graphql": "4.2.1",
52
51
  "@pothos/plugin-scope-auth": "4.1.1",
52
+ "@pothos/plugin-relay": "4.4.0",
53
53
  "@pothos/plugin-with-input": "4.1.0",
54
54
  "@pothos/test-utils": "2.1.0"
55
55
  },
package/src/index.ts CHANGED
@@ -4,6 +4,7 @@ import './schema-builder';
4
4
  import SchemaBuilder, {
5
5
  BasePlugin,
6
6
  createInputValueMapper,
7
+ type InputTypeFieldsMapping,
7
8
  mapInputFields,
8
9
  type PothosOutputFieldConfig,
9
10
  type SchemaTypes,
@@ -26,6 +27,10 @@ const pluginName = 'drizzle';
26
27
  export default pluginName;
27
28
 
28
29
  export class PothosDrizzlePlugin<Types extends SchemaTypes> extends BasePlugin<Types> {
30
+ private mappingCache = new Map<
31
+ string,
32
+ InputTypeFieldsMapping<Types, DrizzleGraphQLInputExtensions>
33
+ >();
29
34
  override onOutputFieldConfig(
30
35
  fieldConfig: PothosOutputFieldConfig<Types>,
31
36
  ): PothosOutputFieldConfig<Types> | null {
@@ -41,6 +46,7 @@ export class PothosDrizzlePlugin<Types extends SchemaTypes> extends BasePlugin<T
41
46
 
42
47
  return null;
43
48
  },
49
+ this.mappingCache,
44
50
  );
45
51
 
46
52
  const argMapper = argMappings