@plasmicpkgs/plasmic-query 0.0.225 → 0.0.227
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 +48 -26
- 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 +48 -26
- package/dist/plasmic-query.esm.js.map +1 -1
- package/package.json +3 -3
|
@@ -444,7 +444,7 @@ function performFetch(_x) {
|
|
|
444
444
|
}
|
|
445
445
|
function _performFetch() {
|
|
446
446
|
_performFetch = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref2) {
|
|
447
|
-
var url, method, body, headers, response, text, json, error;
|
|
447
|
+
var url, method, body, headers, headerNamesLowercase, response, text, json, error;
|
|
448
448
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
449
449
|
while (1) switch (_context.prev = _context.next) {
|
|
450
450
|
case 0:
|
|
@@ -455,17 +455,30 @@ function _performFetch() {
|
|
|
455
455
|
}
|
|
456
456
|
throw new Error("Please specify a URL to fetch");
|
|
457
457
|
case 3:
|
|
458
|
-
|
|
458
|
+
// Add default headers unless specified
|
|
459
|
+
if (!headers) {
|
|
460
|
+
headers = {};
|
|
461
|
+
}
|
|
462
|
+
headerNamesLowercase = new Set(Object.keys(headers).map(function (headerName) {
|
|
463
|
+
return headerName.toLowerCase();
|
|
464
|
+
}));
|
|
465
|
+
if (!headerNamesLowercase.has("accept")) {
|
|
466
|
+
headers["Accept"] = "application/json";
|
|
467
|
+
}
|
|
468
|
+
if (body && !headerNamesLowercase.has("content-type")) {
|
|
469
|
+
headers["Content-Type"] = "application/json";
|
|
470
|
+
}
|
|
471
|
+
_context.next = 9;
|
|
459
472
|
return fetch(url, {
|
|
460
473
|
method: method,
|
|
461
474
|
headers: headers,
|
|
462
475
|
body: body === undefined ? body : typeof body === "string" ? body : JSON.stringify(body)
|
|
463
476
|
});
|
|
464
|
-
case
|
|
477
|
+
case 9:
|
|
465
478
|
response = _context.sent;
|
|
466
|
-
_context.next =
|
|
479
|
+
_context.next = 12;
|
|
467
480
|
return response.text();
|
|
468
|
-
case
|
|
481
|
+
case 12:
|
|
469
482
|
text = _context.sent;
|
|
470
483
|
json = {
|
|
471
484
|
text: text
|
|
@@ -481,16 +494,16 @@ function _performFetch() {
|
|
|
481
494
|
// If the status code is not in the range 200-299,
|
|
482
495
|
// we still try to parse and throw it.
|
|
483
496
|
if (response.ok) {
|
|
484
|
-
_context.next =
|
|
497
|
+
_context.next = 20;
|
|
485
498
|
break;
|
|
486
499
|
}
|
|
487
500
|
error = new Error(response.statusText); // Attach extra info to the error object.
|
|
488
501
|
error.info = json;
|
|
489
502
|
error.status = response.status;
|
|
490
503
|
throw error;
|
|
491
|
-
case
|
|
504
|
+
case 20:
|
|
492
505
|
return _context.abrupt("return", json);
|
|
493
|
-
case
|
|
506
|
+
case 21:
|
|
494
507
|
case "end":
|
|
495
508
|
return _context.stop();
|
|
496
509
|
}
|
|
@@ -534,11 +547,7 @@ function mkFetchProps(defaultUrl, defaultMethod) {
|
|
|
534
547
|
},
|
|
535
548
|
headers: {
|
|
536
549
|
type: "object",
|
|
537
|
-
description: "Request headers (as JSON object) to send"
|
|
538
|
-
defaultValue: {
|
|
539
|
-
"Content-Type": "application/json",
|
|
540
|
-
Accept: "application/json"
|
|
541
|
-
}
|
|
550
|
+
description: "Request headers (as JSON object) to send"
|
|
542
551
|
},
|
|
543
552
|
queryKey: {
|
|
544
553
|
type: "string",
|
|
@@ -579,14 +588,28 @@ function GraphqlFetcher(props) {
|
|
|
579
588
|
headers = props.headers,
|
|
580
589
|
queryKey = props.queryKey,
|
|
581
590
|
varOverrides = props.varOverrides;
|
|
582
|
-
var fetchProps
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
url:
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
591
|
+
var fetchProps;
|
|
592
|
+
if (method === "GET") {
|
|
593
|
+
var _query$query;
|
|
594
|
+
// https://graphql.org/learn/serving-over-http/#get-request-and-parameters
|
|
595
|
+
var urlWithQueryParams = new URL(url != null ? url : "");
|
|
596
|
+
urlWithQueryParams.searchParams.set("query", (_query$query = query$1 == null ? void 0 : query$1.query) != null ? _query$query : "{}");
|
|
597
|
+
urlWithQueryParams.searchParams.set("variables", JSON.stringify(_extends({}, query$1 == null ? void 0 : query$1.variables, varOverrides)));
|
|
598
|
+
fetchProps = {
|
|
599
|
+
url: urlWithQueryParams.toString(),
|
|
600
|
+
method: method,
|
|
601
|
+
headers: headers
|
|
602
|
+
};
|
|
603
|
+
} else {
|
|
604
|
+
fetchProps = {
|
|
605
|
+
body: _extends({}, query$1, {
|
|
606
|
+
variables: _extends({}, query$1 == null ? void 0 : query$1.variables, varOverrides)
|
|
607
|
+
}),
|
|
608
|
+
url: url,
|
|
609
|
+
method: method,
|
|
610
|
+
headers: headers
|
|
611
|
+
};
|
|
612
|
+
}
|
|
590
613
|
var result = query.usePlasmicQueryData(queryKey || JSON.stringify(_extends({
|
|
591
614
|
type: "GraphqlFetcher"
|
|
592
615
|
}, fetchProps)), function () {
|
|
@@ -615,21 +638,20 @@ var graphqlFetcherMeta = {
|
|
|
615
638
|
return (_props$url = props.url) != null ? _props$url : "";
|
|
616
639
|
},
|
|
617
640
|
defaultValue: {
|
|
618
|
-
query: "query
|
|
641
|
+
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",
|
|
619
642
|
variables: {
|
|
620
|
-
|
|
643
|
+
personId: "cGVvcGxlOjIw"
|
|
621
644
|
}
|
|
622
645
|
}
|
|
623
646
|
},
|
|
624
647
|
varOverrides: {
|
|
625
648
|
type: "object",
|
|
626
649
|
displayName: "Override variables",
|
|
627
|
-
description: "Pass in dynamic values for your query variables, as an object of key-values"
|
|
628
|
-
defaultValue: {}
|
|
650
|
+
description: "Pass in dynamic values for your query variables, as an object of key-values"
|
|
629
651
|
}
|
|
630
652
|
};
|
|
631
653
|
// Reorder the props
|
|
632
|
-
var _mkFetchProps$gqlMeta = /*#__PURE__*/_extends({}, /*#__PURE__*/mkFetchProps("https://
|
|
654
|
+
var _mkFetchProps$gqlMeta = /*#__PURE__*/_extends({}, /*#__PURE__*/mkFetchProps("https://swapi-graphql.netlify.app/.netlify/functions/index", "POST"), gqlMetas, genericFetcherPropsMeta),
|
|
633
655
|
url = _mkFetchProps$gqlMeta.url,
|
|
634
656
|
query = _mkFetchProps$gqlMeta.query,
|
|
635
657
|
method = _mkFetchProps$gqlMeta.method,
|
|
@@ -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 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 defaultValue: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n },\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 const fetchProps: FetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\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 MyQuery($name: String) {\n characters(filter: {name: $name}) {\n results {\n name\n species\n image\n }\n }\n}\n`,\n variables: {\n name: \"Rick Sanchez\",\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 defaultValue: {},\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\"https://rickandmortyapi.com/graphql\", \"POST\"),\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","response","text","json","wrap","_callee$","_context","prev","next","Error","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","queryKey","fetchProps","usePlasmicQueryData","_extends","mkFetchProps","defaultUrl","defaultMethod","options","Accept","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","varOverrides","variables","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","_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:{},u=i.iterator||"@@iterator",s=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",y="executing",d="completed",v={};function m(){}function g(){}function w(){}var b={};l(b,u,(function(){return this}));var x=Object.getPrototypeOf,E=x&&x(x(F([])));E&&E!==r&&n.call(E,u)&&(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,u){var s=p(e[a],e,o);if("throw"!==s.type){var c=s.arg,l=c.value;return l&&"object"==typeof l&&n.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,i,u)}),(function(e){r("throw",e,i,u)})):t.resolve(l).then((function(e){c.value=e,i(c)}),(function(e){return r("throw",e,i,u)}))}u(s.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===y)throw new Error("Generator is already running");if(a===d){if("throw"===o)throw i;return{value:e,done:!0}}for(n.method=o,n.arg=i;;){var u=n.delegate;if(u){var s=j(u,n);if(s){if(s===v)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===f)throw a=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=y;var c=p(t,r,n);if("normal"===c.type){if(a=n.done?d:"suspendedYield",c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(a=d,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[u];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,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,c,"Generator"),l(O,u,(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 u.type="throw",u.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],u=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(s&&c){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(s){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 u=e[o](i),s=u.value}catch(e){return void r(e)}u.done?t(s):Promise.resolve(s).then(n,a)}function u(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function u(e){i(o,n,a,u,s,"next",e)}function s(e){i(o,n,a,u,s,"throw",e)}u(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)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,u=e.errorDisplay,s=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&&s||"error"in r)return a.createElement(t.DataProvider,{name:l,data:r.error},null!=u?u:null);var y=a.createElement(t.DataProvider,{name:c,data:r.data},n);return h?y:a.createElement("div",{className:p},y)}function f(e){return y.apply(this,arguments)}function y(){return(y=u(o().mark((function e(t){var r,n,a,i,u,s,c,l;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 e.next=5,fetch(r,{method:n,headers:i,body:void 0===a||"string"==typeof a?a:JSON.stringify(a)});case 5:return u=e.sent,e.next=8,u.text();case 8:c={text:s=e.sent};try{c=JSON.parse(s)}catch(e){c={text:s}}if(u.ok){e.next=16;break}throw(l=new Error(u.statusText)).info=c,l.status=u.status,l;case 16:return e.abrupt("return",c);case 17:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function d(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",defaultValue:{"Content-Type":"application/json",Accept:"application/json"}},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(d,null!=t?t:m):r(d,null!=t?t:m)}function w(e){var t=e.query,r=e.url,o=e.method,i=e.headers,u=e.queryKey,c={body:s({},t,{variables:s({},null==t?void 0:t.variables,e.varOverrides)}),url:r,method:o,headers:i},l=n.usePlasmicQueryData(u||JSON.stringify(s({type:"GraphqlFetcher"},c)),(function(){return f(c)}));return a.createElement(p,Object.assign({result:l},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 MyQuery($name: String) {\n characters(filter: {name: $name}) {\n results {\n name\n species\n image\n }\n }\n}\n",variables:{name:"Rick Sanchez"}}},varOverrides:{type:"object",displayName:"Override variables",description:"Pass in dynamic values for your query variables, as an object of key-values",defaultValue:{}}},t=s({},v("https://rickandmortyapi.com/graphql","POST"),e,h);return s({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=d,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(){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;
|
|
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 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 defaultValue: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n },\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 const fetchProps: FetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\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 MyQuery($name: String) {\n characters(filter: {name: $name}) {\n results {\n name\n species\n image\n }\n }\n}\n`,\n variables: {\n name: \"Rick Sanchez\",\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 defaultValue: {},\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\"https://rickandmortyapi.com/graphql\", \"POST\"),\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","response","text","json","wrap","_context","prev","next","Error","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","fetchProps","usePlasmicQueryData","queryKey","_extends","mkFetchProps","defaultUrl","defaultMethod","options","Content-Type","Accept","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","variables","varOverrides","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","_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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"}
|
|
@@ -438,7 +438,7 @@ function performFetch(_x) {
|
|
|
438
438
|
}
|
|
439
439
|
function _performFetch() {
|
|
440
440
|
_performFetch = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref2) {
|
|
441
|
-
var url, method, body, headers, response, text, json, error;
|
|
441
|
+
var url, method, body, headers, headerNamesLowercase, response, text, json, error;
|
|
442
442
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
443
443
|
while (1) switch (_context.prev = _context.next) {
|
|
444
444
|
case 0:
|
|
@@ -449,17 +449,30 @@ function _performFetch() {
|
|
|
449
449
|
}
|
|
450
450
|
throw new Error("Please specify a URL to fetch");
|
|
451
451
|
case 3:
|
|
452
|
-
|
|
452
|
+
// Add default headers unless specified
|
|
453
|
+
if (!headers) {
|
|
454
|
+
headers = {};
|
|
455
|
+
}
|
|
456
|
+
headerNamesLowercase = new Set(Object.keys(headers).map(function (headerName) {
|
|
457
|
+
return headerName.toLowerCase();
|
|
458
|
+
}));
|
|
459
|
+
if (!headerNamesLowercase.has("accept")) {
|
|
460
|
+
headers["Accept"] = "application/json";
|
|
461
|
+
}
|
|
462
|
+
if (body && !headerNamesLowercase.has("content-type")) {
|
|
463
|
+
headers["Content-Type"] = "application/json";
|
|
464
|
+
}
|
|
465
|
+
_context.next = 9;
|
|
453
466
|
return fetch(url, {
|
|
454
467
|
method: method,
|
|
455
468
|
headers: headers,
|
|
456
469
|
body: body === undefined ? body : typeof body === "string" ? body : JSON.stringify(body)
|
|
457
470
|
});
|
|
458
|
-
case
|
|
471
|
+
case 9:
|
|
459
472
|
response = _context.sent;
|
|
460
|
-
_context.next =
|
|
473
|
+
_context.next = 12;
|
|
461
474
|
return response.text();
|
|
462
|
-
case
|
|
475
|
+
case 12:
|
|
463
476
|
text = _context.sent;
|
|
464
477
|
json = {
|
|
465
478
|
text: text
|
|
@@ -475,16 +488,16 @@ function _performFetch() {
|
|
|
475
488
|
// If the status code is not in the range 200-299,
|
|
476
489
|
// we still try to parse and throw it.
|
|
477
490
|
if (response.ok) {
|
|
478
|
-
_context.next =
|
|
491
|
+
_context.next = 20;
|
|
479
492
|
break;
|
|
480
493
|
}
|
|
481
494
|
error = new Error(response.statusText); // Attach extra info to the error object.
|
|
482
495
|
error.info = json;
|
|
483
496
|
error.status = response.status;
|
|
484
497
|
throw error;
|
|
485
|
-
case
|
|
498
|
+
case 20:
|
|
486
499
|
return _context.abrupt("return", json);
|
|
487
|
-
case
|
|
500
|
+
case 21:
|
|
488
501
|
case "end":
|
|
489
502
|
return _context.stop();
|
|
490
503
|
}
|
|
@@ -528,11 +541,7 @@ function mkFetchProps(defaultUrl, defaultMethod) {
|
|
|
528
541
|
},
|
|
529
542
|
headers: {
|
|
530
543
|
type: "object",
|
|
531
|
-
description: "Request headers (as JSON object) to send"
|
|
532
|
-
defaultValue: {
|
|
533
|
-
"Content-Type": "application/json",
|
|
534
|
-
Accept: "application/json"
|
|
535
|
-
}
|
|
544
|
+
description: "Request headers (as JSON object) to send"
|
|
536
545
|
},
|
|
537
546
|
queryKey: {
|
|
538
547
|
type: "string",
|
|
@@ -573,14 +582,28 @@ function GraphqlFetcher(props) {
|
|
|
573
582
|
headers = props.headers,
|
|
574
583
|
queryKey = props.queryKey,
|
|
575
584
|
varOverrides = props.varOverrides;
|
|
576
|
-
var fetchProps
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
url:
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
585
|
+
var fetchProps;
|
|
586
|
+
if (method === "GET") {
|
|
587
|
+
var _query$query;
|
|
588
|
+
// https://graphql.org/learn/serving-over-http/#get-request-and-parameters
|
|
589
|
+
var urlWithQueryParams = new URL(url != null ? url : "");
|
|
590
|
+
urlWithQueryParams.searchParams.set("query", (_query$query = query == null ? void 0 : query.query) != null ? _query$query : "{}");
|
|
591
|
+
urlWithQueryParams.searchParams.set("variables", JSON.stringify(_extends({}, query == null ? void 0 : query.variables, varOverrides)));
|
|
592
|
+
fetchProps = {
|
|
593
|
+
url: urlWithQueryParams.toString(),
|
|
594
|
+
method: method,
|
|
595
|
+
headers: headers
|
|
596
|
+
};
|
|
597
|
+
} else {
|
|
598
|
+
fetchProps = {
|
|
599
|
+
body: _extends({}, query, {
|
|
600
|
+
variables: _extends({}, query == null ? void 0 : query.variables, varOverrides)
|
|
601
|
+
}),
|
|
602
|
+
url: url,
|
|
603
|
+
method: method,
|
|
604
|
+
headers: headers
|
|
605
|
+
};
|
|
606
|
+
}
|
|
584
607
|
var result = usePlasmicQueryData(queryKey || JSON.stringify(_extends({
|
|
585
608
|
type: "GraphqlFetcher"
|
|
586
609
|
}, fetchProps)), function () {
|
|
@@ -609,21 +632,20 @@ var graphqlFetcherMeta = {
|
|
|
609
632
|
return (_props$url = props.url) != null ? _props$url : "";
|
|
610
633
|
},
|
|
611
634
|
defaultValue: {
|
|
612
|
-
query: "query
|
|
635
|
+
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",
|
|
613
636
|
variables: {
|
|
614
|
-
|
|
637
|
+
personId: "cGVvcGxlOjIw"
|
|
615
638
|
}
|
|
616
639
|
}
|
|
617
640
|
},
|
|
618
641
|
varOverrides: {
|
|
619
642
|
type: "object",
|
|
620
643
|
displayName: "Override variables",
|
|
621
|
-
description: "Pass in dynamic values for your query variables, as an object of key-values"
|
|
622
|
-
defaultValue: {}
|
|
644
|
+
description: "Pass in dynamic values for your query variables, as an object of key-values"
|
|
623
645
|
}
|
|
624
646
|
};
|
|
625
647
|
// Reorder the props
|
|
626
|
-
var _mkFetchProps$gqlMeta = /*#__PURE__*/_extends({}, /*#__PURE__*/mkFetchProps("https://
|
|
648
|
+
var _mkFetchProps$gqlMeta = /*#__PURE__*/_extends({}, /*#__PURE__*/mkFetchProps("https://swapi-graphql.netlify.app/.netlify/functions/index", "POST"), gqlMetas, genericFetcherPropsMeta),
|
|
627
649
|
url = _mkFetchProps$gqlMeta.url,
|
|
628
650
|
query = _mkFetchProps$gqlMeta.query,
|
|
629
651
|
method = _mkFetchProps$gqlMeta.method,
|
|
@@ -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 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 defaultValue: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n },\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 const fetchProps: FetchProps = {\n body: { ...query, variables: { ...query?.variables, ...varOverrides } },\n url,\n method,\n headers,\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 MyQuery($name: String) {\n characters(filter: {name: $name}) {\n results {\n name\n species\n image\n }\n }\n}\n`,\n variables: {\n name: \"Rick Sanchez\",\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 defaultValue: {},\n },\n };\n // Reorder the props\n const { url, query, method, headers, queryKey, ...rest } = {\n ...mkFetchProps(\"https://rickandmortyapi.com/graphql\", \"POST\"),\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","response","text","json","wrap","_callee$","_context","prev","next","Error","fetch","undefined","JSON","stringify","sent","parse","e","ok","statusText","info","status","abrupt","stop","DataFetcher","props","queryKey","fetchProps","usePlasmicQueryData","_extends","mkFetchProps","defaultUrl","defaultMethod","options","Accept","invariantable","dataFetcherMeta","importName","importPath","providesData","defaultStyles","maxWidth","width","registerDataFetcher","loader","customDataFetcherMeta","registerComponent","GraphqlFetcher","query","varOverrides","variables","graphqlFetcherMeta","gqlMetas","lang","endpoint","_props$url","_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":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/plasmic-query",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.227",
|
|
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.208",
|
|
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": "879304149b902b453a47fe674997fcad01ae4af8"
|
|
47
47
|
}
|