@gabroberge/nestjs-dataloader 1.3.0 → 2.0.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,17 @@
1
1
  # @gabroberge/nestjs-dataloader
2
2
 
3
+ ## 2.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - 42bae25: remove mapFromArrayToObject and mapFromArrayToArray functions from NestDataLoader
8
+
9
+ ## 1.3.1
10
+
11
+ ### Patch Changes
12
+
13
+ - dce19ad: fix issue with dataloader being generated twice
14
+
3
15
  ## 1.3.0
4
16
 
5
17
  ### Minor Changes
package/dist/index.d.mts CHANGED
@@ -8,8 +8,6 @@ declare const NEST_LOADER_CONTEXT_KEY = "NEST_LOADER_CONTEXT_KEY";
8
8
 
9
9
  declare abstract class NestDataLoader<Key extends string | number, Item> {
10
10
  abstract generateDataLoader(): DataLoader<Key, Item | Item[]>;
11
- mapFromArrayToArray<KeyStrategy extends (item: Item) => Key>(array: Item[], keyStrategy: KeyStrategy): Map<Key, Item[]>;
12
- mapFromArrayToObject<KeyStrategy extends (item: Item) => Key>(array: Item[], keyStrategy: KeyStrategy): Map<Key, Item>;
13
11
  }
14
12
 
15
13
  type LoaderContext = {
package/dist/index.d.ts CHANGED
@@ -8,8 +8,6 @@ declare const NEST_LOADER_CONTEXT_KEY = "NEST_LOADER_CONTEXT_KEY";
8
8
 
9
9
  declare abstract class NestDataLoader<Key extends string | number, Item> {
10
10
  abstract generateDataLoader(): DataLoader<Key, Item | Item[]>;
11
- mapFromArrayToArray<KeyStrategy extends (item: Item) => Key>(array: Item[], keyStrategy: KeyStrategy): Map<Key, Item[]>;
12
- mapFromArrayToObject<KeyStrategy extends (item: Item) => Key>(array: Item[], keyStrategy: KeyStrategy): Map<Key, Item>;
13
11
  }
14
12
 
15
13
  type LoaderContext = {
package/dist/index.js CHANGED
@@ -100,10 +100,11 @@ var _NestDataLoaderInterceptor = class _NestDataLoaderInterceptor {
100
100
  return __async(this, null, function* () {
101
101
  var _a;
102
102
  if (injectionContext[type] === void 0) {
103
- const nestLoader = yield this.moduleRef.resolve(type, (_a = injectionContext[NEST_LOADER_CONTEXT_KEY]) == null ? void 0 : _a.contextId, {
103
+ yield this.moduleRef.resolve(type, (_a = injectionContext[NEST_LOADER_CONTEXT_KEY]) == null ? void 0 : _a.contextId, {
104
104
  strict: false
105
+ }).then((nestLoader) => {
106
+ injectionContext[type] = nestLoader.generateDataLoader();
105
107
  });
106
- injectionContext[type] = nestLoader.generateDataLoader();
107
108
  }
108
109
  return injectionContext[type];
109
110
  });
@@ -131,26 +132,6 @@ var Loader = (0, import_common2.createParamDecorator)((data, context) => __async
131
132
 
132
133
  // src/nest-dataloader.ts
133
134
  var _NestDataLoader = class _NestDataLoader {
134
- mapFromArrayToArray(array, keyStrategy) {
135
- return array.reduce((map, item) => {
136
- const key = keyStrategy(item);
137
- const existingGroup = map.get(key);
138
- if (existingGroup) {
139
- existingGroup.push(item);
140
- } else {
141
- map.set(key, [
142
- item
143
- ]);
144
- }
145
- return map;
146
- }, /* @__PURE__ */ new Map());
147
- }
148
- mapFromArrayToObject(array, keyStrategy) {
149
- return array.reduce((map, item) => {
150
- map.set(keyStrategy(item), item);
151
- return map;
152
- }, /* @__PURE__ */ new Map());
153
- }
154
135
  };
155
136
  __name(_NestDataLoader, "NestDataLoader");
156
137
  var NestDataLoader = _NestDataLoader;
package/dist/index.mjs CHANGED
@@ -74,10 +74,11 @@ var _NestDataLoaderInterceptor = class _NestDataLoaderInterceptor {
74
74
  return __async(this, null, function* () {
75
75
  var _a;
76
76
  if (injectionContext[type] === void 0) {
77
- const nestLoader = yield this.moduleRef.resolve(type, (_a = injectionContext[NEST_LOADER_CONTEXT_KEY]) == null ? void 0 : _a.contextId, {
77
+ yield this.moduleRef.resolve(type, (_a = injectionContext[NEST_LOADER_CONTEXT_KEY]) == null ? void 0 : _a.contextId, {
78
78
  strict: false
79
+ }).then((nestLoader) => {
80
+ injectionContext[type] = nestLoader.generateDataLoader();
79
81
  });
80
- injectionContext[type] = nestLoader.generateDataLoader();
81
82
  }
82
83
  return injectionContext[type];
83
84
  });
@@ -105,26 +106,6 @@ var Loader = createParamDecorator((data, context) => __async(void 0, null, funct
105
106
 
106
107
  // src/nest-dataloader.ts
107
108
  var _NestDataLoader = class _NestDataLoader {
108
- mapFromArrayToArray(array, keyStrategy) {
109
- return array.reduce((map, item) => {
110
- const key = keyStrategy(item);
111
- const existingGroup = map.get(key);
112
- if (existingGroup) {
113
- existingGroup.push(item);
114
- } else {
115
- map.set(key, [
116
- item
117
- ]);
118
- }
119
- return map;
120
- }, /* @__PURE__ */ new Map());
121
- }
122
- mapFromArrayToObject(array, keyStrategy) {
123
- return array.reduce((map, item) => {
124
- map.set(keyStrategy(item), item);
125
- return map;
126
- }, /* @__PURE__ */ new Map());
127
- }
128
109
  };
129
110
  __name(_NestDataLoader, "NestDataLoader");
130
111
  var NestDataLoader = _NestDataLoader;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gabroberge/nestjs-dataloader",
3
- "version": "1.3.0",
3
+ "version": "2.0.0",
4
4
  "description": "A NestJS decorator for dataloader",
5
5
  "private": false,
6
6
  "main": "./dist/index.js",