Socket
Socket
Sign inDemoInstall

@graphiql/toolkit

Package Overview
Dependencies
Maintainers
5
Versions
90
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@graphiql/toolkit - npm Package Compare versions

Comparing version 0.11.0-canary-35904daa.0 to 0.11.0-canary-3bb4b14b.0

dist/esm/chunk-LMOQIXV4.js

6

CHANGELOG.md
# @graphiql/toolkit
## 0.11.0-canary-35904daa.0
## 0.11.0-canary-3bb4b14b.0
### Minor Changes
- [#3746](https://github.com/graphql/graphiql/pull/3746) [`9da88f3`](https://github.com/graphql/graphiql/commit/9da88f310f33efeb4012ca1f038c7f449a1ccdec) Thanks [@dimaMachina](https://github.com/dimaMachina)! - compile with `tsup` instead of `tsc`
- [#3747](https://github.com/graphql/graphiql/pull/3747) [`2b175f5`](https://github.com/graphql/graphiql/commit/2b175f5f17a8424f72c2fbb26ad4bc50244e677c) Thanks [@dimaMachina](https://github.com/dimaMachina)! - do not include `require` statements in ESM build, include `import` in esm and `require` in cjs builds
make `getWsFetcher`, `createWebsocketsFetcherFromUrl` async
## 0.10.0

@@ -10,0 +12,0 @@

@@ -8,33 +8,10 @@ "use strict";

for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var async_helpers_exports = {};

@@ -49,3 +26,3 @@ __export(async_helpers_exports, {

function isPromise(value) {
return typeof value === "object" && value !== null && typeof value.then === "function";
return typeof value == "object" && value !== null && typeof value.then == "function";
}

@@ -56,4 +33,3 @@ function observableToPromise(observable) {

next(v) {
resolve(v);
subscription.unsubscribe();
resolve(v), subscription.unsubscribe();
},

@@ -68,30 +44,17 @@ error: reject,

function isObservable(value) {
return typeof value === "object" && value !== null && "subscribe" in value && typeof value.subscribe === "function";
return typeof value == "object" && value !== null && "subscribe" in value && typeof value.subscribe == "function";
}
function isAsyncIterable(input) {
return typeof input === "object" && input !== null && // Some browsers still don't have Symbol.asyncIterator implemented (iOS Safari)
return typeof input == "object" && input !== null && // Some browsers still don't have Symbol.asyncIterator implemented (iOS Safari)
// That means every custom AsyncIterable must be built using a AsyncGeneratorFunction (async function * () {})
(input[Symbol.toStringTag] === "AsyncGenerator" || Symbol.asyncIterator in input);
}
function asyncIterableToPromise(input) {
return __async(this, null, function* () {
var _a;
const iteratorReturn = (_a = ("return" in input ? input : input[Symbol.asyncIterator]()).return) == null ? void 0 : _a.bind(input);
const iteratorNext = ("next" in input ? input : input[Symbol.asyncIterator]()).next.bind(input);
const result = yield iteratorNext();
void (iteratorReturn == null ? void 0 : iteratorReturn());
return result.value;
});
async function asyncIterableToPromise(input) {
var _a;
const iteratorReturn = (_a = ("return" in input ? input : input[Symbol.asyncIterator]()).return) == null ? void 0 : _a.bind(input), result = await ("next" in input ? input : input[Symbol.asyncIterator]()).next.bind(input)();
return iteratorReturn == null || iteratorReturn(), result.value;
}
function fetcherReturnToPromise(fetcherResult) {
return __async(this, null, function* () {
const result = yield fetcherResult;
if (isAsyncIterable(result)) {
return asyncIterableToPromise(result);
}
if (isObservable(result)) {
return observableToPromise(result);
}
return result;
});
async function fetcherReturnToPromise(fetcherResult) {
const result = await fetcherResult;
return isAsyncIterable(result) ? asyncIterableToPromise(result) : isObservable(result) ? observableToPromise(result) : result;
}

@@ -98,0 +61,0 @@ // Annotate the CommonJS export names for ESM import in node:

@@ -8,13 +8,10 @@ "use strict";

for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var createFetcher_exports = {};

@@ -27,11 +24,9 @@ __export(createFetcher_exports, {

function createGraphiQLFetcher(options) {
const httpFetch = options.fetch || typeof window !== "undefined" && window.fetch;
if (!httpFetch) {
const httpFetch = options.fetch || typeof window != "undefined" && window.fetch;
if (!httpFetch)
throw new Error("No valid fetcher implementation available");
}
options.enableIncrementalDelivery = options.enableIncrementalDelivery !== false;
const simpleFetcher = (0, import_lib.createSimpleFetcher)(options, httpFetch);
const httpFetcher = options.enableIncrementalDelivery ? (0, import_lib.createMultipartFetcher)(options, httpFetch) : simpleFetcher;
return (graphQLParams, fetcherOpts) => {
if (graphQLParams.operationName === "IntrospectionQuery") {
options.enableIncrementalDelivery = options.enableIncrementalDelivery !== !1;
const simpleFetcher = (0, import_lib.createSimpleFetcher)(options, httpFetch), httpFetcher = options.enableIncrementalDelivery ? (0, import_lib.createMultipartFetcher)(options, httpFetch) : simpleFetcher;
return async (graphQLParams, fetcherOpts) => {
if (graphQLParams.operationName === "IntrospectionQuery")
return (options.schemaFetcher || simpleFetcher)(

@@ -41,14 +36,11 @@ graphQLParams,

);
}
const isSubscription = (fetcherOpts == null ? void 0 : fetcherOpts.documentAST) ? (0, import_lib.isSubscriptionWithName)(
if (fetcherOpts != null && fetcherOpts.documentAST ? (0, import_lib.isSubscriptionWithName)(
fetcherOpts.documentAST,
graphQLParams.operationName || void 0
) : false;
if (isSubscription) {
const wsFetcher = (0, import_lib.getWsFetcher)(options, fetcherOpts);
if (!wsFetcher) {
) : !1) {
const wsFetcher = await (0, import_lib.getWsFetcher)(options, fetcherOpts);
if (!wsFetcher)
throw new Error(
`Your GraphiQL createFetcher is not properly configured for websocket subscriptions yet. ${options.subscriptionUrl ? `Provided URL ${options.subscriptionUrl} failed` : "Please provide subscriptionUrl, wsClient or legacyClient option first."}`
);
}
return wsFetcher(graphQLParams);

@@ -55,0 +47,0 @@ }

@@ -8,14 +8,10 @@ "use strict";

for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
}, __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var create_fetcher_exports = {};

@@ -22,0 +18,0 @@ __export(create_fetcher_exports, {

@@ -22,3 +22,3 @@ import { DocumentNode } from 'graphql';

declare const createSimpleFetcher: (options: CreateFetcherOptions, httpFetch: typeof fetch) => Fetcher;
declare const createWebsocketsFetcherFromUrl: (url: string, connectionParams?: ClientOptions['connectionParams']) => Fetcher | undefined;
declare function createWebsocketsFetcherFromUrl(url: string, connectionParams?: ClientOptions['connectionParams']): Promise<Fetcher | void>;
/**

@@ -43,4 +43,4 @@ * Create ws/s fetcher using provided wsClient implementation

*/
declare const getWsFetcher: (options: CreateFetcherOptions, fetcherOpts?: FetcherOpts) => Fetcher | void;
declare function getWsFetcher(options: CreateFetcherOptions, fetcherOpts?: FetcherOpts): Promise<Fetcher | void>;
export { createLegacyWebsocketsFetcher, createMultipartFetcher, createSimpleFetcher, createWebsocketsFetcherFromClient, createWebsocketsFetcherFromUrl, getWsFetcher, isSubscriptionWithName };
"use strict";
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defProp = Object.defineProperty, __defProps = Object.defineProperties, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __getOwnPropDescs = Object.getOwnPropertyDescriptors, __getOwnPropNames = Object.getOwnPropertyNames, __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty, __propIsEnum = Object.prototype.propertyIsEnumerable;
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value, __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
__hasOwnProp.call(b, prop) && __defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
for (var prop of __getOwnPropSymbols(b))
__propIsEnum.call(b, prop) && __defNormalProp(a, prop, b[prop]);
return a;
};
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
}, __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var __await = function(promise, isYieldStar) {
this[0] = promise;
this[1] = isYieldStar;
};
var __asyncGenerator = (__this, __arguments, generator) => {
this[0] = promise, this[1] = isYieldStar;
}, __asyncGenerator = (__this, __arguments, generator) => {
var resume = (k, v, yes, no) => {

@@ -84,61 +48,42 @@ try {

module.exports = __toCommonJS(lib_exports);
var import_graphql = require("graphql");
var import_meros = require("meros");
var import_push_pull_async_iterable_iterator = require("@n1ru4l/push-pull-async-iterable-iterator");
const errorHasCode = (err) => {
return typeof err === "object" && err !== null && "code" in err;
};
const isSubscriptionWithName = (document, name) => {
let isSubscription = false;
(0, import_graphql.visit)(document, {
var import_graphql = require("graphql"), import_meros = require("meros"), import_push_pull_async_iterable_iterator = require("@n1ru4l/push-pull-async-iterable-iterator");
const errorHasCode = (err) => typeof err == "object" && err !== null && "code" in err, isSubscriptionWithName = (document, name) => {
let isSubscription = !1;
return (0, import_graphql.visit)(document, {
OperationDefinition(node) {
var _a;
if (name === ((_a = node.name) == null ? void 0 : _a.value) && node.operation === "subscription") {
isSubscription = true;
}
name === ((_a = node.name) == null ? void 0 : _a.value) && node.operation === "subscription" && (isSubscription = !0);
}
});
return isSubscription;
};
const createSimpleFetcher = (options, httpFetch) => (graphQLParams, fetcherOpts) => __async(void 0, null, function* () {
const data = yield httpFetch(options.url, {
method: "POST",
body: JSON.stringify(graphQLParams),
headers: __spreadValues(__spreadValues({
"content-type": "application/json"
}, options.headers), fetcherOpts == null ? void 0 : fetcherOpts.headers)
});
return data.json();
});
const createWebsocketsFetcherFromUrl = (url, connectionParams) => {
}), isSubscription;
}, createSimpleFetcher = (options, httpFetch) => async (graphQLParams, fetcherOpts) => (await httpFetch(options.url, {
method: "POST",
body: JSON.stringify(graphQLParams),
headers: __spreadValues(__spreadValues({
"content-type": "application/json"
}, options.headers), fetcherOpts == null ? void 0 : fetcherOpts.headers)
})).json();
async function createWebsocketsFetcherFromUrl(url, connectionParams) {
let wsClient;
try {
const { createClient } = require("graphql-ws");
wsClient = createClient({ url, connectionParams });
return createWebsocketsFetcherFromClient(wsClient);
return wsClient = createClient({ url, connectionParams }), createWebsocketsFetcherFromClient(wsClient);
} catch (err) {
if (errorHasCode(err) && err.code === "MODULE_NOT_FOUND") {
if (errorHasCode(err) && err.code === "MODULE_NOT_FOUND")
throw new Error(
"You need to install the 'graphql-ws' package to use websockets when passing a 'subscriptionUrl'"
);
}
console.error(`Error creating websocket client for ${url}`, err);
}
};
}
const createWebsocketsFetcherFromClient = (wsClient) => (graphQLParams) => (0, import_push_pull_async_iterable_iterator.makeAsyncIterableIteratorFromSink)(
(sink) => wsClient.subscribe(graphQLParams, __spreadProps(__spreadValues({}, sink), {
error(err) {
if (err instanceof CloseEvent) {
sink.error(
new Error(
`Socket closed with event ${err.code} ${err.reason || ""}`.trim()
)
);
} else {
sink.error(err);
}
err instanceof CloseEvent ? sink.error(
new Error(
`Socket closed with event ${err.code} ${err.reason || ""}`.trim()
)
) : sink.error(err);
}
}))
);
const createLegacyWebsocketsFetcher = (legacyWsClient) => (graphQLParams) => {
), createLegacyWebsocketsFetcher = (legacyWsClient) => (graphQLParams) => {
const observable = legacyWsClient.request(graphQLParams);

@@ -149,4 +94,3 @@ return (0, import_push_pull_async_iterable_iterator.makeAsyncIterableIteratorFromSink)(

);
};
const createMultipartFetcher = (options, httpFetch) => function(graphQLParams, fetcherOpts) {
}, createMultipartFetcher = (options, httpFetch) => function(graphQLParams, fetcherOpts) {
return __asyncGenerator(this, null, function* () {

@@ -162,10 +106,9 @@ const response = yield new __await(httpFetch(options.url, {

(r) => (0, import_meros.meros)(r, {
multiple: true
multiple: !0
})
));
if (!(0, import_push_pull_async_iterable_iterator.isAsyncIterable)(response)) {
if (!(0, import_push_pull_async_iterable_iterator.isAsyncIterable)(response))
return yield response.json();
}
try {
for (var iter = __forAwait(response), more, temp, error; more = !(temp = yield new __await(iter.next())).done; more = false) {
for (var iter = __forAwait(response), more, temp, error; more = !(temp = yield new __await(iter.next())).done; more = !1) {
const chunk = temp.value;

@@ -199,14 +142,11 @@ if (chunk.some((part) => !part.json)) {

};
const getWsFetcher = (options, fetcherOpts) => {
if (options.wsClient) {
async function getWsFetcher(options, fetcherOpts) {
if (options.wsClient)
return createWebsocketsFetcherFromClient(options.wsClient);
}
if (options.subscriptionUrl) {
if (options.subscriptionUrl)
return createWebsocketsFetcherFromUrl(options.subscriptionUrl, __spreadValues(__spreadValues({}, options.wsConnectionParams), fetcherOpts == null ? void 0 : fetcherOpts.headers));
}
const legacyWebsocketsClient = options.legacyClient || options.legacyWsClient;
if (legacyWebsocketsClient) {
if (legacyWebsocketsClient)
return createLegacyWebsocketsFetcher(legacyWebsocketsClient);
}
};
}
// Annotate the CommonJS export names for ESM import in node:

@@ -213,0 +153,0 @@ 0 && (module.exports = {

@@ -7,11 +7,9 @@ "use strict";

var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var types_exports = {};
module.exports = __toCommonJS(types_exports);
"use strict";
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
var __defProp = Object.defineProperty, __defProps = Object.defineProperties, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __getOwnPropDescs = Object.getOwnPropertyDescriptors, __getOwnPropNames = Object.getOwnPropertyNames, __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty, __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value, __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
__hasOwnProp.call(b, prop) && __defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
for (var prop of __getOwnPropSymbols(b))
__propIsEnum.call(b, prop) && __defNormalProp(a, prop, b[prop]);
return a;
};
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
}, __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var format_exports = {};

@@ -53,14 +39,8 @@ __export(format_exports, {

function handleSingleError(error) {
if (error instanceof Error) {
return formatSingleError(error);
}
return error;
return error instanceof Error ? formatSingleError(error) : error;
}
function formatError(error) {
if (Array.isArray(error)) {
return stringify({
errors: error.map((e) => handleSingleError(e))
});
}
return stringify({ errors: [handleSingleError(error)] });
return Array.isArray(error) ? stringify({
errors: error.map((e) => handleSingleError(e))
}) : stringify({ errors: [handleSingleError(error)] });
}

@@ -67,0 +47,0 @@ function formatResult(result) {

@@ -8,13 +8,10 @@ "use strict";

for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var auto_complete_exports = {};

@@ -28,5 +25,4 @@ __export(auto_complete_exports, {

const insertions = [];
if (!schema || !docString) {
if (!schema || !docString)
return { insertions, result: docString };
}
let ast;

@@ -38,5 +34,4 @@ try {

}
const fieldNameFn = getDefaultFieldNames || defaultGetDefaultFieldNames;
const typeInfo = new import_graphql.TypeInfo(schema);
(0, import_graphql.visit)(ast, {
const fieldNameFn = getDefaultFieldNames || defaultGetDefaultFieldNames, typeInfo = new import_graphql.TypeInfo(schema);
return (0, import_graphql.visit)(ast, {
leave(node) {

@@ -46,6 +41,4 @@ typeInfo.leave(node);

enter(node) {
typeInfo.enter(node);
if (node.kind === "Field" && !node.selectionSet) {
const fieldType = typeInfo.getType();
const selectionSet = buildSelectionSet(
if (typeInfo.enter(node), node.kind === "Field" && !node.selectionSet) {
const fieldType = typeInfo.getType(), selectionSet = buildSelectionSet(
isFieldType(fieldType),

@@ -58,3 +51,5 @@ fieldNameFn

index: node.loc.end,
string: " " + (0, import_graphql.print)(selectionSet).replaceAll("\n", "\n" + indent)
string: " " + (0, import_graphql.print)(selectionSet).replaceAll(`
`, `
` + indent)
});

@@ -64,4 +59,3 @@ }

}
});
return {
}), {
insertions,

@@ -72,21 +66,14 @@ result: withInsertions(docString, insertions)

function defaultGetDefaultFieldNames(type) {
if (!("getFields" in type)) {
if (!("getFields" in type))
return [];
}
const fields = type.getFields();
if (fields.id) {
if (fields.id)
return ["id"];
}
if (fields.edges) {
if (fields.edges)
return ["edges"];
}
if (fields.node) {
if (fields.node)
return ["node"];
}
const leafFieldNames = [];
for (const fieldName of Object.keys(fields)) {
if ((0, import_graphql.isLeafType)(fields[fieldName].type)) {
leafFieldNames.push(fieldName);
}
}
for (const fieldName of Object.keys(fields))
(0, import_graphql.isLeafType)(fields[fieldName].type) && leafFieldNames.push(fieldName);
return leafFieldNames;

@@ -96,52 +83,38 @@ }

const namedType = (0, import_graphql.getNamedType)(type);
if (!type || (0, import_graphql.isLeafType)(type)) {
if (!type || (0, import_graphql.isLeafType)(type))
return;
}
const fieldNames = getDefaultFieldNames(namedType);
if (!Array.isArray(fieldNames) || fieldNames.length === 0 || !("getFields" in namedType)) {
return;
}
return {
kind: import_graphql.Kind.SELECTION_SET,
selections: fieldNames.map((fieldName) => {
const fieldDef = namedType.getFields()[fieldName];
const fieldType = fieldDef ? fieldDef.type : null;
return {
kind: import_graphql.Kind.FIELD,
name: {
kind: import_graphql.Kind.NAME,
value: fieldName
},
// we can use as here, because we already know that fieldType
// comes from an origin parameter
selectionSet: buildSelectionSet(fieldType, getDefaultFieldNames)
};
})
};
if (!(!Array.isArray(fieldNames) || fieldNames.length === 0 || !("getFields" in namedType)))
return {
kind: import_graphql.Kind.SELECTION_SET,
selections: fieldNames.map((fieldName) => {
const fieldDef = namedType.getFields()[fieldName], fieldType = fieldDef ? fieldDef.type : null;
return {
kind: import_graphql.Kind.FIELD,
name: {
kind: import_graphql.Kind.NAME,
value: fieldName
},
// we can use as here, because we already know that fieldType
// comes from an origin parameter
selectionSet: buildSelectionSet(fieldType, getDefaultFieldNames)
};
})
};
}
function withInsertions(initial, insertions) {
if (insertions.length === 0) {
if (insertions.length === 0)
return initial;
}
let edited = "";
let prevIndex = 0;
for (const { index, string } of insertions) {
edited += initial.slice(prevIndex, index) + string;
prevIndex = index;
}
edited += initial.slice(prevIndex);
return edited;
let edited = "", prevIndex = 0;
for (const { index, string } of insertions)
edited += initial.slice(prevIndex, index) + string, prevIndex = index;
return edited += initial.slice(prevIndex), edited;
}
function getIndentation(str, index) {
let indentStart = index;
let indentEnd = index;
while (indentStart) {
let indentStart = index, indentEnd = index;
for (; indentStart; ) {
const c = str.charCodeAt(indentStart - 1);
if (c === 10 || c === 13 || c === 8232 || c === 8233) {
if (c === 10 || c === 13 || c === 8232 || c === 8233)
break;
}
indentStart--;
if (c !== 9 && c !== 11 && c !== 12 && c !== 32 && c !== 160) {
indentEnd = indentStart;
}
indentStart--, c !== 9 && c !== 11 && c !== 12 && c !== 32 && c !== 160 && (indentEnd = indentStart);
}

@@ -151,5 +124,4 @@ return str.slice(indentStart, indentEnd);

function isFieldType(fieldType) {
if (fieldType) {
if (fieldType)
return fieldType;
}
}

@@ -156,0 +128,0 @@ // Annotate the CommonJS export names for ESM import in node:

@@ -7,11 +7,8 @@ "use strict";

var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
}, __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var graphql_helpers_exports = {};

@@ -18,0 +15,0 @@ module.exports = __toCommonJS(graphql_helpers_exports);

"use strict";
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
var __defProp = Object.defineProperty, __defProps = Object.defineProperties, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __getOwnPropDescs = Object.getOwnPropertyDescriptors, __getOwnPropNames = Object.getOwnPropertyNames, __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty, __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value, __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
__hasOwnProp.call(b, prop) && __defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
for (var prop of __getOwnPropSymbols(b))
__propIsEnum.call(b, prop) && __defNormalProp(a, prop, b[prop]);
return a;
};
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
}, __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var merge_ast_exports = {};

@@ -44,12 +30,10 @@ __export(merge_ast_exports, {

var _a;
const FilteredMap = /* @__PURE__ */ new Map();
const result = [];
for (const item of array) {
const FilteredMap = /* @__PURE__ */ new Map(), result = [];
for (const item of array)
if (item.kind === "Field") {
const uniqueValue = iteratee(item);
const existing = FilteredMap.get(uniqueValue);
if ((_a = item.directives) == null ? void 0 : _a.length) {
const uniqueValue = iteratee(item), existing = FilteredMap.get(uniqueValue);
if ((_a = item.directives) != null && _a.length) {
const itemClone = __spreadValues({}, item);
result.push(itemClone);
} else if ((existing == null ? void 0 : existing.selectionSet) && item.selectionSet) {
} else if (existing != null && existing.selectionSet && item.selectionSet)
existing.selectionSet.selections = [

@@ -59,11 +43,8 @@ ...existing.selectionSet.selections,

];
} else if (!existing) {
else if (!existing) {
const itemClone = __spreadValues({}, item);
FilteredMap.set(uniqueValue, itemClone);
result.push(itemClone);
FilteredMap.set(uniqueValue, itemClone), result.push(itemClone);
}
} else {
} else
result.push(item);
}
}
return result;

@@ -73,5 +54,3 @@ }

var _a;
const selectionSetTypeName = selectionSetType ? (0, import_graphql.getNamedType)(selectionSetType).name : null;
const outputSelections = [];
const seenSpreads = [];
const selectionSetTypeName = selectionSetType ? (0, import_graphql.getNamedType)(selectionSetType).name : null, outputSelections = [], seenSpreads = [];
for (let selection of selections) {

@@ -81,7 +60,5 @@ if (selection.kind === "FragmentSpread") {

if (!selection.directives || selection.directives.length === 0) {
if (seenSpreads.includes(fragmentName)) {
if (seenSpreads.includes(fragmentName))
continue;
} else {
seenSpreads.push(fragmentName);
}
seenSpreads.push(fragmentName);
}

@@ -118,9 +95,5 @@ const fragmentDefinition = fragmentDefinitions[selection.name.value];

function mergeAst(documentAST, schema) {
const typeInfo = schema ? new import_graphql.TypeInfo(schema) : null;
const fragmentDefinitions = /* @__PURE__ */ Object.create(null);
for (const definition of documentAST.definitions) {
if (definition.kind === import_graphql.Kind.FRAGMENT_DEFINITION) {
fragmentDefinitions[definition.name.value] = definition;
}
}
const typeInfo = schema ? new import_graphql.TypeInfo(schema) : null, fragmentDefinitions = /* @__PURE__ */ Object.create(null);
for (const definition of documentAST.definitions)
definition.kind === import_graphql.Kind.FRAGMENT_DEFINITION && (fragmentDefinitions[definition.name.value] = definition);
const flattenVisitors = {

@@ -130,8 +103,7 @@ SelectionSet(node) {

let { selections } = node;
selections = inlineRelevantFragmentSpreads(
return selections = inlineRelevantFragmentSpreads(
fragmentDefinitions,
selections,
selectionSetType
);
return __spreadProps(__spreadValues({}, node), {
), __spreadProps(__spreadValues({}, node), {
selections

@@ -143,15 +115,13 @@ });

}
};
const flattenedAST = (0, import_graphql.visit)(
}, flattenedAST = (0, import_graphql.visit)(
documentAST,
typeInfo ? (0, import_graphql.visitWithTypeInfo)(typeInfo, flattenVisitors) : flattenVisitors
);
const deduplicateVisitors = {
return (0, import_graphql.visit)(flattenedAST, {
SelectionSet(node) {
let { selections } = node;
selections = uniqueBy(
return selections = uniqueBy(
selections,
(selection) => selection.alias ? selection.alias.value : selection.name.value
);
return __spreadProps(__spreadValues({}, node), {
), __spreadProps(__spreadValues({}, node), {
selections

@@ -163,4 +133,3 @@ });

}
};
return (0, import_graphql.visit)(flattenedAST, deduplicateVisitors);
});
}

@@ -167,0 +136,0 @@ // Annotate the CommonJS export names for ESM import in node:

@@ -8,13 +8,10 @@ "use strict";

for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var operation_name_exports = {};

@@ -26,5 +23,4 @@ __export(operation_name_exports, {

function getSelectedOperationName(prevOperations, prevSelectedOperationName, operations) {
if (!operations || operations.length < 1) {
if (!operations || operations.length < 1)
return;
}
const names = operations.map((op) => {

@@ -34,14 +30,11 @@ var _a;

});
if (prevSelectedOperationName && names.includes(prevSelectedOperationName)) {
if (prevSelectedOperationName && names.includes(prevSelectedOperationName))
return prevSelectedOperationName;
}
if (prevSelectedOperationName && prevOperations) {
const prevNames = prevOperations.map((op) => {
const prevIndex = prevOperations.map((op) => {
var _a;
return (_a = op.name) == null ? void 0 : _a.value;
});
const prevIndex = prevNames.indexOf(prevSelectedOperationName);
if (prevIndex !== -1 && prevIndex < names.length) {
}).indexOf(prevSelectedOperationName);
if (prevIndex !== -1 && prevIndex < names.length)
return names[prevIndex];
}
}

@@ -48,0 +41,0 @@ return names[0];

@@ -7,11 +7,8 @@ "use strict";

var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
}, __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var src_exports = {};

@@ -18,0 +15,0 @@ module.exports = __toCommonJS(src_exports);

@@ -8,13 +8,10 @@ "use strict";

for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var base_exports = {};

@@ -36,59 +33,36 @@ __export(base_exports, {

constructor(storage) {
if (storage) {
this.storage = storage;
} else if (storage === null) {
this.storage = null;
} else if (typeof window === "undefined") {
this.storage = null;
} else {
this.storage = {
getItem: localStorage.getItem.bind(localStorage),
setItem: localStorage.setItem.bind(localStorage),
removeItem: localStorage.removeItem.bind(localStorage),
get length() {
let keys = 0;
for (const key in localStorage) {
if (key.indexOf(`${STORAGE_NAMESPACE}:`) === 0) {
keys += 1;
}
}
return keys;
},
clear() {
for (const key in localStorage) {
if (key.indexOf(`${STORAGE_NAMESPACE}:`) === 0) {
localStorage.removeItem(key);
}
}
}
};
}
storage ? this.storage = storage : storage === null ? this.storage = null : typeof window == "undefined" ? this.storage = null : this.storage = {
getItem: localStorage.getItem.bind(localStorage),
setItem: localStorage.setItem.bind(localStorage),
removeItem: localStorage.removeItem.bind(localStorage),
get length() {
let keys = 0;
for (const key in localStorage)
key.indexOf(`${STORAGE_NAMESPACE}:`) === 0 && (keys += 1);
return keys;
},
clear() {
for (const key in localStorage)
key.indexOf(`${STORAGE_NAMESPACE}:`) === 0 && localStorage.removeItem(key);
}
};
}
get(name) {
if (!this.storage) {
if (!this.storage)
return null;
}
const key = `${STORAGE_NAMESPACE}:${name}`;
const value = this.storage.getItem(key);
if (value === "null" || value === "undefined") {
this.storage.removeItem(key);
return null;
}
return value || null;
const key = `${STORAGE_NAMESPACE}:${name}`, value = this.storage.getItem(key);
return value === "null" || value === "undefined" ? (this.storage.removeItem(key), null) : value || null;
}
set(name, value) {
let quotaError = false;
let error = null;
let quotaError = !1, error = null;
if (this.storage) {
const key = `${STORAGE_NAMESPACE}:${name}`;
if (value) {
if (value)
try {
this.storage.setItem(key, value);
} catch (e) {
error = e instanceof Error ? e : new Error(`${e}`);
quotaError = isQuotaError(this.storage, e);
error = e instanceof Error ? e : new Error(`${e}`), quotaError = isQuotaError(this.storage, e);
}
} else {
else
this.storage.removeItem(key);
}
}

@@ -98,5 +72,3 @@ return { isQuotaError: quotaError, error };

clear() {
if (this.storage) {
this.storage.clear();
}
this.storage && this.storage.clear();
}

@@ -103,0 +75,0 @@ }

@@ -8,13 +8,10 @@ "use strict";

for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var custom_exports = {};

@@ -28,5 +25,4 @@ __export(custom_exports, {

}) {
const storageKeyPrefix = `${namespace}:`;
const getStorageKey = (key) => `${storageKeyPrefix}${key}`;
const storage = {
const storageKeyPrefix = `${namespace}:`, getStorageKey = (key) => `${storageKeyPrefix}${key}`;
return {
setItem: (key, value) => localStorage.setItem(getStorageKey(key), value),

@@ -37,18 +33,11 @@ getItem: (key) => localStorage.getItem(getStorageKey(key)),

let keys = 0;
for (const key in localStorage) {
if (key.indexOf(storageKeyPrefix) === 0) {
keys += 1;
}
}
for (const key in localStorage)
key.indexOf(storageKeyPrefix) === 0 && (keys += 1);
return keys;
},
clear() {
for (const key in localStorage) {
if (key.indexOf(storageKeyPrefix) === 0) {
localStorage.removeItem(key);
}
}
for (const key in localStorage)
key.indexOf(storageKeyPrefix) === 0 && localStorage.removeItem(key);
}
};
return storage;
}

@@ -55,0 +44,0 @@ // Annotate the CommonJS export names for ESM import in node:

"use strict";
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
var __defProp = Object.defineProperty, __defProps = Object.defineProperties, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __getOwnPropDescs = Object.getOwnPropertyDescriptors, __getOwnPropNames = Object.getOwnPropertyNames, __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty, __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: !0, configurable: !0, writable: !0, value }) : obj[key] = value, __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
__hasOwnProp.call(b, prop) && __defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
for (var prop of __getOwnPropSymbols(b))
__propIsEnum.call(b, prop) && __defNormalProp(a, prop, b[prop]);
return a;
};
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
}, __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var history_exports = {};

@@ -41,4 +27,3 @@ __export(history_exports, {

module.exports = __toCommonJS(history_exports);
var import_graphql = require("graphql");
var import_query = require("./query");
var import_graphql = require("graphql"), import_query = require("./query");
const MAX_QUERY_SIZE = 1e5;

@@ -60,5 +45,4 @@ class HistoryStore {

this.history.fetchRecent()
)) {
))
return;
}
this.history.push({

@@ -70,7 +54,6 @@ query,

});
const historyQueries = this.history.items;
const favoriteQueries = this.favorite.items;
const historyQueries = this.history.items, favoriteQueries = this.favorite.items;
this.queries = historyQueries.concat(favoriteQueries);
};
this.deleteHistory = ({ query, variables, headers, operationName, favorite }, clearFavorites = false) => {
this.deleteHistory = ({ query, variables, headers, operationName, favorite }, clearFavorites = !1) => {
function deleteFromStore(store) {

@@ -80,13 +63,5 @@ const found = store.items.find(

);
if (found) {
store.delete(found);
}
found && store.delete(found);
}
if (favorite || clearFavorites) {
deleteFromStore(this.favorite);
}
if (!favorite || clearFavorites) {
deleteFromStore(this.history);
}
this.queries = [...this.history.items, ...this.favorite.items];
(favorite || clearFavorites) && deleteFromStore(this.favorite), (!favorite || clearFavorites) && deleteFromStore(this.history), this.queries = [...this.history.items, ...this.favorite.items];
};

@@ -97,35 +72,13 @@ this.history = new import_query.QueryStore(

this.maxHistoryLength
);
this.favorite = new import_query.QueryStore("favorites", this.storage, null);
this.queries = [...this.history.fetchAll(), ...this.favorite.fetchAll()];
), this.favorite = new import_query.QueryStore("favorites", this.storage, null), this.queries = [...this.history.fetchAll(), ...this.favorite.fetchAll()];
}
shouldSaveQuery(query, variables, headers, lastQuerySaved) {
if (!query) {
return false;
}
if (!query)
return !1;
try {
(0, import_graphql.parse)(query);
} catch (e) {
return false;
return !1;
}
if (query.length > MAX_QUERY_SIZE) {
return false;
}
if (!lastQuerySaved) {
return true;
}
if (JSON.stringify(query) === JSON.stringify(lastQuerySaved.query)) {
if (JSON.stringify(variables) === JSON.stringify(lastQuerySaved.variables)) {
if (JSON.stringify(headers) === JSON.stringify(lastQuerySaved.headers)) {
return false;
}
if (headers && !lastQuerySaved.headers) {
return false;
}
}
if (variables && !lastQuerySaved.variables) {
return false;
}
}
return true;
return query.length > MAX_QUERY_SIZE ? !1 : lastQuerySaved ? !(JSON.stringify(query) === JSON.stringify(lastQuerySaved.query) && (JSON.stringify(variables) === JSON.stringify(lastQuerySaved.variables) && (JSON.stringify(headers) === JSON.stringify(lastQuerySaved.headers) || headers && !lastQuerySaved.headers) || variables && !lastQuerySaved.variables)) : !0;
}

@@ -147,12 +100,3 @@ toggleFavorite({

};
if (favorite) {
item.favorite = false;
this.favorite.delete(item);
this.history.push(item);
} else {
item.favorite = true;
this.favorite.push(item);
this.history.delete(item);
}
this.queries = [...this.history.items, ...this.favorite.items];
favorite ? (item.favorite = !1, this.favorite.delete(item), this.history.push(item)) : (item.favorite = !0, this.favorite.push(item), this.history.delete(item)), this.queries = [...this.history.items, ...this.favorite.items];
}

@@ -174,8 +118,3 @@ editLabel({

};
if (favorite) {
this.favorite.edit(__spreadProps(__spreadValues({}, item), { favorite }), index);
} else {
this.history.edit(item, index);
}
this.queries = [...this.history.items, ...this.favorite.items];
favorite ? this.favorite.edit(__spreadProps(__spreadValues({}, item), { favorite }), index) : this.history.edit(item, index), this.queries = [...this.history.items, ...this.favorite.items];
}

@@ -182,0 +121,0 @@ }

@@ -7,11 +7,8 @@ "use strict";

var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
}, __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var storage_exports = {};

@@ -18,0 +15,0 @@ module.exports = __toCommonJS(storage_exports);

@@ -8,13 +8,10 @@ "use strict";

for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
__defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
if (from && typeof from == "object" || typeof from == "function")
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var query_exports = {};

@@ -41,7 +38,6 @@ __export(query_exports, {

edit(item, index) {
if (typeof index === "number" && this.items[index]) {
if (typeof index == "number" && this.items[index]) {
const found = this.items[index];
if (found.query === item.query && found.variables === item.variables && found.headers === item.headers && found.operationName === item.operationName) {
this.items.splice(index, 1, item);
this.save();
this.items.splice(index, 1, item), this.save();
return;

@@ -53,6 +49,3 @@ }

);
if (itemIndex !== -1) {
this.items.splice(itemIndex, 1, item);
this.save();
}
itemIndex !== -1 && (this.items.splice(itemIndex, 1, item), this.save());
}

@@ -63,6 +56,3 @@ delete(item) {

);
if (itemIndex !== -1) {
this.items.splice(itemIndex, 1);
this.save();
}
itemIndex !== -1 && (this.items.splice(itemIndex, 1), this.save());
}

@@ -74,12 +64,7 @@ fetchRecent() {

const raw = this.storage.get(this.key);
if (raw) {
return JSON.parse(raw)[this.key];
}
return [];
return raw ? JSON.parse(raw)[this.key] : [];
}
push(item) {
const items = [...this.items, item];
if (this.maxSize && items.length > this.maxSize) {
items.shift();
}
this.maxSize && items.length > this.maxSize && items.shift();
for (let attempts = 0; attempts < 5; attempts++) {

@@ -90,9 +75,8 @@ const response = this.storage.set(

);
if (!(response == null ? void 0 : response.error)) {
if (!(response != null && response.error))
this.items = items;
} else if (response.isQuotaError && this.maxSize) {
else if (response.isQuotaError && this.maxSize)
items.shift();
} else {
else
return;
}
}

@@ -99,0 +83,0 @@ }

@@ -1,6 +0,4 @@

import {
__async
} from "../chunk-P5H5YIIE.js";
import "../chunk-LMOQIXV4.js";
function isPromise(value) {
return typeof value === "object" && value !== null && typeof value.then === "function";
return typeof value == "object" && value !== null && typeof value.then == "function";
}

@@ -11,4 +9,3 @@ function observableToPromise(observable) {

next(v) {
resolve(v);
subscription.unsubscribe();
resolve(v), subscription.unsubscribe();
},

@@ -23,30 +20,17 @@ error: reject,

function isObservable(value) {
return typeof value === "object" && value !== null && "subscribe" in value && typeof value.subscribe === "function";
return typeof value == "object" && value !== null && "subscribe" in value && typeof value.subscribe == "function";
}
function isAsyncIterable(input) {
return typeof input === "object" && input !== null && // Some browsers still don't have Symbol.asyncIterator implemented (iOS Safari)
return typeof input == "object" && input !== null && // Some browsers still don't have Symbol.asyncIterator implemented (iOS Safari)
// That means every custom AsyncIterable must be built using a AsyncGeneratorFunction (async function * () {})
(input[Symbol.toStringTag] === "AsyncGenerator" || Symbol.asyncIterator in input);
}
function asyncIterableToPromise(input) {
return __async(this, null, function* () {
var _a;
const iteratorReturn = (_a = ("return" in input ? input : input[Symbol.asyncIterator]()).return) == null ? void 0 : _a.bind(input);
const iteratorNext = ("next" in input ? input : input[Symbol.asyncIterator]()).next.bind(input);
const result = yield iteratorNext();
void (iteratorReturn == null ? void 0 : iteratorReturn());
return result.value;
});
async function asyncIterableToPromise(input) {
var _a;
const iteratorReturn = (_a = ("return" in input ? input : input[Symbol.asyncIterator]()).return) == null ? void 0 : _a.bind(input), result = await ("next" in input ? input : input[Symbol.asyncIterator]()).next.bind(input)();
return iteratorReturn == null || iteratorReturn(), result.value;
}
function fetcherReturnToPromise(fetcherResult) {
return __async(this, null, function* () {
const result = yield fetcherResult;
if (isAsyncIterable(result)) {
return asyncIterableToPromise(result);
}
if (isObservable(result)) {
return observableToPromise(result);
}
return result;
});
async function fetcherReturnToPromise(fetcherResult) {
const result = await fetcherResult;
return isAsyncIterable(result) ? asyncIterableToPromise(result) : isObservable(result) ? observableToPromise(result) : result;
}

@@ -53,0 +37,0 @@ export {

@@ -1,2 +0,2 @@

import "../chunk-P5H5YIIE.js";
import "../chunk-LMOQIXV4.js";
import {

@@ -9,11 +9,9 @@ createMultipartFetcher,

function createGraphiQLFetcher(options) {
const httpFetch = options.fetch || typeof window !== "undefined" && window.fetch;
if (!httpFetch) {
const httpFetch = options.fetch || typeof window != "undefined" && window.fetch;
if (!httpFetch)
throw new Error("No valid fetcher implementation available");
}
options.enableIncrementalDelivery = options.enableIncrementalDelivery !== false;
const simpleFetcher = createSimpleFetcher(options, httpFetch);
const httpFetcher = options.enableIncrementalDelivery ? createMultipartFetcher(options, httpFetch) : simpleFetcher;
return (graphQLParams, fetcherOpts) => {
if (graphQLParams.operationName === "IntrospectionQuery") {
options.enableIncrementalDelivery = options.enableIncrementalDelivery !== !1;
const simpleFetcher = createSimpleFetcher(options, httpFetch), httpFetcher = options.enableIncrementalDelivery ? createMultipartFetcher(options, httpFetch) : simpleFetcher;
return async (graphQLParams, fetcherOpts) => {
if (graphQLParams.operationName === "IntrospectionQuery")
return (options.schemaFetcher || simpleFetcher)(

@@ -23,14 +21,11 @@ graphQLParams,

);
}
const isSubscription = (fetcherOpts == null ? void 0 : fetcherOpts.documentAST) ? isSubscriptionWithName(
if (fetcherOpts != null && fetcherOpts.documentAST ? isSubscriptionWithName(
fetcherOpts.documentAST,
graphQLParams.operationName || void 0
) : false;
if (isSubscription) {
const wsFetcher = getWsFetcher(options, fetcherOpts);
if (!wsFetcher) {
) : !1) {
const wsFetcher = await getWsFetcher(options, fetcherOpts);
if (!wsFetcher)
throw new Error(
`Your GraphiQL createFetcher is not properly configured for websocket subscriptions yet. ${options.subscriptionUrl ? `Provided URL ${options.subscriptionUrl} failed` : "Please provide subscriptionUrl, wsClient or legacyClient option first."}`
);
}
return wsFetcher(graphQLParams);

@@ -37,0 +32,0 @@ }

@@ -1,2 +0,2 @@

import "../chunk-P5H5YIIE.js";
import "../chunk-LMOQIXV4.js";
export * from "./types";

@@ -3,0 +3,0 @@ import { createGraphiQLFetcher } from "./createFetcher";

import {
__async,
__asyncGenerator,

@@ -8,3 +7,3 @@ __await,

__spreadValues
} from "../chunk-P5H5YIIE.js";
} from "../chunk-LMOQIXV4.js";
import { visit } from "graphql";

@@ -16,58 +15,41 @@ import { meros } from "meros";

} from "@n1ru4l/push-pull-async-iterable-iterator";
const errorHasCode = (err) => {
return typeof err === "object" && err !== null && "code" in err;
};
const isSubscriptionWithName = (document, name) => {
let isSubscription = false;
visit(document, {
const errorHasCode = (err) => typeof err == "object" && err !== null && "code" in err, isSubscriptionWithName = (document, name) => {
let isSubscription = !1;
return visit(document, {
OperationDefinition(node) {
var _a;
if (name === ((_a = node.name) == null ? void 0 : _a.value) && node.operation === "subscription") {
isSubscription = true;
}
name === ((_a = node.name) == null ? void 0 : _a.value) && node.operation === "subscription" && (isSubscription = !0);
}
});
return isSubscription;
};
const createSimpleFetcher = (options, httpFetch) => (graphQLParams, fetcherOpts) => __async(void 0, null, function* () {
const data = yield httpFetch(options.url, {
method: "POST",
body: JSON.stringify(graphQLParams),
headers: __spreadValues(__spreadValues({
"content-type": "application/json"
}, options.headers), fetcherOpts == null ? void 0 : fetcherOpts.headers)
});
return data.json();
});
const createWebsocketsFetcherFromUrl = (url, connectionParams) => {
}), isSubscription;
}, createSimpleFetcher = (options, httpFetch) => async (graphQLParams, fetcherOpts) => (await httpFetch(options.url, {
method: "POST",
body: JSON.stringify(graphQLParams),
headers: __spreadValues(__spreadValues({
"content-type": "application/json"
}, options.headers), fetcherOpts == null ? void 0 : fetcherOpts.headers)
})).json();
async function createWebsocketsFetcherFromUrl(url, connectionParams) {
let wsClient;
try {
const { createClient } = require("graphql-ws");
wsClient = createClient({ url, connectionParams });
return createWebsocketsFetcherFromClient(wsClient);
const { createClient } = await import("graphql-ws");
return wsClient = createClient({ url, connectionParams }), createWebsocketsFetcherFromClient(wsClient);
} catch (err) {
if (errorHasCode(err) && err.code === "MODULE_NOT_FOUND") {
if (errorHasCode(err) && err.code === "MODULE_NOT_FOUND")
throw new Error(
"You need to install the 'graphql-ws' package to use websockets when passing a 'subscriptionUrl'"
);
}
console.error(`Error creating websocket client for ${url}`, err);
}
};
}
const createWebsocketsFetcherFromClient = (wsClient) => (graphQLParams) => makeAsyncIterableIteratorFromSink(
(sink) => wsClient.subscribe(graphQLParams, __spreadProps(__spreadValues({}, sink), {
error(err) {
if (err instanceof CloseEvent) {
sink.error(
new Error(
`Socket closed with event ${err.code} ${err.reason || ""}`.trim()
)
);
} else {
sink.error(err);
}
err instanceof CloseEvent ? sink.error(
new Error(
`Socket closed with event ${err.code} ${err.reason || ""}`.trim()
)
) : sink.error(err);
}
}))
);
const createLegacyWebsocketsFetcher = (legacyWsClient) => (graphQLParams) => {
), createLegacyWebsocketsFetcher = (legacyWsClient) => (graphQLParams) => {
const observable = legacyWsClient.request(graphQLParams);

@@ -78,4 +60,3 @@ return makeAsyncIterableIteratorFromSink(

);
};
const createMultipartFetcher = (options, httpFetch) => function(graphQLParams, fetcherOpts) {
}, createMultipartFetcher = (options, httpFetch) => function(graphQLParams, fetcherOpts) {
return __asyncGenerator(this, null, function* () {

@@ -91,10 +72,9 @@ const response = yield new __await(httpFetch(options.url, {

(r) => meros(r, {
multiple: true
multiple: !0
})
));
if (!isAsyncIterable(response)) {
if (!isAsyncIterable(response))
return yield response.json();
}
try {
for (var iter = __forAwait(response), more, temp, error; more = !(temp = yield new __await(iter.next())).done; more = false) {
for (var iter = __forAwait(response), more, temp, error; more = !(temp = yield new __await(iter.next())).done; more = !1) {
const chunk = temp.value;

@@ -128,14 +108,11 @@ if (chunk.some((part) => !part.json)) {

};
const getWsFetcher = (options, fetcherOpts) => {
if (options.wsClient) {
async function getWsFetcher(options, fetcherOpts) {
if (options.wsClient)
return createWebsocketsFetcherFromClient(options.wsClient);
}
if (options.subscriptionUrl) {
if (options.subscriptionUrl)
return createWebsocketsFetcherFromUrl(options.subscriptionUrl, __spreadValues(__spreadValues({}, options.wsConnectionParams), fetcherOpts == null ? void 0 : fetcherOpts.headers));
}
const legacyWebsocketsClient = options.legacyClient || options.legacyWsClient;
if (legacyWebsocketsClient) {
if (legacyWebsocketsClient)
return createLegacyWebsocketsFetcher(legacyWebsocketsClient);
}
};
}
export {

@@ -142,0 +119,0 @@ createLegacyWebsocketsFetcher,

import {
__spreadProps,
__spreadValues
} from "../chunk-P5H5YIIE.js";
} from "../chunk-LMOQIXV4.js";
function stringify(obj) {

@@ -16,14 +16,8 @@ return JSON.stringify(obj, null, 2);

function handleSingleError(error) {
if (error instanceof Error) {
return formatSingleError(error);
}
return error;
return error instanceof Error ? formatSingleError(error) : error;
}
function formatError(error) {
if (Array.isArray(error)) {
return stringify({
errors: error.map((e) => handleSingleError(e))
});
}
return stringify({ errors: [handleSingleError(error)] });
return Array.isArray(error) ? stringify({
errors: error.map((e) => handleSingleError(e))
}) : stringify({ errors: [handleSingleError(error)] });
}

@@ -30,0 +24,0 @@ function formatResult(result) {

@@ -1,2 +0,2 @@

import "../chunk-P5H5YIIE.js";
import "../chunk-LMOQIXV4.js";
import {

@@ -13,5 +13,4 @@ getNamedType,

const insertions = [];
if (!schema || !docString) {
if (!schema || !docString)
return { insertions, result: docString };
}
let ast;

@@ -23,5 +22,4 @@ try {

}
const fieldNameFn = getDefaultFieldNames || defaultGetDefaultFieldNames;
const typeInfo = new TypeInfo(schema);
visit(ast, {
const fieldNameFn = getDefaultFieldNames || defaultGetDefaultFieldNames, typeInfo = new TypeInfo(schema);
return visit(ast, {
leave(node) {

@@ -31,6 +29,4 @@ typeInfo.leave(node);

enter(node) {
typeInfo.enter(node);
if (node.kind === "Field" && !node.selectionSet) {
const fieldType = typeInfo.getType();
const selectionSet = buildSelectionSet(
if (typeInfo.enter(node), node.kind === "Field" && !node.selectionSet) {
const fieldType = typeInfo.getType(), selectionSet = buildSelectionSet(
isFieldType(fieldType),

@@ -43,3 +39,5 @@ fieldNameFn

index: node.loc.end,
string: " " + print(selectionSet).replaceAll("\n", "\n" + indent)
string: " " + print(selectionSet).replaceAll(`
`, `
` + indent)
});

@@ -49,4 +47,3 @@ }

}
});
return {
}), {
insertions,

@@ -57,21 +54,14 @@ result: withInsertions(docString, insertions)

function defaultGetDefaultFieldNames(type) {
if (!("getFields" in type)) {
if (!("getFields" in type))
return [];
}
const fields = type.getFields();
if (fields.id) {
if (fields.id)
return ["id"];
}
if (fields.edges) {
if (fields.edges)
return ["edges"];
}
if (fields.node) {
if (fields.node)
return ["node"];
}
const leafFieldNames = [];
for (const fieldName of Object.keys(fields)) {
if (isLeafType(fields[fieldName].type)) {
leafFieldNames.push(fieldName);
}
}
for (const fieldName of Object.keys(fields))
isLeafType(fields[fieldName].type) && leafFieldNames.push(fieldName);
return leafFieldNames;

@@ -81,52 +71,38 @@ }

const namedType = getNamedType(type);
if (!type || isLeafType(type)) {
if (!type || isLeafType(type))
return;
}
const fieldNames = getDefaultFieldNames(namedType);
if (!Array.isArray(fieldNames) || fieldNames.length === 0 || !("getFields" in namedType)) {
return;
}
return {
kind: Kind.SELECTION_SET,
selections: fieldNames.map((fieldName) => {
const fieldDef = namedType.getFields()[fieldName];
const fieldType = fieldDef ? fieldDef.type : null;
return {
kind: Kind.FIELD,
name: {
kind: Kind.NAME,
value: fieldName
},
// we can use as here, because we already know that fieldType
// comes from an origin parameter
selectionSet: buildSelectionSet(fieldType, getDefaultFieldNames)
};
})
};
if (!(!Array.isArray(fieldNames) || fieldNames.length === 0 || !("getFields" in namedType)))
return {
kind: Kind.SELECTION_SET,
selections: fieldNames.map((fieldName) => {
const fieldDef = namedType.getFields()[fieldName], fieldType = fieldDef ? fieldDef.type : null;
return {
kind: Kind.FIELD,
name: {
kind: Kind.NAME,
value: fieldName
},
// we can use as here, because we already know that fieldType
// comes from an origin parameter
selectionSet: buildSelectionSet(fieldType, getDefaultFieldNames)
};
})
};
}
function withInsertions(initial, insertions) {
if (insertions.length === 0) {
if (insertions.length === 0)
return initial;
}
let edited = "";
let prevIndex = 0;
for (const { index, string } of insertions) {
edited += initial.slice(prevIndex, index) + string;
prevIndex = index;
}
edited += initial.slice(prevIndex);
return edited;
let edited = "", prevIndex = 0;
for (const { index, string } of insertions)
edited += initial.slice(prevIndex, index) + string, prevIndex = index;
return edited += initial.slice(prevIndex), edited;
}
function getIndentation(str, index) {
let indentStart = index;
let indentEnd = index;
while (indentStart) {
let indentStart = index, indentEnd = index;
for (; indentStart; ) {
const c = str.charCodeAt(indentStart - 1);
if (c === 10 || c === 13 || c === 8232 || c === 8233) {
if (c === 10 || c === 13 || c === 8232 || c === 8233)
break;
}
indentStart--;
if (c !== 9 && c !== 11 && c !== 12 && c !== 32 && c !== 160) {
indentEnd = indentStart;
}
indentStart--, c !== 9 && c !== 11 && c !== 12 && c !== 32 && c !== 160 && (indentEnd = indentStart);
}

@@ -136,5 +112,4 @@ return str.slice(indentStart, indentEnd);

function isFieldType(fieldType) {
if (fieldType) {
if (fieldType)
return fieldType;
}
}

@@ -141,0 +116,0 @@ export {

import {
__spreadProps,
__spreadValues
} from "../chunk-P5H5YIIE.js";
} from "../chunk-LMOQIXV4.js";
import {

@@ -14,12 +14,10 @@ TypeInfo,

var _a;
const FilteredMap = /* @__PURE__ */ new Map();
const result = [];
for (const item of array) {
const FilteredMap = /* @__PURE__ */ new Map(), result = [];
for (const item of array)
if (item.kind === "Field") {
const uniqueValue = iteratee(item);
const existing = FilteredMap.get(uniqueValue);
if ((_a = item.directives) == null ? void 0 : _a.length) {
const uniqueValue = iteratee(item), existing = FilteredMap.get(uniqueValue);
if ((_a = item.directives) != null && _a.length) {
const itemClone = __spreadValues({}, item);
result.push(itemClone);
} else if ((existing == null ? void 0 : existing.selectionSet) && item.selectionSet) {
} else if (existing != null && existing.selectionSet && item.selectionSet)
existing.selectionSet.selections = [

@@ -29,11 +27,8 @@ ...existing.selectionSet.selections,

];
} else if (!existing) {
else if (!existing) {
const itemClone = __spreadValues({}, item);
FilteredMap.set(uniqueValue, itemClone);
result.push(itemClone);
FilteredMap.set(uniqueValue, itemClone), result.push(itemClone);
}
} else {
} else
result.push(item);
}
}
return result;

@@ -43,5 +38,3 @@ }

var _a;
const selectionSetTypeName = selectionSetType ? getNamedType(selectionSetType).name : null;
const outputSelections = [];
const seenSpreads = [];
const selectionSetTypeName = selectionSetType ? getNamedType(selectionSetType).name : null, outputSelections = [], seenSpreads = [];
for (let selection of selections) {

@@ -51,7 +44,5 @@ if (selection.kind === "FragmentSpread") {

if (!selection.directives || selection.directives.length === 0) {
if (seenSpreads.includes(fragmentName)) {
if (seenSpreads.includes(fragmentName))
continue;
} else {
seenSpreads.push(fragmentName);
}
seenSpreads.push(fragmentName);
}

@@ -88,9 +79,5 @@ const fragmentDefinition = fragmentDefinitions[selection.name.value];

function mergeAst(documentAST, schema) {
const typeInfo = schema ? new TypeInfo(schema) : null;
const fragmentDefinitions = /* @__PURE__ */ Object.create(null);
for (const definition of documentAST.definitions) {
if (definition.kind === Kind.FRAGMENT_DEFINITION) {
fragmentDefinitions[definition.name.value] = definition;
}
}
const typeInfo = schema ? new TypeInfo(schema) : null, fragmentDefinitions = /* @__PURE__ */ Object.create(null);
for (const definition of documentAST.definitions)
definition.kind === Kind.FRAGMENT_DEFINITION && (fragmentDefinitions[definition.name.value] = definition);
const flattenVisitors = {

@@ -100,8 +87,7 @@ SelectionSet(node) {

let { selections } = node;
selections = inlineRelevantFragmentSpreads(
return selections = inlineRelevantFragmentSpreads(
fragmentDefinitions,
selections,
selectionSetType
);
return __spreadProps(__spreadValues({}, node), {
), __spreadProps(__spreadValues({}, node), {
selections

@@ -113,15 +99,13 @@ });

}
};
const flattenedAST = visit(
}, flattenedAST = visit(
documentAST,
typeInfo ? visitWithTypeInfo(typeInfo, flattenVisitors) : flattenVisitors
);
const deduplicateVisitors = {
return visit(flattenedAST, {
SelectionSet(node) {
let { selections } = node;
selections = uniqueBy(
return selections = uniqueBy(
selections,
(selection) => selection.alias ? selection.alias.value : selection.name.value
);
return __spreadProps(__spreadValues({}, node), {
), __spreadProps(__spreadValues({}, node), {
selections

@@ -133,4 +117,3 @@ });

}
};
return visit(flattenedAST, deduplicateVisitors);
});
}

@@ -137,0 +120,0 @@ export {

@@ -1,6 +0,5 @@

import "../chunk-P5H5YIIE.js";
import "../chunk-LMOQIXV4.js";
function getSelectedOperationName(prevOperations, prevSelectedOperationName, operations) {
if (!operations || operations.length < 1) {
if (!operations || operations.length < 1)
return;
}
const names = operations.map((op) => {

@@ -10,14 +9,11 @@ var _a;

});
if (prevSelectedOperationName && names.includes(prevSelectedOperationName)) {
if (prevSelectedOperationName && names.includes(prevSelectedOperationName))
return prevSelectedOperationName;
}
if (prevSelectedOperationName && prevOperations) {
const prevNames = prevOperations.map((op) => {
const prevIndex = prevOperations.map((op) => {
var _a;
return (_a = op.name) == null ? void 0 : _a.value;
});
const prevIndex = prevNames.indexOf(prevSelectedOperationName);
if (prevIndex !== -1 && prevIndex < names.length) {
}).indexOf(prevSelectedOperationName);
if (prevIndex !== -1 && prevIndex < names.length)
return names[prevIndex];
}
}

@@ -24,0 +20,0 @@ return names[0];

@@ -1,2 +0,2 @@

import "../chunk-P5H5YIIE.js";
import "../chunk-LMOQIXV4.js";
function isQuotaError(storage, e) {

@@ -13,59 +13,36 @@ return e instanceof DOMException && // everything except Firefox

constructor(storage) {
if (storage) {
this.storage = storage;
} else if (storage === null) {
this.storage = null;
} else if (typeof window === "undefined") {
this.storage = null;
} else {
this.storage = {
getItem: localStorage.getItem.bind(localStorage),
setItem: localStorage.setItem.bind(localStorage),
removeItem: localStorage.removeItem.bind(localStorage),
get length() {
let keys = 0;
for (const key in localStorage) {
if (key.indexOf(`${STORAGE_NAMESPACE}:`) === 0) {
keys += 1;
}
}
return keys;
},
clear() {
for (const key in localStorage) {
if (key.indexOf(`${STORAGE_NAMESPACE}:`) === 0) {
localStorage.removeItem(key);
}
}
}
};
}
storage ? this.storage = storage : storage === null ? this.storage = null : typeof window == "undefined" ? this.storage = null : this.storage = {
getItem: localStorage.getItem.bind(localStorage),
setItem: localStorage.setItem.bind(localStorage),
removeItem: localStorage.removeItem.bind(localStorage),
get length() {
let keys = 0;
for (const key in localStorage)
key.indexOf(`${STORAGE_NAMESPACE}:`) === 0 && (keys += 1);
return keys;
},
clear() {
for (const key in localStorage)
key.indexOf(`${STORAGE_NAMESPACE}:`) === 0 && localStorage.removeItem(key);
}
};
}
get(name) {
if (!this.storage) {
if (!this.storage)
return null;
}
const key = `${STORAGE_NAMESPACE}:${name}`;
const value = this.storage.getItem(key);
if (value === "null" || value === "undefined") {
this.storage.removeItem(key);
return null;
}
return value || null;
const key = `${STORAGE_NAMESPACE}:${name}`, value = this.storage.getItem(key);
return value === "null" || value === "undefined" ? (this.storage.removeItem(key), null) : value || null;
}
set(name, value) {
let quotaError = false;
let error = null;
let quotaError = !1, error = null;
if (this.storage) {
const key = `${STORAGE_NAMESPACE}:${name}`;
if (value) {
if (value)
try {
this.storage.setItem(key, value);
} catch (e) {
error = e instanceof Error ? e : new Error(`${e}`);
quotaError = isQuotaError(this.storage, e);
error = e instanceof Error ? e : new Error(`${e}`), quotaError = isQuotaError(this.storage, e);
}
} else {
else
this.storage.removeItem(key);
}
}

@@ -75,5 +52,3 @@ return { isQuotaError: quotaError, error };

clear() {
if (this.storage) {
this.storage.clear();
}
this.storage && this.storage.clear();
}

@@ -80,0 +55,0 @@ }

@@ -1,8 +0,7 @@

import "../chunk-P5H5YIIE.js";
import "../chunk-LMOQIXV4.js";
function createLocalStorage({
namespace
}) {
const storageKeyPrefix = `${namespace}:`;
const getStorageKey = (key) => `${storageKeyPrefix}${key}`;
const storage = {
const storageKeyPrefix = `${namespace}:`, getStorageKey = (key) => `${storageKeyPrefix}${key}`;
return {
setItem: (key, value) => localStorage.setItem(getStorageKey(key), value),

@@ -13,18 +12,11 @@ getItem: (key) => localStorage.getItem(getStorageKey(key)),

let keys = 0;
for (const key in localStorage) {
if (key.indexOf(storageKeyPrefix) === 0) {
keys += 1;
}
}
for (const key in localStorage)
key.indexOf(storageKeyPrefix) === 0 && (keys += 1);
return keys;
},
clear() {
for (const key in localStorage) {
if (key.indexOf(storageKeyPrefix) === 0) {
localStorage.removeItem(key);
}
}
for (const key in localStorage)
key.indexOf(storageKeyPrefix) === 0 && localStorage.removeItem(key);
}
};
return storage;
}

@@ -31,0 +23,0 @@ export {

import {
__spreadProps,
__spreadValues
} from "../chunk-P5H5YIIE.js";
} from "../chunk-LMOQIXV4.js";
import { parse } from "graphql";

@@ -23,5 +23,4 @@ import { QueryStore } from "./query";

this.history.fetchRecent()
)) {
))
return;
}
this.history.push({

@@ -33,7 +32,6 @@ query,

});
const historyQueries = this.history.items;
const favoriteQueries = this.favorite.items;
const historyQueries = this.history.items, favoriteQueries = this.favorite.items;
this.queries = historyQueries.concat(favoriteQueries);
};
this.deleteHistory = ({ query, variables, headers, operationName, favorite }, clearFavorites = false) => {
this.deleteHistory = ({ query, variables, headers, operationName, favorite }, clearFavorites = !1) => {
function deleteFromStore(store) {

@@ -43,13 +41,5 @@ const found = store.items.find(

);
if (found) {
store.delete(found);
}
found && store.delete(found);
}
if (favorite || clearFavorites) {
deleteFromStore(this.favorite);
}
if (!favorite || clearFavorites) {
deleteFromStore(this.history);
}
this.queries = [...this.history.items, ...this.favorite.items];
(favorite || clearFavorites) && deleteFromStore(this.favorite), (!favorite || clearFavorites) && deleteFromStore(this.history), this.queries = [...this.history.items, ...this.favorite.items];
};

@@ -60,35 +50,13 @@ this.history = new QueryStore(

this.maxHistoryLength
);
this.favorite = new QueryStore("favorites", this.storage, null);
this.queries = [...this.history.fetchAll(), ...this.favorite.fetchAll()];
), this.favorite = new QueryStore("favorites", this.storage, null), this.queries = [...this.history.fetchAll(), ...this.favorite.fetchAll()];
}
shouldSaveQuery(query, variables, headers, lastQuerySaved) {
if (!query) {
return false;
}
if (!query)
return !1;
try {
parse(query);
} catch (e) {
return false;
return !1;
}
if (query.length > MAX_QUERY_SIZE) {
return false;
}
if (!lastQuerySaved) {
return true;
}
if (JSON.stringify(query) === JSON.stringify(lastQuerySaved.query)) {
if (JSON.stringify(variables) === JSON.stringify(lastQuerySaved.variables)) {
if (JSON.stringify(headers) === JSON.stringify(lastQuerySaved.headers)) {
return false;
}
if (headers && !lastQuerySaved.headers) {
return false;
}
}
if (variables && !lastQuerySaved.variables) {
return false;
}
}
return true;
return query.length > MAX_QUERY_SIZE ? !1 : lastQuerySaved ? !(JSON.stringify(query) === JSON.stringify(lastQuerySaved.query) && (JSON.stringify(variables) === JSON.stringify(lastQuerySaved.variables) && (JSON.stringify(headers) === JSON.stringify(lastQuerySaved.headers) || headers && !lastQuerySaved.headers) || variables && !lastQuerySaved.variables)) : !0;
}

@@ -110,12 +78,3 @@ toggleFavorite({

};
if (favorite) {
item.favorite = false;
this.favorite.delete(item);
this.history.push(item);
} else {
item.favorite = true;
this.favorite.push(item);
this.history.delete(item);
}
this.queries = [...this.history.items, ...this.favorite.items];
favorite ? (item.favorite = !1, this.favorite.delete(item), this.history.push(item)) : (item.favorite = !0, this.favorite.push(item), this.history.delete(item)), this.queries = [...this.history.items, ...this.favorite.items];
}

@@ -137,8 +96,3 @@ editLabel({

};
if (favorite) {
this.favorite.edit(__spreadProps(__spreadValues({}, item), { favorite }), index);
} else {
this.history.edit(item, index);
}
this.queries = [...this.history.items, ...this.favorite.items];
favorite ? this.favorite.edit(__spreadProps(__spreadValues({}, item), { favorite }), index) : this.history.edit(item, index), this.queries = [...this.history.items, ...this.favorite.items];
}

@@ -145,0 +99,0 @@ }

@@ -1,2 +0,2 @@

import "../chunk-P5H5YIIE.js";
import "../chunk-LMOQIXV4.js";
class QueryStore {

@@ -18,7 +18,6 @@ constructor(key, storage, maxSize = null) {

edit(item, index) {
if (typeof index === "number" && this.items[index]) {
if (typeof index == "number" && this.items[index]) {
const found = this.items[index];
if (found.query === item.query && found.variables === item.variables && found.headers === item.headers && found.operationName === item.operationName) {
this.items.splice(index, 1, item);
this.save();
this.items.splice(index, 1, item), this.save();
return;

@@ -30,6 +29,3 @@ }

);
if (itemIndex !== -1) {
this.items.splice(itemIndex, 1, item);
this.save();
}
itemIndex !== -1 && (this.items.splice(itemIndex, 1, item), this.save());
}

@@ -40,6 +36,3 @@ delete(item) {

);
if (itemIndex !== -1) {
this.items.splice(itemIndex, 1);
this.save();
}
itemIndex !== -1 && (this.items.splice(itemIndex, 1), this.save());
}

@@ -51,12 +44,7 @@ fetchRecent() {

const raw = this.storage.get(this.key);
if (raw) {
return JSON.parse(raw)[this.key];
}
return [];
return raw ? JSON.parse(raw)[this.key] : [];
}
push(item) {
const items = [...this.items, item];
if (this.maxSize && items.length > this.maxSize) {
items.shift();
}
this.maxSize && items.length > this.maxSize && items.shift();
for (let attempts = 0; attempts < 5; attempts++) {

@@ -67,9 +55,8 @@ const response = this.storage.set(

);
if (!(response == null ? void 0 : response.error)) {
if (!(response != null && response.error))
this.items = items;
} else if (response.isQuotaError && this.maxSize) {
else if (response.isQuotaError && this.maxSize)
items.shift();
} else {
else
return;
}
}

@@ -76,0 +63,0 @@ }

{
"name": "@graphiql/toolkit",
"version": "0.11.0-canary-35904daa.0",
"version": "0.11.0-canary-3bb4b14b.0",
"description": "Utility to build a fetcher for GraphiQL",

@@ -5,0 +5,0 @@ "contributors": [

@@ -18,3 +18,3 @@ import { parse } from 'graphql';

const exampleWithSubscription = /* GraphQL */ parse(`
const exampleWithSubscription = parse(/* GraphQL */ `
subscription Example {

@@ -51,5 +51,5 @@ example

it('creates a websockets client using provided url', () => {
it('creates a websockets client using provided url', async () => {
createClient.mockReturnValue(true);
createWebsocketsFetcherFromUrl('wss://example.com');
await createWebsocketsFetcherFromUrl('wss://example.com');
// @ts-ignore

@@ -71,11 +71,11 @@ expect(createClient.mock.calls[0][0]).toEqual({ url: 'wss://example.com' });

});
it('provides an observable wsClient when custom wsClient option is provided', () => {
it('provides an observable wsClient when custom wsClient option is provided', async () => {
createClient.mockReturnValue(true);
getWsFetcher({ url: '', wsClient: true });
await getWsFetcher({ url: '', wsClient: true });
// @ts-ignore
expect(createClient.mock.calls).toHaveLength(0);
});
it('creates a subscriptions-transports-ws observable when custom legacyClient option is provided', () => {
it('creates a subscriptions-transports-ws observable when custom legacyClient option is provided', async () => {
createClient.mockReturnValue(true);
getWsFetcher({ url: '', legacyClient: true });
await getWsFetcher({ url: '', legacyClient: true });
// @ts-ignore

@@ -86,5 +86,5 @@ expect(createClient.mock.calls).toHaveLength(0);

it('if subscriptionsUrl is provided, create a client on the fly', () => {
it('if subscriptionsUrl is provided, create a client on the fly', async () => {
createClient.mockReturnValue(true);
getWsFetcher({ url: '', subscriptionUrl: 'wss://example' });
await getWsFetcher({ url: '', subscriptionUrl: 'wss://example' });
expect(createClient.mock.calls[0]).toEqual([

@@ -97,4 +97,4 @@ { connectionParams: {}, url: 'wss://example' },

describe('missing graphql-ws dependency', () => {
it('should throw a nice error', () => {
describe('missing `graphql-ws` dependency', () => {
it('should throw a nice error', async () => {
jest.resetModules();

@@ -106,3 +106,5 @@ jest.doMock('graphql-ws', () => {

expect(() => createWebsocketsFetcherFromUrl('wss://example.com')).toThrow(
await expect(
createWebsocketsFetcherFromUrl('wss://example.com'),
).rejects.toThrow(
/You need to install the 'graphql-ws' package to use websockets when passing a 'subscriptionUrl'/,

@@ -109,0 +111,0 @@ );

@@ -30,3 +30,3 @@ import type { Fetcher, CreateFetcherOptions } from './types';

return (graphQLParams, fetcherOpts) => {
return async (graphQLParams, fetcherOpts) => {
if (graphQLParams.operationName === 'IntrospectionQuery') {

@@ -45,3 +45,3 @@ return (options.schemaFetcher || simpleFetcher)(

if (isSubscription) {
const wsFetcher = getWsFetcher(options, fetcherOpts);
const wsFetcher = await getWsFetcher(options, fetcherOpts);

@@ -48,0 +48,0 @@ if (!wsFetcher) {

@@ -71,11 +71,12 @@ import { DocumentNode, visit } from 'graphql';

export const createWebsocketsFetcherFromUrl = (
export async function createWebsocketsFetcherFromUrl(
url: string,
connectionParams?: ClientOptions['connectionParams'],
) => {
): Promise<Fetcher | void> {
let wsClient;
try {
const { createClient } = require('graphql-ws') as {
createClient: typeof createClientType;
};
const { createClient } =
process.env.USE_IMPORT === 'false'
? (require('graphql-ws') as { createClient: typeof createClientType })
: await import('graphql-ws');

@@ -94,3 +95,3 @@ // TODO: defaults?

}
};
}

@@ -182,6 +183,6 @@ /**

*/
export const getWsFetcher = (
export async function getWsFetcher(
options: CreateFetcherOptions,
fetcherOpts?: FetcherOpts,
): Fetcher | void => {
): Promise<Fetcher | void> {
if (options.wsClient) {

@@ -200,2 +201,2 @@ return createWebsocketsFetcherFromClient(options.wsClient);

}
};
}
{
"compilerOptions": {
"target": "es2016",
"target": "es2017",
"module": "ESNext",

@@ -5,0 +5,0 @@ "declaration": true,

@@ -8,2 +8,3 @@ import { defineConfig, Options } from 'tsup';

dts: true,
minifySyntax: true,
};

@@ -17,2 +18,5 @@

outExtension: () => ({ js: '.js' }),
env: {
USE_IMPORT: 'true',
},
},

@@ -23,3 +27,6 @@ {

outDir: 'dist/cjs',
env: {
USE_IMPORT: 'false',
},
},
]);

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc