@plasmicpkgs/plasmic-query 0.0.230 → 0.0.231
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/plasmic-query.cjs.development.js +46 -59
- package/dist/plasmic-query.cjs.development.js.map +1 -1
- package/dist/plasmic-query.cjs.production.min.js +1 -1
- package/dist/plasmic-query.cjs.production.min.js.map +1 -1
- package/dist/plasmic-query.esm.js +46 -59
- package/dist/plasmic-query.esm.js.map +1 -1
- package/package.json +3 -3
|
@@ -9,6 +9,49 @@ var registerComponent = _interopDefault(require('@plasmicapp/host/registerCompon
|
|
|
9
9
|
var query = require('@plasmicapp/query');
|
|
10
10
|
var React = _interopDefault(require('react'));
|
|
11
11
|
|
|
12
|
+
function asyncGeneratorStep(n, t, e, r, o, a, c) {
|
|
13
|
+
try {
|
|
14
|
+
var i = n[a](c),
|
|
15
|
+
u = i.value;
|
|
16
|
+
} catch (n) {
|
|
17
|
+
return void e(n);
|
|
18
|
+
}
|
|
19
|
+
i.done ? t(u) : Promise.resolve(u).then(r, o);
|
|
20
|
+
}
|
|
21
|
+
function _asyncToGenerator(n) {
|
|
22
|
+
return function () {
|
|
23
|
+
var t = this,
|
|
24
|
+
e = arguments;
|
|
25
|
+
return new Promise(function (r, o) {
|
|
26
|
+
var a = n.apply(t, e);
|
|
27
|
+
function _next(n) {
|
|
28
|
+
asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
|
|
29
|
+
}
|
|
30
|
+
function _throw(n) {
|
|
31
|
+
asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
|
|
32
|
+
}
|
|
33
|
+
_next(void 0);
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function _extends() {
|
|
38
|
+
return _extends = Object.assign ? Object.assign.bind() : function (n) {
|
|
39
|
+
for (var e = 1; e < arguments.length; e++) {
|
|
40
|
+
var t = arguments[e];
|
|
41
|
+
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
42
|
+
}
|
|
43
|
+
return n;
|
|
44
|
+
}, _extends.apply(null, arguments);
|
|
45
|
+
}
|
|
46
|
+
function _objectWithoutPropertiesLoose(r, e) {
|
|
47
|
+
if (null == r) return {};
|
|
48
|
+
var t = {};
|
|
49
|
+
for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
|
|
50
|
+
if (-1 !== e.indexOf(n)) continue;
|
|
51
|
+
t[n] = r[n];
|
|
52
|
+
}
|
|
53
|
+
return t;
|
|
54
|
+
}
|
|
12
55
|
function _regeneratorRuntime() {
|
|
13
56
|
_regeneratorRuntime = function () {
|
|
14
57
|
return e;
|
|
@@ -117,7 +160,7 @@ function _regeneratorRuntime() {
|
|
|
117
160
|
function makeInvokeMethod(e, r, n) {
|
|
118
161
|
var o = h;
|
|
119
162
|
return function (i, a) {
|
|
120
|
-
if (o === f) throw
|
|
163
|
+
if (o === f) throw Error("Generator is already running");
|
|
121
164
|
if (o === s) {
|
|
122
165
|
if ("throw" === i) throw a;
|
|
123
166
|
return {
|
|
@@ -259,7 +302,7 @@ function _regeneratorRuntime() {
|
|
|
259
302
|
} else if (c) {
|
|
260
303
|
if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
|
|
261
304
|
} else {
|
|
262
|
-
if (!u) throw
|
|
305
|
+
if (!u) throw Error("try statement without catch or finally");
|
|
263
306
|
if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
|
|
264
307
|
}
|
|
265
308
|
}
|
|
@@ -299,7 +342,7 @@ function _regeneratorRuntime() {
|
|
|
299
342
|
return o;
|
|
300
343
|
}
|
|
301
344
|
}
|
|
302
|
-
throw
|
|
345
|
+
throw Error("illegal catch attempt");
|
|
303
346
|
},
|
|
304
347
|
delegateYield: function (e, r, n) {
|
|
305
348
|
return this.delegate = {
|
|
@@ -310,62 +353,6 @@ function _regeneratorRuntime() {
|
|
|
310
353
|
}
|
|
311
354
|
}, e;
|
|
312
355
|
}
|
|
313
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
314
|
-
try {
|
|
315
|
-
var info = gen[key](arg);
|
|
316
|
-
var value = info.value;
|
|
317
|
-
} catch (error) {
|
|
318
|
-
reject(error);
|
|
319
|
-
return;
|
|
320
|
-
}
|
|
321
|
-
if (info.done) {
|
|
322
|
-
resolve(value);
|
|
323
|
-
} else {
|
|
324
|
-
Promise.resolve(value).then(_next, _throw);
|
|
325
|
-
}
|
|
326
|
-
}
|
|
327
|
-
function _asyncToGenerator(fn) {
|
|
328
|
-
return function () {
|
|
329
|
-
var self = this,
|
|
330
|
-
args = arguments;
|
|
331
|
-
return new Promise(function (resolve, reject) {
|
|
332
|
-
var gen = fn.apply(self, args);
|
|
333
|
-
function _next(value) {
|
|
334
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
335
|
-
}
|
|
336
|
-
function _throw(err) {
|
|
337
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
338
|
-
}
|
|
339
|
-
_next(undefined);
|
|
340
|
-
});
|
|
341
|
-
};
|
|
342
|
-
}
|
|
343
|
-
function _extends() {
|
|
344
|
-
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
345
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
346
|
-
var source = arguments[i];
|
|
347
|
-
for (var key in source) {
|
|
348
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
349
|
-
target[key] = source[key];
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
}
|
|
353
|
-
return target;
|
|
354
|
-
};
|
|
355
|
-
return _extends.apply(this, arguments);
|
|
356
|
-
}
|
|
357
|
-
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
358
|
-
if (source == null) return {};
|
|
359
|
-
var target = {};
|
|
360
|
-
var sourceKeys = Object.keys(source);
|
|
361
|
-
var key, i;
|
|
362
|
-
for (i = 0; i < sourceKeys.length; i++) {
|
|
363
|
-
key = sourceKeys[i];
|
|
364
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
365
|
-
target[key] = source[key];
|
|
366
|
-
}
|
|
367
|
-
return target;
|
|
368
|
-
}
|
|
369
356
|
|
|
370
357
|
var _excluded = ["url", "query", "method", "headers", "queryKey"];
|
|
371
358
|
var genericFetcherPropsMeta = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plasmic-query.cjs.development.js","sources":["../src/Fetcher.tsx"],"sourcesContent":["import { DataProvider, usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport React, { ReactNode } from \"react\";\n\nexport interface GenericFetcherProps {\n children?: ReactNode;\n loadingDisplay?: ReactNode;\n previewSpinner?: boolean;\n errorDisplay?: ReactNode;\n previewErrorDisplay?: boolean;\n dataName?: string;\n errorName?: string;\n noLayout?: boolean;\n className?: string;\n}\n\ntype PropMetas<P> = ComponentMeta<P>[\"props\"];\n\ntype CustomError = Error & {\n info: Record<string, any>;\n status: number;\n};\n\nexport const genericFetcherPropsMeta: PropMetas<GenericFetcherProps> = {\n children: \"slot\",\n loadingDisplay: { type: \"slot\", defaultValue: \"Loading...\" },\n errorDisplay: { type: \"slot\", defaultValue: \"Error fetching data\" },\n dataName: {\n type: \"string\",\n displayName: \"Data name\",\n defaultValue: \"fetchedData\",\n description: \"Variable name to store the fetched data in\",\n },\n errorName: {\n type: \"string\",\n displayName: \"Error name\",\n defaultValue: \"fetchError\",\n description: \"Variable name to store the fetch error in\",\n },\n previewSpinner: {\n type: \"boolean\",\n description: \"Force preview the loading state\",\n displayName: \"Preview loading\",\n },\n previewErrorDisplay: {\n type: \"boolean\",\n description: \"Force preview the error display\",\n displayName: \"Preview error\",\n },\n noLayout: {\n type: \"boolean\",\n displayName: \"No layout\",\n description:\n \"When set, CMS Data Loader will not layout its children; instead, the layout set on its parent element will be used. Useful if you want to set flex gap or control container tag type.\",\n defaultValue: false,\n },\n};\n\nexport function GenericFetcherShell<T>({\n result,\n children,\n loadingDisplay,\n previewSpinner,\n errorDisplay,\n previewErrorDisplay,\n dataName,\n errorName,\n noLayout,\n className,\n}: GenericFetcherProps & {\n result: { data?: T; error?: Error; isLoading?: boolean };\n}) {\n const inEditor = !!usePlasmicCanvasContext();\n if (\n (inEditor && previewSpinner) ||\n (!(\"error\" in result) && !(\"data\" in result))\n ) {\n return <>{loadingDisplay ?? null}</>;\n } else if ((inEditor && previewErrorDisplay) || \"error\" in result) {\n return (\n <DataProvider name={errorName} data={result.error}>\n {errorDisplay ?? null}\n </DataProvider>\n );\n } else {\n const content = (\n <DataProvider name={dataName} data={result.data}>\n {children}\n </DataProvider>\n );\n return noLayout ? content : <div className={className}>{content}</div>;\n }\n}\n\nexport interface FetchProps {\n url?: string;\n method?: string;\n body?: string | object;\n headers?: Record<string, string>;\n}\n\n/**\n * Tries to return the JSON response, or else returns an object with a text key containing the response body text.\n */\nasync function performFetch({ url, method, body, headers }: FetchProps) {\n if (!url) {\n throw new Error(\"Please specify a URL to fetch\");\n }\n\n // Add default headers unless specified\n if (!headers) {\n headers = {};\n }\n const headerNamesLowercase = new Set(\n Object.keys(headers).map((headerName) => headerName.toLowerCase())\n );\n if (!headerNamesLowercase.has(\"accept\")) {\n headers[\"Accept\"] = \"application/json\";\n }\n if (body && !headerNamesLowercase.has(\"content-type\")) {\n headers[\"Content-Type\"] = \"application/json\";\n }\n\n const response = await fetch(url, {\n method,\n headers,\n body:\n body === undefined\n ? body\n : typeof body === \"string\"\n ? body\n : JSON.stringify(body),\n });\n\n const text = await response.text();\n let json: Record<string, any> = { text };\n\n try {\n json = JSON.parse(text);\n } catch (e) {\n json = { text };\n }\n\n // @see https://swr.vercel.app/docs/error-handling\n // If the status code is not in the range 200-299,\n // we still try to parse and throw it.\n if (!response.ok) {\n const error = new Error(response.statusText) as CustomError;\n // Attach extra info to the error object.\n error.info = json;\n error.status = response.status;\n throw error;\n }\n\n return json;\n}\n\nexport interface DataFetcherProps extends FetchProps, GenericFetcherProps {\n queryKey?: string;\n}\n\nexport function DataFetcher(props: DataFetcherProps) {\n const { url, method, body, headers, queryKey } = props;\n const fetchProps: FetchProps = { url, method, body, headers };\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"DataFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nfunction mkFetchProps(\n defaultUrl: string,\n defaultMethod: string\n): PropMetas<FetchProps & { queryKey?: string }> {\n return {\n url: {\n type: \"string\",\n defaultValue: defaultUrl,\n description: \"Where to fetch the data from\",\n },\n method: {\n type: \"choice\",\n options: [\n \"GET\",\n \"DELETE\",\n \"CONNECT\",\n \"HEAD\",\n \"OPTIONS\",\n \"POST\",\n \"PUT\",\n \"TRACE\",\n ],\n defaultValue: defaultMethod,\n description: \"Method to use when fetching\",\n },\n headers: {\n type: \"object\",\n description: \"Request headers (as JSON object) to send\",\n },\n queryKey: {\n type: \"string\",\n description:\n \"A globally unique ID for this query, used for invalidating queries\",\n invariantable: true,\n },\n };\n}\n\nexport const dataFetcherMeta: ComponentMeta<DataFetcherProps> = {\n name: \"hostless-plasmic-query-data-fetcher\",\n displayName: \"HTTP REST API Fetcher\",\n importName: \"DataFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n description:\n \"These fetches may be run client-side (from the browser). Use [Data Queries](https://docs.plasmic.app/learn/http-api-integration/) for authenticated queries or CORS.\",\n props: {\n ...(mkFetchProps(\n \"https://api.github.com/users/plasmicapp/repos\",\n \"GET\"\n ) as any),\n body: {\n type: \"object\",\n description: \"JSON object to be sent in the request body\",\n },\n ...(genericFetcherPropsMeta as any),\n },\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerDataFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<DataFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n DataFetcher,\n customDataFetcherMeta ?? dataFetcherMeta\n );\n } else {\n registerComponent(DataFetcher, customDataFetcherMeta ?? dataFetcherMeta);\n }\n}\n\nexport interface GraphqlFetcherProps\n extends GenericFetcherProps,\n Omit<FetchProps, \"body\"> {\n query?: { query?: string; variables?: object };\n queryKey?: string;\n varOverrides?: object;\n}\n\nexport function GraphqlFetcher(props: GraphqlFetcherProps) {\n const { query, url, method, headers, queryKey, varOverrides } = props;\n\n let fetchProps: FetchProps;\n if (method === \"GET\") {\n // https://graphql.org/learn/serving-over-http/#get-request-and-parameters\n const urlWithQueryParams = new URL(url ?? \"\");\n urlWithQueryParams.searchParams.set(\"query\", query?.query ?? \"{}\");\n urlWithQueryParams.searchParams.set(\n \"variables\",\n JSON.stringify({ ...query?.variables, ...varOverrides })\n );\n fetchProps = {\n url: urlWithQueryParams.toString(),\n method,\n headers,\n };\n } else {\n fetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\n };\n }\n\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"GraphqlFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nexport const graphqlFetcherMeta: ComponentMeta<GraphqlFetcherProps> = {\n name: \"hostless-plasmic-query-graphql-fetcher\",\n displayName: \"GraphQL Fetcher\",\n importName: \"GraphqlFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n props: (() => {\n const gqlMetas: PropMetas<GraphqlFetcherProps> = {\n query: {\n type: \"code\",\n lang: \"graphql\",\n headers: (props) => props.headers,\n endpoint: (props) => props.url ?? \"\",\n defaultValue: {\n query: `query ExampleQuery($personId: ID) {\n person(id: $personId) {\n id\n name\n skinColor\n filmConnection {\n films {\n id\n title\n }\n }\n }\n}\n`,\n variables: {\n personId: \"cGVvcGxlOjIw\", // Yoda\n },\n },\n },\n varOverrides: {\n type: \"object\",\n displayName: \"Override variables\",\n description:\n \"Pass in dynamic values for your query variables, as an object of key-values\",\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\n \"https://swapi-graphql.netlify.app/.netlify/functions/index\",\n \"POST\"\n ),\n ...gqlMetas,\n ...genericFetcherPropsMeta,\n };\n return {\n url,\n query,\n method,\n headers,\n queryKey,\n ...rest,\n } as any;\n })(),\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerGraphqlFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<GraphqlFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n } else {\n registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n }\n}\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n registerDataFetcher(loader);\n registerGraphqlFetcher(loader);\n}\n"],"names":["genericFetcherPropsMeta","children","loadingDisplay","type","defaultValue","errorDisplay","dataName","displayName","description","errorName","previewSpinner","previewErrorDisplay","noLayout","GenericFetcherShell","_ref","result","className","inEditor","usePlasmicCanvasContext","React","DataProvider","name","data","error","content","performFetch","_x","_performFetch","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","url","method","body","headers","headerNamesLowercase","response","text","json","wrap","_callee$","_context","prev","next","Error","Set","Object","keys","map","headerName","toLowerCase","has","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","queryKey","fetchProps","usePlasmicQueryData","_extends","mkFetchProps","defaultUrl","defaultMethod","options","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","varOverrides","_query$query","urlWithQueryParams","URL","searchParams","set","variables","toString","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","personId","_mkFetchProps$gqlMeta","rest","_objectWithoutPropertiesLoose","_excluded","registerGraphqlFetcher","registerAll"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plasmic-query.cjs.development.js","sources":["../src/Fetcher.tsx"],"sourcesContent":["import { DataProvider, usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport React, { ReactNode } from \"react\";\n\nexport interface GenericFetcherProps {\n children?: ReactNode;\n loadingDisplay?: ReactNode;\n previewSpinner?: boolean;\n errorDisplay?: ReactNode;\n previewErrorDisplay?: boolean;\n dataName?: string;\n errorName?: string;\n noLayout?: boolean;\n className?: string;\n}\n\ntype PropMetas<P> = ComponentMeta<P>[\"props\"];\n\ntype CustomError = Error & {\n info: Record<string, any>;\n status: number;\n};\n\nexport const genericFetcherPropsMeta: PropMetas<GenericFetcherProps> = {\n children: \"slot\",\n loadingDisplay: { type: \"slot\", defaultValue: \"Loading...\" },\n errorDisplay: { type: \"slot\", defaultValue: \"Error fetching data\" },\n dataName: {\n type: \"string\",\n displayName: \"Data name\",\n defaultValue: \"fetchedData\",\n description: \"Variable name to store the fetched data in\",\n },\n errorName: {\n type: \"string\",\n displayName: \"Error name\",\n defaultValue: \"fetchError\",\n description: \"Variable name to store the fetch error in\",\n },\n previewSpinner: {\n type: \"boolean\",\n description: \"Force preview the loading state\",\n displayName: \"Preview loading\",\n },\n previewErrorDisplay: {\n type: \"boolean\",\n description: \"Force preview the error display\",\n displayName: \"Preview error\",\n },\n noLayout: {\n type: \"boolean\",\n displayName: \"No layout\",\n description:\n \"When set, CMS Data Loader will not layout its children; instead, the layout set on its parent element will be used. Useful if you want to set flex gap or control container tag type.\",\n defaultValue: false,\n },\n};\n\nexport function GenericFetcherShell<T>({\n result,\n children,\n loadingDisplay,\n previewSpinner,\n errorDisplay,\n previewErrorDisplay,\n dataName,\n errorName,\n noLayout,\n className,\n}: GenericFetcherProps & {\n result: { data?: T; error?: Error; isLoading?: boolean };\n}) {\n const inEditor = !!usePlasmicCanvasContext();\n if (\n (inEditor && previewSpinner) ||\n (!(\"error\" in result) && !(\"data\" in result))\n ) {\n return <>{loadingDisplay ?? null}</>;\n } else if ((inEditor && previewErrorDisplay) || \"error\" in result) {\n return (\n <DataProvider name={errorName} data={result.error}>\n {errorDisplay ?? null}\n </DataProvider>\n );\n } else {\n const content = (\n <DataProvider name={dataName} data={result.data}>\n {children}\n </DataProvider>\n );\n return noLayout ? content : <div className={className}>{content}</div>;\n }\n}\n\nexport interface FetchProps {\n url?: string;\n method?: string;\n body?: string | object;\n headers?: Record<string, string>;\n}\n\n/**\n * Tries to return the JSON response, or else returns an object with a text key containing the response body text.\n */\nasync function performFetch({ url, method, body, headers }: FetchProps) {\n if (!url) {\n throw new Error(\"Please specify a URL to fetch\");\n }\n\n // Add default headers unless specified\n if (!headers) {\n headers = {};\n }\n const headerNamesLowercase = new Set(\n Object.keys(headers).map((headerName) => headerName.toLowerCase())\n );\n if (!headerNamesLowercase.has(\"accept\")) {\n headers[\"Accept\"] = \"application/json\";\n }\n if (body && !headerNamesLowercase.has(\"content-type\")) {\n headers[\"Content-Type\"] = \"application/json\";\n }\n\n const response = await fetch(url, {\n method,\n headers,\n body:\n body === undefined\n ? body\n : typeof body === \"string\"\n ? body\n : JSON.stringify(body),\n });\n\n const text = await response.text();\n let json: Record<string, any> = { text };\n\n try {\n json = JSON.parse(text);\n } catch (e) {\n json = { text };\n }\n\n // @see https://swr.vercel.app/docs/error-handling\n // If the status code is not in the range 200-299,\n // we still try to parse and throw it.\n if (!response.ok) {\n const error = new Error(response.statusText) as CustomError;\n // Attach extra info to the error object.\n error.info = json;\n error.status = response.status;\n throw error;\n }\n\n return json;\n}\n\nexport interface DataFetcherProps extends FetchProps, GenericFetcherProps {\n queryKey?: string;\n}\n\nexport function DataFetcher(props: DataFetcherProps) {\n const { url, method, body, headers, queryKey } = props;\n const fetchProps: FetchProps = { url, method, body, headers };\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"DataFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nfunction mkFetchProps(\n defaultUrl: string,\n defaultMethod: string\n): PropMetas<FetchProps & { queryKey?: string }> {\n return {\n url: {\n type: \"string\",\n defaultValue: defaultUrl,\n description: \"Where to fetch the data from\",\n },\n method: {\n type: \"choice\",\n options: [\n \"GET\",\n \"DELETE\",\n \"CONNECT\",\n \"HEAD\",\n \"OPTIONS\",\n \"POST\",\n \"PUT\",\n \"TRACE\",\n ],\n defaultValue: defaultMethod,\n description: \"Method to use when fetching\",\n },\n headers: {\n type: \"object\",\n description: \"Request headers (as JSON object) to send\",\n },\n queryKey: {\n type: \"string\",\n description:\n \"A globally unique ID for this query, used for invalidating queries\",\n invariantable: true,\n },\n };\n}\n\nexport const dataFetcherMeta: ComponentMeta<DataFetcherProps> = {\n name: \"hostless-plasmic-query-data-fetcher\",\n displayName: \"HTTP REST API Fetcher\",\n importName: \"DataFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n description:\n \"These fetches may be run client-side (from the browser). Use [Data Queries](https://docs.plasmic.app/learn/http-api-integration/) for authenticated queries or CORS.\",\n props: {\n ...(mkFetchProps(\n \"https://api.github.com/users/plasmicapp/repos\",\n \"GET\"\n ) as any),\n body: {\n type: \"object\",\n description: \"JSON object to be sent in the request body\",\n },\n ...(genericFetcherPropsMeta as any),\n },\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerDataFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<DataFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n DataFetcher,\n customDataFetcherMeta ?? dataFetcherMeta\n );\n } else {\n registerComponent(DataFetcher, customDataFetcherMeta ?? dataFetcherMeta);\n }\n}\n\nexport interface GraphqlFetcherProps\n extends GenericFetcherProps,\n Omit<FetchProps, \"body\"> {\n query?: { query?: string; variables?: object };\n queryKey?: string;\n varOverrides?: object;\n}\n\nexport function GraphqlFetcher(props: GraphqlFetcherProps) {\n const { query, url, method, headers, queryKey, varOverrides } = props;\n\n let fetchProps: FetchProps;\n if (method === \"GET\") {\n // https://graphql.org/learn/serving-over-http/#get-request-and-parameters\n const urlWithQueryParams = new URL(url ?? \"\");\n urlWithQueryParams.searchParams.set(\"query\", query?.query ?? \"{}\");\n urlWithQueryParams.searchParams.set(\n \"variables\",\n JSON.stringify({ ...query?.variables, ...varOverrides })\n );\n fetchProps = {\n url: urlWithQueryParams.toString(),\n method,\n headers,\n };\n } else {\n fetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\n };\n }\n\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"GraphqlFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nexport const graphqlFetcherMeta: ComponentMeta<GraphqlFetcherProps> = {\n name: \"hostless-plasmic-query-graphql-fetcher\",\n displayName: \"GraphQL Fetcher\",\n importName: \"GraphqlFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n props: (() => {\n const gqlMetas: PropMetas<GraphqlFetcherProps> = {\n query: {\n type: \"code\",\n lang: \"graphql\",\n headers: (props) => props.headers,\n endpoint: (props) => props.url ?? \"\",\n defaultValue: {\n query: `query ExampleQuery($personId: ID) {\n person(id: $personId) {\n id\n name\n skinColor\n filmConnection {\n films {\n id\n title\n }\n }\n }\n}\n`,\n variables: {\n personId: \"cGVvcGxlOjIw\", // Yoda\n },\n },\n },\n varOverrides: {\n type: \"object\",\n displayName: \"Override variables\",\n description:\n \"Pass in dynamic values for your query variables, as an object of key-values\",\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\n \"https://swapi-graphql.netlify.app/.netlify/functions/index\",\n \"POST\"\n ),\n ...gqlMetas,\n ...genericFetcherPropsMeta,\n };\n return {\n url,\n query,\n method,\n headers,\n queryKey,\n ...rest,\n } as any;\n })(),\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerGraphqlFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<GraphqlFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n } else {\n registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n }\n}\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n registerDataFetcher(loader);\n registerGraphqlFetcher(loader);\n}\n"],"names":["genericFetcherPropsMeta","children","loadingDisplay","type","defaultValue","errorDisplay","dataName","displayName","description","errorName","previewSpinner","previewErrorDisplay","noLayout","GenericFetcherShell","_ref","result","className","inEditor","usePlasmicCanvasContext","React","DataProvider","name","data","error","content","performFetch","_x","_performFetch","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","url","method","body","headers","headerNamesLowercase","response","text","json","wrap","_callee$","_context","prev","next","Error","Set","Object","keys","map","headerName","toLowerCase","has","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","queryKey","fetchProps","usePlasmicQueryData","_extends","mkFetchProps","defaultUrl","defaultMethod","options","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","varOverrides","_query$query","urlWithQueryParams","URL","searchParams","set","variables","toString","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","personId","_mkFetchProps$gqlMeta","rest","_objectWithoutPropertiesLoose","_excluded","registerGraphqlFetcher","registerAll"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@plasmicapp/host"),r=e(require("@plasmicapp/host/registerComponent")),n=require("@plasmicapp/query"),a=e(require("react"));function o(){o=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,a=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},s=i.iterator||"@@iterator",u=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function l(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,r){return e[t]=r}}function h(e,t,r,n){var o=Object.create((t&&t.prototype instanceof m?t:m).prototype),i=new D(n||[]);return a(o,"_invoke",{value:N(e,r,i)}),o}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=h;var f="suspendedStart",d="executing",y="completed",v={};function m(){}function g(){}function w(){}var b={};l(b,s,(function(){return this}));var x=Object.getPrototypeOf,E=x&&x(x(F([])));E&&E!==r&&n.call(E,s)&&(b=E);var O=w.prototype=m.prototype=Object.create(b);function q(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function L(e,t){function r(a,o,i,s){var u=p(e[a],e,o);if("throw"!==u.type){var c=u.arg,l=c.value;return l&&"object"==typeof l&&n.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,i,s)}),(function(e){r("throw",e,i,s)})):t.resolve(l).then((function(e){c.value=e,i(c)}),(function(e){return r("throw",e,i,s)}))}s(u.arg)}var o;a(this,"_invoke",{value:function(e,n){function a(){return new t((function(t,a){r(e,n,t,a)}))}return o=o?o.then(a,a):a()}})}function N(t,r,n){var a=f;return function(o,i){if(a===d)throw new Error("Generator is already running");if(a===y){if("throw"===o)throw i;return{value:e,done:!0}}for(n.method=o,n.arg=i;;){var s=n.delegate;if(s){var u=j(s,n);if(u){if(u===v)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===f)throw a=y,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=d;var c=p(t,r,n);if("normal"===c.type){if(a=n.done?y:"suspendedYield",c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(a=y,n.method="throw",n.arg=c.arg)}}}function j(t,r){var n=r.method,a=t.iterator[n];if(a===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,j(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),v;var o=p(a,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,v;var i=o.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,v):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function P(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function S(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function D(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(P,this),this.reset(!0)}function F(t){if(t||""===t){var r=t[s];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,o=function r(){for(;++a<t.length;)if(n.call(t,a))return r.value=t[a],r.done=!1,r;return r.value=e,r.done=!0,r};return o.next=o}}throw new TypeError(typeof t+" is not iterable")}return g.prototype=w,a(O,"constructor",{value:w,configurable:!0}),a(w,"constructor",{value:g,configurable:!0}),g.displayName=l(w,c,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,w):(e.__proto__=w,l(e,c,"GeneratorFunction")),e.prototype=Object.create(O),e},t.awrap=function(e){return{__await:e}},q(L.prototype),l(L.prototype,u,(function(){return this})),t.AsyncIterator=L,t.async=function(e,r,n,a,o){void 0===o&&(o=Promise);var i=new L(h(e,r,n,a),o);return t.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},q(O),l(O,c,"Generator"),l(O,s,(function(){return this})),l(O,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=F,D.prototype={constructor:D,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(S),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function a(n,a){return s.type="throw",s.arg=t,r.next=n,a&&(r.method="next",r.arg=e),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],s=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var u=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,v):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),v},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),S(r),v}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;S(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:F(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),v}},t}function i(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function s(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function s(e){i(o,n,a,s,u,"next",e)}function u(e){i(o,n,a,s,u,"throw",e)}s(void 0)}))}}function u(){return(u=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function c(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)t.indexOf(r=o[n])>=0||(a[r]=e[r]);return a}var l=["url","query","method","headers","queryKey"],h={children:"slot",loadingDisplay:{type:"slot",defaultValue:"Loading..."},errorDisplay:{type:"slot",defaultValue:"Error fetching data"},dataName:{type:"string",displayName:"Data name",defaultValue:"fetchedData",description:"Variable name to store the fetched data in"},errorName:{type:"string",displayName:"Error name",defaultValue:"fetchError",description:"Variable name to store the fetch error in"},previewSpinner:{type:"boolean",description:"Force preview the loading state",displayName:"Preview loading"},previewErrorDisplay:{type:"boolean",description:"Force preview the error display",displayName:"Preview error"},noLayout:{type:"boolean",displayName:"No layout",description:"When set, CMS Data Loader will not layout its children; instead, the layout set on its parent element will be used. Useful if you want to set flex gap or control container tag type.",defaultValue:!1}};function p(e){var r=e.result,n=e.children,o=e.loadingDisplay,i=e.previewSpinner,s=e.errorDisplay,u=e.previewErrorDisplay,c=e.dataName,l=e.errorName,h=e.noLayout,p=e.className,f=!!t.usePlasmicCanvasContext();if(f&&i||!("error"in r)&&!("data"in r))return a.createElement(a.Fragment,null,null!=o?o:null);if(f&&u||"error"in r)return a.createElement(t.DataProvider,{name:l,data:r.error},null!=s?s:null);var d=a.createElement(t.DataProvider,{name:c,data:r.data},n);return h?d:a.createElement("div",{className:p},d)}function f(e){return d.apply(this,arguments)}function d(){return(d=s(o().mark((function e(t){var r,n,a,i,s,u,c,l,h;return o().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.method,a=t.body,i=t.headers,r=t.url){e.next=3;break}throw new Error("Please specify a URL to fetch");case 3:return i||(i={}),(s=new Set(Object.keys(i).map((function(e){return e.toLowerCase()})))).has("accept")||(i.Accept="application/json"),a&&!s.has("content-type")&&(i["Content-Type"]="application/json"),e.next=9,fetch(r,{method:n,headers:i,body:void 0===a||"string"==typeof a?a:JSON.stringify(a)});case 9:return u=e.sent,e.next=12,u.text();case 12:l={text:c=e.sent};try{l=JSON.parse(c)}catch(e){l={text:c}}if(u.ok){e.next=20;break}throw(h=new Error(u.statusText)).info=l,h.status=u.status,h;case 20:return e.abrupt("return",l);case 21:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function y(e){var t={url:e.url,method:e.method,body:e.body,headers:e.headers},r=n.usePlasmicQueryData(e.queryKey||JSON.stringify(u({type:"DataFetcher"},t)),(function(){return f(t)}));return a.createElement(p,Object.assign({result:r},e))}function v(e,t){return{url:{type:"string",defaultValue:e,description:"Where to fetch the data from"},method:{type:"choice",options:["GET","DELETE","CONNECT","HEAD","OPTIONS","POST","PUT","TRACE"],defaultValue:t,description:"Method to use when fetching"},headers:{type:"object",description:"Request headers (as JSON object) to send"},queryKey:{type:"string",description:"A globally unique ID for this query, used for invalidating queries",invariantable:!0}}}var m={name:"hostless-plasmic-query-data-fetcher",displayName:"HTTP REST API Fetcher",importName:"DataFetcher",importPath:"@plasmicpkgs/plasmic-query",providesData:!0,description:"These fetches may be run client-side (from the browser). Use [Data Queries](https://docs.plasmic.app/learn/http-api-integration/) for authenticated queries or CORS.",props:u({},v("https://api.github.com/users/plasmicapp/repos","GET"),{body:{type:"object",description:"JSON object to be sent in the request body"}},h),defaultStyles:{maxWidth:"100%",width:"stretch"}};function g(e,t){e?e.registerComponent(y,null!=t?t:m):r(y,null!=t?t:m)}function w(e){var t,r=e.query,o=e.url,i=e.method,s=e.headers,c=e.queryKey,l=e.varOverrides;if("GET"===i){var h,d=new URL(null!=o?o:"");d.searchParams.set("query",null!=(h=null==r?void 0:r.query)?h:"{}"),d.searchParams.set("variables",JSON.stringify(u({},null==r?void 0:r.variables,l))),t={url:d.toString(),method:i,headers:s}}else t={body:u({},r,{variables:u({},null==r?void 0:r.variables,l)}),url:o,method:i,headers:s};var y=n.usePlasmicQueryData(c||JSON.stringify(u({type:"GraphqlFetcher"},t)),(function(){return f(t)}));return a.createElement(p,Object.assign({result:y},e))}var b={name:"hostless-plasmic-query-graphql-fetcher",displayName:"GraphQL Fetcher",importName:"GraphqlFetcher",importPath:"@plasmicpkgs/plasmic-query",providesData:!0,props:function(){var e={query:{type:"code",lang:"graphql",headers:function(e){return e.headers},endpoint:function(e){var t;return null!=(t=e.url)?t:""},defaultValue:{query:"query ExampleQuery($personId: ID) {\n person(id: $personId) {\n id\n name\n skinColor\n filmConnection {\n films {\n id\n title\n }\n }\n }\n}\n",variables:{personId:"cGVvcGxlOjIw"}}},varOverrides:{type:"object",displayName:"Override variables",description:"Pass in dynamic values for your query variables, as an object of key-values"}},t=u({},v("https://swapi-graphql.netlify.app/.netlify/functions/index","POST"),e,h);return u({url:t.url,query:t.query,method:t.method,headers:t.headers,queryKey:t.queryKey},c(t,l))}(),defaultStyles:{maxWidth:"100%",width:"stretch"}};function x(e,t){e?e.registerComponent(w,null!=t?t:b):r(w,null!=t?t:b)}exports.DataFetcher=y,exports.GenericFetcherShell=p,exports.GraphqlFetcher=w,exports.dataFetcherMeta=m,exports.genericFetcherPropsMeta=h,exports.graphqlFetcherMeta=b,exports.registerAll=function(e){g(e),x(e)},exports.registerDataFetcher=g,exports.registerGraphqlFetcher=x;
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@plasmicapp/host"),r=e(require("@plasmicapp/host/registerComponent")),n=require("@plasmicapp/query"),a=e(require("react"));function o(e,t,r,n,a,o,i){try{var s=e[o](i),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}function i(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var i=e.apply(t,r);function s(e){o(i,n,a,s,u,"next",e)}function u(e){o(i,n,a,s,u,"throw",e)}s(void 0)}))}}function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}function u(e,t){if(null==e)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(-1!==t.indexOf(n))continue;r[n]=e[n]}return r}function c(){c=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,a=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",s=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function l(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,r){return e[t]=r}}function h(e,t,r,n){var o=Object.create((t&&t.prototype instanceof m?t:m).prototype),i=new D(n||[]);return a(o,"_invoke",{value:N(e,r,i)}),o}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=h;var f="suspendedStart",d="executing",y="completed",v={};function m(){}function g(){}function w(){}var b={};l(b,i,(function(){return this}));var x=Object.getPrototypeOf,E=x&&x(x(F([])));E&&E!==r&&n.call(E,i)&&(b=E);var O=w.prototype=m.prototype=Object.create(b);function q(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function L(e,t){function r(a,o,i,s){var u=p(e[a],e,o);if("throw"!==u.type){var c=u.arg,l=c.value;return l&&"object"==typeof l&&n.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,i,s)}),(function(e){r("throw",e,i,s)})):t.resolve(l).then((function(e){c.value=e,i(c)}),(function(e){return r("throw",e,i,s)}))}s(u.arg)}var o;a(this,"_invoke",{value:function(e,n){function a(){return new t((function(t,a){r(e,n,t,a)}))}return o=o?o.then(a,a):a()}})}function N(t,r,n){var a=f;return function(o,i){if(a===d)throw Error("Generator is already running");if(a===y){if("throw"===o)throw i;return{value:e,done:!0}}for(n.method=o,n.arg=i;;){var s=n.delegate;if(s){var u=P(s,n);if(u){if(u===v)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===f)throw a=y,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=d;var c=p(t,r,n);if("normal"===c.type){if(a=n.done?y:"suspendedYield",c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(a=y,n.method="throw",n.arg=c.arg)}}}function P(t,r){var n=r.method,a=t.iterator[n];if(a===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,P(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),v;var o=p(a,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,v;var i=o.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,v):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function j(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function S(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function D(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function F(t){if(t||""===t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,o=function r(){for(;++a<t.length;)if(n.call(t,a))return r.value=t[a],r.done=!1,r;return r.value=e,r.done=!0,r};return o.next=o}}throw new TypeError(typeof t+" is not iterable")}return g.prototype=w,a(O,"constructor",{value:w,configurable:!0}),a(w,"constructor",{value:g,configurable:!0}),g.displayName=l(w,u,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,w):(e.__proto__=w,l(e,u,"GeneratorFunction")),e.prototype=Object.create(O),e},t.awrap=function(e){return{__await:e}},q(L.prototype),l(L.prototype,s,(function(){return this})),t.AsyncIterator=L,t.async=function(e,r,n,a,o){void 0===o&&(o=Promise);var i=new L(h(e,r,n,a),o);return t.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},q(O),l(O,u,"Generator"),l(O,i,(function(){return this})),l(O,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=F,D.prototype={constructor:D,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(S),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function a(n,a){return s.type="throw",s.arg=t,r.next=n,a&&(r.method="next",r.arg=e),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],s=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var u=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!c)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,v):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),v},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),S(r),v}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;S(r)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:F(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),v}},t}var l=["url","query","method","headers","queryKey"],h={children:"slot",loadingDisplay:{type:"slot",defaultValue:"Loading..."},errorDisplay:{type:"slot",defaultValue:"Error fetching data"},dataName:{type:"string",displayName:"Data name",defaultValue:"fetchedData",description:"Variable name to store the fetched data in"},errorName:{type:"string",displayName:"Error name",defaultValue:"fetchError",description:"Variable name to store the fetch error in"},previewSpinner:{type:"boolean",description:"Force preview the loading state",displayName:"Preview loading"},previewErrorDisplay:{type:"boolean",description:"Force preview the error display",displayName:"Preview error"},noLayout:{type:"boolean",displayName:"No layout",description:"When set, CMS Data Loader will not layout its children; instead, the layout set on its parent element will be used. Useful if you want to set flex gap or control container tag type.",defaultValue:!1}};function p(e){var r=e.result,n=e.children,o=e.loadingDisplay,i=e.previewSpinner,s=e.errorDisplay,u=e.previewErrorDisplay,c=e.dataName,l=e.errorName,h=e.noLayout,p=e.className,f=!!t.usePlasmicCanvasContext();if(f&&i||!("error"in r)&&!("data"in r))return a.createElement(a.Fragment,null,null!=o?o:null);if(f&&u||"error"in r)return a.createElement(t.DataProvider,{name:l,data:r.error},null!=s?s:null);var d=a.createElement(t.DataProvider,{name:c,data:r.data},n);return h?d:a.createElement("div",{className:p},d)}function f(e){return d.apply(this,arguments)}function d(){return(d=i(c().mark((function e(t){var r,n,a,o,i,s,u,l,h;return c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.method,a=t.body,o=t.headers,r=t.url){e.next=3;break}throw new Error("Please specify a URL to fetch");case 3:return o||(o={}),(i=new Set(Object.keys(o).map((function(e){return e.toLowerCase()})))).has("accept")||(o.Accept="application/json"),a&&!i.has("content-type")&&(o["Content-Type"]="application/json"),e.next=9,fetch(r,{method:n,headers:o,body:void 0===a||"string"==typeof a?a:JSON.stringify(a)});case 9:return s=e.sent,e.next=12,s.text();case 12:l={text:u=e.sent};try{l=JSON.parse(u)}catch(e){l={text:u}}if(s.ok){e.next=20;break}throw(h=new Error(s.statusText)).info=l,h.status=s.status,h;case 20:return e.abrupt("return",l);case 21:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function y(e){var t={url:e.url,method:e.method,body:e.body,headers:e.headers},r=n.usePlasmicQueryData(e.queryKey||JSON.stringify(s({type:"DataFetcher"},t)),(function(){return f(t)}));return a.createElement(p,Object.assign({result:r},e))}function v(e,t){return{url:{type:"string",defaultValue:e,description:"Where to fetch the data from"},method:{type:"choice",options:["GET","DELETE","CONNECT","HEAD","OPTIONS","POST","PUT","TRACE"],defaultValue:t,description:"Method to use when fetching"},headers:{type:"object",description:"Request headers (as JSON object) to send"},queryKey:{type:"string",description:"A globally unique ID for this query, used for invalidating queries",invariantable:!0}}}var m={name:"hostless-plasmic-query-data-fetcher",displayName:"HTTP REST API Fetcher",importName:"DataFetcher",importPath:"@plasmicpkgs/plasmic-query",providesData:!0,description:"These fetches may be run client-side (from the browser). Use [Data Queries](https://docs.plasmic.app/learn/http-api-integration/) for authenticated queries or CORS.",props:s({},v("https://api.github.com/users/plasmicapp/repos","GET"),{body:{type:"object",description:"JSON object to be sent in the request body"}},h),defaultStyles:{maxWidth:"100%",width:"stretch"}};function g(e,t){e?e.registerComponent(y,null!=t?t:m):r(y,null!=t?t:m)}function w(e){var t,r=e.query,o=e.url,i=e.method,u=e.headers,c=e.queryKey,l=e.varOverrides;if("GET"===i){var h,d=new URL(null!=o?o:"");d.searchParams.set("query",null!=(h=null==r?void 0:r.query)?h:"{}"),d.searchParams.set("variables",JSON.stringify(s({},null==r?void 0:r.variables,l))),t={url:d.toString(),method:i,headers:u}}else t={body:s({},r,{variables:s({},null==r?void 0:r.variables,l)}),url:o,method:i,headers:u};var y=n.usePlasmicQueryData(c||JSON.stringify(s({type:"GraphqlFetcher"},t)),(function(){return f(t)}));return a.createElement(p,Object.assign({result:y},e))}var b={name:"hostless-plasmic-query-graphql-fetcher",displayName:"GraphQL Fetcher",importName:"GraphqlFetcher",importPath:"@plasmicpkgs/plasmic-query",providesData:!0,props:function(){var e={query:{type:"code",lang:"graphql",headers:function(e){return e.headers},endpoint:function(e){var t;return null!=(t=e.url)?t:""},defaultValue:{query:"query ExampleQuery($personId: ID) {\n person(id: $personId) {\n id\n name\n skinColor\n filmConnection {\n films {\n id\n title\n }\n }\n }\n}\n",variables:{personId:"cGVvcGxlOjIw"}}},varOverrides:{type:"object",displayName:"Override variables",description:"Pass in dynamic values for your query variables, as an object of key-values"}},t=s({},v("https://swapi-graphql.netlify.app/.netlify/functions/index","POST"),e,h);return s({url:t.url,query:t.query,method:t.method,headers:t.headers,queryKey:t.queryKey},u(t,l))}(),defaultStyles:{maxWidth:"100%",width:"stretch"}};function x(e,t){e?e.registerComponent(w,null!=t?t:b):r(w,null!=t?t:b)}exports.DataFetcher=y,exports.GenericFetcherShell=p,exports.GraphqlFetcher=w,exports.dataFetcherMeta=m,exports.genericFetcherPropsMeta=h,exports.graphqlFetcherMeta=b,exports.registerAll=function(e){g(e),x(e)},exports.registerDataFetcher=g,exports.registerGraphqlFetcher=x;
|
|
2
2
|
//# sourceMappingURL=plasmic-query.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plasmic-query.cjs.production.min.js","sources":["../src/Fetcher.tsx"],"sourcesContent":["import { DataProvider, usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport React, { ReactNode } from \"react\";\n\nexport interface GenericFetcherProps {\n children?: ReactNode;\n loadingDisplay?: ReactNode;\n previewSpinner?: boolean;\n errorDisplay?: ReactNode;\n previewErrorDisplay?: boolean;\n dataName?: string;\n errorName?: string;\n noLayout?: boolean;\n className?: string;\n}\n\ntype PropMetas<P> = ComponentMeta<P>[\"props\"];\n\ntype CustomError = Error & {\n info: Record<string, any>;\n status: number;\n};\n\nexport const genericFetcherPropsMeta: PropMetas<GenericFetcherProps> = {\n children: \"slot\",\n loadingDisplay: { type: \"slot\", defaultValue: \"Loading...\" },\n errorDisplay: { type: \"slot\", defaultValue: \"Error fetching data\" },\n dataName: {\n type: \"string\",\n displayName: \"Data name\",\n defaultValue: \"fetchedData\",\n description: \"Variable name to store the fetched data in\",\n },\n errorName: {\n type: \"string\",\n displayName: \"Error name\",\n defaultValue: \"fetchError\",\n description: \"Variable name to store the fetch error in\",\n },\n previewSpinner: {\n type: \"boolean\",\n description: \"Force preview the loading state\",\n displayName: \"Preview loading\",\n },\n previewErrorDisplay: {\n type: \"boolean\",\n description: \"Force preview the error display\",\n displayName: \"Preview error\",\n },\n noLayout: {\n type: \"boolean\",\n displayName: \"No layout\",\n description:\n \"When set, CMS Data Loader will not layout its children; instead, the layout set on its parent element will be used. Useful if you want to set flex gap or control container tag type.\",\n defaultValue: false,\n },\n};\n\nexport function GenericFetcherShell<T>({\n result,\n children,\n loadingDisplay,\n previewSpinner,\n errorDisplay,\n previewErrorDisplay,\n dataName,\n errorName,\n noLayout,\n className,\n}: GenericFetcherProps & {\n result: { data?: T; error?: Error; isLoading?: boolean };\n}) {\n const inEditor = !!usePlasmicCanvasContext();\n if (\n (inEditor && previewSpinner) ||\n (!(\"error\" in result) && !(\"data\" in result))\n ) {\n return <>{loadingDisplay ?? null}</>;\n } else if ((inEditor && previewErrorDisplay) || \"error\" in result) {\n return (\n <DataProvider name={errorName} data={result.error}>\n {errorDisplay ?? null}\n </DataProvider>\n );\n } else {\n const content = (\n <DataProvider name={dataName} data={result.data}>\n {children}\n </DataProvider>\n );\n return noLayout ? content : <div className={className}>{content}</div>;\n }\n}\n\nexport interface FetchProps {\n url?: string;\n method?: string;\n body?: string | object;\n headers?: Record<string, string>;\n}\n\n/**\n * Tries to return the JSON response, or else returns an object with a text key containing the response body text.\n */\nasync function performFetch({ url, method, body, headers }: FetchProps) {\n if (!url) {\n throw new Error(\"Please specify a URL to fetch\");\n }\n\n // Add default headers unless specified\n if (!headers) {\n headers = {};\n }\n const headerNamesLowercase = new Set(\n Object.keys(headers).map((headerName) => headerName.toLowerCase())\n );\n if (!headerNamesLowercase.has(\"accept\")) {\n headers[\"Accept\"] = \"application/json\";\n }\n if (body && !headerNamesLowercase.has(\"content-type\")) {\n headers[\"Content-Type\"] = \"application/json\";\n }\n\n const response = await fetch(url, {\n method,\n headers,\n body:\n body === undefined\n ? body\n : typeof body === \"string\"\n ? body\n : JSON.stringify(body),\n });\n\n const text = await response.text();\n let json: Record<string, any> = { text };\n\n try {\n json = JSON.parse(text);\n } catch (e) {\n json = { text };\n }\n\n // @see https://swr.vercel.app/docs/error-handling\n // If the status code is not in the range 200-299,\n // we still try to parse and throw it.\n if (!response.ok) {\n const error = new Error(response.statusText) as CustomError;\n // Attach extra info to the error object.\n error.info = json;\n error.status = response.status;\n throw error;\n }\n\n return json;\n}\n\nexport interface DataFetcherProps extends FetchProps, GenericFetcherProps {\n queryKey?: string;\n}\n\nexport function DataFetcher(props: DataFetcherProps) {\n const { url, method, body, headers, queryKey } = props;\n const fetchProps: FetchProps = { url, method, body, headers };\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"DataFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nfunction mkFetchProps(\n defaultUrl: string,\n defaultMethod: string\n): PropMetas<FetchProps & { queryKey?: string }> {\n return {\n url: {\n type: \"string\",\n defaultValue: defaultUrl,\n description: \"Where to fetch the data from\",\n },\n method: {\n type: \"choice\",\n options: [\n \"GET\",\n \"DELETE\",\n \"CONNECT\",\n \"HEAD\",\n \"OPTIONS\",\n \"POST\",\n \"PUT\",\n \"TRACE\",\n ],\n defaultValue: defaultMethod,\n description: \"Method to use when fetching\",\n },\n headers: {\n type: \"object\",\n description: \"Request headers (as JSON object) to send\",\n },\n queryKey: {\n type: \"string\",\n description:\n \"A globally unique ID for this query, used for invalidating queries\",\n invariantable: true,\n },\n };\n}\n\nexport const dataFetcherMeta: ComponentMeta<DataFetcherProps> = {\n name: \"hostless-plasmic-query-data-fetcher\",\n displayName: \"HTTP REST API Fetcher\",\n importName: \"DataFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n description:\n \"These fetches may be run client-side (from the browser). Use [Data Queries](https://docs.plasmic.app/learn/http-api-integration/) for authenticated queries or CORS.\",\n props: {\n ...(mkFetchProps(\n \"https://api.github.com/users/plasmicapp/repos\",\n \"GET\"\n ) as any),\n body: {\n type: \"object\",\n description: \"JSON object to be sent in the request body\",\n },\n ...(genericFetcherPropsMeta as any),\n },\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerDataFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<DataFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n DataFetcher,\n customDataFetcherMeta ?? dataFetcherMeta\n );\n } else {\n registerComponent(DataFetcher, customDataFetcherMeta ?? dataFetcherMeta);\n }\n}\n\nexport interface GraphqlFetcherProps\n extends GenericFetcherProps,\n Omit<FetchProps, \"body\"> {\n query?: { query?: string; variables?: object };\n queryKey?: string;\n varOverrides?: object;\n}\n\nexport function GraphqlFetcher(props: GraphqlFetcherProps) {\n const { query, url, method, headers, queryKey, varOverrides } = props;\n\n let fetchProps: FetchProps;\n if (method === \"GET\") {\n // https://graphql.org/learn/serving-over-http/#get-request-and-parameters\n const urlWithQueryParams = new URL(url ?? \"\");\n urlWithQueryParams.searchParams.set(\"query\", query?.query ?? \"{}\");\n urlWithQueryParams.searchParams.set(\n \"variables\",\n JSON.stringify({ ...query?.variables, ...varOverrides })\n );\n fetchProps = {\n url: urlWithQueryParams.toString(),\n method,\n headers,\n };\n } else {\n fetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\n };\n }\n\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"GraphqlFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nexport const graphqlFetcherMeta: ComponentMeta<GraphqlFetcherProps> = {\n name: \"hostless-plasmic-query-graphql-fetcher\",\n displayName: \"GraphQL Fetcher\",\n importName: \"GraphqlFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n props: (() => {\n const gqlMetas: PropMetas<GraphqlFetcherProps> = {\n query: {\n type: \"code\",\n lang: \"graphql\",\n headers: (props) => props.headers,\n endpoint: (props) => props.url ?? \"\",\n defaultValue: {\n query: `query ExampleQuery($personId: ID) {\n person(id: $personId) {\n id\n name\n skinColor\n filmConnection {\n films {\n id\n title\n }\n }\n }\n}\n`,\n variables: {\n personId: \"cGVvcGxlOjIw\", // Yoda\n },\n },\n },\n varOverrides: {\n type: \"object\",\n displayName: \"Override variables\",\n description:\n \"Pass in dynamic values for your query variables, as an object of key-values\",\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\n \"https://swapi-graphql.netlify.app/.netlify/functions/index\",\n \"POST\"\n ),\n ...gqlMetas,\n ...genericFetcherPropsMeta,\n };\n return {\n url,\n query,\n method,\n headers,\n queryKey,\n ...rest,\n } as any;\n })(),\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerGraphqlFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<GraphqlFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n } else {\n registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n }\n}\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n registerDataFetcher(loader);\n registerGraphqlFetcher(loader);\n}\n"],"names":["genericFetcherPropsMeta","children","loadingDisplay","type","defaultValue","errorDisplay","dataName","displayName","description","errorName","previewSpinner","previewErrorDisplay","noLayout","GenericFetcherShell","_ref","result","className","inEditor","usePlasmicCanvasContext","React","DataProvider","name","data","error","content","performFetch","_x","_performFetch","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","url","method","body","headers","headerNamesLowercase","response","text","json","wrap","_context","prev","next","Error","Set","Object","keys","map","headerName","toLowerCase","has","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","fetchProps","usePlasmicQueryData","queryKey","_extends","mkFetchProps","defaultUrl","defaultMethod","options","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","varOverrides","_query$query","urlWithQueryParams","URL","searchParams","set","variables","toString","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","personId","_mkFetchProps$gqlMeta","_objectWithoutPropertiesLoose","_excluded","registerGraphqlFetcher"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plasmic-query.cjs.production.min.js","sources":["../src/Fetcher.tsx"],"sourcesContent":["import { DataProvider, usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport React, { ReactNode } from \"react\";\n\nexport interface GenericFetcherProps {\n children?: ReactNode;\n loadingDisplay?: ReactNode;\n previewSpinner?: boolean;\n errorDisplay?: ReactNode;\n previewErrorDisplay?: boolean;\n dataName?: string;\n errorName?: string;\n noLayout?: boolean;\n className?: string;\n}\n\ntype PropMetas<P> = ComponentMeta<P>[\"props\"];\n\ntype CustomError = Error & {\n info: Record<string, any>;\n status: number;\n};\n\nexport const genericFetcherPropsMeta: PropMetas<GenericFetcherProps> = {\n children: \"slot\",\n loadingDisplay: { type: \"slot\", defaultValue: \"Loading...\" },\n errorDisplay: { type: \"slot\", defaultValue: \"Error fetching data\" },\n dataName: {\n type: \"string\",\n displayName: \"Data name\",\n defaultValue: \"fetchedData\",\n description: \"Variable name to store the fetched data in\",\n },\n errorName: {\n type: \"string\",\n displayName: \"Error name\",\n defaultValue: \"fetchError\",\n description: \"Variable name to store the fetch error in\",\n },\n previewSpinner: {\n type: \"boolean\",\n description: \"Force preview the loading state\",\n displayName: \"Preview loading\",\n },\n previewErrorDisplay: {\n type: \"boolean\",\n description: \"Force preview the error display\",\n displayName: \"Preview error\",\n },\n noLayout: {\n type: \"boolean\",\n displayName: \"No layout\",\n description:\n \"When set, CMS Data Loader will not layout its children; instead, the layout set on its parent element will be used. Useful if you want to set flex gap or control container tag type.\",\n defaultValue: false,\n },\n};\n\nexport function GenericFetcherShell<T>({\n result,\n children,\n loadingDisplay,\n previewSpinner,\n errorDisplay,\n previewErrorDisplay,\n dataName,\n errorName,\n noLayout,\n className,\n}: GenericFetcherProps & {\n result: { data?: T; error?: Error; isLoading?: boolean };\n}) {\n const inEditor = !!usePlasmicCanvasContext();\n if (\n (inEditor && previewSpinner) ||\n (!(\"error\" in result) && !(\"data\" in result))\n ) {\n return <>{loadingDisplay ?? null}</>;\n } else if ((inEditor && previewErrorDisplay) || \"error\" in result) {\n return (\n <DataProvider name={errorName} data={result.error}>\n {errorDisplay ?? null}\n </DataProvider>\n );\n } else {\n const content = (\n <DataProvider name={dataName} data={result.data}>\n {children}\n </DataProvider>\n );\n return noLayout ? content : <div className={className}>{content}</div>;\n }\n}\n\nexport interface FetchProps {\n url?: string;\n method?: string;\n body?: string | object;\n headers?: Record<string, string>;\n}\n\n/**\n * Tries to return the JSON response, or else returns an object with a text key containing the response body text.\n */\nasync function performFetch({ url, method, body, headers }: FetchProps) {\n if (!url) {\n throw new Error(\"Please specify a URL to fetch\");\n }\n\n // Add default headers unless specified\n if (!headers) {\n headers = {};\n }\n const headerNamesLowercase = new Set(\n Object.keys(headers).map((headerName) => headerName.toLowerCase())\n );\n if (!headerNamesLowercase.has(\"accept\")) {\n headers[\"Accept\"] = \"application/json\";\n }\n if (body && !headerNamesLowercase.has(\"content-type\")) {\n headers[\"Content-Type\"] = \"application/json\";\n }\n\n const response = await fetch(url, {\n method,\n headers,\n body:\n body === undefined\n ? body\n : typeof body === \"string\"\n ? body\n : JSON.stringify(body),\n });\n\n const text = await response.text();\n let json: Record<string, any> = { text };\n\n try {\n json = JSON.parse(text);\n } catch (e) {\n json = { text };\n }\n\n // @see https://swr.vercel.app/docs/error-handling\n // If the status code is not in the range 200-299,\n // we still try to parse and throw it.\n if (!response.ok) {\n const error = new Error(response.statusText) as CustomError;\n // Attach extra info to the error object.\n error.info = json;\n error.status = response.status;\n throw error;\n }\n\n return json;\n}\n\nexport interface DataFetcherProps extends FetchProps, GenericFetcherProps {\n queryKey?: string;\n}\n\nexport function DataFetcher(props: DataFetcherProps) {\n const { url, method, body, headers, queryKey } = props;\n const fetchProps: FetchProps = { url, method, body, headers };\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"DataFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nfunction mkFetchProps(\n defaultUrl: string,\n defaultMethod: string\n): PropMetas<FetchProps & { queryKey?: string }> {\n return {\n url: {\n type: \"string\",\n defaultValue: defaultUrl,\n description: \"Where to fetch the data from\",\n },\n method: {\n type: \"choice\",\n options: [\n \"GET\",\n \"DELETE\",\n \"CONNECT\",\n \"HEAD\",\n \"OPTIONS\",\n \"POST\",\n \"PUT\",\n \"TRACE\",\n ],\n defaultValue: defaultMethod,\n description: \"Method to use when fetching\",\n },\n headers: {\n type: \"object\",\n description: \"Request headers (as JSON object) to send\",\n },\n queryKey: {\n type: \"string\",\n description:\n \"A globally unique ID for this query, used for invalidating queries\",\n invariantable: true,\n },\n };\n}\n\nexport const dataFetcherMeta: ComponentMeta<DataFetcherProps> = {\n name: \"hostless-plasmic-query-data-fetcher\",\n displayName: \"HTTP REST API Fetcher\",\n importName: \"DataFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n description:\n \"These fetches may be run client-side (from the browser). Use [Data Queries](https://docs.plasmic.app/learn/http-api-integration/) for authenticated queries or CORS.\",\n props: {\n ...(mkFetchProps(\n \"https://api.github.com/users/plasmicapp/repos\",\n \"GET\"\n ) as any),\n body: {\n type: \"object\",\n description: \"JSON object to be sent in the request body\",\n },\n ...(genericFetcherPropsMeta as any),\n },\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerDataFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<DataFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n DataFetcher,\n customDataFetcherMeta ?? dataFetcherMeta\n );\n } else {\n registerComponent(DataFetcher, customDataFetcherMeta ?? dataFetcherMeta);\n }\n}\n\nexport interface GraphqlFetcherProps\n extends GenericFetcherProps,\n Omit<FetchProps, \"body\"> {\n query?: { query?: string; variables?: object };\n queryKey?: string;\n varOverrides?: object;\n}\n\nexport function GraphqlFetcher(props: GraphqlFetcherProps) {\n const { query, url, method, headers, queryKey, varOverrides } = props;\n\n let fetchProps: FetchProps;\n if (method === \"GET\") {\n // https://graphql.org/learn/serving-over-http/#get-request-and-parameters\n const urlWithQueryParams = new URL(url ?? \"\");\n urlWithQueryParams.searchParams.set(\"query\", query?.query ?? \"{}\");\n urlWithQueryParams.searchParams.set(\n \"variables\",\n JSON.stringify({ ...query?.variables, ...varOverrides })\n );\n fetchProps = {\n url: urlWithQueryParams.toString(),\n method,\n headers,\n };\n } else {\n fetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\n };\n }\n\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"GraphqlFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nexport const graphqlFetcherMeta: ComponentMeta<GraphqlFetcherProps> = {\n name: \"hostless-plasmic-query-graphql-fetcher\",\n displayName: \"GraphQL Fetcher\",\n importName: \"GraphqlFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n props: (() => {\n const gqlMetas: PropMetas<GraphqlFetcherProps> = {\n query: {\n type: \"code\",\n lang: \"graphql\",\n headers: (props) => props.headers,\n endpoint: (props) => props.url ?? \"\",\n defaultValue: {\n query: `query ExampleQuery($personId: ID) {\n person(id: $personId) {\n id\n name\n skinColor\n filmConnection {\n films {\n id\n title\n }\n }\n }\n}\n`,\n variables: {\n personId: \"cGVvcGxlOjIw\", // Yoda\n },\n },\n },\n varOverrides: {\n type: \"object\",\n displayName: \"Override variables\",\n description:\n \"Pass in dynamic values for your query variables, as an object of key-values\",\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\n \"https://swapi-graphql.netlify.app/.netlify/functions/index\",\n \"POST\"\n ),\n ...gqlMetas,\n ...genericFetcherPropsMeta,\n };\n return {\n url,\n query,\n method,\n headers,\n queryKey,\n ...rest,\n } as any;\n })(),\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerGraphqlFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<GraphqlFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n } else {\n registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n }\n}\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n registerDataFetcher(loader);\n registerGraphqlFetcher(loader);\n}\n"],"names":["genericFetcherPropsMeta","children","loadingDisplay","type","defaultValue","errorDisplay","dataName","displayName","description","errorName","previewSpinner","previewErrorDisplay","noLayout","GenericFetcherShell","_ref","result","className","inEditor","usePlasmicCanvasContext","React","DataProvider","name","data","error","content","performFetch","_x","_performFetch","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","url","method","body","headers","headerNamesLowercase","response","text","json","wrap","_context","prev","next","Error","Set","Object","keys","map","headerName","toLowerCase","has","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","fetchProps","usePlasmicQueryData","queryKey","_extends","mkFetchProps","defaultUrl","defaultMethod","options","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","varOverrides","_query$query","urlWithQueryParams","URL","searchParams","set","variables","toString","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","personId","_mkFetchProps$gqlMeta","_objectWithoutPropertiesLoose","_excluded","registerGraphqlFetcher"],"mappings":"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"}
|
|
@@ -3,6 +3,49 @@ import registerComponent from '@plasmicapp/host/registerComponent';
|
|
|
3
3
|
import { usePlasmicQueryData } from '@plasmicapp/query';
|
|
4
4
|
import React from 'react';
|
|
5
5
|
|
|
6
|
+
function asyncGeneratorStep(n, t, e, r, o, a, c) {
|
|
7
|
+
try {
|
|
8
|
+
var i = n[a](c),
|
|
9
|
+
u = i.value;
|
|
10
|
+
} catch (n) {
|
|
11
|
+
return void e(n);
|
|
12
|
+
}
|
|
13
|
+
i.done ? t(u) : Promise.resolve(u).then(r, o);
|
|
14
|
+
}
|
|
15
|
+
function _asyncToGenerator(n) {
|
|
16
|
+
return function () {
|
|
17
|
+
var t = this,
|
|
18
|
+
e = arguments;
|
|
19
|
+
return new Promise(function (r, o) {
|
|
20
|
+
var a = n.apply(t, e);
|
|
21
|
+
function _next(n) {
|
|
22
|
+
asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
|
|
23
|
+
}
|
|
24
|
+
function _throw(n) {
|
|
25
|
+
asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
|
|
26
|
+
}
|
|
27
|
+
_next(void 0);
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
function _extends() {
|
|
32
|
+
return _extends = Object.assign ? Object.assign.bind() : function (n) {
|
|
33
|
+
for (var e = 1; e < arguments.length; e++) {
|
|
34
|
+
var t = arguments[e];
|
|
35
|
+
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
36
|
+
}
|
|
37
|
+
return n;
|
|
38
|
+
}, _extends.apply(null, arguments);
|
|
39
|
+
}
|
|
40
|
+
function _objectWithoutPropertiesLoose(r, e) {
|
|
41
|
+
if (null == r) return {};
|
|
42
|
+
var t = {};
|
|
43
|
+
for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
|
|
44
|
+
if (-1 !== e.indexOf(n)) continue;
|
|
45
|
+
t[n] = r[n];
|
|
46
|
+
}
|
|
47
|
+
return t;
|
|
48
|
+
}
|
|
6
49
|
function _regeneratorRuntime() {
|
|
7
50
|
_regeneratorRuntime = function () {
|
|
8
51
|
return e;
|
|
@@ -111,7 +154,7 @@ function _regeneratorRuntime() {
|
|
|
111
154
|
function makeInvokeMethod(e, r, n) {
|
|
112
155
|
var o = h;
|
|
113
156
|
return function (i, a) {
|
|
114
|
-
if (o === f) throw
|
|
157
|
+
if (o === f) throw Error("Generator is already running");
|
|
115
158
|
if (o === s) {
|
|
116
159
|
if ("throw" === i) throw a;
|
|
117
160
|
return {
|
|
@@ -253,7 +296,7 @@ function _regeneratorRuntime() {
|
|
|
253
296
|
} else if (c) {
|
|
254
297
|
if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
|
|
255
298
|
} else {
|
|
256
|
-
if (!u) throw
|
|
299
|
+
if (!u) throw Error("try statement without catch or finally");
|
|
257
300
|
if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
|
|
258
301
|
}
|
|
259
302
|
}
|
|
@@ -293,7 +336,7 @@ function _regeneratorRuntime() {
|
|
|
293
336
|
return o;
|
|
294
337
|
}
|
|
295
338
|
}
|
|
296
|
-
throw
|
|
339
|
+
throw Error("illegal catch attempt");
|
|
297
340
|
},
|
|
298
341
|
delegateYield: function (e, r, n) {
|
|
299
342
|
return this.delegate = {
|
|
@@ -304,62 +347,6 @@ function _regeneratorRuntime() {
|
|
|
304
347
|
}
|
|
305
348
|
}, e;
|
|
306
349
|
}
|
|
307
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
308
|
-
try {
|
|
309
|
-
var info = gen[key](arg);
|
|
310
|
-
var value = info.value;
|
|
311
|
-
} catch (error) {
|
|
312
|
-
reject(error);
|
|
313
|
-
return;
|
|
314
|
-
}
|
|
315
|
-
if (info.done) {
|
|
316
|
-
resolve(value);
|
|
317
|
-
} else {
|
|
318
|
-
Promise.resolve(value).then(_next, _throw);
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
function _asyncToGenerator(fn) {
|
|
322
|
-
return function () {
|
|
323
|
-
var self = this,
|
|
324
|
-
args = arguments;
|
|
325
|
-
return new Promise(function (resolve, reject) {
|
|
326
|
-
var gen = fn.apply(self, args);
|
|
327
|
-
function _next(value) {
|
|
328
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
329
|
-
}
|
|
330
|
-
function _throw(err) {
|
|
331
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
332
|
-
}
|
|
333
|
-
_next(undefined);
|
|
334
|
-
});
|
|
335
|
-
};
|
|
336
|
-
}
|
|
337
|
-
function _extends() {
|
|
338
|
-
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
339
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
340
|
-
var source = arguments[i];
|
|
341
|
-
for (var key in source) {
|
|
342
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
343
|
-
target[key] = source[key];
|
|
344
|
-
}
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
return target;
|
|
348
|
-
};
|
|
349
|
-
return _extends.apply(this, arguments);
|
|
350
|
-
}
|
|
351
|
-
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
352
|
-
if (source == null) return {};
|
|
353
|
-
var target = {};
|
|
354
|
-
var sourceKeys = Object.keys(source);
|
|
355
|
-
var key, i;
|
|
356
|
-
for (i = 0; i < sourceKeys.length; i++) {
|
|
357
|
-
key = sourceKeys[i];
|
|
358
|
-
if (excluded.indexOf(key) >= 0) continue;
|
|
359
|
-
target[key] = source[key];
|
|
360
|
-
}
|
|
361
|
-
return target;
|
|
362
|
-
}
|
|
363
350
|
|
|
364
351
|
var _excluded = ["url", "query", "method", "headers", "queryKey"];
|
|
365
352
|
var genericFetcherPropsMeta = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plasmic-query.esm.js","sources":["../src/Fetcher.tsx"],"sourcesContent":["import { DataProvider, usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport React, { ReactNode } from \"react\";\n\nexport interface GenericFetcherProps {\n children?: ReactNode;\n loadingDisplay?: ReactNode;\n previewSpinner?: boolean;\n errorDisplay?: ReactNode;\n previewErrorDisplay?: boolean;\n dataName?: string;\n errorName?: string;\n noLayout?: boolean;\n className?: string;\n}\n\ntype PropMetas<P> = ComponentMeta<P>[\"props\"];\n\ntype CustomError = Error & {\n info: Record<string, any>;\n status: number;\n};\n\nexport const genericFetcherPropsMeta: PropMetas<GenericFetcherProps> = {\n children: \"slot\",\n loadingDisplay: { type: \"slot\", defaultValue: \"Loading...\" },\n errorDisplay: { type: \"slot\", defaultValue: \"Error fetching data\" },\n dataName: {\n type: \"string\",\n displayName: \"Data name\",\n defaultValue: \"fetchedData\",\n description: \"Variable name to store the fetched data in\",\n },\n errorName: {\n type: \"string\",\n displayName: \"Error name\",\n defaultValue: \"fetchError\",\n description: \"Variable name to store the fetch error in\",\n },\n previewSpinner: {\n type: \"boolean\",\n description: \"Force preview the loading state\",\n displayName: \"Preview loading\",\n },\n previewErrorDisplay: {\n type: \"boolean\",\n description: \"Force preview the error display\",\n displayName: \"Preview error\",\n },\n noLayout: {\n type: \"boolean\",\n displayName: \"No layout\",\n description:\n \"When set, CMS Data Loader will not layout its children; instead, the layout set on its parent element will be used. Useful if you want to set flex gap or control container tag type.\",\n defaultValue: false,\n },\n};\n\nexport function GenericFetcherShell<T>({\n result,\n children,\n loadingDisplay,\n previewSpinner,\n errorDisplay,\n previewErrorDisplay,\n dataName,\n errorName,\n noLayout,\n className,\n}: GenericFetcherProps & {\n result: { data?: T; error?: Error; isLoading?: boolean };\n}) {\n const inEditor = !!usePlasmicCanvasContext();\n if (\n (inEditor && previewSpinner) ||\n (!(\"error\" in result) && !(\"data\" in result))\n ) {\n return <>{loadingDisplay ?? null}</>;\n } else if ((inEditor && previewErrorDisplay) || \"error\" in result) {\n return (\n <DataProvider name={errorName} data={result.error}>\n {errorDisplay ?? null}\n </DataProvider>\n );\n } else {\n const content = (\n <DataProvider name={dataName} data={result.data}>\n {children}\n </DataProvider>\n );\n return noLayout ? content : <div className={className}>{content}</div>;\n }\n}\n\nexport interface FetchProps {\n url?: string;\n method?: string;\n body?: string | object;\n headers?: Record<string, string>;\n}\n\n/**\n * Tries to return the JSON response, or else returns an object with a text key containing the response body text.\n */\nasync function performFetch({ url, method, body, headers }: FetchProps) {\n if (!url) {\n throw new Error(\"Please specify a URL to fetch\");\n }\n\n // Add default headers unless specified\n if (!headers) {\n headers = {};\n }\n const headerNamesLowercase = new Set(\n Object.keys(headers).map((headerName) => headerName.toLowerCase())\n );\n if (!headerNamesLowercase.has(\"accept\")) {\n headers[\"Accept\"] = \"application/json\";\n }\n if (body && !headerNamesLowercase.has(\"content-type\")) {\n headers[\"Content-Type\"] = \"application/json\";\n }\n\n const response = await fetch(url, {\n method,\n headers,\n body:\n body === undefined\n ? body\n : typeof body === \"string\"\n ? body\n : JSON.stringify(body),\n });\n\n const text = await response.text();\n let json: Record<string, any> = { text };\n\n try {\n json = JSON.parse(text);\n } catch (e) {\n json = { text };\n }\n\n // @see https://swr.vercel.app/docs/error-handling\n // If the status code is not in the range 200-299,\n // we still try to parse and throw it.\n if (!response.ok) {\n const error = new Error(response.statusText) as CustomError;\n // Attach extra info to the error object.\n error.info = json;\n error.status = response.status;\n throw error;\n }\n\n return json;\n}\n\nexport interface DataFetcherProps extends FetchProps, GenericFetcherProps {\n queryKey?: string;\n}\n\nexport function DataFetcher(props: DataFetcherProps) {\n const { url, method, body, headers, queryKey } = props;\n const fetchProps: FetchProps = { url, method, body, headers };\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"DataFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nfunction mkFetchProps(\n defaultUrl: string,\n defaultMethod: string\n): PropMetas<FetchProps & { queryKey?: string }> {\n return {\n url: {\n type: \"string\",\n defaultValue: defaultUrl,\n description: \"Where to fetch the data from\",\n },\n method: {\n type: \"choice\",\n options: [\n \"GET\",\n \"DELETE\",\n \"CONNECT\",\n \"HEAD\",\n \"OPTIONS\",\n \"POST\",\n \"PUT\",\n \"TRACE\",\n ],\n defaultValue: defaultMethod,\n description: \"Method to use when fetching\",\n },\n headers: {\n type: \"object\",\n description: \"Request headers (as JSON object) to send\",\n },\n queryKey: {\n type: \"string\",\n description:\n \"A globally unique ID for this query, used for invalidating queries\",\n invariantable: true,\n },\n };\n}\n\nexport const dataFetcherMeta: ComponentMeta<DataFetcherProps> = {\n name: \"hostless-plasmic-query-data-fetcher\",\n displayName: \"HTTP REST API Fetcher\",\n importName: \"DataFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n description:\n \"These fetches may be run client-side (from the browser). Use [Data Queries](https://docs.plasmic.app/learn/http-api-integration/) for authenticated queries or CORS.\",\n props: {\n ...(mkFetchProps(\n \"https://api.github.com/users/plasmicapp/repos\",\n \"GET\"\n ) as any),\n body: {\n type: \"object\",\n description: \"JSON object to be sent in the request body\",\n },\n ...(genericFetcherPropsMeta as any),\n },\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerDataFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<DataFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n DataFetcher,\n customDataFetcherMeta ?? dataFetcherMeta\n );\n } else {\n registerComponent(DataFetcher, customDataFetcherMeta ?? dataFetcherMeta);\n }\n}\n\nexport interface GraphqlFetcherProps\n extends GenericFetcherProps,\n Omit<FetchProps, \"body\"> {\n query?: { query?: string; variables?: object };\n queryKey?: string;\n varOverrides?: object;\n}\n\nexport function GraphqlFetcher(props: GraphqlFetcherProps) {\n const { query, url, method, headers, queryKey, varOverrides } = props;\n\n let fetchProps: FetchProps;\n if (method === \"GET\") {\n // https://graphql.org/learn/serving-over-http/#get-request-and-parameters\n const urlWithQueryParams = new URL(url ?? \"\");\n urlWithQueryParams.searchParams.set(\"query\", query?.query ?? \"{}\");\n urlWithQueryParams.searchParams.set(\n \"variables\",\n JSON.stringify({ ...query?.variables, ...varOverrides })\n );\n fetchProps = {\n url: urlWithQueryParams.toString(),\n method,\n headers,\n };\n } else {\n fetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\n };\n }\n\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"GraphqlFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nexport const graphqlFetcherMeta: ComponentMeta<GraphqlFetcherProps> = {\n name: \"hostless-plasmic-query-graphql-fetcher\",\n displayName: \"GraphQL Fetcher\",\n importName: \"GraphqlFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n props: (() => {\n const gqlMetas: PropMetas<GraphqlFetcherProps> = {\n query: {\n type: \"code\",\n lang: \"graphql\",\n headers: (props) => props.headers,\n endpoint: (props) => props.url ?? \"\",\n defaultValue: {\n query: `query ExampleQuery($personId: ID) {\n person(id: $personId) {\n id\n name\n skinColor\n filmConnection {\n films {\n id\n title\n }\n }\n }\n}\n`,\n variables: {\n personId: \"cGVvcGxlOjIw\", // Yoda\n },\n },\n },\n varOverrides: {\n type: \"object\",\n displayName: \"Override variables\",\n description:\n \"Pass in dynamic values for your query variables, as an object of key-values\",\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\n \"https://swapi-graphql.netlify.app/.netlify/functions/index\",\n \"POST\"\n ),\n ...gqlMetas,\n ...genericFetcherPropsMeta,\n };\n return {\n url,\n query,\n method,\n headers,\n queryKey,\n ...rest,\n } as any;\n })(),\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerGraphqlFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<GraphqlFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n } else {\n registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n }\n}\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n registerDataFetcher(loader);\n registerGraphqlFetcher(loader);\n}\n"],"names":["genericFetcherPropsMeta","children","loadingDisplay","type","defaultValue","errorDisplay","dataName","displayName","description","errorName","previewSpinner","previewErrorDisplay","noLayout","GenericFetcherShell","_ref","result","className","inEditor","usePlasmicCanvasContext","React","DataProvider","name","data","error","content","performFetch","_x","_performFetch","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","url","method","body","headers","headerNamesLowercase","response","text","json","wrap","_callee$","_context","prev","next","Error","Set","Object","keys","map","headerName","toLowerCase","has","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","queryKey","fetchProps","usePlasmicQueryData","_extends","mkFetchProps","defaultUrl","defaultMethod","options","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","varOverrides","_query$query","urlWithQueryParams","URL","searchParams","set","variables","toString","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","personId","_mkFetchProps$gqlMeta","rest","_objectWithoutPropertiesLoose","_excluded","registerGraphqlFetcher","registerAll"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plasmic-query.esm.js","sources":["../src/Fetcher.tsx"],"sourcesContent":["import { DataProvider, usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { usePlasmicQueryData } from \"@plasmicapp/query\";\nimport React, { ReactNode } from \"react\";\n\nexport interface GenericFetcherProps {\n children?: ReactNode;\n loadingDisplay?: ReactNode;\n previewSpinner?: boolean;\n errorDisplay?: ReactNode;\n previewErrorDisplay?: boolean;\n dataName?: string;\n errorName?: string;\n noLayout?: boolean;\n className?: string;\n}\n\ntype PropMetas<P> = ComponentMeta<P>[\"props\"];\n\ntype CustomError = Error & {\n info: Record<string, any>;\n status: number;\n};\n\nexport const genericFetcherPropsMeta: PropMetas<GenericFetcherProps> = {\n children: \"slot\",\n loadingDisplay: { type: \"slot\", defaultValue: \"Loading...\" },\n errorDisplay: { type: \"slot\", defaultValue: \"Error fetching data\" },\n dataName: {\n type: \"string\",\n displayName: \"Data name\",\n defaultValue: \"fetchedData\",\n description: \"Variable name to store the fetched data in\",\n },\n errorName: {\n type: \"string\",\n displayName: \"Error name\",\n defaultValue: \"fetchError\",\n description: \"Variable name to store the fetch error in\",\n },\n previewSpinner: {\n type: \"boolean\",\n description: \"Force preview the loading state\",\n displayName: \"Preview loading\",\n },\n previewErrorDisplay: {\n type: \"boolean\",\n description: \"Force preview the error display\",\n displayName: \"Preview error\",\n },\n noLayout: {\n type: \"boolean\",\n displayName: \"No layout\",\n description:\n \"When set, CMS Data Loader will not layout its children; instead, the layout set on its parent element will be used. Useful if you want to set flex gap or control container tag type.\",\n defaultValue: false,\n },\n};\n\nexport function GenericFetcherShell<T>({\n result,\n children,\n loadingDisplay,\n previewSpinner,\n errorDisplay,\n previewErrorDisplay,\n dataName,\n errorName,\n noLayout,\n className,\n}: GenericFetcherProps & {\n result: { data?: T; error?: Error; isLoading?: boolean };\n}) {\n const inEditor = !!usePlasmicCanvasContext();\n if (\n (inEditor && previewSpinner) ||\n (!(\"error\" in result) && !(\"data\" in result))\n ) {\n return <>{loadingDisplay ?? null}</>;\n } else if ((inEditor && previewErrorDisplay) || \"error\" in result) {\n return (\n <DataProvider name={errorName} data={result.error}>\n {errorDisplay ?? null}\n </DataProvider>\n );\n } else {\n const content = (\n <DataProvider name={dataName} data={result.data}>\n {children}\n </DataProvider>\n );\n return noLayout ? content : <div className={className}>{content}</div>;\n }\n}\n\nexport interface FetchProps {\n url?: string;\n method?: string;\n body?: string | object;\n headers?: Record<string, string>;\n}\n\n/**\n * Tries to return the JSON response, or else returns an object with a text key containing the response body text.\n */\nasync function performFetch({ url, method, body, headers }: FetchProps) {\n if (!url) {\n throw new Error(\"Please specify a URL to fetch\");\n }\n\n // Add default headers unless specified\n if (!headers) {\n headers = {};\n }\n const headerNamesLowercase = new Set(\n Object.keys(headers).map((headerName) => headerName.toLowerCase())\n );\n if (!headerNamesLowercase.has(\"accept\")) {\n headers[\"Accept\"] = \"application/json\";\n }\n if (body && !headerNamesLowercase.has(\"content-type\")) {\n headers[\"Content-Type\"] = \"application/json\";\n }\n\n const response = await fetch(url, {\n method,\n headers,\n body:\n body === undefined\n ? body\n : typeof body === \"string\"\n ? body\n : JSON.stringify(body),\n });\n\n const text = await response.text();\n let json: Record<string, any> = { text };\n\n try {\n json = JSON.parse(text);\n } catch (e) {\n json = { text };\n }\n\n // @see https://swr.vercel.app/docs/error-handling\n // If the status code is not in the range 200-299,\n // we still try to parse and throw it.\n if (!response.ok) {\n const error = new Error(response.statusText) as CustomError;\n // Attach extra info to the error object.\n error.info = json;\n error.status = response.status;\n throw error;\n }\n\n return json;\n}\n\nexport interface DataFetcherProps extends FetchProps, GenericFetcherProps {\n queryKey?: string;\n}\n\nexport function DataFetcher(props: DataFetcherProps) {\n const { url, method, body, headers, queryKey } = props;\n const fetchProps: FetchProps = { url, method, body, headers };\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"DataFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nfunction mkFetchProps(\n defaultUrl: string,\n defaultMethod: string\n): PropMetas<FetchProps & { queryKey?: string }> {\n return {\n url: {\n type: \"string\",\n defaultValue: defaultUrl,\n description: \"Where to fetch the data from\",\n },\n method: {\n type: \"choice\",\n options: [\n \"GET\",\n \"DELETE\",\n \"CONNECT\",\n \"HEAD\",\n \"OPTIONS\",\n \"POST\",\n \"PUT\",\n \"TRACE\",\n ],\n defaultValue: defaultMethod,\n description: \"Method to use when fetching\",\n },\n headers: {\n type: \"object\",\n description: \"Request headers (as JSON object) to send\",\n },\n queryKey: {\n type: \"string\",\n description:\n \"A globally unique ID for this query, used for invalidating queries\",\n invariantable: true,\n },\n };\n}\n\nexport const dataFetcherMeta: ComponentMeta<DataFetcherProps> = {\n name: \"hostless-plasmic-query-data-fetcher\",\n displayName: \"HTTP REST API Fetcher\",\n importName: \"DataFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n description:\n \"These fetches may be run client-side (from the browser). Use [Data Queries](https://docs.plasmic.app/learn/http-api-integration/) for authenticated queries or CORS.\",\n props: {\n ...(mkFetchProps(\n \"https://api.github.com/users/plasmicapp/repos\",\n \"GET\"\n ) as any),\n body: {\n type: \"object\",\n description: \"JSON object to be sent in the request body\",\n },\n ...(genericFetcherPropsMeta as any),\n },\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerDataFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<DataFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n DataFetcher,\n customDataFetcherMeta ?? dataFetcherMeta\n );\n } else {\n registerComponent(DataFetcher, customDataFetcherMeta ?? dataFetcherMeta);\n }\n}\n\nexport interface GraphqlFetcherProps\n extends GenericFetcherProps,\n Omit<FetchProps, \"body\"> {\n query?: { query?: string; variables?: object };\n queryKey?: string;\n varOverrides?: object;\n}\n\nexport function GraphqlFetcher(props: GraphqlFetcherProps) {\n const { query, url, method, headers, queryKey, varOverrides } = props;\n\n let fetchProps: FetchProps;\n if (method === \"GET\") {\n // https://graphql.org/learn/serving-over-http/#get-request-and-parameters\n const urlWithQueryParams = new URL(url ?? \"\");\n urlWithQueryParams.searchParams.set(\"query\", query?.query ?? \"{}\");\n urlWithQueryParams.searchParams.set(\n \"variables\",\n JSON.stringify({ ...query?.variables, ...varOverrides })\n );\n fetchProps = {\n url: urlWithQueryParams.toString(),\n method,\n headers,\n };\n } else {\n fetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\n };\n }\n\n const result = usePlasmicQueryData(\n queryKey || JSON.stringify({ type: \"GraphqlFetcher\", ...fetchProps }),\n () => performFetch(fetchProps)\n );\n return <GenericFetcherShell result={result} {...props} />;\n}\n\nexport const graphqlFetcherMeta: ComponentMeta<GraphqlFetcherProps> = {\n name: \"hostless-plasmic-query-graphql-fetcher\",\n displayName: \"GraphQL Fetcher\",\n importName: \"GraphqlFetcher\",\n importPath: \"@plasmicpkgs/plasmic-query\",\n providesData: true,\n props: (() => {\n const gqlMetas: PropMetas<GraphqlFetcherProps> = {\n query: {\n type: \"code\",\n lang: \"graphql\",\n headers: (props) => props.headers,\n endpoint: (props) => props.url ?? \"\",\n defaultValue: {\n query: `query ExampleQuery($personId: ID) {\n person(id: $personId) {\n id\n name\n skinColor\n filmConnection {\n films {\n id\n title\n }\n }\n }\n}\n`,\n variables: {\n personId: \"cGVvcGxlOjIw\", // Yoda\n },\n },\n },\n varOverrides: {\n type: \"object\",\n displayName: \"Override variables\",\n description:\n \"Pass in dynamic values for your query variables, as an object of key-values\",\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\n \"https://swapi-graphql.netlify.app/.netlify/functions/index\",\n \"POST\"\n ),\n ...gqlMetas,\n ...genericFetcherPropsMeta,\n };\n return {\n url,\n query,\n method,\n headers,\n queryKey,\n ...rest,\n } as any;\n })(),\n defaultStyles: {\n maxWidth: \"100%\",\n width: \"stretch\",\n },\n};\n\nexport function registerGraphqlFetcher(\n loader?: { registerComponent: typeof registerComponent },\n customDataFetcherMeta?: ComponentMeta<GraphqlFetcherProps>\n) {\n if (loader) {\n loader.registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n } else {\n registerComponent(\n GraphqlFetcher,\n customDataFetcherMeta ?? graphqlFetcherMeta\n );\n }\n}\n\nexport function registerAll(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n registerDataFetcher(loader);\n registerGraphqlFetcher(loader);\n}\n"],"names":["genericFetcherPropsMeta","children","loadingDisplay","type","defaultValue","errorDisplay","dataName","displayName","description","errorName","previewSpinner","previewErrorDisplay","noLayout","GenericFetcherShell","_ref","result","className","inEditor","usePlasmicCanvasContext","React","DataProvider","name","data","error","content","performFetch","_x","_performFetch","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","url","method","body","headers","headerNamesLowercase","response","text","json","wrap","_callee$","_context","prev","next","Error","Set","Object","keys","map","headerName","toLowerCase","has","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","queryKey","fetchProps","usePlasmicQueryData","_extends","mkFetchProps","defaultUrl","defaultMethod","options","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","varOverrides","_query$query","urlWithQueryParams","URL","searchParams","set","variables","toString","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","personId","_mkFetchProps$gqlMeta","rest","_objectWithoutPropertiesLoose","_excluded","registerGraphqlFetcher","registerAll"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0BaA,uBAAuB,GAAmC;EACrEC,QAAQ,EAAE,MAAM;EAChBC,cAAc,EAAE;IAAEC,IAAI,EAAE,MAAM;IAAEC,YAAY,EAAE;GAAc;EAC5DC,YAAY,EAAE;IAAEF,IAAI,EAAE,MAAM;IAAEC,YAAY,EAAE;GAAuB;EACnEE,QAAQ,EAAE;IACRH,IAAI,EAAE,QAAQ;IACdI,WAAW,EAAE,WAAW;IACxBH,YAAY,EAAE,aAAa;IAC3BI,WAAW,EAAE;GACd;EACDC,SAAS,EAAE;IACTN,IAAI,EAAE,QAAQ;IACdI,WAAW,EAAE,YAAY;IACzBH,YAAY,EAAE,YAAY;IAC1BI,WAAW,EAAE;GACd;EACDE,cAAc,EAAE;IACdP,IAAI,EAAE,SAAS;IACfK,WAAW,EAAE,iCAAiC;IAC9CD,WAAW,EAAE;GACd;EACDI,mBAAmB,EAAE;IACnBR,IAAI,EAAE,SAAS;IACfK,WAAW,EAAE,iCAAiC;IAC9CD,WAAW,EAAE;GACd;EACDK,QAAQ,EAAE;IACRT,IAAI,EAAE,SAAS;IACfI,WAAW,EAAE,WAAW;IACxBC,WAAW,EACT,uLAAuL;IACzLJ,YAAY,EAAE;;;SAIFS,mBAAmBA,CAAAC,IAAA;MACjCC,MAAM,GAAAD,IAAA,CAANC,MAAM;IACNd,QAAQ,GAAAa,IAAA,CAARb,QAAQ;IACRC,cAAc,GAAAY,IAAA,CAAdZ,cAAc;IACdQ,cAAc,GAAAI,IAAA,CAAdJ,cAAc;IACdL,YAAY,GAAAS,IAAA,CAAZT,YAAY;IACZM,mBAAmB,GAAAG,IAAA,CAAnBH,mBAAmB;IACnBL,QAAQ,GAAAQ,IAAA,CAARR,QAAQ;IACRG,SAAS,GAAAK,IAAA,CAATL,SAAS;IACTG,QAAQ,GAAAE,IAAA,CAARF,QAAQ;IACRI,SAAS,GAAAF,IAAA,CAATE,SAAS;EAIT,IAAMC,QAAQ,GAAG,CAAC,CAACC,uBAAuB,EAAE;EAC5C,IACGD,QAAQ,IAAIP,cAAc,IAC1B,EAAE,OAAO,IAAIK,MAAM,CAAC,IAAI,EAAE,MAAM,IAAIA,MAAM,CAAE,EAC7C;IACA,OAAOI,0CAAGjB,cAAc,WAAdA,cAAc,GAAI,IAAI,CAAI;GACrC,MAAM,IAAKe,QAAQ,IAAIN,mBAAmB,IAAK,OAAO,IAAII,MAAM,EAAE;IACjE,OACEI,oBAACC,YAAY;MAACC,IAAI,EAAEZ,SAAS;MAAEa,IAAI,EAAEP,MAAM,CAACQ;OACzClB,YAAY,WAAZA,YAAY,GAAI,IAAI,CACR;GAElB,MAAM;IACL,IAAMmB,OAAO,GACXL,oBAACC,YAAY;MAACC,IAAI,EAAEf,QAAQ;MAAEgB,IAAI,EAAEP,MAAM,CAACO;OACxCrB,QAAQ,CAEZ;IACD,OAAOW,QAAQ,GAAGY,OAAO,GAAGL;MAAKH,SAAS,EAAEA;OAAYQ,OAAO,CAAO;;AAE1E;AASA;;;AAAA,SAGeC,YAAYA,CAAAC,EAAA;EAAA,OAAAC,aAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAF;EAAAA,aAAA,GAAAG,iBAAA,cAAAC,mBAAA,GAAAC,IAAA,CAA3B,SAAAC,QAAAC,KAAA;IAAA,IAAAC,GAAA,EAAAC,MAAA,EAAAC,IAAA,EAAAC,OAAA,EAAAC,oBAAA,EAAAC,QAAA,EAAAC,IAAA,EAAAC,IAAA,EAAAnB,KAAA;IAAA,OAAAQ,mBAAA,GAAAY,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAA8BZ,GAAG,GAAAD,KAAA,CAAHC,GAAG,EAAEC,MAAM,GAAAF,KAAA,CAANE,MAAM,EAAEC,IAAI,GAAAH,KAAA,CAAJG,IAAI,EAAEC,OAAO,GAAAJ,KAAA,CAAPI,OAAO;UAAA,IACjDH,GAAG;YAAAU,QAAA,CAAAE,IAAA;YAAA;;UAAA,MACA,IAAIC,KAAK,CAAC,+BAA+B,CAAC;QAAA;;UAIlD,IAAI,CAACV,OAAO,EAAE;YACZA,OAAO,GAAG,EAAE;;UAERC,oBAAoB,GAAG,IAAIU,GAAG,CAClCC,MAAM,CAACC,IAAI,CAACb,OAAO,CAAC,CAACc,GAAG,CAAC,UAACC,UAAU;YAAA,OAAKA,UAAU,CAACC,WAAW,EAAE;YAAC,CACnE;UACD,IAAI,CAACf,oBAAoB,CAACgB,GAAG,CAAC,QAAQ,CAAC,EAAE;YACvCjB,OAAO,CAAC,QAAQ,CAAC,GAAG,kBAAkB;;UAExC,IAAID,IAAI,IAAI,CAACE,oBAAoB,CAACgB,GAAG,CAAC,cAAc,CAAC,EAAE;YACrDjB,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB;;UAC7CO,QAAA,CAAAE,IAAA;UAAA,OAEsBS,KAAK,CAACrB,GAAG,EAAE;YAChCC,MAAM,EAANA,MAAM;YACNE,OAAO,EAAPA,OAAO;YACPD,IAAI,EACFA,IAAI,KAAKoB,SAAS,GACdpB,IAAI,GACJ,OAAOA,IAAI,KAAK,QAAQ,GACxBA,IAAI,GACJqB,IAAI,CAACC,SAAS,CAACtB,IAAI;WAC1B,CAAC;QAAA;UATIG,QAAQ,GAAAK,QAAA,CAAAe,IAAA;UAAAf,QAAA,CAAAE,IAAA;UAAA,OAWKP,QAAQ,CAACC,IAAI,EAAE;QAAA;UAA5BA,IAAI,GAAAI,QAAA,CAAAe,IAAA;UACNlB,IAAI,GAAwB;YAAED,IAAI,EAAJA;WAAM;UAExC,IAAI;YACFC,IAAI,GAAGgB,IAAI,CAACG,KAAK,CAACpB,IAAI,CAAC;WACxB,CAAC,OAAOqB,CAAC,EAAE;YACVpB,IAAI,GAAG;cAAED,IAAI,EAAJA;aAAM;;;;;UAKjB,IACKD,QAAQ,CAACuB,EAAE;YAAAlB,QAAA,CAAAE,IAAA;YAAA;;UACRxB,KAAK,GAAG,IAAIyB,KAAK,CAACR,QAAQ,CAACwB,UAAU,CAAgB;UAE3DzC,KAAK,CAAC0C,IAAI,GAAGvB,IAAI;UACjBnB,KAAK,CAAC2C,MAAM,GAAG1B,QAAQ,CAAC0B,MAAM;UAAC,MACzB3C,KAAK;QAAA;UAAA,OAAAsB,QAAA,CAAAsB,MAAA,WAGNzB,IAAI;QAAA;QAAA;UAAA,OAAAG,QAAA,CAAAuB,IAAA;;OAAAnC,OAAA;GACZ;EAAA,OAAAN,aAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;SAMewC,WAAWA,CAACC,KAAuB;EACjD,IAAQnC,GAAG,GAAsCmC,KAAK,CAA9CnC,GAAG;IAAEC,MAAM,GAA8BkC,KAAK,CAAzClC,MAAM;IAAEC,IAAI,GAAwBiC,KAAK,CAAjCjC,IAAI;IAAEC,OAAO,GAAegC,KAAK,CAA3BhC,OAAO;IAAEiC,QAAQ,GAAKD,KAAK,CAAlBC,QAAQ;EAC5C,IAAMC,UAAU,GAAe;IAAErC,GAAG,EAAHA,GAAG;IAAEC,MAAM,EAANA,MAAM;IAAEC,IAAI,EAAJA,IAAI;IAAEC,OAAO,EAAPA;GAAS;EAC7D,IAAMvB,MAAM,GAAG0D,mBAAmB,CAChCF,QAAQ,IAAIb,IAAI,CAACC,SAAS,CAAAe,QAAA;IAAGvE,IAAI,EAAE;KAAkBqE,UAAU,CAAE,CAAC,EAClE;IAAA,OAAM/C,YAAY,CAAC+C,UAAU,CAAC;IAC/B;EACD,OAAOrD,oBAACN,mBAAmB;IAACE,MAAM,EAAEA;KAAYuD,KAAK,EAAI;AAC3D;AAEA,SAASK,YAAYA,CACnBC,UAAkB,EAClBC,aAAqB;EAErB,OAAO;IACL1C,GAAG,EAAE;MACHhC,IAAI,EAAE,QAAQ;MACdC,YAAY,EAAEwE,UAAU;MACxBpE,WAAW,EAAE;KACd;IACD4B,MAAM,EAAE;MACNjC,IAAI,EAAE,QAAQ;MACd2E,OAAO,EAAE,CACP,KAAK,EACL,QAAQ,EACR,SAAS,EACT,MAAM,EACN,SAAS,EACT,MAAM,EACN,KAAK,EACL,OAAO,CACR;MACD1E,YAAY,EAAEyE,aAAa;MAC3BrE,WAAW,EAAE;KACd;IACD8B,OAAO,EAAE;MACPnC,IAAI,EAAE,QAAQ;MACdK,WAAW,EAAE;KACd;IACD+D,QAAQ,EAAE;MACRpE,IAAI,EAAE,QAAQ;MACdK,WAAW,EACT,oEAAoE;MACtEuE,aAAa,EAAE;;GAElB;AACH;IAEaC,eAAe,GAAoC;EAC9D3D,IAAI,EAAE,qCAAqC;EAC3Cd,WAAW,EAAE,uBAAuB;EACpC0E,UAAU,EAAE,aAAa;EACzBC,UAAU,EAAE,4BAA4B;EACxCC,YAAY,EAAE,IAAI;EAClB3E,WAAW,EACT,sKAAsK;EACxK8D,KAAK,eAAAI,QAAA,kBACCC,YAAY,CACd,+CAA+C,EAC/C,KAAK,CACE;IACTtC,IAAI,EAAE;MACJlC,IAAI,EAAE,QAAQ;MACdK,WAAW,EAAE;;KAEXR,uBAA+B,CACpC;EACDoF,aAAa,EAAE;IACbC,QAAQ,EAAE,MAAM;IAChBC,KAAK,EAAE;;;SAIKC,mBAAmBA,CACjCC,MAAwD,EACxDC,qBAAuD;EAEvD,IAAID,MAAM,EAAE;IACVA,MAAM,CAACE,iBAAiB,CACtBrB,WAAW,EACXoB,qBAAqB,WAArBA,qBAAqB,GAAIT,eAAe,CACzC;GACF,MAAM;IACLU,iBAAiB,CAACrB,WAAW,EAAEoB,qBAAqB,WAArBA,qBAAqB,GAAIT,eAAe,CAAC;;AAE5E;SAUgBW,cAAcA,CAACrB,KAA0B;EACvD,IAAQsB,KAAK,GAAmDtB,KAAK,CAA7DsB,KAAK;IAAEzD,GAAG,GAA8CmC,KAAK,CAAtDnC,GAAG;IAAEC,MAAM,GAAsCkC,KAAK,CAAjDlC,MAAM;IAAEE,OAAO,GAA6BgC,KAAK,CAAzChC,OAAO;IAAEiC,QAAQ,GAAmBD,KAAK,CAAhCC,QAAQ;IAAEsB,YAAY,GAAKvB,KAAK,CAAtBuB,YAAY;EAE3D,IAAIrB,UAAsB;EAC1B,IAAIpC,MAAM,KAAK,KAAK,EAAE;IAAA,IAAA0D,YAAA;;IAEpB,IAAMC,kBAAkB,GAAG,IAAIC,GAAG,CAAC7D,GAAG,WAAHA,GAAG,GAAI,EAAE,CAAC;IAC7C4D,kBAAkB,CAACE,YAAY,CAACC,GAAG,CAAC,OAAO,GAAAJ,YAAA,GAAEF,KAAK,oBAALA,KAAK,CAAEA,KAAK,YAAAE,YAAA,GAAI,IAAI,CAAC;IAClEC,kBAAkB,CAACE,YAAY,CAACC,GAAG,CACjC,WAAW,EACXxC,IAAI,CAACC,SAAS,CAAAe,QAAA,KAAMkB,KAAK,oBAALA,KAAK,CAAEO,SAAS,EAAKN,YAAY,CAAE,CAAC,CACzD;IACDrB,UAAU,GAAG;MACXrC,GAAG,EAAE4D,kBAAkB,CAACK,QAAQ,EAAE;MAClChE,MAAM,EAANA,MAAM;MACNE,OAAO,EAAPA;KACD;GACF,MAAM;IACLkC,UAAU,GAAG;MACXnC,IAAI,EAAAqC,QAAA,KAAOkB,KAAK;QAAEO,SAAS,EAAAzB,QAAA,KAAOkB,KAAK,oBAALA,KAAK,CAAEO,SAAS,EAAKN,YAAY;QAAI;MACvE1D,GAAG,EAAHA,GAAG;MACHC,MAAM,EAANA,MAAM;MACNE,OAAO,EAAPA;KACD;;EAGH,IAAMvB,MAAM,GAAG0D,mBAAmB,CAChCF,QAAQ,IAAIb,IAAI,CAACC,SAAS,CAAAe,QAAA;IAAGvE,IAAI,EAAE;KAAqBqE,UAAU,CAAE,CAAC,EACrE;IAAA,OAAM/C,YAAY,CAAC+C,UAAU,CAAC;IAC/B;EACD,OAAOrD,oBAACN,mBAAmB;IAACE,MAAM,EAAEA;KAAYuD,KAAK,EAAI;AAC3D;IAEa+B,kBAAkB,GAAuC;EACpEhF,IAAI,EAAE,wCAAwC;EAC9Cd,WAAW,EAAE,iBAAiB;EAC9B0E,UAAU,EAAE,gBAAgB;EAC5BC,UAAU,EAAE,4BAA4B;EACxCC,YAAY,EAAE,IAAI;EAClBb,KAAK,eAAG;IACN,IAAMgC,QAAQ,GAAmC;MAC/CV,KAAK,EAAE;QACLzF,IAAI,EAAE,MAAM;QACZoG,IAAI,EAAE,SAAS;QACfjE,OAAO,EAAE,SAAAA,QAACgC,KAAK;UAAA,OAAKA,KAAK,CAAChC,OAAO;;QACjCkE,QAAQ,EAAE,SAAAA,SAAClC,KAAK;UAAA,IAAAmC,UAAA;UAAA,QAAAA,UAAA,GAAKnC,KAAK,CAACnC,GAAG,YAAAsE,UAAA,GAAI,EAAE;;QACpCrG,YAAY,EAAE;UACZwF,KAAK,6LAad;UACSO,SAAS,EAAE;YACTO,QAAQ,EAAE;;;OAGf;MACDb,YAAY,EAAE;QACZ1F,IAAI,EAAE,QAAQ;QACdI,WAAW,EAAE,oBAAoB;QACjCC,WAAW,EACT;;KAEL;;IAED,IAAAmG,qBAAA,gBAAAjC,QAAA,kBACKC,YAAY,CACb,4DAA4D,EAC5D,MAAM,CACP,EACE2B,QAAQ,EACRtG,uBAAuB;MANpBmC,GAAG,GAAAwE,qBAAA,CAAHxE,GAAG;MAAEyD,KAAK,GAAAe,qBAAA,CAALf,KAAK;MAAExD,MAAM,GAAAuE,qBAAA,CAANvE,MAAM;MAAEE,OAAO,GAAAqE,qBAAA,CAAPrE,OAAO;MAAEiC,QAAQ,GAAAoC,qBAAA,CAARpC,QAAQ;MAAKqC,IAAI,gBAAAC,6BAAA,CAAAF,qBAAA,EAAAG,SAAA;IAQtD,OAAApC,QAAA;MACEvC,GAAG,EAAHA,GAAG;MACHyD,KAAK,EAALA,KAAK;MACLxD,MAAM,EAANA,MAAM;MACNE,OAAO,EAAPA,OAAO;MACPiC,QAAQ,EAARA;OACGqC,IAAI;GAEV,EAAG;EACJxB,aAAa,EAAE;IACbC,QAAQ,EAAE,MAAM;IAChBC,KAAK,EAAE;;;SAIKyB,sBAAsBA,CACpCvB,MAAwD,EACxDC,qBAA0D;EAE1D,IAAID,MAAM,EAAE;IACVA,MAAM,CAACE,iBAAiB,CACtBC,cAAc,EACdF,qBAAqB,WAArBA,qBAAqB,GAAIY,kBAAkB,CAC5C;GACF,MAAM;IACLX,iBAAiB,CACfC,cAAc,EACdF,qBAAqB,WAArBA,qBAAqB,GAAIY,kBAAkB,CAC5C;;AAEL;SAEgBW,WAAWA,CAACxB,MAE3B;EACCD,mBAAmB,CAACC,MAAM,CAAC;EAC3BuB,sBAAsB,CAACvB,MAAM,CAAC;AAChC;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/plasmic-query",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.231",
|
|
4
4
|
"description": "Plasmic components and registration calls for data fetching",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"analyze": "size-limit --why"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@plasmicapp/host": "1.0.
|
|
31
|
+
"@plasmicapp/host": "1.0.212",
|
|
32
32
|
"@plasmicapp/query": "0.1.79",
|
|
33
33
|
"@size-limit/preset-small-lib": "^4.11.0",
|
|
34
34
|
"@types/node": "^14.0.26",
|
|
@@ -43,5 +43,5 @@
|
|
|
43
43
|
"react": ">=16.8.0",
|
|
44
44
|
"react-dom": ">=16.8.0"
|
|
45
45
|
},
|
|
46
|
-
"gitHead": "
|
|
46
|
+
"gitHead": "e14716fd42ea79a35e4844d660f6d12aa97a9768"
|
|
47
47
|
}
|