UNPKG

apiconnect-explorer

Version:

- [Getting Started](#getting-started) - [Configuration](#configuration) * [Required](#required) * [Optional](#optional) - [Usage in React](#usage-in-react) - [Usage outside of React](#usage-outside-of-react) - [Detailed description of options](#detail

1 lines 6.96 kB
"use strict";function a(b){"@babel/helpers - typeof";return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},a(b)}Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=void 0;var b=g(require("react")),c=require("@carbon/react"),d=require("stepzen-graphiql"),e=require("./../utils/common.js"),f=require("../contexts/ApiHandler/index.tsx");function g(b,c){if("function"==typeof WeakMap)var d=new WeakMap,h=new WeakMap;return(g=function(b,c){if(!c&&b&&b.__esModule)return b;var e,g,j={__proto__:null,default:b};if(null===b||"object"!=a(b)&&"function"!=typeof b)return j;if(e=c?h:d){if(e.has(b))return e.get(b);e.set(b,j)}for(var f in b)"default"!=f&&{}.hasOwnProperty.call(b,f)&&((g=(e=Object.defineProperty)&&Object.getOwnPropertyDescriptor(b,f))&&(g.get||g.set)?e(j,f,g):j[f]=b[f]);return j})(b,c)}function h(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function i(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?h(Object(b),!0).forEach(function(c){j(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):h(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function j(a,b,c){return(b=k(b))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function k(b){var c=l(b,"string");return"symbol"==a(c)?c:c+""}function l(b,c){if("object"!=a(b)||!b)return b;var d=b[Symbol.toPrimitive];if(void 0!==d){var e=d.call(b,c||"default");if("object"!=a(e))return e;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===c?String:Number)(b)}function m(a,b){return s(a)||q(a,b)||o(a,b)||n()}function n(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function o(b,c){if(b){if("string"==typeof b)return p(b,c);var a={}.toString.call(b).slice(8,-1);return"Object"===a&&b.constructor&&(a=b.constructor.name),"Map"===a||"Set"===a?Array.from(b):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?p(b,c):void 0}}function p(b,c){(null==c||c>b.length)&&(c=b.length);for(var d=0,f=Array(c);d<c;d++)f[d]=b[d];return f}function q(b,c){var d=null==b?null:"undefined"!=typeof Symbol&&b[Symbol.iterator]||b["@@iterator"];if(null!=d){var g,h,j,k,l=[],a=!0,m=!1;try{if(j=(d=d.call(b)).next,0===c){if(Object(d)!==d)return;a=!1}else for(;!(a=(g=j.call(d)).done)&&(l.push(g.value),l.length!==c);a=!0);}catch(a){m=!0,h=a}finally{try{if(!a&&null!=d["return"]&&(k=d["return"](),Object(k)!==k))return}finally{if(m)throw h}}return l}}function s(a){if(Array.isArray(a))return a}function t(a){var g,h=a.api,j=a.apps,k=(0,f.useApi)(),l=k.apiHandler,n=(0,b.useState)(""),o=m(n,2),p=o[0],q=o[1],r=(0,b.useState)([]),s=m(r,2),t=s[0],u=s[1],v=(0,b.useState)({userCredentials:{username:null,password:null},identification:{clientID:null,clientSecret:"",redirectUri:null,externalApiKeys:{}},flags:{},scopes:[],authToken:{code:"",access_token:""}}),w=m(v,2),x=w[0],y=w[1],z=(0,c.useTheme)();console.log("theme ",z.theme);(0,b.useEffect)(function(){if(h){var a=l.getEndpoints(h,{});if(u(a),0<(null===a||void 0===a?void 0:a.length)){var b,c=l.buildFullUrl(a[0].url,"/graphql");q(c);var d=null===(b=h.paths)||void 0===b||null===(b=b["/graphql"])||void 0===b?void 0:b.post,f=null;if(!x.identification.clientID&&j&&0<j.length&&j[0].credentials&&0<j[0].credentials.length){var g,k=(0,e.findFirstAppWithAccess)(j);f=k?null===(g=k.credentials)||void 0===g?void 0:g[0]:j[0].credentials[0]}var m=l.getSecurityConfig(h,d,null,c);m&&y(function(a){var b;return i(i({},a),{},{identification:i(i({},a.identification),{},{clientID:(null===(b=f)||void 0===b?void 0:b.client_id)||""}),flags:m.flags||{}})})}}},[h,l,j]);var A={endpoint:p,showExplorerHeader:!1,headers:function(a){var b,c=a.flags,d={};return d["Content-Type"]="application/json",d.Accept="application/json",c.requiresBasicAuth&&(d.Authorization="not_supported"),c.requiresOauth&&null!==(b=c.authToken)&&void 0!==b&&b.access_token&&(d.Authorization="not_supported"),c.requiresHttpBearerToken&&(d.Authorization="not_supported"),c.requiresDigestAuth&&(d.Authorization="not_supported"),c.requiresHobaAuth&&(d.Authorization="not_supported"),c.requiresMutualAuth&&(d.Authorization="not_supported"),c.requiresNegotiateAuth&&(d.Authorization="not_supported"),c.requiresVapidAuth&&(d.Authorization="not_supported"),c.requiresScramShaAuth&&(d.Authorization="not_supported"),c.requiresClientId&&"header"===c.clientIdLocation&&(c.clientIdName?d[c.clientIdName]=a.identification.clientID:d["X-IBM-Client-Id"]=a.identification.clientID),c.requiresClientSecret&&"header"===c.clientSecretLocation&&(c.clientSecretName?d[c.clientSecretName]=a.identification.clientSecret:d["X-IBM-Client-Secret"]=a.identification.clientSecret),d}(x),theme:z?z.theme:"white"};return b["default"].createElement("div",null,b["default"].createElement("div",{className:"graphql-endpoint-selector"},b["default"].createElement("div",null,b["default"].createElement("div",{className:"graphql-endpoint-label"},"Endpoint"),b["default"].createElement("div",null,t&&0<t.length?b["default"].createElement(c.Select,{id:"graphql-endpoint-selector",onChange:function(a){var b,c=a.target.value,d=l.buildFullUrl(c,"/graphql");q(d);var f=null===(b=h.paths)||void 0===b||null===(b=b["/graphql"])||void 0===b?void 0:b.post,g=null;if(!x.identification.clientID&&j&&0<j.length&&j[0].credentials&&0<j[0].credentials.length){var k,m=(0,e.findFirstAppWithAccess)(j);g=m?null===(k=m.credentials)||void 0===k?void 0:k[0]:j[0].credentials[0]}var n=l.getSecurityConfig(h,f,null,d);n&&y(function(a){var b;return i(i({},a),{},{identification:i(i({},a.identification),{},{clientID:(null===(b=g)||void 0===b?void 0:b.client_id)||""}),flags:n.flags||{}})})},defaultValue:(null===(g=t[0])||void 0===g?void 0:g.url)||"",hideLabel:!0,size:"sm","data-testid":"graphql-endpoint-selector",style:{width:"100%"}},t.map(function(a,d){var e=a.types?"".concat(a.types,": "):"",f="".concat(e).concat(a.url,"/graphql");return b["default"].createElement(c.SelectItem,{key:a.url||"endpoint-".concat(d),value:a.url||"",text:f||"Endpoint ".concat(d+1),"data-testid":"graphql-endpoint-option"})})):b["default"].createElement("div",null,"No endpoints available")),b["default"].createElement("div",{style:{height:"2rem"}}))),p?b["default"].createElement(d.GraphiQLExplorer,{key:"graphql-explorer-".concat(p),config:A}):b["default"].createElement(c.Loading,{small:!0,"data-testid":"loading-graphiql-explorer"}))}t.displayName="TestGraphQL";var u=exports["default"]=t;