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 • 8.79 kB
JavaScript
function b(){function g(a,b,f,g){var i=b&&b.prototype instanceof h?b:h,c=Object.create(i.prototype);return d(c,"_invoke",function(a,b,g){function h(a,b){for(k=a,s=b,e=0;!w&&t&&!c&&e<v.length;e++){var c,f=v[e],g=p.p,h=f[2];3<a?(c=h===b)&&(s=f[(k=f[4])?5:(k=3,3)],f[4]=f[5]=m):f[0]<=g&&((c=2>a&&g<f[1])?(k=0,p.v=b,p.n=f[1]):g<h&&(c=3>a||f[0]>b||b>h)&&(f[4]=a,f[5]=b,p.n=h,k=0))}if(c||1<a)return q;throw w=!0,b}var j,k,s,t=0,v=g||[],w=!1,p={p:0,n:0,v:m,a:h,f:h.bind(m,4),d:function c(a,b){return j=a,k=0,s=m,p.n=b,q}};return function(c,d,f){if(1<t)throw TypeError("Generator is already running");for(w&&1===d&&h(d,f),k=d,s=f;(e=2>k?m:s)||!w;){j||(k?3>k?(1<k&&(p.n=-1),h(k,s)):p.n=s:p.v=s);try{if(t=2,j){if(k||(c="next"),e=j[c]){if(!(e=e.call(j,s)))throw TypeError("iterator result is not an object");if(!e.done)return e;s=e.value,2>k&&(k=0)}else 1===k&&(e=j["return"])&&e.call(j),2>k&&(s=TypeError("The iterator does not provide a '"+c+"' method"),k=1);j=m}else if((e=(w=0>p.n)?s:a.call(b,p))!==q)break}catch(a){j=m,k=1,s=a}finally{t=1}}return{value:e,done:w}}}(a,f,g),!0),c}function h(){}function i(){}function j(){}function k(a){return Object.setPrototypeOf?Object.setPrototypeOf(a,j):(a.__proto__=j,d(a,n,"GeneratorFunction")),a.prototype=Object.create(c),a}var m,e,f="function"==typeof Symbol?Symbol:{},l=f.iterator||"@@iterator",n=f.toStringTag||"@@toStringTag",q={};e=Object.getPrototypeOf;var a=[][l]?e(e([][l]())):(d(e={},l,function(){return this}),e),c=j.prototype=h.prototype=Object.create(a);return i.prototype=j,d(c,"constructor",j),d(j,"constructor",i),i.displayName="GeneratorFunction",d(j,n,"GeneratorFunction"),d(c),d(c,n,"Generator"),d(c,l,function(){return this}),d(c,"toString",function(){return"[object Generator]"}),(b=function a(){return{w:g,m:k}})()}function d(a,b,c,e){var f=Object.defineProperty;try{f({},"",{})}catch(a){f=0}d=function g(a,b,c,e){function h(b,c){d(a,b,function(a){return this._invoke(b,c,a)})}b?f?f(a,b,{value:c,enumerable:!e,configurable:!e,writable:!e}):a[b]=c:(h("next",0),h("throw",1),h("return",2))},d(a,b,c,e)}function f(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 g(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?f(Object(b),!0).forEach(function(c){h(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):f(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function h(a,b,c){return(b=i(b))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function i(a){var b=j(a,"string");return"symbol"==p(b)?b:b+""}function j(a,b){if("object"!=p(a)||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=p(d))return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}function k(a,b){return n(a)||m(a,b)||t(a,b)||l()}function l(){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 m(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 n(a){if(Array.isArray(a))return a}function p(a){"@babel/helpers - typeof";return p="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},p(a)}function q(a){return v(a)||u(a)||t(a)||s()}function s(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function t(b,c){if(b){if("string"==typeof b)return w(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)?w(b,c):void 0}}function u(a){if("undefined"!=typeof Symbol&&null!=a[Symbol.iterator]||null!=a["@@iterator"])return Array.from(a)}function v(a){if(Array.isArray(a))return w(a)}function w(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 x(b,d,f,e,g,h,a){try{var c=b[h](a),i=c.value}catch(a){return void f(a)}c.done?d(i):Promise.resolve(i).then(e,g)}function y(b){return function(){var c=this,d=arguments;return new Promise(function(e,f){function g(a){x(i,e,f,g,h,"next",a)}function h(a){x(i,e,f,g,h,"throw",a)}var i=b.apply(c,d);g(void 0)})}}import{useState as z,useEffect as A}from"react";import B from"utils/api-factory";import{cloneDeep as C}from"lodash";import{APITypes as D,getAPIType as E}from"../utils/APITypes.ts";export function _parse(a){return F.apply(this,arguments)}function F(){return F=y(b().m(function c(a){var d,e,f,g,h,i,j,k,l,m,n;return b().w(function(b){for(;1;)switch(b.n){case 0:return b.n=1,import("@asyncapi/parser");case 1:return d=b.v,e=d.Parser,b.n=2,import("@asyncapi/avro-schema-parser");case 2:return f=b.v,g=f.AvroSchemaParser,b.n=3,import("@asyncapi/openapi-schema-parser");case 3:return h=b.v,i=h.OpenAPISchemaParser,j=new e({}),j.registerSchemaParser(g()),j.registerSchemaParser(i()),k={allowedSeverity:{error:!0,warning:!0}},b.n=4,j.parse(a,{validateOptions:k});case 4:return l=b.v,m=l.document,n=l.diagnostics,m||(console.error("Failed to parse api"),console.error(n)),b.a(2,m)}},c)})),F.apply(this,arguments)}export function _validate(a){return G.apply(this,arguments)}function G(){return G=y(b().m(function c(a){var d,e,f,g,h,i,j;return b().w(function(b){for(;1;)switch(b.n){case 0:return b.n=1,import("@asyncapi/parser");case 1:return d=b.v,e=d.Parser,b.n=2,import("@asyncapi/avro-schema-parser");case 2:return f=b.v,g=f.AvroSchemaParser,b.n=3,import("@asyncapi/openapi-schema-parser");case 3:return h=b.v,i=h.OpenAPISchemaParser,j=new e({}),j.registerSchemaParser(g()),j.registerSchemaParser(i()),b.a(2,j.validate(a))}},c)})),G.apply(this,arguments)}var H=function b(a){var c=a.title,d=void 0===c?"":c,e=a.validationErrors,f=void 0===e?[]:e,g=a.detail,h=void 0===g?"":g,i=f.map(function(a){var b=a.title;return b}),b=[d,h].concat(q(i));return b},I=function b(a){if("object"!==p(a)||null===a)return[];for(var c=new WeakSet,d=[],e=[a],f=function b(a){try{var c=new URL(a);return"http:"===c.protocol||"https:"===c.protocol}catch(a){return!1}};0<e.length;){var g=e.pop();if("object"===p(g)&&null!==g&&!c.has(g))for(var h in c.add(g),"string"==typeof g.$ref&&!g.$ref.startsWith("#")&&f(g.$ref)&&d.push("$ref: ".concat(g.$ref)),g)Object.hasOwn(g,h)&&e.push(g[h])}return d};export var isCspRestricted=function a(){if("undefined"!=typeof window){var b=document.querySelector("meta[http-equiv=\"Content-Security-Policy\"]");if(b){var c=b.getAttribute("content");if(c&&c.includes("script-src")&&!c.includes("unsafe-eval"))return!0}}return!1};var J=function c(a){var d=z({originalApi:a,apiHandler:null,loading:!0,error:null}),e=k(d,2),f=e[0],h=f.originalApi,i=f.apiHandler,j=f.loading,l=f.error,m=e[1];return A(function(){m(function(a){return g(g({},a),{},{loading:!0})});var c=!1,d=I(a);return d.length?void m(function(a){return g(g({},a),{},{error:{type:"external_ref",errorString:d.join("\n")},loading:!1})}):(E(a)===D.asyncapi?y(b().m(function d(){var e,f,h,i;return b().w(function(b){for(;1;)switch(b.p=b.n){case 0:if(b.p=0,!isCspRestricted()){b.n=1;break}return m(function(b){return g(g({},b),{},{originalApi:a,apiHandler:B(a),error:{type:"csp_restricted",errorString:"The AsyncAPI document can't be displayed due to enforced Content Security Policy (CSP) restrictions."},loading:!1})}),b.a(2);case 1:return e=C(a),b.n=2,_parse(a);case 2:if(f=b.v,!c){b.n=3;break}return b.a(2);case 3:m(function(a){return g(g({},a),{},{originalApi:e,apiHandler:B(f),error:null,loading:!1})}),b.n=6;break;case 4:if(b.p=4,i=b.v,!c){b.n=5;break}return b.a(2);case 5:console.error("Errors detected while parsing:",i),h={type:"async_parse_errors",errorString:H(i).join("\n")},m(function(a){return g(g({},a),{},{error:h,loading:!1})});case 6:return b.a(2)}},d,null,[[0,4]])}))():m(function(b){return g(g({},b),{},{originalApi:a,apiHandler:B(a),error:null,loading:!1})}),function(){c=!0})},[a]),{originalApi:h,apiHandler:i,loading:j,error:l}};export{J as useCreateApiHandler};