@firsthandjs/data-apollo 0.7.0 → 0.7.1

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
@@ -39,16 +39,16 @@
39
39
  */
40
40
  import { type BridgeOptions, type CacheClient, type CacheOptions, type DocumentArguments, type GraphQLDocument, type Loader, type ObservableLike, type Variables } from '@firsthandjs/data';
41
41
  /** The part of an Apollo client this package uses. Nothing else. */
42
- export interface ApolloLike {
42
+ export type ApolloLike = {
43
43
  query(options: Record<string, unknown>): Promise<{
44
44
  data: unknown;
45
45
  }>;
46
46
  mutate(options: Record<string, unknown>): Promise<{
47
47
  data?: unknown;
48
48
  }>;
49
- }
49
+ };
50
50
  /** A watched query: what Apollo pushes when its cache changes. */
51
- export interface WatchLike {
51
+ export type WatchLike = {
52
52
  watchQuery(options: Record<string, unknown>): {
53
53
  subscribe(observer: {
54
54
  next?: (value: {
@@ -60,7 +60,7 @@ export interface WatchLike {
60
60
  };
61
61
  refetch(): Promise<unknown>;
62
62
  };
63
- }
63
+ };
64
64
  /**
65
65
  * How to turn a document's source into whatever Apollo wants.
66
66
  *
@@ -69,7 +69,7 @@ export interface WatchLike {
69
69
  * `graphql` in one application is its own kind of afternoon.
70
70
  */
71
71
  export type Parse = (source: string) => unknown;
72
- export interface ApolloClientOptions {
72
+ export type ApolloClientOptions = {
73
73
  /**
74
74
  * Headers for every request, sent through Apollo's per-operation context. A
75
75
  * function is called **per request and untracked**, which is what lets a
@@ -92,8 +92,8 @@ export interface ApolloClientOptions {
92
92
  readonly scope?: () => string;
93
93
  /** Merged into the options of every query and mutation. */
94
94
  readonly options?: Record<string, unknown>;
95
- }
96
- export interface ApolloClient {
95
+ };
96
+ export type ApolloClient = {
97
97
  /**
98
98
  * A query, as a loader. Declares the document's `@tag` directives before the
99
99
  * request goes out; `force` becomes `fetchPolicy: 'network-only'`, which is
@@ -118,6 +118,6 @@ export interface ApolloClient {
118
118
  /** A copy with some options replaced. The cache is shared unless replaced. */
119
119
  with(options: ApolloClientOptions): ApolloClient;
120
120
  readonly cache: CacheClient | undefined;
121
- }
121
+ };
122
122
  export declare function createApolloClient(client: ApolloLike & WatchLike, parse: Parse, options?: ApolloClientOptions): ApolloClient;
123
123
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{createCacheClient as V,resolveTags as b,stableKey as f}from"@firsthandjs/data";import{untrack as d}from"@firsthandjs/core";function g(s,u,t={}){let c=t.cache===void 0||t.cache===!1?void 0:"read"in t.cache?t.cache:V(t.cache),i=()=>{let e=typeof t.headers=="function"?d(t.headers):t.headers;return e===void 0?{}:{context:{headers:e}}},y=()=>{if(t.scope!==void 0)return d(t.scope);let e=typeof t.headers=="function"?d(t.headers):t.headers??{};return e.authorization??e.Authorization??""},h=async(e,n,o,r)=>{let a=u(n.source);return e==="mutation"?(await s.mutate({...t.options,...i(),mutation:a,variables:o})).data:(await s.query({...t.options,...i(),query:a,variables:o,fetchPolicy:r.force?"network-only":"cache-first"})).data},m=(e,n,o)=>async r=>{let a=o[0]??{};r.tags?.(...b(e==="mutation"?n.invalidates:n.tags,a));let l=n;if(c===void 0||e==="mutation"||r.mutating===!0)return await h(e,l,a,r);let p=`${y()}\0${n.operation}(${f(a)})`;return await c.read(p,T=>h(e,l,a,T))(r)};return{cache:c,query:(e,...n)=>m("query",e,n),mutate:(e,...n)=>m("mutation",e,n),watch:(e,...n)=>{let o=s.watchQuery({...t.options,...i(),query:u(e.source),variables:n[0]??{}});return[{subscribe:r=>o.subscribe({next:a=>r.next?.(a.data),...r.error===void 0?{}:{error:r.error}})},{reload:()=>o.refetch()}]},with:e=>g(s,u,{...t,...e,cache:e.cache??c??!1})}}export{g as createApolloClient};
1
+ import{createCacheClient as V,resolveTags as b,stableKey as g}from"@firsthandjs/data";import{untrack as d}from"@firsthandjs/core";function f(s,c,t={}){let u=t.cache===void 0||t.cache===!1?void 0:"read"in t.cache?t.cache:V(t.cache),i=()=>{let e=typeof t.headers=="function"?d(t.headers):t.headers;return e===void 0?{}:{context:{headers:e}}},y=()=>{if(t.scope!==void 0)return d(t.scope);let e=typeof t.headers=="function"?d(t.headers):t.headers??{};return e.authorization??e.Authorization??""},h=async(e,n,o,r)=>{let a=c(n.source);return e==="mutation"?(await s.mutate({...t.options,...i(),mutation:a,variables:o})).data:(await s.query({...t.options,...i(),query:a,variables:o,fetchPolicy:r.force?"network-only":"cache-first"})).data},p=(e,n,o)=>async r=>{let a=o[0]??{};r.tags?.(...b(e==="mutation"?n.invalidates:n.tags,a));let l=n;if(u===void 0||e==="mutation"||r.mutating===!0)return await h(e,l,a,r);let m=`${y()}\0${n.operation}(${g(a)})`;return await u.read(m,T=>h(e,l,a,T))(r)};return{cache:u,query:(e,...n)=>p("query",e,n),mutate:(e,...n)=>p("mutation",e,n),watch:(e,...n)=>{let o=s.watchQuery({...t.options,...i(),query:c(e.source),variables:n[0]??{}});return[{subscribe:r=>o.subscribe({next:a=>r.next?.(a.data),...r.error===void 0?{}:{error:r.error}})},{reload:()=>o.refetch()}]},with:e=>f(s,c,{...t,...e,cache:e.cache??u??!1})}}export{f as createApolloClient};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@firsthandjs/data-apollo",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "Loaders for Apollo Client, for @firsthandjs/data. Takes your client; never configures it.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -19,7 +19,7 @@
19
19
  "LICENSE"
20
20
  ],
21
21
  "dependencies": {
22
- "@firsthandjs/data": "0.7.0"
22
+ "@firsthandjs/data": "0.7.1"
23
23
  },
24
24
  "engines": {
25
25
  "node": ">=20.11.0"