houdini 1.0.0-next.9 → 1.0.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.
Files changed (62) hide show
  1. package/README.md +4 -1
  2. package/build/cmd-cjs/index.js +2368 -151
  3. package/build/cmd-esm/index.js +2368 -151
  4. package/build/codegen/generators/runtime/runtimeConfig.d.ts +7 -0
  5. package/build/codegen/transforms/fragmentVariables.d.ts +2 -1
  6. package/build/codegen/utils/flattenSelections.d.ts +1 -1
  7. package/build/codegen/validators/typeCheck.d.ts +1 -0
  8. package/build/codegen-cjs/index.js +2962 -719
  9. package/build/codegen-esm/index.js +2962 -719
  10. package/build/lib/config.d.ts +4 -6
  11. package/build/lib/types.d.ts +18 -15
  12. package/build/lib-cjs/index.js +3159 -171
  13. package/build/lib-esm/index.js +3152 -171
  14. package/build/runtime/cache/storage.d.ts +18 -15
  15. package/build/runtime/client/documentStore.d.ts +15 -13
  16. package/build/runtime/client/utils/documentPlugins.d.ts +2 -2
  17. package/build/runtime/imports/pluginConfig.d.ts +3 -0
  18. package/build/runtime/lib/config.d.ts +2 -2
  19. package/build/runtime/lib/scalars.d.ts +1 -1
  20. package/build/runtime/lib/types.d.ts +41 -42
  21. package/build/runtime-cjs/cache/storage.d.ts +18 -15
  22. package/build/runtime-cjs/cache/storage.js +9 -11
  23. package/build/runtime-cjs/client/documentStore.d.ts +15 -13
  24. package/build/runtime-cjs/client/documentStore.js +10 -7
  25. package/build/runtime-cjs/client/index.js +3 -0
  26. package/build/runtime-cjs/client/plugins/cache.js +3 -3
  27. package/build/runtime-cjs/client/plugins/fetch.js +2 -2
  28. package/build/runtime-cjs/client/plugins/query.js +1 -1
  29. package/build/runtime-cjs/client/plugins/subscription.js +2 -2
  30. package/build/runtime-cjs/client/utils/documentPlugins.d.ts +2 -2
  31. package/build/runtime-cjs/imports/pluginConfig.d.ts +3 -0
  32. package/build/runtime-cjs/imports/pluginConfig.js +27 -0
  33. package/build/runtime-cjs/lib/config.d.ts +2 -2
  34. package/build/runtime-cjs/lib/config.js +11 -1
  35. package/build/runtime-cjs/lib/scalars.d.ts +1 -1
  36. package/build/runtime-cjs/lib/scalars.js +13 -2
  37. package/build/runtime-cjs/lib/types.d.ts +41 -42
  38. package/build/runtime-cjs/lib/types.js +26 -30
  39. package/build/runtime-esm/cache/storage.d.ts +18 -15
  40. package/build/runtime-esm/cache/storage.js +9 -11
  41. package/build/runtime-esm/client/documentStore.d.ts +15 -13
  42. package/build/runtime-esm/client/documentStore.js +10 -7
  43. package/build/runtime-esm/client/index.js +5 -2
  44. package/build/runtime-esm/client/plugins/cache.js +3 -3
  45. package/build/runtime-esm/client/plugins/fetch.js +2 -2
  46. package/build/runtime-esm/client/plugins/query.js +1 -1
  47. package/build/runtime-esm/client/plugins/subscription.js +2 -2
  48. package/build/runtime-esm/client/utils/documentPlugins.d.ts +2 -2
  49. package/build/runtime-esm/imports/pluginConfig.d.ts +3 -0
  50. package/build/runtime-esm/imports/pluginConfig.js +5 -0
  51. package/build/runtime-esm/lib/config.d.ts +2 -2
  52. package/build/runtime-esm/lib/config.js +11 -1
  53. package/build/runtime-esm/lib/scalars.d.ts +1 -1
  54. package/build/runtime-esm/lib/scalars.js +13 -2
  55. package/build/runtime-esm/lib/types.d.ts +41 -42
  56. package/build/runtime-esm/lib/types.js +26 -30
  57. package/build/test-cjs/index.js +2346 -128
  58. package/build/test-esm/index.js +2346 -128
  59. package/build/vite/houdini.d.ts +2 -0
  60. package/build/vite-cjs/index.js +2371 -152
  61. package/build/vite-esm/index.js +2371 -152
  62. package/package.json +2 -2
@@ -118,6 +118,9 @@ function isScalar(config, type) {
118
118
  return ["String", "Boolean", "Float", "ID", "Int"].concat(Object.keys(config.scalars || {})).includes(type);
119
119
  }
120
120
  function parseScalar(config, type, value) {
121
+ if (typeof value === "undefined") {
122
+ return void 0;
123
+ }
121
124
  if (type === "Boolean") {
122
125
  return value === "true";
123
126
  }
@@ -128,10 +131,18 @@ function parseScalar(config, type, value) {
128
131
  return value;
129
132
  }
130
133
  if (type === "Int") {
131
- return parseInt(value, 10);
134
+ const result = parseInt(value, 10);
135
+ if (Number.isNaN(result)) {
136
+ return void 0;
137
+ }
138
+ return result;
132
139
  }
133
140
  if (type === "Float") {
134
- return parseFloat(value);
141
+ const result = parseFloat(value);
142
+ if (Number.isNaN(result)) {
143
+ return void 0;
144
+ }
145
+ return result;
135
146
  }
136
147
  if (config.scalars?.[type]?.marshal) {
137
148
  return config.scalars[type]?.marshal(value);
@@ -1,9 +1,11 @@
1
- export declare enum CachePolicy {
2
- CacheOrNetwork = "CacheOrNetwork",
3
- CacheOnly = "CacheOnly",
4
- NetworkOnly = "NetworkOnly",
5
- CacheAndNetwork = "CacheAndNetwork"
6
- }
1
+ export declare const CachePolicy: {
2
+ readonly CacheOrNetwork: "CacheOrNetwork";
3
+ readonly CacheOnly: "CacheOnly";
4
+ readonly NetworkOnly: "NetworkOnly";
5
+ readonly CacheAndNetwork: "CacheAndNetwork";
6
+ };
7
+ type ValuesOf<Target> = Target[keyof Target];
8
+ export type CachePolicies = ValuesOf<typeof CachePolicy>;
7
9
  declare global {
8
10
  namespace App {
9
11
  interface Session {
@@ -29,42 +31,38 @@ export type Operation<_Result, _Input> = {
29
31
  };
30
32
  export type Maybe<T> = T | null | undefined;
31
33
  export type DocumentArtifact = FragmentArtifact | QueryArtifact | MutationArtifact | SubscriptionArtifact;
32
- export declare enum ArtifactKind {
33
- Query = "HoudiniQuery",
34
- Subscription = "HoudiniSubscription",
35
- Mutation = "HoudiniMutation",
36
- Fragment = "HoudiniFragment"
37
- }
38
- export declare const CompiledFragmentKind = ArtifactKind.Fragment;
39
- export declare const CompiledMutationKind = ArtifactKind.Mutation;
40
- export declare const CompiledQueryKind = ArtifactKind.Query;
41
- export declare const CompiledSubscriptionKind = ArtifactKind.Subscription;
42
- export type CompiledDocumentKind = ArtifactKind;
43
- export type QueryArtifact = BaseCompiledDocument & {
44
- kind: ArtifactKind.Query;
45
- policy?: CachePolicy;
34
+ export declare const ArtifactKind: {
35
+ readonly Query: "HoudiniQuery";
36
+ readonly Subscription: "HoudiniSubscription";
37
+ readonly Mutation: "HoudiniMutation";
38
+ readonly Fragment: "HoudiniFragment";
39
+ };
40
+ export type ArtifactKinds = ValuesOf<typeof ArtifactKind>;
41
+ export declare const CompiledFragmentKind: "HoudiniFragment";
42
+ export declare const CompiledMutationKind: "HoudiniMutation";
43
+ export declare const CompiledQueryKind: "HoudiniQuery";
44
+ export declare const CompiledSubscriptionKind: "HoudiniSubscription";
45
+ export type CompiledDocumentKind = ArtifactKinds;
46
+ export type QueryArtifact = BaseCompiledDocument<'HoudiniQuery'> & {
47
+ policy?: CachePolicies;
46
48
  partial?: boolean;
47
49
  };
48
- export type MutationArtifact = BaseCompiledDocument & {
49
- kind: ArtifactKind.Mutation;
50
- };
51
- export type FragmentArtifact = BaseCompiledDocument & {
52
- kind: ArtifactKind.Fragment;
53
- };
54
- export type SubscriptionArtifact = BaseCompiledDocument & {
55
- kind: ArtifactKind.Subscription;
50
+ export type MutationArtifact = BaseCompiledDocument<'HoudiniMutation'>;
51
+ export type FragmentArtifact = BaseCompiledDocument<'HoudiniFragment'>;
52
+ export type SubscriptionArtifact = BaseCompiledDocument<'HoudiniSubscription'>;
53
+ export declare const RefetchUpdateMode: {
54
+ readonly append: "append";
55
+ readonly prepend: "prepend";
56
+ readonly replace: "replace";
56
57
  };
57
- export declare enum RefetchUpdateMode {
58
- append = "append",
59
- prepend = "prepend",
60
- replace = "replace"
61
- }
58
+ export type RefetchUpdateModes = ValuesOf<typeof RefetchUpdateMode>;
62
59
  export type InputObject = {
63
60
  fields: Record<string, string>;
64
61
  types: Record<string, Record<string, string>>;
65
62
  };
66
- export type BaseCompiledDocument = {
63
+ export type BaseCompiledDocument<_Kind extends ArtifactKinds> = {
67
64
  name: string;
65
+ kind: _Kind;
68
66
  raw: string;
69
67
  hash: string;
70
68
  selection: SubscriptionSelection;
@@ -80,7 +78,7 @@ export type BaseCompiledDocument = {
80
78
  paginated: boolean;
81
79
  direction: 'forward' | 'backward' | 'both';
82
80
  };
83
- plugin_data?: Record<string, any>;
81
+ pluginData?: Record<string, any>;
84
82
  };
85
83
  export type HoudiniFetchContext = {
86
84
  variables: () => {};
@@ -92,20 +90,21 @@ export type ListWhen = {
92
90
  must?: Filter;
93
91
  must_not?: Filter;
94
92
  };
95
- export declare enum DataSource {
93
+ export declare const DataSource: {
96
94
  /**
97
95
  * from the browser cache
98
96
  */
99
- Cache = "cache",
97
+ readonly Cache: "cache";
100
98
  /**
101
99
  * from a browser side `fetch`
102
100
  */
103
- Network = "network",
101
+ readonly Network: "network";
104
102
  /**
105
103
  * from a server side `fetch`
106
104
  */
107
- Ssr = "ssr"
108
- }
105
+ readonly Ssr: "ssr";
106
+ };
107
+ export type DataSources = ValuesOf<typeof DataSource>;
109
108
  export type MutationOperation = {
110
109
  action: 'insert' | 'remove' | 'delete' | 'toggle';
111
110
  list?: string;
@@ -163,7 +162,7 @@ export type SubscriptionSpec = {
163
162
  };
164
163
  export type FetchQueryResult<_Data> = {
165
164
  result: RequestPayload<_Data | null>;
166
- source: DataSource | null;
165
+ source: DataSources | null;
167
166
  };
168
167
  export type QueryResult<_Data = GraphQLObject, _Input = Record<string, any>> = {
169
168
  data: _Data | null;
@@ -173,7 +172,7 @@ export type QueryResult<_Data = GraphQLObject, _Input = Record<string, any>> = {
173
172
  fetching: boolean;
174
173
  partial: boolean;
175
174
  stale: boolean;
176
- source: DataSource | null;
175
+ source: DataSources | null;
177
176
  variables: _Input | null;
178
177
  };
179
178
  export type RequestPayload<GraphQLObject = any> = {
@@ -1,33 +1,29 @@
1
- var CachePolicy = /* @__PURE__ */ ((CachePolicy2) => {
2
- CachePolicy2["CacheOrNetwork"] = "CacheOrNetwork";
3
- CachePolicy2["CacheOnly"] = "CacheOnly";
4
- CachePolicy2["NetworkOnly"] = "NetworkOnly";
5
- CachePolicy2["CacheAndNetwork"] = "CacheAndNetwork";
6
- return CachePolicy2;
7
- })(CachePolicy || {});
8
- var ArtifactKind = /* @__PURE__ */ ((ArtifactKind2) => {
9
- ArtifactKind2["Query"] = "HoudiniQuery";
10
- ArtifactKind2["Subscription"] = "HoudiniSubscription";
11
- ArtifactKind2["Mutation"] = "HoudiniMutation";
12
- ArtifactKind2["Fragment"] = "HoudiniFragment";
13
- return ArtifactKind2;
14
- })(ArtifactKind || {});
15
- const CompiledFragmentKind = "HoudiniFragment" /* Fragment */;
16
- const CompiledMutationKind = "HoudiniMutation" /* Mutation */;
17
- const CompiledQueryKind = "HoudiniQuery" /* Query */;
18
- const CompiledSubscriptionKind = "HoudiniSubscription" /* Subscription */;
19
- var RefetchUpdateMode = /* @__PURE__ */ ((RefetchUpdateMode2) => {
20
- RefetchUpdateMode2["append"] = "append";
21
- RefetchUpdateMode2["prepend"] = "prepend";
22
- RefetchUpdateMode2["replace"] = "replace";
23
- return RefetchUpdateMode2;
24
- })(RefetchUpdateMode || {});
25
- var DataSource = /* @__PURE__ */ ((DataSource2) => {
26
- DataSource2["Cache"] = "cache";
27
- DataSource2["Network"] = "network";
28
- DataSource2["Ssr"] = "ssr";
29
- return DataSource2;
30
- })(DataSource || {});
1
+ const CachePolicy = {
2
+ CacheOrNetwork: "CacheOrNetwork",
3
+ CacheOnly: "CacheOnly",
4
+ NetworkOnly: "NetworkOnly",
5
+ CacheAndNetwork: "CacheAndNetwork"
6
+ };
7
+ const ArtifactKind = {
8
+ Query: "HoudiniQuery",
9
+ Subscription: "HoudiniSubscription",
10
+ Mutation: "HoudiniMutation",
11
+ Fragment: "HoudiniFragment"
12
+ };
13
+ const CompiledFragmentKind = ArtifactKind.Fragment;
14
+ const CompiledMutationKind = ArtifactKind.Mutation;
15
+ const CompiledQueryKind = ArtifactKind.Query;
16
+ const CompiledSubscriptionKind = ArtifactKind.Subscription;
17
+ const RefetchUpdateMode = {
18
+ append: "append",
19
+ prepend: "prepend",
20
+ replace: "replace"
21
+ };
22
+ const DataSource = {
23
+ Cache: "cache",
24
+ Network: "network",
25
+ Ssr: "ssr"
26
+ };
31
27
  export {
32
28
  ArtifactKind,
33
29
  CachePolicy,