@isograph/react 0.0.0-main-37985805 → 0.0.0-main-d64c2813

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/dist/index.d.ts CHANGED
@@ -90,9 +90,8 @@ export type FragmentReference<TReadFromStore extends Object, TResolverProps, TRe
90
90
  } | null;
91
91
  nestedRefetchQueries: RefetchQueryArtifactWrapper[];
92
92
  };
93
- export declare function isoFetch<T extends IsographEntrypoint<any, any, any>>(_text: TemplateStringsArray): T;
94
- export declare function iso<TResolverParameter, TResolverReturn = TResolverParameter>(_queryText: TemplateStringsArray): (x: ((param: TResolverParameter) => TResolverReturn) | void) => (param: TResolverParameter) => TResolverReturn;
95
- export declare function useLazyReference<TReadFromStore extends Object, TResolverProps, TResolverResult>(entrypoint: IsographEntrypoint<TReadFromStore, TResolverProps, TResolverResult>, variables: object): {
93
+ export declare function iso<TResolverParameter, TResolverReturn = TResolverParameter>(_queryText: TemplateStringsArray): (x: (param: TResolverParameter) => TResolverReturn) => (param: TResolverParameter) => TResolverReturn;
94
+ export declare function useLazyReference<TReadFromStore extends Object, TResolverProps, TResolverResult>(entrypoint: IsographEntrypoint<TReadFromStore, TResolverProps, TResolverResult> | typeof iso, variables: object): {
96
95
  queryReference: FragmentReference<TReadFromStore, TResolverProps, TResolverResult>;
97
96
  };
98
97
  export declare function read<TReadFromStore extends Object, TResolverProps, TResolverResult>(fragmentReference: FragmentReference<TReadFromStore, TResolverProps, TResolverResult>): TResolverResult;
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setMissingFieldHandler = exports.defaultMissingFieldHandler = exports.readButDoNotEvaluate = exports.read = exports.useLazyReference = exports.iso = exports.isoFetch = exports.clearStore = exports.subscribe = exports.makeNetworkRequest = exports.setNetwork = void 0;
3
+ exports.setMissingFieldHandler = exports.defaultMissingFieldHandler = exports.readButDoNotEvaluate = exports.read = exports.useLazyReference = exports.iso = exports.clearStore = exports.subscribe = exports.makeNetworkRequest = exports.setNetwork = void 0;
4
4
  const cache_1 = require("./cache");
5
5
  const react_disposable_state_1 = require("@isograph/react-disposable-state");
6
6
  const componentCache_1 = require("./componentCache");
@@ -9,10 +9,10 @@ Object.defineProperty(exports, "setNetwork", { enumerable: true, get: function (
9
9
  Object.defineProperty(exports, "makeNetworkRequest", { enumerable: true, get: function () { return cache_2.makeNetworkRequest; } });
10
10
  Object.defineProperty(exports, "subscribe", { enumerable: true, get: function () { return cache_2.subscribe; } });
11
11
  Object.defineProperty(exports, "clearStore", { enumerable: true, get: function () { return cache_2.clearStore; } });
12
- function isoFetch(_text) {
13
- return void 0;
12
+ function assertIsEntrypoint(value) {
13
+ if (typeof value === "function")
14
+ throw new Error("Not a string");
14
15
  }
15
- exports.isoFetch = isoFetch;
16
16
  function iso(_queryText) {
17
17
  // The name `identity` here is a bit of a double entendre.
18
18
  // First, it is the identity function, constrained to operate
@@ -27,6 +27,7 @@ function iso(_queryText) {
27
27
  }
28
28
  exports.iso = iso;
29
29
  function useLazyReference(entrypoint, variables) {
30
+ assertIsEntrypoint(entrypoint);
30
31
  // Typechecking fails here... TODO investigate
31
32
  const cache = (0, cache_1.getOrCreateCacheForArtifact)(entrypoint, variables);
32
33
  // TODO add comment explaining why we never use this value
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@isograph/react",
3
- "version": "0.0.0-main-37985805",
3
+ "version": "0.0.0-main-d64c2813",
4
4
  "description": "Use Isograph with React",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -15,8 +15,8 @@
15
15
  "prepack": "yarn run test && yarn run compile"
16
16
  },
17
17
  "dependencies": {
18
- "@isograph/disposable-types": "0.0.0-main-37985805",
19
- "@isograph/react-disposable-state": "0.0.0-main-37985805",
18
+ "@isograph/disposable-types": "0.0.0-main-d64c2813",
19
+ "@isograph/react-disposable-state": "0.0.0-main-d64c2813",
20
20
  "react": "^18.2.0"
21
21
  },
22
22
  "devDependencies": {
package/src/index.tsx CHANGED
@@ -161,16 +161,26 @@ export type FragmentReference<
161
161
  nestedRefetchQueries: RefetchQueryArtifactWrapper[];
162
162
  };
163
163
 
164
- export function isoFetch<T extends IsographEntrypoint<any, any, any>>(
165
- _text: TemplateStringsArray
166
- ): T {
167
- return void 0 as any;
164
+ function assertIsEntrypoint<
165
+ TReadFromStore extends Object,
166
+ TResolverProps,
167
+ TResolverResult
168
+ >(
169
+ value:
170
+ | IsographEntrypoint<TReadFromStore, TResolverProps, TResolverResult>
171
+ | typeof iso
172
+ ): asserts value is IsographEntrypoint<
173
+ TReadFromStore,
174
+ TResolverProps,
175
+ TResolverResult
176
+ > {
177
+ if (typeof value === "function") throw new Error("Not a string");
168
178
  }
169
179
 
170
180
  export function iso<TResolverParameter, TResolverReturn = TResolverParameter>(
171
181
  _queryText: TemplateStringsArray
172
182
  ): (
173
- x: ((param: TResolverParameter) => TResolverReturn) | void
183
+ x: (param: TResolverParameter) => TResolverReturn
174
184
  ) => (param: TResolverParameter) => TResolverReturn {
175
185
  // The name `identity` here is a bit of a double entendre.
176
186
  // First, it is the identity function, constrained to operate
@@ -192,11 +202,9 @@ export function useLazyReference<
192
202
  TResolverProps,
193
203
  TResolverResult
194
204
  >(
195
- entrypoint: IsographEntrypoint<
196
- TReadFromStore,
197
- TResolverProps,
198
- TResolverResult
199
- >,
205
+ entrypoint:
206
+ | IsographEntrypoint<TReadFromStore, TResolverProps, TResolverResult>
207
+ | typeof iso,
200
208
  variables: object
201
209
  ): {
202
210
  queryReference: FragmentReference<
@@ -205,6 +213,7 @@ export function useLazyReference<
205
213
  TResolverResult
206
214
  >;
207
215
  } {
216
+ assertIsEntrypoint(entrypoint);
208
217
  // Typechecking fails here... TODO investigate
209
218
  const cache = getOrCreateCacheForArtifact<TResolverResult>(
210
219
  entrypoint,