@hyper-fetch/graphql 1.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/.eslintrc.json +6 -0
- package/README.md +73 -0
- package/dist/browser/index.cjs.js +160 -0
- package/dist/browser/index.cjs.js.map +7 -0
- package/dist/browser/index.esm.js +139 -0
- package/dist/browser/index.esm.js.map +7 -0
- package/dist/index.cjs.js +250 -0
- package/dist/index.cjs.js.map +7 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.esm.js +215 -0
- package/dist/index.esm.js.map +7 -0
- package/package.json +87 -0
- package/src/adapter/adapter.browser.ts +90 -0
- package/src/adapter/adapter.constants.ts +9 -0
- package/src/adapter/adapter.server.ts +91 -0
- package/src/adapter/adapter.ts +27 -0
- package/src/adapter/adapter.types.ts +54 -0
- package/src/adapter/adapter.utils.ts +23 -0
- package/src/adapter/index.ts +4 -0
- package/src/index.ts +3 -0
- package/tsconfig.base.json +13 -0
- package/tsconfig.json +12 -0
package/.eslintrc.json
ADDED
package/README.md
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# ๐ก Hyper Fetch GraphQL
|
|
2
|
+
|
|
3
|
+
<p>
|
|
4
|
+
<a href="https://bettertyped.com/">
|
|
5
|
+
<img src="https://custom-icon-badges.demolab.com/static/v1?label=&message=BetterTyped&color=333&logo=BT" />
|
|
6
|
+
</a>
|
|
7
|
+
<a href="https://github.com/BetterTyped/hyper-fetch">
|
|
8
|
+
<img src="https://custom-icon-badges.demolab.com/github/stars/BetterTyped/hyper-fetch?logo=star&color=118ab2" />
|
|
9
|
+
</a>
|
|
10
|
+
<a href="https://github.com/BetterTyped/hyper-fetch/blob/main/License.md">
|
|
11
|
+
<img src="https://custom-icon-badges.demolab.com/github/license/BetterTyped/hyper-fetch?logo=law&color=yellow" />
|
|
12
|
+
</a>
|
|
13
|
+
<a href="https://www.npmjs.com/package/@hyper-fetch/graphql">
|
|
14
|
+
<img src="https://custom-icon-badges.demolab.com/npm/v/@hyper-fetch/graphql.svg?logo=npm&color=e76f51" />
|
|
15
|
+
</a>
|
|
16
|
+
<a href="https://api.codeclimate.com/v1/badges/eade9435e75ecea0c004/test_coverage">
|
|
17
|
+
<img src="https://api.codeclimate.com/v1/badges/eade9435e75ecea0c004/test_coverage" />
|
|
18
|
+
</a>
|
|
19
|
+
<a href="https://github.com/BetterTyped/hyper-fetch">
|
|
20
|
+
<img src="https://custom-icon-badges.demolab.com/badge/typescript-%23007ACC.svg?logo=typescript&logoColor=white" />
|
|
21
|
+
</a>
|
|
22
|
+
<a href="https://github.com/BetterTyped/hyper-fetch">
|
|
23
|
+
<img src="https://custom-icon-badges.demolab.com/badge/-GraphQL-E10098?logo=graphql&logoColor=white" />
|
|
24
|
+
</a>
|
|
25
|
+
<a href="https://www.npmjs.com/package/@hyper-fetch/graphql">
|
|
26
|
+
<img src="https://custom-icon-badges.demolab.com/bundlephobia/minzip/@hyper-fetch/graphql?color=64BC4B&logo=package" />
|
|
27
|
+
</a>
|
|
28
|
+
</p>
|
|
29
|
+
|
|
30
|
+
## About
|
|
31
|
+
|
|
32
|
+
**`Hyper Fetch GraphQL`** is adapter for Hyper Fetch. It enables seamless communication with GraphQL APIs in Node.js and
|
|
33
|
+
browser environments, simplifying the retrieval and manipulation of data. Benefit from the convenience and efficiency of
|
|
34
|
+
Hyper Fetch for your GraphQL-powered projects.
|
|
35
|
+
|
|
36
|
+
## Features
|
|
37
|
+
|
|
38
|
+
๐ฎ **Simple setup** - [Read more](https://hyperfetch.bettertyped.com/docs/guides/basic/setup)
|
|
39
|
+
|
|
40
|
+
๐ฏ **Request cancellation** - [Read more](https://hyperfetch.bettertyped.com/docs/guides/advanced/cancellation)
|
|
41
|
+
|
|
42
|
+
โจ **Window Focus/Blur Events** -
|
|
43
|
+
[Read more](https://hyperfetch.bettertyped.com/docs/guides/react/core/window-focus-blur)
|
|
44
|
+
|
|
45
|
+
๐ **Queueing** - [Read more](https://hyperfetch.bettertyped.com/docs/guides/advanced/queueing)
|
|
46
|
+
|
|
47
|
+
๐ **Automatic caching** - [Read more](https://hyperfetch.bettertyped.com/docs/documentation/core/cache)
|
|
48
|
+
|
|
49
|
+
๐ช **Persistence** - [Read more](https://hyperfetch.bettertyped.com/docs/guides/advanced/persistence)
|
|
50
|
+
|
|
51
|
+
๐ **SSR Support** - [Read more](https://hyperfetch.bettertyped.com/docs/documentation/getting-started/environment)
|
|
52
|
+
|
|
53
|
+
๐ **Offline First** - [Read more](https://hyperfetch.bettertyped.com/docs/guides/advanced/offline)
|
|
54
|
+
|
|
55
|
+
๐ก **Built-in adapter** - [Read more](https://hyperfetch.bettertyped.com/docs/documentation/core/adapter)
|
|
56
|
+
|
|
57
|
+
๐งช **Easy to test** - [Read more](https://hyperfetch.bettertyped.com/docs/documentation/getting-started/testing)
|
|
58
|
+
|
|
59
|
+
๐ **Authentication** - [Read more](https://hyperfetch.bettertyped.com/docs/guides/basic/authentication)
|
|
60
|
+
|
|
61
|
+
๐ก **Prefetching** - [Read more](https://hyperfetch.bettertyped.com/docs/guides/advanced/prefetching)
|
|
62
|
+
|
|
63
|
+
## Help me keep working on this project โค๏ธ
|
|
64
|
+
|
|
65
|
+
- [Become a Sponsor on GitHub](https://github.com/sponsors/prc5)
|
|
66
|
+
|
|
67
|
+
## Sources
|
|
68
|
+
|
|
69
|
+
- #### [Installation](https://hyperfetch.bettertyped.com/docs/documentation/getting-started/installation)
|
|
70
|
+
- #### [Docs](https://hyperfetch.bettertyped.com/)
|
|
71
|
+
- #### [API](https://hyperfetch.bettertyped.com/api/)
|
|
72
|
+
- #### [NPM](https://www.npmjs.com/package/@hyper-fetch/graphql)
|
|
73
|
+
- #### [Guides](https://hyperfetch.bettertyped.com/guides/Basic/Setup)
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var __async = (__this, __arguments, generator) => {
|
|
19
|
+
return new Promise((resolve, reject) => {
|
|
20
|
+
var fulfilled = (value) => {
|
|
21
|
+
try {
|
|
22
|
+
step(generator.next(value));
|
|
23
|
+
} catch (e) {
|
|
24
|
+
reject(e);
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
var rejected = (value) => {
|
|
28
|
+
try {
|
|
29
|
+
step(generator.throw(value));
|
|
30
|
+
} catch (e) {
|
|
31
|
+
reject(e);
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
35
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
// src/index.ts
|
|
40
|
+
var src_exports = {};
|
|
41
|
+
__export(src_exports, {
|
|
42
|
+
GraphQlMethod: () => GraphQlMethod,
|
|
43
|
+
defaultTimeout: () => defaultTimeout,
|
|
44
|
+
getRequestValues: () => getRequestValues,
|
|
45
|
+
gqlExtra: () => gqlExtra,
|
|
46
|
+
graphqlAdapter: () => graphqlAdapter
|
|
47
|
+
});
|
|
48
|
+
module.exports = __toCommonJS(src_exports);
|
|
49
|
+
|
|
50
|
+
// src/adapter/adapter.browser.ts
|
|
51
|
+
var import_core = require("@hyper-fetch/core");
|
|
52
|
+
var adapter = (request, requestId) => __async(void 0, null, function* () {
|
|
53
|
+
const {
|
|
54
|
+
makeRequest,
|
|
55
|
+
config,
|
|
56
|
+
headers,
|
|
57
|
+
onError,
|
|
58
|
+
onResponseEnd,
|
|
59
|
+
onTimeoutError,
|
|
60
|
+
onRequestEnd,
|
|
61
|
+
createAbortListener,
|
|
62
|
+
onResponseProgress,
|
|
63
|
+
onRequestProgress,
|
|
64
|
+
onResponseStart,
|
|
65
|
+
onBeforeRequest,
|
|
66
|
+
onRequestStart,
|
|
67
|
+
onSuccess
|
|
68
|
+
} = yield (0, import_core.getAdapterBindings)(request, requestId, 0, gqlExtra);
|
|
69
|
+
const { fullUrl, payload, method } = getRequestValues(request);
|
|
70
|
+
return makeRequest((resolve) => {
|
|
71
|
+
const xhr = new XMLHttpRequest();
|
|
72
|
+
xhr.timeout = defaultTimeout;
|
|
73
|
+
const abort = () => xhr.abort();
|
|
74
|
+
Object.entries(config).forEach(([name, value]) => {
|
|
75
|
+
xhr[name] = value;
|
|
76
|
+
});
|
|
77
|
+
xhr.open(method, fullUrl, true);
|
|
78
|
+
Object.entries(headers).forEach(([name, value]) => xhr.setRequestHeader(name, value));
|
|
79
|
+
const unmountListener = createAbortListener(0, gqlExtra, abort, resolve);
|
|
80
|
+
xhr.upload.onprogress = onRequestProgress;
|
|
81
|
+
xhr.onloadstart = () => {
|
|
82
|
+
onRequestEnd();
|
|
83
|
+
onResponseStart();
|
|
84
|
+
};
|
|
85
|
+
xhr.onprogress = onResponseProgress;
|
|
86
|
+
xhr.onloadend = () => {
|
|
87
|
+
onResponseEnd();
|
|
88
|
+
unmountListener();
|
|
89
|
+
};
|
|
90
|
+
xhr.ontimeout = () => onTimeoutError(0, gqlExtra, resolve);
|
|
91
|
+
xhr.onreadystatechange = (e) => {
|
|
92
|
+
const event = e;
|
|
93
|
+
const finishedState = 4;
|
|
94
|
+
if (event.target && event.target.readyState === finishedState) {
|
|
95
|
+
const { status } = event.target;
|
|
96
|
+
const success = String(status).startsWith("2") || String(status).startsWith("3");
|
|
97
|
+
const responseHeaders = (0, import_core.getResponseHeaders)(xhr.getAllResponseHeaders());
|
|
98
|
+
if (success) {
|
|
99
|
+
const data = (0, import_core.parseResponse)(event.target.response);
|
|
100
|
+
onSuccess(data, status, { headers: responseHeaders }, resolve);
|
|
101
|
+
} else {
|
|
102
|
+
const data = (0, import_core.parseErrorResponse)(event.target.response);
|
|
103
|
+
onError(data, status, { headers: responseHeaders }, resolve);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
onBeforeRequest();
|
|
108
|
+
onRequestStart();
|
|
109
|
+
xhr.send(payload);
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
// src/adapter/adapter.ts
|
|
114
|
+
var import_core2 = require("@hyper-fetch/core");
|
|
115
|
+
var import_printer = require("graphql/language/printer");
|
|
116
|
+
var graphqlAdapter = (client) => {
|
|
117
|
+
const adapter2 = (request, requestId) => __async(void 0, null, function* () {
|
|
118
|
+
if (typeof XMLHttpRequest !== "undefined") {
|
|
119
|
+
return adapter(request, requestId);
|
|
120
|
+
}
|
|
121
|
+
return adapter(request, requestId);
|
|
122
|
+
});
|
|
123
|
+
const mapper = (endpoint) => {
|
|
124
|
+
if (typeof endpoint === "string") {
|
|
125
|
+
return endpoint;
|
|
126
|
+
}
|
|
127
|
+
return (0, import_printer.print)(endpoint);
|
|
128
|
+
};
|
|
129
|
+
return client.setDefaultMethod(import_core2.HttpMethodsEnum.post).setEndpointMapper(mapper).setAdapter(() => adapter2);
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
// src/adapter/adapter.types.ts
|
|
133
|
+
var GraphQlMethod = /* @__PURE__ */ ((GraphQlMethod2) => {
|
|
134
|
+
GraphQlMethod2["POST"] = "POST";
|
|
135
|
+
GraphQlMethod2["GET"] = "GET";
|
|
136
|
+
return GraphQlMethod2;
|
|
137
|
+
})(GraphQlMethod || {});
|
|
138
|
+
|
|
139
|
+
// src/adapter/adapter.utils.ts
|
|
140
|
+
var import_core3 = require("@hyper-fetch/core");
|
|
141
|
+
var getRequestValues = (request) => {
|
|
142
|
+
const { method } = request;
|
|
143
|
+
const isPostRequest = request.method === import_core3.HttpMethodsEnum.post;
|
|
144
|
+
const query = request.endpoint;
|
|
145
|
+
const variables = request.data;
|
|
146
|
+
const fullUrl = isPostRequest ? request.client.url : request.client.url + request.client.stringifyQueryParams({ query, variables });
|
|
147
|
+
const payload = isPostRequest ? JSON.stringify({
|
|
148
|
+
query,
|
|
149
|
+
variables
|
|
150
|
+
}) : null;
|
|
151
|
+
return { fullUrl, payload, method };
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
// src/adapter/adapter.constants.ts
|
|
155
|
+
var import_core4 = require("@hyper-fetch/core");
|
|
156
|
+
var defaultTimeout = import_core4.DateInterval.second * 5;
|
|
157
|
+
var gqlExtra = {
|
|
158
|
+
headers: {}
|
|
159
|
+
};
|
|
160
|
+
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/index.ts", "../../src/adapter/adapter.browser.ts", "../../src/adapter/adapter.ts", "../../src/adapter/adapter.types.ts", "../../src/adapter/adapter.utils.ts", "../../src/adapter/adapter.constants.ts"],
|
|
4
|
+
"sourcesContent": ["// rollup client entry point\n\nexport * from \"./adapter\";\n", "import { getAdapterBindings, getResponseHeaders, parseResponse, parseErrorResponse } from \"@hyper-fetch/core\";\n\nimport { gqlExtra, GraphQLAdapterType, defaultTimeout, getRequestValues } from \"adapter\";\n\nexport const adapter: GraphQLAdapterType = async (request, requestId) => {\n const {\n makeRequest,\n config,\n headers,\n onError,\n onResponseEnd,\n onTimeoutError,\n onRequestEnd,\n createAbortListener,\n onResponseProgress,\n onRequestProgress,\n onResponseStart,\n onBeforeRequest,\n onRequestStart,\n onSuccess,\n } = await getAdapterBindings<GraphQLAdapterType>(request, requestId, 0, gqlExtra);\n\n const { fullUrl, payload, method } = getRequestValues(request);\n\n return makeRequest((resolve) => {\n const xhr = new XMLHttpRequest();\n xhr.timeout = defaultTimeout;\n\n const abort = () => xhr.abort();\n\n // Inject xhr options\n Object.entries(config).forEach(([name, value]) => {\n xhr[name] = value;\n });\n\n // Open connection\n xhr.open(method, fullUrl, true);\n\n // Set Headers\n Object.entries(headers).forEach(([name, value]) => xhr.setRequestHeader(name, value as string));\n\n // Listen to abort signal\n const unmountListener = createAbortListener(0, gqlExtra, abort, resolve);\n\n // Request handlers\n xhr.upload.onprogress = onRequestProgress;\n\n // Response handlers\n xhr.onloadstart = (): void => {\n onRequestEnd();\n onResponseStart();\n };\n\n xhr.onprogress = onResponseProgress;\n\n xhr.onloadend = () => {\n onResponseEnd();\n unmountListener();\n };\n\n xhr.ontimeout = () => onTimeoutError(0, gqlExtra, resolve);\n\n // Data handler\n xhr.onreadystatechange = (e: Event) => {\n const event = e as unknown as ProgressEvent<XMLHttpRequest>;\n const finishedState = 4;\n\n if (event.target && event.target.readyState === finishedState) {\n const { status } = event.target;\n const success = String(status).startsWith(\"2\") || String(status).startsWith(\"3\");\n const responseHeaders = getResponseHeaders(xhr.getAllResponseHeaders());\n\n if (success) {\n const data = parseResponse(event.target.response);\n onSuccess(data, status, { headers: responseHeaders }, resolve);\n } else {\n // delay to finish after onabort/ontimeout\n const data = parseErrorResponse(event.target.response);\n onError(data, status, { headers: responseHeaders }, resolve);\n }\n }\n };\n\n // Start request\n onBeforeRequest();\n onRequestStart();\n\n xhr.send(payload);\n });\n};\n", "import * as browser from \"@browser-adapter\";\nimport * as server from \"@server-adapter\";\nimport { HttpMethodsEnum, ClientInstance } from \"@hyper-fetch/core\";\nimport { print } from \"graphql/language/printer\";\n\nimport { GraphQLAdapterType, GraphQlEndpointType } from \"adapter\";\n\nexport const graphqlAdapter = (client: ClientInstance) => {\n const adapter: GraphQLAdapterType = async (request, requestId) => {\n if (typeof XMLHttpRequest !== \"undefined\") {\n return browser.adapter(request, requestId);\n }\n return server.adapter(request, requestId);\n };\n\n const mapper = <E extends GraphQlEndpointType>(endpoint: E): string => {\n if (typeof endpoint === \"string\") {\n return endpoint;\n }\n return print(endpoint);\n };\n\n return client\n .setDefaultMethod(HttpMethodsEnum.post)\n .setEndpointMapper(mapper)\n .setAdapter(() => adapter);\n};\n", "import { AdapterType, NegativeTypes, QueryParamsType } from \"@hyper-fetch/core\";\nimport { DocumentNode } from \"graphql/language/ast\";\n\nexport enum GraphQlMethod {\n POST = \"POST\",\n GET = \"GET\",\n}\n\nexport type GraphQlExtraType = { headers: HeadersInit };\n\nexport type GraphQlEndpointType = string | DocumentNode;\n\nexport type GraphQLAdapterType = AdapterType<\n Partial<XMLHttpRequest>,\n GraphQlMethod,\n number,\n GraphQlExtraType,\n QueryParamsType | string,\n GraphQlEndpointType\n>;\n\n// Extract\n\ntype GqlParamType = boolean | string | number | Record<string, any> | NegativeTypes;\n\nexport type ExtractGqlRouteParams<T extends string> = string extends T\n ? NegativeTypes\n : T extends `${string}query ${infer Parameters} {${infer QueryRest}`\n ? Parameters extends `${string}$${infer Param},${infer Rest}`\n ? GqlParameter<Param, Rest> &\n // eslint-disable-next-line @typescript-eslint/ban-types\n (ExtractGqlRouteParams<QueryRest> extends NegativeTypes ? {} : ExtractGqlRouteParams<QueryRest>)\n : Parameters extends `${string}$${infer Param})${infer Rest}`\n ? GqlParameter<Param, Rest> &\n // eslint-disable-next-line @typescript-eslint/ban-types\n (ExtractGqlRouteParams<QueryRest> extends NegativeTypes ? {} : ExtractGqlRouteParams<QueryRest>)\n : NegativeTypes\n : T extends `${string}$${infer Parameters},${infer Rest}`\n ? GqlParameter<Parameters, Rest>\n : T extends `${string}$${infer Parameters})${infer Rest}`\n ? GqlParameter<Parameters, Rest>\n : NegativeTypes;\n\nexport type GqlParameter<T extends string, Rest extends string> = T extends `${infer Param}:${string}!`\n ? { [k in Param]: GqlParamType } & (ExtractGqlRouteParams<Rest> extends NegativeTypes\n ? // eslint-disable-next-line @typescript-eslint/ban-types\n {}\n : ExtractGqlRouteParams<Rest>)\n : T extends `${infer Param}:${string}`\n ? { [k in Param]?: GqlParamType } & (ExtractGqlRouteParams<Rest> extends NegativeTypes\n ? // eslint-disable-next-line @typescript-eslint/ban-types\n {}\n : ExtractGqlRouteParams<Rest>)\n : NegativeTypes;\n", "import { RequestInstance, HttpMethodsEnum } from \"@hyper-fetch/core\";\n\nexport const getRequestValues = (request: RequestInstance) => {\n const { method } = request;\n\n const isPostRequest = request.method === HttpMethodsEnum.post;\n\n const query = request.endpoint;\n const variables = request.data;\n\n const fullUrl = isPostRequest\n ? request.client.url\n : request.client.url + request.client.stringifyQueryParams({ query, variables });\n\n const payload = isPostRequest\n ? JSON.stringify({\n query,\n variables,\n })\n : null;\n\n return { fullUrl, payload, method };\n};\n", "import { DateInterval } from \"@hyper-fetch/core\";\n\nimport { GraphQlExtraType } from \"./adapter.types\";\n\nexport const defaultTimeout = DateInterval.second * 5;\n\nexport const gqlExtra: GraphQlExtraType = {\n headers: {},\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_core", "adapter", "GraphQlMethod", "import_core", "import_core"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
var __async = (__this, __arguments, generator) => {
|
|
2
|
+
return new Promise((resolve, reject) => {
|
|
3
|
+
var fulfilled = (value) => {
|
|
4
|
+
try {
|
|
5
|
+
step(generator.next(value));
|
|
6
|
+
} catch (e) {
|
|
7
|
+
reject(e);
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
var rejected = (value) => {
|
|
11
|
+
try {
|
|
12
|
+
step(generator.throw(value));
|
|
13
|
+
} catch (e) {
|
|
14
|
+
reject(e);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
18
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
// src/adapter/adapter.browser.ts
|
|
23
|
+
import { getAdapterBindings, getResponseHeaders, parseResponse, parseErrorResponse } from "@hyper-fetch/core";
|
|
24
|
+
var adapter = (request, requestId) => __async(void 0, null, function* () {
|
|
25
|
+
const {
|
|
26
|
+
makeRequest,
|
|
27
|
+
config,
|
|
28
|
+
headers,
|
|
29
|
+
onError,
|
|
30
|
+
onResponseEnd,
|
|
31
|
+
onTimeoutError,
|
|
32
|
+
onRequestEnd,
|
|
33
|
+
createAbortListener,
|
|
34
|
+
onResponseProgress,
|
|
35
|
+
onRequestProgress,
|
|
36
|
+
onResponseStart,
|
|
37
|
+
onBeforeRequest,
|
|
38
|
+
onRequestStart,
|
|
39
|
+
onSuccess
|
|
40
|
+
} = yield getAdapterBindings(request, requestId, 0, gqlExtra);
|
|
41
|
+
const { fullUrl, payload, method } = getRequestValues(request);
|
|
42
|
+
return makeRequest((resolve) => {
|
|
43
|
+
const xhr = new XMLHttpRequest();
|
|
44
|
+
xhr.timeout = defaultTimeout;
|
|
45
|
+
const abort = () => xhr.abort();
|
|
46
|
+
Object.entries(config).forEach(([name, value]) => {
|
|
47
|
+
xhr[name] = value;
|
|
48
|
+
});
|
|
49
|
+
xhr.open(method, fullUrl, true);
|
|
50
|
+
Object.entries(headers).forEach(([name, value]) => xhr.setRequestHeader(name, value));
|
|
51
|
+
const unmountListener = createAbortListener(0, gqlExtra, abort, resolve);
|
|
52
|
+
xhr.upload.onprogress = onRequestProgress;
|
|
53
|
+
xhr.onloadstart = () => {
|
|
54
|
+
onRequestEnd();
|
|
55
|
+
onResponseStart();
|
|
56
|
+
};
|
|
57
|
+
xhr.onprogress = onResponseProgress;
|
|
58
|
+
xhr.onloadend = () => {
|
|
59
|
+
onResponseEnd();
|
|
60
|
+
unmountListener();
|
|
61
|
+
};
|
|
62
|
+
xhr.ontimeout = () => onTimeoutError(0, gqlExtra, resolve);
|
|
63
|
+
xhr.onreadystatechange = (e) => {
|
|
64
|
+
const event = e;
|
|
65
|
+
const finishedState = 4;
|
|
66
|
+
if (event.target && event.target.readyState === finishedState) {
|
|
67
|
+
const { status } = event.target;
|
|
68
|
+
const success = String(status).startsWith("2") || String(status).startsWith("3");
|
|
69
|
+
const responseHeaders = getResponseHeaders(xhr.getAllResponseHeaders());
|
|
70
|
+
if (success) {
|
|
71
|
+
const data = parseResponse(event.target.response);
|
|
72
|
+
onSuccess(data, status, { headers: responseHeaders }, resolve);
|
|
73
|
+
} else {
|
|
74
|
+
const data = parseErrorResponse(event.target.response);
|
|
75
|
+
onError(data, status, { headers: responseHeaders }, resolve);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
onBeforeRequest();
|
|
80
|
+
onRequestStart();
|
|
81
|
+
xhr.send(payload);
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
// src/adapter/adapter.ts
|
|
86
|
+
import { HttpMethodsEnum } from "@hyper-fetch/core";
|
|
87
|
+
import { print } from "graphql/language/printer";
|
|
88
|
+
var graphqlAdapter = (client) => {
|
|
89
|
+
const adapter2 = (request, requestId) => __async(void 0, null, function* () {
|
|
90
|
+
if (typeof XMLHttpRequest !== "undefined") {
|
|
91
|
+
return adapter(request, requestId);
|
|
92
|
+
}
|
|
93
|
+
return adapter(request, requestId);
|
|
94
|
+
});
|
|
95
|
+
const mapper = (endpoint) => {
|
|
96
|
+
if (typeof endpoint === "string") {
|
|
97
|
+
return endpoint;
|
|
98
|
+
}
|
|
99
|
+
return print(endpoint);
|
|
100
|
+
};
|
|
101
|
+
return client.setDefaultMethod(HttpMethodsEnum.post).setEndpointMapper(mapper).setAdapter(() => adapter2);
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
// src/adapter/adapter.types.ts
|
|
105
|
+
var GraphQlMethod = /* @__PURE__ */ ((GraphQlMethod2) => {
|
|
106
|
+
GraphQlMethod2["POST"] = "POST";
|
|
107
|
+
GraphQlMethod2["GET"] = "GET";
|
|
108
|
+
return GraphQlMethod2;
|
|
109
|
+
})(GraphQlMethod || {});
|
|
110
|
+
|
|
111
|
+
// src/adapter/adapter.utils.ts
|
|
112
|
+
import { HttpMethodsEnum as HttpMethodsEnum2 } from "@hyper-fetch/core";
|
|
113
|
+
var getRequestValues = (request) => {
|
|
114
|
+
const { method } = request;
|
|
115
|
+
const isPostRequest = request.method === HttpMethodsEnum2.post;
|
|
116
|
+
const query = request.endpoint;
|
|
117
|
+
const variables = request.data;
|
|
118
|
+
const fullUrl = isPostRequest ? request.client.url : request.client.url + request.client.stringifyQueryParams({ query, variables });
|
|
119
|
+
const payload = isPostRequest ? JSON.stringify({
|
|
120
|
+
query,
|
|
121
|
+
variables
|
|
122
|
+
}) : null;
|
|
123
|
+
return { fullUrl, payload, method };
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
// src/adapter/adapter.constants.ts
|
|
127
|
+
import { DateInterval } from "@hyper-fetch/core";
|
|
128
|
+
var defaultTimeout = DateInterval.second * 5;
|
|
129
|
+
var gqlExtra = {
|
|
130
|
+
headers: {}
|
|
131
|
+
};
|
|
132
|
+
export {
|
|
133
|
+
GraphQlMethod,
|
|
134
|
+
defaultTimeout,
|
|
135
|
+
getRequestValues,
|
|
136
|
+
gqlExtra,
|
|
137
|
+
graphqlAdapter
|
|
138
|
+
};
|
|
139
|
+
//# sourceMappingURL=index.esm.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/adapter/adapter.browser.ts", "../../src/adapter/adapter.ts", "../../src/adapter/adapter.types.ts", "../../src/adapter/adapter.utils.ts", "../../src/adapter/adapter.constants.ts"],
|
|
4
|
+
"sourcesContent": ["import { getAdapterBindings, getResponseHeaders, parseResponse, parseErrorResponse } from \"@hyper-fetch/core\";\n\nimport { gqlExtra, GraphQLAdapterType, defaultTimeout, getRequestValues } from \"adapter\";\n\nexport const adapter: GraphQLAdapterType = async (request, requestId) => {\n const {\n makeRequest,\n config,\n headers,\n onError,\n onResponseEnd,\n onTimeoutError,\n onRequestEnd,\n createAbortListener,\n onResponseProgress,\n onRequestProgress,\n onResponseStart,\n onBeforeRequest,\n onRequestStart,\n onSuccess,\n } = await getAdapterBindings<GraphQLAdapterType>(request, requestId, 0, gqlExtra);\n\n const { fullUrl, payload, method } = getRequestValues(request);\n\n return makeRequest((resolve) => {\n const xhr = new XMLHttpRequest();\n xhr.timeout = defaultTimeout;\n\n const abort = () => xhr.abort();\n\n // Inject xhr options\n Object.entries(config).forEach(([name, value]) => {\n xhr[name] = value;\n });\n\n // Open connection\n xhr.open(method, fullUrl, true);\n\n // Set Headers\n Object.entries(headers).forEach(([name, value]) => xhr.setRequestHeader(name, value as string));\n\n // Listen to abort signal\n const unmountListener = createAbortListener(0, gqlExtra, abort, resolve);\n\n // Request handlers\n xhr.upload.onprogress = onRequestProgress;\n\n // Response handlers\n xhr.onloadstart = (): void => {\n onRequestEnd();\n onResponseStart();\n };\n\n xhr.onprogress = onResponseProgress;\n\n xhr.onloadend = () => {\n onResponseEnd();\n unmountListener();\n };\n\n xhr.ontimeout = () => onTimeoutError(0, gqlExtra, resolve);\n\n // Data handler\n xhr.onreadystatechange = (e: Event) => {\n const event = e as unknown as ProgressEvent<XMLHttpRequest>;\n const finishedState = 4;\n\n if (event.target && event.target.readyState === finishedState) {\n const { status } = event.target;\n const success = String(status).startsWith(\"2\") || String(status).startsWith(\"3\");\n const responseHeaders = getResponseHeaders(xhr.getAllResponseHeaders());\n\n if (success) {\n const data = parseResponse(event.target.response);\n onSuccess(data, status, { headers: responseHeaders }, resolve);\n } else {\n // delay to finish after onabort/ontimeout\n const data = parseErrorResponse(event.target.response);\n onError(data, status, { headers: responseHeaders }, resolve);\n }\n }\n };\n\n // Start request\n onBeforeRequest();\n onRequestStart();\n\n xhr.send(payload);\n });\n};\n", "import * as browser from \"@browser-adapter\";\nimport * as server from \"@server-adapter\";\nimport { HttpMethodsEnum, ClientInstance } from \"@hyper-fetch/core\";\nimport { print } from \"graphql/language/printer\";\n\nimport { GraphQLAdapterType, GraphQlEndpointType } from \"adapter\";\n\nexport const graphqlAdapter = (client: ClientInstance) => {\n const adapter: GraphQLAdapterType = async (request, requestId) => {\n if (typeof XMLHttpRequest !== \"undefined\") {\n return browser.adapter(request, requestId);\n }\n return server.adapter(request, requestId);\n };\n\n const mapper = <E extends GraphQlEndpointType>(endpoint: E): string => {\n if (typeof endpoint === \"string\") {\n return endpoint;\n }\n return print(endpoint);\n };\n\n return client\n .setDefaultMethod(HttpMethodsEnum.post)\n .setEndpointMapper(mapper)\n .setAdapter(() => adapter);\n};\n", "import { AdapterType, NegativeTypes, QueryParamsType } from \"@hyper-fetch/core\";\nimport { DocumentNode } from \"graphql/language/ast\";\n\nexport enum GraphQlMethod {\n POST = \"POST\",\n GET = \"GET\",\n}\n\nexport type GraphQlExtraType = { headers: HeadersInit };\n\nexport type GraphQlEndpointType = string | DocumentNode;\n\nexport type GraphQLAdapterType = AdapterType<\n Partial<XMLHttpRequest>,\n GraphQlMethod,\n number,\n GraphQlExtraType,\n QueryParamsType | string,\n GraphQlEndpointType\n>;\n\n// Extract\n\ntype GqlParamType = boolean | string | number | Record<string, any> | NegativeTypes;\n\nexport type ExtractGqlRouteParams<T extends string> = string extends T\n ? NegativeTypes\n : T extends `${string}query ${infer Parameters} {${infer QueryRest}`\n ? Parameters extends `${string}$${infer Param},${infer Rest}`\n ? GqlParameter<Param, Rest> &\n // eslint-disable-next-line @typescript-eslint/ban-types\n (ExtractGqlRouteParams<QueryRest> extends NegativeTypes ? {} : ExtractGqlRouteParams<QueryRest>)\n : Parameters extends `${string}$${infer Param})${infer Rest}`\n ? GqlParameter<Param, Rest> &\n // eslint-disable-next-line @typescript-eslint/ban-types\n (ExtractGqlRouteParams<QueryRest> extends NegativeTypes ? {} : ExtractGqlRouteParams<QueryRest>)\n : NegativeTypes\n : T extends `${string}$${infer Parameters},${infer Rest}`\n ? GqlParameter<Parameters, Rest>\n : T extends `${string}$${infer Parameters})${infer Rest}`\n ? GqlParameter<Parameters, Rest>\n : NegativeTypes;\n\nexport type GqlParameter<T extends string, Rest extends string> = T extends `${infer Param}:${string}!`\n ? { [k in Param]: GqlParamType } & (ExtractGqlRouteParams<Rest> extends NegativeTypes\n ? // eslint-disable-next-line @typescript-eslint/ban-types\n {}\n : ExtractGqlRouteParams<Rest>)\n : T extends `${infer Param}:${string}`\n ? { [k in Param]?: GqlParamType } & (ExtractGqlRouteParams<Rest> extends NegativeTypes\n ? // eslint-disable-next-line @typescript-eslint/ban-types\n {}\n : ExtractGqlRouteParams<Rest>)\n : NegativeTypes;\n", "import { RequestInstance, HttpMethodsEnum } from \"@hyper-fetch/core\";\n\nexport const getRequestValues = (request: RequestInstance) => {\n const { method } = request;\n\n const isPostRequest = request.method === HttpMethodsEnum.post;\n\n const query = request.endpoint;\n const variables = request.data;\n\n const fullUrl = isPostRequest\n ? request.client.url\n : request.client.url + request.client.stringifyQueryParams({ query, variables });\n\n const payload = isPostRequest\n ? JSON.stringify({\n query,\n variables,\n })\n : null;\n\n return { fullUrl, payload, method };\n};\n", "import { DateInterval } from \"@hyper-fetch/core\";\n\nimport { GraphQlExtraType } from \"./adapter.types\";\n\nexport const defaultTimeout = DateInterval.second * 5;\n\nexport const gqlExtra: GraphQlExtraType = {\n headers: {},\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,oBAAoB,oBAAoB,eAAe,0BAA0B;AAInF,IAAM,UAA8B,CAAO,SAAS,cAAc;AACvE,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,MAAM,mBAAuC,SAAS,WAAW,GAAG,QAAQ;AAEhF,QAAM,EAAE,SAAS,SAAS,OAAO,IAAI,iBAAiB,OAAO;AAE7D,SAAO,YAAY,CAAC,YAAY;AAC9B,UAAM,MAAM,IAAI,eAAe;AAC/B,QAAI,UAAU;AAEd,UAAM,QAAQ,MAAM,IAAI,MAAM;AAG9B,WAAO,QAAQ,MAAM,EAAE,QAAQ,CAAC,CAAC,MAAM,KAAK,MAAM;AAChD,UAAI,QAAQ;AAAA,IACd,CAAC;AAGD,QAAI,KAAK,QAAQ,SAAS,IAAI;AAG9B,WAAO,QAAQ,OAAO,EAAE,QAAQ,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,iBAAiB,MAAM,KAAe,CAAC;AAG9F,UAAM,kBAAkB,oBAAoB,GAAG,UAAU,OAAO,OAAO;AAGvE,QAAI,OAAO,aAAa;AAGxB,QAAI,cAAc,MAAY;AAC5B,mBAAa;AACb,sBAAgB;AAAA,IAClB;AAEA,QAAI,aAAa;AAEjB,QAAI,YAAY,MAAM;AACpB,oBAAc;AACd,sBAAgB;AAAA,IAClB;AAEA,QAAI,YAAY,MAAM,eAAe,GAAG,UAAU,OAAO;AAGzD,QAAI,qBAAqB,CAAC,MAAa;AACrC,YAAM,QAAQ;AACd,YAAM,gBAAgB;AAEtB,UAAI,MAAM,UAAU,MAAM,OAAO,eAAe,eAAe;AAC7D,cAAM,EAAE,OAAO,IAAI,MAAM;AACzB,cAAM,UAAU,OAAO,MAAM,EAAE,WAAW,GAAG,KAAK,OAAO,MAAM,EAAE,WAAW,GAAG;AAC/E,cAAM,kBAAkB,mBAAmB,IAAI,sBAAsB,CAAC;AAEtE,YAAI,SAAS;AACX,gBAAM,OAAO,cAAc,MAAM,OAAO,QAAQ;AAChD,oBAAU,MAAM,QAAQ,EAAE,SAAS,gBAAgB,GAAG,OAAO;AAAA,QAC/D,OAAO;AAEL,gBAAM,OAAO,mBAAmB,MAAM,OAAO,QAAQ;AACrD,kBAAQ,MAAM,QAAQ,EAAE,SAAS,gBAAgB,GAAG,OAAO;AAAA,QAC7D;AAAA,MACF;AAAA,IACF;AAGA,oBAAgB;AAChB,mBAAe;AAEf,QAAI,KAAK,OAAO;AAAA,EAClB,CAAC;AACH;;;ACvFA,SAAS,uBAAuC;AAChD,SAAS,aAAa;AAIf,IAAM,iBAAiB,CAAC,WAA2B;AACxD,QAAMA,WAA8B,CAAO,SAAS,cAAc;AAChE,QAAI,OAAO,mBAAmB,aAAa;AACzC,aAAe,QAAQ,SAAS,SAAS;AAAA,IAC3C;AACA,WAAc,QAAQ,SAAS,SAAS;AAAA,EAC1C;AAEA,QAAM,SAAS,CAAgC,aAAwB;AACrE,QAAI,OAAO,aAAa,UAAU;AAChC,aAAO;AAAA,IACT;AACA,WAAO,MAAM,QAAQ;AAAA,EACvB;AAEA,SAAO,OACJ,iBAAiB,gBAAgB,IAAI,EACrC,kBAAkB,MAAM,EACxB,WAAW,MAAMA,QAAO;AAC7B;;;ACvBO,IAAK,gBAAL,kBAAKC,mBAAL;AACL,EAAAA,eAAA,UAAO;AACP,EAAAA,eAAA,SAAM;AAFI,SAAAA;AAAA,GAAA;;;ACHZ,SAA0B,mBAAAC,wBAAuB;AAE1C,IAAM,mBAAmB,CAAC,YAA6B;AAC5D,QAAM,EAAE,OAAO,IAAI;AAEnB,QAAM,gBAAgB,QAAQ,WAAWA,iBAAgB;AAEzD,QAAM,QAAQ,QAAQ;AACtB,QAAM,YAAY,QAAQ;AAE1B,QAAM,UAAU,gBACZ,QAAQ,OAAO,MACf,QAAQ,OAAO,MAAM,QAAQ,OAAO,qBAAqB,EAAE,OAAO,UAAU,CAAC;AAEjF,QAAM,UAAU,gBACZ,KAAK,UAAU;AAAA,IACb;AAAA,IACA;AAAA,EACF,CAAC,IACD;AAEJ,SAAO,EAAE,SAAS,SAAS,OAAO;AACpC;;;ACtBA,SAAS,oBAAoB;AAItB,IAAM,iBAAiB,aAAa,SAAS;AAE7C,IAAM,WAA6B;AAAA,EACxC,SAAS,CAAC;AACZ;",
|
|
6
|
+
"names": ["adapter", "GraphQlMethod", "HttpMethodsEnum"]
|
|
7
|
+
}
|