swagger-editor 5.0.0-alpha.73 → 5.0.0-alpha.75
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swagger-editor.js","mappings":"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","sources":["../external module \"@asyncapi/react-component/lib/esm/without-parser.js\"","../webpack/bootstrap","../webpack/runtime/define property getters","../webpack/runtime/getFullHash","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/make namespace object","../external module \"react\"","../external module \"deepmerge\"","../external module \"swagger-ui-react\"","../external module \"react-collapse-pane\"","../external module \"react/jsx-runtime.js\"","plugins/layout/components/Layout/Layout.jsx","plugins/layout/fn.js","plugins/layout/hooks.js","plugins/layout/index.js","../external module \"classnames\"","plugins/splash-screen/components/SplashScreen/SplashScreen.jsx","plugins/splash-screen/components/SplashScreenSpinner/SplashScreenSpinner.jsx","plugins/splash-screen/index.js","plugins/top-bar/components/TopBar/TopBar.jsx","plugins/top-bar/components/Logo/Logo.jsx","plugins/top-bar/components/FileMenu/items/ImportUrlMenuItemHandler.jsx","../external module \"file-dialog\"","plugins/top-bar/components/FileMenu/items/ImportFileMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/SaveAsMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/ConvertAndSaveAsJSONMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/ConvertAndSaveAsYAMLMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/DownloadResolvedJSONMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/DownloadResolvedYAMLMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/FileMenuHandler.jsx","plugins/top-bar/components/FileMenu/FileMenu.jsx","plugins/top-bar/components/FileMenu/items/ImportUrlMenuItem.jsx","plugins/top-bar/components/FileMenu/items/ImportFileMenuItem.jsx","../external module \"prop-types\"","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/LoadExampleNestedMenuHandler.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/LoadExampleNestedMenu.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI31PetstoreMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI30PetstoreMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI20PetstoreMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/AsyncAPI26PetstoreMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/AsyncAPI26StreetlightsMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/APIDesignSystemsMenuItem.jsx","plugins/top-bar/components/FileMenu/items/SaveAsMenuItem.jsx","plugins/top-bar/components/FileMenu/items/ConvertAndSaveAsJSONMenuItem.jsx","plugins/top-bar/components/FileMenu/items/ConvertAndSaveAsYAMLMenuItem.jsx","plugins/top-bar/components/FileMenu/items/DownloadResolvedJSONMenuItem.jsx","plugins/top-bar/components/FileMenu/items/DownloadResolvedYAMLMenuItem.jsx","plugins/top-bar/components/EditMenu/items/ConvertToJSONMenuItemHandler.jsx","plugins/top-bar/components/EditMenu/items/ConvertToYAMLMenuItemHandler.jsx","plugins/top-bar/components/EditMenu/items/ConvertToOpenAPI30xMenuItemHandler.jsx","plugins/top-bar/components/EditMenu/EditMenuHandler.jsx","plugins/top-bar/components/EditMenu/EditMenu.jsx","plugins/top-bar/components/EditMenu/items/ClearMenuItem.jsx","plugins/top-bar/components/EditMenu/items/ConvertToJSONMenuItem.jsx","plugins/top-bar/components/EditMenu/items/ConvertToYAMLMenuItem.jsx","plugins/top-bar/components/EditMenu/items/ConvertToOpenAPI30xMenuItem.jsx","plugins/top-bar/components/GenerateServerMenu/GenerateMenu.jsx","plugins/top-bar/components/GenerateServerMenu/OpenAPI3GenerateServerMenu.jsx","plugins/top-bar/components/GenerateServerMenu/OpenAPI3GenerateClientMenu.jsx","plugins/top-bar/components/GenerateServerMenu/OpenAPI2GenerateServerMenu.jsx","plugins/top-bar/components/GenerateServerMenu/OpenAPI2GenerateClientMenu.jsx","plugins/top-bar/components/AboutMenu/AboutMenu.jsx","../external module \"short-unique-id\"","../external module \"axios\"","../external module \"@braintree/sanitize-url\"","plugins/top-bar/actions/import-url.js","../external module \"js-file-download\"","plugins/top-bar/actions/download-content.js","../external module \"js-yaml\"","plugins/top-bar/actions/convert-content-to-json.js","plugins/top-bar/actions/convert-content-to-yaml.js","../external module \"monaco-editor\"","plugins/top-bar/actions/dereference-content.js","plugins/top-bar/actions/convert-openapi-20-to-openapi-30x.js","plugins/top-bar/actions/fetch-openapi3-generator-server-list.js","plugins/top-bar/actions/fetch-openapi3-generator-client-list.js","plugins/top-bar/actions/fetch-openapi2-generator-server-list.js","plugins/top-bar/actions/fetch-openapi2-generator-client-list.js","plugins/top-bar/actions/generate-server-code-from-openapi-3.js","plugins/top-bar/actions/generate-client-code-from-openapi-3.js","plugins/top-bar/actions/generate-server-code-from-openapi-20.js","plugins/top-bar/actions/generate-client-code-from-openapi-20.js","utils/create-safe-action-wrapper.js","../external module \"immutable\"","plugins/top-bar/reducers.js","plugins/top-bar/wrap-actions.js","../external module \"reselect\"","plugins/top-bar/selectors.js","plugins/top-bar/index.js","../external module \"react-modal\"","plugins/modals/components/Modal.jsx","plugins/modals/components/ModalHeader.jsx","plugins/modals/components/ModalTitle.jsx","plugins/modals/components/ModalBody.jsx","plugins/modals/components/ModalFooter.jsx","plugins/modals/hooks.js","plugins/modals/index.js","plugins/dialogs/components/AlertDialog.jsx","plugins/dialogs/components/ConfirmDialog.jsx","plugins/dialogs/index.js","plugins/dropdown-menu/components/DropdownMenu/DropdownMenu.jsx","plugins/dropdown-menu/components/DropdownMenuNested/DropdownMenuNested.jsx","plugins/dropdown-menu/components/DropdownMenuItem/DropdownMenuItem.jsx","plugins/dropdown-menu/components/DropdownMenuItemDivider.jsx","plugins/dropdown-menu/index.js","plugins/dropzone/components/Dropzone.jsx","../external module \"react-dropzone\"","plugins/dropzone/hooks.js","plugins/dropzone/index.js","plugins/versions/after-load.js","plugins/versions/index.js","plugins/editor-textarea/components/EditorPane/EditorPane.jsx","../external module \"react-resize-detector\"","plugins/editor-textarea/hooks.js","plugins/editor-textarea/components/TextareaEditor/TextareaEditor.jsx","plugins/editor-textarea/components/EditorPaneBars/EditorPaneBarTop.jsx","plugins/editor-textarea/components/EditorPaneBars/EditorPaneBarRight.jsx","plugins/editor-textarea/components/EditorPaneBars/EditorPaneBarBottom.jsx","plugins/editor-textarea/components/EditorPaneBars/EditorPaneBarLeft.jsx","plugins/editor-textarea/actions.js","plugins/editor-textarea/reducers.js","plugins/editor-textarea/selectors.js","../external module \"lodash/debounce.js\"","plugins/editor-textarea/wrap-actions.js","plugins/editor-textarea/index.js","../external module \"lodash/noop.js\"","plugins/editor-monaco/themes/se-vs-dark.js","plugins/editor-monaco/themes/se-vs-light.js","plugins/editor-monaco/components/MonacoEditor/hooks.js","plugins/editor-monaco/components/MonacoEditor/MonacoEditor.jsx","plugins/editor-monaco/components/MonacoEditor/MonacoEditorContainer.jsx","plugins/editor-monaco/components/ValidationPane/ValidationPane.jsx","plugins/editor-monaco/components/ValidationTable/SeverityIcon.jsx","plugins/editor-monaco/components/ValidationTable/ValidationTable.jsx","../external module \"@primer/octicons-react\"","plugins/editor-monaco/components/ThemeSelectionIcon.jsx","plugins/editor-monaco/wrap-components/EditorPaneBarTopWrapper.jsx","plugins/editor-monaco/wrap-components/EditorPaneBarBottomWrapper.jsx","plugins/editor-monaco/actions/append-markers.js","plugins/editor-monaco/actions/clear-markers.js","plugins/editor-monaco/actions/set-language.js","plugins/editor-monaco/actions/set-markers.js","plugins/editor-monaco/actions/set-position.js","plugins/editor-monaco/actions/set-theme.js","plugins/editor-monaco/reducers.js","plugins/editor-monaco/selectors.js","../external module \"monaco-marker-data-provider\"","plugins/editor-monaco/fn.js","plugins/editor-monaco/root-injects.js","../external module \"vscode/services\"","../external module \"vscode/service-override/languages\"","../external module \"vscode/extensions\"","plugins/editor-monaco/after-load.js","plugins/editor-monaco/index.js","../node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js","../node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js","../external module \"vscode\"","../external module \"monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\"","plugins/editor-monaco-language-apidom/language/apidom.js","../external module \"vscode-languageclient/lib/common/codeConverter.js\"","../external module \"vscode-languageclient/lib/common/protocolConverter.js\"","plugins/editor-monaco-language-apidom/language/WorkerManager.js","plugins/editor-monaco-language-apidom/language/providers/Provider.js","plugins/editor-monaco-language-apidom/language/providers/DiagnosticsProvider.js","plugins/editor-monaco-language-apidom/language/providers/HoverProvider.js","plugins/editor-monaco-language-apidom/language/providers/DocumentLinkProvider.js","plugins/editor-monaco-language-apidom/language/providers/CompletionItemProvider.js","plugins/editor-monaco-language-apidom/language/providers/DocumentSemanticTokensProvider.js","plugins/editor-monaco-language-apidom/language/providers/CodeActionsProvider.js","plugins/editor-monaco-language-apidom/language/providers/DocumentSymbolProvider.js","plugins/editor-monaco-language-apidom/language/providers/DefinitionProvider.js","plugins/editor-monaco-language-apidom/language/apidom-mode.js","plugins/editor-monaco-language-apidom/language/actions/dereference.js","plugins/editor-monaco-language-apidom/language/monaco.contribution.js","plugins/editor-monaco-language-apidom/after-load.js","plugins/editor-monaco-language-apidom/actions/get-json-pointer-position.js","plugins/editor-monaco-language-apidom/index.js","plugins/editor-preview/components/EditorPreviewPane.jsx","plugins/editor-preview/components/EditorPreviewFallback.jsx","plugins/editor-preview/index.js","plugins/editor-preview-swagger-ui/components/EditorPreviewSwaggerUI.jsx","../external module \"react-immutable-proptypes\"","plugins/editor-preview-swagger-ui/components/JumpToPath.jsx","plugins/editor-preview-swagger-ui/wrap-components/EditorPreviewWrapper.jsx","plugins/editor-preview-swagger-ui/actions/preview-unmounted.js","../external module \"@swagger-api/apidom-json-pointer\"","plugins/editor-preview-swagger-ui/actions/jump-to-path.js","plugins/editor-preview-swagger-ui/wrap-actions.js","plugins/editor-preview-swagger-ui/index.js","plugins/editor-preview-asyncapi/components/EditorPreviewAsyncAPI/EditorPreviewAsyncAPI.jsx","plugins/editor-preview-asyncapi/components/ParseErrors/ParseErrors.jsx","plugins/editor-preview-asyncapi/wrap-components/EditorPreviewWrapper.jsx","../external module \"@asyncapi/parser\"","../external module \"@asyncapi/openapi-schema-parser\"","../external module \"@asyncapi/avro-schema-parser\"","plugins/editor-preview-asyncapi/util/raml-1-0-parser.js","plugins/editor-preview-asyncapi/actions.js","plugins/editor-preview-asyncapi/wrap-actions.js","../external module \"lodash/uniqWith.js\"","plugins/editor-preview-asyncapi/reducers.js","plugins/editor-preview-asyncapi/selectors.js","plugins/editor-preview-asyncapi/monaco.contribution.js","plugins/editor-preview-asyncapi/after-load.js","plugins/editor-preview-asyncapi/index.js","../external module \"@swagger-api/apidom-parser-adapter-api-design-systems-json\"","../external module \"@swagger-api/apidom-parser-adapter-api-design-systems-yaml\"","plugins/editor-preview-api-design-systems/actions.js","plugins/editor-preview-api-design-systems/wrap-actions.js","../external module \"@swagger-api/apidom-core\"","../external module \"@swagger-api/apidom-ns-api-design-systems\"","plugins/editor-preview-api-design-systems/namespace.js","plugins/editor-preview-api-design-systems/reducers.js","plugins/editor-preview-api-design-systems/selectors.js","plugins/editor-preview-api-design-systems/components/Main.jsx","plugins/editor-preview-api-design-systems/components/Info.jsx","plugins/editor-preview-api-design-systems/components/Principles.jsx","plugins/editor-preview-api-design-systems/components/Principle.jsx","plugins/editor-preview-api-design-systems/components/Standards.jsx","plugins/editor-preview-api-design-systems/components/Standard.jsx","plugins/editor-preview-api-design-systems/components/Scenarios.jsx","plugins/editor-preview-api-design-systems/components/Scenario.jsx","plugins/editor-preview-api-design-systems/components/Requirement.jsx","plugins/editor-preview-api-design-systems/components/EditorPreviewAPIDesignSystems.jsx","plugins/editor-preview-api-design-systems/components/ParseErrors.jsx","plugins/editor-preview-api-design-systems/wrap-components/EditorPreviewWrapper.jsx","plugins/editor-preview-api-design-systems/index.js","plugins/editor-content-read-only/actions.js","plugins/editor-content-read-only/reducers.js","plugins/editor-content-read-only/selectors.js","plugins/editor-content-read-only/components/ReadOnlySelectionIcon.jsx","plugins/editor-content-read-only/wrap-components/EditorPaneBarTopWrapper.jsx","plugins/editor-content-read-only/wrap-components/EditorWrapper.jsx","plugins/editor-content-read-only/index.js","plugins/editor-content-origin/actions.js","plugins/editor-content-origin/reducers.js","plugins/editor-content-origin/selectors.js","plugins/editor-content-origin/wrap-actions.js","plugins/editor-content-origin/index.js","../external module \"@swagger-api/apidom-parser-adapter-asyncapi-json-2\"","../external module \"@swagger-api/apidom-parser-adapter-asyncapi-yaml-2\"","../external module \"@swagger-api/apidom-parser-adapter-openapi-json-3-0\"","../external module \"@swagger-api/apidom-parser-adapter-openapi-yaml-3-0\"","../external module \"@swagger-api/apidom-parser-adapter-openapi-json-3-1\"","../external module \"@swagger-api/apidom-parser-adapter-openapi-yaml-3-1\"","plugins/editor-content-type/actions.js","plugins/editor-content-type/wrap-actions.js","plugins/editor-content-type/reducers.js","plugins/editor-content-type/selectors.js","plugins/editor-content-type/fn.js","plugins/editor-content-type/index.js","plugins/editor-content-persistence/wrap-actions.js","plugins/editor-content-persistence/layers/local-storage.js","plugins/editor-content-persistence/root-injects.js","plugins/editor-content-persistence/after-load.js","plugins/editor-content-persistence/index.js","plugins/editor-content-fixtures/selectors/selectOpenAPI310PetstoreYAML.js","plugins/editor-content-fixtures/selectors/selectOpenAPI303PetstoreYAML.js","plugins/editor-content-fixtures/selectors/selectOpenAPI20PetstoreYAML.js","plugins/editor-content-fixtures/selectors/selectAsyncAPI260PetstoreYAML.js","plugins/editor-content-fixtures/selectors/selectAsyncAPI260StreetlightsYAML.js","plugins/editor-content-fixtures/selectors/selectAPIDesignSystemsYAML.js","plugins/editor-content-fixtures/index.js","plugins/swagger-ui-adapter/wrap-actions.js","plugins/swagger-ui-adapter/wrap-components/BaseLayout.jsx","plugins/swagger-ui-adapter/index.js","App.jsx"],"sourcesContent":["var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__asyncapi_react_component_lib_esm_without_parser_js_ba054bac__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.h = () => (\"cc2598f68a643ad3cdd9\")","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"Suspense\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.Suspense, [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_react__[\"default\"], [\"forwardRef\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.forwardRef, [\"memo\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.memo, [\"useCallback\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useCallback, [\"useEffect\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useEffect, [\"useImperativeHandle\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useImperativeHandle, [\"useRef\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useRef, [\"useState\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useState });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_deepmerge__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_swagger_ui_react_ed26f026__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"SplitPane\"]: () => __WEBPACK_EXTERNAL_MODULE_react_collapse_pane_f7052d83__.SplitPane });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"Fragment\"]: () => __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_js_fc12ce1a__.Fragment, [\"jsx\"]: () => __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_js_fc12ce1a__.jsx, [\"jsxs\"]: () => __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_js_fc12ce1a__.jsxs });","import PropTypes from 'prop-types';\nimport { SplitPane } from 'react-collapse-pane';\n\nconst Layout = ({ getComponent, useSwaggerEditorReactModal, useSplashScreen }) => {\n const EditorPane = getComponent('EditorPane', true);\n const EditorPreviewPane = getComponent('EditorPreviewPane', true);\n const TopBar = getComponent('TopBar', true);\n const Container = getComponent('Container'); // accessed from swagger-ui`\n const Dropzone = getComponent('Dropzone', true);\n const SplashScreen = getComponent('SplashScreen', true);\n const ref = useSwaggerEditorReactModal();\n const [canDisplaySplashScreen, canDisplayLayout] = useSplashScreen();\n\n return (\n <div className=\"swagger-editor__layout\" ref={ref}>\n <SplashScreen isOpen={canDisplaySplashScreen} />\n {canDisplayLayout && (\n <>\n <TopBar />\n <Container className=\"container\">\n <Dropzone>\n <SplitPane split=\"vertical\">\n <EditorPane />\n <EditorPreviewPane />\n </SplitPane>\n </Dropzone>\n </Container>\n </>\n )}\n </div>\n );\n};\n\nLayout.propTypes = {\n getComponent: PropTypes.func.isRequired,\n useSwaggerEditorReactModal: PropTypes.func.isRequired,\n useSplashScreen: PropTypes.func.isRequired,\n};\n\nexport default Layout;\n","const requestIdleCallbackPolyfill = (callback) => {\n const start = Date.now();\n\n return globalThis.setTimeout(() => {\n callback({\n didTimeout: false,\n timeoutRemaining() {\n return Math.max(0, 50 - (Date.now() - start));\n },\n });\n }, 1);\n};\n\nconst cancelIdleCallbackPolyfill = (handle) => globalThis.clearTimeout(handle);\n\nexport const requestIdleCallback = globalThis.requestIdleCallback\n ? (...args) => globalThis.requestIdleCallback(...args)\n : requestIdleCallbackPolyfill;\n\nexport const cancelIdleCallback = globalThis.cancelIdleCallback\n ? (...args) => globalThis.cancelIdleCallback(...args)\n : cancelIdleCallbackPolyfill;\n","import { useEffect, useState } from 'react';\n\n/* eslint-disable */\n\n// eslint-disable-next-line import/prefer-default-export\nexport const makeUseSplashScreen = (getSystem) => () => {\n const [canDisplaySplashScreen, setCanDisplaySplashScreen] = useState(true);\n const [canDisplayLayout, setDisplayLayout] = useState(false);\n const { fn } = getSystem();\n\n useEffect(() => {\n const callback = () => {\n setDisplayLayout(true);\n };\n const requestId = fn.requestIdleCallback(callback);\n\n return () => {\n fn.cancelIdleCallback(requestId);\n };\n }, []);\n\n useEffect(() => {\n if (canDisplayLayout) {\n let requestID;\n\n const callback = () => {\n requestID = fn.requestIdleCallback(() => {\n setCanDisplaySplashScreen(false);\n });\n };\n const timeoutID = globalThis.setTimeout(callback, 1000);\n\n return () => {\n globalThis.clearTimeout(timeoutID);\n fn.cancelIdleCallback(requestID);\n };\n }\n return undefined;\n }, [canDisplayLayout]);\n\n return [canDisplaySplashScreen, canDisplayLayout];\n};\n","import Layout from './components/Layout/Layout.jsx';\nimport { requestIdleCallback, cancelIdleCallback } from './fn.js';\nimport { makeUseSplashScreen } from './hooks.js';\n\nconst LayoutPlugin = ({ getSystem }) => ({\n rootInjects: {\n useSplashScreen: makeUseSplashScreen(getSystem),\n },\n components: {\n SwaggerEditorLayout: Layout,\n },\n fn: {\n requestIdleCallback,\n cancelIdleCallback,\n },\n});\n\nexport default LayoutPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_classnames__[\"default\"] });","import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\n// eslint-disable-next-line import/no-unresolved\nimport logo from '../../assets/logo.svg?raw';\n\nconst SplashScreen = ({ isOpen, getComponent }) => {\n const { PACKAGE_VERSION } = buildInfo; // eslint-disable-line no-undef\n const SplashScreenSpinner = getComponent('SplashScreenSpinner');\n const [isHidden, setHidden] = useState(!isOpen);\n\n const handleTransitionEnd = () => {\n setHidden(true);\n };\n\n return (\n <div\n className={classNames('swagger-editor__splash-screen', {\n 'swagger-editor__splash-screen--fade-out': !isOpen,\n 'swagger-editor__splash-screen--hidden': isHidden,\n })}\n onTransitionEnd={handleTransitionEnd}\n >\n <figure className=\"swagger-editor__splash-screen-figure\">\n <img width=\"100%\" src={logo} alt=\"Swagger Editor\" />\n <figcaption>{PACKAGE_VERSION}</figcaption>\n <SplashScreenSpinner />\n </figure>\n </div>\n );\n};\n\nSplashScreen.propTypes = {\n isOpen: PropTypes.bool,\n getComponent: PropTypes.func.isRequired,\n};\n\nSplashScreen.defaultProps = {\n isOpen: true,\n};\n\nexport default SplashScreen;\n","// eslint-disable-next-line import/no-unresolved\nimport loader from '../../assets/loader.gif?raw';\n\nconst SplashScreenSpinner = () => (\n <img\n width=\"25\"\n height=\"25\"\n className=\"swagger-editor__splash-screen-spinner\"\n src={loader}\n alt=\"Loading...\"\n />\n);\n\nexport default SplashScreenSpinner;\n","import SplashScreen from './components/SplashScreen/SplashScreen.jsx';\nimport SplashScreenSpinner from './components/SplashScreenSpinner/SplashScreenSpinner.jsx';\n\nconst SplashScreenPlugin = () => ({\n components: {\n SplashScreen,\n SplashScreenSpinner,\n },\n});\n\nexport default SplashScreenPlugin;\n","import PropTypes from 'prop-types';\n\n/* eslint-disable */\n\nconst TopBar = ({ getComponent }) => {\n const Logo = getComponent('TopBarLogo');\n const FileMenu = getComponent('TopBarFileMenu', true);\n const EditMenu = getComponent('TopBarEditMenu', true);\n const OpenAPI3GenerateServerMenu = getComponent('TopBarOpenAPI3GenerateServerMenu', true);\n const OpenAPI3GenerateClientMenu = getComponent('TopBarOpenAPI3GenerateClientMenu', true);\n const OpenAPI2GenerateServerMenu = getComponent('TopBarOpenAPI2GenerateServerMenu', true);\n const OpenAPI2GenerateClientMenu = getComponent('TopBarOpenAPI2GenerateClientMenu', true);\n const AboutMenu = getComponent('TopBarAboutMenu', true);\n\n return (\n <div className=\"swagger-editor__top-bar\">\n <div className=\"swagger-editor__top-bar-wrapper\">\n <Logo />\n <FileMenu />\n <EditMenu />\n <OpenAPI3GenerateServerMenu />\n <OpenAPI3GenerateClientMenu />\n <OpenAPI2GenerateServerMenu />\n <OpenAPI2GenerateClientMenu />\n <AboutMenu />\n </div>\n </div>\n );\n};\n\nTopBar.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default TopBar;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport logo from '../../assets/logo-small.svg';\n\nconst Logo = ({ link }) => {\n const img = <img className=\"swagger-editor__top-bar-logo-img\" src={logo} alt=\"Swagger Editor\" />;\n\n return (\n <div className=\"swagger-editor__top-bar-logo\">\n {link ? (\n <a href={link} rel=\"noopener noreferrer\">\n {img}\n </a>\n ) : (\n img\n )}\n </div>\n );\n};\n\nLogo.propTypes = {\n link: PropTypes.string,\n};\n\nLogo.defaultProps = {\n link: 'https://swagger.io/tools/swagger-editor/',\n};\n\nexport default Logo;\n","import React, { useState, useImperativeHandle, useRef, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ImportUrlMenuItemHandler = forwardRef(({ getComponent, editorActions }, ref) => {\n const [isConfirmDialogOpen, setIsConfirmDialogOpen] = useState(false);\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const [url, setUrl] = useState('');\n const ConfirmDialog = getComponent('ConfirmDialog', true);\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleConfirmDialogClose = async (result) => {\n if (result) {\n const fsa = await editorActions.importUrl(url);\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsConfirmDialogOpen(false);\n setIsAlertDialogOpen(true);\n } else {\n editorActions.setContent(fsa.payload, 'import-url');\n setUrl('');\n alertDialogMessage.current = '';\n setIsConfirmDialogOpen(false);\n }\n } else {\n alertDialogMessage.current = '';\n setIsConfirmDialogOpen(false);\n }\n };\n\n const handleAlertDialogClose = () => {\n setIsAlertDialogOpen(false);\n };\n\n const handleUrlFieldChange = (event) => {\n setUrl(event.target.value);\n };\n\n useImperativeHandle(ref, () => ({\n openModal() {\n setIsConfirmDialogOpen(true);\n },\n }));\n\n return (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n <ConfirmDialog\n isOpen={isConfirmDialogOpen}\n title=\"Import URL\"\n onClose={handleConfirmDialogClose}\n >\n <div className=\"input-group\">\n {/* eslint-disable-next-line jsx-a11y/label-has-associated-control */}\n <label htmlFor=\"input-import-url\" aria-labelledby=\"input-import-url\">\n Enter the URL to import from\n </label>\n <input\n id=\"input-import-url\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"type url here\"\n value={url}\n onChange={handleUrlFieldChange}\n />\n </div>\n </ConfirmDialog>\n </>\n );\n});\n\nImportUrlMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorActions: PropTypes.shape({\n importUrl: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ImportUrlMenuItemHandler;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_file_dialog_c1aa51c0__[\"default\"] });","import fileDialog from 'file-dialog';\nimport React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ImportFileMenuItemHandler = forwardRef(({ getComponent, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async openFileDialog() {\n try {\n const [file] = await fileDialog({ multiple: false });\n const content = await file.text();\n\n editorActions.setContent(content, 'import-file');\n } catch (error) {\n alertDialogMessage.current = error.message || 'Unknown error while reading uploaded file.';\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n});\n\nImportFileMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorActions: PropTypes.shape({\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ImportFileMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst SaveAsMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async downloadContent() {\n const content = editorSelectors.selectContent();\n const fileNameWithExtension = editorSelectors.selectInferFileNameWithExtensionFromContent();\n\n const fsa = await editorActions.downloadContent({\n content,\n fileNameWithExtension,\n });\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nSaveAsMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameWithExtensionFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default SaveAsMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ConvertAndSaveAsJSONMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convertAndSaveAsJSON() {\n const content = editorSelectors.selectContent();\n const fileName = editorSelectors.selectInferFileNameFromContent();\n const fileNameWithExtension = `${fileName}.json`;\n\n const convertFSA = await editorActions.convertContentToJSON(content);\n if (convertFSA.error) {\n alertDialogMessage.current = convertFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n const downloadFSA = await editorActions.downloadContent({\n content: convertFSA.payload,\n fileNameWithExtension,\n });\n if (downloadFSA.error) {\n alertDialogMessage.current = downloadFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nConvertAndSaveAsJSONMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertContentToJSON: PropTypes.func.isRequired,\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ConvertAndSaveAsJSONMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ConvertAndSaveAsYAMLMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convertAndSaveAsYAML() {\n const content = editorSelectors.selectContent();\n const fileName = editorSelectors.selectInferFileNameFromContent();\n const fileNameWithExtension = `${fileName}.yaml`;\n\n const convertFSA = await editorActions.convertContentToYAML(content);\n if (convertFSA.error) {\n alertDialogMessage.current = convertFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n const downloadFSA = await editorActions.downloadContent({\n content: convertFSA.payload,\n fileNameWithExtension,\n });\n if (downloadFSA.error) {\n alertDialogMessage.current = downloadFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nConvertAndSaveAsYAMLMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertContentToYAML: PropTypes.func.isRequired,\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ConvertAndSaveAsYAMLMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst DownloadResolvedJSONMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async downloadResolvedJSON() {\n const content = editorSelectors.selectContent();\n let dereferencedContent = content;\n const isContentJSON = editorSelectors.selectIsContentFormatJSON();\n const fileName = editorSelectors.selectInferFileNameFromContent();\n const fileExtension = '.json';\n const fileNameWithExtension = `${fileName}${fileExtension}`;\n\n const dereferenceFSA = await editorActions.dereferenceContent({ content });\n if (dereferenceFSA.error) {\n alertDialogMessage.current = dereferenceFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n dereferencedContent = dereferenceFSA.payload;\n\n if (!isContentJSON) {\n const convertFSA = await editorActions.convertContentToJSON(dereferenceFSA.payload);\n if (convertFSA.error) {\n alertDialogMessage.current = convertFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n dereferencedContent = convertFSA.payload;\n }\n\n const downloadFSA = await editorActions.downloadContent({\n content: dereferencedContent,\n fileNameWithExtension,\n });\n if (downloadFSA.error) {\n alertDialogMessage.current = downloadFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nDownloadResolvedJSONMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameFromContent: PropTypes.func.isRequired,\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n dereferenceContent: PropTypes.func.isRequired,\n convertContentToJSON: PropTypes.func.isRequired,\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default DownloadResolvedJSONMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst DownloadResolvedYAMLMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async downloadResolvedYAML() {\n const content = editorSelectors.selectContent();\n let dereferencedContent = content;\n const isContentYAML = editorSelectors.selectIsContentFormatYAML();\n const fileName = editorSelectors.selectInferFileNameFromContent();\n const fileExtension = '.yaml';\n const fileNameWithExtension = `${fileName}${fileExtension}`;\n\n const dereferenceFSA = await editorActions.dereferenceContent({ content });\n if (dereferenceFSA.error) {\n alertDialogMessage.current = dereferenceFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n dereferencedContent = dereferenceFSA.payload;\n\n if (!isContentYAML) {\n const convertFSA = await editorActions.convertContentToYAML(dereferencedContent);\n if (convertFSA.error) {\n alertDialogMessage.current = convertFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n dereferencedContent = convertFSA.payload;\n }\n\n const downloadFSA = await editorActions.downloadContent({\n content: dereferencedContent,\n fileNameWithExtension,\n });\n if (downloadFSA.error) {\n alertDialogMessage.current = downloadFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nDownloadResolvedYAMLMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameFromContent: PropTypes.func.isRequired,\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n dereferenceContent: PropTypes.func.isRequired,\n convertContentToYAML: PropTypes.func.isRequired,\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default DownloadResolvedYAMLMenuItemHandler;\n","import { useImperativeHandle, useRef, forwardRef } from 'react';\n\nimport ImportUrlMenuItemHandler from './items/ImportUrlMenuItemHandler.jsx';\nimport ImportFileMenuItemHandler from './items/ImportFileMenuItemHandler.jsx';\nimport SaveAsMenuItemHandler from './items/SaveAsMenuItemHandler.jsx';\nimport ConvertAndSaveAsJSONMenuItemHandler from './items/ConvertAndSaveAsJSONMenuItemHandler.jsx';\nimport ConvertAndSaveAsYAMLMenuItemHandler from './items/ConvertAndSaveAsYAMLMenuItemHandler.jsx';\nimport DownloadResolvedJSONMenuItemHandler from './items/DownloadResolvedJSONMenuItemHandler.jsx';\nimport DownloadResolvedYAMLMenuItemHandler from './items/DownloadResolvedYAMLMenuItemHandler.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst FileMenuHandler = (props, ref) => {\n const importUrlMenuItemHandler = useRef(null);\n const importFileMenuItemHandler = useRef(null);\n const saveAsMenuItemHandler = useRef(null);\n const convertAndSaveAsJSONMenuItemHandler = useRef(null);\n const convertAndSaveAsYAMLMenuItemHandler = useRef(null);\n const downloadResolvedJSONMenuItemHandler = useRef(null);\n const downloadResolvedYAMLMenuItemHandler = useRef(null);\n\n useImperativeHandle(ref, () => ({\n importURL(event) {\n importUrlMenuItemHandler.current.openModal(event);\n },\n async importFile(event) {\n await importFileMenuItemHandler.current.openFileDialog(event);\n },\n async saveAs(event) {\n await saveAsMenuItemHandler.current.downloadContent(event);\n },\n async convertAndSaveAsJSON(event) {\n await convertAndSaveAsJSONMenuItemHandler.current.convertAndSaveAsJSON(event);\n },\n async convertAndSaveAsYAML(event) {\n await convertAndSaveAsYAMLMenuItemHandler.current.convertAndSaveAsYAML(event);\n },\n async downloadResolvedJSON(event) {\n await downloadResolvedJSONMenuItemHandler.current.downloadResolvedJSON(event);\n },\n async downloadResolvedYAML(event) {\n await downloadResolvedYAMLMenuItemHandler.current.downloadResolvedYAML(event);\n },\n }));\n\n return (\n <>\n <ImportUrlMenuItemHandler ref={importUrlMenuItemHandler} {...props} />\n <ImportFileMenuItemHandler ref={importFileMenuItemHandler} {...props} />\n <SaveAsMenuItemHandler ref={saveAsMenuItemHandler} {...props} />\n <ConvertAndSaveAsJSONMenuItemHandler ref={convertAndSaveAsJSONMenuItemHandler} {...props} />\n <ConvertAndSaveAsYAMLMenuItemHandler ref={convertAndSaveAsYAMLMenuItemHandler} {...props} />\n <DownloadResolvedJSONMenuItemHandler ref={downloadResolvedJSONMenuItemHandler} {...props} />\n <DownloadResolvedYAMLMenuItemHandler ref={downloadResolvedYAMLMenuItemHandler} {...props} />\n </>\n );\n};\n\nexport default forwardRef(FileMenuHandler);\n","import { useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport FileMenuHandler from './FileMenuHandler.jsx';\n\nconst FileMenu = (props) => {\n const { getComponent } = props;\n const fileMenuHandler = useRef(null);\n const DropdownMenu = getComponent('DropdownMenu');\n const DropdownMenuItemDivider = getComponent('DropdownMenuItemDivider');\n const ImportUrlMenuItem = getComponent('TopBarFileMenuImportUrlMenuItem', true);\n const ImportFileMenuItem = getComponent('TopBarFileMenuImportFileMenuItem', true);\n const LoadExampleNestedMenu = getComponent('TopBarFileMenuLoadExampleNestedMenu', true);\n const SaveAsMenuItem = getComponent('TopBarFileMenuSaveAsMenuItem', true);\n const ConvertAndSaveAsJSONMenuItem = getComponent(\n 'TopBarFileMenuConvertAndSaveAsJSONMenuItem',\n true\n );\n const ConvertAndSaveAsYAMLMenuItem = getComponent(\n 'TopBarFileMenuConvertAndSaveAsYAMLMenuItem',\n true\n );\n const DownloadResolvedJSONMenuItem = getComponent(\n 'TopBarFileMenuDownloadResolvedJSONMenuItem',\n true\n );\n const DownloadResolvedYAMLMenuItem = getComponent(\n 'TopBarFileMenuDownloadResolvedYAMLMenuItem',\n true\n );\n\n const handleUrlImportClick = useCallback((event) => {\n fileMenuHandler.current.importURL(event);\n }, []);\n const handleFileImportClick = useCallback(async (event) => {\n await fileMenuHandler.current.importFile(event);\n }, []);\n const handleSaveAsClick = useCallback(async (event) => {\n await fileMenuHandler.current.saveAs(event);\n }, []);\n const handleConvertAndSaveAsJSONClick = useCallback(async (event) => {\n await fileMenuHandler.current.convertAndSaveAsJSON(event);\n }, []);\n const handleConvertAndSaveAsYAMLClick = useCallback(async (event) => {\n await fileMenuHandler.current.convertAndSaveAsYAML(event);\n }, []);\n const handleDownloadResolvedJSONClick = useCallback(async (event) => {\n await fileMenuHandler.current.downloadResolvedJSON(event);\n }, []);\n const handleDownloadResolvedYAMLClick = useCallback(async (event) => {\n await fileMenuHandler.current.downloadResolvedYAML(event);\n }, []);\n\n return (\n <>\n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n <FileMenuHandler {...props} ref={fileMenuHandler} />\n <DropdownMenu label=\"File\">\n <ImportUrlMenuItem onClick={handleUrlImportClick} />\n <ImportFileMenuItem onClick={handleFileImportClick} />\n <LoadExampleNestedMenu />\n <DropdownMenuItemDivider />\n <SaveAsMenuItem onClick={handleSaveAsClick} />\n <ConvertAndSaveAsJSONMenuItem onClick={handleConvertAndSaveAsJSONClick} />\n <ConvertAndSaveAsYAMLMenuItem onClick={handleConvertAndSaveAsYAMLClick} />\n <DropdownMenuItemDivider />\n <DownloadResolvedJSONMenuItem onClick={handleDownloadResolvedJSONClick} />\n <DownloadResolvedYAMLMenuItem onClick={handleDownloadResolvedYAMLClick} />\n </DropdownMenu>\n </>\n );\n};\n\nFileMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default FileMenu;\n","import PropTypes from 'prop-types';\n\nconst ImportUrlMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return <DropdownMenuItem onClick={onClick}>{children || 'Import URL'}</DropdownMenuItem>;\n};\n\nImportUrlMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nImportUrlMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ImportUrlMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ImportFileMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return <DropdownMenuItem onClick={onClick}>{children || 'Import File'}</DropdownMenuItem>;\n};\n\nImportFileMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nImportFileMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ImportFileMenuItem;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_prop_types_adfe8e31__[\"default\"] });","import { useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst LoadExampleNestedMenuHandler = forwardRef((props, ref) => {\n const { editorActions, editorContentFixturesSelectors } = props;\n\n useImperativeHandle(ref, () => ({\n loadOpenAP31PetstoreFixture() {\n const content = editorContentFixturesSelectors.selectOpenAPI310PetstoreYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadOpenAP30PetstoreFixture() {\n const content = editorContentFixturesSelectors.selectOpenAPI303PetstoreYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadOpenAP20PetstoreFixture() {\n const content = editorContentFixturesSelectors.selectOpenAPI20PetstoreYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadAsyncAPI26PetstoreFixture() {\n const content = editorContentFixturesSelectors.selectAsyncAPI260PetstoreYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadAsyncAPI26StreetlightsFixture() {\n const content = editorContentFixturesSelectors.selectAsyncAPI260StreetlightsYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadAPIDesignSystemsFixture() {\n const content = editorContentFixturesSelectors.selectAPIDesignSystemsYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n }));\n\n return null;\n});\n\nLoadExampleNestedMenuHandler.propTypes = {\n editorActions: PropTypes.shape({\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n editorContentFixturesSelectors: PropTypes.shape({\n selectOpenAPI310PetstoreYAML: PropTypes.func.isRequired,\n selectOpenAPI303PetstoreYAML: PropTypes.func.isRequired,\n selectOpenAPI20PetstoreYAML: PropTypes.func.isRequired,\n selectAsyncAPI260PetstoreYAML: PropTypes.func.isRequired,\n selectAsyncAPI260StreetlightsYAML: PropTypes.func.isRequired,\n selectAPIDesignSystemsYAML: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default LoadExampleNestedMenuHandler;\n","import { useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport LoadExampleNestedMenuHandler from './LoadExampleNestedMenuHandler.jsx';\n\nconst LoadExampleNestedMenu = (props) => {\n const { getComponent } = props;\n const loadExampleNestedMenuHandler = useRef(null);\n const DropDownMenuNested = getComponent('DropdownMenuNested');\n const DropdownMenuItemDivider = getComponent('DropdownMenuItemDivider');\n const OpenAPI31PetstoreMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuOpenAPI31PetstoreMenuItem',\n true\n );\n const OpenAPI30PetstoreMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuOpenAPI30PetstoreMenuItem',\n true\n );\n const OpenAPI20PetstoreMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuOpenAPI20PetstoreMenuItem',\n true\n );\n const AsyncAPI26PetstoreMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuAsyncAPI26PetstoreMenuItem',\n true\n );\n const AsyncAPI26StreetlightsMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuAsyncAPI26StreetlightsMenuItem',\n true\n );\n const APIDesignSystemsMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuAPIDesignSystemsMenuItem',\n true\n );\n\n const handleOpenAPI31PetstoreClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadOpenAP31PetstoreFixture(event);\n }, []);\n const handleOpenAPI30PetstoreClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadOpenAP30PetstoreFixture(event);\n }, []);\n const handleOpenAPI20PetstoreClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadOpenAP20PetstoreFixture(event);\n }, []);\n const handleAsyncAPI26PetstoreClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadAsyncAPI26PetstoreFixture(event);\n }, []);\n const handleAsyncAPI26StreetlightsClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadAsyncAPI26StreetlightsFixture(event);\n }, []);\n const handleAPIDesignSystemsClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadAPIDesignSystemsFixture(event);\n }, []);\n\n return (\n <>\n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n <LoadExampleNestedMenuHandler {...props} ref={loadExampleNestedMenuHandler} />\n <DropDownMenuNested label=\"Load Example\">\n <OpenAPI31PetstoreMenuItem onClick={handleOpenAPI31PetstoreClick} />\n <OpenAPI30PetstoreMenuItem onClick={handleOpenAPI30PetstoreClick} />\n <OpenAPI20PetstoreMenuItem onClick={handleOpenAPI20PetstoreClick} />\n <DropdownMenuItemDivider />\n <AsyncAPI26PetstoreMenuItem onClick={handleAsyncAPI26PetstoreClick} />\n <AsyncAPI26StreetlightsMenuItem onClick={handleAsyncAPI26StreetlightsClick} />\n <DropdownMenuItemDivider />\n <APIDesignSystemsMenuItem onClick={handleAPIDesignSystemsClick} />\n </DropDownMenuNested>\n </>\n );\n};\n\nLoadExampleNestedMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default LoadExampleNestedMenu;\n","import PropTypes from 'prop-types';\n\nconst OpenAPI31PetstoreMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'OpenAPI 3.1 Petstore'}</DropdownMenuItem>\n );\n};\n\nOpenAPI31PetstoreMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nOpenAPI31PetstoreMenuItem.defaultProps = {\n children: null,\n};\n\nexport default OpenAPI31PetstoreMenuItem;\n","import PropTypes from 'prop-types';\n\nconst OpenAPI30PetstoreMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'OpenAPI 3.0 Petstore'}</DropdownMenuItem>\n );\n};\n\nOpenAPI30PetstoreMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nOpenAPI30PetstoreMenuItem.defaultProps = {\n children: null,\n};\n\nexport default OpenAPI30PetstoreMenuItem;\n","import PropTypes from 'prop-types';\n\nconst OpenAPI20PetstoreMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'OpenAPI 2.0 Petstore'}</DropdownMenuItem>\n );\n};\n\nOpenAPI20PetstoreMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nOpenAPI20PetstoreMenuItem.defaultProps = {\n children: null,\n};\n\nexport default OpenAPI20PetstoreMenuItem;\n","import PropTypes from 'prop-types';\n\nconst AsyncAPI26PetstoreMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'AsyncAPI 2.6 Petstore'}</DropdownMenuItem>\n );\n};\n\nAsyncAPI26PetstoreMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nAsyncAPI26PetstoreMenuItem.defaultProps = {\n children: null,\n};\n\nexport default AsyncAPI26PetstoreMenuItem;\n","import PropTypes from 'prop-types';\n\nconst AsyncAPI26StreetlightsMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'AsyncAPI 2.6 Streetlights'}</DropdownMenuItem>\n );\n};\n\nAsyncAPI26StreetlightsMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nAsyncAPI26StreetlightsMenuItem.defaultProps = {\n children: null,\n};\n\nexport default AsyncAPI26StreetlightsMenuItem;\n","import PropTypes from 'prop-types';\n\nconst APIDesignSystemsMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return <DropdownMenuItem onClick={onClick}>{children || 'API Design Systems'}</DropdownMenuItem>;\n};\n\nAPIDesignSystemsMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nAPIDesignSystemsMenuItem.defaultProps = {\n children: null,\n};\n\nexport default APIDesignSystemsMenuItem;\n","import PropTypes from 'prop-types';\n\nconst SaveAsMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n // eslint-disable-next-line no-nested-ternary\n const itemName = editorSelectors.selectIsContentFormatJSON()\n ? 'Save (as JSON)'\n : editorSelectors.selectIsContentFormatYAML()\n ? 'Save (as YAML)'\n : 'Save';\n\n return <DropdownMenuItem onClick={onClick}>{children || itemName}</DropdownMenuItem>;\n};\n\nSaveAsMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nSaveAsMenuItem.defaultProps = {\n children: null,\n};\n\nexport default SaveAsMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertAndSaveAsJSONMenuItem = ({ getComponent, editorSelectors, children, onClick }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentFormatYAML = editorSelectors.selectIsContentFormatYAML();\n\n return isContentFormatYAML ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Convert and Save as JSON'}</DropdownMenuItem>\n ) : null;\n};\n\nConvertAndSaveAsJSONMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertAndSaveAsJSONMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertAndSaveAsJSONMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertAndSaveAsJSONMenuItem = ({ getComponent, editorSelectors, children, onClick }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentFormatJSON = editorSelectors.selectIsContentFormatJSON();\n\n return isContentFormatJSON ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Convert and Save as YAML'}</DropdownMenuItem>\n ) : null;\n};\n\nConvertAndSaveAsJSONMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertAndSaveAsJSONMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertAndSaveAsJSONMenuItem;\n","import PropTypes from 'prop-types';\n\nconst DownloadResolvedJSONMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentTypeOpenAPI = editorSelectors.selectIsContentTypeOpenAPI();\n const isContentTypeAsyncAPI = editorSelectors.selectIsContentTypeAsyncAPI();\n const isContentFormatJSON = editorSelectors.selectIsContentFormatJSON();\n const isContentFormatYAML = editorSelectors.selectIsContentFormatYAML();\n\n return (isContentTypeOpenAPI || isContentTypeAsyncAPI) &&\n (isContentFormatJSON || isContentFormatYAML) ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Download Resolved JSON'}</DropdownMenuItem>\n ) : null;\n};\n\nDownloadResolvedJSONMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeOpenAPI: PropTypes.func.isRequired,\n selectIsContentTypeAsyncAPI: PropTypes.func.isRequired,\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nDownloadResolvedJSONMenuItem.defaultProps = {\n children: null,\n};\n\nexport default DownloadResolvedJSONMenuItem;\n","import PropTypes from 'prop-types';\n\nconst DownloadResolvedYAMLMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentTypeOpenAPI = editorSelectors.selectIsContentTypeOpenAPI();\n const isContentTypeAsyncAPI = editorSelectors.selectIsContentTypeAsyncAPI();\n const isContentFormatJSON = editorSelectors.selectIsContentFormatJSON();\n const isContentFormatYAML = editorSelectors.selectIsContentFormatYAML();\n\n return (isContentTypeOpenAPI || isContentTypeAsyncAPI) &&\n (isContentFormatJSON || isContentFormatYAML) ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Download Resolved YAML'}</DropdownMenuItem>\n ) : null;\n};\n\nDownloadResolvedYAMLMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeOpenAPI: PropTypes.func.isRequired,\n selectIsContentTypeAsyncAPI: PropTypes.func.isRequired,\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nDownloadResolvedYAMLMenuItem.defaultProps = {\n children: null,\n};\n\nexport default DownloadResolvedYAMLMenuItem;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst CovertToJSONMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convertToJSON() {\n const content = editorSelectors.selectContent();\n\n const fsa = await editorActions.convertContentToJSON(content);\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n editorActions.setContent(fsa.payload, 'conversion');\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nCovertToJSONMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameWithExtensionFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertContentToJSON: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default CovertToJSONMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst CovertToYAMLMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convertToYAML() {\n const content = editorSelectors.selectContent();\n\n const fsa = await editorActions.convertContentToYAML(content);\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n editorActions.setContent(fsa.payload, 'conversion');\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nCovertToYAMLMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameWithExtensionFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertContentToYAML: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default CovertToYAMLMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst CovertToOpenAPI30xMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convert() {\n const content = editorSelectors.selectContent();\n const contentType = editorSelectors.selectIsContentFormatJSON()\n ? 'application/json'\n : 'application/yaml';\n\n const fsa = await editorActions.convertOpenAPI20ToOpenAPI30x({\n openAPI2Content: content,\n contentType,\n });\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n editorActions.setContent(fsa.payload, 'conversion');\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nCovertToOpenAPI30xMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectContentType: PropTypes.func.isRequired,\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n selectInferFileNameWithExtensionFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertOpenAPI20ToOpenAPI30x: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default CovertToOpenAPI30xMenuItemHandler;\n","import { useImperativeHandle, useRef, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport ConvertToJSONMenuItemHandler from './items/ConvertToJSONMenuItemHandler.jsx';\nimport ConvertToYAMLMenuItemHandler from './items/ConvertToYAMLMenuItemHandler.jsx';\nimport CovertToOpenAPI30xMenuItemHandler from './items/ConvertToOpenAPI30xMenuItemHandler.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst EditMenuHandler = forwardRef((props, ref) => {\n const { editorActions } = props;\n const convertToJSONMenuItemHandler = useRef(null);\n const convertToYAMLMenuItemHandler = useRef(null);\n const convertToOpenAPI30xMenuItemHandler = useRef(null);\n\n useImperativeHandle(ref, () => ({\n clear() {\n editorActions.clearContent();\n },\n async convertToJSON() {\n await convertToJSONMenuItemHandler.current.convertToJSON();\n },\n async convertToYAML() {\n await convertToYAMLMenuItemHandler.current.convertToYAML();\n },\n async convertOpenAPI20ToOpenAPI30xClick() {\n await convertToOpenAPI30xMenuItemHandler.current.convert();\n },\n }));\n\n return (\n <>\n <ConvertToJSONMenuItemHandler ref={convertToJSONMenuItemHandler} {...props} />\n <ConvertToYAMLMenuItemHandler ref={convertToYAMLMenuItemHandler} {...props} />\n <CovertToOpenAPI30xMenuItemHandler ref={convertToOpenAPI30xMenuItemHandler} {...props} />\n </>\n );\n});\n\nEditMenuHandler.propTypes = {\n editorActions: PropTypes.shape({\n clearContent: PropTypes.func.isRequired,\n convertContentToYAML: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n editorContentFixturesSelectors: PropTypes.shape({}).isRequired,\n};\n\nexport default EditMenuHandler;\n","import { useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport EditMenuHandler from './EditMenuHandler.jsx';\n\nconst EditMenu = (props) => {\n const { getComponent } = props;\n const DropdownMenu = getComponent('DropdownMenu');\n const ClearMenuItem = getComponent('TopBarEditMenuClearMenuItem', true);\n const ConvertToJSONMenuItem = getComponent('TopBarEditMenuConvertToJSONMenuItem', true);\n const ConvertToYAMLMenuItem = getComponent('TopBarEditMenuConvertToYAMLMenuItem', true);\n const ConvertToOpenAPI30xMenuItem = getComponent(\n 'TopBarEditMenuConvertToOpenAPI30xMenuItem',\n true\n );\n const editMenuHandler = useRef(null);\n\n const handleClearClick = useCallback(() => {\n editMenuHandler.current.clear();\n }, []);\n const handleConvertToJSONClick = useCallback(async () => {\n await editMenuHandler.current.convertToJSON();\n }, []);\n const handleConvertToYAMLClick = useCallback(async () => {\n await editMenuHandler.current.convertToYAML();\n }, []);\n const handleConvertOpenAPI20ToOpenAPI30xClick = useCallback(async () => {\n await editMenuHandler.current.convertOpenAPI20ToOpenAPI30xClick();\n }, []);\n\n return (\n <>\n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n <EditMenuHandler {...props} ref={editMenuHandler} />\n <DropdownMenu label=\"Edit\">\n <ClearMenuItem onClick={handleClearClick} />\n <ConvertToJSONMenuItem onClick={handleConvertToJSONClick} />\n <ConvertToYAMLMenuItem onClick={handleConvertToYAMLClick} />\n <ConvertToOpenAPI30xMenuItem onClick={handleConvertOpenAPI20ToOpenAPI30xClick} />\n </DropdownMenu>\n </>\n );\n};\n\nEditMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default EditMenu;\n","import PropTypes from 'prop-types';\n\nconst ClearMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return <DropdownMenuItem onClick={onClick}>{children || 'Clear'}</DropdownMenuItem>;\n};\n\nClearMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nClearMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ClearMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertToJSONMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const DropdownMenuItemDivider = getComponent('DropdownMenuItemDivider');\n const isContentFormatYAML = editorSelectors.selectIsContentFormatYAML();\n\n return isContentFormatYAML ? (\n <>\n <DropdownMenuItemDivider />\n <DropdownMenuItem onClick={onClick}>{children || 'Convert to JSON'}</DropdownMenuItem>\n </>\n ) : null;\n};\n\nConvertToJSONMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertToJSONMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertToJSONMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertToYAMLMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const DropdownMenuItemDivider = getComponent('DropdownMenuItemDivider');\n const isContentFormatJSON = editorSelectors.selectIsContentFormatJSON();\n\n return isContentFormatJSON ? (\n <>\n <DropdownMenuItemDivider />\n <DropdownMenuItem onClick={onClick}>{children || 'Convert to YAML'}</DropdownMenuItem>\n </>\n ) : null;\n};\n\nConvertToYAMLMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertToYAMLMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertToYAMLMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertToOpenAPI30xMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentTypeOpenAPI20 = editorSelectors.selectIsContentTypeOpenAPI20();\n\n return isContentTypeOpenAPI20 ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Convert to OpenAPI 3.0.x'}</DropdownMenuItem>\n ) : null;\n};\n\nConvertToOpenAPI30xMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertToOpenAPI30xMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertToOpenAPI30xMenuItem;\n","import PropTypes from 'prop-types';\n\nconst GenerateMenu = ({ getComponent, items, label, onMenuItemClick }) => {\n const DropdownMenu = getComponent('DropdownMenu');\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n const handleMenuClick = (item) => (event) => {\n onMenuItemClick(event, item);\n };\n\n return (\n <DropdownMenu label={label} isLong>\n {items.map((item) => (\n <DropdownMenuItem key={item} onClick={handleMenuClick(item)}>\n {item}\n </DropdownMenuItem>\n ))}\n </DropdownMenu>\n );\n};\n\nGenerateMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n items: PropTypes.arrayOf(PropTypes.string).isRequired,\n label: PropTypes.string.isRequired,\n onMenuItemClick: PropTypes.func.isRequired,\n};\nexport default GenerateMenu;\n","import React, { useRef, useState, useCallback } from 'react';\nimport PropTypes from 'prop-types';\n\nimport GenerateMenu from './GenerateMenu.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst OpenAPI3GenerateServerMenu = (props) => {\n const { getComponent, editorSelectors, editorTopBarSelectors, editorTopBarActions } = props;\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const isContentTypeOpenAPI30x = editorSelectors.selectIsContentTypeOpenAPI30x();\n const isContentTYpeOpenAPI31x = editorSelectors.selectIsContentTypeOpenAPI31x();\n const serverList = editorTopBarSelectors.selectOpenAPI3GeneratorServerList();\n const canShow = (isContentTypeOpenAPI30x || isContentTYpeOpenAPI31x) && serverList !== null;\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = useCallback(() => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n }, []);\n\n const handleMenuItemClick = useCallback(\n async (event, framework) => {\n const content = editorSelectors.selectContent();\n const fsa = await editorTopBarActions.generateServerCodeFromOpenAPI3({ content, framework });\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n [editorSelectors, editorTopBarActions]\n );\n\n return canShow ? (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>{' '}\n <GenerateMenu\n label=\"Generate Server\"\n items={serverList}\n onMenuItemClick={handleMenuItemClick}\n {...props}\n />\n </>\n ) : null;\n};\n\nOpenAPI3GenerateServerMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI30x: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI31x: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarSelectors: PropTypes.shape({\n selectOpenAPI3GeneratorServerList: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarActions: PropTypes.shape({\n generateServerCodeFromOpenAPI3: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default OpenAPI3GenerateServerMenu;\n","import React, { useCallback, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport GenerateMenu from './GenerateMenu.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst OpenAPI3GenerateClientMenu = (props) => {\n const { getComponent, editorSelectors, editorTopBarSelectors, editorTopBarActions } = props;\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const isContentTypeOpenAPI30x = editorSelectors.selectIsContentTypeOpenAPI30x();\n const isContentTYpeOpenAPI31x = editorSelectors.selectIsContentTypeOpenAPI31x();\n const clientList = editorTopBarSelectors.selectOpenAPI3GeneratorClientList();\n const canShow = (isContentTypeOpenAPI30x || isContentTYpeOpenAPI31x) && clientList !== null;\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = useCallback(() => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n }, []);\n\n const handleMenuItemClick = useCallback(\n async (event, language) => {\n const content = editorSelectors.selectContent();\n const fsa = await editorTopBarActions.generateClientCodeFromOpenAPI3({ content, language });\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n [editorSelectors, editorTopBarActions]\n );\n\n return canShow ? (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n <GenerateMenu\n label=\"Generate Client\"\n items={clientList}\n onMenuItemClick={handleMenuItemClick}\n {...props}\n />\n </>\n ) : null;\n};\n\nOpenAPI3GenerateClientMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI30x: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI31x: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarSelectors: PropTypes.shape({\n selectOpenAPI3GeneratorClientList: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarActions: PropTypes.shape({\n generateClientCodeFromOpenAPI3: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default OpenAPI3GenerateClientMenu;\n","import React, { useCallback, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport GenerateMenu from './GenerateMenu.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst OpenAPI2GenerateServerMenu = (props) => {\n const { editorTopBarActions, editorSelectors, editorTopBarSelectors, getComponent } = props;\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const isContentTYpeOpenAPI20 = editorSelectors.selectIsContentTypeOpenAPI20();\n const serverList = editorTopBarSelectors.selectOpenAPI2GeneratorServerList();\n const canShow = isContentTYpeOpenAPI20 && serverList !== null;\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = useCallback(() => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n }, []);\n\n const handleMenuItemClick = useCallback(\n async (event, framework) => {\n const content = editorSelectors.selectContent();\n const fsa = await editorTopBarActions.generateServerCodeFromOpenAPI20({ content, framework });\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n [editorSelectors, editorTopBarActions]\n );\n\n return canShow ? (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n <GenerateMenu\n label=\"Generate Server\"\n items={serverList}\n onMenuItemClick={handleMenuItemClick}\n {...props}\n />\n </>\n ) : null;\n};\n\nOpenAPI2GenerateServerMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarSelectors: PropTypes.shape({\n selectOpenAPI2GeneratorServerList: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarActions: PropTypes.shape({\n generateServerCodeFromOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default OpenAPI2GenerateServerMenu;\n","import React, { useCallback, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport GenerateMenu from './GenerateMenu.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst OpenAPI2GenerateClientMenu = (props) => {\n const { getComponent, editorSelectors, editorTopBarSelectors, editorTopBarActions } = props;\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const isContentTYpeOpenAPI20 = editorSelectors.selectIsContentTypeOpenAPI20();\n const clientList = editorTopBarSelectors.selectOpenAPI2GeneratorClientList();\n const canShow = isContentTYpeOpenAPI20 && clientList !== null;\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = useCallback(() => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n }, []);\n\n const handleMenuItemClick = useCallback(\n async (event, language) => {\n const content = editorSelectors.selectContent();\n const fsa = await editorTopBarActions.generateClientCodeFromOpenAPI20({ content, language });\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n [editorSelectors, editorTopBarActions]\n );\n\n return canShow ? (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n <GenerateMenu\n label=\"Generate Client\"\n items={clientList}\n onMenuItemClick={handleMenuItemClick}\n {...props}\n />\n </>\n ) : null;\n};\n\nOpenAPI2GenerateClientMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarSelectors: PropTypes.shape({\n selectOpenAPI2GeneratorClientList: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarActions: PropTypes.shape({\n generateClientCodeFromOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default OpenAPI2GenerateClientMenu;\n","import PropTypes from 'prop-types';\n\nconst AboutMenu = ({ getComponent }) => {\n const DropdownMenu = getComponent('DropdownMenu');\n const Link = getComponent('Link');\n\n return (\n <DropdownMenu label=\"About\">\n <div>\n <li className=\"dropdown-item\">\n <Link href=\"https://swagger.io/tools/swagger-editor/\" target=\"_blank\">\n About Swagger Editor\n </Link>\n </li>\n </div>\n <div>\n <li className=\"dropdown-item\">\n <Link\n href=\"https://swagger.io/docs/open-source-tools/swagger-editor-next/\"\n target=\"_blank\"\n >\n View Docs\n </Link>\n </li>\n </div>\n <div>\n <li className=\"dropdown-item\">\n <Link href=\"https://github.com/swagger-api/swagger-editor/tree/next\" target=\"_blank\">\n View on GitHub\n </Link>\n </li>\n </div>\n </DropdownMenu>\n );\n};\n\nAboutMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default AboutMenu;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_short_unique_id_298b54bb__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_axios__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"sanitizeUrl\"]: () => __WEBPACK_EXTERNAL_MODULE__braintree_sanitize_url_2340607f__.sanitizeUrl });","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport { sanitizeUrl } from '@braintree/sanitize-url';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_IMPORT_URL_STARTED = 'editor_import_url_started';\nexport const EDITOR_IMPORT_URL_SUCCESS = 'editor_import_url_success';\nexport const EDITOR_IMPORT_URL_FAILURE = 'editor_import_url_failure';\n\n/**\n * Action creators.\n */\n\nexport const importUrlStarted = ({ url, requestId }) => ({\n type: EDITOR_IMPORT_URL_STARTED,\n payload: url,\n meta: {\n requestId,\n },\n});\n\nexport const importUrlSuccess = ({ definition, requestId }) => ({\n type: EDITOR_IMPORT_URL_SUCCESS,\n payload: definition,\n meta: { requestId },\n});\n\nexport const importUrlFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_IMPORT_URL_FAILURE,\n payload: error,\n error: true,\n meta: { url, errorMessage, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\nexport const importUrl = (url) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions } = system;\n const requestId = uid();\n const sanitizedUrl = sanitizeUrl(url);\n\n editorActions.importUrlStarted({ url: sanitizedUrl, requestId });\n\n if (sanitizedUrl === 'about:blank') {\n return editorActions.importUrlFailure({\n error: new Error('Invalid url provided'),\n url: sanitizedUrl,\n requestId,\n });\n }\n\n try {\n const response = await axios.get(sanitizedUrl);\n return editorActions.importUrlSuccess({\n definition: response.request.responseText,\n requestId,\n });\n } catch (error) {\n return editorActions.importUrlFailure({ error, url: sanitizedUrl, requestId });\n }\n };\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_js_file_download_bd23dbb6__[\"default\"] });","import fileDownload from 'js-file-download';\nimport ShortUniqueId from 'short-unique-id';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_DOWNLOAD_CONTENT_STARTED = 'editor_download_content_started';\nexport const EDITOR_DOWNLOAD_CONTENT_SUCCESS = 'editor_download_content_success';\nexport const EDITOR_DOWNLOAD_CONTENT_FAILURE = 'editor_download_content_failure';\n\n/**\n * Action creators.\n */\n\nexport const downloadContentStarted = ({ content, fileNameWithExtension, requestId }) => ({\n type: EDITOR_DOWNLOAD_CONTENT_STARTED,\n payload: content,\n meta: {\n requestId,\n fileNameWithExtension,\n },\n});\n\nexport const downloadContentSuccess = ({ fileNameWithExtension, content, requestId }) => ({\n type: EDITOR_DOWNLOAD_CONTENT_SUCCESS,\n payload: fileNameWithExtension,\n meta: { content, requestId },\n});\n\nexport const downloadContentFailure = ({ error, content, fileNameWithExtension, requestId }) => {\n const errorMessage = error.message || 'Unknown error while downloading editor content';\n\n return {\n type: EDITOR_DOWNLOAD_CONTENT_FAILURE,\n payload: error,\n error: true,\n meta: { content, errorMessage, fileNameWithExtension, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const downloadContent = ({ content, fileNameWithExtension }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions } = system;\n const requestId = uid();\n\n editorActions.downloadContentStarted({ content, fileNameWithExtension, requestId });\n\n try {\n fileDownload(content, fileNameWithExtension);\n return editorActions.downloadContentSuccess({\n fileNameWithExtension,\n content,\n requestId,\n });\n } catch (error) {\n return editorActions.downloadContentFailure({\n error,\n content,\n fileNameWithExtension,\n requestId,\n });\n }\n };\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_js_yaml_78384032__[\"default\"] });","import YAML from 'js-yaml';\nimport ShortUniqueId from 'short-unique-id';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_CONVERT_CONTENT_TO_JSON_STARTED = 'editor_convert_content_to_json_started';\nexport const EDITOR_CONVERT_CONTENT_TO_JSON_SUCCESS = 'editor_convert_content_to_json_success';\nexport const EDITOR_CONVERT_CONTENT_TO_JSON_FAILURE = 'editor_convert_content_to_json_failure';\n\n/**\n * Action creators.\n */\n\nexport const convertContentToJSONStarted = ({ content, requestId }) => ({\n type: EDITOR_CONVERT_CONTENT_TO_JSON_STARTED,\n payload: content,\n meta: {\n requestId,\n },\n});\n\nexport const convertContentToJSONSuccess = ({ contentJSON, content, requestId }) => ({\n type: EDITOR_CONVERT_CONTENT_TO_JSON_SUCCESS,\n payload: contentJSON,\n meta: { content, requestId },\n});\n\nexport const convertContentToJSONFailure = ({ error, content, requestId }) => {\n const errorMessage = error.message || 'Unknown error while converting editor content to JSON';\n\n return {\n type: EDITOR_CONVERT_CONTENT_TO_JSON_FAILURE,\n payload: error,\n error: true,\n meta: { content, errorMessage, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const convertContentToJSON = (content) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions } = system;\n const requestId = uid();\n\n editorActions.convertContentToJSONStarted({ content, requestId });\n\n try {\n const contentObject = YAML.load(content);\n const contentJSONString = JSON.stringify(contentObject, null, 2);\n\n return editorActions.convertContentToJSONSuccess({\n contentJSON: contentJSONString,\n content,\n requestId,\n });\n } catch (error) {\n return editorActions.convertContentToJSONFailure({ error, content, requestId });\n }\n };\n};\n","import YAML from 'js-yaml';\nimport ShortUniqueId from 'short-unique-id';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_CONVERT_CONTENT_TO_YAML_STARTED = 'editor_convert_content_to_yaml_started';\nexport const EDITOR_CONVERT_CONTENT_TO_YAML_SUCCESS = 'editor_convert_content_to_yaml_success';\nexport const EDITOR_CONVERT_CONTENT_TO_YAML_FAILURE = 'editor_convert_content_to_yaml_failure';\n\n/**\n * Action creators.\n */\n\nexport const convertContentToYAMLStarted = ({ content, requestId }) => ({\n type: EDITOR_CONVERT_CONTENT_TO_YAML_STARTED,\n payload: content,\n meta: {\n requestId,\n },\n});\n\nexport const convertContentToYAMLSuccess = ({ contentYAML, content, requestId }) => ({\n type: EDITOR_CONVERT_CONTENT_TO_YAML_SUCCESS,\n payload: contentYAML,\n meta: { content, requestId },\n});\n\nexport const convertContentToYAMLFailure = ({ error, content, requestId }) => {\n const errorMessage = error.message || 'Unknown error while converting editor content to JSON';\n\n return {\n type: EDITOR_CONVERT_CONTENT_TO_YAML_FAILURE,\n payload: error,\n error: true,\n meta: { content, errorMessage, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const convertContentToYAML = (content) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions } = system;\n const requestId = uid();\n\n editorActions.convertContentToYAMLStarted({ content, requestId });\n\n try {\n const contentObject = JSON.parse(content);\n const contentYAMLString = YAML.dump(contentObject);\n\n return editorActions.convertContentToYAMLSuccess({\n contentYAML: contentYAMLString,\n content,\n requestId,\n });\n } catch (error) {\n return editorActions.convertContentToYAMLFailure({ error, content, requestId });\n }\n };\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = __WEBPACK_EXTERNAL_MODULE_monaco_editor_23647bbd__;","import ShortUniqueId from 'short-unique-id';\nimport * as monaco from 'monaco-editor';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_DEREFERENCE_CONTENT_STARTED = 'editor_dereference_content_started';\nexport const EDITOR_DEREFERENCE_CONTENT_SUCCESS = 'editor_dereference_content_success';\nexport const EDITOR_DEREFERENCE_CONTENT_FAILURE = 'editor_dereference_content_failure';\n\n/**\n * Action creators.\n */\n\nexport const dereferenceContentStarted = ({ content, baseURI, requestId }) => ({\n type: EDITOR_DEREFERENCE_CONTENT_STARTED,\n payload: content,\n meta: {\n baseURI,\n requestId,\n },\n});\n\nexport const dereferenceContentSuccess = ({\n contentDereferenced,\n content,\n baseURI,\n requestId,\n}) => ({\n type: EDITOR_DEREFERENCE_CONTENT_SUCCESS,\n payload: contentDereferenced,\n meta: { content, baseURI, requestId },\n});\n\nexport const dereferenceContentFailure = ({ error, content, baseURI, requestId }) => {\n const errorMessage = error.message || 'Unknown error while dereferencing editor content';\n\n return {\n type: EDITOR_DEREFERENCE_CONTENT_FAILURE,\n payload: error,\n error: true,\n meta: { content, errorMessage, baseURI, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const dereferenceContent = ({ content, baseURI }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions, fn } = system;\n const requestId = uid();\n\n editorActions.dereferenceContentStarted({ content, baseURI, requestId });\n\n try {\n const model = monaco.editor.getModels().find((m) => m.getValue() === content);\n const worker = await fn.getApiDOMWorker()(model.uri);\n const contentDereferenced = await worker.doDeref(model.uri.toString(), {\n baseURI: baseURI ?? globalThis.location.href,\n });\n\n return editorActions.dereferenceContentSuccess({\n contentDereferenced,\n content,\n baseURI,\n requestId,\n });\n } catch (error) {\n return editorActions.dereferenceContentFailure({ error, content, baseURI, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_STARTED =\n 'editor_convert_openapi_2_to_openapi_3_started';\nexport const EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_SUCCESS =\n 'editor_convert_openapi_2_to_openapi_3_success';\nexport const EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_FAILURE =\n 'editor_convert_openapi_2_to_openapi_3_failure';\n\n/**\n * Action creators.\n */\n\nexport const convertOpenAPI20ToOpenAPI30xStarted = ({ openAPI2Content, requestId }) => ({\n type: EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_STARTED,\n payload: openAPI2Content,\n meta: {\n requestId,\n },\n});\n\nexport const convertOpenAPI20ToOpenAPI30xSuccess = ({\n openAPI30xContent,\n openAPI2Content,\n requestId,\n}) => ({\n type: EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_SUCCESS,\n payload: openAPI30xContent,\n meta: { openAPI2Content, requestId },\n});\n\nexport const convertOpenAPI20ToOpenAPI30xFailure = ({ error, openAPI2Content, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_FAILURE,\n payload: error,\n error: true,\n meta: { openAPI2Content, errorMessage, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const convertOpenAPI20ToOpenAPI30x = ({ openAPI2Content, contentType }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions, editorSelectors } = system;\n const { swagger2ConverterUrl: openAPI20ConverterURL } = system.getConfigs();\n const converterURL = openAPI20ConverterURL ?? editorSelectors.selectOpenAPI20ConverterURL();\n const requestId = uid();\n\n editorActions.convertOpenAPI20ToOpenAPI30xStarted({ openAPI2Content, requestId });\n\n try {\n const response = await axios.post(converterURL, openAPI2Content, {\n headers: {\n 'Content-Type': contentType,\n Accept: contentType,\n },\n });\n\n const openAPI30xContent =\n contentType === 'application/json'\n ? JSON.stringify(response.data, null, 2) // converter service returns ugly JSON string\n : response.request.responseText;\n\n return editorActions.convertOpenAPI20ToOpenAPI30xSuccess({\n openAPI30xContent,\n openAPI2Content,\n requestId,\n });\n } catch (error) {\n return editorActions.convertOpenAPI20ToOpenAPI30xFailure({\n error,\n openAPI2Content,\n requestId,\n });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED =\n 'editor_top_bar_fetch_openapi3_generator_server_list_started';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS =\n 'editor_top_bar_fetch_openapi3_generator_server_list_success';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE =\n 'editor_top_bar_fetch_openapi3_generator_server_list_failure';\n\n/**\n * Action creators.\n */\n\nexport const fetchOpenAPI3GeneratorServerListStarted = ({ url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED,\n meta: {\n url,\n requestId,\n },\n});\n\nexport const fetchOpenAPI3GeneratorServerListSuccess = ({ serverList, url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS,\n payload: serverList,\n meta: { url, requestId },\n});\n\nexport const fetchOpenAPI3GeneratorServerListFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, url, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const fetchOpenAPI3GeneratorServerList = () => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI3GeneratorServerListURL();\n\n editorTopBarActions.fetchOpenAPI3GeneratorServerListStarted({ url, requestId });\n\n try {\n const response = await axios.get(url);\n return editorTopBarActions.fetchOpenAPI3GeneratorServerListSuccess({\n serverList: response.data,\n url,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.fetchOpenAPI3GeneratorServerListFailure({ error, url, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED =\n 'editor_top_bar_fetch_openapi3_generator_client_list_started';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS =\n 'editor_top_bar_fetch_openapi3_generator_client_list_success';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE =\n 'editor_top_bar_fetch_openapi3_generator_client_list_failure';\n\n/**\n * Action creators.\n */\n\nexport const fetchOpenAPI3GeneratorClientListStarted = ({ url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED,\n meta: {\n url,\n requestId,\n },\n});\n\nexport const fetchOpenAPI3GeneratorClientListSuccess = ({ clientList, url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS,\n payload: clientList,\n meta: { url, requestId },\n});\n\nexport const fetchOpenAPI3GeneratorClientListFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, url, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const fetchOpenAPI3GeneratorClientList = () => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI3GeneratorClientListURL();\n\n editorTopBarActions.fetchOpenAPI3GeneratorClientListStarted({ url, requestId });\n\n try {\n const response = await axios.get(url);\n return editorTopBarActions.fetchOpenAPI3GeneratorClientListSuccess({\n clientList: response.data,\n url,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.fetchOpenAPI3GeneratorClientListFailure({ error, url, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED =\n 'editor_top_bar_fetch_openapi2_generator_server_list_started';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS =\n 'editor_top_bar_fetch_openapi2_generator_server_list_success';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE =\n 'editor_top_bar_fetch_openapi2_generator_server_list_failure';\n\n/**\n * Action creators.\n */\n\nexport const fetchOpenAPI2GeneratorServerListStarted = ({ url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED,\n meta: {\n url,\n requestId,\n },\n});\n\nexport const fetchOpenAPI2GeneratorServerListSuccess = ({ serverList, url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS,\n payload: serverList,\n meta: { url, requestId },\n});\n\nexport const fetchOpenAPI2GeneratorServerListFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, url, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const fetchOpenAPI2GeneratorServerList = () => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI2GeneratorServerListURL();\n\n editorTopBarActions.fetchOpenAPI2GeneratorServerListStarted({ url, requestId });\n\n try {\n const response = await axios.get(url);\n return editorTopBarActions.fetchOpenAPI2GeneratorServerListSuccess({\n serverList: response.data,\n url,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.fetchOpenAPI2GeneratorServerListFailure({ error, url, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED =\n 'editor_top_bar_fetch_openapi2_generator_client_list_started';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS =\n 'editor_top_bar_fetch_openapi2_generator_client_list_success';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE =\n 'editor_top_bar_fetch_openapi2_generator_client_list_failure';\n\n/**\n * Action creators.\n */\n\nexport const fetchOpenAPI2GeneratorClientListStarted = ({ url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED,\n meta: {\n url,\n requestId,\n },\n});\n\nexport const fetchOpenAPI2GeneratorClientListSuccess = ({ clientList, url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS,\n payload: clientList,\n meta: { url, requestId },\n});\n\nexport const fetchOpenAPI2GeneratorClientListFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, url, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const fetchOpenAPI2GeneratorClientList = () => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI2GeneratorClientListURL();\n\n editorTopBarActions.fetchOpenAPI2GeneratorClientListStarted({ url, requestId });\n\n try {\n const response = await axios.get(url);\n return editorTopBarActions.fetchOpenAPI2GeneratorClientListSuccess({\n clientList: response.data,\n url,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.fetchOpenAPI2GeneratorClientListFailure({ error, url, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport YAML from 'js-yaml';\nimport fileDownload from 'js-file-download';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_STARTED =\n 'editor_top_bar_generate_server_code_from_openapi3_started';\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_SUCCESS =\n 'editor_top_bar_generate_server_code_from_openapi3_success';\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_FAILURE =\n 'editor_top_bar_generate_server_code_from_openapi3_failure';\n\n/**\n * Action creators.\n */\n\nexport const generateServerCodeFromOpenAPI3Started = ({ content, framework, requestId }) => ({\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_STARTED,\n payload: content,\n meta: {\n framework,\n requestId,\n },\n});\n\nexport const generateServerCodeFromOpenAPI3Success = ({\n blob,\n content,\n framework,\n fileNameWithExtension,\n requestId,\n}) => ({\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_SUCCESS,\n payload: blob,\n meta: { content, framework, fileNameWithExtension, requestId },\n});\n\nexport const generateServerCodeFromOpenAPI3Failure = ({ error, content, framework, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, content, framework, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const generateServerCodeFromOpenAPI3 = ({ content, framework }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI3GenerateServerURL();\n const fileNameWithExtension = `${framework}-server-generated.zip`;\n\n editorTopBarActions.generateServerCodeFromOpenAPI3Started({ content, framework, requestId });\n\n try {\n const data = { spec: YAML.load(content), lang: framework, type: 'SERVER' };\n const response = await axios.post(url, data, {\n responseType: 'blob',\n });\n\n fileDownload(response.data, fileNameWithExtension);\n\n return editorTopBarActions.generateServerCodeFromOpenAPI3Success({\n blob: response.data,\n fileNameWithExtension,\n content,\n framework,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.generateServerCodeFromOpenAPI3Failure({\n error,\n content,\n framework,\n requestId,\n });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport YAML from 'js-yaml';\nimport fileDownload from 'js-file-download';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_STARTED =\n 'editor_top_bar_generate_client_code_from_openapi3_started';\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_SUCCESS =\n 'editor_top_bar_generate_client_code_from_openapi3_success';\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_FAILURE =\n 'editor_top_bar_generate_client_code_from_openapi3_failure';\n\n/**\n * Action creators.\n */\n\nexport const generateClientCodeFromOpenAPI3Started = ({ content, language, requestId }) => ({\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_STARTED,\n payload: content,\n meta: {\n language,\n requestId,\n },\n});\n\nexport const generateClientCodeFromOpenAPI3Success = ({\n blob,\n content,\n language,\n fileNameWithExtension,\n requestId,\n}) => ({\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_SUCCESS,\n payload: blob,\n meta: { content, language, fileNameWithExtension, requestId },\n});\n\nexport const generateClientCodeFromOpenAPI3Failure = ({ error, content, language, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, content, language, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const generateClientCodeFromOpenAPI3 = ({ content, language }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI3GenerateClientURL();\n const fileNameWithExtension = `${language}-client-generated.zip`;\n\n editorTopBarActions.generateClientCodeFromOpenAPI3Started({ content, language, requestId });\n\n try {\n const data = { spec: YAML.load(content), lang: language, type: 'CLIENT' };\n const response = await axios.post(url, data, {\n responseType: 'blob',\n });\n\n fileDownload(response.data, fileNameWithExtension);\n\n return editorTopBarActions.generateClientCodeFromOpenAPI3Success({\n blob: response.data,\n fileNameWithExtension,\n content,\n language,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.generateClientCodeFromOpenAPI3Failure({\n error,\n content,\n language,\n requestId,\n });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport YAML from 'js-yaml';\nimport fileDownload from 'js-file-download';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_STARTED =\n 'editor_top_bar_generate_server_code_from_openapi20_started';\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_SUCCESS =\n 'editor_top_bar_generate_server_code_from_openapi20_success';\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_FAILURE =\n 'editor_top_bar_generate_server_code_from_openapi20_failure';\n\n/**\n * Action creators.\n */\n\nexport const generateServerCodeFromOpenAPI20Started = ({ content, framework, requestId }) => ({\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_STARTED,\n payload: content,\n meta: {\n framework,\n requestId,\n },\n});\n\nexport const generateServerCodeFromOpenAPI20Success = ({\n blob,\n content,\n framework,\n fileNameWithExtension,\n requestId,\n}) => ({\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_SUCCESS,\n payload: blob,\n meta: { content, framework, fileNameWithExtension, requestId },\n});\n\nexport const generateServerCodeFromOpenAPI20Failure = ({\n error,\n content,\n framework,\n requestId,\n}) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, content, framework, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const generateServerCodeFromOpenAPI20 = ({ content, framework }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = `${editorTopBarSelectors.selectOpenAPI2GenerateServerURL()}/${framework}`;\n const fileNameWithExtension = `${framework}-server-generated.zip`;\n\n editorTopBarActions.generateServerCodeFromOpenAPI20Started({ content, framework, requestId });\n\n try {\n const data = { spec: YAML.load(content) };\n const {\n data: { link: downloadURL },\n } = await axios.post(url, data);\n const response = await axios.get(downloadURL, {\n responseType: 'blob',\n });\n\n fileDownload(response.data, fileNameWithExtension);\n\n return editorTopBarActions.generateServerCodeFromOpenAPI20Success({\n blob: response.data,\n fileNameWithExtension,\n content,\n framework,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.generateServerCodeFromOpenAPI20Failure({\n error,\n content,\n framework,\n requestId,\n });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport YAML from 'js-yaml';\nimport fileDownload from 'js-file-download';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_STARTED =\n 'editor_top_bar_generate_client_code_from_openapi20_started';\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_SUCCESS =\n 'editor_top_bar_generate_client_code_from_openapi20_success';\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_FAILURE =\n 'editor_top_bar_generate_client_code_from_openapi20_failure';\n\n/**\n * Action creators.\n */\n\nexport const generateClientCodeFromOpenAPI20Started = ({ content, language, requestId }) => ({\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_STARTED,\n payload: content,\n meta: {\n language,\n requestId,\n },\n});\n\nexport const generateClientCodeFromOpenAPI20Success = ({\n blob,\n content,\n language,\n fileNameWithExtension,\n requestId,\n}) => ({\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_SUCCESS,\n payload: blob,\n meta: { content, language, fileNameWithExtension, requestId },\n});\n\nexport const generateClientCodeFromOpenAPI20Failure = ({ error, content, language, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, content, language, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const generateClientCodeFromOpenAPI20 = ({ content, language }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = `${editorTopBarSelectors.selectOpenAPI2GenerateClientURL()}/${language}`;\n const fileNameWithExtension = `${language}-client-generated.zip`;\n\n editorTopBarActions.generateClientCodeFromOpenAPI20Started({ content, language, requestId });\n\n try {\n const data = { spec: YAML.load(content) };\n const {\n data: { link: downloadURL },\n } = await axios.post(url, data);\n const response = await axios.get(downloadURL, {\n responseType: 'blob',\n });\n\n fileDownload(response.data, fileNameWithExtension);\n\n return editorTopBarActions.generateClientCodeFromOpenAPI20Success({\n blob: response.data,\n fileNameWithExtension,\n content,\n language,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.generateClientCodeFromOpenAPI20Failure({\n error,\n content,\n language,\n requestId,\n });\n }\n };\n};\n","/**\n * Creates action wrapper that avoids double dispatch.\n *\n * @param wrapper\n * @returns {function(*, *): function(...[*]): (*)}\n */\nconst createSafeActionWrapper = (wrapper) => {\n let lastFSA = null; // Flux Standard Action(FSA): action objects emitted through redux\n\n return (origAction, system) =>\n (...args) => {\n const fsa = origAction(...args);\n\n if (fsa === lastFSA) {\n return fsa;\n }\n\n wrapper(origAction, system)(...args);\n\n lastFSA = fsa;\n\n return fsa;\n };\n};\n\nexport default createSafeActionWrapper;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"List\"]: () => __WEBPACK_EXTERNAL_MODULE_immutable__.List, [\"fromJS\"]: () => __WEBPACK_EXTERNAL_MODULE_immutable__.fromJS });","import { List } from 'immutable';\n\nimport {\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED,\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS,\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE,\n} from './actions/fetch-openapi3-generator-server-list.js';\nimport {\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED,\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS,\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE,\n} from './actions/fetch-openapi3-generator-client-list.js';\nimport {\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED,\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS,\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE,\n} from './actions/fetch-openapi2-generator-server-list.js';\nimport {\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED,\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS,\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE,\n} from './actions/fetch-openapi2-generator-client-list.js';\n\nexport const IDLE_STATUS = 'idle';\nexport const FETCHING_STATUS = 'fetching';\nexport const SUCCESS_STATUS = 'success';\nexport const FAILURE_STATUS = 'failure';\n\nexport const initialState = {\n openAPI3GeneratorServerList: null,\n openAPI3GeneratorServerListError: null,\n openAPI3GeneratorServerListStatus: IDLE_STATUS,\n openAPI3GeneratorServerListRequestId: null,\n\n openAPI3GeneratorClientList: null,\n openAPI3GeneratorClientListError: null,\n openAPI3GeneratorClientListStatus: IDLE_STATUS,\n openAPI3GeneratorClientListRequestId: null,\n\n openAPI2GeneratorServerList: null,\n openAPI2GeneratorServerListError: null,\n openAPI2GeneratorServerListStatus: IDLE_STATUS,\n openAPI2GeneratorServerListRequestId: null,\n\n openAPI2GeneratorClientList: null,\n openAPI2GeneratorClientListError: null,\n openAPI2GeneratorClientListStatus: IDLE_STATUS,\n openAPI2GeneratorClientListRequestId: null,\n};\n\n/**\n * Case reducers modeled as finite state machine.\n */\n\nconst fetchOpenAPI3GeneratorServerListStartedReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorServerListStatus') || IDLE_STATUS;\n\n if (status !== FETCHING_STATUS) {\n return state.merge({\n openAPI3GeneratorServerListStatus: FETCHING_STATUS,\n openAPI3GeneratorServerListRequestId: action.meta.requestId,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorServerListSuccessReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorServerListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI3GeneratorServerListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI3GeneratorServerListStatus: SUCCESS_STATUS,\n openAPI3GeneratorServerList: List.of(...action.payload),\n openAPI3GeneratorServerListError: null,\n openAPI3GeneratorServerListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorServerListFailureReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorServerListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI3GeneratorServerListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI3GeneratorServerListStatus: FAILURE_STATUS,\n openAPI3GeneratorServerList: null,\n openAPI3GeneratorServerListError: action.payload,\n openAPI3GeneratorServerListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorClientListStartedReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorClientListStatus') || IDLE_STATUS;\n\n if (status !== FETCHING_STATUS) {\n return state.merge({\n openAPI3GeneratorClientListStatus: FETCHING_STATUS,\n openAPI3GeneratorClientListRequestId: action.meta.requestId,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorClientListSuccessReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorClientListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI3GeneratorClientListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI3GeneratorClientListStatus: SUCCESS_STATUS,\n openAPI3GeneratorClientList: List.of(...action.payload),\n openAPI3GeneratorClientListError: null,\n openAPI3GeneratorClientListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorClientListFailureReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorClientListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI3GeneratorClientListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI3GeneratorClientListStatus: FAILURE_STATUS,\n openAPI3GeneratorClientList: null,\n openAPI3GeneratorClientListError: action.payload,\n openAPI3GeneratorClientListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorServerListStartedReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorServerListStatus') || IDLE_STATUS;\n\n if (status !== FETCHING_STATUS) {\n return state.merge({\n openAPI2GeneratorServerListStatus: FETCHING_STATUS,\n openAPI2GeneratorServerListRequestId: action.meta.requestId,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorServerListSuccessReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorServerListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI2GeneratorServerListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI2GeneratorServerListStatus: SUCCESS_STATUS,\n openAPI2GeneratorServerList: List.of(...action.payload),\n openAPI2GeneratorServerListError: null,\n openAPI2GeneratorServerListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorServerListFailureReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorServerListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI2GeneratorServerListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI2GeneratorServerListStatus: FAILURE_STATUS,\n openAPI2GeneratorServerList: null,\n openAPI2GeneratorServerListError: action.payload,\n openAPI2GeneratorServerListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorClientListStartedReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorClientListStatus') || IDLE_STATUS;\n\n if (status !== FETCHING_STATUS) {\n return state.merge({\n openAPI2GeneratorClientListStatus: FETCHING_STATUS,\n openAPI2GeneratorClientListRequestId: action.meta.requestId,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorClientListSuccessReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorClientListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI2GeneratorClientListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI2GeneratorClientListStatus: SUCCESS_STATUS,\n openAPI2GeneratorClientList: List.of(...action.payload),\n openAPI2GeneratorClientListError: null,\n openAPI2GeneratorClientListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorClientListFailureReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorClientListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI2GeneratorClientListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI2GeneratorClientListStatus: FAILURE_STATUS,\n openAPI2GeneratorClientList: null,\n openAPI2GeneratorClientListError: action.payload,\n openAPI2GeneratorClientListRequestId: null,\n });\n }\n\n return state;\n};\n\n/**\n * Root reducer for this plugin.\n */\n\nexport default {\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED]:\n fetchOpenAPI3GeneratorServerListStartedReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS]:\n fetchOpenAPI3GeneratorServerListSuccessReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE]:\n fetchOpenAPI3GeneratorServerListFailureReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED]:\n fetchOpenAPI3GeneratorClientListStartedReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS]:\n fetchOpenAPI3GeneratorClientListSuccessReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE]:\n fetchOpenAPI3GeneratorClientListFailureReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED]:\n fetchOpenAPI2GeneratorServerListStartedReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS]:\n fetchOpenAPI2GeneratorServerListSuccessReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE]:\n fetchOpenAPI2GeneratorServerListFailureReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED]:\n fetchOpenAPI2GeneratorClientListStartedReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS]:\n fetchOpenAPI2GeneratorClientListSuccessReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE]:\n fetchOpenAPI2GeneratorClientListFailureReducer,\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\nimport { IDLE_STATUS, FAILURE_STATUS } from './reducers.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const detectContentTypeSuccess = createSafeActionWrapper((oriAction, system) => () => {\n const { editorSelectors, editorTopBarSelectors, editorTopBarActions } = system;\n const triggerStatuses = [IDLE_STATUS, FAILURE_STATUS];\n\n if (\n triggerStatuses.includes(editorTopBarSelectors.selectOpenAPI3GeneratorServerListStatus()) &&\n (editorSelectors.selectIsContentTypeOpenAPI30x() ||\n editorSelectors.selectIsContentTypeOpenAPI31x())\n ) {\n editorTopBarActions.fetchOpenAPI3GeneratorServerList();\n }\n\n if (\n triggerStatuses.includes(editorTopBarSelectors.selectOpenAPI3GeneratorClientListStatus()) &&\n (editorSelectors.selectIsContentTypeOpenAPI30x() ||\n editorSelectors.selectIsContentTypeOpenAPI31x())\n ) {\n editorTopBarActions.fetchOpenAPI3GeneratorClientList();\n }\n\n if (\n triggerStatuses.includes(editorTopBarSelectors.selectOpenAPI2GeneratorServerListStatus()) &&\n editorSelectors.selectIsContentTypeOpenAPI20()\n ) {\n editorTopBarActions.fetchOpenAPI2GeneratorServerList();\n }\n\n if (\n triggerStatuses.includes(editorTopBarSelectors.selectOpenAPI2GeneratorClientListStatus()) &&\n editorSelectors.selectIsContentTypeOpenAPI20()\n ) {\n editorTopBarActions.fetchOpenAPI2GeneratorClientList();\n }\n});\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createSelector\"]: () => __WEBPACK_EXTERNAL_MODULE_reselect__.createSelector });","import { createSelector } from 'reselect';\n\nimport { SUCCESS_STATUS, IDLE_STATUS } from './reducers.js';\n\n/**\n * editor state plugin selectors.\n */\n\nexport const selectOpenAPI20ConverterURL = () => 'https://converter.swagger.io/api/convert';\n\n/**\n * editorTopBar state plugin selectors.\n */\n\nexport const selectEditorTopBarState = (state) => state;\n\nexport const selectOpenAPI3GeneratorServerListURL = () =>\n 'https://generator3.swagger.io/api/servers';\n\nexport const selectOpenAPI3GenerateServerURL = () => 'https://generator3.swagger.io/api/generate';\n\nexport const selectOpenAPI3GeneratorServerListStatus = (state) =>\n state.get('openAPI3GeneratorServerListStatus') || IDLE_STATUS;\n\nexport const selectOpenAPI3GeneratorServerList = createSelector(\n selectOpenAPI3GeneratorServerListStatus,\n selectEditorTopBarState,\n (status, state) => {\n if (status !== SUCCESS_STATUS) {\n return null;\n }\n\n return state.get('openAPI3GeneratorServerList').toJS();\n }\n);\n\nexport const selectOpenAPI3GeneratorClientListURL = () =>\n 'https://generator3.swagger.io/api/clients';\n\nexport const selectOpenAPI3GenerateClientURL = () => 'https://generator3.swagger.io/api/generate';\n\nexport const selectOpenAPI3GeneratorClientListStatus = (state) =>\n state.get('openAPI3GeneratorClientListStatus') || IDLE_STATUS;\n\nexport const selectOpenAPI3GeneratorClientList = createSelector(\n selectOpenAPI3GeneratorClientListStatus,\n selectEditorTopBarState,\n (status, state) => {\n if (status !== SUCCESS_STATUS) {\n return null;\n }\n\n return state.get('openAPI3GeneratorClientList').toJS();\n }\n);\n\nexport const selectOpenAPI2GeneratorServerListURL = () =>\n 'https://generator.swagger.io/api/gen/servers';\n\nexport const selectOpenAPI2GenerateServerURL = () => 'https://generator.swagger.io/api/gen/servers';\n\nexport const selectOpenAPI2GeneratorServerListStatus = (state) =>\n state.get('openAPI2GeneratorServerListStatus') || IDLE_STATUS;\n\nexport const selectOpenAPI2GeneratorServerList = createSelector(\n selectOpenAPI2GeneratorServerListStatus,\n selectEditorTopBarState,\n (status, state) => {\n if (status !== SUCCESS_STATUS) {\n return null;\n }\n\n return state.get('openAPI2GeneratorServerList').toJS();\n }\n);\n\nexport const selectOpenAPI2GeneratorClientListURL = () =>\n 'https://generator.swagger.io/api/gen/clients';\n\nexport const selectOpenAPI2GenerateClientURL = () => 'https://generator.swagger.io/api/gen/clients';\n\nexport const selectOpenAPI2GeneratorClientListStatus = (state) =>\n state.get('openAPI2GeneratorClientListStatus') || IDLE_STATUS;\n\nexport const selectOpenAPI2GeneratorClientList = createSelector(\n selectOpenAPI2GeneratorClientListStatus,\n selectEditorTopBarState,\n (status, state) => {\n if (status !== SUCCESS_STATUS) {\n return null;\n }\n\n return state.get('openAPI2GeneratorClientList').toJS();\n }\n);\n","import TopBar from './components/TopBar/TopBar.jsx';\nimport Logo from './components/Logo/Logo.jsx';\nimport FileMenu from './components/FileMenu/FileMenu.jsx';\nimport ImportUrlMenuItem from './components/FileMenu/items/ImportUrlMenuItem.jsx';\nimport ImportFileMenuItem from './components/FileMenu/items/ImportFileMenuItem.jsx';\nimport LoadExampleNestedMenu from './components/FileMenu/items/LoadExampleNestedMenu/LoadExampleNestedMenu.jsx';\nimport OpenAPI31PetstoreMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI31PetstoreMenuItem.jsx';\nimport OpenAPI30PetstoreMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI30PetstoreMenuItem.jsx';\nimport OpenAPI20PetstoreMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI20PetstoreMenuItem.jsx';\nimport AsyncAPI26PetstoreMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/AsyncAPI26PetstoreMenuItem.jsx';\nimport AsyncAPI26StreetlightsMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/AsyncAPI26StreetlightsMenuItem.jsx';\nimport APIDesignSystemsMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/APIDesignSystemsMenuItem.jsx';\nimport SaveAsMenuItem from './components/FileMenu/items/SaveAsMenuItem.jsx';\nimport ConvertAndSaveAsJSONMenuItem from './components/FileMenu/items/ConvertAndSaveAsJSONMenuItem.jsx';\nimport ConvertAndSaveAsYAMLMenuItem from './components/FileMenu/items/ConvertAndSaveAsYAMLMenuItem.jsx';\nimport DownloadResolvedJSONMenuItem from './components/FileMenu/items/DownloadResolvedJSONMenuItem.jsx';\nimport DownloadResolvedYAMLMenuItem from './components/FileMenu/items/DownloadResolvedYAMLMenuItem.jsx';\nimport EditMenu from './components/EditMenu/EditMenu.jsx';\nimport ClearMenuItem from './components/EditMenu/items/ClearMenuItem.jsx';\nimport ConvertToJSONMenuItem from './components/EditMenu/items/ConvertToJSONMenuItem.jsx';\nimport ConvertToYAMLMenuItem from './components/EditMenu/items/ConvertToYAMLMenuItem.jsx';\nimport ConvertToOpenAPI30xMenuItem from './components/EditMenu/items/ConvertToOpenAPI30xMenuItem.jsx';\nimport OpenAPI3GenerateServerMenu from './components/GenerateServerMenu/OpenAPI3GenerateServerMenu.jsx';\nimport OpenAPI3GenerateClientMenu from './components/GenerateServerMenu/OpenAPI3GenerateClientMenu.jsx';\nimport OpenAPI2GenerateServerMenu from './components/GenerateServerMenu/OpenAPI2GenerateServerMenu.jsx';\nimport OpenAPI2GenerateClientMenu from './components/GenerateServerMenu/OpenAPI2GenerateClientMenu.jsx';\nimport AboutMenu from './components/AboutMenu/AboutMenu.jsx';\nimport {\n importUrlStarted,\n importUrlSuccess,\n importUrlFailure,\n importUrl,\n} from './actions/import-url.js';\nimport {\n downloadContent,\n downloadContentStarted,\n downloadContentSuccess,\n downloadContentFailure,\n} from './actions/download-content.js';\nimport {\n convertContentToJSON,\n convertContentToJSONStarted,\n convertContentToJSONSuccess,\n convertContentToJSONFailure,\n} from './actions/convert-content-to-json.js';\nimport {\n convertContentToYAML,\n convertContentToYAMLStarted,\n convertContentToYAMLSuccess,\n convertContentToYAMLFailure,\n} from './actions/convert-content-to-yaml.js';\nimport {\n dereferenceContent,\n dereferenceContentStarted,\n dereferenceContentSuccess,\n dereferenceContentFailure,\n} from './actions/dereference-content.js';\nimport {\n convertOpenAPI20ToOpenAPI30x,\n convertOpenAPI20ToOpenAPI30xStarted,\n convertOpenAPI20ToOpenAPI30xSuccess,\n convertOpenAPI20ToOpenAPI30xFailure,\n} from './actions/convert-openapi-20-to-openapi-30x.js';\nimport {\n fetchOpenAPI3GeneratorServerList,\n fetchOpenAPI3GeneratorServerListStarted,\n fetchOpenAPI3GeneratorServerListSuccess,\n fetchOpenAPI3GeneratorServerListFailure,\n} from './actions/fetch-openapi3-generator-server-list.js';\nimport {\n fetchOpenAPI3GeneratorClientList,\n fetchOpenAPI3GeneratorClientListStarted,\n fetchOpenAPI3GeneratorClientListSuccess,\n fetchOpenAPI3GeneratorClientListFailure,\n} from './actions/fetch-openapi3-generator-client-list.js';\nimport {\n fetchOpenAPI2GeneratorServerList,\n fetchOpenAPI2GeneratorServerListStarted,\n fetchOpenAPI2GeneratorServerListSuccess,\n fetchOpenAPI2GeneratorServerListFailure,\n} from './actions/fetch-openapi2-generator-server-list.js';\nimport {\n fetchOpenAPI2GeneratorClientList,\n fetchOpenAPI2GeneratorClientListStarted,\n fetchOpenAPI2GeneratorClientListSuccess,\n fetchOpenAPI2GeneratorClientListFailure,\n} from './actions/fetch-openapi2-generator-client-list.js';\nimport {\n generateServerCodeFromOpenAPI3,\n generateServerCodeFromOpenAPI3Started,\n generateServerCodeFromOpenAPI3Success,\n generateServerCodeFromOpenAPI3Failure,\n} from './actions/generate-server-code-from-openapi-3.js';\nimport {\n generateClientCodeFromOpenAPI3,\n generateClientCodeFromOpenAPI3Started,\n generateClientCodeFromOpenAPI3Success,\n generateClientCodeFromOpenAPI3Failure,\n} from './actions/generate-client-code-from-openapi-3.js';\nimport {\n generateServerCodeFromOpenAPI20,\n generateServerCodeFromOpenAPI20Started,\n generateServerCodeFromOpenAPI20Success,\n generateServerCodeFromOpenAPI20Failure,\n} from './actions/generate-server-code-from-openapi-20.js';\nimport {\n generateClientCodeFromOpenAPI20,\n generateClientCodeFromOpenAPI20Started,\n generateClientCodeFromOpenAPI20Success,\n generateClientCodeFromOpenAPI20Failure,\n} from './actions/generate-client-code-from-openapi-20.js';\nimport { detectContentTypeSuccess as detectContentTypeSuccessWrap } from './wrap-actions.js';\nimport {\n selectOpenAPI20ConverterURL,\n selectOpenAPI3GeneratorServerListURL,\n selectOpenAPI3GenerateServerURL,\n selectOpenAPI3GeneratorServerListStatus,\n selectOpenAPI3GeneratorServerList,\n selectOpenAPI3GeneratorClientListURL,\n selectOpenAPI3GenerateClientURL,\n selectOpenAPI3GeneratorClientListStatus,\n selectOpenAPI3GeneratorClientList,\n selectOpenAPI2GeneratorServerListURL,\n selectOpenAPI2GenerateServerURL,\n selectOpenAPI2GeneratorServerListStatus,\n selectOpenAPI2GeneratorServerList,\n selectOpenAPI2GeneratorClientListURL,\n selectOpenAPI2GenerateClientURL,\n selectOpenAPI2GeneratorClientListStatus,\n selectOpenAPI2GeneratorClientList,\n} from './selectors.js';\nimport reducers from './reducers.js';\n\nconst TopBarPlugin = () => ({\n components: {\n TopBar,\n TopBarLogo: Logo,\n\n TopBarFileMenu: FileMenu,\n TopBarFileMenuImportUrlMenuItem: ImportUrlMenuItem,\n TopBarFileMenuImportFileMenuItem: ImportFileMenuItem,\n TopBarFileMenuLoadExampleNestedMenu: LoadExampleNestedMenu,\n TopBarFileMenuLoadExampleNestedMenuOpenAPI31PetstoreMenuItem: OpenAPI31PetstoreMenuItem,\n TopBarFileMenuLoadExampleNestedMenuOpenAPI30PetstoreMenuItem: OpenAPI30PetstoreMenuItem,\n TopBarFileMenuLoadExampleNestedMenuOpenAPI20PetstoreMenuItem: OpenAPI20PetstoreMenuItem,\n TopBarFileMenuLoadExampleNestedMenuAsyncAPI26PetstoreMenuItem: AsyncAPI26PetstoreMenuItem,\n TopBarFileMenuLoadExampleNestedMenuAsyncAPI26StreetlightsMenuItem:\n AsyncAPI26StreetlightsMenuItem,\n TopBarFileMenuLoadExampleNestedMenuAPIDesignSystemsMenuItem: APIDesignSystemsMenuItem,\n TopBarFileMenuSaveAsMenuItem: SaveAsMenuItem,\n TopBarFileMenuConvertAndSaveAsJSONMenuItem: ConvertAndSaveAsJSONMenuItem,\n TopBarFileMenuConvertAndSaveAsYAMLMenuItem: ConvertAndSaveAsYAMLMenuItem,\n TopBarFileMenuDownloadResolvedJSONMenuItem: DownloadResolvedJSONMenuItem,\n TopBarFileMenuDownloadResolvedYAMLMenuItem: DownloadResolvedYAMLMenuItem,\n\n TopBarEditMenu: EditMenu,\n TopBarEditMenuClearMenuItem: ClearMenuItem,\n TopBarEditMenuConvertToJSONMenuItem: ConvertToJSONMenuItem,\n TopBarEditMenuConvertToYAMLMenuItem: ConvertToYAMLMenuItem,\n TopBarEditMenuConvertToOpenAPI30xMenuItem: ConvertToOpenAPI30xMenuItem,\n\n TopBarOpenAPI3GenerateServerMenu: OpenAPI3GenerateServerMenu,\n TopBarOpenAPI3GenerateClientMenu: OpenAPI3GenerateClientMenu,\n\n TopBarOpenAPI2GenerateServerMenu: OpenAPI2GenerateServerMenu,\n TopBarOpenAPI2GenerateClientMenu: OpenAPI2GenerateClientMenu,\n\n TopBarAboutMenu: AboutMenu,\n },\n statePlugins: {\n editor: {\n actions: {\n importUrl,\n importUrlStarted,\n importUrlSuccess,\n importUrlFailure,\n\n downloadContent,\n downloadContentStarted,\n downloadContentSuccess,\n downloadContentFailure,\n\n convertContentToJSON,\n convertContentToJSONStarted,\n convertContentToJSONSuccess,\n convertContentToJSONFailure,\n\n convertContentToYAML,\n convertContentToYAMLStarted,\n convertContentToYAMLSuccess,\n convertContentToYAMLFailure,\n\n dereferenceContent,\n dereferenceContentStarted,\n dereferenceContentSuccess,\n dereferenceContentFailure,\n\n convertOpenAPI20ToOpenAPI30x,\n convertOpenAPI20ToOpenAPI30xStarted,\n convertOpenAPI20ToOpenAPI30xSuccess,\n convertOpenAPI20ToOpenAPI30xFailure,\n },\n wrapActions: {\n detectContentTypeSuccess: detectContentTypeSuccessWrap,\n },\n selectors: {\n selectOpenAPI20ConverterURL,\n },\n },\n editorTopBar: {\n actions: {\n fetchOpenAPI3GeneratorServerList,\n fetchOpenAPI3GeneratorServerListStarted,\n fetchOpenAPI3GeneratorServerListSuccess,\n fetchOpenAPI3GeneratorServerListFailure,\n\n fetchOpenAPI3GeneratorClientList,\n fetchOpenAPI3GeneratorClientListStarted,\n fetchOpenAPI3GeneratorClientListSuccess,\n fetchOpenAPI3GeneratorClientListFailure,\n\n fetchOpenAPI2GeneratorServerList,\n fetchOpenAPI2GeneratorServerListStarted,\n fetchOpenAPI2GeneratorServerListSuccess,\n fetchOpenAPI2GeneratorServerListFailure,\n\n fetchOpenAPI2GeneratorClientList,\n fetchOpenAPI2GeneratorClientListStarted,\n fetchOpenAPI2GeneratorClientListSuccess,\n fetchOpenAPI2GeneratorClientListFailure,\n\n generateServerCodeFromOpenAPI3,\n generateServerCodeFromOpenAPI3Started,\n generateServerCodeFromOpenAPI3Success,\n generateServerCodeFromOpenAPI3Failure,\n\n generateClientCodeFromOpenAPI3,\n generateClientCodeFromOpenAPI3Started,\n generateClientCodeFromOpenAPI3Success,\n generateClientCodeFromOpenAPI3Failure,\n\n generateServerCodeFromOpenAPI20,\n generateServerCodeFromOpenAPI20Started,\n generateServerCodeFromOpenAPI20Success,\n generateServerCodeFromOpenAPI20Failure,\n\n generateClientCodeFromOpenAPI20,\n generateClientCodeFromOpenAPI20Started,\n generateClientCodeFromOpenAPI20Success,\n generateClientCodeFromOpenAPI20Failure,\n },\n selectors: {\n selectOpenAPI3GeneratorServerListURL,\n selectOpenAPI3GenerateServerURL,\n selectOpenAPI3GeneratorServerListStatus,\n selectOpenAPI3GeneratorServerList,\n\n selectOpenAPI3GeneratorClientListURL,\n selectOpenAPI3GenerateClientURL,\n selectOpenAPI3GeneratorClientListStatus,\n selectOpenAPI3GeneratorClientList,\n\n selectOpenAPI2GeneratorServerListURL,\n selectOpenAPI2GenerateServerURL,\n selectOpenAPI2GeneratorServerListStatus,\n selectOpenAPI2GeneratorServerList,\n\n selectOpenAPI2GeneratorClientListURL,\n selectOpenAPI2GenerateClientURL,\n selectOpenAPI2GeneratorClientListStatus,\n selectOpenAPI2GeneratorClientList,\n },\n reducers,\n },\n },\n});\n\nexport default TopBarPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_react_modal_ee4a10af__[\"default\"] });","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactModal from 'react-modal';\n\nconst Modal = ({ isOpen, contentLabel, aria, children }) => {\n return (\n <ReactModal\n isOpen={isOpen}\n contentLabel={contentLabel}\n aria={aria}\n closeTimeoutMS={200}\n className=\"ReactModalDefault\"\n overlayClassName=\"ReactModalOverlay\"\n >\n <div className=\"modal-content\">{children}</div>\n </ReactModal>\n );\n};\n\nModal.propTypes = {\n isOpen: PropTypes.bool,\n contentLabel: PropTypes.string,\n aria: PropTypes.shape({ labelledby: PropTypes.string, describedby: PropTypes.string }),\n children: PropTypes.node,\n};\n\nModal.defaultProps = {\n isOpen: false,\n contentLabel: null,\n aria: {},\n children: null,\n};\n\nexport default Modal;\n","import PropTypes from 'prop-types';\n\nconst ModalHeader = ({ children }) => {\n return <div className=\"modal-header\">{children}</div>;\n};\n\nModalHeader.propTypes = {\n children: PropTypes.node,\n};\n\nModalHeader.defaultProps = {\n children: null,\n};\n\nexport default ModalHeader;\n","import PropTypes from 'prop-types';\n\nconst ModalTitle = ({ id, children }) => (\n <div id={id} className=\"modal-title\">\n {children}\n </div>\n);\n\nModalTitle.propTypes = {\n id: PropTypes.string,\n children: PropTypes.node,\n};\n\nModalTitle.defaultProps = {\n id: null,\n children: null,\n};\n\nexport default ModalTitle;\n","import PropTypes from 'prop-types';\n\nconst ModalBody = ({ children }) => {\n return (\n <div className=\"modal-body\">\n <div>{children}</div>\n </div>\n );\n};\n\nModalBody.propTypes = {\n children: PropTypes.node,\n};\n\nModalBody.defaultProps = {\n children: null,\n};\n\nexport default ModalBody;\n","import PropTypes from 'prop-types';\n\nconst ModalFooter = ({ children }) => {\n return <div className=\"modal-footer\">{children}</div>;\n};\n\nModalFooter.propTypes = {\n children: PropTypes.node,\n};\n\nModalFooter.defaultProps = {\n children: null,\n};\n\nexport default ModalFooter;\n","import { useEffect, useRef } from 'react';\nimport ReactModal from 'react-modal';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const useReactModal = () => {\n const ref = useRef(null);\n\n useEffect(() => {\n ReactModal.setAppElement(ref.current);\n return () => ReactModal.setAppElement(null);\n }, []);\n\n return ref;\n};\n","import Modal from './components/Modal.jsx';\nimport ModalHeader from './components/ModalHeader.jsx';\nimport ModalTitle from './components/ModalTitle.jsx';\nimport ModalBody from './components/ModalBody.jsx';\nimport ModalFooter from './components/ModalFooter.jsx';\nimport { useReactModal } from './hooks.js';\n\nconst ModalsPlugin = () => ({\n rootInjects: {\n useSwaggerEditorReactModal: useReactModal,\n },\n components: {\n Modal,\n ModalHeader,\n ModalTitle,\n ModalBody,\n ModalFooter,\n },\n});\n\nexport default ModalsPlugin;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst AlertDialog = ({ isOpen, title, getComponent, children, onClose }) => {\n const Modal = getComponent('Modal');\n const ModalHeader = getComponent('ModalHeader');\n const ModalTitle = getComponent('ModalTitle');\n const ModalBody = getComponent('ModalBody');\n const ModalFooter = getComponent('ModalFooter');\n\n return (\n <Modal isOpen={isOpen} contentLabel={title}>\n <ModalHeader>\n <button type=\"button\" className=\"close\" onClick={onClose}>\n <span aria-hidden=\"true\">x</span>\n </button>\n <ModalTitle>{title}</ModalTitle>\n </ModalHeader>\n <ModalBody>{children}</ModalBody>\n <ModalFooter>\n <button type=\"button\" className=\"btn btn-primary\" onClick={onClose}>\n OK\n </button>\n </ModalFooter>\n </Modal>\n );\n};\n\nAlertDialog.propTypes = {\n isOpen: PropTypes.bool,\n title: PropTypes.string,\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClose: PropTypes.func,\n};\n\nAlertDialog.defaultProps = {\n isOpen: false,\n title: '',\n children: null,\n onClose: () => {},\n};\n\nexport default AlertDialog;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst ConfirmDialog = ({ isOpen, title, getComponent, children, onClose }) => {\n const Modal = getComponent('Modal');\n const ModalHeader = getComponent('ModalHeader');\n const ModalTitle = getComponent('ModalTitle');\n const ModalBody = getComponent('ModalBody');\n const ModalFooter = getComponent('ModalFooter');\n\n const handleOKClick = () => {\n onClose(true);\n };\n const handleCancelClick = () => {\n onClose(false);\n };\n const handleCloseClick = () => {\n onClose(false);\n };\n\n return (\n <Modal isOpen={isOpen} contentLabel={title}>\n <ModalHeader>\n <button type=\"button\" className=\"close\" onClick={handleCloseClick}>\n <span aria-hidden=\"true\">x</span>\n </button>\n <ModalTitle>{title}</ModalTitle>\n </ModalHeader>\n <ModalBody>{children}</ModalBody>\n <ModalFooter>\n <button type=\"button\" className=\"btn btn-secondary\" onClick={handleCancelClick}>\n Cancel\n </button>\n <button type=\"button\" className=\"btn btn-primary\" onClick={handleOKClick}>\n OK\n </button>\n </ModalFooter>\n </Modal>\n );\n};\n\nConfirmDialog.propTypes = {\n isOpen: PropTypes.bool,\n title: PropTypes.string,\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClose: PropTypes.func,\n};\n\nConfirmDialog.defaultProps = {\n isOpen: false,\n title: '',\n children: null,\n onClose: () => {},\n};\n\nexport default ConfirmDialog;\n","/**\n * Dialogs inform users about a task and can contain critical information,\n * require decisions, or involve multiple tasks.\n *\n * A Dialog is a type of modal window that appears in front of app content to provide\n * critical information or ask for a decision. Dialogs disable all app functionality when they appear,\n * and remain on screen until confirmed, dismissed, or a required action has been taken. *\n */\n\nimport AlertDialog from './components/AlertDialog.jsx';\nimport ConfirmDialog from './components/ConfirmDialog.jsx';\n\nconst DialogsPlugin = () => ({\n components: {\n AlertDialog,\n ConfirmDialog,\n },\n});\n\nexport default DialogsPlugin;\n","import React, { useState, useRef, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\n/* eslint-disable jsx-a11y/click-events-have-key-events */\n\nconst DropdownMenu = ({ children, label, isLong }) => {\n const ref = useRef(null);\n const [isOpen, setIsOpen] = useState(false);\n\n const handleClickOutside = (event) => {\n if (ref.current !== null && !ref.current.contains(event.target)) {\n setIsOpen(false);\n }\n };\n\n const handleToggleClick = () => {\n setIsOpen(!isOpen);\n };\n\n useEffect(() => {\n document.addEventListener('mousedown', handleClickOutside);\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, []);\n\n return (\n <div className={classNames('dd-menu dd-menu-left', { long: isLong })} ref={ref}>\n <span\n className=\"menu-item\"\n role=\"button\"\n tabIndex={0}\n aria-haspopup=\"true\"\n aria-expanded={isOpen}\n onClick={handleToggleClick}\n >\n {label}\n </span>\n {isOpen && (\n <div\n className=\"dd-menu-items\"\n aria-labelledby=\"Dropdown\"\n onClick={handleToggleClick}\n role=\"menu\"\n tabIndex={0}\n >\n <ul className=\"dd-items-left\">{children}</ul>\n </div>\n )}\n </div>\n );\n};\n\nDropdownMenu.propTypes = {\n label: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.element]),\n isLong: PropTypes.bool,\n};\n\nDropdownMenu.defaultProps = {\n children: [],\n isLong: false,\n};\n\nexport default DropdownMenu;\n","import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst DropdownMenuNested = ({ children, label, isLong }) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n const handleClose = () => {\n setIsOpen(false);\n };\n\n return (\n <li\n className={classNames('nested-dd-menu nested-reverse', { long: isLong })}\n onMouseEnter={handleOpen}\n onMouseLeave={handleClose}\n >\n <button type=\"button\">\n {label} <b>></b>\n </button>\n <span className=\"dd-item-ignore\">{isOpen && <ul>{children}</ul>}</span>\n </li>\n );\n};\n\nDropdownMenuNested.propTypes = {\n label: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.element]),\n isLong: PropTypes.bool,\n};\n\nDropdownMenuNested.defaultProps = {\n children: [],\n isLong: false,\n};\n\nexport default DropdownMenuNested;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst DropdownMenuItem = ({ children, onClick }) => {\n return (\n <div>\n <li className=\"dropdown-item\">\n <button type=\"button\" onClick={onClick}>\n {children}\n </button>\n </li>\n </div>\n );\n};\n\nDropdownMenuItem.propTypes = {\n children: PropTypes.node.isRequired,\n onClick: PropTypes.func.isRequired,\n};\n\nexport default DropdownMenuItem;\n","const DropdownMenuItemDivider = () => <li role=\"separator\" />;\n\nexport default DropdownMenuItemDivider;\n","import DropdownMenu from './components/DropdownMenu/DropdownMenu.jsx';\nimport DropdownMenuNested from './components/DropdownMenuNested/DropdownMenuNested.jsx';\nimport DropdownMenuItem from './components/DropdownMenuItem/DropdownMenuItem.jsx';\nimport DropdownMenuItemDivider from './components/DropdownMenuItemDivider.jsx';\n\nconst DropdownMenuPlugin = () => ({\n components: {\n DropdownMenu,\n DropdownMenuNested,\n DropdownMenuItem,\n DropdownMenuItemDivider,\n },\n});\n\nexport default DropdownMenuPlugin;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Dropzone = ({ getComponent, useDropzone, children }) => {\n const AlertDialog = getComponent('AlertDialog', true);\n const [\n isDragActive,\n isAlertDialogOpen,\n setIsAlertDialogOpen,\n errorMessage,\n getRootProps,\n getInputProps,\n ] = useDropzone();\n\n const handleAlertDialogClose = () => {\n setIsAlertDialogOpen(false);\n };\n\n return (\n <div className=\"dropzone\" {...getRootProps()}>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {errorMessage}\n </AlertDialog>\n <input data-cy=\"dropzone\" {...getInputProps()} />\n {isDragActive ? (\n <div className=\"dropzone__overlay\">\n Please drop an OpenAPI 2.0/3.0/3.1 or AsyncApi 2.x definition in .yaml or .json format.\n </div>\n ) : (\n children\n )}\n </div>\n );\n};\n\nDropzone.propTypes = {\n getComponent: PropTypes.func.isRequired,\n useDropzone: PropTypes.func.isRequired,\n children: PropTypes.node.isRequired,\n};\n\nexport default Dropzone;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"useDropzone\"]: () => __WEBPACK_EXTERNAL_MODULE_react_dropzone_68d11630__.useDropzone });","import { useCallback, useState } from 'react';\nimport { useDropzone as useVendorDropzone } from 'react-dropzone';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const makeUseDropzone = (getSystem) => () => {\n const { editorActions } = getSystem();\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const [errorMessage, setErrorMessage] = useState('');\n\n const handleFileDrop = useCallback(\n async (acceptedFiles, rejectedFiles) => {\n const someFilesWereRejected = rejectedFiles && rejectedFiles.length > 0;\n const thereIsExactlyOneAcceptedFile = acceptedFiles && acceptedFiles.length === 1;\n\n try {\n if (someFilesWereRejected || !thereIsExactlyOneAcceptedFile) {\n const dropFileErrMessage = `Sorry, there was an error processing your file.\\nPlease drag and drop exactly one file.`;\n setErrorMessage(dropFileErrMessage);\n setIsAlertDialogOpen(true);\n } else {\n const file = acceptedFiles[0];\n const content = await file.text();\n\n editorActions.setContent(content, 'file-drop');\n }\n } catch (error) {\n const importedFileErrMessage = `Sorry, there was an error processing your file. Unable to process as valid YAML or JSON `;\n setErrorMessage(importedFileErrMessage);\n setIsAlertDialogOpen(true);\n }\n },\n [editorActions, setErrorMessage, setIsAlertDialogOpen]\n );\n const { getRootProps, getInputProps, isDragActive } = useVendorDropzone({\n onDrop: handleFileDrop,\n multiple: false,\n noClick: true,\n });\n\n return [\n isDragActive,\n isAlertDialogOpen,\n setIsAlertDialogOpen,\n errorMessage,\n getRootProps,\n getInputProps,\n ];\n};\n","import Dropzone from './components/Dropzone.jsx';\nimport { makeUseDropzone } from './hooks.js';\n\nconst DropzonePlugin = ({ getSystem }) => ({\n rootInjects: {\n useDropzone: makeUseDropzone(getSystem),\n },\n components: {\n Dropzone,\n },\n});\n\nexport default DropzonePlugin;\n","const afterLoad = () => {\n // eslint-disable-next-line no-undef\n const { PACKAGE_VERSION, GIT_COMMIT, GIT_DIRTY, BUILD_TIME } = buildInfo;\n\n globalThis.versions = globalThis.versions || {};\n globalThis.versions.swaggerEditor = Object.create(\n {\n toString() {\n return `${this.version}/${this.gitRevision || 'unknown'}${this.gitDirty ? '-dirty' : ''}`;\n },\n valueOf() {\n return this.toString();\n },\n },\n {\n version: { value: PACKAGE_VERSION, enumerable: true },\n gitRevision: { value: GIT_COMMIT, enumerable: true },\n gitDirty: { value: GIT_DIRTY, enumerable: true },\n buildTimestamp: { value: BUILD_TIME, enumerable: true },\n buildHash: { value: __webpack_hash__, enumerable: true }, // eslint-disable-line camelcase\n }\n );\n};\n\nexport default afterLoad;\n","import afterLoad from './after-load.js';\n\nconst VersionsPlugin = () => ({\n afterLoad,\n});\n\nexport default VersionsPlugin;\n","import PropTypes from 'prop-types';\n\nconst EditorPane = ({ getComponent, useElementResize }) => {\n const Editor = getComponent('Editor', true);\n const EditorPaneBarTop = getComponent('EditorPaneBarTop');\n const EditorPaneBarRight = getComponent('EditorPaneBarRight');\n const EditorPaneBarBottom = getComponent('EditorPaneBarBottom');\n const EditorPaneBarLeft = getComponent('EditorPaneBarLeft');\n const editorContainerRef = useElementResize({ eventName: 'editorcontainerresize' });\n\n return (\n <div className=\"swagger-editor__editor-pane\">\n <div className=\"swagger-editor__editor-pane-container-col\">\n <EditorPaneBarTop />\n <div className=\"swagger-editor__editor-pane-container-row\">\n <EditorPaneBarLeft />\n <div className=\"swagger-editor__editor-container\" ref={editorContainerRef}>\n <Editor />\n </div>\n </div>\n <EditorPaneBarBottom />\n </div>\n <EditorPaneBarRight />\n </div>\n );\n};\n\nEditorPane.propTypes = {\n getComponent: PropTypes.func.isRequired,\n useElementResize: PropTypes.func.isRequired,\n};\n\nexport default EditorPane;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"useResizeDetector\"]: () => __WEBPACK_EXTERNAL_MODULE_react_resize_detector_b0babbde__.useResizeDetector });","import { useCallback, useEffect, useRef, useState } from 'react';\nimport { useResizeDetector } from 'react-resize-detector';\n\nexport const makeUseEditorLifecycle = (getSystem) => (implementation) => {\n const { editorActions } = getSystem();\n const editorRef = useRef(null);\n\n useEffect(() => {\n const { current } = editorRef;\n editorActions.editorSetup(current, implementation);\n\n return () => {\n editorActions.editorTearDown(current, implementation);\n };\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n return editorRef;\n};\n\nexport const useElementResize = ({ eventName }) => {\n const handleResize = useCallback(\n (width, height) => {\n const event = new globalThis.CustomEvent(eventName, {\n detail: { width, height },\n });\n globalThis.dispatchEvent(event);\n },\n [eventName]\n );\n const { ref } = useResizeDetector({\n onResize: handleResize,\n refreshMode: 'debounce',\n refreshRate: 0,\n });\n\n return ref;\n};\n\nexport const useId = () => {\n const randomNumber = Math.floor(Math.random() * 10000000);\n const [id] = useState(String(randomNumber));\n return id;\n};\n","import React, { useCallback, useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\n\n// @TODO(vladimir.gorej@gmail.com): this can be replaced by React.useId in React@18\nimport { useId } from '../../hooks.js';\n\nconst TextareaEditor = ({ isReadOnly, editorActions, editorSelectors, useEditorLifecycle }) => {\n const content = editorSelectors.selectContent();\n const id = useId();\n const editorRef = useEditorLifecycle('textarea');\n const [value, setValue] = useState(content);\n\n const handleChange = useCallback(\n (e) => {\n e.preventDefault();\n setValue(e.target.value);\n editorActions.setContentDebounced(e.target.value, 'editor');\n },\n [editorActions]\n );\n\n useEffect(() => {\n setValue(content);\n }, [content]);\n\n return (\n <textarea\n id={id}\n ref={editorRef}\n readOnly={isReadOnly}\n className=\"swagger-editor__editor-textarea\"\n name=\"content\"\n value={value}\n onChange={handleChange}\n />\n );\n};\n\nTextareaEditor.propTypes = {\n isReadOnly: PropTypes.bool,\n editorActions: PropTypes.shape({\n setContentDebounced: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n }).isRequired,\n useEditorLifecycle: PropTypes.func.isRequired,\n};\n\nTextareaEditor.defaultProps = {\n isReadOnly: false,\n};\n\nexport default TextareaEditor;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPaneBarTop = ({ renderChildren, renderControls }) => {\n return (\n <div className=\"swagger-editor__editor-pane-bar swagger-editor__editor-pane-bar--top\">\n <div className=\"swagger-editor__toolbar-horizontal\">{renderControls(null)}</div>\n {renderChildren(null)}\n </div>\n );\n};\n\nEditorPaneBarTop.propTypes = {\n renderChildren: PropTypes.func,\n renderControls: PropTypes.func,\n};\n\nEditorPaneBarTop.defaultProps = {\n renderChildren: (children) => children,\n renderControls: (controls) => controls,\n};\n\nexport default EditorPaneBarTop;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPaneBarRight = ({ renderChildren, renderControls }) => {\n return (\n <div className=\"swagger-editor__editor-pane-bar swagger-editor__editor-pane-bar--right\">\n <div className=\"swagger-editor__toolbar-vertical\">{renderControls(null)}</div>\n {renderChildren(null)}\n </div>\n );\n};\n\nEditorPaneBarRight.propTypes = {\n renderChildren: PropTypes.func,\n renderControls: PropTypes.func,\n};\n\nEditorPaneBarRight.defaultProps = {\n renderChildren: (children) => children,\n renderControls: (controls) => controls,\n};\n\nexport default EditorPaneBarRight;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPaneBarBottom = ({ renderChildren, renderControls }) => {\n return (\n <div className=\"swagger-editor__editor-pane-bar swagger-editor__editor-pane-bar--bottom\">\n <div className=\"swagger-editor__toolbar-horizontal\">{renderControls(null)}</div>\n {renderChildren(null)}\n </div>\n );\n};\n\nEditorPaneBarBottom.propTypes = {\n renderChildren: PropTypes.func,\n renderControls: PropTypes.func,\n};\n\nEditorPaneBarBottom.defaultProps = {\n renderChildren: (children) => children,\n renderControls: (controls) => controls,\n};\n\nexport default EditorPaneBarBottom;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPaneBarLeft = ({ renderChildren, renderControls }) => {\n return (\n <div className=\"swagger-editor__editor-pane-bar swagger-editor__editor-pane-bar--left\">\n <div className=\"swagger-editor__toolbar-vertical\">{renderControls(null)}</div>\n {renderChildren(null)}\n </div>\n );\n};\n\nEditorPaneBarLeft.propTypes = {\n renderChildren: PropTypes.func,\n renderControls: PropTypes.func,\n};\n\nEditorPaneBarLeft.defaultProps = {\n renderChildren: (children) => children,\n renderControls: (controls) => controls,\n};\n\nexport default EditorPaneBarLeft;\n","export const EDITOR_SETUP = 'editor_setup';\nexport const EDITOR_TEAR_DOWN = 'editor_tear_down';\nexport const EDITOR_SET_CONTENT = 'editor_set_content';\nexport const EDITOR_CLEAR_CONTENT = 'editor_clear_content';\n\nexport const editorSetup = (editorInstance, implementation = 'textarea') => ({\n type: EDITOR_SETUP,\n payload: editorInstance,\n meta: ['editor', implementation],\n});\n\nexport const editorTearDown = (editorInstance, implementation = 'textarea') => ({\n type: EDITOR_TEAR_DOWN,\n payload: editorInstance,\n meta: ['editor', implementation],\n});\n\nexport const setContent = (content) => ({\n type: EDITOR_SET_CONTENT,\n payload: content,\n meta: {},\n});\n\nexport const clearContent = () => ({\n type: EDITOR_CLEAR_CONTENT,\n});\n","import { EDITOR_SET_CONTENT, EDITOR_SETUP, EDITOR_TEAR_DOWN } from './actions.js';\n\nexport const initialState = {\n content: '',\n id: null,\n};\n\nconst reducers = {\n [EDITOR_SET_CONTENT]: (state, action) => {\n return state.set('content', action.payload);\n },\n [EDITOR_SETUP]: (state, action) => {\n if (!action.meta.includes('textarea')) {\n return state;\n }\n return state.set('id', action.payload.id);\n },\n [EDITOR_TEAR_DOWN]: (state, action) => {\n if (!action.meta.includes('textarea')) {\n return state;\n }\n if (state.get('id') !== action.payload.id) {\n return state;\n }\n\n return state.delete('id');\n },\n};\n\nexport default reducers;\n","import { initialState } from './reducers.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const selectContent = (state) => state.get('content', initialState.content);\n\nexport const selectId = (state) => state.get('id', initialState.id);\n\nexport const selectEditor = () => (system) => {\n const id = system.editorSelectors.selectId();\n return document.getElementById(id);\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_debounce_js_35379ba8__[\"default\"] });","import debounce from 'lodash/debounce.js';\n\nimport createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\nexport const setContentDebouncedImpl = debounce((content, contentOrigin, system) => {\n system.editorActions.setContent(content, contentOrigin);\n}, 500);\n\nexport const editorSetup = (oriAction) => (editorInstance, implementation) => {\n oriAction(editorInstance, implementation);\n\n globalThis.editor = editorInstance;\n globalThis[implementation] = editorInstance;\n};\n\nexport const editorTearDown = (oriAction) => (editorInstance, implementation) => {\n oriAction(editorInstance, implementation);\n\n delete globalThis.editor;\n delete globalThis[implementation];\n};\n\nexport const setContentDebounced = (oriAction, system) => (content, contentOrigin) => {\n setContentDebouncedImpl(content, contentOrigin, system);\n};\n\nexport const clearContent = createSafeActionWrapper((oriAction, system) => () => {\n system.editorActions.setContent('', 'clear');\n});\n\n/**\n * This wrapped action makes sure that setting initial definition\n * via `spec` or `url` SwaggerUI option is propagated to editor content.\n */\nexport const updateSpec = (oriAction, system) => (spec, origin) => {\n const { editorActions, editorSelectors } = system;\n\n const fsa = oriAction(spec, origin); // Flux Standard Action(FSA): action objects emitted through redux\n\n if (origin !== 'swagger-editor' && editorSelectors.selectContent() !== spec) {\n editorActions.setContent(spec);\n }\n\n return fsa;\n};\n","import EditorPane from './components/EditorPane/EditorPane.jsx';\nimport TextareaEditor from './components/TextareaEditor/TextareaEditor.jsx';\nimport EditorPaneBarTop from './components/EditorPaneBars/EditorPaneBarTop.jsx';\nimport EditorPaneBarRight from './components/EditorPaneBars/EditorPaneBarRight.jsx';\nimport EditorPaneBarBottom from './components/EditorPaneBars/EditorPaneBarBottom.jsx';\nimport EditorPaneBarLeft from './components/EditorPaneBars/EditorPaneBarLeft.jsx';\nimport { editorSetup, editorTearDown, setContent, clearContent } from './actions.js';\nimport { selectContent, selectId, selectEditor } from './selectors.js';\nimport reducers from './reducers.js';\nimport {\n editorSetup as editorSetupWrap,\n editorTearDown as editorTearDownWrap,\n setContentDebounced as setContentDebouncedWrap,\n updateSpec as updateSpecWrap,\n clearContent as clearContentWrap,\n} from './wrap-actions.js';\nimport { makeUseEditorLifecycle, useElementResize } from './hooks.js';\n\nconst EditorTextareaPlugin = ({ getSystem }) => ({\n rootInjects: {\n useEditorLifecycle: makeUseEditorLifecycle(getSystem),\n useElementResize,\n },\n components: {\n EditorPane,\n EditorPaneBarTop,\n EditorPaneBarRight,\n EditorPaneBarBottom,\n EditorPaneBarLeft,\n Editor: TextareaEditor,\n TextareaEditor,\n },\n statePlugins: {\n editor: {\n actions: {\n editorSetup,\n editorTearDown,\n setContent,\n setContentDebounced: setContent,\n clearContent,\n },\n wrapActions: {\n editorSetup: editorSetupWrap,\n editorTearDown: editorTearDownWrap,\n setContentDebounced: setContentDebouncedWrap,\n clearContent: clearContentWrap,\n },\n selectors: {\n selectContent,\n selectId,\n selectEditor,\n },\n reducers,\n },\n spec: {\n wrapActions: {\n updateSpec: updateSpecWrap,\n },\n },\n },\n});\n\nexport default EditorTextareaPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_noop_js_57fa4577__[\"default\"] });","const darkThemeMap = {\n parameter: 5,\n specVersion: 6,\n version: 6,\n 'api-version': 6,\n 'spec-version': 6,\n info: 6,\n operation: {\n default: 7,\n 'httpMethod-GET': 5, // light blue\n 'httpMethod-POST': 7, // light green\n },\n key: {\n string: 0,\n number: 5,\n },\n value: {\n string: 0,\n number: 5,\n },\n pathItem: 13,\n components: 9,\n 'components-parameters': 17,\n 'components-schemas': 17,\n 'components-messages': 17,\n 'components-request-bodies': 17,\n 'components-examples': 17,\n 'components-headers': 17,\n 'components-security-schemes': 17,\n 'components-links': 17,\n 'components-callbacks': 17,\n 'components-path-items': 17,\n 'openapi-reference': 9,\n 'server-url': 0,\n 'Asyncapi-reference': 9,\n 'json-reference': 9,\n 'reference-element': 7,\n 'reference-value': 13,\n content: 5,\n mediaType: 5,\n openapi: 6,\n parameters: 17,\n paths: 17,\n reference: 9,\n requestBody: 12,\n response: 12,\n responses: 17,\n schema: 9,\n server: 5,\n servers: 17,\n title: 6,\n asyncApiVersion: 6,\n channelItem: 13,\n channels: 17,\n tags: 6,\n webhooks: 6,\n contact: 6,\n license: 6,\n externalDocumentation: 6,\n 'server-description': 6,\n 'server-variables': 6,\n 'operation-callbacks': 6,\n callback: 6,\n messageTraits: 17,\n operationTraits: 17,\n};\n\nexport const getStyleMetadataDark = (type, modifiers) => {\n let color = 5;\n\n if (modifiers && modifiers.length > 0) {\n color = darkThemeMap[type][modifiers[0]] ? darkThemeMap[type][modifiers[0]] : 5;\n } else {\n color = darkThemeMap[type];\n if (!color) {\n color = darkThemeMap[type] && darkThemeMap[type].default ? darkThemeMap[type].default : 5;\n }\n }\n\n return {\n foreground: color,\n bold: false,\n underline: false,\n italic: false,\n };\n};\n\nexport default {\n base: 'vs-dark',\n inherit: true,\n rules: [\n // top-level tokens for OpenAPI Object: bold, with light purple-white\n { token: 'openapi', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'info', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'jsonSchemaDialect', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'servers', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'paths', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'webhooks', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'components', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'security', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'tags', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'externalDocumentation', foreground: '#d0d0e3', fontStyle: 'bold' },\n // additional top-level tokens for AsyncAPI Object: bold, with light purple-white\n { token: 'spec-version', foreground: '#d0d0e3', fontStyle: 'bold' }, // e.g. asyncapi\n { token: 'channels', foreground: '#d0d0e3', fontStyle: 'bold' },\n // operation tokens: swagger-ui-post=green, swagger-ui-get=blue\n { token: 'operation', foreground: '#66afce', fontStyle: 'bold' }, // light blue\n { token: 'operation.httpMethod-GET', foreground: '#0099ff', fontStyle: 'bold' }, // blue\n { token: 'operation.httpMethod-POST', foreground: '#00cc99', fontStyle: 'bold' }, // teal\n // parameters tokens: purple\n { token: 'parameters', foreground: '#C678DD', fontStyle: 'italic' },\n { token: 'parameter', foreground: '#C678DD', fontStyle: 'italic' },\n { token: 'components-parameters', foreground: '#C678DD', fontStyle: 'bold' },\n // messages tokens: purple\n { token: 'components-messages', foreground: '#C678DD', fontStyle: 'bold' },\n { token: 'messages', foreground: '#C678DD', fontStyle: 'italic' },\n { token: 'message', foreground: '#C678DD' },\n // reference & $refs tokens: orange\n { token: 'reference-element', foreground: '#ff5500', fontStyle: 'bold' },\n { token: 'reference-value', foreground: '#ffddcc', fontStyle: 'italic' },\n // components/{schemas}/schema: bold olive green\n { token: 'components-schemas', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'schema', foreground: '#ceca84', fontStyle: 'bold' },\n // pathItem & channelItem: bold olive green\n { token: 'pathItem', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'channelItem', foreground: '#ceca84', fontStyle: 'bold' },\n // request & response: olive green\n { token: 'requestBody', foreground: '#ceca84', fontStyle: 'italic' },\n { token: 'responses', foreground: '#ceca84', fontStyle: 'italic' },\n { token: 'components-responses', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-request-bodies', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'content', foreground: '#ceca84' },\n { token: 'mediaType', foreground: '#ceca84' },\n { token: 'response', foreground: '#ceca84' },\n { token: 'server', foreground: '#ceca84' },\n // additional components: bold olive green\n { token: 'components-examples', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-headers', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-links', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-security-schemes', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-callbacks', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-pathItems', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-path-items', foreground: '#ceca84', fontStyle: 'bold' },\n // plain value: green\n { token: 'value', foreground: '#98C379' },\n { token: 'value.string', foreground: '#98C379' },\n { token: 'value.number', foreground: '#98C379' },\n // plain key: pinkish-orange, which appears light orange\n { token: 'key.string', foreground: '#e8b9bb' },\n { token: 'key.number', foreground: '#e8b9bb' },\n // misc token key/value pair: sky blue\n { token: 'api-version', foreground: '#1de2fa' }, // version inside of info object\n { token: 'server-url', foreground: '#1de2fa' },\n // misc token object: sky blue\n { token: 'callback', foreground: '#1de2fa' },\n { token: 'contact', foreground: '#1de2fa' },\n { token: 'discriminator', foreground: '#1de2fa' },\n { token: 'example', foreground: '#1de2fa' }, // only when examples.example\n { token: 'examples', foreground: '#1de2fa' },\n { token: 'header', foreground: '#1de2fa' },\n { token: 'license', foreground: '#1de2fa' },\n { token: 'oAuthFlow', foreground: '#1de2fa' },\n { token: 'oAuthFlows', foreground: '#1de2fa' },\n { token: 'operation-example', foreground: '#1de2fa' },\n { token: 'operation-callbacks', foreground: '#1de2fa' },\n { token: 'securityScheme', foreground: '#1de2fa' },\n { token: 'server-variables', foreground: '#1de2fa' },\n { token: 'messageTrait', foreground: '#1de2fa' },\n { token: 'operationTrait', foreground: '#1de2fa' },\n // tokens exist in apidom-ls, but not working in editor, sky blue\n { token: 'version', foreground: '#1de2fa' },\n { token: 'title', foreground: '#1de2fa' },\n { token: 'specVersion', foreground: '#1de2fa' },\n { token: 'asyncApiVersion', foreground: '#1de2fa' },\n // tokens exist in apidom-ls, but not working in editor, may be orange-ish to match other reference(s)\n { token: 'openapi-reference', foreground: '#ff9966' },\n { token: 'reference', foreground: '#ff9966' },\n { token: 'Asyncapi-reference', foreground: '#ff9966' },\n { token: 'json-reference', foreground: '#ff9966' },\n ],\n colors: {\n 'editor.background': '#282c34',\n 'editor.foreground': '#abb2bf',\n 'editorLineNumber.foreground': '#636D83',\n 'editorLineNumber.activeForeground': '#ABB2BF',\n 'editorHoverWidget.background': '#282c34',\n 'editorHoverWidget.border': '#636D83',\n 'minimap.background': '#282c34',\n },\n};\n","const lightThemeMap = {\n parameter: 5,\n specVersion: 6,\n version: 6,\n 'api-version': 6,\n 'spec-version': 6,\n info: 6,\n operation: {\n default: 7,\n 'httpMethod-GET': 5, // light blue\n 'httpMethod-POST': 7, // light green\n },\n key: {\n string: 0,\n number: 5,\n },\n value: {\n string: 0,\n number: 5,\n },\n pathItem: 13,\n components: 9,\n 'components-parameters': 17,\n 'components-schemas': 17,\n 'components-messages': 17,\n 'components-request-bodies': 17,\n 'components-examples': 17,\n 'components-headers': 17,\n 'components-security-schemes': 17,\n 'components-links': 17,\n 'components-callbacks': 17,\n 'components-path-items': 17,\n 'openapi-reference': 9,\n 'server-url': 0,\n 'Asyncapi-reference': 9,\n 'json-reference': 9,\n 'reference-element': 7,\n 'reference-value': 13,\n content: 5,\n mediaType: 5,\n openapi: 6,\n parameters: 17,\n paths: 17,\n reference: 9,\n requestBody: 12,\n response: 12,\n responses: 17,\n schema: 9,\n server: 5,\n servers: 17,\n title: 6,\n asyncApiVersion: 6,\n channelItem: 13,\n channels: 17,\n tags: 6,\n webhooks: 6,\n contact: 6,\n license: 6,\n externalDocumentation: 6,\n 'server-description': 6,\n 'server-variables': 6,\n 'operation-callbacks': 6,\n callback: 6,\n messageTraits: 17,\n operationTraits: 17,\n};\n\nexport const getStyleMetadataLight = (type, modifiers) => {\n let color = 5;\n\n if (modifiers && modifiers.length > 0) {\n color = lightThemeMap[type][modifiers[0]] ? lightThemeMap[type][modifiers[0]] : 5;\n } else {\n color = lightThemeMap[type];\n if (!color) {\n color = lightThemeMap[type] && lightThemeMap[type].default ? lightThemeMap[type].default : 5;\n }\n }\n\n return {\n foreground: color,\n bold: false,\n underline: false,\n italic: false,\n };\n};\n\nexport default {\n base: 'vs', // can also be vs-dark or hc-black\n inherit: true, // can also be false to completely replace the builtin rules\n rules: [\n // top-level tokens for OpenAPI Object: bold dark grey with purple tint\n { token: 'openapi', foreground: '#000033', fontStyle: 'bold' },\n { token: 'info', foreground: '#000033', fontStyle: 'bold' },\n { token: 'jsonSchemaDialect', foreground: '#000033', fontStyle: 'bold' },\n { token: 'servers', foreground: '#000033', fontStyle: 'bold' },\n { token: 'paths', foreground: '#000033', fontStyle: 'bold' },\n { token: 'webhooks', foreground: '#000033', fontStyle: 'bold' },\n { token: 'components', foreground: '#000033', fontStyle: 'bold' },\n { token: 'security', foreground: '#000033', fontStyle: 'bold' },\n { token: 'tags', foreground: '#000033', fontStyle: 'bold' },\n { token: 'externalDocumentation', foreground: '#000033', fontStyle: 'bold' },\n // additional top-level tokens for AsyncAPI Object: bold dark grey with purple tint\n { token: 'spec-version', foreground: '#000033', fontStyle: 'bold' }, // e.g. asyncapi\n { token: 'channels', foreground: '#000033', fontStyle: 'bold' },\n // operation tokens: swagger-ui-post=green, swagger-ui-get=blue\n { token: 'operation', foreground: '#66afce', fontStyle: 'bold' }, // light blue\n { token: 'operation.httpMethod-GET', foreground: '#006699', fontStyle: 'bold' }, // blue-grey\n { token: 'operation.httpMethod-POST', foreground: '#339966', fontStyle: 'bold' }, // dark teal\n // parameters tokens: purple\n { token: 'parameters', foreground: '#993399', fontStyle: 'italic' },\n { token: 'parameter', foreground: '#993399', fontStyle: 'italic' },\n { token: 'components-parameters', foreground: '#993399', fontStyle: 'bold' },\n // messages tokens: purple\n { token: 'components-messages', foreground: '#993399', fontStyle: 'bold' },\n { token: 'messages', foreground: '#993399', fontStyle: 'italic' },\n { token: 'message', foreground: '#993399' },\n // reference & $refs tokens: orange\n { token: 'reference-element', foreground: '#cc3300', fontStyle: 'bold' },\n { token: 'reference-value', foreground: '#ff5500', fontStyle: 'italic' },\n // components/{schemas}/schema: bold olive green\n { token: 'components-schemas', foreground: '#666633', fontStyle: 'bold' },\n { token: 'schema', foreground: '#666633', fontStyle: 'bold' },\n // pathItem & channelItem: bold olive green\n { token: 'pathItem', foreground: '#666633', fontStyle: 'bold' },\n { token: 'channelItem', foreground: '#666633', fontStyle: 'bold' },\n // request & response: olive green\n { token: 'requestBody', foreground: '#666633', fontStyle: 'italic' },\n { token: 'responses', foreground: '#666633', fontStyle: 'italic' },\n { token: 'components-responses', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-request-bodies', foreground: '#666633', fontStyle: 'bold' },\n { token: 'content', foreground: '#666633' },\n { token: 'mediaType', foreground: '#666633' },\n { token: 'response', foreground: '#666633' },\n { token: 'server', foreground: '#666633' },\n // additional components: bold olive green\n { token: 'components-examples', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-headers', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-links', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-security-schemes', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-callbacks', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-pathItems', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-path-items', foreground: '#666633', fontStyle: 'bold' },\n // plain value: green\n { token: 'value', foreground: '#339933' },\n { token: 'value.string', foreground: '#339933' },\n { token: 'value.number', foreground: '#339933' },\n // plain key: pumpkin\n { token: 'key.string', foreground: '#cc6600' },\n { token: 'key.number', foreground: '#cc6600' },\n // misc token key/value pair: sky blue\n { token: 'api-version', foreground: '#0099cc' }, // version inside of info object\n { token: 'server-url', foreground: '#0099cc' },\n // misc token object: sky blue\n { token: 'callback', foreground: '#0099cc' },\n { token: 'contact', foreground: '#0099cc' },\n { token: 'discriminator', foreground: '#0099cc' },\n { token: 'example', foreground: '#0099cc' }, // only when examples.example\n { token: 'examples', foreground: '#0099cc' },\n { token: 'header', foreground: '#0099cc' },\n { token: 'license', foreground: '#0099cc' },\n { token: 'oAuthFlow', foreground: '#0099cc' },\n { token: 'oAuthFlows', foreground: '#0099cc' },\n { token: 'operation-example', foreground: '#0099cc' },\n { token: 'operation-callbacks', foreground: '#0099cc' },\n { token: 'securityScheme', foreground: '#0099cc' },\n { token: 'server-variables', foreground: '#0099cc' },\n { token: 'messageTrait', foreground: '#0099cc' },\n { token: 'operationTrait', foreground: '#0099cc' },\n // tokens exist in apidom-ls, but not working in editor, sky blue\n { token: 'version', foreground: '#0099cc' },\n { token: 'title', foreground: '#0099cc' },\n { token: 'specVersion', foreground: '#0099cc' },\n { token: 'asyncApiVersion', foreground: '#0099cc' },\n // tokens exist in apidom-ls, but not working in editor, may be orange-ish to match other reference(s)\n { token: 'openapi-reference', foreground: '#ff9966' },\n { token: 'reference', foreground: '#ff9966' },\n { token: 'Asyncapi-reference', foreground: '#ff9966' },\n { token: 'json-reference', foreground: '#ff9966' },\n ],\n colors: {\n 'editor.background': '#fdf6e3',\n 'editor.foreground': '#383a42',\n 'editorLineNumber.foreground': '#9D9D9F',\n 'editorLineNumber.activeForeground': '#383A42',\n 'editorHoverWidget.background': '#fdf6e3',\n 'editorHoverWidget.border': '#9D9D9F',\n 'minimap.background': '#fdf6e3',\n },\n};\n","import { useEffect, useRef } from 'react';\n\nexport const useMount = (effect) => {\n useEffect(effect, []); // eslint-disable-line react-hooks/exhaustive-deps\n};\n\nexport const useUpdate = (effect, deps, applyChanges = true) => {\n const isInitialMount = useRef(true);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(\n isInitialMount.current || !applyChanges\n ? () => {\n isInitialMount.current = false;\n }\n : effect,\n deps\n );\n};\n\nexport const useSmoothResize = ({ eventName, editorRef }) => {\n useEffect(() => {\n let lastDimensions = {};\n let currentDimensions = {};\n let breakAnimationFrame = false;\n\n const handleEditorContainerResize = ({ detail }) => {\n currentDimensions = detail;\n };\n\n function handleEditorResize() {\n if (breakAnimationFrame) return;\n\n if (\n lastDimensions.width !== currentDimensions.width ||\n lastDimensions.height !== currentDimensions.height\n ) {\n editorRef.current.layout();\n lastDimensions = currentDimensions;\n }\n\n globalThis.requestAnimationFrame(handleEditorResize);\n }\n\n globalThis.requestAnimationFrame(handleEditorResize);\n\n globalThis.addEventListener(eventName, handleEditorContainerResize);\n\n return () => {\n breakAnimationFrame = true;\n globalThis.removeEventListener(eventName, handleEditorContainerResize);\n };\n }, [eventName, editorRef]);\n};\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport * as monaco from 'monaco-editor';\nimport noop from 'lodash/noop.js';\n\nimport seVsDarkTheme from '../../themes/se-vs-dark.js';\nimport seVsLightTheme from '../../themes/se-vs-light.js';\nimport { useMount, useUpdate, useSmoothResize } from './hooks.js';\n\n/**\n * Hooks in MonacoEditor component are divided into 4 categories:\n * - hooks that are executed only on mount (useMount)\n * - hooks that are executed on mount and when values change (useEffect)\n * - hooks that are executed only when values change after the mount (useUpdate)\n * - rest of the hooks\n */\n\nconst MonacoEditor = ({\n value,\n theme,\n language,\n isReadOnly,\n onMount,\n onWillUnmount,\n onChange,\n onEditorMarkersDidChange,\n}) => {\n const containerRef = useRef(null);\n const editorRef = useRef(null);\n const subscriptionRef = useRef(null);\n const valueRef = useRef(value);\n const [isEditorReady, setIsEditorReady] = useState(false);\n\n const createEditor = useCallback(() => {\n editorRef.current = monaco.editor.create(containerRef.current, {\n value,\n language,\n // semantic tokens provider is disabled by default; https://github.com/microsoft/monaco-editor/issues/1833\n 'semanticHighlighting.enabled': true,\n theme,\n glyphMargin: true,\n lightbulb: {\n enabled: true,\n },\n lineNumbers: 'on',\n autoIndent: 'full',\n formatOnPaste: true,\n formatOnType: true,\n wordWrap: 'on',\n minimap: {\n enabled: true,\n },\n domReadOnly: isReadOnly,\n readOnly: isReadOnly,\n wordBasedSuggestions: false,\n quickSuggestions: true,\n quickSuggestionsDelay: 300,\n fixedOverflowWidgets: true,\n 'bracketPairColorization.enabled': true,\n suggest: {\n snippetsPreventQuickSuggestions: false,\n },\n renderWhitespace: true,\n matchOnWordStartOnly: false,\n });\n\n editorRef.current.getModel().updateOptions({ tabSize: 2 });\n setIsEditorReady(true);\n }, [value, language, theme, isReadOnly]);\n\n const disposeEditor = useCallback(() => {\n onWillUnmount(editorRef.current);\n subscriptionRef.current?.dispose();\n editorRef.current.getModel()?.dispose();\n editorRef.current.dispose();\n }, [onWillUnmount]);\n\n // disposing of Monaco Editor\n useMount(() => () => {\n if (editorRef.current) {\n disposeEditor();\n }\n });\n\n // defining the custom themes and setting the active one\n useMount(() => {\n monaco.editor.defineTheme('se-vs-dark', seVsDarkTheme);\n monaco.editor.defineTheme('se-vs-light', seVsLightTheme);\n });\n\n // update language\n useUpdate(\n () => {\n monaco.editor.setModelLanguage(editorRef.current.getModel(), language);\n },\n [language],\n isEditorReady\n );\n\n // track model changes from outside of editor\n useUpdate(\n () => {\n valueRef.current = value;\n if (editorRef.current.getOption(monaco.editor.EditorOption.readOnly)) {\n editorRef.current.setValue(value);\n } else if (value !== editorRef.current.getValue()) {\n editorRef.current.executeEdits('', [\n {\n range: editorRef.current.getModel().getFullModelRange(),\n text: value,\n forceMoveMarkers: true,\n },\n ]);\n\n editorRef.current.pushUndoStop();\n }\n },\n [value],\n isEditorReady\n );\n\n // setting Monaco Editor to write/read mode\n useUpdate(\n () => {\n editorRef.current.updateOptions({ domReadOnly: isReadOnly, readOnly: isReadOnly });\n },\n [isReadOnly],\n isEditorReady\n );\n\n // settings the theme if changed\n useEffect(() => {\n monaco.editor.setTheme(theme);\n }, [theme]);\n\n // register listener for validation markers\n useEffect(() => {\n if (!isEditorReady) return undefined;\n\n const disposable = monaco.editor.onDidChangeMarkers((uris) => {\n const { uri: currentModelUri } = editorRef.current.getModel();\n const hasCurrentModelChanged = uris.find((uri) => String(uri) === String(currentModelUri));\n\n if (hasCurrentModelChanged) {\n const markers = monaco.editor.getModelMarkers({ resource: currentModelUri });\n onEditorMarkersDidChange(markers);\n }\n });\n\n return () => {\n disposable.dispose();\n };\n }, [isEditorReady, onEditorMarkersDidChange]);\n\n // propagate changes from editor to handler\n useEffect(() => {\n if (isEditorReady) {\n subscriptionRef.current?.dispose();\n subscriptionRef.current = editorRef.current?.onDidChangeModelContent((event) => {\n const editorValue = editorRef.current.getValue();\n\n if (valueRef.current !== editorValue) {\n valueRef.current = editorValue;\n onChange(editorValue, event);\n }\n });\n }\n }, [isEditorReady, onChange]);\n\n // allow editor to resize to available space\n useEffect(() => {\n if (isEditorReady) {\n editorRef.current.layout();\n }\n }, [isEditorReady]);\n\n // notify listeners that Monaco Editor instance has been created\n useEffect(() => {\n if (isEditorReady) {\n onMount(editorRef.current);\n }\n }, [isEditorReady, onMount]);\n\n // creating Editor instance as last effect\n useEffect(() => {\n if (!isEditorReady && containerRef.current) {\n createEditor();\n }\n }, [isEditorReady, createEditor]);\n\n // handle smooth resizing of Monaco Editor\n useSmoothResize({ eventName: 'editorcontainerresize', editorRef });\n\n return <div ref={containerRef} className=\"swagger-editor__editor-monaco\" />;\n};\n\nMonacoEditor.propTypes = {\n value: PropTypes.string.isRequired,\n language: PropTypes.string.isRequired,\n theme: PropTypes.string.isRequired,\n isReadOnly: PropTypes.bool,\n onMount: PropTypes.func,\n onWillUnmount: PropTypes.func,\n onChange: PropTypes.func,\n onEditorMarkersDidChange: PropTypes.func,\n};\n\nMonacoEditor.defaultProps = {\n isReadOnly: false,\n onMount: noop,\n onWillUnmount: noop,\n onChange: noop,\n onEditorMarkersDidChange: noop,\n};\n\nexport default MonacoEditor;\n","import React, { useCallback } from 'react';\nimport PropTypes from 'prop-types';\n\nimport MonacoEditor from './MonacoEditor.jsx';\n\nconst MonacoEditorContainer = ({ editorActions, editorSelectors, isReadOnly }) => {\n const theme = editorSelectors.selectTheme();\n const value = editorSelectors.selectContent();\n const language = editorSelectors.selectLanguage();\n\n const handleEditorDidMount = useCallback(\n (editor) => {\n editor.focus();\n editorActions.editorSetup(editor, 'monaco');\n },\n [editorActions]\n );\n\n const handleEditorWillUnmount = useCallback(\n (editor) => {\n editorActions.editorTearDown(editor, 'monaco');\n },\n [editorActions]\n );\n\n const handleChangeEditorValue = useCallback(\n (newValue) => {\n editorActions.setContentDebounced(newValue, 'editor');\n },\n [editorActions]\n );\n\n const handleEditorMarkersDidChange = useCallback(\n (markers) => {\n editorActions.setMarkers(markers);\n },\n [editorActions]\n );\n\n return (\n <MonacoEditor\n language={language}\n theme={theme}\n value={value}\n isReadOnly={isReadOnly}\n onChange={handleChangeEditorValue}\n onMount={handleEditorDidMount}\n onWillUnmount={handleEditorWillUnmount}\n onEditorMarkersDidChange={handleEditorMarkersDidChange}\n />\n );\n};\n\nMonacoEditorContainer.propTypes = {\n isReadOnly: PropTypes.bool,\n editorActions: PropTypes.shape({\n editorSetup: PropTypes.func.isRequired,\n editorTearDown: PropTypes.func.isRequired,\n setContentDebounced: PropTypes.func.isRequired,\n setMarkers: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectLanguage: PropTypes.func.isRequired,\n selectContent: PropTypes.func.isRequired,\n selectTheme: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nMonacoEditorContainer.defaultProps = {\n isReadOnly: false,\n};\n\nexport default MonacoEditorContainer;\n","import React, { useCallback } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ValidationPane = ({\n editorSelectors,\n editorActions,\n getComponent,\n alwaysDisplayHeading,\n onValidationClick,\n}) => {\n const markers = editorSelectors.selectMarkers();\n const ValidationTable = getComponent('ValidationTable');\n const showTable = alwaysDisplayHeading || markers.length > 0;\n\n const handleValidationClick = useCallback(\n (event, marker) => {\n const position = { lineNumber: marker.startLineNumber, column: marker.startColumn };\n\n onValidationClick(marker);\n editorActions.setPosition(position);\n },\n [onValidationClick, editorActions]\n );\n\n return (\n <div className=\"swagger-editor__validation-pane\">\n {showTable && <ValidationTable data={markers} onRowClick={handleValidationClick} />}\n </div>\n );\n};\n\nValidationPane.propTypes = {\n alwaysDisplayHeading: PropTypes.bool,\n editorActions: PropTypes.shape({\n setPosition: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectMarkers: PropTypes.func.isRequired,\n }).isRequired,\n getComponent: PropTypes.func.isRequired,\n onValidationClick: PropTypes.func,\n};\n\nValidationPane.defaultProps = {\n alwaysDisplayHeading: false,\n onValidationClick: () => {},\n};\n\nexport default ValidationPane;\n","import React, { memo } from 'react';\nimport PropTypes from 'prop-types';\n\nimport errorIcon from '../../assets/error-icon.svg';\nimport warningIcon from '../../assets/warning-icon.svg';\nimport infoIcon from '../../assets/info-icon.svg';\nimport hintIcon from '../../assets/hint-icon.svg';\n\nconst SeverityIcon = memo(({ severity }) => (\n <>\n {severity === 8 && <img src={errorIcon} title=\"Error\" alt=\"Error\" width=\"13\" height=\"13\" />}\n {severity === 4 && (\n <img src={warningIcon} title=\"Warning\" alt=\"Warning\" width=\"13\" height=\"13\" />\n )}\n {severity === 2 && <img src={infoIcon} title=\"Info\" alt=\"Info\" width=\"13\" height=\"13\" />}\n {severity === 1 && <img src={hintIcon} title=\"Hint\" alt=\"Hint\" width=\"13\" height=\"13\" />}\n </>\n));\n\nSeverityIcon.propTypes = {\n severity: PropTypes.oneOf([8, 4, 2, 1]).isRequired,\n};\n\nexport default SeverityIcon;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport SeverityIcon from './SeverityIcon.jsx';\n\nconst ValidationTable = ({ data, onRowClick }) => {\n return (\n <table role=\"table\" className=\"swagger-editor__validation-table\">\n <thead>\n <tr>\n <th role=\"columnheader\">Severity</th>\n <th role=\"columnheader\">Line</th>\n <th role=\"columnheader\">Code</th>\n <th role=\"columnheader\">Message</th>\n </tr>\n </thead>\n <tbody>\n {data.map((marker, index) => (\n // eslint-disable-next-line react/no-array-index-key\n <tr key={index} role=\"row button\" onClick={(event) => onRowClick(event, marker)}>\n <td role=\"cell\">\n <SeverityIcon severity={marker.severity} />\n </td>\n <td role=\"cell\">{marker.startLineNumber}</td>\n <td role=\"cell\">{marker.code}</td>\n <td role=\"cell\">{marker.message}</td>\n </tr>\n ))}\n </tbody>\n </table>\n );\n};\n\nValidationTable.propTypes = {\n data: PropTypes.oneOfType([PropTypes.array]).isRequired,\n onRowClick: PropTypes.func.isRequired,\n};\n\nexport default ValidationTable;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"LockIcon\"]: () => __WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__.LockIcon, [\"MoonIcon\"]: () => __WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__.MoonIcon, [\"SunIcon\"]: () => __WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__.SunIcon, [\"UnlockIcon\"]: () => __WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__.UnlockIcon });","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { MoonIcon, SunIcon } from '@primer/octicons-react';\n\nconst ThemeSelectionIcon = ({ editorSelectors, editorActions }) => {\n const theme = editorSelectors.selectTheme();\n\n const handleChange = (newTheme) => () => {\n editorActions.setTheme(newTheme);\n };\n\n return theme === 'se-vs-dark' ? (\n <div className=\"swagger-editor__generic-padding-thin-top-bottom\">\n <button\n type=\"button\"\n className=\"swagger-editor__editor-pane-bar-control\"\n onClick={handleChange('se-vs-light')}\n >\n <SunIcon size=\"small\" aria-label=\"Light theme\" />\n </button>\n </div>\n ) : (\n <div className=\"swagger-editor__generic-padding-thin-top-bottom\">\n <button\n type=\"button\"\n className=\"swagger-editor__editor-pane-bar-control\"\n onClick={handleChange('se-vs-dark')}\n >\n <MoonIcon size=\"small\" aria-label=\"Dark theme\" />\n </button>\n </div>\n );\n};\n\nThemeSelectionIcon.propTypes = {\n editorActions: PropTypes.shape({\n setTheme: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectTheme: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ThemeSelectionIcon;\n","import PropTypes from 'prop-types';\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst EditorPaneBarTopWrapper = (Original, system) => {\n const ThemeSelection = system.getComponent('ThemeSelection', true);\n\n const EditorPaneBarTop = ({ renderControls, ...rest }) => {\n return (\n <Original\n {...rest}\n renderControls={(controls) =>\n renderControls(\n <>\n <ThemeSelection />\n {controls}\n </>\n )\n }\n />\n );\n };\n EditorPaneBarTop.propTypes = {\n renderControls: PropTypes.func,\n };\n EditorPaneBarTop.defaultProps = {\n renderControls: (controls) => controls,\n };\n\n return EditorPaneBarTop;\n};\n\nexport default EditorPaneBarTopWrapper;\n","import PropTypes from 'prop-types';\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst EditorPaneBarBottomWrapper = (Original, system) => {\n const ValidationPane = system.getComponent('ValidationPane', true);\n\n const EditorPaneBarBottom = ({ renderChildren, ...rest }) => {\n return <Original {...rest} renderChildren={() => renderChildren(<ValidationPane />)} />;\n };\n EditorPaneBarBottom.propTypes = {\n renderChildren: PropTypes.func,\n };\n EditorPaneBarBottom.defaultProps = {\n renderChildren: (children) => children,\n };\n\n return EditorPaneBarBottom;\n};\n\nexport default EditorPaneBarBottomWrapper;\n","export const EDITOR_APPEND_MARKERS = 'editor_append_markers';\n\nexport const appendMarkers = (markers = []) => {\n return {\n type: EDITOR_APPEND_MARKERS,\n payload: markers,\n };\n};\n","export const EDITOR_CLEAR_MARKERS = 'editor_clear_markers';\n\nexport const clearMarkers = (source = 'apilint') => {\n return {\n type: EDITOR_CLEAR_MARKERS,\n payload: source,\n };\n};\n","export const EDITOR_SET_LANGUAGE = 'editor_set_language';\n\nexport const setLanguage = (languageId) => {\n return {\n payload: languageId,\n type: EDITOR_SET_LANGUAGE,\n };\n};\n","export const EDITOR_SET_MARKERS = 'editor_set_markers';\n\nexport const setMarkers = (markers = []) => {\n return {\n type: EDITOR_SET_MARKERS,\n payload: markers,\n };\n};\n","export const EDITOR_SET_POSITION_STARTED = 'editor_set_position_started';\nexport const EDITOR_SET_POSITION_SUCCESS = 'editor_set_position_success';\nexport const EDITOR_SET_POSITION_FAILURE = 'editor_set_position_failure';\n\nexport const setPositionStarted = ({ lineNumber, column }) => ({\n type: EDITOR_SET_POSITION_STARTED,\n payload: { lineNumber, column },\n});\n\nexport const setPositionSuccess = ({ lineNumber, column }) => ({\n type: EDITOR_SET_POSITION_SUCCESS,\n payload: { lineNumber, column },\n});\n\nexport const setPositionFailure = ({ lineNumber, column, error }) => ({\n type: EDITOR_SET_POSITION_FAILURE,\n error: true,\n payload: error,\n meta: { lineNumber, column },\n});\n\nexport const setPosition =\n ({ lineNumber = 0, column = 0 } = {}) =>\n (system) => {\n const { editorActions, editorSelectors } = system;\n\n editorActions.setPositionStarted({ lineNumber, column });\n\n try {\n const editor = editorSelectors.selectEditor();\n\n editor.revealPositionNearTop({ lineNumber, column });\n editor.setPosition({ lineNumber, column });\n editor.focus();\n\n return editorActions.setPositionSuccess({ lineNumber, column });\n } catch (error) {\n return editorActions.setPositionFailure({ error, lineNumber, column });\n }\n };\n","export const EDITOR_SET_THEME = 'editor_set_theme';\n\nexport const setTheme = (theme = 'my-vs-dark') => {\n return {\n payload: theme,\n type: EDITOR_SET_THEME,\n };\n};\n","import { fromJS, List } from 'immutable';\n\nimport { EDITOR_SET_THEME } from './actions/set-theme.js';\nimport { EDITOR_SET_MARKERS } from './actions/set-markers.js';\nimport { EDITOR_CLEAR_MARKERS } from './actions/clear-markers.js';\nimport { EDITOR_APPEND_MARKERS } from './actions/append-markers.js';\nimport { EDITOR_SET_LANGUAGE } from './actions/set-language.js';\n\nconst reducers = {\n [EDITOR_SET_THEME]: (state, action) => {\n return state.set('theme', action.payload);\n },\n [EDITOR_SET_MARKERS]: (state, action) => {\n return state.set('markers', fromJS(action.payload));\n },\n [EDITOR_APPEND_MARKERS]: (state, action) => {\n const markers = state.get('markers', List());\n return state.set('markers', markers.concat(fromJS(action.payload)));\n },\n [EDITOR_CLEAR_MARKERS]: (state, action) => {\n const { payload: source } = action;\n const markers = state\n .get('markers', List())\n .filterNot((marker) => marker.get('source') === source);\n return state.set('markers', markers);\n },\n [EDITOR_SET_LANGUAGE]: (state, action) => {\n return state.set('language', action.payload);\n },\n // this action type comes from editor-textarea plugin\n editor_setup: (state, action) => {\n if (!action.meta.includes('monaco')) {\n return state;\n }\n return state.set('id', action.payload.getId());\n },\n // this action type comes from editor-textarea plugin\n editor_tear_down: (state, action) => {\n if (!action.meta.includes('monaco')) {\n return state;\n }\n if (state.get('id') !== action.payload.getId()) {\n return state;\n }\n\n return state.delete('id');\n },\n};\n\nexport default reducers;\n","import * as monaco from 'monaco-editor';\nimport { createSelector } from 'reselect';\nimport { List } from 'immutable';\n\nexport const selectTheme = (state) => state.get('theme', 'se-vs-dark');\n\nexport const selectMarkers = createSelector(\n (state) => state.get('markers', List()),\n (markers) => markers.toJS()\n);\n\nexport const selectLanguage = (state) => state.get('language', 'plaintext');\n\nexport const selectEditor = () => (system) => {\n const id = system.editorSelectors.selectId();\n return monaco.editor.getEditors().find((editor) => editor.getId() === id);\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"registerMarkerDataProvider\"]: () => __WEBPACK_EXTERNAL_MODULE_monaco_marker_data_provider_40519126__.registerMarkerDataProvider });","import * as monaco from 'monaco-editor';\nimport { registerMarkerDataProvider as registerMarkerDataProviderGeneric } from 'monaco-marker-data-provider';\n\nexport const registerMarkerDataProvider = registerMarkerDataProviderGeneric.bind(\n globalThis,\n monaco\n);\n\n/**\n * Handy util for waiting util certain condition is met\n * or maximum waiting time is reached.\n *\n * @param condition\n * @param interval\n * @param maxWait\n * @returns {Promise<unknown>}\n */\nexport const waitUntil = async (condition, { interval = 100, maxWait = 2500 } = {}) => {\n return new Promise((resolve, reject) => {\n const intervalID = setInterval(async () => {\n if (!(await condition())) {\n return;\n }\n\n clearInterval(intervalID);\n resolve();\n }, interval);\n\n setTimeout(() => {\n clearInterval(intervalID);\n reject(new Error('Waited long enough!'));\n }, maxWait);\n });\n};\n\nexport const makeDeferred = () => {\n const deferred = {};\n deferred.promise = new Promise((resolve, reject) => {\n deferred.resolve = resolve;\n deferred.reject = reject;\n });\n return deferred;\n};\n","import { makeDeferred } from './fn.js';\n\nexport * as monaco from 'monaco-editor';\n\nexport const monacoInitializationDeferred = makeDeferred();\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"IStorageService\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_services_3b1ec6e6__.IStorageService, [\"StandaloneServices\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_services_3b1ec6e6__.StandaloneServices, [\"initialize\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_services_3b1ec6e6__.initialize });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_service_override_languages_39ca0d84__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"initialize\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_extensions_dfa53f5d__.initialize });","import {\n initialize as initializeMonacoServices,\n StandaloneServices,\n IStorageService,\n} from 'vscode/services';\nimport getLanguagesServiceOverride from 'vscode/service-override/languages';\nimport { initialize as initializeVscodeExtensions } from 'vscode/extensions';\n\nfunction afterLoad(system) {\n const InitPhase = {\n UNINITIALIZED: 'UNINITIALIZED',\n IN_PROGRESS: 'IN_PROGRESS',\n INITIALIZED: 'INITIALIZED',\n };\n\n // setup monaco environment\n globalThis.MonacoEnvironment = {\n initPhase: InitPhase.UNINITIALIZED,\n baseUrl: document.baseURI || location.href, // eslint-disable-line no-restricted-globals\n getWorkerUrl() {\n return new URL(process.env.REACT_APP_APIDOM_WORKER_FILENAME, this.baseUrl).toString();\n },\n ...globalThis.MonacoEnvironment, // this will allow to override the base uri for loading Web Workers\n };\n\n /**\n * Monaco standalone services can be initialized only once.\n * Standalone services cannot be disposed of when no longer needed.\n * Individual services can be disposed of separately, but if one decides\n * to do that, `initialize` function will not able to initialize them again.\n *\n * Extensions needs to initialized explicitly as well.\n */\n if (globalThis.MonacoEnvironment.initPhase === InitPhase.UNINITIALIZED) {\n globalThis.MonacoEnvironment.initPhase = InitPhase.IN_PROGRESS;\n\n (async () => {\n try {\n await Promise.all([\n initializeMonacoServices({\n ...getLanguagesServiceOverride(),\n }),\n initializeVscodeExtensions(),\n ]);\n StandaloneServices.get(IStorageService).store('expandSuggestionDocs', true, 0, 0);\n system.monacoInitializationDeferred().resolve();\n } catch (error) {\n system.monacoInitializationDeferred().reject(error);\n } finally {\n globalThis.MonacoEnvironment.initPhase = InitPhase.INITIALIZED;\n }\n })();\n }\n}\n\nexport default afterLoad;\n","import MonacoEditorContainer from './components/MonacoEditor/MonacoEditorContainer.jsx';\nimport ValidationPane from './components/ValidationPane/ValidationPane.jsx';\nimport ValidationTable from './components/ValidationTable/ValidationTable.jsx';\nimport ThemeSelectionIcon from './components/ThemeSelectionIcon.jsx';\nimport EditorPaneBarTopWrapper from './wrap-components/EditorPaneBarTopWrapper.jsx';\nimport EditorPaneBarBottomWrapper from './wrap-components/EditorPaneBarBottomWrapper.jsx';\nimport { appendMarkers } from './actions/append-markers.js';\nimport { clearMarkers } from './actions/clear-markers.js';\nimport { setLanguage } from './actions/set-language.js';\nimport { setMarkers } from './actions/set-markers.js';\nimport {\n setPosition,\n setPositionStarted,\n setPositionSuccess,\n setPositionFailure,\n} from './actions/set-position.js';\nimport { setTheme } from './actions/set-theme.js';\nimport reducers from './reducers.js';\nimport { selectTheme, selectMarkers, selectLanguage, selectEditor } from './selectors.js';\nimport { registerMarkerDataProvider, waitUntil } from './fn.js';\nimport { monaco, monacoInitializationDeferred } from './root-injects.js';\nimport afterLoad from './after-load.js';\n\nconst EditorMonacoPlugin = () => ({\n afterLoad,\n rootInjects: {\n monaco,\n monacoInitializationDeferred: () => monacoInitializationDeferred,\n },\n components: {\n Editor: MonacoEditorContainer,\n MonacoEditor: MonacoEditorContainer,\n ValidationPane,\n ValidationTable,\n ThemeSelection: ThemeSelectionIcon,\n },\n wrapComponents: {\n EditorPaneBarTop: EditorPaneBarTopWrapper,\n EditorPaneBarBottom: EditorPaneBarBottomWrapper,\n },\n statePlugins: {\n editor: {\n actions: {\n setTheme,\n setMarkers,\n appendMarkers,\n clearMarkers,\n setLanguage,\n\n setPosition,\n setPositionStarted,\n setPositionSuccess,\n setPositionFailure,\n },\n reducers,\n selectors: {\n selectTheme,\n selectMarkers,\n selectLanguage,\n selectEditor,\n },\n },\n },\n fn: {\n registerMarkerDataProvider,\n waitUntil,\n },\n});\n\nexport default EditorMonacoPlugin;\n","export default function _classPrivateFieldBase(receiver, privateKey) {\n if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) {\n throw new TypeError(\"attempted to use private field on non-instance\");\n }\n return receiver;\n}","var id = 0;\nexport default function _classPrivateFieldKey(name) {\n return \"__private_\" + id++ + \"_\" + name;\n}","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"languages\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode__.languages });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"ModesRegistry\"]: () => __WEBPACK_EXTERNAL_MODULE_monaco_editor_esm_vs_editor_common_languages_modesRegistry_js_5f33ab3c__.ModesRegistry });","import * as monaco from 'monaco-editor';\n\nexport const languageId = 'apidom';\n\nexport const conf = {\n comments: {\n lineComment: '#',\n },\n brackets: [\n ['{', '}'],\n ['[', ']'],\n ['(', ')'],\n ],\n autoClosingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '\"', close: '\"' },\n { open: \"'\", close: \"'\" },\n ],\n surroundingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '\"', close: '\"' },\n { open: \"'\", close: \"'\" },\n ],\n\n onEnterRules: [\n {\n beforeText: /:\\s*$/,\n action: { indentAction: monaco.languages.IndentAction.Indent },\n },\n {\n beforeText: /-\\s+\\w*$/,\n action: { indentAction: monaco.languages.IndentAction.None, appendText: '- ' },\n },\n {\n beforeText: /-\\s*$/,\n action: { indentAction: monaco.languages.IndentAction.None, appendText: '- ' },\n },\n ],\n};\n\nexport const language = {\n // set defaultToken to invalid to see what you do not tokenize yet\n defaultToken: 'invalid',\n keywords: ['swagger', 'info', 'host', 'basePath', 'tags', 'schemes', 'paths', 'externalDocs'],\n typeKeywords: ['description', 'title', 'termsOfService'],\n escapes: /\\\\(?:[abfnrtv\\\\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,\n // the main tokenizer for our languages\n tokenizer: {\n root: [\n // identifiers and keywords\n [\n /[a-zA-Z_$][\\w$]*/,\n {\n cases: {\n '@keywords': { token: 'keyword' },\n '@typeKeywords': { token: 'type' },\n '@default': 'identifier',\n },\n },\n ],\n // whitespace\n { include: '@whitespace' },\n // strings for todos\n [/\"([^\"\\\\]|\\\\.)*$/, 'string.invalid'], // non-terminated string\n [/\"/, 'string', '@string'],\n ],\n whitespace: [[/[ \\t\\r\\n]+/, '']],\n string: [\n [/[^\\\\\"]+/, 'string'],\n [/@escapes/, 'string.escape'],\n [/\\\\./, 'string.escape.invalid'],\n [/\"/, 'string', '@pop'],\n ],\n },\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createConverter\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_languageclient_lib_common_codeConverter_js_b2d3adcf__.createConverter });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createConverter\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_languageclient_lib_common_protocolConverter_js_779c1346__.createConverter });","import * as monaco from 'monaco-editor';\n\nconst STOP_WHEN_IDLE_FOR = 2 * 60 * 1000; // 2min\n\nexport default class WorkerManager {\n #defaults = null;\n\n #worker = null;\n\n #client = null;\n\n #idleCheckInterval;\n\n #lastUsedTime = 0;\n\n constructor(defaults) {\n this.#defaults = defaults;\n this.#idleCheckInterval = setInterval(() => this.#checkIfIdle(), 30 * 1000);\n }\n\n #stopWorker() {\n if (this.#worker) {\n this.#worker.dispose();\n this.#worker = null;\n }\n this.#client = null;\n }\n\n #checkIfIdle() {\n if (!this.#worker) {\n return;\n }\n\n const timePassedSinceLastUsed = Date.now() - this.#lastUsedTime;\n if (timePassedSinceLastUsed > STOP_WHEN_IDLE_FOR) {\n this.#stopWorker();\n }\n }\n\n async #getClient() {\n this.#lastUsedTime = Date.now();\n\n if (!this.#client) {\n this.#worker = monaco.editor.createWebWorker({\n moduleId: 'ApiDOMWorker',\n label: this.#defaults.getLanguageId(),\n createData: {\n ...this.#defaults.getWorkerOptions().data,\n languageId: this.#defaults.getLanguageId(),\n apiDOMContext: this.#defaults.getWorkerOptions().apiDOMContext,\n customWorkerPath: this.#defaults.getWorkerOptions().customWorkerPath,\n },\n });\n\n this.#client = this.#worker.getProxy();\n }\n return this.#client;\n }\n\n async getLanguageServiceWorker(...resources) {\n const client = await this.#getClient();\n await this.#worker.withSyncedResources(resources);\n return client;\n }\n\n dispose() {\n clearInterval(this.#idleCheckInterval);\n this.#stopWorker();\n }\n}\n","class Provider {\n #worker;\n\n #codeConverter;\n\n #protocolConverter;\n\n constructor(worker, codeConverter, protocolConverter) {\n this.#worker = worker;\n this.#codeConverter = codeConverter;\n this.#protocolConverter = protocolConverter;\n }\n\n get worker() {\n return this.#worker;\n }\n\n get codeConverter() {\n return this.#codeConverter;\n }\n\n get protocolConverter() {\n return this.#protocolConverter;\n }\n\n dispose() {\n this.#worker = null;\n this.#codeConverter = null;\n this.#protocolConverter = null;\n }\n}\n\nexport default Provider;\n","import * as monaco from 'monaco-editor';\nimport { languages as vscodeLanguages } from 'vscode';\n\nimport Provider from './Provider.js';\nimport * as apidom from '../apidom.js';\n\nclass DiagnosticsProvider extends Provider {\n #listener = [];\n\n #disposables = [];\n\n #diagnosticCollection = null;\n\n #system = null;\n\n constructor(worker, codeConverter, protocolConverter, getSystem) {\n super(worker, codeConverter, protocolConverter);\n this.#system = getSystem();\n\n const onModelAdded = (model) => {\n if (model.getLanguageId() !== apidom.languageId) {\n return;\n }\n\n let handle;\n const changeSubscription = model.onDidChangeContent(() => {\n /**\n * Here we are Debouncing the user changes, so everytime a new change is done,\n * we wait some time before validating, otherwise if the user is still typing, we cancel the change.\n */\n clearTimeout(handle);\n handle = setTimeout(() => this.#validate(model), 300);\n });\n\n this.#listener[model.uri.toString()] = {\n dispose() {\n changeSubscription.dispose();\n clearTimeout(handle);\n },\n };\n\n this.#validate(model);\n };\n\n const onModelRemoved = (model) => {\n this.#diagnosticCollection.set(model.uri, []);\n const key = model.uri.toString();\n if (this.#listener[key]) {\n this.#listener[key].dispose();\n delete this.#listener[key];\n }\n };\n\n const onModelLanguageChanged = (model) => {\n const key = model.uri.toString();\n const hasChangedToApiDOM = model.getLanguageId() === apidom.languageId;\n const isModelSubscribed = !!this.#listener[key];\n\n if (!isModelSubscribed && hasChangedToApiDOM) {\n onModelAdded(model);\n } else if (isModelSubscribed && !hasChangedToApiDOM) {\n onModelRemoved(model);\n }\n };\n\n const onVscodeInitialized = () => {\n this.#diagnosticCollection = vscodeLanguages.createDiagnosticCollection(apidom.languageId);\n return this.#diagnosticCollection;\n };\n\n this.#disposables.push(monaco.editor.onDidCreateModel(onModelAdded));\n this.#disposables.push(monaco.editor.onDidChangeModelLanguage(onModelLanguageChanged));\n this.#disposables.push(monaco.editor.onWillDisposeModel(onModelRemoved));\n this.#system.monacoInitializationDeferred().promise.then(() => {\n this.#disposables.push(onVscodeInitialized());\n });\n }\n\n async #getDiagnostics(model) {\n const worker = await this.worker(model.uri);\n\n if (model.isDisposed()) {\n // model was disposed in the meantime\n return undefined;\n }\n\n try {\n return await worker.doValidation(model.uri.toString());\n } catch {\n return undefined;\n }\n }\n\n async #validate(model) {\n const diagnostics = await this.#getDiagnostics(model);\n\n this.#diagnosticCollection?.set(\n model.uri,\n await this.protocolConverter.asDiagnostics(diagnostics)\n );\n }\n\n dispose() {\n super.dispose();\n this.#disposables.forEach((disposable) => disposable?.dispose());\n this.#disposables = [];\n this.#system = null;\n }\n}\n\nexport default DiagnosticsProvider;\n","import Provider from './Provider.js';\n\nclass HoverProvider extends Provider {\n async #getHover(vscodeDocument, position) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.doHover(\n vscodeDocument.uri.toString(),\n this.codeConverter.asPosition(position)\n );\n } catch {\n return undefined;\n }\n }\n\n async provideHover(vscodeDocument, position) {\n const hover = await this.#getHover(vscodeDocument, position);\n\n return this.protocolConverter.asHover(hover);\n }\n}\n\nexport default HoverProvider;\n","import Provider from './Provider.js';\n\nclass DocumentLinkProvider extends Provider {\n async #getLinks(vscodeDocument) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.doLinks(vscodeDocument.uri.toString());\n } catch {\n return undefined;\n }\n }\n\n async provideDocumentLinks(vscodeDocument) {\n const links = await this.#getLinks(vscodeDocument);\n const linksWithNonEmptyRanges = links.filter(\n (link) => !this.protocolConverter.asRange(link.range).isEmpty\n );\n\n return this.protocolConverter.asDocumentLinks(linksWithNonEmptyRanges);\n }\n\n // eslint-disable-next-line class-methods-use-this\n async resolveDocumentLink(link) {\n return link;\n }\n}\n\nexport default DocumentLinkProvider;\n","import Provider from './Provider.js';\n\nclass CompletionItemProvider extends Provider {\n async #getCompletionList(vscodeDocument, position) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.doComplete(\n vscodeDocument.uri.toString(),\n this.codeConverter.asPosition(position)\n );\n } catch {\n return undefined;\n }\n }\n\n async provideCompletionItems(vscodeDocument, position) {\n const completionList = await this.#getCompletionList(vscodeDocument, position);\n\n return this.protocolConverter.asCompletionResult(completionList);\n }\n}\n\nexport default CompletionItemProvider;\n","import Provider from './Provider.js';\n\nclass DocumentSemanticTokensProvider extends Provider {\n async #getSemanticTokens(vscodeDocument) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.findSemanticTokens(vscodeDocument.uri.toString());\n } catch {\n return undefined;\n }\n }\n\n async provideDocumentSemanticTokens(vscodeDocument) {\n const semanticTokens = await this.#getSemanticTokens(vscodeDocument);\n\n return this.protocolConverter.asSemanticTokens(semanticTokens);\n }\n}\n\nexport default DocumentSemanticTokensProvider;\n","import Provider from './Provider.js';\n\nclass CodeActionsProvider extends Provider {\n async #getCodeActionList(vscodeDocument, diagnosticList) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.doCodeActions(vscodeDocument.uri.toString(), diagnosticList);\n } catch {\n return undefined;\n }\n }\n\n #maybeConvert(codeActionList) {\n if (typeof codeActionList === 'undefined') {\n return codeActionList;\n }\n\n return this.protocolConverter.asCodeActionResult(codeActionList);\n }\n\n async provideCodeActions(vscodeDocument, range, ctx) {\n const diagnosticList = await this.codeConverter.asDiagnostics(ctx.diagnostics);\n const codeActionList = await this.#getCodeActionList(vscodeDocument, diagnosticList);\n\n return this.#maybeConvert(codeActionList);\n }\n}\n\nexport default CodeActionsProvider;\n","import Provider from './Provider.js';\n\nclass DocumentSymbolProvider extends Provider {\n async #getSymbolInformationList(vscodeDocument) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.findDocumentSymbols(vscodeDocument.uri.toString());\n } catch {\n return undefined;\n }\n }\n\n async provideDocumentSymbols(vscodeDocument) {\n const symbolInformationList = await this.#getSymbolInformationList(vscodeDocument);\n\n return this.protocolConverter.asSymbolInformations(symbolInformationList);\n }\n}\n\nexport default DocumentSymbolProvider;\n","import Provider from './Provider.js';\n\nclass DefinitionProvider extends Provider {\n async #getLocation(vscodeDocument, position) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.provideDefinition(\n vscodeDocument.uri.toString(),\n this.codeConverter.asPosition(position)\n );\n } catch {\n return undefined;\n }\n }\n\n async provideDefinition(vscodeDocument, position) {\n const location = await this.#getLocation(vscodeDocument, position);\n\n return this.protocolConverter.asDefinitionResult(location);\n }\n}\n\nexport default DefinitionProvider;\n","import { languages as vscodeLanguages } from 'vscode';\nimport { createConverter as createCodeConverter } from 'vscode-languageclient/lib/common/codeConverter.js';\nimport { createConverter as createProtocolConverter } from 'vscode-languageclient/lib/common/protocolConverter.js';\n\nimport WorkerManager from './WorkerManager.js';\nimport DiagnosticsProvider from './providers/DiagnosticsProvider.js';\nimport HoverProvider from './providers/HoverProvider.js';\nimport DocumentLinkProvider from './providers/DocumentLinkProvider.js';\nimport CompletionItemProvider from './providers/CompletionItemProvider.js';\nimport DocumentSemanticTokensProvider from './providers/DocumentSemanticTokensProvider.js';\nimport CodeActionsProvider from './providers/CodeActionsProvider.js';\nimport DocumentSymbolProvider from './providers/DocumentSymbolProvider.js';\nimport DefinitionProvider from './providers/DefinitionProvider.js';\n\nlet apidomWorker;\n\nconst disposeAll = (disposables) => {\n while (disposables.length) {\n disposables.pop().dispose();\n }\n};\n\nconst asDisposable = (disposables) => {\n return { dispose: () => disposeAll(disposables) };\n};\n\nexport const getWorker = () => {\n if (!apidomWorker) {\n throw new Error('ApiDOM not registered');\n }\n return apidomWorker;\n};\n\nconst registerProviders = ({ languageId, providers, dependencies }) => {\n disposeAll(providers);\n\n const { worker, codeConverter, protocolConverter, getSystem } = dependencies;\n const args = [worker, codeConverter, protocolConverter];\n const system = getSystem();\n\n /**\n * Customized providers needs to be registered before monaco editor is created.\n */\n providers.push(new DiagnosticsProvider(...args, getSystem));\n\n (async () => {\n await system.monacoInitializationDeferred().promise;\n\n providers.push(vscodeLanguages.registerHoverProvider(languageId, new HoverProvider(...args)));\n providers.push(\n vscodeLanguages.registerDocumentLinkProvider(languageId, new DocumentLinkProvider(...args))\n );\n providers.push(\n vscodeLanguages.registerCompletionItemProvider(\n languageId,\n new CompletionItemProvider(...args)\n )\n );\n providers.push(\n vscodeLanguages.registerCodeActionsProvider(languageId, new CodeActionsProvider(...args))\n );\n providers.push(\n vscodeLanguages.registerDocumentSymbolProvider(\n languageId,\n new DocumentSymbolProvider(...args)\n )\n );\n providers.push(\n vscodeLanguages.registerDefinitionProvider(languageId, new DefinitionProvider(...args))\n );\n\n const workerService = await worker();\n const semanticTokensLegend = await workerService.getSemanticTokensLegend();\n\n providers.push(\n vscodeLanguages.registerDocumentSemanticTokensProvider(\n languageId,\n new DocumentSemanticTokensProvider(...args),\n semanticTokensLegend\n )\n );\n })();\n system.monacoInitializationDeferred().promise.then(() => {});\n\n return providers;\n};\n\nexport function setupMode(defaults) {\n const disposables = [];\n const providers = [];\n const codeConverter = createCodeConverter();\n const protocolConverter = createProtocolConverter(undefined, true, true);\n\n // setup ApiDOM worker\n const client = new WorkerManager(defaults);\n const worker = async (...uris) => client.getLanguageServiceWorker(...uris);\n apidomWorker = worker;\n disposables.push({\n dispose() {\n apidomWorker = null;\n },\n });\n disposables.push(client);\n\n /**\n * Register ApiDOM providers.\n * We're already assuming here that extensions have\n * been successfully initialized.\n */\n disposables.push(\n asDisposable(\n registerProviders({\n languageId: defaults.getLanguageId(),\n providers,\n dependencies: {\n worker,\n codeConverter,\n protocolConverter,\n getSystem: defaults.getModeConfiguration().getSystem,\n },\n })\n )\n );\n\n return asDisposable(disposables);\n}\n","import YAML from 'js-yaml';\n\nimport { getWorker } from '../apidom-mode.js';\n\nconst createDereferenceActionDescriptor = ({ getSystem }) => ({\n id: 'swagger.editor.apidomDereference',\n label: 'Resolve document',\n async run(editor) {\n const system = getSystem();\n const isContentJSON = system.editorSelectors.selectIsContentFormatJSON();\n const isContentYAML = system.editorSelectors.selectIsContentFormatYAML();\n\n if (!isContentJSON && !isContentYAML) return; // nothing to do here\n\n const model = editor.getModel();\n const worker = await getWorker()(model.uri);\n const dereferenced = await worker.doDeref(model.uri.toString(), {\n baseURI: globalThis.document.baseURI || globalThis.location.href,\n format: isContentJSON ? 0 : isContentYAML ? 1 : 'unknown', // eslint-disable-line no-nested-ternary\n });\n\n if (isContentYAML) {\n const nicelyFormattedYAML = YAML.dump(YAML.load(dereferenced));\n system.editorActions.setContent(nicelyFormattedYAML);\n } else if (isContentJSON) {\n system.editorActions.setContent(dereferenced);\n }\n },\n});\n\nexport default createDereferenceActionDescriptor;\n","import * as monaco from 'monaco-editor';\nimport { languages as vscodeLanguages } from 'vscode';\nimport { ModesRegistry } from 'monaco-editor/esm/vs/editor/common/languages/modesRegistry.js';\n\nimport * as apidom from './apidom.js';\nimport { setupMode } from './apidom-mode.js';\nimport createDereferenceActionDescriptor from './actions/dereference.js';\n\nexport { getWorker } from './apidom-mode.js';\n\nconst modeConfigurationDefault = {};\n\nconst workerOptionsDefault = {\n customWorkerPath: undefined,\n data: {},\n};\n\nclass LanguageServiceDefaultsImpl {\n #languageId;\n\n #workerOptions;\n\n #modeConfiguration;\n\n constructor(workerOptions, modeConfiguration) {\n this.setLanguageId(apidom.languageId);\n this.setWorkerOptions(workerOptions);\n this.setModeConfiguration(modeConfiguration);\n }\n\n getLanguageId() {\n return this.#languageId;\n }\n\n setLanguageId(languageId) {\n this.#languageId = languageId;\n }\n\n getWorkerOptions() {\n return this.#workerOptions;\n }\n\n setWorkerOptions(workerOptions) {\n this.#workerOptions = workerOptions || JSON.parse(JSON.stringify(workerOptionsDefault));\n }\n\n getModeConfiguration() {\n return this.#modeConfiguration;\n }\n\n setModeConfiguration(modeConfiguration) {\n this.#modeConfiguration =\n modeConfiguration || JSON.parse(JSON.stringify(modeConfigurationDefault));\n }\n}\n\nexport const apidomDefaults = new LanguageServiceDefaultsImpl(\n workerOptionsDefault,\n modeConfigurationDefault\n);\n\nexport const isLanguageRegistered = () => {\n const languages = ModesRegistry.getLanguages().map(({ id }) => id);\n return languages.includes(apidom.languageId);\n};\n\nconst lazyMonacoContribution = ({ createData, system }) => {\n const disposables = [];\n\n // register apidom language\n disposables.push(\n /**\n * This code uses ModesRegistry API instead of monaco.languages API.\n * The reason is that monaco.languages API is using ModesRegistry under the hood\n * but doesn't return disposables produced by ModesRegistry. By using ModesRegistry\n * directly we're able to obtain disposables.\n */\n ModesRegistry.registerLanguage({\n id: apidom.languageId,\n })\n );\n\n system.monacoInitializationDeferred().promise.then(() => {\n disposables.push(vscodeLanguages.setLanguageConfiguration(apidom.languageId, apidom.conf));\n });\n\n disposables.push(monaco.languages.setMonarchTokensProvider(apidom.languageId, apidom.language));\n\n // setup apidom mode\n disposables.push(\n monaco.editor.onDidCreateEditor(() => {\n const { customApiDOMWorkerPath: customWorkerPath, apiDOMContext, ...data } = createData;\n const defaults = new LanguageServiceDefaultsImpl(\n { apiDOMContext, customWorkerPath, data },\n { getSystem: system.getSystem }\n );\n\n disposables.push(setupMode(defaults));\n })\n );\n\n // setup custom actions\n disposables.push(\n monaco.editor.onDidCreateEditor((editor) => {\n disposables.push(\n monaco.editor.onDidCreateModel(() => {\n const dereferenceActionDescriptor = createDereferenceActionDescriptor(system);\n if (!editor.getAction(dereferenceActionDescriptor.id)) {\n disposables.push(editor.addAction(dereferenceActionDescriptor));\n }\n })\n );\n })\n );\n\n // disposing of all allocated disposables\n disposables.push(\n monaco.editor.onDidCreateEditor((editor) => {\n disposables.push(\n editor.onDidDispose(() => {\n disposables.forEach((disposable) => disposable.dispose());\n disposables.length = 0;\n })\n );\n })\n );\n\n // setup monaco environment\n globalThis.MonacoEnvironment = {\n // expect editor-monaco plugin to have already executed\n ...globalThis.MonacoEnvironment,\n getWorkerUrl(moduleId, label) {\n if (label === apidom.languageId) {\n return new URL(process.env.REACT_APP_APIDOM_WORKER_FILENAME, this.baseUrl).toString();\n }\n return new URL(process.env.REACT_APP_EDITOR_WORKER_FILENAME, this.baseUrl).toString();\n },\n };\n};\n\nexport default lazyMonacoContribution;\n","import lazyMonacoContribution, {\n isLanguageRegistered,\n apidomDefaults,\n} from './language/monaco.contribution.js';\n\nconst makeAfterLoad =\n ({ createData = {} } = {}) =>\n (system) => {\n if (isLanguageRegistered()) return;\n\n lazyMonacoContribution({ createData, system });\n system.editorActions.setLanguage(apidomDefaults.getLanguageId());\n };\n\nexport default makeAfterLoad;\n","export const EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_STARTED =\n 'editor_monaco_language_apidom_get_json_pointer_position_started';\n\nexport const EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_SUCCESS =\n 'editor_monaco_language_apidom_get_json_pointer_position_success';\n\nexport const EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_FAILURE =\n 'editor_monaco_language_apidom_get_json_pointer_position_failure';\n\nexport const getJsonPointerPositionStarted = ({ jsonPointer }) => ({\n type: EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_STARTED,\n payload: jsonPointer,\n});\n\nexport const getJsonPointerPositionSuccess = ({ position, jsonPointer }) => ({\n type: EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_SUCCESS,\n payload: position,\n meta: { jsonPointer },\n});\n\nexport const getJsonPointerPositionFailure = ({ error, jsonPointer }) => ({\n type: EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_FAILURE,\n error: true,\n payload: error,\n meta: { jsonPointer },\n});\n\nexport const getJsonPointerPosition = (jsonPointer) => async (system) => {\n const { editorActions, editorSelectors, fn } = system;\n\n editorActions.getJsonPointerPositionStarted({ jsonPointer });\n\n try {\n const editor = editorSelectors.selectEditor();\n const model = editor.getModel();\n const worker = await fn.getApiDOMWorker()(model.uri);\n const { line, character } = await worker.getJsonPointerPosition(\n model.uri.toString(),\n jsonPointer\n );\n const position = { lineNumber: line, column: character - 1 };\n\n return editorActions.getJsonPointerPositionSuccess({ position, jsonPointer });\n } catch (error) {\n return editorActions.getJsonPointerPositionFailure({ error, jsonPointer });\n }\n};\n","import makeAfterLoad from './after-load.js';\nimport {\n getJsonPointerPosition,\n getJsonPointerPositionStarted,\n getJsonPointerPositionSuccess,\n getJsonPointerPositionFailure,\n} from './actions/get-json-pointer-position.js';\nimport { getWorker } from './language/monaco.contribution.js';\n\nconst EditorMonacoLanguageApiDOMPlugin = (opts = {}) => {\n const isCalledWithGetSystem = typeof opts.getSystem === 'function';\n const options = isCalledWithGetSystem ? {} : opts;\n const plugin = () => ({\n afterLoad: makeAfterLoad(options),\n fn: {\n getApiDOMWorker: getWorker,\n },\n statePlugins: {\n editor: {\n actions: {\n getJsonPointerPosition,\n getJsonPointerPositionStarted,\n getJsonPointerPositionSuccess,\n getJsonPointerPositionFailure,\n },\n },\n },\n });\n\n return isCalledWithGetSystem ? plugin(opts) : plugin;\n};\n\nexport default EditorMonacoLanguageApiDOMPlugin;\n","import PropTypes from 'prop-types';\n\nconst EditorPreviewPane = ({ getComponent }) => {\n const EditorPreview = getComponent('EditorPreview', true);\n\n return (\n <div className=\"swagger-editor__editor-preview-pane\">\n <EditorPreview />\n </div>\n );\n};\n\nEditorPreviewPane.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default EditorPreviewPane;\n","const EditorPreviewFallback = () => (\n <div className=\"swagger-editor__editor-preview-fallback swagger-ui\">\n <div className=\"version-pragma\">\n <div className=\"version-pragma__message version-pragma__message--missing\">\n <div>\n <h3>Unable to render editor content</h3>\n <p>Content was not recognized as supported language in particular format.</p>\n </div>\n </div>\n </div>\n </div>\n);\n\nexport default EditorPreviewFallback;\n","import EditorPreviewPane from './components/EditorPreviewPane.jsx';\nimport EditorPreviewFallback from './components/EditorPreviewFallback.jsx';\n\nconst EditorPreviewPlugin = () => ({\n components: {\n EditorPreviewPane,\n EditorPreviewFallback,\n EditorPreview: EditorPreviewFallback,\n },\n});\n\nexport default EditorPreviewPlugin;\n","import { useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPreviewSwaggerUI = ({ getComponent, editorPreviewSwaggerUIActions }) => {\n const BaseLayout = getComponent('BaseLayout', true); // accessed from swagger-ui\n\n useEffect(() => {\n return () => {\n editorPreviewSwaggerUIActions.previewUnmounted();\n };\n }, [editorPreviewSwaggerUIActions]);\n\n return (\n <div className=\"swagger-editor__editor-preview-swagger-ui\">\n <BaseLayout />\n </div>\n );\n};\n\nEditorPreviewSwaggerUI.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewSwaggerUIActions: PropTypes.shape({\n previewUnmounted: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default EditorPreviewSwaggerUI;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ });","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { List } from 'immutable';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nimport JumpIcon from '../assets/jump-icon.svg';\n\nconst JumpToPath = ({ path, content, showButton, editorPreviewSwaggerUIActions }) => {\n const handleJumpToPath = (e) => {\n e.stopPropagation();\n editorPreviewSwaggerUIActions.jumpToPath(path.toJS());\n };\n\n const jumpToPathButton = (\n <div role=\"button\" tabIndex={0} onClick={handleJumpToPath} onKeyDown={handleJumpToPath}>\n <img\n src={JumpIcon}\n className=\"view-line-link\"\n title=\"Jump to definition\"\n alt=\"Jump to path\"\n />\n </div>\n );\n\n if (content) {\n // if we were given content to render, wrap it\n return (\n <span role=\"button\" tabIndex={0} onClick={handleJumpToPath} onKeyDown={handleJumpToPath}>\n {showButton && jumpToPathButton}\n {content}\n </span>\n );\n }\n return <div>{jumpToPathButton}</div>;\n};\n\nJumpToPath.propTypes = {\n path: ImmutablePropTypes.listOf(PropTypes.string),\n content: PropTypes.element,\n showButton: PropTypes.bool,\n editorPreviewSwaggerUIActions: PropTypes.shape({\n jumpToPath: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nJumpToPath.defaultProps = {\n path: List(),\n content: null,\n showButton: false,\n};\n\nexport default JumpToPath;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPreviewWrapper = (Original, system) => {\n const EditorPreview = ({ getComponent, editorSelectors }) => {\n const EditorPreviewSwaggerUI = getComponent('EditorPreviewSwaggerUI', true);\n const isOpenAPI = editorSelectors.selectIsContentTypeOpenAPI();\n\n if (isOpenAPI) {\n return <EditorPreviewSwaggerUI />;\n }\n\n return (\n <Original {...system} /> // eslint-disable-line react/jsx-props-no-spreading\n );\n };\n\n EditorPreview.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeOpenAPI: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI31x: PropTypes.func.isRequired,\n }).isRequired,\n };\n\n return EditorPreview;\n};\n\nexport default EditorPreviewWrapper;\n","export const EDITOR_PREVIEW_SWAGGER_UI_PREVIEW_UNMOUNTED =\n 'editor_preview_swagger_ui_preview_unmounted';\n\nexport const previewUnmounted = () => ({\n type: EDITOR_PREVIEW_SWAGGER_UI_PREVIEW_UNMOUNTED,\n});\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"compile\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_json_pointer_c5d352f4__.compile });","import { compile } from '@swagger-api/apidom-json-pointer';\n\nexport const EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_STARTED =\n 'editor_preview_swagger_ui_jump_to_path_started';\nexport const EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_SUCCESS =\n 'editor_preview_swagger_ui_jump_to_path_success';\nexport const EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_FAILURE =\n 'editor_preview_swagger_ui_jump_to_path_failure';\n\nexport const jumpToPathStarted = ({ path }) => ({\n type: EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_STARTED,\n payload: path,\n});\n\nexport const jumpToPathSuccess = ({ position, path, jsonPointer }) => ({\n type: EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_SUCCESS,\n payload: position,\n meta: { jsonPointer, path },\n});\n\nexport const jumpToPathFailure = ({ error, path, jsonPointer }) => ({\n type: EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_FAILURE,\n error: true,\n payload: error,\n meta: { jsonPointer, path },\n});\n\nexport const jumpToPath = (path) => async (system) => {\n const { editorActions, editorPreviewSwaggerUIActions } = system;\n let jsonPointer = '';\n\n editorPreviewSwaggerUIActions.jumpToPathStarted({ path });\n\n try {\n jsonPointer = compile(path);\n const getJsonPointerPositionFSA = await editorActions.getJsonPointerPosition(jsonPointer);\n\n if (getJsonPointerPositionFSA.error) {\n throw getJsonPointerPositionFSA;\n }\n\n const { payload: position } = getJsonPointerPositionFSA;\n const setPositionActionFSA = await editorActions.setPosition(position);\n\n if (setPositionActionFSA.error) {\n throw setPositionActionFSA;\n }\n\n return editorPreviewSwaggerUIActions.jumpToPathSuccess({ path, jsonPointer, position });\n } catch (error) {\n return editorPreviewSwaggerUIActions.jumpToPathFailure({ error, path, jsonPointer });\n }\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\nexport const detectContentTypeSuccess = createSafeActionWrapper(\n (oriAction, system) =>\n ({ content }) => {\n const { specActions, editorSelectors } = system;\n\n if (editorSelectors.selectIsContentTypeOpenAPI()) {\n specActions.updateSpec(content, 'swagger-editor');\n }\n }\n);\n\nexport const previewUnmounted = createSafeActionWrapper((oriAction, system) => () => {\n system.specActions.updateSpec('', 'swagger-editor');\n});\n","import EditorPreviewSwaggerUI from './components/EditorPreviewSwaggerUI.jsx';\nimport JumpToPath from './components/JumpToPath.jsx';\nimport EditorPreviewWrapper from './wrap-components/EditorPreviewWrapper.jsx';\nimport { previewUnmounted } from './actions/preview-unmounted.js';\nimport {\n jumpToPath,\n jumpToPathStarted,\n jumpToPathSuccess,\n jumpToPathFailure,\n} from './actions/jump-to-path.js';\nimport {\n detectContentTypeSuccess as detectContentTypeSuccessWrap,\n previewUnmounted as previewUnmountedWrap,\n} from './wrap-actions.js';\n\nconst EditorPreviewSwaggerUIPlugin = () => ({\n components: {\n EditorPreviewSwaggerUI,\n JumpToPath,\n },\n wrapComponents: {\n EditorPreview: EditorPreviewWrapper,\n },\n statePlugins: {\n editor: {\n wrapActions: {\n detectContentTypeSuccess: detectContentTypeSuccessWrap,\n },\n },\n editorPreviewSwaggerUI: {\n actions: {\n previewUnmounted,\n\n jumpToPath,\n jumpToPathStarted,\n jumpToPathSuccess,\n jumpToPathFailure,\n },\n wrapActions: {\n previewUnmounted: previewUnmountedWrap,\n },\n },\n },\n});\n\nexport default EditorPreviewSwaggerUIPlugin;\n","import React, { Suspense, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport '@asyncapi/react-component/styles/default.min.css';\n\nconst AsyncApiReactComponent = React.lazy(() =>\n import('@asyncapi/react-component/lib/esm/without-parser.js')\n);\n\nconst Loading = () => <div>Loading...</div>;\nconst Parsing = () => <div>Parsing...</div>;\n\nconst EditorPreviewAsyncAPI = ({\n getComponent,\n editorPreviewAsyncAPIActions,\n editorPreviewAsyncAPISelectors,\n}) => {\n const ParseErrors = getComponent('EditorPreviewAsyncAPIParseErrors');\n const isParseInProgress = editorPreviewAsyncAPISelectors.selectIsParseInProgress();\n const isParseSuccess = editorPreviewAsyncAPISelectors.selectIsParseSuccess();\n const isParseFailure = editorPreviewAsyncAPISelectors.selectIsParseFailure();\n const parseResult = editorPreviewAsyncAPISelectors.selectParseResult();\n const parseErrors = editorPreviewAsyncAPISelectors.selectParseErrors();\n const config = { show: { errors: true } };\n\n useEffect(() => {\n return () => {\n editorPreviewAsyncAPIActions.previewUnmounted();\n };\n }, [editorPreviewAsyncAPIActions]);\n\n return (\n <div className=\"swagger-editor__editor-preview-asyncapi\">\n <Suspense fallback={<Loading />}>\n {isParseInProgress && <Parsing />}\n {isParseSuccess && <AsyncApiReactComponent schema={parseResult} config={config} />}\n {isParseFailure && <ParseErrors errors={parseErrors} />}\n </Suspense>\n </div>\n );\n};\n\nEditorPreviewAsyncAPI.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewAsyncAPIActions: PropTypes.shape({\n previewUnmounted: PropTypes.func.isRequired,\n }).isRequired,\n editorPreviewAsyncAPISelectors: PropTypes.shape({\n selectIsParseInProgress: PropTypes.func.isRequired,\n selectIsParseSuccess: PropTypes.func.isRequired,\n selectIsParseFailure: PropTypes.func.isRequired,\n selectParseResult: PropTypes.func.isRequired,\n selectParseErrors: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default EditorPreviewAsyncAPI;\n","const ParseErrors = () => {\n return (\n <div className=\"swagger-editor__editor-preview-asyncapi-parse-errors\">\n <div className=\"swagger-ui\">\n <div className=\"version-pragma\">\n <div className=\"version-pragma__message version-pragma__message--missing\">\n <div>\n <h3>Invalid AsyncAPI definition.</h3>\n <p>\n The provided AsyncAPI definition is not valid. Please check your syntax, and correct\n any discrepancies to ensure it adheres to the AsyncAPI standards.\n </p>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default ParseErrors;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPreviewWrapper = (Original, system) => {\n const EditorPreview = ({ getComponent, editorSelectors }) => {\n const EditorPreviewAsyncAPI = getComponent('EditorPreviewAsyncAPI', true);\n\n return editorSelectors.selectIsContentTypeAsyncAPI2() ? (\n <EditorPreviewAsyncAPI />\n ) : (\n <Original {...system} /> // eslint-disable-line react/jsx-props-no-spreading\n );\n };\n\n EditorPreview.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeAsyncAPI2: PropTypes.func.isRequired,\n }).isRequired,\n };\n\n return EditorPreview;\n};\n\nexport default EditorPreviewWrapper;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"AsyncAPIDocument\"]: () => __WEBPACK_EXTERNAL_MODULE__asyncapi_parser_bad37540__.AsyncAPIDocument, [\"parse\"]: () => __WEBPACK_EXTERNAL_MODULE__asyncapi_parser_bad37540__.parse, [\"registerSchemaParser\"]: () => __WEBPACK_EXTERNAL_MODULE__asyncapi_parser_bad37540__.registerSchemaParser });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = __WEBPACK_EXTERNAL_MODULE__asyncapi_openapi_schema_parser_16ffeb94__;","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = __WEBPACK_EXTERNAL_MODULE__asyncapi_avro_schema_parser_e6df19e2__;","import YAML from 'js-yaml';\n\n/* eslint-disable no-param-reassign */\n\nexport async function parse({ message, defaultSchemaFormat }) {\n try {\n let { payload } = message;\n if (typeof payload === 'object') {\n payload = YAML.dump(payload);\n }\n\n message['x-parser-original-schema-format'] = message.schemaFormat || defaultSchemaFormat;\n message['x-parser-original-payload'] = payload;\n message.payload = { description: `\\`\\`\\`raml\\n${payload}\\n\\`\\`\\`` };\n } catch (e) {\n console.error(e); // eslint-disable-line no-console\n }\n}\n\nexport function getMimeTypes() {\n return ['application/raml+yaml;version=1.0'];\n}\n","import ShortUniqueId from 'short-unique-id';\nimport { parse as parseAsyncAPIDefinition, registerSchemaParser } from '@asyncapi/parser';\nimport * as openapiSchemaParser from '@asyncapi/openapi-schema-parser';\nimport * as avroSchemaParser from '@asyncapi/avro-schema-parser';\n\nimport * as ramlSchemaParser from './util/raml-1-0-parser.js';\n\nregisterSchemaParser(openapiSchemaParser);\nregisterSchemaParser(ramlSchemaParser);\nregisterSchemaParser(avroSchemaParser);\n\n/**\n * Action types.\n */\n\nexport const EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED =\n 'editor_preview_asyncapi_preview_unmounted';\n\nexport const EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED = 'editor_preview_asyncapi_parse_started';\nexport const EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS = 'editor_preview_asyncapi_parse_success';\nexport const EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE = 'editor_preview_asyncapi_parse_failure';\n\n/**\n * Action creators.\n */\n\nexport const previewUnmounted = () => ({\n type: EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED,\n});\n\nexport const parseStarted = ({ content, requestId }) => ({\n type: EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED,\n payload: content,\n meta: {\n requestId,\n },\n});\n\nexport const parseSuccess = ({ parseResult, content, requestId }) => ({\n type: EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS,\n payload: parseResult,\n meta: { content, requestId },\n});\n\nexport const parseFailure = ({ error, content, requestId }) => ({\n type: EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE,\n payload: error,\n error: true,\n meta: { content, requestId },\n});\n\n/**\n * Async thunks.\n */\n\nexport const parse = (content, parserOptions = {}) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n /**\n * This code can easily be offloaded to a web worker and allow MRT\n * not to be blocked by the detection.\n */\n const { editorPreviewAsyncAPIActions } = system;\n const requestId = uid();\n\n editorPreviewAsyncAPIActions.parseStarted({ content, requestId });\n\n try {\n const parseResult = await parseAsyncAPIDefinition(content, parserOptions);\n editorPreviewAsyncAPIActions.parseSuccess({ parseResult, content, requestId });\n } catch (error) {\n editorPreviewAsyncAPIActions.parseFailure({ error, content, requestId });\n }\n };\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const detectContentTypeSuccess = createSafeActionWrapper(\n (oriAction, system) =>\n ({ content }) => {\n const { editorSelectors, editorPreviewAsyncAPIActions } = system;\n\n if (editorSelectors.selectIsContentTypeAsyncAPI2()) {\n editorPreviewAsyncAPIActions.parse(content);\n }\n }\n);\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_uniqWith_js_0c2624c1__[\"default\"] });","import { AsyncAPIDocument } from '@asyncapi/parser';\nimport uniqWith from 'lodash/uniqWith.js';\nimport { fromJS } from 'immutable';\n\nimport {\n EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED,\n EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED,\n EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS,\n EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE,\n} from './actions.js';\n\nexport const IDLE_STATUS = 'idle';\nexport const PARSING_STATUS = 'parsing';\nexport const SUCCESS_STATUS = 'success';\nexport const FAILURE_STATUS = 'failure';\n\nexport const initialState = {\n parserMarkers: [],\n parseStatus: IDLE_STATUS,\n parseRequestId: null,\n parseResult: null,\n parseErrors: null,\n};\n\n/**\n * Reducer utils.\n */\n\nconst parseValidationErrorsReducer = (action) => {\n const { payload: error } = action;\n\n if (!(Array.isArray(error.validationErrors) && error.validationErrors.length > 0)) return [];\n\n return error.validationErrors.map((validationError) => ({\n message: validationError.title,\n startLineNumber: validationError.location.startLine,\n endLineNumber: validationError.location.endLine,\n startColumn: validationError.location.startColumn,\n endColumn: validationError.location.endColumn,\n }));\n};\n\nconst parseRefErrorsReducer = (action) => {\n const { payload: error } = action;\n\n if (!(Array.isArray(error.refs) && error.refs.length > 0)) return [];\n\n return error.refs.map((refError, index) => {\n const message = index === 0 ? error.title : 'Invalid JSON Reference';\n\n return {\n message,\n startLineNumber: refError.startLine,\n endLineNumber: refError.endLine,\n startColumn: refError.startColumn,\n endColumn: refError.endColumn,\n };\n });\n};\n\n/**\n * Case reducers modeled as finite state machine.\n */\n\nconst previewUnmountedReducer = (state) => {\n const { parseStatus, parseRequestId, parseResult, parseErrors } = initialState;\n\n return state.merge({\n parseStatus,\n parseRequestId,\n parseResult,\n parseErrors,\n });\n};\n\nconst parseStartedReducer = (state, action) => {\n return state.merge({\n parseStatus: PARSING_STATUS,\n parseRequestId: action.meta.requestId,\n });\n};\n\nconst parseSuccessReducer = (state, action) => {\n const status = state.get('parseStatus') || IDLE_STATUS;\n const requestId = state.get('parseRequestId');\n\n if (status === PARSING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n parseStatus: SUCCESS_STATUS,\n parseRequestId: null,\n parseResult: AsyncAPIDocument.stringify(action.payload),\n parseErrors: null,\n });\n }\n\n return state;\n};\n\nconst parseFailureReducer = (state, action) => {\n const status = state.get('parseStatus') || IDLE_STATUS;\n const requestId = state.get('parseRequestId');\n\n if (status === PARSING_STATUS && requestId === action.meta.requestId) {\n const validationErrors = parseValidationErrorsReducer(action);\n const refErrors = parseRefErrorsReducer(action);\n const parseErrors = uniqWith([...validationErrors, ...refErrors], (arrVal, othVal) => {\n return (\n arrVal.message === othVal.message &&\n arrVal.startLineNumber === othVal.startLineNumber &&\n arrVal.startColumn === othVal.startColumn\n );\n });\n\n return state.merge({\n parseStatus: FAILURE_STATUS,\n parseRequestId: null,\n parseResult: null,\n parseErrors: fromJS(parseErrors),\n });\n }\n\n return state;\n};\n\n/**\n * Root reducer for this plugin.\n */\n\nconst reducers = {\n [EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED]: previewUnmountedReducer,\n\n [EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED]: parseStartedReducer,\n [EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS]: parseSuccessReducer,\n [EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE]: parseFailureReducer,\n};\n\nexport default reducers;\n","import { AsyncAPIDocument } from '@asyncapi/parser';\nimport { createSelector } from 'reselect';\n\nimport {\n IDLE_STATUS,\n PARSING_STATUS,\n SUCCESS_STATUS,\n FAILURE_STATUS,\n initialState,\n} from './reducers.js';\n\nconst selectState = (state) => state;\n\nexport const selectParseStatus = (state) => state.get('parseStatus', IDLE_STATUS);\n\nexport const selectParseResult = createSelector(selectState, (state) => {\n const parseResult = state.get('parseResult', initialState.parseResult);\n\n if (typeof parseResult !== 'string') {\n return null;\n }\n\n return AsyncAPIDocument.parse(state.get('parseResult'));\n});\n\nexport const selectParseErrors = createSelector(selectState, (state) => {\n const parseErrorsIm = state.get('parseErrors', initialState.parseResult);\n\n if (parseErrorsIm === null) {\n return [];\n }\n\n return parseErrorsIm.toJS();\n});\n\nexport const selectParseMarkers = createSelector(\n selectParseErrors,\n (state, { monaco }) => monaco,\n (state, { modelVersionId }) => modelVersionId,\n (parseErrors, monaco, modelVersionId) => {\n return parseErrors.map((parseError) => ({\n ...parseError,\n code: `ASNCPRSR`,\n severity: monaco.MarkerSeverity.Error,\n source: '@asyncapi/parser',\n modelVersionId,\n }));\n }\n);\n\nexport const selectIsParseInProgress = createSelector(\n selectParseStatus,\n selectParseResult,\n selectParseErrors,\n (parseStatus, parseResult, parseErrors) => {\n return parseStatus === PARSING_STATUS && parseResult === null && parseErrors === null;\n }\n);\n\nexport const selectIsParseSuccess = createSelector(\n selectParseStatus,\n (parseStatus) => parseStatus === SUCCESS_STATUS\n);\n\nexport const selectIsParseFailure = createSelector(\n selectParseStatus,\n (parseStatus) => parseStatus === FAILURE_STATUS\n);\n","class Disposable extends Array {\n dispose() {\n this.forEach((disposable) => disposable.dispose());\n this.length = 0;\n }\n}\n\nconst lazyMonacoContribution = ({ system }) => {\n const { fn, editorPreviewAsyncAPISelectors, editorSelectors, monaco } = system;\n const disposables = new Disposable();\n\n disposables.push(\n fn.registerMarkerDataProvider('apidom', {\n owner: 'asyncapi-parser',\n async provideMarkerData(model) {\n const modelValue = model.getValue();\n const modelVersionId = model.getVersionId();\n const conditionFn = () =>\n editorSelectors.selectIsContentTypeAsyncAPI2() &&\n modelValue === editorSelectors.selectContent() &&\n !editorPreviewAsyncAPISelectors.selectIsParseInProgress();\n\n try {\n // wait until proper content type has been detected and parsing has finished\n await fn.waitUntil(conditionFn);\n\n if (editorPreviewAsyncAPISelectors.selectIsParseSuccess()) return [];\n\n return editorPreviewAsyncAPISelectors.selectParseMarkers({ monaco, modelVersionId });\n } catch (e) {\n return [];\n }\n },\n })\n );\n\n // disposing of all allocated disposables\n disposables.push(\n monaco.editor.onDidCreateEditor((editor) => {\n disposables.push(\n editor.onDidDispose(() => {\n disposables.forEach((disposable) => {\n disposable.dispose();\n });\n disposables.length = 0;\n })\n );\n })\n );\n\n return disposables;\n};\n\nexport default lazyMonacoContribution;\n","import lazyMonacoContribution from './monaco.contribution.js';\n\nfunction afterLoad(system) {\n const { monaco, fn } = system;\n const usingEditorMonacoPlugin = typeof monaco !== 'undefined';\n const usingEditorMonacoLanguageApiDOMPlugin = typeof fn.getApiDOMWorker !== 'undefined';\n const pluginAPI = this.statePlugins.editorPreviewAsyncAPI;\n\n if (usingEditorMonacoPlugin && usingEditorMonacoLanguageApiDOMPlugin) {\n if (pluginAPI.disposables) pluginAPI.disposables.dispose();\n pluginAPI.disposables = lazyMonacoContribution({ system });\n }\n}\n\nexport default afterLoad;\n","import EditorPreviewAsyncAPI from './components/EditorPreviewAsyncAPI/EditorPreviewAsyncAPI.jsx';\nimport ParseErrors from './components/ParseErrors/ParseErrors.jsx';\nimport EditorPreviewWrapper from './wrap-components/EditorPreviewWrapper.jsx';\nimport { previewUnmounted, parse, parseStarted, parseSuccess, parseFailure } from './actions.js';\nimport { detectContentTypeSuccess as detectContentTypeSuccessWrap } from './wrap-actions.js';\nimport reducers from './reducers.js';\nimport {\n selectParseStatus,\n selectIsParseInProgress,\n selectIsParseSuccess,\n selectIsParseFailure,\n selectParseResult,\n selectParseErrors,\n selectParseMarkers,\n} from './selectors.js';\nimport afterLoad from './after-load.js';\n\nconst EditorPreviewAsyncAPIPlugin = () => ({\n afterLoad,\n components: {\n EditorPreviewAsyncAPI,\n EditorPreviewAsyncAPIParseErrors: ParseErrors,\n },\n wrapComponents: {\n EditorPreview: EditorPreviewWrapper,\n },\n statePlugins: {\n editor: {\n wrapActions: {\n detectContentTypeSuccess: detectContentTypeSuccessWrap,\n },\n },\n editorPreviewAsyncAPI: {\n actions: {\n previewUnmounted,\n parse,\n parseStarted,\n parseSuccess,\n parseFailure,\n },\n selectors: {\n selectParseStatus,\n selectIsParseInProgress,\n selectIsParseSuccess,\n selectIsParseFailure,\n selectParseResult,\n selectParseErrors,\n selectParseMarkers,\n },\n reducers,\n },\n },\n});\n\nexport default EditorPreviewAsyncAPIPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detect\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_json_1adf0e52__.detect, [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_json_1adf0e52__.detectionRegExp, [\"parse\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_json_1adf0e52__.parse });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detect\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_yaml_bdee7436__.detect, [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_yaml_bdee7436__.detectionRegExp, [\"parse\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_yaml_bdee7436__.parse });","import ShortUniqueId from 'short-unique-id';\nimport { parse as parseJSON } from '@swagger-api/apidom-parser-adapter-api-design-systems-json';\nimport { parse as parseYAML } from '@swagger-api/apidom-parser-adapter-api-design-systems-yaml';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED =\n 'editor_preview_api_design_systems_preview_unmounted';\n\nexport const EDITOR_PREVIEW_ADS_PARSE_STARTED = 'editor_preview_api_design_systems_parse_started';\nexport const EDITOR_PREVIEW_ADS_PARSE_SUCCESS = 'editor_preview_api_design_systems_parse_success';\nexport const EDITOR_PREVIEW_ADS_PARSE_FAILURE = 'editor_preview_api_design_systems_parse_failure';\n\n/**\n * Action creators.\n */\n\nexport const previewUnmounted = () => ({\n type: EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED,\n});\n\nexport const parseStarted = ({ content, contentType, requestId }) => ({\n type: EDITOR_PREVIEW_ADS_PARSE_STARTED,\n payload: content,\n meta: {\n contentType,\n requestId,\n },\n});\n\nexport const parseSuccess = ({ parseResult, content, contentType, requestId }) => ({\n type: EDITOR_PREVIEW_ADS_PARSE_SUCCESS,\n payload: parseResult,\n meta: { content, contentType, requestId },\n});\n\nexport const parseFailure = ({ error, content, contentType, requestId }) => ({\n type: EDITOR_PREVIEW_ADS_PARSE_FAILURE,\n payload: error,\n error: true,\n meta: { content, contentType, requestId },\n});\n\n/**\n * Async thunks.\n */\n\nexport const parse = ({ content, contentType, parserOptions = {} }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorPreviewADSActions } = system;\n const requestId = uid();\n\n editorPreviewADSActions.parseStarted({ content, contentType, requestId });\n\n const parseAPIDesignSystemsDefinition = contentType.includes('+json') ? parseJSON : parseYAML;\n\n try {\n const parseResult = await parseAPIDesignSystemsDefinition(content, parserOptions);\n editorPreviewADSActions.parseSuccess({ parseResult, content, contentType, requestId });\n } catch (error) {\n editorPreviewADSActions.parseFailure({ error, content, contentType, requestId });\n }\n };\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const detectContentTypeSuccess = createSafeActionWrapper(\n (oriAction, system) =>\n ({ content }) => {\n const { editorSelectors, editorPreviewADSActions } = system;\n\n if (editorSelectors.selectIsContentTypeAPIDesignSystems()) {\n const contentType = editorSelectors.selectContentType();\n const parserOptions = {};\n\n editorPreviewADSActions.parse({ content, contentType, parserOptions });\n }\n }\n);\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createNamespace\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.createNamespace, [\"from\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.from, [\"isArrayElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.isArrayElement, [\"isStringElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.isStringElement, [\"toString\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.toString, [\"toValue\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.toValue });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__[\"default\"], [\"isInfoElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isInfoElement, [\"isMainElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isMainElement, [\"isPrincipleElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isPrincipleElement, [\"isRequirementLevelElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isRequirementLevelElement, [\"isScenarioElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isScenarioElement, [\"isStandardElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isStandardElement, [\"isStandardIdentifierElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isStandardIdentifierElement });","import { createNamespace } from '@swagger-api/apidom-core';\nimport namespace from '@swagger-api/apidom-ns-api-design-systems';\n\nconst apiDesignSystemsNamespace = createNamespace(namespace);\n\nexport default apiDesignSystemsNamespace;\n","import { toString } from '@swagger-api/apidom-core';\n\nimport apiDesignSystemsNamespace from './namespace.js';\nimport {\n EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED,\n EDITOR_PREVIEW_ADS_PARSE_STARTED,\n EDITOR_PREVIEW_ADS_PARSE_SUCCESS,\n EDITOR_PREVIEW_ADS_PARSE_FAILURE,\n} from './actions.js';\n\nexport const IDLE_STATUS = 'idle';\nexport const PARSING_STATUS = 'parsing';\nexport const SUCCESS_STATUS = 'success';\nexport const FAILURE_STATUS = 'failure';\n\nexport const initialState = {\n parseStatus: IDLE_STATUS,\n parseRequestId: null,\n parseResult: null,\n parseError: null,\n};\n\n/**\n * Case reducers modeled as finite state machine.\n */\n\nconst previewUnmountedReducer = (state) => {\n const { parseStatus, parseRequestId, parseResult, parseErrors } = initialState;\n\n return state.merge({\n parseStatus,\n parseRequestId,\n parseResult,\n parseErrors,\n });\n};\n\nconst parseStartedReducer = (state, action) => {\n return state.merge({\n parseStatus: PARSING_STATUS,\n parseRequestId: action.meta.requestId,\n });\n};\n\nconst parseSuccessReducer = (state, action) => {\n const status = state.get('parseStatus') || IDLE_STATUS;\n const requestId = state.get('parseRequestId');\n\n if (status === PARSING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n parseStatus: SUCCESS_STATUS,\n parseRequestId: null,\n parseResult: toString(action.payload, apiDesignSystemsNamespace),\n parseErrors: null,\n });\n }\n\n return state;\n};\n\nconst parseFailureReducer = (state, action) => {\n const status = state.get('parseStatus') || IDLE_STATUS;\n const requestId = state.get('parseRequestId');\n\n if (status === PARSING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n parseStatus: FAILURE_STATUS,\n parseRequestId: null,\n parseResult: null,\n parseErrors: action.payload,\n });\n }\n\n return state;\n};\n\n/**\n * Root reducer for this plugin.\n */\n\nconst reducers = {\n [EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED]: previewUnmountedReducer,\n\n [EDITOR_PREVIEW_ADS_PARSE_STARTED]: parseStartedReducer,\n [EDITOR_PREVIEW_ADS_PARSE_SUCCESS]: parseSuccessReducer,\n [EDITOR_PREVIEW_ADS_PARSE_FAILURE]: parseFailureReducer,\n};\n\nexport default reducers;\n","import { createSelector } from 'reselect';\nimport { from, toValue, isStringElement, isArrayElement } from '@swagger-api/apidom-core';\nimport {\n isMainElement,\n isInfoElement,\n isPrincipleElement,\n isStandardElement,\n isScenarioElement,\n isStandardIdentifierElement,\n isRequirementLevelElement,\n} from '@swagger-api/apidom-ns-api-design-systems';\n\nimport apiDesignSystemsNamespace from './namespace.js';\nimport { initialState, FAILURE_STATUS, PARSING_STATUS, SUCCESS_STATUS } from './reducers.js';\n\nconst selectState = (state) => state;\n\nexport const selectParseResult = createSelector(selectState, (state) => {\n const parseResult = state.get('parseResult', initialState.parseResult);\n\n if (typeof parseResult !== 'string') {\n return null;\n }\n\n return from(parseResult, apiDesignSystemsNamespace);\n});\n\nexport const selectParseError = createSelector(selectState, (state) => {\n return state.get('parseError', initialState.parseResult);\n});\n\nexport const selectParseStatus = (state) => state.get('parseStatus') || initialState.parseStatus;\n\nexport const selectIsParseInProgress = createSelector(\n selectParseStatus,\n selectParseResult,\n selectParseError,\n (parseStatus, parseResult, parseErrors) => {\n return parseStatus === PARSING_STATUS && parseResult === null && parseErrors === null;\n }\n);\n\nexport const selectIsParseSuccess = createSelector(\n selectParseStatus,\n (parseStatus) => parseStatus === SUCCESS_STATUS\n);\n\nexport const selectIsParseFailure = createSelector(\n selectParseStatus,\n (parseStatus) => parseStatus === FAILURE_STATUS\n);\n\nexport const selectMainElement = createSelector(selectParseResult, (parseResult) => {\n if (parseResult === null) return null;\n\n const { result } = parseResult;\n\n return isMainElement(result) ? result : null;\n});\n\nexport const selectVersion = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { version } = mainElement;\n\n return isStringElement(version) ? toValue(version) : '2021-05-07';\n});\n\nexport const selectInfo = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { info } = mainElement;\n\n return isInfoElement(info) ? toValue(info) : null;\n});\n\nexport const selectPrinciplesCount = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { principles } = mainElement;\n\n return isArrayElement(principles) ? principles.length : 0;\n});\n\nexport const selectStandardsCount = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { standards } = mainElement;\n\n return isArrayElement(standards) ? standards.length : 0;\n});\n\nexport const selectScenariosCount = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { scenarios } = mainElement;\n\n return isArrayElement(scenarios) ? scenarios.length : 0;\n});\n\nexport const selectPrinciples = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return [];\n\n const { principles } = mainElement;\n\n if (!isArrayElement(principles)) return [];\n\n return principles.filter(isPrincipleElement).toValue();\n});\n\nexport const selectStandards = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return [];\n\n const { standards } = mainElement;\n\n if (!isArrayElement(standards)) return [];\n\n return standards.filter(isStandardElement).toValue();\n});\n\nexport const selectScenarios = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return [];\n\n const { scenarios } = mainElement;\n\n if (!isArrayElement(scenarios)) return [];\n\n return scenarios.filter(isScenarioElement).elements;\n});\n\nexport const selectStandardIdentifier = (state, { standardIdentifier }) => {\n if (!isStandardIdentifierElement(standardIdentifier)) return '[]';\n\n return `[${String(toValue(standardIdentifier)).replaceAll(',', ' > ')}]`;\n};\n\nexport const selectScenarioDescription = (state, { scenarioElement }) => {\n if (!isScenarioElement(scenarioElement)) return '';\n if (!isStringElement(scenarioElement.description)) return '';\n\n return toValue(scenarioElement.description);\n};\n\nexport const selectScenarioRequirements = (state, { scenarioElement }) => {\n if (!isScenarioElement(scenarioElement)) return [];\n if (!isArrayElement(scenarioElement.then)) return [];\n\n return scenarioElement.then.content;\n};\n\nexport const selectRequirementLevel = (state, { requirementElement }) => {\n if (!isRequirementLevelElement(requirementElement.level)) return 'unknown';\n\n return toValue(requirementElement.level);\n};\n\nexport const selectRequirementValues = (state, { requirementElement }) => {\n if (!isArrayElement(requirementElement.values)) return 'unknown';\n\n return String(toValue(requirementElement.values)).replaceAll(',', ', ');\n};\n","import PropTypes from 'prop-types';\n\nconst Main = ({ getComponent }) => {\n const Info = getComponent('ADSInfo', true);\n const Principles = getComponent('ADSPrinciples', true);\n const Standards = getComponent('ADSStandards', true);\n const Scenarios = getComponent('ADSScenarios', true);\n\n return (\n <section className=\"swagger-ui swagger-container\">\n <div className=\"swagger-ui\">\n <div className=\"information-container wrapper\">\n <section className=\"block col-12\">\n <Info />\n <Principles />\n <Standards />\n <Scenarios />\n <br />\n </section>\n </div>\n </div>\n </section>\n );\n};\n\nMain.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default Main;\n","import PropTypes from 'prop-types';\n\nconst Info = ({ editorPreviewADSSelectors }) => {\n const version = editorPreviewADSSelectors.selectVersion();\n const info = editorPreviewADSSelectors.selectInfo();\n const principles = editorPreviewADSSelectors.selectPrinciplesCount();\n const standards = editorPreviewADSSelectors.selectStandardsCount();\n const scenarios = editorPreviewADSSelectors.selectScenariosCount();\n\n if (info === null) return null;\n\n return (\n <div className=\"info\">\n <hgroup className=\"main\">\n <h2 className=\"title\">\n {info.title}\n <span>\n <small>\n <pre className=\"version\">{version}</pre>\n </small>\n <small className=\"version-stamp\">\n <pre className=\"version\">ADS</pre>\n </small>\n </span>\n </h2>\n </hgroup>\n <hgroup className=\"main title\">\n <span>\n <small className=\"summary-pill\">\n <pre className=\"version\"> {principles} Principles</pre>\n </small>\n <small className=\"summary-pill\">\n <pre className=\"version\"> {standards} Standards</pre>\n </small>\n <small className=\"summary-pill\">\n <pre className=\"version\"> {scenarios} Scenarios</pre>\n </small>\n </span>\n </hgroup>\n\n <div className=\"description\">\n <div className=\"renderedMarkdown\">\n <p>{info.description}</p>\n </div>\n </div>\n </div>\n );\n};\n\nInfo.propTypes = {\n editorPreviewADSSelectors: PropTypes.shape({\n selectVersion: PropTypes.func.isRequired,\n selectInfo: PropTypes.func.isRequired,\n selectPrinciplesCount: PropTypes.func.isRequired,\n selectStandardsCount: PropTypes.func.isRequired,\n selectScenariosCount: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Info;\n","import PropTypes from 'prop-types';\n\nconst Principles = ({ editorPreviewADSSelectors, getComponent }) => {\n const principlesCount = editorPreviewADSSelectors.selectPrinciplesCount();\n const principles = editorPreviewADSSelectors.selectPrinciples();\n const Principle = getComponent('ADSPrinciple');\n\n return (\n <div className=\"no-margin\">\n <div className=\"opblock opblock-post is-open\">\n <div className=\"opblock-summary opblock-summary-post\">\n <span\n className=\"opblock-summary-method\"\n style={{ paddingLeft: '6px', paddingRight: '6px' }}\n >\n {principlesCount} Principles\n </span>\n </div>\n <div className=\"no-margin\">\n <div className=\"opblock-body\">\n <div className=\"opblock-description-wrapper\">\n <div className=\"opblock-description\">\n <div className=\"markdown\">\n <p>Principles guide how decisions in API design and delivery should be made.</p>\n </div>\n </div>\n </div>\n <div className=\"opblock-section\">\n <div className=\"parameters-container\">\n <div className=\"table-container\">\n <table className=\"model ads-principles\">\n <thead>\n <tr>\n <th className=\"col_header\" style={{ width: '50%' }}>\n Internationalized Resource Identifiers\n </th>\n <th className=\"col_header\" style={{ width: '20%' }}>\n level\n </th>\n <th className=\"col_header\">Name</th>\n </tr>\n </thead>\n <tbody>\n {principles.map((principle) => (\n <Principle\n key={principle.iri}\n name={principle.name}\n iri={principle.iri}\n level={principle.level}\n />\n ))}\n </tbody>\n </table>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nPrinciples.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectPrinciplesCount: PropTypes.func.isRequired,\n selectPrinciples: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Principles;\n","import PropTypes from 'prop-types';\n\nconst Principle = ({ name, iri, level }) => {\n return (\n <tr>\n <td>\n <span className=\"property-primitivetype\">{iri}</span>\n </td>\n <td>\n <span className=\"prop-type\">{level}</span>\n </td>\n <td>{name}</td>\n </tr>\n );\n};\n\nPrinciple.propTypes = {\n name: PropTypes.string,\n iri: PropTypes.string.isRequired,\n level: PropTypes.string.isRequired,\n};\n\nPrinciple.defaultProps = {\n name: '',\n};\n\nexport default Principle;\n","import PropTypes from 'prop-types';\n\nconst Standards = ({ editorPreviewADSSelectors, getComponent }) => {\n const standardsCount = editorPreviewADSSelectors.selectStandardsCount();\n const standards = editorPreviewADSSelectors.selectStandards();\n const Standard = getComponent('ADSStandard');\n\n return (\n <div className=\"no-margin\">\n <div className=\"opblock opblock-get is-open\">\n <div className=\"opblock-summary opblock-summary-get\">\n <span\n className=\"opblock-summary-method\"\n style={{ paddingLeft: '6px', paddingRight: '6px' }}\n >\n {standardsCount} Standards\n </span>\n </div>\n <div className=\"no-margin\">\n <div className=\"opblock-body\">\n <div className=\"opblock-description-wrapper\">\n <div className=\"opblock-description\">\n <div className=\"markdown\">\n <p>\n Standards are industry best practices (e.g. RFCs) that shall influence the rules\n for API design.\n </p>\n </div>\n </div>\n </div>\n <div className=\"opblock-section\">\n <div className=\"parameters-container\">\n <div className=\"table-container\">\n <table className=\"model ads-principles\">\n <thead>\n <tr>\n <th className=\"col_header\" style={{ width: '50%' }}>\n Internationalized Resource Identifiers\n </th>\n <th className=\"col_header\" style={{ width: '20%' }}>\n level\n </th>\n <th className=\"col_header\">Name</th>\n </tr>\n </thead>\n <tbody>\n {standards.map((principle) => (\n <Standard\n key={principle.iri}\n name={principle.name}\n iri={principle.iri}\n level={principle.level}\n />\n ))}\n </tbody>\n </table>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nStandards.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectStandardsCount: PropTypes.func.isRequired,\n selectStandards: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Standards;\n","import PropTypes from 'prop-types';\n\nconst Standard = ({ name, iri, level }) => {\n return (\n <tr>\n <td>\n <span className=\"property-primitivetype\">{iri}</span>\n </td>\n <td>\n <span className=\"prop-type\">{level}</span>\n </td>\n <td>{name}</td>\n </tr>\n );\n};\n\nStandard.propTypes = {\n name: PropTypes.string,\n iri: PropTypes.string.isRequired,\n level: PropTypes.string.isRequired,\n};\n\nStandard.defaultProps = {\n name: '',\n};\n\nexport default Standard;\n","import PropTypes from 'prop-types';\n\nconst Scenarios = ({ getComponent, editorPreviewADSSelectors }) => {\n const scenariosCount = editorPreviewADSSelectors.selectScenariosCount();\n const scenarios = editorPreviewADSSelectors.selectScenarios();\n const Scenario = getComponent('ADSScenario', true);\n\n return (\n <section className=\"block col-12 block-desktop col-12-desktop\">\n <section className=\"models is-open\">\n <h4>\n <button type=\"button\" aria-expanded=\"true\" className=\"models-control\">\n <span>{scenariosCount} Governance Scenarios</span>\n <svg width=\"20\" height=\"20\" aria-hidden=\"true\" focusable=\"false\" />\n </button>\n </h4>\n\n <div className=\"no-margin\">\n {scenarios.map((scenarioElement) => {\n const key = editorPreviewADSSelectors.selectStandardIdentifier({\n standardIdentifier: scenarioElement.when,\n });\n return <Scenario key={key} element={scenarioElement} />;\n })}\n </div>\n </section>\n </section>\n );\n};\n\nScenarios.propTypes = {\n editorPreviewADSSelectors: PropTypes.shape({\n selectScenariosCount: PropTypes.func.isRequired,\n selectScenarios: PropTypes.func.isRequired,\n selectStandardIdentifier: PropTypes.func.isRequired,\n }).isRequired,\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default Scenarios;\n","import PropTypes from 'prop-types';\nimport { ScenarioElement } from '@swagger-api/apidom-ns-api-design-systems';\n\nconst Scenario = ({ getComponent, editorPreviewADSSelectors, element }) => {\n const scenarioName = editorPreviewADSSelectors.selectStandardIdentifier({\n standardIdentifier: element.when,\n });\n const description = editorPreviewADSSelectors.selectScenarioDescription({\n scenarioElement: element,\n });\n const requirements = editorPreviewADSSelectors.selectScenarioRequirements({\n scenarioElement: element,\n });\n const Requirement = getComponent('ADSRequirement', true);\n\n return (\n <div className=\"modal-container\">\n <span className=\"model-box\" style={{ display: 'block' }}>\n <button\n type=\"button\"\n aria-expanded=\"false\"\n className=\"model-box-control\"\n style={{ width: '100%' }}\n >\n <span className=\"pointer\">\n <span className=\"model-box\">\n <span className=\"model model-title\">\n <strong>Scenario: </strong> {scenarioName}\n </span>\n </span>\n </span>\n\n <div className=\"description\">\n <div className=\"markdown\">\n <p>{description}</p>\n </div>\n </div>\n\n <div className=\"table-container\">\n <table className=\"model\">\n <thead>\n <tr>\n <th className=\"col_header\" style={{ width: '50%' }}>\n Subject\n </th>\n <th className=\"col_header\">Level</th>\n <th className=\"col_header\" style={{ width: '40%' }}>\n Values\n </th>\n </tr>\n </thead>\n <tbody>\n {requirements.map((requirementElement, index) => {\n // eslint-disable-next-line react/no-array-index-key\n return <Requirement key={index} element={requirementElement} />;\n })}\n </tbody>\n </table>\n </div>\n </button>\n </span>\n </div>\n );\n};\n\nScenario.propTypes = {\n element: PropTypes.instanceOf(ScenarioElement).isRequired,\n getComponent: PropTypes.func.isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectStandardIdentifier: PropTypes.func.isRequired,\n selectScenarioDescription: PropTypes.func.isRequired,\n selectScenarioRequirements: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Scenario;\n","import PropTypes from 'prop-types';\nimport { RequirementElement } from '@swagger-api/apidom-ns-api-design-systems';\n\nconst Requirement = ({ editorPreviewADSSelectors, element }) => {\n const subject = editorPreviewADSSelectors.selectStandardIdentifier({\n standardIdentifier: element.subject,\n });\n const level = editorPreviewADSSelectors.selectRequirementLevel({ requirementElement: element });\n const values = editorPreviewADSSelectors.selectRequirementValues({ requirementElement: element });\n\n return (\n <tr className=\"property-row\">\n <td>{subject}</td>\n <td>\n <span className=\"prop-type\">{level}</span>\n </td>\n <td>\n <span className=\"property-primitive\">{values}</span>\n </td>\n </tr>\n );\n};\n\nRequirement.propTypes = {\n element: PropTypes.instanceOf(RequirementElement).isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectStandardIdentifier: PropTypes.func.isRequired,\n selectRequirementLevel: PropTypes.func.isRequired,\n selectRequirementValues: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Requirement;\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst Parsing = () => <div>Parsing...</div>;\n\nconst EditorPreviewAPIDesignSystems = ({\n getComponent,\n editorPreviewADSActions,\n editorPreviewADSSelectors,\n}) => {\n const Main = getComponent('ADSMain', true);\n const ParseErrors = getComponent('EditorPreviewAPIDesignSystemsParseErrors', true);\n const isParseInProgress = editorPreviewADSSelectors.selectIsParseInProgress();\n const isParseSuccess = editorPreviewADSSelectors.selectIsParseSuccess();\n const isParseFailure = editorPreviewADSSelectors.selectIsParseFailure();\n const parseError = editorPreviewADSSelectors.selectParseError();\n\n useEffect(() => {\n return () => {\n editorPreviewADSActions.previewUnmounted();\n };\n }, [editorPreviewADSActions]);\n\n return (\n <section className=\"swagger-editor__editor-preview-api-design-systems\">\n {isParseInProgress && <Parsing />}\n {isParseSuccess && <Main />}\n {isParseFailure && <ParseErrors error={parseError} />}\n </section>\n );\n};\n\nEditorPreviewAPIDesignSystems.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewADSActions: PropTypes.shape({\n previewUnmounted: PropTypes.func.isRequired,\n }).isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectIsParseInProgress: PropTypes.func.isRequired,\n selectIsParseSuccess: PropTypes.func.isRequired,\n selectIsParseFailure: PropTypes.func.isRequired,\n selectParseResult: PropTypes.func.isRequired,\n selectParseError: PropTypes.func.isRequired,\n selectMainElement: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default EditorPreviewAPIDesignSystems;\n","import PropTypes from 'prop-types';\n\nconst ParseErrors = ({ error }) => {\n return (\n <div className=\"swagger-editor__editor-preview-api-design-systems-parse-errors\">\n <div className=\"swagger-ui\">\n <div className=\"version-pragma\">\n <div className=\"version-pragma__message version-pragma__message--missing\">\n <div>\n <h3>Invalid API Design Systems definition.</h3>\n <p>Please fix the error: {error.message}</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nParseErrors.propTypes = {\n error: PropTypes.shape({ message: PropTypes.string }).isRequired,\n};\n\nexport default ParseErrors;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPreviewWrapper = (Original, system) => {\n const EditorPreview = ({ editorSelectors, getComponent }) => {\n const EditorPreviewAPIDesignSystems = getComponent('EditorPreviewAPIDesignSystems', true);\n\n return editorSelectors.selectIsContentTypeAPIDesignSystems() ? (\n <EditorPreviewAPIDesignSystems />\n ) : (\n <Original {...system} /> // eslint-disable-line react/jsx-props-no-spreading\n );\n };\n\n EditorPreview.propTypes = {\n editorSelectors: PropTypes.oneOfType([\n PropTypes.shape({\n selectIsContentTypeAPIDesignSystems: PropTypes.func.isRequired,\n }),\n ]).isRequired,\n getComponent: PropTypes.func.isRequired,\n };\n\n return EditorPreview;\n};\n\nexport default EditorPreviewWrapper;\n","import { previewUnmounted, parse, parseStarted, parseSuccess, parseFailure } from './actions.js';\nimport { detectContentTypeSuccess as detectContentTypeSuccessWrap } from './wrap-actions.js';\nimport {\n selectParseStatus,\n selectIsParseInProgress,\n selectIsParseFailure,\n selectIsParseSuccess,\n selectParseResult,\n selectParseError,\n selectMainElement,\n selectVersion,\n selectInfo,\n selectPrinciplesCount,\n selectStandardsCount,\n selectScenariosCount,\n selectPrinciples,\n selectStandards,\n selectScenarios,\n selectStandardIdentifier,\n selectScenarioDescription,\n selectScenarioRequirements,\n selectRequirementLevel,\n selectRequirementValues,\n} from './selectors.js';\nimport reducers from './reducers.js';\nimport Main from './components/Main.jsx';\nimport Info from './components/Info.jsx';\nimport Principles from './components/Principles.jsx';\nimport Principle from './components/Principle.jsx';\nimport Standards from './components/Standards.jsx';\nimport Standard from './components/Standard.jsx';\nimport Scenarios from './components/Scenarios.jsx';\nimport Scenario from './components/Scenario.jsx';\nimport Requirement from './components/Requirement.jsx';\nimport EditorPreviewAPIDesignSystems from './components/EditorPreviewAPIDesignSystems.jsx';\nimport ParseErrors from './components/ParseErrors.jsx';\nimport EditorPreviewWrapper from './wrap-components/EditorPreviewWrapper.jsx';\n\nconst EditorPreviewApiDesignSystemsPlugin = () => {\n return {\n components: {\n ADSMain: Main,\n ADSInfo: Info,\n ADSPrinciples: Principles,\n ADSPrinciple: Principle,\n ADSStandards: Standards,\n ADSStandard: Standard,\n ADSScenarios: Scenarios,\n ADSScenario: Scenario,\n ADSRequirement: Requirement,\n EditorPreviewAPIDesignSystems,\n EditorPreviewAPIDesignSystemsParseErrors: ParseErrors,\n },\n wrapComponents: {\n EditorPreviewPane: EditorPreviewWrapper,\n },\n statePlugins: {\n editor: {\n wrapActions: {\n detectContentTypeSuccess: detectContentTypeSuccessWrap,\n },\n },\n editorPreviewADS: {\n actions: {\n previewUnmounted,\n\n parse,\n parseStarted,\n parseSuccess,\n parseFailure,\n },\n selectors: {\n selectParseStatus,\n selectIsParseInProgress,\n selectIsParseSuccess,\n selectIsParseFailure,\n selectParseResult,\n selectParseError,\n selectMainElement,\n selectVersion,\n selectInfo,\n selectPrinciplesCount,\n selectStandardsCount,\n selectScenariosCount,\n selectPrinciples,\n selectStandards,\n selectScenarios,\n selectStandardIdentifier,\n selectScenarioDescription,\n selectScenarioRequirements,\n selectRequirementLevel,\n selectRequirementValues,\n },\n reducers,\n },\n },\n };\n};\n\nexport default EditorPreviewApiDesignSystemsPlugin;\n","/**\n * Action types.\n */\nexport const EDITOR_CONTENT_SET_READ_ONLY = 'editor_update_read_only';\nexport const EDITOR_CONTENT_SET_READ_WRITE = 'editor_update_read_write';\n\n/**\n * Action creators.\n */\nexport const setContentReadOnly = () => ({\n type: EDITOR_CONTENT_SET_READ_ONLY,\n});\n\nexport const setContentReadWrite = () => ({\n type: EDITOR_CONTENT_SET_READ_WRITE,\n});\n","import { EDITOR_CONTENT_SET_READ_ONLY, EDITOR_CONTENT_SET_READ_WRITE } from './actions.js';\n\nconst reducers = {\n [EDITOR_CONTENT_SET_READ_ONLY]: (state) => {\n return state.set('contentIsReadOnly', true);\n },\n [EDITOR_CONTENT_SET_READ_WRITE]: (state) => {\n return state.set('contentIsReadOnly', false);\n },\n};\n\nexport default reducers;\n","export const selectContentIsReadOnly = (state) => state.get('contentIsReadOnly') || false;\n\nexport const selectContentIsReadWrite = (state) => !selectContentIsReadOnly(state);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { LockIcon, UnlockIcon } from '@primer/octicons-react';\n\nconst ReadOnlySelectionIcon = ({ editorSelectors, editorActions }) => {\n const isReadWrite = editorSelectors.selectContentIsReadWrite();\n const handleReadonly = (isReadOnlyNew) => () => {\n if (isReadOnlyNew) {\n editorActions.setContentReadOnly();\n } else {\n editorActions.setContentReadWrite();\n }\n };\n\n return isReadWrite ? (\n <div className=\"swagger-editor__generic-padding-thin-top-bottom\">\n <button\n type=\"button\"\n className=\"swagger-editor__editor-pane-bar-control\"\n onClick={handleReadonly(true)}\n >\n <UnlockIcon size=\"small\" aria-label=\"Unlock\" />\n </button>\n </div>\n ) : (\n <div className=\"swagger-editor__generic-padding-thin-top-bottom\">\n <button\n type=\"button\"\n className=\"swagger-editor__editor-pane-bar-control\"\n onClick={handleReadonly(false)}\n >\n <LockIcon size=\"small\" aria-label=\"Lock\" />\n </button>\n </div>\n );\n};\n\nReadOnlySelectionIcon.propTypes = {\n editorActions: PropTypes.shape({\n setContentReadOnly: PropTypes.func.isRequired,\n setContentReadWrite: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectContentIsReadWrite: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ReadOnlySelectionIcon;\n","import PropTypes from 'prop-types';\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst EditorPaneBarTopWrapper = (Original, system) => {\n const ReadOnlySelection = system.getComponent('ReadOnlySelection', true);\n const EditorPaneBarTop = ({ renderControls, ...rest }) => {\n return (\n <Original\n {...rest}\n renderControls={(controls) =>\n renderControls(\n <>\n <ReadOnlySelection />\n {controls}\n </>\n )\n }\n />\n );\n };\n EditorPaneBarTop.propTypes = {\n renderControls: PropTypes.func,\n };\n EditorPaneBarTop.defaultProps = {\n renderControls: (controls) => controls,\n };\n\n return EditorPaneBarTop;\n};\n\nexport default EditorPaneBarTopWrapper;\n","const EditorWrapper = (Original, system) => {\n const Editor = (props) => {\n const isReadOnly = system.editorSelectors.selectContentIsReadOnly();\n\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <Original {...props} isReadOnly={isReadOnly} />;\n };\n\n return Editor;\n};\n\nexport default EditorWrapper;\n","import reducers from './reducers.js';\nimport { setContentReadOnly, setContentReadWrite } from './actions.js';\nimport { selectContentIsReadOnly, selectContentIsReadWrite } from './selectors.js';\nimport ReadOnlySelectionIcon from './components/ReadOnlySelectionIcon.jsx';\nimport EditorPaneBarTopWrapper from './wrap-components/EditorPaneBarTopWrapper.jsx';\nimport EditorWrapper from './wrap-components/EditorWrapper.jsx';\n\nconst EditorContentReadOnlyPlugin = () => {\n return {\n components: {\n ReadOnlySelection: ReadOnlySelectionIcon,\n },\n wrapComponents: {\n Editor: EditorWrapper,\n EditorPaneBarTop: EditorPaneBarTopWrapper,\n },\n statePlugins: {\n editor: {\n reducers,\n selectors: {\n selectContentIsReadOnly,\n selectContentIsReadWrite,\n },\n actions: {\n setContentReadOnly,\n setContentReadWrite,\n },\n },\n },\n };\n};\n\nexport default EditorContentReadOnlyPlugin;\n","export const EDITOR_CONTENT_SET_ORIGIN = 'editor_content_set_origin';\n\nexport const setContentOrigin = (contentOrigin = 'not-editor') => ({\n type: EDITOR_CONTENT_SET_ORIGIN,\n payload: String(contentOrigin),\n});\n","import { EDITOR_CONTENT_SET_ORIGIN } from './actions.js';\n\nconst reducers = {\n [EDITOR_CONTENT_SET_ORIGIN]: (state, action) => {\n return state.set('contentOrigin', action.payload);\n },\n};\n\nexport default reducers;\n","// eslint-disable-next-line import/prefer-default-export\nexport const selectContentOrigin = (state) => state.get('contentOrigin') || 'not-editor';\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const setContent = createSafeActionWrapper(\n (oriAction, system) => (content, contentOrigin) => {\n const { editorActions } = system;\n\n editorActions.setContentOrigin(contentOrigin);\n }\n);\n","import reducers from './reducers.js';\nimport { selectContentOrigin } from './selectors.js';\nimport { setContentOrigin } from './actions.js';\nimport { setContent } from './wrap-actions.js';\n\n/**\n * Wraps setContent to include the \"contentOrigin\" parameter, defaulting to \"not-editor\".\n * Includes a selector to get the origin: `editorSelectors.selectContentOrigin()`.\n */\n\nconst EditorContentOriginPlugin = () => {\n return {\n statePlugins: {\n editor: {\n wrapActions: {\n setContent,\n },\n reducers,\n selectors: {\n selectContentOrigin,\n },\n actions: {\n setContentOrigin,\n },\n },\n },\n };\n};\n\nexport default EditorContentOriginPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_asyncapi_json_2_77a2dadd__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_asyncapi_yaml_2_8d232224__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_json_3_0_9283cb64__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_yaml_3_0_95da947e__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_json_3_1_6b2e7700__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_yaml_3_1_7a900d16__.detectionRegExp });","import ShortUniqueId from 'short-unique-id';\nimport { detectionRegExp as detectionRegExpAsyncAPIJSON2 } from '@swagger-api/apidom-parser-adapter-asyncapi-json-2';\nimport { detectionRegExp as detectionRegExpAsyncAPIYAML2 } from '@swagger-api/apidom-parser-adapter-asyncapi-yaml-2';\nimport { detectionRegExp as detectionRegExpOpenAPIJSON30x } from '@swagger-api/apidom-parser-adapter-openapi-json-3-0';\nimport { detectionRegExp as detectionRegExpOpenAPIYAML30x } from '@swagger-api/apidom-parser-adapter-openapi-yaml-3-0';\nimport { detectionRegExp as detectionRegExpOpenAPIJSON31x } from '@swagger-api/apidom-parser-adapter-openapi-json-3-1';\nimport { detectionRegExp as detectionRegExpOpenAPIYAML31x } from '@swagger-api/apidom-parser-adapter-openapi-yaml-3-1';\nimport {\n detectionRegExp as detectionRegExpApiDesignSystemsJSON,\n detect as detectAPIDesignSystemsJSON,\n} from '@swagger-api/apidom-parser-adapter-api-design-systems-json';\nimport {\n detectionRegExp as detectionRegExpApiDesignSystemsYAML,\n detect as detectAPIDesignSystemsYAML,\n} from '@swagger-api/apidom-parser-adapter-api-design-systems-yaml';\n\n/**\n * Action types.\n */\nexport const EDITOR_CONTENT_TYPE_DETECT_STARTED = 'editor_content_type_detect_started';\nexport const EDITOR_CONTENT_TYPE_DETECT_SUCCESS = 'editor_content_type_detect_success';\nexport const EDITOR_CONTENT_TYPE_DETECT_FAILURE = 'editor_content_type_detect_failure';\n\n/**\n * Action creators.\n */\nexport const detectContentTypeStarted = ({ content, requestId }) => ({\n type: EDITOR_CONTENT_TYPE_DETECT_STARTED,\n payload: content,\n meta: {\n requestId,\n },\n});\n\nexport const detectContentTypeSuccess = ({ contentType, content, requestId }) => ({\n type: EDITOR_CONTENT_TYPE_DETECT_SUCCESS,\n payload: contentType,\n meta: { content, requestId },\n});\n\nexport const detectContentTypeFailure = ({ error, content, requestId }) => ({\n type: EDITOR_CONTENT_TYPE_DETECT_FAILURE,\n payload: error,\n error: true,\n meta: { content, requestId },\n});\n\n/**\n * Async thunks.\n */\nexport const detectContentType = (content) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n /**\n * This code can easily be offloaded to a web worker and allow MRT\n * not to be blocked by the detection.\n */\n const { editorActions, fn } = system;\n const requestId = uid();\n\n editorActions.detectContentTypeStarted({ content, requestId });\n\n try {\n const asyncApi2JSONMatch = content.match(detectionRegExpAsyncAPIJSON2);\n if (asyncApi2JSONMatch !== null && fn.isValidJSONObject(content)) {\n const { groups } = asyncApi2JSONMatch;\n const version = groups?.version_json;\n const contentType = `application/vnd.aai.asyncapi+json;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const asyncApi2YAMLMatch = content.match(detectionRegExpAsyncAPIYAML2);\n if (asyncApi2YAMLMatch !== null && fn.isValidYAMLObject(content)) {\n const { groups } = asyncApi2YAMLMatch;\n const version = groups?.version_json || groups?.version_yaml;\n const contentType = `application/vnd.aai.asyncapi+yaml;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi20JSONMatch = content.match(/\"swagger\"\\s*:\\s*\"(?<version_json>2\\.0)\"/);\n if (openApi20JSONMatch !== null && fn.isValidJSONObject(content)) {\n const contentType = 'application/vnd.oai.openapi+json;version=2.0';\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi2YAMLMatch = content.match(\n /(?<YAML>^([\"']?)swagger\\2\\s*:\\s*([\"']?)(?<version_yaml>2\\.0)\\3(?:\\s+|$))|(?<JSON>\"asyncapi\"\\s*:\\s*\"(?<version_json>2\\.0)\")/m\n );\n if (openApi2YAMLMatch !== null && fn.isValidYAMLObject(content)) {\n const contentType = 'application/vnd.oai.openapi+yaml;version=2.0';\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi30xJSONMatch = content.match(detectionRegExpOpenAPIJSON30x);\n if (openApi30xJSONMatch !== null && fn.isValidJSONObject(content)) {\n const { groups } = openApi30xJSONMatch;\n const version = groups?.version_json;\n const contentType = `application/vnd.oai.openapi+json;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi30xYAMLMatch = content.match(detectionRegExpOpenAPIYAML30x);\n if (openApi30xYAMLMatch !== null && fn.isValidYAMLObject(content)) {\n const { groups } = openApi30xYAMLMatch;\n const version = groups?.version_json || groups?.version_yaml;\n const contentType = `application/vnd.oai.openapi+yaml;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi31xJSONMatch = content.match(detectionRegExpOpenAPIJSON31x);\n if (openApi31xJSONMatch !== null && fn.isValidJSONObject(content)) {\n const { groups } = openApi31xJSONMatch;\n const version = groups?.version_json;\n const contentType = `application/vnd.oai.openapi+json;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi31xYAMLMatch = content.match(detectionRegExpOpenAPIYAML31x);\n if (openApi31xYAMLMatch !== null && fn.isValidYAMLObject(content)) {\n const { groups } = openApi31xYAMLMatch;\n const version = groups?.version_json || groups?.version_yaml;\n const contentType = `application/vnd.oai.openapi+yaml;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const apiDesignSystemsJSONMatch = content.match(detectionRegExpApiDesignSystemsJSON);\n if (apiDesignSystemsJSONMatch !== null && (await detectAPIDesignSystemsJSON(content))) {\n const { groups } = apiDesignSystemsJSONMatch;\n const version = groups?.version_json;\n const contentType = `application/vnd.aai.apidesignsystems+json;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const apiDesignSystemsYAMLMatch = content.match(detectionRegExpApiDesignSystemsYAML);\n if (apiDesignSystemsYAMLMatch !== null && (await detectAPIDesignSystemsYAML(content))) {\n const { groups } = apiDesignSystemsYAMLMatch;\n const version = groups?.version_json || groups?.version_yaml;\n const contentType = `application/vnd.aai.apidesignsystems+yaml;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n if (fn.isValidJSON(content)) {\n const contentType = 'application/json';\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n if (fn.isValidYAML(content)) {\n const contentType = 'text/yaml';\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n return editorActions.detectContentTypeFailure({\n error: new Error('No content type detected'),\n content,\n requestId,\n });\n } catch (error) {\n return editorActions.detectContentTypeFailure({ error, content, requestId });\n }\n };\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const setContent = createSafeActionWrapper((oriAction, system) => (content) => {\n const { editorActions } = system;\n\n editorActions.detectContentType(content, system);\n});\n","import {\n EDITOR_CONTENT_TYPE_DETECT_STARTED,\n EDITOR_CONTENT_TYPE_DETECT_SUCCESS,\n EDITOR_CONTENT_TYPE_DETECT_FAILURE,\n} from './actions.js';\n\nexport const IDLE_STATUS = 'idle';\nexport const DETECTING_STATUS = 'detecting';\nexport const SUCCESS_STATUS = 'success';\nexport const FAILURE_STATUS = 'failure';\n\nexport const initialState = {\n contentTypeDetectionStatus: IDLE_STATUS,\n contentTypeDetectionRequestId: null,\n contentType: null,\n contentTypeError: null,\n};\n\n/**\n * Case reducers modeled as finite state machine.\n */\n\nconst detectContentStartedReducer = (state, action) => {\n return state.merge({\n contentTypeDetectionStatus: DETECTING_STATUS,\n contentTypeDetectionRequestId: action.meta.requestId,\n });\n};\n\nconst detectContentSuccessReducer = (state, action) => {\n const status = state.get('contentTypeDetectionStatus') || IDLE_STATUS;\n const requestId = state.get('contentTypeDetectionRequestId');\n\n if (status === DETECTING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n contentTypeDetectionStatus: SUCCESS_STATUS,\n contentTypeDetectionRequestId: null,\n contentType: action.payload,\n contentTypeError: null,\n });\n }\n\n return state;\n};\n\nconst detectContentFailureReducer = (state, action) => {\n const status = state.get('contentTypeDetectionStatus') || IDLE_STATUS;\n const requestId = state.get('contentTypeDetectionRequestId');\n\n if (status === DETECTING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n contentTypeDetectionStatus: FAILURE_STATUS,\n contentTypeDetectionRequestId: null,\n contentType: null,\n contentTypeError: action.payload.message,\n });\n }\n\n return state;\n};\n\n/**\n * Root reducer for this plugin.\n */\nconst reducers = {\n [EDITOR_CONTENT_TYPE_DETECT_STARTED]: detectContentStartedReducer,\n [EDITOR_CONTENT_TYPE_DETECT_SUCCESS]: detectContentSuccessReducer,\n [EDITOR_CONTENT_TYPE_DETECT_FAILURE]: detectContentFailureReducer,\n};\n\nexport default reducers;\n","import { createSelector } from 'reselect';\n\nimport { initialState, DETECTING_STATUS } from './reducers.js';\n\nexport const selectContentTypeDetectionStatus = (state) => state.get('contentTypeDetectionStatus');\n\nexport const selectIsContentTypeDetectionInProgress = createSelector(\n selectContentTypeDetectionStatus,\n (status) => {\n return status === DETECTING_STATUS;\n }\n);\n\nexport const selectContentType = (state) => state.get('contentType') || initialState.contentType;\n\nexport const selectIsContentTypeOpenAPI = createSelector(selectContentType, (contentType) => {\n return contentType !== null && contentType.startsWith('application/vnd.oai.openapi');\n});\n\nexport const selectIsContentTypeOpenAPI20 = createSelector(\n selectIsContentTypeOpenAPI,\n selectContentType,\n (isContentOpenAPI, contentType) => {\n return isContentOpenAPI && /version=2\\.0$/.test(contentType);\n }\n);\n\nexport const selectIsContentTypeOpenAPI30x = createSelector(\n selectIsContentTypeOpenAPI,\n selectContentType,\n (isContentOpenAPI, contentType) => {\n return isContentOpenAPI && /version=3\\.0\\.\\d+$/.test(contentType);\n }\n);\n\nexport const selectIsContentTypeOpenAPI31x = createSelector(\n selectIsContentTypeOpenAPI,\n selectContentType,\n (isContentOpenAPI, contentType) => {\n return isContentOpenAPI && /version=3\\.1\\.\\d+$/.test(contentType);\n }\n);\n\nexport const selectIsContentTypeAsyncAPI = createSelector(selectContentType, (contentType) => {\n return contentType !== null && contentType.startsWith('application/vnd.aai.asyncapi');\n});\n\nexport const selectIsContentTypeAsyncAPI2 = createSelector(\n selectIsContentTypeAsyncAPI,\n selectContentType,\n (isContentAsyncAPI, contentType) => {\n return isContentAsyncAPI && /version=2.\\d+\\.\\d+$/.test(contentType);\n }\n);\n\nexport const selectIsContentTypeAPIDesignSystems = createSelector(\n selectContentType,\n (contentType) => {\n return contentType !== null && contentType.startsWith('application/vnd.aai.apidesignsystems');\n }\n);\n\nexport const selectIsContentFormatJSON = createSelector(selectContentType, (contentType) => {\n return (\n contentType !== null && (contentType === 'application/json' || contentType.includes('+json'))\n );\n});\n\nexport const selectIsContentFormatYAML = createSelector(selectContentType, (contentType) => {\n return contentType !== null && (contentType === 'text/yaml' || contentType.includes('+yaml'));\n});\n\nexport const selectInferFileExtensionFromContent = createSelector(\n selectIsContentFormatJSON,\n selectIsContentFormatYAML,\n (isJSON, isYAML) => {\n if (isJSON) {\n return '.json';\n }\n if (isYAML) {\n return '.yaml';\n }\n\n return '.txt';\n }\n);\n\nexport const selectInferFileNameFromContent = createSelector(\n selectIsContentTypeOpenAPI20,\n selectIsContentTypeOpenAPI30x,\n selectIsContentTypeOpenAPI31x,\n selectIsContentTypeAsyncAPI2,\n (isOpenAPI20, isOpenAPI30x, isOpenAPI31x, isAsyncAPI2) => {\n /* eslint-disable no-nested-ternary */\n return isOpenAPI20\n ? 'openapi2'\n : isOpenAPI30x\n ? 'openapi3_0'\n : isOpenAPI31x\n ? 'openapi3_1'\n : isAsyncAPI2\n ? 'asyncapi2'\n : 'definition';\n /* eslint-enable */\n }\n);\n\nexport const selectInferFileNameWithExtensionFromContent = createSelector(\n selectInferFileExtensionFromContent,\n selectInferFileNameFromContent,\n (extension, fileName) => `${fileName}${extension}`\n);\n","import YAML from 'js-yaml';\n\n/**\n * Checks if `content` is valid JSON string.\n *\n * @param content string\n * @returns {boolean}\n */\nexport const isValidJSON = (content) => {\n try {\n return JSON.parse(content) && true;\n } catch {\n return false;\n }\n};\n\n/**\n * Checks if `content` is valid JSON string containing object.\n *\n * @param content string\n * @returns {boolean}\n */\nexport const isValidJSONObject = (content) => {\n try {\n const obj = JSON.parse(content);\n return Object.prototype.toString.call(obj) === '[object Object]';\n } catch {\n return false;\n }\n};\n\n/**\n * Checks if `content` is valid YAML string.\n *\n * @param content string\n * @returns {boolean}\n */\nexport const isValidYAML = (content) => {\n try {\n return YAML.load(content) && true;\n } catch {\n return false;\n }\n};\n\n/**\n * Checks if `content` is valid YAML string containing object.\n *\n * @param content string\n * @returns {boolean}\n */\nexport const isValidYAMLObject = (content) => {\n try {\n const obj = YAML.load(content);\n return Object.prototype.toString.call(obj) === '[object Object]';\n } catch {\n return false;\n }\n};\n","import {\n detectContentType,\n detectContentTypeStarted,\n detectContentTypeSuccess,\n detectContentTypeFailure,\n} from './actions.js';\nimport { setContent as setContentWrap } from './wrap-actions.js';\nimport {\n selectIsContentFormatYAML,\n selectIsContentFormatJSON,\n selectContentType,\n selectContentTypeDetectionStatus,\n selectIsContentTypeDetectionInProgress,\n selectIsContentTypeAsyncAPI,\n selectIsContentTypeAsyncAPI2,\n selectIsContentTypeOpenAPI,\n selectIsContentTypeOpenAPI20,\n selectIsContentTypeOpenAPI30x,\n selectIsContentTypeOpenAPI31x,\n selectIsContentTypeAPIDesignSystems,\n selectInferFileExtensionFromContent,\n selectInferFileNameFromContent,\n selectInferFileNameWithExtensionFromContent,\n} from './selectors.js';\nimport reducers from './reducers.js';\nimport { isValidJSON, isValidJSONObject, isValidYAML, isValidYAMLObject } from './fn.js';\n\nconst EditorContentTypePlugin = () => {\n return {\n statePlugins: {\n editor: {\n wrapActions: {\n setContent: setContentWrap,\n },\n actions: {\n detectContentType,\n detectContentTypeStarted,\n detectContentTypeSuccess,\n detectContentTypeFailure,\n },\n selectors: {\n selectIsContentFormatYAML,\n selectIsContentFormatJSON,\n selectContentType,\n selectContentTypeDetectionStatus,\n selectIsContentTypeDetectionInProgress,\n selectIsContentTypeAsyncAPI,\n selectIsContentTypeAsyncAPI2,\n selectIsContentTypeOpenAPI,\n selectIsContentTypeOpenAPI20,\n selectIsContentTypeOpenAPI30x,\n selectIsContentTypeOpenAPI31x,\n selectIsContentTypeAPIDesignSystems,\n selectInferFileExtensionFromContent,\n selectInferFileNameFromContent,\n selectInferFileNameWithExtensionFromContent,\n },\n reducers,\n },\n },\n fn: {\n isValidJSON,\n isValidJSONObject,\n isValidYAML,\n isValidYAMLObject,\n },\n };\n};\n\nexport default EditorContentTypePlugin;\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\nexport const setContent = createSafeActionWrapper((oriAction, system) => (content) => {\n const { editorContentPersistence } = system;\n\n editorContentPersistence.set(content);\n});\n\n/**\n * When given a SwaggerUI config prop `url`,\n * before `download` of new content as specified by `url`,\n * check if active content already exists in localStorage.\n */\n\nexport const download = (oriAction, system) => (content) => {\n const { editorContentPersistence } = system;\n\n if (!editorContentPersistence.has()) {\n oriAction(content);\n }\n};\n","const STORAGE_KEY = 'swagger-editor-next-content';\n\nexport const saveToLocalStorage = (value) => {\n return localStorage.setItem(STORAGE_KEY, value);\n};\n\nexport const loadFromLocalStorage = () => {\n return localStorage.getItem(STORAGE_KEY);\n};\n\nexport const hasLocalStorage = () => {\n return loadFromLocalStorage() !== null;\n};\n","import {\n hasLocalStorage,\n saveToLocalStorage,\n loadFromLocalStorage,\n} from './layers/local-storage.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const editorContentPersistence = {\n has() {\n return hasLocalStorage();\n },\n set(value) {\n return saveToLocalStorage(value);\n },\n get() {\n return loadFromLocalStorage();\n },\n};\n","const afterLoad = (system) => {\n const { editorContentPersistence, editorActions, editorSelectors } = system;\n\n const contentPersisted = editorContentPersistence.get();\n const isPersisted = contentPersisted !== null;\n\n if (!isPersisted) return; // nothing persisted\n if (editorSelectors.selectContent() === contentPersisted) return; // content already persisted\n\n editorActions.setContent(contentPersisted, 'local-storage');\n};\n\nexport default afterLoad;\n","import { setContent as setContentWrap, download as downloadWrap } from './wrap-actions.js';\nimport { editorContentPersistence } from './root-injects.js';\nimport afterLoad from './after-load.js';\n\nconst EditorContentPersistencePlugin = () => {\n return {\n afterLoad,\n rootInjects: {\n editorContentPersistence,\n },\n statePlugins: {\n spec: {\n wrapActions: {\n download: downloadWrap,\n },\n },\n editor: {\n wrapActions: {\n setContent: setContentWrap,\n },\n },\n },\n };\n};\n\nexport default EditorContentPersistencePlugin;\n","const selectOpenAPI310PetstoreYAML = () => `openapi: 3.1.0\ninfo:\n title: Swagger Petstore - OpenAPI 3.1\n description: |-\n This is a sample Pet Store Server based on the OpenAPI 3.1 specification. You can find out more about\n Swagger at [https://swagger.io](https://swagger.io). In the third iteration of the pet store, we've switched to the design first approach!\n You can now help us improve the API whether it's by making changes to the definition itself or to the code.\n That way, with time, we can improve the API in general, and expose some of the new features in OAS3.\n\n Some useful links:\n - [The Pet Store repository](https://github.com/swagger-api/swagger-petstore)\n - [The source API definition for the Pet Store](https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml)\n\n termsOfService: http://swagger.io/terms/\n contact:\n email: apiteam@swagger.io\n license:\n name: Apache 2.0\n url: http://www.apache.org/licenses/LICENSE-2.0.html\n version: 1.0.11\nexternalDocs:\n description: Find out more about Swagger\n url: http://swagger.io\nservers:\n - url: https://petstore3.swagger.io/api/v3\ntags:\n - name: pet\n description: Everything about your Pets\n externalDocs:\n description: Find out more\n url: http://swagger.io\n - name: store\n description: Access to Petstore orders\n externalDocs:\n description: Find out more about our store\n url: http://swagger.io\n - name: user\n description: Operations about user\npaths:\n /pet:\n put:\n tags:\n - pet\n summary: Update an existing pet\n description: Update an existing pet by Id\n operationId: updatePet\n requestBody:\n description: Update an existent pet in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Pet'\n required: true\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid ID supplied\n '404':\n description: Pet not found\n '405':\n description: Validation exception\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n post:\n tags:\n - pet\n summary: Add a new pet to the store\n description: Add a new pet to the store\n operationId: addPet\n requestBody:\n description: Create a new pet in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Pet'\n required: true\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '405':\n description: Invalid input\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/findByStatus:\n get:\n tags:\n - pet\n summary: Finds Pets by status\n description: Multiple status values can be provided with comma separated strings\n operationId: findPetsByStatus\n parameters:\n - name: status\n in: query\n description: Status values that need to be considered for filter\n required: false\n explode: true\n schema:\n type: string\n default: available\n enum:\n - available\n - pending\n - sold\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid status value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/findByTags:\n get:\n tags:\n - pet\n summary: Finds Pets by tags\n description: Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.\n operationId: findPetsByTags\n parameters:\n - name: tags\n in: query\n description: Tags to filter by\n required: false\n explode: true\n schema:\n type: array\n items:\n type: string\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid tag value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/{petId}:\n get:\n tags:\n - pet\n summary: Find pet by ID\n description: Returns a single pet\n operationId: getPetById\n parameters:\n - name: petId\n in: path\n description: ID of pet to return\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid ID supplied\n '404':\n description: Pet not found\n security:\n - api_key: []\n - petstore_auth:\n - write:pets\n - read:pets\n post:\n tags:\n - pet\n summary: Updates a pet in the store with form data\n description: ''\n operationId: updatePetWithForm\n parameters:\n - name: petId\n in: path\n description: ID of pet that needs to be updated\n required: true\n schema:\n type: integer\n format: int64\n - name: name\n in: query\n description: Name of pet that needs to be updated\n schema:\n type: string\n - name: status\n in: query\n description: Status of pet that needs to be updated\n schema:\n type: string\n responses:\n '405':\n description: Invalid input\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n delete:\n tags:\n - pet\n summary: Deletes a pet\n description: delete a pet\n operationId: deletePet\n parameters:\n - name: api_key\n in: header\n description: ''\n required: false\n schema:\n type: string\n - name: petId\n in: path\n description: Pet id to delete\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '400':\n description: Invalid pet value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/{petId}/uploadImage:\n post:\n tags:\n - pet\n summary: uploads an image\n description: ''\n operationId: uploadFile\n parameters:\n - name: petId\n in: path\n description: ID of pet to update\n required: true\n schema:\n type: integer\n format: int64\n - name: additionalMetadata\n in: query\n description: Additional Metadata\n required: false\n schema:\n type: string\n requestBody:\n content:\n application/octet-stream:\n schema:\n type: string\n format: binary\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ApiResponse'\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /store/inventory:\n get:\n tags:\n - store\n summary: Returns pet inventories by status\n description: Returns a map of status codes to quantities\n operationId: getInventory\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: object\n additionalProperties:\n type: integer\n format: int32\n security:\n - api_key: []\n /store/order:\n post:\n tags:\n - store\n summary: Place an order for a pet\n description: Place a new order in the store\n operationId: placeOrder\n requestBody:\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n application/xml:\n schema:\n $ref: '#/components/schemas/Order'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Order'\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n '405':\n description: Invalid input\n /store/order/{orderId}:\n get:\n tags:\n - store\n summary: Find purchase order by ID\n description: For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions.\n operationId: getOrderById\n parameters:\n - name: orderId\n in: path\n description: ID of order that needs to be fetched\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n application/xml:\n schema:\n $ref: '#/components/schemas/Order'\n '400':\n description: Invalid ID supplied\n '404':\n description: Order not found\n delete:\n tags:\n - store\n summary: Delete purchase order by ID\n description: For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors\n operationId: deleteOrder\n parameters:\n - name: orderId\n in: path\n description: ID of the order that needs to be deleted\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '400':\n description: Invalid ID supplied\n '404':\n description: Order not found\n /user:\n post:\n tags:\n - user\n summary: Create user\n description: This can only be done by the logged in user.\n operationId: createUser\n requestBody:\n description: Created user object\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/User'\n responses:\n default:\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n /user/createWithList:\n post:\n tags:\n - user\n summary: Creates list of users with given input array\n description: Creates list of users with given input array\n operationId: createUsersWithListInput\n requestBody:\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/User'\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n default:\n description: successful operation\n /user/login:\n get:\n tags:\n - user\n summary: Logs user into the system\n description: ''\n operationId: loginUser\n parameters:\n - name: username\n in: query\n description: The user name for login\n required: false\n schema:\n type: string\n - name: password\n in: query\n description: The password for login in clear text\n required: false\n schema:\n type: string\n responses:\n '200':\n description: successful operation\n headers:\n X-Rate-Limit:\n description: calls per hour allowed by the user\n schema:\n type: integer\n format: int32\n X-Expires-After:\n description: date in UTC when token expires\n schema:\n type: string\n format: date-time\n content:\n application/xml:\n schema:\n type: string\n application/json:\n schema:\n type: string\n '400':\n description: Invalid username/password supplied\n /user/logout:\n get:\n tags:\n - user\n summary: Logs out current logged in user session\n description: ''\n operationId: logoutUser\n parameters: []\n responses:\n default:\n description: successful operation\n /user/{username}:\n get:\n tags:\n - user\n summary: Get user by user name\n description: ''\n operationId: getUserByName\n parameters:\n - name: username\n in: path\n description: 'The name that needs to be fetched. Use user1 for testing. '\n required: true\n schema:\n type: string\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n '400':\n description: Invalid username supplied\n '404':\n description: User not found\n put:\n tags:\n - user\n summary: Update user\n description: This can only be done by the logged in user.\n operationId: updateUser\n parameters:\n - name: username\n in: path\n description: name that need to be deleted\n required: true\n schema:\n type: string\n requestBody:\n description: Update an existent user in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/User'\n responses:\n default:\n description: successful operation\n delete:\n tags:\n - user\n summary: Delete user\n description: This can only be done by the logged in user.\n operationId: deleteUser\n parameters:\n - name: username\n in: path\n description: The name that needs to be deleted\n required: true\n schema:\n type: string\n responses:\n '400':\n description: Invalid username supplied\n '404':\n description: User not found\ncomponents:\n schemas:\n Order:\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [10]\n petId:\n type: integer\n format: int64\n examples: [198772]\n quantity:\n type: integer\n format: int32\n examples: [7]\n shipDate:\n type: string\n format: date-time\n status:\n type: string\n description: Order Status\n examples: [approved]\n enum:\n - placed\n - approved\n - delivered\n complete:\n type: boolean\n xml:\n name: order\n Customer:\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [100000]\n username:\n type: string\n examples: [fehguy]\n address:\n type: array\n xml:\n name: addresses\n wrapped: true\n items:\n $ref: '#/components/schemas/Address'\n xml:\n name: customer\n Address:\n type: object\n properties:\n street:\n type: string\n examples: [437 Lytton]\n city:\n type: string\n examples: [Palo Alto]\n state:\n type: string\n examples: [CA]\n zip:\n type: string\n examples: ['94301']\n xml:\n name: address\n Category:\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [1]\n name:\n type: string\n examples: [Dogs]\n xml:\n name: category\n User:\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [10]\n username:\n type: string\n examples: [theUser]\n firstName:\n type: string\n examples: [John]\n lastName:\n type: string\n examples: [James]\n email:\n type: string\n examples: [john@email.com]\n password:\n type: string\n examples: ['12345']\n phone:\n type: string\n examples: ['12345']\n userStatus:\n type: integer\n description: User Status\n format: int32\n examples: [1]\n xml:\n name: user\n Tag:\n type: object\n properties:\n id:\n type: integer\n format: int64\n name:\n type: string\n xml:\n name: tag\n Pet:\n required:\n - name\n - photoUrls\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [10]\n name:\n type: string\n examples: [doggie]\n category:\n $ref: '#/components/schemas/Category'\n photoUrls:\n type: array\n xml:\n wrapped: true\n items:\n type: string\n xml:\n name: photoUrl\n tags:\n type: array\n xml:\n wrapped: true\n items:\n $ref: '#/components/schemas/Tag'\n status:\n type: string\n description: pet status in the store\n enum:\n - available\n - pending\n - sold\n xml:\n name: pet\n ApiResponse:\n type: object\n properties:\n code:\n type: integer\n format: int32\n type:\n type: string\n message:\n type: string\n xml:\n name: '##default'\n requestBodies:\n Pet:\n description: Pet object that needs to be added to the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n UserArray:\n description: List of user object\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/User'\n securitySchemes:\n petstore_auth:\n type: oauth2\n flows:\n implicit:\n authorizationUrl: https://petstore3.swagger.io/oauth/authorize\n scopes:\n write:pets: modify pets in your account\n read:pets: read your pets\n api_key:\n type: apiKey\n name: api_key\n in: header\n`;\n\nexport default selectOpenAPI310PetstoreYAML;\n","const selectOpenAPI310PetstoreYAML = () => `openapi: 3.0.3\ninfo:\n title: Swagger Petstore - OpenAPI 3.0\n description: |-\n This is a sample Pet Store Server based on the OpenAPI 3.0 specification. You can find out more about\n Swagger at [https://swagger.io](https://swagger.io). In the third iteration of the pet store, we've switched to the design first approach!\n You can now help us improve the API whether it's by making changes to the definition itself or to the code.\n That way, with time, we can improve the API in general, and expose some of the new features in OAS3.\n\n Some useful links:\n - [The Pet Store repository](https://github.com/swagger-api/swagger-petstore)\n - [The source API definition for the Pet Store](https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml)\n\n termsOfService: http://swagger.io/terms/\n contact:\n email: apiteam@swagger.io\n license:\n name: Apache 2.0\n url: http://www.apache.org/licenses/LICENSE-2.0.html\n version: 1.0.11\nexternalDocs:\n description: Find out more about Swagger\n url: http://swagger.io\nservers:\n - url: https://petstore3.swagger.io/api/v3\ntags:\n - name: pet\n description: Everything about your Pets\n externalDocs:\n description: Find out more\n url: http://swagger.io\n - name: store\n description: Access to Petstore orders\n externalDocs:\n description: Find out more about our store\n url: http://swagger.io\n - name: user\n description: Operations about user\npaths:\n /pet:\n put:\n tags:\n - pet\n summary: Update an existing pet\n description: Update an existing pet by Id\n operationId: updatePet\n requestBody:\n description: Update an existent pet in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Pet'\n required: true\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid ID supplied\n '404':\n description: Pet not found\n '405':\n description: Validation exception\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n post:\n tags:\n - pet\n summary: Add a new pet to the store\n description: Add a new pet to the store\n operationId: addPet\n requestBody:\n description: Create a new pet in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Pet'\n required: true\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '405':\n description: Invalid input\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/findByStatus:\n get:\n tags:\n - pet\n summary: Finds Pets by status\n description: Multiple status values can be provided with comma separated strings\n operationId: findPetsByStatus\n parameters:\n - name: status\n in: query\n description: Status values that need to be considered for filter\n required: false\n explode: true\n schema:\n type: string\n default: available\n enum:\n - available\n - pending\n - sold\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid status value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/findByTags:\n get:\n tags:\n - pet\n summary: Finds Pets by tags\n description: Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.\n operationId: findPetsByTags\n parameters:\n - name: tags\n in: query\n description: Tags to filter by\n required: false\n explode: true\n schema:\n type: array\n items:\n type: string\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid tag value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/{petId}:\n get:\n tags:\n - pet\n summary: Find pet by ID\n description: Returns a single pet\n operationId: getPetById\n parameters:\n - name: petId\n in: path\n description: ID of pet to return\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid ID supplied\n '404':\n description: Pet not found\n security:\n - api_key: []\n - petstore_auth:\n - write:pets\n - read:pets\n post:\n tags:\n - pet\n summary: Updates a pet in the store with form data\n description: ''\n operationId: updatePetWithForm\n parameters:\n - name: petId\n in: path\n description: ID of pet that needs to be updated\n required: true\n schema:\n type: integer\n format: int64\n - name: name\n in: query\n description: Name of pet that needs to be updated\n schema:\n type: string\n - name: status\n in: query\n description: Status of pet that needs to be updated\n schema:\n type: string\n responses:\n '405':\n description: Invalid input\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n delete:\n tags:\n - pet\n summary: Deletes a pet\n description: delete a pet\n operationId: deletePet\n parameters:\n - name: api_key\n in: header\n description: ''\n required: false\n schema:\n type: string\n - name: petId\n in: path\n description: Pet id to delete\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '400':\n description: Invalid pet value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/{petId}/uploadImage:\n post:\n tags:\n - pet\n summary: uploads an image\n description: ''\n operationId: uploadFile\n parameters:\n - name: petId\n in: path\n description: ID of pet to update\n required: true\n schema:\n type: integer\n format: int64\n - name: additionalMetadata\n in: query\n description: Additional Metadata\n required: false\n schema:\n type: string\n requestBody:\n content:\n application/octet-stream:\n schema:\n type: string\n format: binary\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ApiResponse'\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /store/inventory:\n get:\n tags:\n - store\n summary: Returns pet inventories by status\n description: Returns a map of status codes to quantities\n operationId: getInventory\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: object\n additionalProperties:\n type: integer\n format: int32\n security:\n - api_key: []\n /store/order:\n post:\n tags:\n - store\n summary: Place an order for a pet\n description: Place a new order in the store\n operationId: placeOrder\n requestBody:\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n application/xml:\n schema:\n $ref: '#/components/schemas/Order'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Order'\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n '405':\n description: Invalid input\n /store/order/{orderId}:\n get:\n tags:\n - store\n summary: Find purchase order by ID\n description: For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions.\n operationId: getOrderById\n parameters:\n - name: orderId\n in: path\n description: ID of order that needs to be fetched\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n application/xml:\n schema:\n $ref: '#/components/schemas/Order'\n '400':\n description: Invalid ID supplied\n '404':\n description: Order not found\n delete:\n tags:\n - store\n summary: Delete purchase order by ID\n description: For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors\n operationId: deleteOrder\n parameters:\n - name: orderId\n in: path\n description: ID of the order that needs to be deleted\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '400':\n description: Invalid ID supplied\n '404':\n description: Order not found\n /user:\n post:\n tags:\n - user\n summary: Create user\n description: This can only be done by the logged in user.\n operationId: createUser\n requestBody:\n description: Created user object\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/User'\n responses:\n default:\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n /user/createWithList:\n post:\n tags:\n - user\n summary: Creates list of users with given input array\n description: Creates list of users with given input array\n operationId: createUsersWithListInput\n requestBody:\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/User'\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n default:\n description: successful operation\n /user/login:\n get:\n tags:\n - user\n summary: Logs user into the system\n description: ''\n operationId: loginUser\n parameters:\n - name: username\n in: query\n description: The user name for login\n required: false\n schema:\n type: string\n - name: password\n in: query\n description: The password for login in clear text\n required: false\n schema:\n type: string\n responses:\n '200':\n description: successful operation\n headers:\n X-Rate-Limit:\n description: calls per hour allowed by the user\n schema:\n type: integer\n format: int32\n X-Expires-After:\n description: date in UTC when token expires\n schema:\n type: string\n format: date-time\n content:\n application/xml:\n schema:\n type: string\n application/json:\n schema:\n type: string\n '400':\n description: Invalid username/password supplied\n /user/logout:\n get:\n tags:\n - user\n summary: Logs out current logged in user session\n description: ''\n operationId: logoutUser\n parameters: []\n responses:\n default:\n description: successful operation\n /user/{username}:\n get:\n tags:\n - user\n summary: Get user by user name\n description: ''\n operationId: getUserByName\n parameters:\n - name: username\n in: path\n description: 'The name that needs to be fetched. Use user1 for testing. '\n required: true\n schema:\n type: string\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n '400':\n description: Invalid username supplied\n '404':\n description: User not found\n put:\n tags:\n - user\n summary: Update user\n description: This can only be done by the logged in user.\n operationId: updateUser\n parameters:\n - name: username\n in: path\n description: name that need to be deleted\n required: true\n schema:\n type: string\n requestBody:\n description: Update an existent user in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/User'\n responses:\n default:\n description: successful operation\n delete:\n tags:\n - user\n summary: Delete user\n description: This can only be done by the logged in user.\n operationId: deleteUser\n parameters:\n - name: username\n in: path\n description: The name that needs to be deleted\n required: true\n schema:\n type: string\n responses:\n '400':\n description: Invalid username supplied\n '404':\n description: User not found\ncomponents:\n schemas:\n Order:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n petId:\n type: integer\n format: int64\n example: 198772\n quantity:\n type: integer\n format: int32\n example: 7\n shipDate:\n type: string\n format: date-time\n status:\n type: string\n description: Order Status\n example: approved\n enum:\n - placed\n - approved\n - delivered\n complete:\n type: boolean\n xml:\n name: order\n Customer:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 100000\n username:\n type: string\n example: fehguy\n address:\n type: array\n xml:\n name: addresses\n wrapped: true\n items:\n $ref: '#/components/schemas/Address'\n xml:\n name: customer\n Address:\n type: object\n properties:\n street:\n type: string\n example: 437 Lytton\n city:\n type: string\n example: Palo Alto\n state:\n type: string\n example: CA\n zip:\n type: string\n example: '94301'\n xml:\n name: address\n Category:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 1\n name:\n type: string\n example: Dogs\n xml:\n name: category\n User:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n username:\n type: string\n example: theUser\n firstName:\n type: string\n example: John\n lastName:\n type: string\n example: James\n email:\n type: string\n example: john@email.com\n password:\n type: string\n example: '12345'\n phone:\n type: string\n example: '12345'\n userStatus:\n type: integer\n description: User Status\n format: int32\n example: 1\n xml:\n name: user\n Tag:\n type: object\n properties:\n id:\n type: integer\n format: int64\n name:\n type: string\n xml:\n name: tag\n Pet:\n required:\n - name\n - photoUrls\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n name:\n type: string\n example: doggie\n category:\n $ref: '#/components/schemas/Category'\n photoUrls:\n type: array\n xml:\n wrapped: true\n items:\n type: string\n xml:\n name: photoUrl\n tags:\n type: array\n xml:\n wrapped: true\n items:\n $ref: '#/components/schemas/Tag'\n status:\n type: string\n description: pet status in the store\n enum:\n - available\n - pending\n - sold\n xml:\n name: pet\n ApiResponse:\n type: object\n properties:\n code:\n type: integer\n format: int32\n type:\n type: string\n message:\n type: string\n xml:\n name: '##default'\n requestBodies:\n Pet:\n description: Pet object that needs to be added to the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n UserArray:\n description: List of user object\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/User'\n securitySchemes:\n petstore_auth:\n type: oauth2\n flows:\n implicit:\n authorizationUrl: https://petstore3.swagger.io/oauth/authorize\n scopes:\n write:pets: modify pets in your account\n read:pets: read your pets\n api_key:\n type: apiKey\n name: api_key\n in: header\n`;\n\nexport default selectOpenAPI310PetstoreYAML;\n","const selectOpenAPI20PetstoreYAML = () => `swagger: \"2.0\"\ninfo:\n description: \"This is a sample server Petstore server. You can find out more about\\\n \\\\ Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/).\\\n \\\\ For this sample, you can use the api key \\`special-key\\` to test the authorization\\\n \\\\ filters.\"\n version: \"1.0.0\"\n title: \"Swagger Petstore 2.0\"\n termsOfService: \"http://swagger.io/terms/\"\n contact:\n email: \"apiteam@swagger.io\"\n license:\n name: \"Apache 2.0\"\n url: \"http://www.apache.org/licenses/LICENSE-2.0.html\"\nhost: \"petstore.swagger.io\"\nbasePath: \"/v2\"\ntags:\n- name: \"pet\"\n description: \"Everything about your Pets\"\n externalDocs:\n description: \"Find out more\"\n url: \"http://swagger.io\"\n- name: \"store\"\n description: \"Access to Petstore orders\"\n- name: \"user\"\n description: \"Operations about user\"\n externalDocs:\n description: \"Find out more about our store\"\n url: \"http://swagger.io\"\nschemes:\n- \"https\"\n- \"http\"\npaths:\n /pet:\n post:\n tags:\n - \"pet\"\n summary: \"Add a new pet to the store\"\n description: \"\"\n operationId: \"addPet\"\n consumes:\n - \"application/json\"\n - \"application/xml\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"Pet object that needs to be added to the store\"\n required: true\n schema:\n $ref: \"#/definitions/Pet\"\n responses:\n \"405\":\n description: \"Invalid input\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n put:\n tags:\n - \"pet\"\n summary: \"Update an existing pet\"\n description: \"\"\n operationId: \"updatePet\"\n consumes:\n - \"application/json\"\n - \"application/xml\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"Pet object that needs to be added to the store\"\n required: true\n schema:\n $ref: \"#/definitions/Pet\"\n responses:\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Pet not found\"\n \"405\":\n description: \"Validation exception\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n /pet/findByStatus:\n get:\n tags:\n - \"pet\"\n summary: \"Finds Pets by status\"\n description: \"Multiple status values can be provided with comma separated strings\"\n operationId: \"findPetsByStatus\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"status\"\n in: \"query\"\n description: \"Status values that need to be considered for filter\"\n required: true\n type: \"array\"\n items:\n type: \"string\"\n enum:\n - \"available\"\n - \"pending\"\n - \"sold\"\n default: \"available\"\n collectionFormat: \"multi\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n type: \"array\"\n items:\n $ref: \"#/definitions/Pet\"\n \"400\":\n description: \"Invalid status value\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n /pet/findByTags:\n get:\n tags:\n - \"pet\"\n summary: \"Finds Pets by tags\"\n description: \"Muliple tags can be provided with comma separated strings. Use\\\n \\\\ tag1, tag2, tag3 for testing.\"\n operationId: \"findPetsByTags\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"tags\"\n in: \"query\"\n description: \"Tags to filter by\"\n required: true\n type: \"array\"\n items:\n type: \"string\"\n collectionFormat: \"multi\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n type: \"array\"\n items:\n $ref: \"#/definitions/Pet\"\n \"400\":\n description: \"Invalid tag value\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n deprecated: true\n /pet/{petId}:\n get:\n tags:\n - \"pet\"\n summary: \"Find pet by ID\"\n description: \"Returns a single pet\"\n operationId: \"getPetById\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"petId\"\n in: \"path\"\n description: \"ID of pet to return\"\n required: true\n type: \"integer\"\n format: \"int64\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/Pet\"\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Pet not found\"\n security:\n - api_key: []\n post:\n tags:\n - \"pet\"\n summary: \"Updates a pet in the store with form data\"\n description: \"\"\n operationId: \"updatePetWithForm\"\n consumes:\n - \"application/x-www-form-urlencoded\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"petId\"\n in: \"path\"\n description: \"ID of pet that needs to be updated\"\n required: true\n type: \"integer\"\n format: \"int64\"\n - name: \"name\"\n in: \"formData\"\n description: \"Updated name of the pet\"\n required: false\n type: \"string\"\n - name: \"status\"\n in: \"formData\"\n description: \"Updated status of the pet\"\n required: false\n type: \"string\"\n responses:\n \"405\":\n description: \"Invalid input\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n delete:\n tags:\n - \"pet\"\n summary: \"Deletes a pet\"\n description: \"\"\n operationId: \"deletePet\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"api_key\"\n in: \"header\"\n required: false\n type: \"string\"\n - name: \"petId\"\n in: \"path\"\n description: \"Pet id to delete\"\n required: true\n type: \"integer\"\n format: \"int64\"\n responses:\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Pet not found\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n /pet/{petId}/uploadImage:\n post:\n tags:\n - \"pet\"\n summary: \"uploads an image\"\n description: \"\"\n operationId: \"uploadFile\"\n consumes:\n - \"multipart/form-data\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"petId\"\n in: \"path\"\n description: \"ID of pet to update\"\n required: true\n type: \"integer\"\n format: \"int64\"\n - name: \"additionalMetadata\"\n in: \"formData\"\n description: \"Additional data to pass to server\"\n required: false\n type: \"string\"\n - name: \"file\"\n in: \"formData\"\n description: \"file to upload\"\n required: false\n type: \"file\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/ApiResponse\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n /store/inventory:\n get:\n tags:\n - \"store\"\n summary: \"Returns pet inventories by status\"\n description: \"Returns a map of status codes to quantities\"\n operationId: \"getInventory\"\n produces:\n - \"application/json\"\n parameters: []\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n type: \"object\"\n additionalProperties:\n type: \"integer\"\n format: \"int32\"\n security:\n - api_key: []\n /store/order:\n post:\n tags:\n - \"store\"\n summary: \"Place an order for a pet\"\n description: \"\"\n operationId: \"placeOrder\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"order placed for purchasing the pet\"\n required: true\n schema:\n $ref: \"#/definitions/Order\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/Order\"\n \"400\":\n description: \"Invalid Order\"\n /store/order/{orderId}:\n get:\n tags:\n - \"store\"\n summary: \"Find purchase order by ID\"\n description: \"For valid response try integer IDs with value >= 1 and <= 10.\\\n \\\\ Other values will generated exceptions\"\n operationId: \"getOrderById\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"orderId\"\n in: \"path\"\n description: \"ID of pet that needs to be fetched\"\n required: true\n type: \"integer\"\n maximum: 10.0\n minimum: 1.0\n format: \"int64\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/Order\"\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Order not found\"\n delete:\n tags:\n - \"store\"\n summary: \"Delete purchase order by ID\"\n description: \"For valid response try integer IDs with positive integer value.\\\n \\\\ Negative or non-integer values will generate API errors\"\n operationId: \"deleteOrder\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"orderId\"\n in: \"path\"\n description: \"ID of the order that needs to be deleted\"\n required: true\n type: \"integer\"\n minimum: 1.0\n format: \"int64\"\n responses:\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Order not found\"\n /user:\n post:\n tags:\n - \"user\"\n summary: \"Create user\"\n description: \"This can only be done by the logged in user.\"\n operationId: \"createUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"Created user object\"\n required: true\n schema:\n $ref: \"#/definitions/User\"\n responses:\n default:\n description: \"successful operation\"\n /user/createWithArray:\n post:\n tags:\n - \"user\"\n summary: \"Creates list of users with given input array\"\n description: \"\"\n operationId: \"createUsersWithArrayInput\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"List of user object\"\n required: true\n schema:\n type: \"array\"\n items:\n $ref: \"#/definitions/User\"\n responses:\n default:\n description: \"successful operation\"\n /user/createWithList:\n post:\n tags:\n - \"user\"\n summary: \"Creates list of users with given input array\"\n description: \"\"\n operationId: \"createUsersWithListInput\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"List of user object\"\n required: true\n schema:\n type: \"array\"\n items:\n $ref: \"#/definitions/User\"\n responses:\n default:\n description: \"successful operation\"\n /user/login:\n get:\n tags:\n - \"user\"\n summary: \"Logs user into the system\"\n description: \"\"\n operationId: \"loginUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"username\"\n in: \"query\"\n description: \"The user name for login\"\n required: true\n type: \"string\"\n - name: \"password\"\n in: \"query\"\n description: \"The password for login in clear text\"\n required: true\n type: \"string\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n type: \"string\"\n headers:\n X-Rate-Limit:\n type: \"integer\"\n format: \"int32\"\n description: \"calls per hour allowed by the user\"\n X-Expires-After:\n type: \"string\"\n format: \"date-time\"\n description: \"date in UTC when token expires\"\n \"400\":\n description: \"Invalid username/password supplied\"\n /user/logout:\n get:\n tags:\n - \"user\"\n summary: \"Logs out current logged in user session\"\n description: \"\"\n operationId: \"logoutUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters: []\n responses:\n default:\n description: \"successful operation\"\n /user/{username}:\n get:\n tags:\n - \"user\"\n summary: \"Get user by user name\"\n description: \"\"\n operationId: \"getUserByName\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"username\"\n in: \"path\"\n description: \"The name that needs to be fetched. Use user1 for testing. \"\n required: true\n type: \"string\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/User\"\n \"400\":\n description: \"Invalid username supplied\"\n \"404\":\n description: \"User not found\"\n put:\n tags:\n - \"user\"\n summary: \"Updated user\"\n description: \"This can only be done by the logged in user.\"\n operationId: \"updateUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"username\"\n in: \"path\"\n description: \"name that need to be updated\"\n required: true\n type: \"string\"\n - in: \"body\"\n name: \"body\"\n description: \"Updated user object\"\n required: true\n schema:\n $ref: \"#/definitions/User\"\n responses:\n \"400\":\n description: \"Invalid user supplied\"\n \"404\":\n description: \"User not found\"\n delete:\n tags:\n - \"user\"\n summary: \"Delete user\"\n description: \"This can only be done by the logged in user.\"\n operationId: \"deleteUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"username\"\n in: \"path\"\n description: \"The name that needs to be deleted\"\n required: true\n type: \"string\"\n responses:\n \"400\":\n description: \"Invalid username supplied\"\n \"404\":\n description: \"User not found\"\nsecurityDefinitions:\n petstore_auth:\n type: \"oauth2\"\n authorizationUrl: \"http://petstore.swagger.io/oauth/dialog\"\n flow: \"implicit\"\n scopes:\n write:pets: \"modify pets in your account\"\n read:pets: \"read your pets\"\n api_key:\n type: \"apiKey\"\n name: \"api_key\"\n in: \"header\"\ndefinitions:\n Order:\n type: \"object\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n petId:\n type: \"integer\"\n format: \"int64\"\n quantity:\n type: \"integer\"\n format: \"int32\"\n shipDate:\n type: \"string\"\n format: \"date-time\"\n status:\n type: \"string\"\n description: \"Order Status\"\n enum:\n - \"placed\"\n - \"approved\"\n - \"delivered\"\n complete:\n type: \"boolean\"\n default: false\n xml:\n name: \"Order\"\n Category:\n type: \"object\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n name:\n type: \"string\"\n xml:\n name: \"Category\"\n User:\n type: \"object\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n username:\n type: \"string\"\n firstName:\n type: \"string\"\n lastName:\n type: \"string\"\n email:\n type: \"string\"\n password:\n type: \"string\"\n phone:\n type: \"string\"\n userStatus:\n type: \"integer\"\n format: \"int32\"\n description: \"User Status\"\n xml:\n name: \"User\"\n Tag:\n type: \"object\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n name:\n type: \"string\"\n xml:\n name: \"Tag\"\n Pet:\n type: \"object\"\n required:\n - \"name\"\n - \"photoUrls\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n category:\n $ref: \"#/definitions/Category\"\n name:\n type: \"string\"\n example: \"doggie\"\n photoUrls:\n type: \"array\"\n xml:\n name: \"photoUrl\"\n wrapped: true\n items:\n type: \"string\"\n tags:\n type: \"array\"\n xml:\n name: \"tag\"\n wrapped: true\n items:\n $ref: \"#/definitions/Tag\"\n status:\n type: \"string\"\n description: \"pet status in the store\"\n enum:\n - \"available\"\n - \"pending\"\n - \"sold\"\n xml:\n name: \"Pet\"\n ApiResponse:\n type: \"object\"\n properties:\n code:\n type: \"integer\"\n format: \"int32\"\n type:\n type: \"string\"\n message:\n type: \"string\"\nexternalDocs:\n description: \"Find out more about Swagger\"\n url: \"http://swagger.io\"`;\n\nexport default selectOpenAPI20PetstoreYAML;\n","const selectAsyncAPI260PetstoreYAML = () => `asyncapi: 2.6.0\ninfo:\n title: Petstore\n version: 1.0.0\n description: The PetStore running in Kafka\nchannels:\n petstore.order.added:\n publish:\n message:\n title: New order for pet\n summary: A new order for a pet was added.\n name: Order\n contentType: application/json\n payload:\n \"$ref\": \"#/components/schemas/Order\"\n petstore.order.deleted:\n publish:\n message:\n name: OrderId\n contentType: application/json\n payload:\n type: integer\n format: int64\n petstore.pet.added:\n publish:\n message:\n name: Pet\n contentType: application/json\n payload:\n \"$ref\": \"#/components/schemas/Pet\"\n petstore.pet.changed:\n publish:\n message:\n name: Pet\n contentType: application/json\n payload:\n \"$ref\": \"#/components/schemas/Pet\"\n petstore.pet.deleted:\n publish:\n message:\n name: PetId\n contentType: application/json\n payload:\n type: integer\n format: int64\ncomponents:\n schemas:\n Inventory:\n type: object\n additionalProperties:\n type: integer\n format: int64\n Order:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n petId:\n type: integer\n format: int64\n example: 198772\n quantity:\n type: integer\n format: int32\n example: 7\n shipDate:\n type: string\n format: date-time\n status:\n type: string\n description: Order Status\n example: approved\n enum:\n - placed\n - approved\n - delivered\n complete:\n type: boolean\n xml:\n name: order\n Customer:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 100000\n username:\n type: string\n example: fehguy\n address:\n type: array\n xml:\n name: addresses\n wrapped: true\n items:\n \"$ref\": \"#/components/schemas/Address\"\n xml:\n name: customer\n Address:\n type: object\n properties:\n street:\n type: string\n example: 437 Lytton\n city:\n type: string\n example: Palo Alto\n state:\n type: string\n example: CA\n zip:\n type: string\n example: '94301'\n xml:\n name: address\n Category:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 1\n name:\n type: string\n example: Dogs\n xml:\n name: category\n User:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n username:\n type: string\n example: theUser\n firstName:\n type: string\n example: John\n lastName:\n type: string\n example: James\n email:\n type: string\n example: john@email.com\n password:\n type: string\n example: '12345'\n phone:\n type: string\n example: '12345'\n userStatus:\n type: integer\n description: User Status\n format: int32\n example: 1\n xml:\n name: user\n Tag:\n type: object\n properties:\n id:\n type: integer\n format: int64\n name:\n type: string\n xml:\n name: tag\n Pet:\n required:\n - name\n - photoUrls\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n name:\n type: string\n example: doggie\n category:\n \"$ref\": \"#/components/schemas/Category\"\n photoUrls:\n type: array\n xml:\n wrapped: true\n items:\n type: string\n xml:\n name: photoUrl\n tags:\n type: array\n xml:\n wrapped: true\n items:\n \"$ref\": \"#/components/schemas/Tag\"\n status:\n type: string\n description: pet status in the store\n enum:\n - available\n - pending\n - sold\n xml:\n name: pet\n ApiResponse:\n type: object\n properties:\n code:\n type: integer\n format: int32\n type:\n type: string\n message:\n type: string\n xml:\n name: \"##default\"\n`;\n\nexport default selectAsyncAPI260PetstoreYAML;\n","const selectAsyncAPI260StreetlightsYAML = () => `asyncapi: '2.6.0'\ninfo:\n title: Streetlights Kafka API\n version: '1.0.0'\n description: |\n The Smartylighting Streetlights API allows you to remotely manage the city lights.\n\n ### Check out its awesome features:\n\n * Turn a specific streetlight on/off 🌃\n * Dim a specific streetlight 😎\n * Receive real-time information about environmental lighting conditions 📈\n license:\n name: Apache 2.0\n url: https://www.apache.org/licenses/LICENSE-2.0\n\nservers:\n scram-connections:\n url: test.mykafkacluster.org:18092\n protocol: kafka-secure\n description: Test broker secured with scramSha256\n security:\n - saslScram: []\n tags:\n - name: \"env:test-scram\"\n description: \"This environment is meant for running internal tests through scramSha256\"\n - name: \"kind:remote\"\n description: \"This server is a remote server. Not exposed by the application\"\n - name: \"visibility:private\"\n description: \"This resource is private and only available to certain users\"\n mtls-connections:\n url: test.mykafkacluster.org:28092\n protocol: kafka-secure\n description: Test broker secured with X509\n security:\n - certs: []\n tags:\n - name: \"env:test-mtls\"\n description: \"This environment is meant for running internal tests through mtls\"\n - name: \"kind:remote\"\n description: \"This server is a remote server. Not exposed by the application\"\n - name: \"visibility:private\"\n description: \"This resource is private and only available to certain users\"\n\ndefaultContentType: application/json\n\nchannels:\n smartylighting.streetlights.1.0.event.{streetlightId}.lighting.measured:\n description: The topic on which measured values may be produced and consumed.\n parameters:\n streetlightId:\n $ref: '#/components/parameters/streetlightId'\n publish:\n summary: Inform about environmental lighting conditions of a particular streetlight.\n operationId: receiveLightMeasurement\n traits:\n - $ref: '#/components/operationTraits/kafka'\n message:\n $ref: '#/components/messages/lightMeasured'\n\n smartylighting.streetlights.1.0.action.{streetlightId}.turn.on:\n parameters:\n streetlightId:\n $ref: '#/components/parameters/streetlightId'\n subscribe:\n operationId: turnOn\n traits:\n - $ref: '#/components/operationTraits/kafka'\n message:\n $ref: '#/components/messages/turnOnOff'\n\n smartylighting.streetlights.1.0.action.{streetlightId}.turn.off:\n parameters:\n streetlightId:\n $ref: '#/components/parameters/streetlightId'\n subscribe:\n operationId: turnOff\n traits:\n - $ref: '#/components/operationTraits/kafka'\n message:\n $ref: '#/components/messages/turnOnOff'\n\n smartylighting.streetlights.1.0.action.{streetlightId}.dim:\n parameters:\n streetlightId:\n $ref: '#/components/parameters/streetlightId'\n subscribe:\n operationId: dimLight\n traits:\n - $ref: '#/components/operationTraits/kafka'\n message:\n $ref: '#/components/messages/dimLight'\n\ncomponents:\n messages:\n lightMeasured:\n name: lightMeasured\n title: Light measured\n summary: Inform about environmental lighting conditions of a particular streetlight.\n contentType: application/json\n traits:\n - $ref: '#/components/messageTraits/commonHeaders'\n payload:\n $ref: \"#/components/schemas/lightMeasuredPayload\"\n turnOnOff:\n name: turnOnOff\n title: Turn on/off\n summary: Command a particular streetlight to turn the lights on or off.\n traits:\n - $ref: '#/components/messageTraits/commonHeaders'\n payload:\n $ref: \"#/components/schemas/turnOnOffPayload\"\n dimLight:\n name: dimLight\n title: Dim light\n summary: Command a particular streetlight to dim the lights.\n traits:\n - $ref: '#/components/messageTraits/commonHeaders'\n payload:\n $ref: \"#/components/schemas/dimLightPayload\"\n\n schemas:\n lightMeasuredPayload:\n type: object\n properties:\n lumens:\n type: integer\n minimum: 0\n description: Light intensity measured in lumens.\n sentAt:\n $ref: \"#/components/schemas/sentAt\"\n turnOnOffPayload:\n type: object\n properties:\n command:\n type: string\n enum:\n - on\n - off\n description: Whether to turn on or off the light.\n sentAt:\n $ref: \"#/components/schemas/sentAt\"\n dimLightPayload:\n type: object\n properties:\n percentage:\n type: integer\n description: Percentage to which the light should be dimmed to.\n minimum: 0\n maximum: 100\n sentAt:\n $ref: \"#/components/schemas/sentAt\"\n sentAt:\n type: string\n format: date-time\n description: Date and time when the message was sent.\n\n securitySchemes:\n saslScram:\n type: scramSha256\n description: Provide your username and password for SASL/SCRAM authentication\n certs:\n type: X509\n description: Download the certificate files from service provider\n\n parameters:\n streetlightId:\n description: The ID of the streetlight.\n schema:\n type: string\n\n messageTraits:\n commonHeaders:\n headers:\n type: object\n properties:\n my-app-header:\n type: integer\n minimum: 0\n maximum: 100\n\n operationTraits:\n kafka:\n bindings:\n kafka:\n clientId:\n type: string\n enum: ['my-app-id']\n`;\n\nexport default selectAsyncAPI260StreetlightsYAML;\n","const selectAPIDesignSystemsYAML = () => `version: '2021-05-07'\ninfo:\n title: SmartBear API Guidelines\n description: |\n A machine and human readable version of the SmartBear API Style Guide aimed at promoting living API Style Governance across various tools and teams, leading to improved API quality.\n See the [SmartBear Standards and Guidelines](https://github.com/SmartBear/api-standards-and-guidelines) repo for a traditional view of the static guidelines.\nprinciples:\n- iri: urn:apidesign.systems:principle:robustness\n level: must\n- iri: urn:apidesign.systems:principle:rmm:level2\n level: must\n- iri: urn:apidesign.systems:principle:rmm:level3\n level: should\nstandards:\n- iri: urn:ietf:rfc:6648\n level: must\n- iri: urn:ietf:rfc:7807\n level: must\n- iri: urn:ietf:rfc:7231\n level: should\n- iri: urn:ietf:rfc:6585\n level: may\n- iri: urn:ietf:rfc:5788\n level: may\n- iri: urn:ietf:draft:http-semantics\n level: may\nscenarios:\n- description: SB-API-010 - Only apply standard HTTP methods\n when:\n - http\n - transaction\n then:\n - subject:\n - http\n - request\n - method\n level: may\n values:\n - get\n - post\n - put\n - patch\n - delete\n - subject:\n - http\n - request\n - header\n level: may\n values:\n - Accept\n - Accept-Charset\n - Authorization\n - Content-Language\n - Content-Type\n - Link\n - Prefer\n - subject:\n - http\n - request\n - header\n - Content-Type\n level: may\n values:\n - application/json\n - application/hal+json\n - subject:\n - http\n - response\n - header\n - Content-Type\n level: should\n values:\n - application/hal+json\n - subject:\n - http\n - response\n - header\n - Content-Type\n level: may\n values:\n - application/json\n - application/hal+json\n - application/problem+json\n- description: GET Methods - Allowed status codes\n when:\n - http\n - request\n - method\n - get\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '304'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: POST Method - Allowed status codes\n when:\n - http\n - request\n - method\n - post\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '201'\n - '202'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '409'\n - '415'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: PUT Method - Allowed status codes\n when:\n - http\n - request\n - method\n - put\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '201'\n - '202'\n - '204'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '409'\n - '412'\n - '415'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: PATCH Method - Allowed status codes\n when:\n - http\n - request\n - method\n - patch\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '202'\n - '204'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '409'\n - '412'\n - '415'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: DELETE Method - Allowed status codes\n when:\n - http\n - request\n - method\n - delete\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '202'\n - '204'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '409'\n - '412'\n - '415'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: Client Errors must return \\`application/problem+json\\`\n when:\n - http\n - response\n - status_code\n - client_error\n then:\n - subject:\n - http\n - response\n - header\n - Content-Type\n level: must\n values:\n - application/problem+json\n- description: Server Errors must return \\`application/problem+json\\`\n when:\n - http\n - response\n - status_code\n - server_error\n then:\n - subject:\n - http\n - response\n - header\n - Content-Type\n level: must\n values:\n - application/problem+json\n`;\n\nexport default selectAPIDesignSystemsYAML;\n","import selectOpenAPI310PetstoreYAML from './selectors/selectOpenAPI310PetstoreYAML.js';\nimport selectOpenAPI303PetstoreYAML from './selectors/selectOpenAPI303PetstoreYAML.js';\nimport selectOpenAPI20PetstoreYAML from './selectors/selectOpenAPI20PetstoreYAML.js';\nimport selectAsyncAPI260PetstoreYAML from './selectors/selectAsyncAPI260PetstoreYAML.js';\nimport selectAsyncAPI260StreetlightsYAML from './selectors/selectAsyncAPI260StreetlightsYAML.js';\nimport selectAPIDesignSystemsYAML from './selectors/selectAPIDesignSystemsYAML.js';\n// test\n\nconst EditorContentFixturesPlugin = () => ({\n statePlugins: {\n editorContentFixtures: {\n selectors: {\n selectOpenAPI310PetstoreYAML,\n selectOpenAPI303PetstoreYAML,\n selectOpenAPI20PetstoreYAML,\n selectAsyncAPI260PetstoreYAML,\n selectAsyncAPI260StreetlightsYAML,\n selectAPIDesignSystemsYAML,\n },\n },\n },\n});\n\nexport default EditorContentFixturesPlugin;\n","// eslint-disable-next-line import/prefer-default-export\nexport const updateSpec = (oriAction, system) => (spec) => {\n const { editorActions } = system;\n\n oriAction(spec);\n editorActions.detectContentType(spec, system);\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst BaseLayoutWrapper = (Original, system) => {\n const BaseLayout = ({ getComponent, editorSelectors }) => {\n const EditorPreviewAsyncAPI = getComponent('EditorPreviewAsyncAPI', true);\n const EditorPreviewAPIDesignSystems = getComponent('EditorPreviewAPIDesignSystems', true);\n\n if (editorSelectors.selectIsContentTypeDetectionInProgress()) {\n return (\n <div className=\"swagger-ui swagger-container\">\n <div className=\"swagger-ui\">\n <div className=\"info\">\n <div className=\"loading-container\">\n <div className=\"loading\" />\n </div>\n </div>\n </div>\n </div>\n );\n }\n\n if (editorSelectors.selectIsContentTypeAsyncAPI2()) {\n return <EditorPreviewAsyncAPI />;\n }\n\n if (editorSelectors.selectIsContentTypeAPIDesignSystems()) {\n return <EditorPreviewAPIDesignSystems />;\n }\n\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <Original {...system} />;\n };\n\n BaseLayout.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeDetectionInProgress: PropTypes.func.isRequired,\n selectIsContentTypeAsyncAPI2: PropTypes.func.isRequired,\n selectIsContentTypeAPIDesignSystems: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI: PropTypes.func.isRequired,\n selectContentType: PropTypes.func.isRequired,\n }).isRequired,\n };\n\n return BaseLayout;\n};\n\nexport default BaseLayoutWrapper;\n","import { updateSpec as updateSpecWrap } from './wrap-actions.js';\nimport BaseLayoutWrapper from './wrap-components/BaseLayout.jsx';\n\n/**\n * This plugin adapts plugins from this codebase to SwaggerUI.\n * Using this adapter, one can use SwaggerUI to preview multiple\n * specifications.\n */\n\nconst SwaggerUIAdapterPlugin = () => {\n return {\n wrapComponents: {\n BaseLayout: BaseLayoutWrapper,\n },\n statePlugins: {\n spec: {\n wrapActions: {\n updateSpec: updateSpecWrap,\n },\n },\n },\n };\n};\n\nexport default SwaggerUIAdapterPlugin;\n","import React from 'react';\nimport deepmerge from 'deepmerge';\nimport SwaggerUI from 'swagger-ui-react';\nimport 'swagger-ui-react/swagger-ui.css';\n\nimport './styles/main.scss';\nimport LayoutPlugin from './plugins/layout/index.js';\nimport SplashScreenPlugin from './plugins/splash-screen/index.js';\nimport TopBarPlugin from './plugins/top-bar/index.js';\nimport ModalsPlugin from './plugins/modals/index.js';\nimport DialogsPlugin from './plugins/dialogs/index.js';\nimport DropdownMenuPlugin from './plugins/dropdown-menu/index.js';\nimport DropzonePlugin from './plugins/dropzone/index.js';\nimport VersionsPlugin from './plugins/versions/index.js';\nimport EditorTextareaPlugin from './plugins/editor-textarea/index.js';\nimport EditorMonacoPlugin from './plugins/editor-monaco/index.js';\nimport EditorMonacoLanguageApiDOMPlugin from './plugins/editor-monaco-language-apidom/index.js';\nimport EditorPreviewPlugin from './plugins/editor-preview/index.js';\nimport EditorPreviewSwaggerUIPlugin from './plugins/editor-preview-swagger-ui/index.js';\nimport EditorPreviewAsyncAPIPlugin from './plugins/editor-preview-asyncapi/index.js';\nimport EditorPreviewApiDesignSystemsPlugin from './plugins/editor-preview-api-design-systems/index.js';\nimport EditorContentReadOnlyPlugin from './plugins/editor-content-read-only/index.js';\nimport EditorContentOriginPlugin from './plugins/editor-content-origin/index.js';\nimport EditorContentTypePlugin from './plugins/editor-content-type/index.js';\nimport EditorContentPersistencePlugin from './plugins/editor-content-persistence/index.js';\nimport EditorContentFixturesPlugin from './plugins/editor-content-fixtures/index.js';\nimport SwaggerUIAdapterPlugin from './plugins/swagger-ui-adapter/index.js';\n\nconst SafeRenderPlugin = (system) =>\n SwaggerUI.plugins.SafeRender({\n componentList: [\n 'TopBar',\n 'SwaggerEditorLayout',\n 'Editor',\n 'EditorTextarea',\n 'EditorMonaco',\n 'EditorPane',\n 'EditorPaneBarTop',\n 'EditorPreviewPane',\n 'ValidationPane',\n 'AlertDialog',\n 'ConfirmDialog',\n 'Dropzone',\n ],\n })(system);\n\nconst SwaggerEditor = React.memo((props) => {\n const mergedProps = deepmerge(SwaggerEditor.defaultProps, props);\n\n return (\n <div className=\"swagger-editor\">\n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n <SwaggerUI {...mergedProps} />\n </div>\n );\n});\n\nSwaggerEditor.plugins = {\n Modals: ModalsPlugin,\n Dialogs: DialogsPlugin,\n DropdownMenu: DropdownMenuPlugin,\n Dropzone: DropzonePlugin,\n Versions: VersionsPlugin,\n EditorTextarea: EditorTextareaPlugin,\n EditorMonaco: EditorMonacoPlugin,\n EditorMonacoLanguageApiDOM: EditorMonacoLanguageApiDOMPlugin,\n EditorContentReadOnly: EditorContentReadOnlyPlugin,\n EditorContentOrigin: EditorContentOriginPlugin,\n EditorContentType: EditorContentTypePlugin,\n EditorContentPersistence: EditorContentPersistencePlugin,\n EditorContentFixtures: EditorContentFixturesPlugin,\n EditorPreview: EditorPreviewPlugin,\n EditorPreviewSwaggerUI: EditorPreviewSwaggerUIPlugin,\n EditorPreviewAsyncAPI: EditorPreviewAsyncAPIPlugin,\n EditorPreviewApiDesignSystems: EditorPreviewApiDesignSystemsPlugin,\n TopBar: TopBarPlugin,\n SplashScreenPlugin,\n Layout: LayoutPlugin,\n SwaggerUIAdapter: SwaggerUIAdapterPlugin,\n};\nSwaggerEditor.presets = {\n textarea: () => [\n ModalsPlugin,\n DialogsPlugin,\n DropdownMenuPlugin,\n DropzonePlugin,\n VersionsPlugin,\n EditorTextareaPlugin,\n EditorContentReadOnlyPlugin,\n EditorContentOriginPlugin,\n EditorContentTypePlugin,\n EditorContentPersistencePlugin,\n EditorContentFixturesPlugin,\n EditorPreviewPlugin,\n EditorPreviewSwaggerUIPlugin,\n EditorPreviewAsyncAPIPlugin,\n EditorPreviewApiDesignSystemsPlugin,\n TopBarPlugin,\n SplashScreenPlugin,\n LayoutPlugin,\n SafeRenderPlugin,\n ],\n monaco: () => [\n ModalsPlugin,\n DialogsPlugin,\n DropdownMenuPlugin,\n DropzonePlugin,\n VersionsPlugin,\n EditorTextareaPlugin,\n EditorMonacoPlugin,\n EditorMonacoLanguageApiDOMPlugin,\n EditorContentReadOnlyPlugin,\n EditorContentOriginPlugin,\n EditorContentTypePlugin,\n EditorContentPersistencePlugin,\n EditorContentFixturesPlugin,\n EditorPreviewPlugin,\n EditorPreviewSwaggerUIPlugin,\n EditorPreviewAsyncAPIPlugin,\n EditorPreviewApiDesignSystemsPlugin,\n TopBarPlugin,\n SplashScreenPlugin,\n LayoutPlugin,\n SafeRenderPlugin,\n ],\n default: (...args) => SwaggerEditor.presets.monaco(...args),\n};\n\nSwaggerEditor.propTypes = SwaggerUI.propTypes;\n\nSwaggerEditor.defaultProps = {\n ...SwaggerUI.defaultProps,\n layout: 'SwaggerEditorLayout',\n presets: [SwaggerEditor.presets.default],\n};\n\nexport default SwaggerEditor;\n"],"names":["module","exports","__WEBPACK_EXTERNAL_MODULE__asyncapi_react_component_lib_esm_without_parser_js_ba054bac__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","d","definition","key","o","Object","defineProperty","enumerable","get","h","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","y","x","__WEBPACK_EXTERNAL_MODULE_react__","Suspense","forwardRef","memo","useCallback","useEffect","useImperativeHandle","useRef","useState","__WEBPACK_EXTERNAL_MODULE_deepmerge__","__WEBPACK_EXTERNAL_MODULE_swagger_ui_react_ed26f026__","__WEBPACK_EXTERNAL_MODULE_react_collapse_pane_f7052d83__","SplitPane","__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_js_fc12ce1a__","Fragment","jsx","jsxs","Layout","getComponent","useSwaggerEditorReactModal","useSplashScreen","EditorPane","EditorPreviewPane","TopBar","Container","Dropzone","SplashScreen","ref","canDisplaySplashScreen","canDisplayLayout","_jsxs","className","children","_jsx","isOpen","_Fragment","split","requestIdleCallback","globalThis","args","callback","start","Date","now","setTimeout","didTimeout","timeoutRemaining","Math","max","cancelIdleCallback","handle","clearTimeout","makeUseSplashScreen","getSystem","setCanDisplaySplashScreen","setDisplayLayout","fn","requestId","requestID","timeoutID","LayoutPlugin","rootInjects","components","SwaggerEditorLayout","__WEBPACK_EXTERNAL_MODULE_classnames__","PACKAGE_VERSION","buildInfo","SplashScreenSpinner","isHidden","setHidden","classNames","onTransitionEnd","handleTransitionEnd","width","src","alt","defaultProps","height","SplashScreenPlugin","Logo","FileMenu","EditMenu","OpenAPI3GenerateServerMenu","OpenAPI3GenerateClientMenu","OpenAPI2GenerateServerMenu","OpenAPI2GenerateClientMenu","AboutMenu","link","img","href","rel","ImportUrlMenuItemHandler","editorActions","isConfirmDialogOpen","setIsConfirmDialogOpen","isAlertDialogOpen","setIsAlertDialogOpen","alertDialogMessage","url","setUrl","ConfirmDialog","AlertDialog","openModal","title","onClose","handleAlertDialogClose","current","async","result","fsa","importUrl","error","meta","errorMessage","setContent","payload","htmlFor","id","type","placeholder","onChange","event","target","__WEBPACK_EXTERNAL_MODULE_file_dialog_c1aa51c0__","ImportFileMenuItemHandler","openFileDialog","file","fileDialog","multiple","content","text","message","SaveAsMenuItemHandler","editorSelectors","downloadContent","selectContent","fileNameWithExtension","selectInferFileNameWithExtensionFromContent","ConvertAndSaveAsJSONMenuItemHandler","convertAndSaveAsJSON","selectInferFileNameFromContent","convertFSA","convertContentToJSON","downloadFSA","ConvertAndSaveAsYAMLMenuItemHandler","convertAndSaveAsYAML","convertContentToYAML","DownloadResolvedJSONMenuItemHandler","downloadResolvedJSON","dereferencedContent","isContentJSON","selectIsContentFormatJSON","dereferenceFSA","dereferenceContent","DownloadResolvedYAMLMenuItemHandler","downloadResolvedYAML","isContentYAML","selectIsContentFormatYAML","FileMenuHandler","props","importUrlMenuItemHandler","importFileMenuItemHandler","saveAsMenuItemHandler","convertAndSaveAsJSONMenuItemHandler","convertAndSaveAsYAMLMenuItemHandler","downloadResolvedJSONMenuItemHandler","downloadResolvedYAMLMenuItemHandler","importURL","importFile","saveAs","fileMenuHandler","DropdownMenu","DropdownMenuItemDivider","ImportUrlMenuItem","ImportFileMenuItem","LoadExampleNestedMenu","SaveAsMenuItem","ConvertAndSaveAsJSONMenuItem","ConvertAndSaveAsYAMLMenuItem","DownloadResolvedJSONMenuItem","DownloadResolvedYAMLMenuItem","handleUrlImportClick","handleFileImportClick","handleSaveAsClick","handleConvertAndSaveAsJSONClick","handleConvertAndSaveAsYAMLClick","handleDownloadResolvedJSONClick","handleDownloadResolvedYAMLClick","label","onClick","DropdownMenuItem","__WEBPACK_EXTERNAL_MODULE_prop_types_adfe8e31__","LoadExampleNestedMenuHandler","editorContentFixturesSelectors","loadOpenAP31PetstoreFixture","selectOpenAPI310PetstoreYAML","loadOpenAP30PetstoreFixture","selectOpenAPI303PetstoreYAML","loadOpenAP20PetstoreFixture","selectOpenAPI20PetstoreYAML","loadAsyncAPI26PetstoreFixture","selectAsyncAPI260PetstoreYAML","loadAsyncAPI26StreetlightsFixture","selectAsyncAPI260StreetlightsYAML","loadAPIDesignSystemsFixture","selectAPIDesignSystemsYAML","propTypes","PropTypes","isRequired","loadExampleNestedMenuHandler","DropDownMenuNested","OpenAPI31PetstoreMenuItem","OpenAPI30PetstoreMenuItem","OpenAPI20PetstoreMenuItem","AsyncAPI26PetstoreMenuItem","AsyncAPI26StreetlightsMenuItem","APIDesignSystemsMenuItem","handleOpenAPI31PetstoreClick","handleOpenAPI30PetstoreClick","handleOpenAPI20PetstoreClick","handleAsyncAPI26PetstoreClick","handleAsyncAPI26StreetlightsClick","handleAPIDesignSystemsClick","itemName","isContentTypeOpenAPI","selectIsContentTypeOpenAPI","isContentTypeAsyncAPI","selectIsContentTypeAsyncAPI","isContentFormatJSON","isContentFormatYAML","CovertToJSONMenuItemHandler","convertToJSON","CovertToYAMLMenuItemHandler","convertToYAML","CovertToOpenAPI30xMenuItemHandler","convert","contentType","convertOpenAPI20ToOpenAPI30x","openAPI2Content","convertToJSONMenuItemHandler","convertToYAMLMenuItemHandler","convertToOpenAPI30xMenuItemHandler","clear","clearContent","convertOpenAPI20ToOpenAPI30xClick","ConvertToJSONMenuItemHandler","ConvertToYAMLMenuItemHandler","ClearMenuItem","ConvertToJSONMenuItem","ConvertToYAMLMenuItem","ConvertToOpenAPI30xMenuItem","editMenuHandler","handleClearClick","handleConvertToJSONClick","handleConvertToYAMLClick","handleConvertOpenAPI20ToOpenAPI30xClick","EditMenuHandler","selectIsContentTypeOpenAPI20","GenerateMenu","items","onMenuItemClick","handleMenuClick","item","isLong","map","editorTopBarSelectors","editorTopBarActions","isContentTypeOpenAPI30x","selectIsContentTypeOpenAPI30x","isContentTYpeOpenAPI31x","selectIsContentTypeOpenAPI31x","serverList","selectOpenAPI3GeneratorServerList","canShow","handleMenuItemClick","framework","generateServerCodeFromOpenAPI3","clientList","selectOpenAPI3GeneratorClientList","language","generateClientCodeFromOpenAPI3","isContentTYpeOpenAPI20","selectOpenAPI2GeneratorServerList","generateServerCodeFromOpenAPI20","selectOpenAPI2GeneratorClientList","generateClientCodeFromOpenAPI20","Link","__WEBPACK_EXTERNAL_MODULE_short_unique_id_298b54bb__","__WEBPACK_EXTERNAL_MODULE_axios__","__WEBPACK_EXTERNAL_MODULE__braintree_sanitize_url_2340607f__","sanitizeUrl","importUrlStarted","importUrlSuccess","importUrlFailure","response","request","uid","ShortUniqueId","length","system","sanitizedUrl","Error","axios","responseText","__WEBPACK_EXTERNAL_MODULE_js_file_download_bd23dbb6__","downloadContentStarted","downloadContentSuccess","downloadContentFailure","fileDownload","__WEBPACK_EXTERNAL_MODULE_js_yaml_78384032__","convertContentToJSONStarted","convertContentToJSONSuccess","contentJSON","convertContentToJSONFailure","contentObject","YAML","contentJSONString","JSON","stringify","convertContentToYAMLStarted","convertContentToYAMLSuccess","contentYAML","convertContentToYAMLFailure","parse","contentYAMLString","__WEBPACK_EXTERNAL_MODULE_monaco_editor_23647bbd__","dereferenceContentStarted","baseURI","dereferenceContentSuccess","contentDereferenced","dereferenceContentFailure","model","monaco","getModels","find","m","getValue","worker","getApiDOMWorker","uri","doDeref","toString","location","convertOpenAPI20ToOpenAPI30xStarted","convertOpenAPI20ToOpenAPI30xSuccess","openAPI30xContent","convertOpenAPI20ToOpenAPI30xFailure","swagger2ConverterUrl","openAPI20ConverterURL","getConfigs","converterURL","selectOpenAPI20ConverterURL","headers","Accept","data","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE","fetchOpenAPI3GeneratorServerListStarted","fetchOpenAPI3GeneratorServerListSuccess","fetchOpenAPI3GeneratorServerListFailure","fetchOpenAPI3GeneratorServerList","selectOpenAPI3GeneratorServerListURL","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE","fetchOpenAPI3GeneratorClientListStarted","fetchOpenAPI3GeneratorClientListSuccess","fetchOpenAPI3GeneratorClientListFailure","fetchOpenAPI3GeneratorClientList","selectOpenAPI3GeneratorClientListURL","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE","fetchOpenAPI2GeneratorServerListStarted","fetchOpenAPI2GeneratorServerListSuccess","fetchOpenAPI2GeneratorServerListFailure","fetchOpenAPI2GeneratorServerList","selectOpenAPI2GeneratorServerListURL","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE","fetchOpenAPI2GeneratorClientListStarted","fetchOpenAPI2GeneratorClientListSuccess","fetchOpenAPI2GeneratorClientListFailure","fetchOpenAPI2GeneratorClientList","selectOpenAPI2GeneratorClientListURL","generateServerCodeFromOpenAPI3Started","generateServerCodeFromOpenAPI3Success","blob","generateServerCodeFromOpenAPI3Failure","selectOpenAPI3GenerateServerURL","spec","lang","responseType","generateClientCodeFromOpenAPI3Started","generateClientCodeFromOpenAPI3Success","generateClientCodeFromOpenAPI3Failure","selectOpenAPI3GenerateClientURL","generateServerCodeFromOpenAPI20Started","generateServerCodeFromOpenAPI20Success","generateServerCodeFromOpenAPI20Failure","selectOpenAPI2GenerateServerURL","downloadURL","generateClientCodeFromOpenAPI20Started","generateClientCodeFromOpenAPI20Success","generateClientCodeFromOpenAPI20Failure","selectOpenAPI2GenerateClientURL","wrapper","lastFSA","origAction","__WEBPACK_EXTERNAL_MODULE_immutable__","List","fromJS","IDLE_STATUS","FETCHING_STATUS","SUCCESS_STATUS","FAILURE_STATUS","fetchOpenAPI3GeneratorServerListStartedReducer","state","action","merge","openAPI3GeneratorServerListStatus","openAPI3GeneratorServerListRequestId","fetchOpenAPI3GeneratorServerListSuccessReducer","status","openAPI3GeneratorServerList","of","openAPI3GeneratorServerListError","fetchOpenAPI3GeneratorServerListFailureReducer","fetchOpenAPI3GeneratorClientListStartedReducer","openAPI3GeneratorClientListStatus","openAPI3GeneratorClientListRequestId","fetchOpenAPI3GeneratorClientListSuccessReducer","openAPI3GeneratorClientList","openAPI3GeneratorClientListError","fetchOpenAPI3GeneratorClientListFailureReducer","fetchOpenAPI2GeneratorServerListStartedReducer","openAPI2GeneratorServerListStatus","openAPI2GeneratorServerListRequestId","fetchOpenAPI2GeneratorServerListSuccessReducer","openAPI2GeneratorServerList","openAPI2GeneratorServerListError","fetchOpenAPI2GeneratorServerListFailureReducer","fetchOpenAPI2GeneratorClientListStartedReducer","openAPI2GeneratorClientListStatus","openAPI2GeneratorClientListRequestId","fetchOpenAPI2GeneratorClientListSuccessReducer","openAPI2GeneratorClientList","openAPI2GeneratorClientListError","fetchOpenAPI2GeneratorClientListFailureReducer","detectContentTypeSuccess","createSafeActionWrapper","oriAction","triggerStatuses","includes","selectOpenAPI3GeneratorServerListStatus","selectOpenAPI3GeneratorClientListStatus","selectOpenAPI2GeneratorServerListStatus","selectOpenAPI2GeneratorClientListStatus","__WEBPACK_EXTERNAL_MODULE_reselect__","createSelector","selectEditorTopBarState","toJS","TopBarPlugin","TopBarLogo","TopBarFileMenu","TopBarFileMenuImportUrlMenuItem","TopBarFileMenuImportFileMenuItem","TopBarFileMenuLoadExampleNestedMenu","TopBarFileMenuLoadExampleNestedMenuOpenAPI31PetstoreMenuItem","TopBarFileMenuLoadExampleNestedMenuOpenAPI30PetstoreMenuItem","TopBarFileMenuLoadExampleNestedMenuOpenAPI20PetstoreMenuItem","TopBarFileMenuLoadExampleNestedMenuAsyncAPI26PetstoreMenuItem","TopBarFileMenuLoadExampleNestedMenuAsyncAPI26StreetlightsMenuItem","TopBarFileMenuLoadExampleNestedMenuAPIDesignSystemsMenuItem","TopBarFileMenuSaveAsMenuItem","TopBarFileMenuConvertAndSaveAsJSONMenuItem","TopBarFileMenuConvertAndSaveAsYAMLMenuItem","TopBarFileMenuDownloadResolvedJSONMenuItem","TopBarFileMenuDownloadResolvedYAMLMenuItem","TopBarEditMenu","TopBarEditMenuClearMenuItem","TopBarEditMenuConvertToJSONMenuItem","TopBarEditMenuConvertToYAMLMenuItem","TopBarEditMenuConvertToOpenAPI30xMenuItem","TopBarOpenAPI3GenerateServerMenu","TopBarOpenAPI3GenerateClientMenu","TopBarOpenAPI2GenerateServerMenu","TopBarOpenAPI2GenerateClientMenu","TopBarAboutMenu","statePlugins","editor","actions","wrapActions","detectContentTypeSuccessWrap","selectors","editorTopBar","reducers","__WEBPACK_EXTERNAL_MODULE_react_modal_ee4a10af__","Modal","contentLabel","aria","ReactModal","closeTimeoutMS","overlayClassName","ModalHeader","ModalTitle","ModalBody","ModalFooter","useReactModal","ModalsPlugin","handleCloseClick","handleCancelClick","handleOKClick","DialogsPlugin","setIsOpen","handleClickOutside","contains","handleToggleClick","document","addEventListener","removeEventListener","long","role","tabIndex","DropdownMenuNested","onMouseEnter","handleOpen","onMouseLeave","handleClose","DropdownMenuPlugin","useDropzone","isDragActive","getRootProps","getInputProps","__WEBPACK_EXTERNAL_MODULE_react_dropzone_68d11630__","makeUseDropzone","setErrorMessage","handleFileDrop","acceptedFiles","rejectedFiles","someFilesWereRejected","thereIsExactlyOneAcceptedFile","useVendorDropzone","onDrop","noClick","DropzonePlugin","afterLoad","GIT_COMMIT","GIT_DIRTY","BUILD_TIME","versions","swaggerEditor","create","this","version","gitRevision","gitDirty","valueOf","buildTimestamp","buildHash","__webpack_hash__","VersionsPlugin","useElementResize","Editor","EditorPaneBarTop","EditorPaneBarRight","EditorPaneBarBottom","EditorPaneBarLeft","editorContainerRef","eventName","__WEBPACK_EXTERNAL_MODULE_react_resize_detector_b0babbde__","useResizeDetector","makeUseEditorLifecycle","implementation","editorRef","editorSetup","editorTearDown","handleResize","CustomEvent","detail","dispatchEvent","onResize","refreshMode","refreshRate","TextareaEditor","isReadOnly","useEditorLifecycle","useId","randomNumber","floor","random","String","setValue","handleChange","e","preventDefault","setContentDebounced","readOnly","name","renderChildren","renderControls","controls","EDITOR_SETUP","EDITOR_TEAR_DOWN","EDITOR_SET_CONTENT","editorInstance","initialState","set","delete","selectId","selectEditor","getElementById","__WEBPACK_EXTERNAL_MODULE_lodash_debounce_js_35379ba8__","setContentDebouncedImpl","debounce","contentOrigin","updateSpec","origin","EditorTextareaPlugin","editorSetupWrap","editorTearDownWrap","setContentDebouncedWrap","clearContentWrap","updateSpecWrap","__WEBPACK_EXTERNAL_MODULE_lodash_noop_js_57fa4577__","base","inherit","rules","token","foreground","fontStyle","colors","useMount","effect","useUpdate","deps","applyChanges","isInitialMount","MonacoEditor","theme","onMount","onWillUnmount","onEditorMarkersDidChange","containerRef","subscriptionRef","valueRef","isEditorReady","setIsEditorReady","createEditor","glyphMargin","lightbulb","enabled","lineNumbers","autoIndent","formatOnPaste","formatOnType","wordWrap","minimap","domReadOnly","wordBasedSuggestions","quickSuggestions","quickSuggestionsDelay","fixedOverflowWidgets","suggest","snippetsPreventQuickSuggestions","renderWhitespace","matchOnWordStartOnly","getModel","updateOptions","tabSize","disposeEditor","_subscriptionRef$curr","_editorRef$current$ge","dispose","defineTheme","seVsDarkTheme","seVsLightTheme","setModelLanguage","getOption","EditorOption","executeEdits","range","getFullModelRange","forceMoveMarkers","pushUndoStop","setTheme","disposable","onDidChangeMarkers","uris","currentModelUri","markers","getModelMarkers","resource","_subscriptionRef$curr2","_editorRef$current","onDidChangeModelContent","editorValue","layout","useSmoothResize","lastDimensions","currentDimensions","breakAnimationFrame","handleEditorContainerResize","requestAnimationFrame","handleEditorResize","noop","MonacoEditorContainer","selectTheme","selectLanguage","handleEditorDidMount","focus","handleEditorWillUnmount","handleChangeEditorValue","newValue","handleEditorMarkersDidChange","setMarkers","ValidationPane","alwaysDisplayHeading","onValidationClick","selectMarkers","ValidationTable","showTable","handleValidationClick","marker","position","lineNumber","startLineNumber","column","startColumn","setPosition","onRowClick","SeverityIcon","severity","index","code","__WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__","LockIcon","MoonIcon","SunIcon","UnlockIcon","ThemeSelectionIcon","newTheme","size","EditorPaneBarTopWrapper","Original","ThemeSelection","rest","EditorPaneBarBottomWrapper","EDITOR_APPEND_MARKERS","appendMarkers","EDITOR_CLEAR_MARKERS","clearMarkers","source","EDITOR_SET_LANGUAGE","setLanguage","languageId","EDITOR_SET_MARKERS","setPositionStarted","setPositionSuccess","setPositionFailure","revealPositionNearTop","EDITOR_SET_THEME","concat","filterNot","editor_setup","getId","editor_tear_down","getEditors","__WEBPACK_EXTERNAL_MODULE_monaco_marker_data_provider_40519126__","registerMarkerDataProvider","registerMarkerDataProviderGeneric","bind","waitUntil","condition","interval","maxWait","Promise","resolve","reject","intervalID","setInterval","clearInterval","monacoInitializationDeferred","makeDeferred","deferred","promise","__WEBPACK_EXTERNAL_MODULE_vscode_services_3b1ec6e6__","IStorageService","StandaloneServices","initialize","__WEBPACK_EXTERNAL_MODULE_vscode_service_override_languages_39ca0d84__","__WEBPACK_EXTERNAL_MODULE_vscode_extensions_dfa53f5d__","InitPhase","MonacoEnvironment","initPhase","baseUrl","getWorkerUrl","URL","process","all","initializeMonacoServices","getLanguagesServiceOverride","initializeVscodeExtensions","store","EditorMonacoPlugin","wrapComponents","_classPrivateFieldBase","receiver","privateKey","TypeError","_classPrivateFieldKey","__WEBPACK_EXTERNAL_MODULE_vscode__","languages","__WEBPACK_EXTERNAL_MODULE_monaco_editor_esm_vs_editor_common_languages_modesRegistry_js_5f33ab3c__","ModesRegistry","conf","comments","lineComment","brackets","autoClosingPairs","open","close","surroundingPairs","onEnterRules","beforeText","indentAction","IndentAction","Indent","None","appendText","defaultToken","keywords","typeKeywords","escapes","tokenizer","root","cases","include","whitespace","string","__WEBPACK_EXTERNAL_MODULE_vscode_languageclient_lib_common_codeConverter_js_b2d3adcf__","createConverter","__WEBPACK_EXTERNAL_MODULE_vscode_languageclient_lib_common_protocolConverter_js_779c1346__","_defaults","_classPrivateFieldLooseKey","_worker","_client","_idleCheckInterval","_lastUsedTime","_stopWorker","_checkIfIdle","_getClient","WorkerManager","constructor","defaults","_getClient2","_checkIfIdle2","_stopWorker2","writable","_classPrivateFieldLooseBase","getLanguageServiceWorker","resources","client","withSyncedResources","createWebWorker","getLanguageId","createData","getWorkerOptions","apiDOMContext","customWorkerPath","getProxy","codeConverter","protocolConverter","_codeConverter","_protocolConverter","_listener","_disposables","_diagnosticCollection","_system","_getDiagnostics","_validate","_getDiagnostics2","isDisposed","doValidation","_validate2","_classPrivateFieldLoo","diagnostics","asDiagnostics","Provider","super","onModelAdded","apidom","changeSubscription","onDidChangeContent","onModelRemoved","onVscodeInitialized","vscodeLanguages","createDiagnosticCollection","push","onDidCreateModel","onDidChangeModelLanguage","hasChangedToApiDOM","isModelSubscribed","onWillDisposeModel","then","forEach","_getHover","_getHover2","vscodeDocument","doHover","asPosition","provideHover","hover","asHover","_getLinks","_getLinks2","doLinks","provideDocumentLinks","linksWithNonEmptyRanges","filter","asRange","isEmpty","asDocumentLinks","resolveDocumentLink","_getCompletionList","_getCompletionList2","doComplete","provideCompletionItems","completionList","asCompletionResult","_getSemanticTokens","_getSemanticTokens2","findSemanticTokens","provideDocumentSemanticTokens","semanticTokens","asSemanticTokens","_getCodeActionList","_maybeConvert","_getCodeActionList2","diagnosticList","doCodeActions","_maybeConvert2","codeActionList","asCodeActionResult","provideCodeActions","ctx","_getSymbolInformationList","_getSymbolInformationList2","findDocumentSymbols","provideDocumentSymbols","symbolInformationList","asSymbolInformations","_getLocation","_getLocation2","provideDefinition","asDefinitionResult","apidomWorker","disposeAll","disposables","pop","asDisposable","getWorker","setupMode","createCodeConverter","createProtocolConverter","registerProviders","providers","dependencies","DiagnosticsProvider","registerHoverProvider","HoverProvider","registerDocumentLinkProvider","DocumentLinkProvider","registerCompletionItemProvider","CompletionItemProvider","registerCodeActionsProvider","CodeActionsProvider","registerDocumentSymbolProvider","DocumentSymbolProvider","registerDefinitionProvider","DefinitionProvider","workerService","semanticTokensLegend","getSemanticTokensLegend","registerDocumentSemanticTokensProvider","DocumentSemanticTokensProvider","getModeConfiguration","createDereferenceActionDescriptor","run","dereferenced","format","nicelyFormattedYAML","modeConfigurationDefault","workerOptionsDefault","_languageId","_workerOptions","_modeConfiguration","LanguageServiceDefaultsImpl","workerOptions","modeConfiguration","setLanguageId","setWorkerOptions","setModeConfiguration","apidomDefaults","lazyMonacoContribution","registerLanguage","setLanguageConfiguration","setMonarchTokensProvider","onDidCreateEditor","customApiDOMWorkerPath","dereferenceActionDescriptor","getAction","addAction","onDidDispose","makeAfterLoad","isLanguageRegistered","getLanguages","getJsonPointerPositionStarted","jsonPointer","getJsonPointerPositionSuccess","getJsonPointerPositionFailure","getJsonPointerPosition","line","character","EditorMonacoLanguageApiDOMPlugin","opts","isCalledWithGetSystem","options","plugin","EditorPreview","EditorPreviewFallback","EditorPreviewPlugin","EditorPreviewSwaggerUI","editorPreviewSwaggerUIActions","BaseLayout","previewUnmounted","JumpToPath","path","showButton","handleJumpToPath","stopPropagation","jumpToPath","jumpToPathButton","onKeyDown","EditorPreviewWrapper","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_json_pointer_c5d352f4__","compile","jumpToPathStarted","jumpToPathSuccess","jumpToPathFailure","getJsonPointerPositionFSA","setPositionActionFSA","specActions","EditorPreviewSwaggerUIPlugin","editorPreviewSwaggerUI","previewUnmountedWrap","AsyncApiReactComponent","React","Loading","Parsing","EditorPreviewAsyncAPI","editorPreviewAsyncAPIActions","editorPreviewAsyncAPISelectors","ParseErrors","isParseInProgress","selectIsParseInProgress","isParseSuccess","selectIsParseSuccess","isParseFailure","selectIsParseFailure","parseResult","selectParseResult","parseErrors","selectParseErrors","fallback","schema","config","show","errors","selectIsContentTypeAsyncAPI2","__WEBPACK_EXTERNAL_MODULE__asyncapi_parser_bad37540__","AsyncAPIDocument","registerSchemaParser","__WEBPACK_EXTERNAL_MODULE__asyncapi_openapi_schema_parser_16ffeb94__","__WEBPACK_EXTERNAL_MODULE__asyncapi_avro_schema_parser_e6df19e2__","defaultSchemaFormat","schemaFormat","description","console","getMimeTypes","openapiSchemaParser","ramlSchemaParser","avroSchemaParser","EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED","EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED","EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS","EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE","parseStarted","parseSuccess","parseFailure","parserOptions","parseAsyncAPIDefinition","__WEBPACK_EXTERNAL_MODULE_lodash_uniqWith_js_0c2624c1__","PARSING_STATUS","parserMarkers","parseStatus","parseRequestId","parseStartedReducer","parseSuccessReducer","parseFailureReducer","validationErrors","Array","isArray","validationError","startLine","endLineNumber","endLine","endColumn","parseValidationErrorsReducer","refErrors","refs","refError","parseRefErrorsReducer","uniqWith","arrVal","othVal","selectState","selectParseStatus","parseErrorsIm","selectParseMarkers","modelVersionId","parseError","MarkerSeverity","Disposable","owner","provideMarkerData","modelValue","getVersionId","conditionFn","usingEditorMonacoPlugin","usingEditorMonacoLanguageApiDOMPlugin","pluginAPI","editorPreviewAsyncAPI","EditorPreviewAsyncAPIPlugin","EditorPreviewAsyncAPIParseErrors","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_json_1adf0e52__","detect","detectionRegExp","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_yaml_bdee7436__","EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED","EDITOR_PREVIEW_ADS_PARSE_STARTED","EDITOR_PREVIEW_ADS_PARSE_SUCCESS","EDITOR_PREVIEW_ADS_PARSE_FAILURE","editorPreviewADSActions","parseAPIDesignSystemsDefinition","parseJSON","parseYAML","selectIsContentTypeAPIDesignSystems","selectContentType","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__","createNamespace","from","isArrayElement","isStringElement","toValue","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__","isInfoElement","isMainElement","isPrincipleElement","isRequirementLevelElement","isScenarioElement","isStandardElement","isStandardIdentifierElement","namespace","apiDesignSystemsNamespace","selectParseError","selectMainElement","selectVersion","mainElement","selectInfo","info","selectPrinciplesCount","principles","selectStandardsCount","standards","selectScenariosCount","scenarios","selectPrinciples","selectStandards","selectScenarios","elements","selectStandardIdentifier","standardIdentifier","replaceAll","selectScenarioDescription","scenarioElement","selectScenarioRequirements","selectRequirementLevel","requirementElement","level","selectRequirementValues","values","Main","Info","Principles","Standards","Scenarios","editorPreviewADSSelectors","principlesCount","Principle","style","paddingLeft","paddingRight","principle","iri","standardsCount","Standard","scenariosCount","Scenario","focusable","when","element","scenarioName","requirements","Requirement","display","subject","EditorPreviewAPIDesignSystems","EditorPreviewApiDesignSystemsPlugin","ADSMain","ADSInfo","ADSPrinciples","ADSPrinciple","ADSStandards","ADSStandard","ADSScenarios","ADSScenario","ADSRequirement","EditorPreviewAPIDesignSystemsParseErrors","editorPreviewADS","EDITOR_CONTENT_SET_READ_ONLY","EDITOR_CONTENT_SET_READ_WRITE","setContentReadOnly","setContentReadWrite","selectContentIsReadOnly","selectContentIsReadWrite","ReadOnlySelectionIcon","handleReadonly","isReadOnlyNew","ReadOnlySelection","EditorWrapper","EditorContentReadOnlyPlugin","EDITOR_CONTENT_SET_ORIGIN","setContentOrigin","selectContentOrigin","EditorContentOriginPlugin","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_asyncapi_json_2_77a2dadd__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_asyncapi_yaml_2_8d232224__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_json_3_0_9283cb64__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_yaml_3_0_95da947e__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_json_3_1_6b2e7700__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_yaml_3_1_7a900d16__","EDITOR_CONTENT_TYPE_DETECT_STARTED","EDITOR_CONTENT_TYPE_DETECT_SUCCESS","EDITOR_CONTENT_TYPE_DETECT_FAILURE","detectContentTypeStarted","detectContentTypeFailure","detectContentType","asyncApi2JSONMatch","match","detectionRegExpAsyncAPIJSON2","isValidJSONObject","groups","version_json","asyncApi2YAMLMatch","detectionRegExpAsyncAPIYAML2","isValidYAMLObject","version_yaml","openApi30xJSONMatch","detectionRegExpOpenAPIJSON30x","openApi30xYAMLMatch","detectionRegExpOpenAPIYAML30x","openApi31xJSONMatch","detectionRegExpOpenAPIJSON31x","openApi31xYAMLMatch","detectionRegExpOpenAPIYAML31x","apiDesignSystemsJSONMatch","detectionRegExpApiDesignSystemsJSON","detectAPIDesignSystemsJSON","apiDesignSystemsYAMLMatch","detectionRegExpApiDesignSystemsYAML","detectAPIDesignSystemsYAML","isValidJSON","isValidYAML","DETECTING_STATUS","detectContentStartedReducer","contentTypeDetectionStatus","contentTypeDetectionRequestId","detectContentSuccessReducer","contentTypeError","detectContentFailureReducer","selectContentTypeDetectionStatus","selectIsContentTypeDetectionInProgress","startsWith","isContentOpenAPI","test","isContentAsyncAPI","selectInferFileExtensionFromContent","isJSON","isYAML","isOpenAPI20","isOpenAPI30x","isOpenAPI31x","isAsyncAPI2","extension","fileName","EditorContentTypePlugin","setContentWrap","editorContentPersistence","download","has","STORAGE_KEY","loadFromLocalStorage","localStorage","getItem","setItem","saveToLocalStorage","contentPersisted","EditorContentPersistencePlugin","downloadWrap","EditorContentFixturesPlugin","editorContentFixtures","BaseLayoutWrapper","SwaggerUIAdapterPlugin","SafeRenderPlugin","SwaggerUI","SafeRender","componentList","SwaggerEditor","mergedProps","deepmerge","plugins","Modals","Dialogs","Versions","EditorTextarea","EditorMonaco","EditorMonacoLanguageApiDOM","EditorContentReadOnly","EditorContentOrigin","EditorContentType","EditorContentPersistence","EditorContentFixtures","EditorPreviewApiDesignSystems","SwaggerUIAdapter","presets","textarea","default"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"swagger-editor.js","mappings":"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","sources":["../external module \"@asyncapi/react-component/lib/esm/without-parser.js\"","../webpack/bootstrap","../webpack/runtime/define property getters","../webpack/runtime/getFullHash","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/make namespace object","../external module \"react\"","../external module \"deepmerge\"","../external module \"swagger-ui-react\"","../external module \"react-collapse-pane\"","../external module \"react/jsx-runtime.js\"","plugins/layout/components/Layout/Layout.jsx","plugins/layout/fn.js","plugins/layout/hooks.js","plugins/layout/index.js","../external module \"classnames\"","plugins/splash-screen/components/SplashScreen/SplashScreen.jsx","plugins/splash-screen/components/SplashScreenSpinner/SplashScreenSpinner.jsx","plugins/splash-screen/index.js","plugins/top-bar/components/TopBar/TopBar.jsx","plugins/top-bar/components/Logo/Logo.jsx","plugins/top-bar/components/FileMenu/items/ImportUrlMenuItemHandler.jsx","../external module \"file-dialog\"","plugins/top-bar/components/FileMenu/items/ImportFileMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/SaveAsMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/ConvertAndSaveAsJSONMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/ConvertAndSaveAsYAMLMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/DownloadResolvedJSONMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/items/DownloadResolvedYAMLMenuItemHandler.jsx","plugins/top-bar/components/FileMenu/FileMenuHandler.jsx","plugins/top-bar/components/FileMenu/FileMenu.jsx","plugins/top-bar/components/FileMenu/items/ImportUrlMenuItem.jsx","plugins/top-bar/components/FileMenu/items/ImportFileMenuItem.jsx","../external module \"prop-types\"","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/LoadExampleNestedMenuHandler.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/LoadExampleNestedMenu.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI31PetstoreMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI30PetstoreMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI20PetstoreMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/AsyncAPI26PetstoreMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/AsyncAPI26StreetlightsMenuItem.jsx","plugins/top-bar/components/FileMenu/items/LoadExampleNestedMenu/items/APIDesignSystemsMenuItem.jsx","plugins/top-bar/components/FileMenu/items/SaveAsMenuItem.jsx","plugins/top-bar/components/FileMenu/items/ConvertAndSaveAsJSONMenuItem.jsx","plugins/top-bar/components/FileMenu/items/ConvertAndSaveAsYAMLMenuItem.jsx","plugins/top-bar/components/FileMenu/items/DownloadResolvedJSONMenuItem.jsx","plugins/top-bar/components/FileMenu/items/DownloadResolvedYAMLMenuItem.jsx","plugins/top-bar/components/EditMenu/items/ConvertToJSONMenuItemHandler.jsx","plugins/top-bar/components/EditMenu/items/ConvertToYAMLMenuItemHandler.jsx","plugins/top-bar/components/EditMenu/items/ConvertToOpenAPI30xMenuItemHandler.jsx","plugins/top-bar/components/EditMenu/EditMenuHandler.jsx","plugins/top-bar/components/EditMenu/EditMenu.jsx","plugins/top-bar/components/EditMenu/items/ClearMenuItem.jsx","plugins/top-bar/components/EditMenu/items/ConvertToJSONMenuItem.jsx","plugins/top-bar/components/EditMenu/items/ConvertToYAMLMenuItem.jsx","plugins/top-bar/components/EditMenu/items/ConvertToOpenAPI30xMenuItem.jsx","plugins/top-bar/components/GenerateServerMenu/GenerateMenu.jsx","plugins/top-bar/components/GenerateServerMenu/OpenAPI3GenerateServerMenu.jsx","plugins/top-bar/components/GenerateServerMenu/OpenAPI3GenerateClientMenu.jsx","plugins/top-bar/components/GenerateServerMenu/OpenAPI2GenerateServerMenu.jsx","plugins/top-bar/components/GenerateServerMenu/OpenAPI2GenerateClientMenu.jsx","plugins/top-bar/components/AboutMenu/AboutMenu.jsx","../external module \"short-unique-id\"","../external module \"axios\"","../external module \"@braintree/sanitize-url\"","plugins/top-bar/actions/import-url.js","../external module \"js-file-download\"","plugins/top-bar/actions/download-content.js","../external module \"js-yaml\"","plugins/top-bar/actions/convert-content-to-json.js","plugins/top-bar/actions/convert-content-to-yaml.js","../external module \"monaco-editor\"","plugins/top-bar/actions/dereference-content.js","plugins/top-bar/actions/convert-openapi-20-to-openapi-30x.js","plugins/top-bar/actions/fetch-openapi3-generator-server-list.js","plugins/top-bar/actions/fetch-openapi3-generator-client-list.js","plugins/top-bar/actions/fetch-openapi2-generator-server-list.js","plugins/top-bar/actions/fetch-openapi2-generator-client-list.js","plugins/top-bar/actions/generate-server-code-from-openapi-3.js","plugins/top-bar/actions/generate-client-code-from-openapi-3.js","plugins/top-bar/actions/generate-server-code-from-openapi-20.js","plugins/top-bar/actions/generate-client-code-from-openapi-20.js","utils/create-safe-action-wrapper.js","../external module \"immutable\"","plugins/top-bar/reducers.js","plugins/top-bar/wrap-actions.js","../external module \"reselect\"","plugins/top-bar/selectors.js","plugins/top-bar/index.js","../external module \"react-modal\"","plugins/modals/components/Modal.jsx","plugins/modals/components/ModalHeader.jsx","plugins/modals/components/ModalTitle.jsx","plugins/modals/components/ModalBody.jsx","plugins/modals/components/ModalFooter.jsx","plugins/modals/hooks.js","plugins/modals/index.js","plugins/dialogs/components/AlertDialog.jsx","plugins/dialogs/components/ConfirmDialog.jsx","plugins/dialogs/index.js","plugins/dropdown-menu/components/DropdownMenu/DropdownMenu.jsx","plugins/dropdown-menu/components/DropdownMenuNested/DropdownMenuNested.jsx","plugins/dropdown-menu/components/DropdownMenuItem/DropdownMenuItem.jsx","plugins/dropdown-menu/components/DropdownMenuItemDivider.jsx","plugins/dropdown-menu/index.js","plugins/dropzone/components/Dropzone.jsx","../external module \"react-dropzone\"","plugins/dropzone/hooks.js","plugins/dropzone/index.js","plugins/versions/after-load.js","plugins/versions/index.js","plugins/editor-textarea/components/EditorPane/EditorPane.jsx","../external module \"react-resize-detector\"","plugins/editor-textarea/hooks.js","plugins/editor-textarea/components/TextareaEditor/TextareaEditor.jsx","plugins/editor-textarea/components/EditorPaneBars/EditorPaneBarTop.jsx","plugins/editor-textarea/components/EditorPaneBars/EditorPaneBarRight.jsx","plugins/editor-textarea/components/EditorPaneBars/EditorPaneBarBottom.jsx","plugins/editor-textarea/components/EditorPaneBars/EditorPaneBarLeft.jsx","plugins/editor-textarea/actions.js","plugins/editor-textarea/reducers.js","plugins/editor-textarea/selectors.js","../external module \"lodash/debounce.js\"","plugins/editor-textarea/wrap-actions.js","plugins/editor-textarea/index.js","../external module \"lodash/noop.js\"","plugins/editor-monaco/themes/se-vs-dark.js","plugins/editor-monaco/themes/se-vs-light.js","plugins/editor-monaco/components/MonacoEditor/hooks.js","plugins/editor-monaco/components/MonacoEditor/MonacoEditor.jsx","plugins/editor-monaco/components/MonacoEditor/MonacoEditorContainer.jsx","plugins/editor-monaco/components/ValidationPane/ValidationPane.jsx","plugins/editor-monaco/components/ValidationTable/SeverityIcon.jsx","plugins/editor-monaco/components/ValidationTable/ValidationTable.jsx","../external module \"@primer/octicons-react\"","plugins/editor-monaco/components/ThemeSelectionIcon.jsx","plugins/editor-monaco/wrap-components/EditorPaneBarTopWrapper.jsx","plugins/editor-monaco/wrap-components/EditorPaneBarBottomWrapper.jsx","plugins/editor-monaco/actions/append-markers.js","plugins/editor-monaco/actions/clear-markers.js","plugins/editor-monaco/actions/set-language.js","plugins/editor-monaco/actions/set-markers.js","plugins/editor-monaco/actions/set-position.js","plugins/editor-monaco/actions/set-theme.js","plugins/editor-monaco/reducers.js","plugins/editor-monaco/selectors.js","../external module \"monaco-marker-data-provider\"","plugins/editor-monaco/fn.js","plugins/editor-monaco/root-injects.js","../external module \"vscode/services\"","../external module \"vscode/service-override/languages\"","../external module \"vscode/extensions\"","plugins/editor-monaco/after-load.js","plugins/editor-monaco/index.js","../node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js","../node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js","../external module \"vscode\"","../external module \"monaco-editor/esm/vs/editor/common/languages/modesRegistry.js\"","plugins/editor-monaco-language-apidom/language/apidom.js","../external module \"vscode-languageclient/lib/common/codeConverter.js\"","../external module \"vscode-languageclient/lib/common/protocolConverter.js\"","plugins/editor-monaco-language-apidom/language/WorkerManager.js","plugins/editor-monaco-language-apidom/language/providers/Provider.js","plugins/editor-monaco-language-apidom/language/providers/DiagnosticsProvider.js","plugins/editor-monaco-language-apidom/language/providers/HoverProvider.js","plugins/editor-monaco-language-apidom/language/providers/DocumentLinkProvider.js","plugins/editor-monaco-language-apidom/language/providers/CompletionItemProvider.js","plugins/editor-monaco-language-apidom/language/providers/DocumentSemanticTokensProvider.js","plugins/editor-monaco-language-apidom/language/providers/CodeActionsProvider.js","plugins/editor-monaco-language-apidom/language/providers/DocumentSymbolProvider.js","plugins/editor-monaco-language-apidom/language/providers/DefinitionProvider.js","plugins/editor-monaco-language-apidom/language/apidom-mode.js","plugins/editor-monaco-language-apidom/language/actions/dereference.js","plugins/editor-monaco-language-apidom/language/monaco.contribution.js","plugins/editor-monaco-language-apidom/after-load.js","plugins/editor-monaco-language-apidom/actions/get-json-pointer-position.js","plugins/editor-monaco-language-apidom/index.js","plugins/editor-preview/components/EditorPreviewPane.jsx","plugins/editor-preview/components/EditorPreviewFallback.jsx","plugins/editor-preview/index.js","plugins/editor-preview-swagger-ui/components/EditorPreviewSwaggerUI.jsx","../external module \"react-immutable-proptypes\"","plugins/editor-preview-swagger-ui/components/JumpToPath.jsx","plugins/editor-preview-swagger-ui/wrap-components/EditorPreviewWrapper.jsx","plugins/editor-preview-swagger-ui/actions/preview-unmounted.js","../external module \"@swagger-api/apidom-json-pointer\"","plugins/editor-preview-swagger-ui/actions/jump-to-path.js","plugins/editor-preview-swagger-ui/wrap-actions.js","plugins/editor-preview-swagger-ui/index.js","plugins/editor-preview-asyncapi/components/EditorPreviewAsyncAPI/EditorPreviewAsyncAPI.jsx","plugins/editor-preview-asyncapi/components/ParseErrors/ParseErrors.jsx","plugins/editor-preview-asyncapi/wrap-components/EditorPreviewWrapper.jsx","../external module \"@asyncapi/parser\"","../external module \"@asyncapi/openapi-schema-parser\"","../external module \"@asyncapi/avro-schema-parser\"","plugins/editor-preview-asyncapi/util/raml-1-0-parser.js","plugins/editor-preview-asyncapi/actions.js","plugins/editor-preview-asyncapi/wrap-actions.js","../external module \"lodash/uniqWith.js\"","plugins/editor-preview-asyncapi/reducers.js","plugins/editor-preview-asyncapi/selectors.js","plugins/editor-preview-asyncapi/monaco.contribution.js","plugins/editor-preview-asyncapi/after-load.js","plugins/editor-preview-asyncapi/index.js","../external module \"@swagger-api/apidom-parser-adapter-api-design-systems-json\"","../external module \"@swagger-api/apidom-parser-adapter-api-design-systems-yaml\"","plugins/editor-preview-api-design-systems/actions.js","plugins/editor-preview-api-design-systems/wrap-actions.js","../external module \"@swagger-api/apidom-core\"","../external module \"@swagger-api/apidom-ns-api-design-systems\"","plugins/editor-preview-api-design-systems/namespace.js","plugins/editor-preview-api-design-systems/reducers.js","plugins/editor-preview-api-design-systems/selectors.js","plugins/editor-preview-api-design-systems/components/Main.jsx","plugins/editor-preview-api-design-systems/components/Info.jsx","plugins/editor-preview-api-design-systems/components/Principles.jsx","plugins/editor-preview-api-design-systems/components/Principle.jsx","plugins/editor-preview-api-design-systems/components/Standards.jsx","plugins/editor-preview-api-design-systems/components/Standard.jsx","plugins/editor-preview-api-design-systems/components/Scenarios.jsx","plugins/editor-preview-api-design-systems/components/Scenario.jsx","plugins/editor-preview-api-design-systems/components/Requirement.jsx","plugins/editor-preview-api-design-systems/components/EditorPreviewAPIDesignSystems.jsx","plugins/editor-preview-api-design-systems/components/ParseErrors.jsx","plugins/editor-preview-api-design-systems/wrap-components/EditorPreviewWrapper.jsx","plugins/editor-preview-api-design-systems/index.js","plugins/editor-content-read-only/actions.js","plugins/editor-content-read-only/reducers.js","plugins/editor-content-read-only/selectors.js","plugins/editor-content-read-only/components/ReadOnlySelectionIcon.jsx","plugins/editor-content-read-only/wrap-components/EditorPaneBarTopWrapper.jsx","plugins/editor-content-read-only/wrap-components/EditorWrapper.jsx","plugins/editor-content-read-only/index.js","plugins/editor-content-origin/actions.js","plugins/editor-content-origin/reducers.js","plugins/editor-content-origin/selectors.js","plugins/editor-content-origin/wrap-actions.js","plugins/editor-content-origin/index.js","../external module \"@swagger-api/apidom-parser-adapter-asyncapi-json-2\"","../external module \"@swagger-api/apidom-parser-adapter-asyncapi-yaml-2\"","../external module \"@swagger-api/apidom-parser-adapter-openapi-json-3-0\"","../external module \"@swagger-api/apidom-parser-adapter-openapi-yaml-3-0\"","../external module \"@swagger-api/apidom-parser-adapter-openapi-json-3-1\"","../external module \"@swagger-api/apidom-parser-adapter-openapi-yaml-3-1\"","plugins/editor-content-type/actions.js","plugins/editor-content-type/wrap-actions.js","plugins/editor-content-type/reducers.js","plugins/editor-content-type/selectors.js","plugins/editor-content-type/fn.js","plugins/editor-content-type/index.js","plugins/editor-content-persistence/wrap-actions.js","plugins/editor-content-persistence/layers/local-storage.js","plugins/editor-content-persistence/root-injects.js","plugins/editor-content-persistence/after-load.js","plugins/editor-content-persistence/index.js","plugins/editor-content-fixtures/selectors/selectOpenAPI310PetstoreYAML.js","plugins/editor-content-fixtures/selectors/selectOpenAPI303PetstoreYAML.js","plugins/editor-content-fixtures/selectors/selectOpenAPI20PetstoreYAML.js","plugins/editor-content-fixtures/selectors/selectAsyncAPI260PetstoreYAML.js","plugins/editor-content-fixtures/selectors/selectAsyncAPI260StreetlightsYAML.js","plugins/editor-content-fixtures/selectors/selectAPIDesignSystemsYAML.js","plugins/editor-content-fixtures/index.js","plugins/editor-safe-render/components/ErrorBoundary.jsx","plugins/editor-safe-render/wrap-components/ErrorBoundaryWrapper.jsx","plugins/editor-safe-render/index.js","plugins/swagger-ui-adapter/wrap-actions.js","plugins/swagger-ui-adapter/wrap-components/BaseLayout.jsx","plugins/swagger-ui-adapter/index.js","App.jsx"],"sourcesContent":["var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nmodule.exports = __WEBPACK_EXTERNAL_MODULE__asyncapi_react_component_lib_esm_without_parser_js_ba054bac__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.h = () => (\"f480826f6117ca5476df\")","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"Component\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.Component, [\"Suspense\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.Suspense, [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_react__[\"default\"], [\"forwardRef\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.forwardRef, [\"memo\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.memo, [\"useCallback\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useCallback, [\"useEffect\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useEffect, [\"useImperativeHandle\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useImperativeHandle, [\"useRef\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useRef, [\"useState\"]: () => __WEBPACK_EXTERNAL_MODULE_react__.useState });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_deepmerge__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_swagger_ui_react_ed26f026__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"SplitPane\"]: () => __WEBPACK_EXTERNAL_MODULE_react_collapse_pane_f7052d83__.SplitPane });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"Fragment\"]: () => __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_js_fc12ce1a__.Fragment, [\"jsx\"]: () => __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_js_fc12ce1a__.jsx, [\"jsxs\"]: () => __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_js_fc12ce1a__.jsxs });","import PropTypes from 'prop-types';\nimport { SplitPane } from 'react-collapse-pane';\n\nconst Layout = ({ getComponent, useSwaggerEditorReactModal, useSplashScreen }) => {\n const EditorPane = getComponent('EditorPane', true);\n const EditorPreviewPane = getComponent('EditorPreviewPane', true);\n const TopBar = getComponent('TopBar', true);\n const Container = getComponent('Container'); // accessed from swagger-ui`\n const Dropzone = getComponent('Dropzone', true);\n const SplashScreen = getComponent('SplashScreen', true);\n const ref = useSwaggerEditorReactModal();\n const [canDisplaySplashScreen, canDisplayLayout] = useSplashScreen();\n\n return (\n <div className=\"swagger-editor__layout\" ref={ref}>\n <SplashScreen isOpen={canDisplaySplashScreen} />\n {canDisplayLayout && (\n <>\n <TopBar />\n <Container className=\"container\">\n <Dropzone>\n <SplitPane split=\"vertical\">\n <EditorPane />\n <EditorPreviewPane />\n </SplitPane>\n </Dropzone>\n </Container>\n </>\n )}\n </div>\n );\n};\n\nLayout.propTypes = {\n getComponent: PropTypes.func.isRequired,\n useSwaggerEditorReactModal: PropTypes.func.isRequired,\n useSplashScreen: PropTypes.func.isRequired,\n};\n\nexport default Layout;\n","const requestIdleCallbackPolyfill = (callback) => {\n const start = Date.now();\n\n return globalThis.setTimeout(() => {\n callback({\n didTimeout: false,\n timeoutRemaining() {\n return Math.max(0, 50 - (Date.now() - start));\n },\n });\n }, 1);\n};\n\nconst cancelIdleCallbackPolyfill = (handle) => globalThis.clearTimeout(handle);\n\nexport const requestIdleCallback = globalThis.requestIdleCallback\n ? (...args) => globalThis.requestIdleCallback(...args)\n : requestIdleCallbackPolyfill;\n\nexport const cancelIdleCallback = globalThis.cancelIdleCallback\n ? (...args) => globalThis.cancelIdleCallback(...args)\n : cancelIdleCallbackPolyfill;\n","import { useEffect, useState } from 'react';\n\n/* eslint-disable */\n\n// eslint-disable-next-line import/prefer-default-export\nexport const makeUseSplashScreen = (getSystem) => () => {\n const [canDisplaySplashScreen, setCanDisplaySplashScreen] = useState(true);\n const [canDisplayLayout, setDisplayLayout] = useState(false);\n const { fn } = getSystem();\n\n useEffect(() => {\n const callback = () => {\n setDisplayLayout(true);\n };\n const requestId = fn.requestIdleCallback(callback);\n\n return () => {\n fn.cancelIdleCallback(requestId);\n };\n }, []);\n\n useEffect(() => {\n if (canDisplayLayout) {\n let requestID;\n\n const callback = () => {\n requestID = fn.requestIdleCallback(() => {\n setCanDisplaySplashScreen(false);\n });\n };\n const timeoutID = globalThis.setTimeout(callback, 1000);\n\n return () => {\n globalThis.clearTimeout(timeoutID);\n fn.cancelIdleCallback(requestID);\n };\n }\n return undefined;\n }, [canDisplayLayout]);\n\n return [canDisplaySplashScreen, canDisplayLayout];\n};\n","import Layout from './components/Layout/Layout.jsx';\nimport { requestIdleCallback, cancelIdleCallback } from './fn.js';\nimport { makeUseSplashScreen } from './hooks.js';\n\nconst LayoutPlugin = ({ getSystem }) => ({\n rootInjects: {\n useSplashScreen: makeUseSplashScreen(getSystem),\n },\n components: {\n SwaggerEditorLayout: Layout,\n },\n fn: {\n requestIdleCallback,\n cancelIdleCallback,\n },\n});\n\nexport default LayoutPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_classnames__[\"default\"] });","import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\n// eslint-disable-next-line import/no-unresolved\nimport logo from '../../assets/logo.svg?raw';\n\nconst SplashScreen = ({ isOpen, getComponent }) => {\n const { PACKAGE_VERSION } = buildInfo; // eslint-disable-line no-undef\n const SplashScreenSpinner = getComponent('SplashScreenSpinner');\n const [isHidden, setHidden] = useState(!isOpen);\n\n const handleTransitionEnd = () => {\n setHidden(true);\n };\n\n return (\n <div\n className={classNames('swagger-editor__splash-screen', {\n 'swagger-editor__splash-screen--fade-out': !isOpen,\n 'swagger-editor__splash-screen--hidden': isHidden,\n })}\n onTransitionEnd={handleTransitionEnd}\n >\n <figure className=\"swagger-editor__splash-screen-figure\">\n <img width=\"100%\" src={logo} alt=\"Swagger Editor\" />\n <figcaption>{PACKAGE_VERSION}</figcaption>\n <SplashScreenSpinner />\n </figure>\n </div>\n );\n};\n\nSplashScreen.propTypes = {\n isOpen: PropTypes.bool,\n getComponent: PropTypes.func.isRequired,\n};\n\nSplashScreen.defaultProps = {\n isOpen: true,\n};\n\nexport default SplashScreen;\n","// eslint-disable-next-line import/no-unresolved\nimport loader from '../../assets/loader.gif?raw';\n\nconst SplashScreenSpinner = () => (\n <img\n width=\"25\"\n height=\"25\"\n className=\"swagger-editor__splash-screen-spinner\"\n src={loader}\n alt=\"Loading...\"\n />\n);\n\nexport default SplashScreenSpinner;\n","import SplashScreen from './components/SplashScreen/SplashScreen.jsx';\nimport SplashScreenSpinner from './components/SplashScreenSpinner/SplashScreenSpinner.jsx';\n\nconst SplashScreenPlugin = () => ({\n components: {\n SplashScreen,\n SplashScreenSpinner,\n },\n});\n\nexport default SplashScreenPlugin;\n","import PropTypes from 'prop-types';\n\n/* eslint-disable */\n\nconst TopBar = ({ getComponent }) => {\n const Logo = getComponent('TopBarLogo');\n const FileMenu = getComponent('TopBarFileMenu', true);\n const EditMenu = getComponent('TopBarEditMenu', true);\n const OpenAPI3GenerateServerMenu = getComponent('TopBarOpenAPI3GenerateServerMenu', true);\n const OpenAPI3GenerateClientMenu = getComponent('TopBarOpenAPI3GenerateClientMenu', true);\n const OpenAPI2GenerateServerMenu = getComponent('TopBarOpenAPI2GenerateServerMenu', true);\n const OpenAPI2GenerateClientMenu = getComponent('TopBarOpenAPI2GenerateClientMenu', true);\n const AboutMenu = getComponent('TopBarAboutMenu', true);\n\n return (\n <div className=\"swagger-editor__top-bar\">\n <div className=\"swagger-editor__top-bar-wrapper\">\n <Logo />\n <FileMenu />\n <EditMenu />\n <OpenAPI3GenerateServerMenu />\n <OpenAPI3GenerateClientMenu />\n <OpenAPI2GenerateServerMenu />\n <OpenAPI2GenerateClientMenu />\n <AboutMenu />\n </div>\n </div>\n );\n};\n\nTopBar.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default TopBar;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport logo from '../../assets/logo-small.svg';\n\nconst Logo = ({ link }) => {\n const img = <img className=\"swagger-editor__top-bar-logo-img\" src={logo} alt=\"Swagger Editor\" />;\n\n return (\n <div className=\"swagger-editor__top-bar-logo\">\n {link ? (\n <a href={link} rel=\"noopener noreferrer\">\n {img}\n </a>\n ) : (\n img\n )}\n </div>\n );\n};\n\nLogo.propTypes = {\n link: PropTypes.string,\n};\n\nLogo.defaultProps = {\n link: 'https://swagger.io/tools/swagger-editor/',\n};\n\nexport default Logo;\n","import React, { useState, useImperativeHandle, useRef, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ImportUrlMenuItemHandler = forwardRef(({ getComponent, editorActions }, ref) => {\n const [isConfirmDialogOpen, setIsConfirmDialogOpen] = useState(false);\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const [url, setUrl] = useState('');\n const ConfirmDialog = getComponent('ConfirmDialog', true);\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleConfirmDialogClose = async (result) => {\n if (result) {\n const fsa = await editorActions.importUrl(url);\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsConfirmDialogOpen(false);\n setIsAlertDialogOpen(true);\n } else {\n editorActions.setContent(fsa.payload, 'import-url');\n setUrl('');\n alertDialogMessage.current = '';\n setIsConfirmDialogOpen(false);\n }\n } else {\n alertDialogMessage.current = '';\n setIsConfirmDialogOpen(false);\n }\n };\n\n const handleAlertDialogClose = () => {\n setIsAlertDialogOpen(false);\n };\n\n const handleUrlFieldChange = (event) => {\n setUrl(event.target.value);\n };\n\n useImperativeHandle(ref, () => ({\n openModal() {\n setIsConfirmDialogOpen(true);\n },\n }));\n\n return (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n <ConfirmDialog\n isOpen={isConfirmDialogOpen}\n title=\"Import URL\"\n onClose={handleConfirmDialogClose}\n >\n <div className=\"input-group\">\n {/* eslint-disable-next-line jsx-a11y/label-has-associated-control */}\n <label htmlFor=\"input-import-url\" aria-labelledby=\"input-import-url\">\n Enter the URL to import from\n </label>\n <input\n id=\"input-import-url\"\n type=\"text\"\n className=\"form-control\"\n placeholder=\"type url here\"\n value={url}\n onChange={handleUrlFieldChange}\n />\n </div>\n </ConfirmDialog>\n </>\n );\n});\n\nImportUrlMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorActions: PropTypes.shape({\n importUrl: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ImportUrlMenuItemHandler;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_file_dialog_c1aa51c0__[\"default\"] });","import fileDialog from 'file-dialog';\nimport React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ImportFileMenuItemHandler = forwardRef(({ getComponent, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async openFileDialog() {\n try {\n const [file] = await fileDialog({ multiple: false });\n const content = await file.text();\n\n editorActions.setContent(content, 'import-file');\n } catch (error) {\n alertDialogMessage.current = error.message || 'Unknown error while reading uploaded file.';\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n});\n\nImportFileMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorActions: PropTypes.shape({\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ImportFileMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst SaveAsMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async downloadContent() {\n const content = editorSelectors.selectContent();\n const fileNameWithExtension = editorSelectors.selectInferFileNameWithExtensionFromContent();\n\n const fsa = await editorActions.downloadContent({\n content,\n fileNameWithExtension,\n });\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nSaveAsMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameWithExtensionFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default SaveAsMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ConvertAndSaveAsJSONMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convertAndSaveAsJSON() {\n const content = editorSelectors.selectContent();\n const fileName = editorSelectors.selectInferFileNameFromContent();\n const fileNameWithExtension = `${fileName}.json`;\n\n const convertFSA = await editorActions.convertContentToJSON(content);\n if (convertFSA.error) {\n alertDialogMessage.current = convertFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n const downloadFSA = await editorActions.downloadContent({\n content: convertFSA.payload,\n fileNameWithExtension,\n });\n if (downloadFSA.error) {\n alertDialogMessage.current = downloadFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nConvertAndSaveAsJSONMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertContentToJSON: PropTypes.func.isRequired,\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ConvertAndSaveAsJSONMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ConvertAndSaveAsYAMLMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convertAndSaveAsYAML() {\n const content = editorSelectors.selectContent();\n const fileName = editorSelectors.selectInferFileNameFromContent();\n const fileNameWithExtension = `${fileName}.yaml`;\n\n const convertFSA = await editorActions.convertContentToYAML(content);\n if (convertFSA.error) {\n alertDialogMessage.current = convertFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n const downloadFSA = await editorActions.downloadContent({\n content: convertFSA.payload,\n fileNameWithExtension,\n });\n if (downloadFSA.error) {\n alertDialogMessage.current = downloadFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nConvertAndSaveAsYAMLMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertContentToYAML: PropTypes.func.isRequired,\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ConvertAndSaveAsYAMLMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst DownloadResolvedJSONMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async downloadResolvedJSON() {\n const content = editorSelectors.selectContent();\n let dereferencedContent = content;\n const isContentJSON = editorSelectors.selectIsContentFormatJSON();\n const fileName = editorSelectors.selectInferFileNameFromContent();\n const fileExtension = '.json';\n const fileNameWithExtension = `${fileName}${fileExtension}`;\n\n const dereferenceFSA = await editorActions.dereferenceContent({ content });\n if (dereferenceFSA.error) {\n alertDialogMessage.current = dereferenceFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n dereferencedContent = dereferenceFSA.payload;\n\n if (!isContentJSON) {\n const convertFSA = await editorActions.convertContentToJSON(dereferenceFSA.payload);\n if (convertFSA.error) {\n alertDialogMessage.current = convertFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n dereferencedContent = convertFSA.payload;\n }\n\n const downloadFSA = await editorActions.downloadContent({\n content: dereferencedContent,\n fileNameWithExtension,\n });\n if (downloadFSA.error) {\n alertDialogMessage.current = downloadFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nDownloadResolvedJSONMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameFromContent: PropTypes.func.isRequired,\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n dereferenceContent: PropTypes.func.isRequired,\n convertContentToJSON: PropTypes.func.isRequired,\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default DownloadResolvedJSONMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst DownloadResolvedYAMLMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async downloadResolvedYAML() {\n const content = editorSelectors.selectContent();\n let dereferencedContent = content;\n const isContentYAML = editorSelectors.selectIsContentFormatYAML();\n const fileName = editorSelectors.selectInferFileNameFromContent();\n const fileExtension = '.yaml';\n const fileNameWithExtension = `${fileName}${fileExtension}`;\n\n const dereferenceFSA = await editorActions.dereferenceContent({ content });\n if (dereferenceFSA.error) {\n alertDialogMessage.current = dereferenceFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n dereferencedContent = dereferenceFSA.payload;\n\n if (!isContentYAML) {\n const convertFSA = await editorActions.convertContentToYAML(dereferencedContent);\n if (convertFSA.error) {\n alertDialogMessage.current = convertFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n dereferencedContent = convertFSA.payload;\n }\n\n const downloadFSA = await editorActions.downloadContent({\n content: dereferencedContent,\n fileNameWithExtension,\n });\n if (downloadFSA.error) {\n alertDialogMessage.current = downloadFSA.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nDownloadResolvedYAMLMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameFromContent: PropTypes.func.isRequired,\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n dereferenceContent: PropTypes.func.isRequired,\n convertContentToYAML: PropTypes.func.isRequired,\n downloadContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default DownloadResolvedYAMLMenuItemHandler;\n","import { useImperativeHandle, useRef, forwardRef } from 'react';\n\nimport ImportUrlMenuItemHandler from './items/ImportUrlMenuItemHandler.jsx';\nimport ImportFileMenuItemHandler from './items/ImportFileMenuItemHandler.jsx';\nimport SaveAsMenuItemHandler from './items/SaveAsMenuItemHandler.jsx';\nimport ConvertAndSaveAsJSONMenuItemHandler from './items/ConvertAndSaveAsJSONMenuItemHandler.jsx';\nimport ConvertAndSaveAsYAMLMenuItemHandler from './items/ConvertAndSaveAsYAMLMenuItemHandler.jsx';\nimport DownloadResolvedJSONMenuItemHandler from './items/DownloadResolvedJSONMenuItemHandler.jsx';\nimport DownloadResolvedYAMLMenuItemHandler from './items/DownloadResolvedYAMLMenuItemHandler.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst FileMenuHandler = (props, ref) => {\n const importUrlMenuItemHandler = useRef(null);\n const importFileMenuItemHandler = useRef(null);\n const saveAsMenuItemHandler = useRef(null);\n const convertAndSaveAsJSONMenuItemHandler = useRef(null);\n const convertAndSaveAsYAMLMenuItemHandler = useRef(null);\n const downloadResolvedJSONMenuItemHandler = useRef(null);\n const downloadResolvedYAMLMenuItemHandler = useRef(null);\n\n useImperativeHandle(ref, () => ({\n importURL(event) {\n importUrlMenuItemHandler.current.openModal(event);\n },\n async importFile(event) {\n await importFileMenuItemHandler.current.openFileDialog(event);\n },\n async saveAs(event) {\n await saveAsMenuItemHandler.current.downloadContent(event);\n },\n async convertAndSaveAsJSON(event) {\n await convertAndSaveAsJSONMenuItemHandler.current.convertAndSaveAsJSON(event);\n },\n async convertAndSaveAsYAML(event) {\n await convertAndSaveAsYAMLMenuItemHandler.current.convertAndSaveAsYAML(event);\n },\n async downloadResolvedJSON(event) {\n await downloadResolvedJSONMenuItemHandler.current.downloadResolvedJSON(event);\n },\n async downloadResolvedYAML(event) {\n await downloadResolvedYAMLMenuItemHandler.current.downloadResolvedYAML(event);\n },\n }));\n\n return (\n <>\n <ImportUrlMenuItemHandler ref={importUrlMenuItemHandler} {...props} />\n <ImportFileMenuItemHandler ref={importFileMenuItemHandler} {...props} />\n <SaveAsMenuItemHandler ref={saveAsMenuItemHandler} {...props} />\n <ConvertAndSaveAsJSONMenuItemHandler ref={convertAndSaveAsJSONMenuItemHandler} {...props} />\n <ConvertAndSaveAsYAMLMenuItemHandler ref={convertAndSaveAsYAMLMenuItemHandler} {...props} />\n <DownloadResolvedJSONMenuItemHandler ref={downloadResolvedJSONMenuItemHandler} {...props} />\n <DownloadResolvedYAMLMenuItemHandler ref={downloadResolvedYAMLMenuItemHandler} {...props} />\n </>\n );\n};\n\nexport default forwardRef(FileMenuHandler);\n","import { useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport FileMenuHandler from './FileMenuHandler.jsx';\n\nconst FileMenu = (props) => {\n const { getComponent } = props;\n const fileMenuHandler = useRef(null);\n const DropdownMenu = getComponent('DropdownMenu');\n const DropdownMenuItemDivider = getComponent('DropdownMenuItemDivider');\n const ImportUrlMenuItem = getComponent('TopBarFileMenuImportUrlMenuItem', true);\n const ImportFileMenuItem = getComponent('TopBarFileMenuImportFileMenuItem', true);\n const LoadExampleNestedMenu = getComponent('TopBarFileMenuLoadExampleNestedMenu', true);\n const SaveAsMenuItem = getComponent('TopBarFileMenuSaveAsMenuItem', true);\n const ConvertAndSaveAsJSONMenuItem = getComponent(\n 'TopBarFileMenuConvertAndSaveAsJSONMenuItem',\n true\n );\n const ConvertAndSaveAsYAMLMenuItem = getComponent(\n 'TopBarFileMenuConvertAndSaveAsYAMLMenuItem',\n true\n );\n const DownloadResolvedJSONMenuItem = getComponent(\n 'TopBarFileMenuDownloadResolvedJSONMenuItem',\n true\n );\n const DownloadResolvedYAMLMenuItem = getComponent(\n 'TopBarFileMenuDownloadResolvedYAMLMenuItem',\n true\n );\n\n const handleUrlImportClick = useCallback((event) => {\n fileMenuHandler.current.importURL(event);\n }, []);\n const handleFileImportClick = useCallback(async (event) => {\n await fileMenuHandler.current.importFile(event);\n }, []);\n const handleSaveAsClick = useCallback(async (event) => {\n await fileMenuHandler.current.saveAs(event);\n }, []);\n const handleConvertAndSaveAsJSONClick = useCallback(async (event) => {\n await fileMenuHandler.current.convertAndSaveAsJSON(event);\n }, []);\n const handleConvertAndSaveAsYAMLClick = useCallback(async (event) => {\n await fileMenuHandler.current.convertAndSaveAsYAML(event);\n }, []);\n const handleDownloadResolvedJSONClick = useCallback(async (event) => {\n await fileMenuHandler.current.downloadResolvedJSON(event);\n }, []);\n const handleDownloadResolvedYAMLClick = useCallback(async (event) => {\n await fileMenuHandler.current.downloadResolvedYAML(event);\n }, []);\n\n return (\n <>\n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n <FileMenuHandler {...props} ref={fileMenuHandler} />\n <DropdownMenu label=\"File\">\n <ImportUrlMenuItem onClick={handleUrlImportClick} />\n <ImportFileMenuItem onClick={handleFileImportClick} />\n <LoadExampleNestedMenu />\n <DropdownMenuItemDivider />\n <SaveAsMenuItem onClick={handleSaveAsClick} />\n <ConvertAndSaveAsJSONMenuItem onClick={handleConvertAndSaveAsJSONClick} />\n <ConvertAndSaveAsYAMLMenuItem onClick={handleConvertAndSaveAsYAMLClick} />\n <DropdownMenuItemDivider />\n <DownloadResolvedJSONMenuItem onClick={handleDownloadResolvedJSONClick} />\n <DownloadResolvedYAMLMenuItem onClick={handleDownloadResolvedYAMLClick} />\n </DropdownMenu>\n </>\n );\n};\n\nFileMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default FileMenu;\n","import PropTypes from 'prop-types';\n\nconst ImportUrlMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return <DropdownMenuItem onClick={onClick}>{children || 'Import URL'}</DropdownMenuItem>;\n};\n\nImportUrlMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nImportUrlMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ImportUrlMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ImportFileMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return <DropdownMenuItem onClick={onClick}>{children || 'Import File'}</DropdownMenuItem>;\n};\n\nImportFileMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nImportFileMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ImportFileMenuItem;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_prop_types_adfe8e31__[\"default\"] });","import { useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst LoadExampleNestedMenuHandler = forwardRef((props, ref) => {\n const { editorActions, editorContentFixturesSelectors } = props;\n\n useImperativeHandle(ref, () => ({\n loadOpenAP31PetstoreFixture() {\n const content = editorContentFixturesSelectors.selectOpenAPI310PetstoreYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadOpenAP30PetstoreFixture() {\n const content = editorContentFixturesSelectors.selectOpenAPI303PetstoreYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadOpenAP20PetstoreFixture() {\n const content = editorContentFixturesSelectors.selectOpenAPI20PetstoreYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadAsyncAPI26PetstoreFixture() {\n const content = editorContentFixturesSelectors.selectAsyncAPI260PetstoreYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadAsyncAPI26StreetlightsFixture() {\n const content = editorContentFixturesSelectors.selectAsyncAPI260StreetlightsYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n loadAPIDesignSystemsFixture() {\n const content = editorContentFixturesSelectors.selectAPIDesignSystemsYAML();\n editorActions.setContent(content, 'fixture-load');\n },\n }));\n\n return null;\n});\n\nLoadExampleNestedMenuHandler.propTypes = {\n editorActions: PropTypes.shape({\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n editorContentFixturesSelectors: PropTypes.shape({\n selectOpenAPI310PetstoreYAML: PropTypes.func.isRequired,\n selectOpenAPI303PetstoreYAML: PropTypes.func.isRequired,\n selectOpenAPI20PetstoreYAML: PropTypes.func.isRequired,\n selectAsyncAPI260PetstoreYAML: PropTypes.func.isRequired,\n selectAsyncAPI260StreetlightsYAML: PropTypes.func.isRequired,\n selectAPIDesignSystemsYAML: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default LoadExampleNestedMenuHandler;\n","import { useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport LoadExampleNestedMenuHandler from './LoadExampleNestedMenuHandler.jsx';\n\nconst LoadExampleNestedMenu = (props) => {\n const { getComponent } = props;\n const loadExampleNestedMenuHandler = useRef(null);\n const DropDownMenuNested = getComponent('DropdownMenuNested');\n const DropdownMenuItemDivider = getComponent('DropdownMenuItemDivider');\n const OpenAPI31PetstoreMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuOpenAPI31PetstoreMenuItem',\n true\n );\n const OpenAPI30PetstoreMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuOpenAPI30PetstoreMenuItem',\n true\n );\n const OpenAPI20PetstoreMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuOpenAPI20PetstoreMenuItem',\n true\n );\n const AsyncAPI26PetstoreMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuAsyncAPI26PetstoreMenuItem',\n true\n );\n const AsyncAPI26StreetlightsMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuAsyncAPI26StreetlightsMenuItem',\n true\n );\n const APIDesignSystemsMenuItem = getComponent(\n 'TopBarFileMenuLoadExampleNestedMenuAPIDesignSystemsMenuItem',\n true\n );\n\n const handleOpenAPI31PetstoreClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadOpenAP31PetstoreFixture(event);\n }, []);\n const handleOpenAPI30PetstoreClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadOpenAP30PetstoreFixture(event);\n }, []);\n const handleOpenAPI20PetstoreClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadOpenAP20PetstoreFixture(event);\n }, []);\n const handleAsyncAPI26PetstoreClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadAsyncAPI26PetstoreFixture(event);\n }, []);\n const handleAsyncAPI26StreetlightsClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadAsyncAPI26StreetlightsFixture(event);\n }, []);\n const handleAPIDesignSystemsClick = useCallback(async (event) => {\n await loadExampleNestedMenuHandler.current.loadAPIDesignSystemsFixture(event);\n }, []);\n\n return (\n <>\n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n <LoadExampleNestedMenuHandler {...props} ref={loadExampleNestedMenuHandler} />\n <DropDownMenuNested label=\"Load Example\">\n <OpenAPI31PetstoreMenuItem onClick={handleOpenAPI31PetstoreClick} />\n <OpenAPI30PetstoreMenuItem onClick={handleOpenAPI30PetstoreClick} />\n <OpenAPI20PetstoreMenuItem onClick={handleOpenAPI20PetstoreClick} />\n <DropdownMenuItemDivider />\n <AsyncAPI26PetstoreMenuItem onClick={handleAsyncAPI26PetstoreClick} />\n <AsyncAPI26StreetlightsMenuItem onClick={handleAsyncAPI26StreetlightsClick} />\n <DropdownMenuItemDivider />\n <APIDesignSystemsMenuItem onClick={handleAPIDesignSystemsClick} />\n </DropDownMenuNested>\n </>\n );\n};\n\nLoadExampleNestedMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default LoadExampleNestedMenu;\n","import PropTypes from 'prop-types';\n\nconst OpenAPI31PetstoreMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'OpenAPI 3.1 Petstore'}</DropdownMenuItem>\n );\n};\n\nOpenAPI31PetstoreMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nOpenAPI31PetstoreMenuItem.defaultProps = {\n children: null,\n};\n\nexport default OpenAPI31PetstoreMenuItem;\n","import PropTypes from 'prop-types';\n\nconst OpenAPI30PetstoreMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'OpenAPI 3.0 Petstore'}</DropdownMenuItem>\n );\n};\n\nOpenAPI30PetstoreMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nOpenAPI30PetstoreMenuItem.defaultProps = {\n children: null,\n};\n\nexport default OpenAPI30PetstoreMenuItem;\n","import PropTypes from 'prop-types';\n\nconst OpenAPI20PetstoreMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'OpenAPI 2.0 Petstore'}</DropdownMenuItem>\n );\n};\n\nOpenAPI20PetstoreMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nOpenAPI20PetstoreMenuItem.defaultProps = {\n children: null,\n};\n\nexport default OpenAPI20PetstoreMenuItem;\n","import PropTypes from 'prop-types';\n\nconst AsyncAPI26PetstoreMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'AsyncAPI 2.6 Petstore'}</DropdownMenuItem>\n );\n};\n\nAsyncAPI26PetstoreMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nAsyncAPI26PetstoreMenuItem.defaultProps = {\n children: null,\n};\n\nexport default AsyncAPI26PetstoreMenuItem;\n","import PropTypes from 'prop-types';\n\nconst AsyncAPI26StreetlightsMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return (\n <DropdownMenuItem onClick={onClick}>{children || 'AsyncAPI 2.6 Streetlights'}</DropdownMenuItem>\n );\n};\n\nAsyncAPI26StreetlightsMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nAsyncAPI26StreetlightsMenuItem.defaultProps = {\n children: null,\n};\n\nexport default AsyncAPI26StreetlightsMenuItem;\n","import PropTypes from 'prop-types';\n\nconst APIDesignSystemsMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return <DropdownMenuItem onClick={onClick}>{children || 'API Design Systems'}</DropdownMenuItem>;\n};\n\nAPIDesignSystemsMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nAPIDesignSystemsMenuItem.defaultProps = {\n children: null,\n};\n\nexport default APIDesignSystemsMenuItem;\n","import PropTypes from 'prop-types';\n\nconst SaveAsMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n // eslint-disable-next-line no-nested-ternary\n const itemName = editorSelectors.selectIsContentFormatJSON()\n ? 'Save (as JSON)'\n : editorSelectors.selectIsContentFormatYAML()\n ? 'Save (as YAML)'\n : 'Save';\n\n return <DropdownMenuItem onClick={onClick}>{children || itemName}</DropdownMenuItem>;\n};\n\nSaveAsMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nSaveAsMenuItem.defaultProps = {\n children: null,\n};\n\nexport default SaveAsMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertAndSaveAsJSONMenuItem = ({ getComponent, editorSelectors, children, onClick }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentFormatYAML = editorSelectors.selectIsContentFormatYAML();\n\n return isContentFormatYAML ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Convert and Save as JSON'}</DropdownMenuItem>\n ) : null;\n};\n\nConvertAndSaveAsJSONMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertAndSaveAsJSONMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertAndSaveAsJSONMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertAndSaveAsJSONMenuItem = ({ getComponent, editorSelectors, children, onClick }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentFormatJSON = editorSelectors.selectIsContentFormatJSON();\n\n return isContentFormatJSON ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Convert and Save as YAML'}</DropdownMenuItem>\n ) : null;\n};\n\nConvertAndSaveAsJSONMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertAndSaveAsJSONMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertAndSaveAsJSONMenuItem;\n","import PropTypes from 'prop-types';\n\nconst DownloadResolvedJSONMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentTypeOpenAPI = editorSelectors.selectIsContentTypeOpenAPI();\n const isContentTypeAsyncAPI = editorSelectors.selectIsContentTypeAsyncAPI();\n const isContentFormatJSON = editorSelectors.selectIsContentFormatJSON();\n const isContentFormatYAML = editorSelectors.selectIsContentFormatYAML();\n\n return (isContentTypeOpenAPI || isContentTypeAsyncAPI) &&\n (isContentFormatJSON || isContentFormatYAML) ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Download Resolved JSON'}</DropdownMenuItem>\n ) : null;\n};\n\nDownloadResolvedJSONMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeOpenAPI: PropTypes.func.isRequired,\n selectIsContentTypeAsyncAPI: PropTypes.func.isRequired,\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nDownloadResolvedJSONMenuItem.defaultProps = {\n children: null,\n};\n\nexport default DownloadResolvedJSONMenuItem;\n","import PropTypes from 'prop-types';\n\nconst DownloadResolvedYAMLMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentTypeOpenAPI = editorSelectors.selectIsContentTypeOpenAPI();\n const isContentTypeAsyncAPI = editorSelectors.selectIsContentTypeAsyncAPI();\n const isContentFormatJSON = editorSelectors.selectIsContentFormatJSON();\n const isContentFormatYAML = editorSelectors.selectIsContentFormatYAML();\n\n return (isContentTypeOpenAPI || isContentTypeAsyncAPI) &&\n (isContentFormatJSON || isContentFormatYAML) ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Download Resolved YAML'}</DropdownMenuItem>\n ) : null;\n};\n\nDownloadResolvedYAMLMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeOpenAPI: PropTypes.func.isRequired,\n selectIsContentTypeAsyncAPI: PropTypes.func.isRequired,\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nDownloadResolvedYAMLMenuItem.defaultProps = {\n children: null,\n};\n\nexport default DownloadResolvedYAMLMenuItem;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst CovertToJSONMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convertToJSON() {\n const content = editorSelectors.selectContent();\n\n const fsa = await editorActions.convertContentToJSON(content);\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n editorActions.setContent(fsa.payload, 'conversion');\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nCovertToJSONMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameWithExtensionFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertContentToJSON: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default CovertToJSONMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst CovertToYAMLMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convertToYAML() {\n const content = editorSelectors.selectContent();\n\n const fsa = await editorActions.convertContentToYAML(content);\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n editorActions.setContent(fsa.payload, 'conversion');\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nCovertToYAMLMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectInferFileNameWithExtensionFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertContentToYAML: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default CovertToYAMLMenuItemHandler;\n","import React, { useState, useRef, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nconst CovertToOpenAPI30xMenuItemHandler = forwardRef(\n ({ getComponent, editorSelectors, editorActions }, ref) => {\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = () => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n };\n\n useImperativeHandle(ref, () => ({\n async convert() {\n const content = editorSelectors.selectContent();\n const contentType = editorSelectors.selectIsContentFormatJSON()\n ? 'application/json'\n : 'application/yaml';\n\n const fsa = await editorActions.convertOpenAPI20ToOpenAPI30x({\n openAPI2Content: content,\n contentType,\n });\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n return;\n }\n\n editorActions.setContent(fsa.payload, 'conversion');\n },\n }));\n\n return (\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n );\n }\n);\n\nCovertToOpenAPI30xMenuItemHandler.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectContentType: PropTypes.func.isRequired,\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n selectInferFileNameWithExtensionFromContent: PropTypes.func.isRequired,\n }).isRequired,\n editorActions: PropTypes.shape({\n convertOpenAPI20ToOpenAPI30x: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default CovertToOpenAPI30xMenuItemHandler;\n","import { useImperativeHandle, useRef, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport ConvertToJSONMenuItemHandler from './items/ConvertToJSONMenuItemHandler.jsx';\nimport ConvertToYAMLMenuItemHandler from './items/ConvertToYAMLMenuItemHandler.jsx';\nimport CovertToOpenAPI30xMenuItemHandler from './items/ConvertToOpenAPI30xMenuItemHandler.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst EditMenuHandler = forwardRef((props, ref) => {\n const { editorActions } = props;\n const convertToJSONMenuItemHandler = useRef(null);\n const convertToYAMLMenuItemHandler = useRef(null);\n const convertToOpenAPI30xMenuItemHandler = useRef(null);\n\n useImperativeHandle(ref, () => ({\n clear() {\n editorActions.clearContent();\n },\n async convertToJSON() {\n await convertToJSONMenuItemHandler.current.convertToJSON();\n },\n async convertToYAML() {\n await convertToYAMLMenuItemHandler.current.convertToYAML();\n },\n async convertOpenAPI20ToOpenAPI30xClick() {\n await convertToOpenAPI30xMenuItemHandler.current.convert();\n },\n }));\n\n return (\n <>\n <ConvertToJSONMenuItemHandler ref={convertToJSONMenuItemHandler} {...props} />\n <ConvertToYAMLMenuItemHandler ref={convertToYAMLMenuItemHandler} {...props} />\n <CovertToOpenAPI30xMenuItemHandler ref={convertToOpenAPI30xMenuItemHandler} {...props} />\n </>\n );\n});\n\nEditMenuHandler.propTypes = {\n editorActions: PropTypes.shape({\n clearContent: PropTypes.func.isRequired,\n convertContentToYAML: PropTypes.func.isRequired,\n setContent: PropTypes.func.isRequired,\n }).isRequired,\n editorContentFixturesSelectors: PropTypes.shape({}).isRequired,\n};\n\nexport default EditMenuHandler;\n","import { useCallback, useRef } from 'react';\nimport PropTypes from 'prop-types';\n\nimport EditMenuHandler from './EditMenuHandler.jsx';\n\nconst EditMenu = (props) => {\n const { getComponent } = props;\n const DropdownMenu = getComponent('DropdownMenu');\n const ClearMenuItem = getComponent('TopBarEditMenuClearMenuItem', true);\n const ConvertToJSONMenuItem = getComponent('TopBarEditMenuConvertToJSONMenuItem', true);\n const ConvertToYAMLMenuItem = getComponent('TopBarEditMenuConvertToYAMLMenuItem', true);\n const ConvertToOpenAPI30xMenuItem = getComponent(\n 'TopBarEditMenuConvertToOpenAPI30xMenuItem',\n true\n );\n const editMenuHandler = useRef(null);\n\n const handleClearClick = useCallback(() => {\n editMenuHandler.current.clear();\n }, []);\n const handleConvertToJSONClick = useCallback(async () => {\n await editMenuHandler.current.convertToJSON();\n }, []);\n const handleConvertToYAMLClick = useCallback(async () => {\n await editMenuHandler.current.convertToYAML();\n }, []);\n const handleConvertOpenAPI20ToOpenAPI30xClick = useCallback(async () => {\n await editMenuHandler.current.convertOpenAPI20ToOpenAPI30xClick();\n }, []);\n\n return (\n <>\n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n <EditMenuHandler {...props} ref={editMenuHandler} />\n <DropdownMenu label=\"Edit\">\n <ClearMenuItem onClick={handleClearClick} />\n <ConvertToJSONMenuItem onClick={handleConvertToJSONClick} />\n <ConvertToYAMLMenuItem onClick={handleConvertToYAMLClick} />\n <ConvertToOpenAPI30xMenuItem onClick={handleConvertOpenAPI20ToOpenAPI30xClick} />\n </DropdownMenu>\n </>\n );\n};\n\nEditMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default EditMenu;\n","import PropTypes from 'prop-types';\n\nconst ClearMenuItem = ({ getComponent, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n return <DropdownMenuItem onClick={onClick}>{children || 'Clear'}</DropdownMenuItem>;\n};\n\nClearMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nClearMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ClearMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertToJSONMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const DropdownMenuItemDivider = getComponent('DropdownMenuItemDivider');\n const isContentFormatYAML = editorSelectors.selectIsContentFormatYAML();\n\n return isContentFormatYAML ? (\n <>\n <DropdownMenuItemDivider />\n <DropdownMenuItem onClick={onClick}>{children || 'Convert to JSON'}</DropdownMenuItem>\n </>\n ) : null;\n};\n\nConvertToJSONMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatYAML: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertToJSONMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertToJSONMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertToYAMLMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const DropdownMenuItemDivider = getComponent('DropdownMenuItemDivider');\n const isContentFormatJSON = editorSelectors.selectIsContentFormatJSON();\n\n return isContentFormatJSON ? (\n <>\n <DropdownMenuItemDivider />\n <DropdownMenuItem onClick={onClick}>{children || 'Convert to YAML'}</DropdownMenuItem>\n </>\n ) : null;\n};\n\nConvertToYAMLMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentFormatJSON: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertToYAMLMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertToYAMLMenuItem;\n","import PropTypes from 'prop-types';\n\nconst ConvertToOpenAPI30xMenuItem = ({ getComponent, editorSelectors, onClick, children }) => {\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n const isContentTypeOpenAPI20 = editorSelectors.selectIsContentTypeOpenAPI20();\n\n return isContentTypeOpenAPI20 ? (\n <DropdownMenuItem onClick={onClick}>{children || 'Convert to OpenAPI 3.0.x'}</DropdownMenuItem>\n ) : null;\n};\n\nConvertToOpenAPI30xMenuItem.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.node,\n onClick: PropTypes.func.isRequired,\n};\n\nConvertToOpenAPI30xMenuItem.defaultProps = {\n children: null,\n};\n\nexport default ConvertToOpenAPI30xMenuItem;\n","import PropTypes from 'prop-types';\n\nconst GenerateMenu = ({ getComponent, items, label, onMenuItemClick }) => {\n const DropdownMenu = getComponent('DropdownMenu');\n const DropdownMenuItem = getComponent('DropdownMenuItem');\n\n const handleMenuClick = (item) => (event) => {\n onMenuItemClick(event, item);\n };\n\n return (\n <DropdownMenu label={label} isLong>\n {items.map((item) => (\n <DropdownMenuItem key={item} onClick={handleMenuClick(item)}>\n {item}\n </DropdownMenuItem>\n ))}\n </DropdownMenu>\n );\n};\n\nGenerateMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n items: PropTypes.arrayOf(PropTypes.string).isRequired,\n label: PropTypes.string.isRequired,\n onMenuItemClick: PropTypes.func.isRequired,\n};\nexport default GenerateMenu;\n","import React, { useRef, useState, useCallback } from 'react';\nimport PropTypes from 'prop-types';\n\nimport GenerateMenu from './GenerateMenu.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst OpenAPI3GenerateServerMenu = (props) => {\n const { getComponent, editorSelectors, editorTopBarSelectors, editorTopBarActions } = props;\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const isContentTypeOpenAPI30x = editorSelectors.selectIsContentTypeOpenAPI30x();\n const isContentTYpeOpenAPI31x = editorSelectors.selectIsContentTypeOpenAPI31x();\n const serverList = editorTopBarSelectors.selectOpenAPI3GeneratorServerList();\n const canShow = (isContentTypeOpenAPI30x || isContentTYpeOpenAPI31x) && serverList !== null;\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = useCallback(() => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n }, []);\n\n const handleMenuItemClick = useCallback(\n async (event, framework) => {\n const content = editorSelectors.selectContent();\n const fsa = await editorTopBarActions.generateServerCodeFromOpenAPI3({ content, framework });\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n [editorSelectors, editorTopBarActions]\n );\n\n return canShow ? (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>{' '}\n <GenerateMenu\n label=\"Generate Server\"\n items={serverList}\n onMenuItemClick={handleMenuItemClick}\n {...props}\n />\n </>\n ) : null;\n};\n\nOpenAPI3GenerateServerMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI30x: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI31x: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarSelectors: PropTypes.shape({\n selectOpenAPI3GeneratorServerList: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarActions: PropTypes.shape({\n generateServerCodeFromOpenAPI3: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default OpenAPI3GenerateServerMenu;\n","import React, { useCallback, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport GenerateMenu from './GenerateMenu.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst OpenAPI3GenerateClientMenu = (props) => {\n const { getComponent, editorSelectors, editorTopBarSelectors, editorTopBarActions } = props;\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const isContentTypeOpenAPI30x = editorSelectors.selectIsContentTypeOpenAPI30x();\n const isContentTYpeOpenAPI31x = editorSelectors.selectIsContentTypeOpenAPI31x();\n const clientList = editorTopBarSelectors.selectOpenAPI3GeneratorClientList();\n const canShow = (isContentTypeOpenAPI30x || isContentTYpeOpenAPI31x) && clientList !== null;\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = useCallback(() => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n }, []);\n\n const handleMenuItemClick = useCallback(\n async (event, language) => {\n const content = editorSelectors.selectContent();\n const fsa = await editorTopBarActions.generateClientCodeFromOpenAPI3({ content, language });\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n [editorSelectors, editorTopBarActions]\n );\n\n return canShow ? (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n <GenerateMenu\n label=\"Generate Client\"\n items={clientList}\n onMenuItemClick={handleMenuItemClick}\n {...props}\n />\n </>\n ) : null;\n};\n\nOpenAPI3GenerateClientMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI30x: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI31x: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarSelectors: PropTypes.shape({\n selectOpenAPI3GeneratorClientList: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarActions: PropTypes.shape({\n generateClientCodeFromOpenAPI3: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default OpenAPI3GenerateClientMenu;\n","import React, { useCallback, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport GenerateMenu from './GenerateMenu.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst OpenAPI2GenerateServerMenu = (props) => {\n const { editorTopBarActions, editorSelectors, editorTopBarSelectors, getComponent } = props;\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const isContentTYpeOpenAPI20 = editorSelectors.selectIsContentTypeOpenAPI20();\n const serverList = editorTopBarSelectors.selectOpenAPI2GeneratorServerList();\n const canShow = isContentTYpeOpenAPI20 && serverList !== null;\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = useCallback(() => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n }, []);\n\n const handleMenuItemClick = useCallback(\n async (event, framework) => {\n const content = editorSelectors.selectContent();\n const fsa = await editorTopBarActions.generateServerCodeFromOpenAPI20({ content, framework });\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n [editorSelectors, editorTopBarActions]\n );\n\n return canShow ? (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n <GenerateMenu\n label=\"Generate Server\"\n items={serverList}\n onMenuItemClick={handleMenuItemClick}\n {...props}\n />\n </>\n ) : null;\n};\n\nOpenAPI2GenerateServerMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarSelectors: PropTypes.shape({\n selectOpenAPI2GeneratorServerList: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarActions: PropTypes.shape({\n generateServerCodeFromOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default OpenAPI2GenerateServerMenu;\n","import React, { useCallback, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\n\nimport GenerateMenu from './GenerateMenu.jsx';\n\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst OpenAPI2GenerateClientMenu = (props) => {\n const { getComponent, editorSelectors, editorTopBarSelectors, editorTopBarActions } = props;\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const isContentTYpeOpenAPI20 = editorSelectors.selectIsContentTypeOpenAPI20();\n const clientList = editorTopBarSelectors.selectOpenAPI2GeneratorClientList();\n const canShow = isContentTYpeOpenAPI20 && clientList !== null;\n const alertDialogMessage = useRef('');\n const AlertDialog = getComponent('AlertDialog', true);\n\n const handleAlertDialogClose = useCallback(() => {\n alertDialogMessage.current = '';\n setIsAlertDialogOpen(false);\n }, []);\n\n const handleMenuItemClick = useCallback(\n async (event, language) => {\n const content = editorSelectors.selectContent();\n const fsa = await editorTopBarActions.generateClientCodeFromOpenAPI20({ content, language });\n\n if (fsa.error) {\n alertDialogMessage.current = fsa.meta.errorMessage;\n setIsAlertDialogOpen(true);\n }\n },\n [editorSelectors, editorTopBarActions]\n );\n\n return canShow ? (\n <>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {alertDialogMessage.current}\n </AlertDialog>\n <GenerateMenu\n label=\"Generate Client\"\n items={clientList}\n onMenuItemClick={handleMenuItemClick}\n {...props}\n />\n </>\n ) : null;\n};\n\nOpenAPI2GenerateClientMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarSelectors: PropTypes.shape({\n selectOpenAPI2GeneratorClientList: PropTypes.func.isRequired,\n }).isRequired,\n editorTopBarActions: PropTypes.shape({\n generateClientCodeFromOpenAPI20: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default OpenAPI2GenerateClientMenu;\n","import PropTypes from 'prop-types';\n\nconst AboutMenu = ({ getComponent }) => {\n const DropdownMenu = getComponent('DropdownMenu');\n const Link = getComponent('Link');\n\n return (\n <DropdownMenu label=\"About\">\n <div>\n <li className=\"dropdown-item\">\n <Link href=\"https://swagger.io/tools/swagger-editor/\" target=\"_blank\">\n About Swagger Editor\n </Link>\n </li>\n </div>\n <div>\n <li className=\"dropdown-item\">\n <Link\n href=\"https://swagger.io/docs/open-source-tools/swagger-editor-next/\"\n target=\"_blank\"\n >\n View Docs\n </Link>\n </li>\n </div>\n <div>\n <li className=\"dropdown-item\">\n <Link href=\"https://github.com/swagger-api/swagger-editor/tree/next\" target=\"_blank\">\n View on GitHub\n </Link>\n </li>\n </div>\n </DropdownMenu>\n );\n};\n\nAboutMenu.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default AboutMenu;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_short_unique_id_298b54bb__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_axios__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"sanitizeUrl\"]: () => __WEBPACK_EXTERNAL_MODULE__braintree_sanitize_url_2340607f__.sanitizeUrl });","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport { sanitizeUrl } from '@braintree/sanitize-url';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_IMPORT_URL_STARTED = 'editor_import_url_started';\nexport const EDITOR_IMPORT_URL_SUCCESS = 'editor_import_url_success';\nexport const EDITOR_IMPORT_URL_FAILURE = 'editor_import_url_failure';\n\n/**\n * Action creators.\n */\n\nexport const importUrlStarted = ({ url, requestId }) => ({\n type: EDITOR_IMPORT_URL_STARTED,\n payload: url,\n meta: {\n requestId,\n },\n});\n\nexport const importUrlSuccess = ({ definition, requestId }) => ({\n type: EDITOR_IMPORT_URL_SUCCESS,\n payload: definition,\n meta: { requestId },\n});\n\nexport const importUrlFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_IMPORT_URL_FAILURE,\n payload: error,\n error: true,\n meta: { url, errorMessage, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\nexport const importUrl = (url) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions } = system;\n const requestId = uid();\n const sanitizedUrl = sanitizeUrl(url);\n\n editorActions.importUrlStarted({ url: sanitizedUrl, requestId });\n\n if (sanitizedUrl === 'about:blank') {\n return editorActions.importUrlFailure({\n error: new Error('Invalid url provided'),\n url: sanitizedUrl,\n requestId,\n });\n }\n\n try {\n const response = await axios.get(sanitizedUrl);\n return editorActions.importUrlSuccess({\n definition: response.request.responseText,\n requestId,\n });\n } catch (error) {\n return editorActions.importUrlFailure({ error, url: sanitizedUrl, requestId });\n }\n };\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_js_file_download_bd23dbb6__[\"default\"] });","import fileDownload from 'js-file-download';\nimport ShortUniqueId from 'short-unique-id';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_DOWNLOAD_CONTENT_STARTED = 'editor_download_content_started';\nexport const EDITOR_DOWNLOAD_CONTENT_SUCCESS = 'editor_download_content_success';\nexport const EDITOR_DOWNLOAD_CONTENT_FAILURE = 'editor_download_content_failure';\n\n/**\n * Action creators.\n */\n\nexport const downloadContentStarted = ({ content, fileNameWithExtension, requestId }) => ({\n type: EDITOR_DOWNLOAD_CONTENT_STARTED,\n payload: content,\n meta: {\n requestId,\n fileNameWithExtension,\n },\n});\n\nexport const downloadContentSuccess = ({ fileNameWithExtension, content, requestId }) => ({\n type: EDITOR_DOWNLOAD_CONTENT_SUCCESS,\n payload: fileNameWithExtension,\n meta: { content, requestId },\n});\n\nexport const downloadContentFailure = ({ error, content, fileNameWithExtension, requestId }) => {\n const errorMessage = error.message || 'Unknown error while downloading editor content';\n\n return {\n type: EDITOR_DOWNLOAD_CONTENT_FAILURE,\n payload: error,\n error: true,\n meta: { content, errorMessage, fileNameWithExtension, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const downloadContent = ({ content, fileNameWithExtension }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions } = system;\n const requestId = uid();\n\n editorActions.downloadContentStarted({ content, fileNameWithExtension, requestId });\n\n try {\n fileDownload(content, fileNameWithExtension);\n return editorActions.downloadContentSuccess({\n fileNameWithExtension,\n content,\n requestId,\n });\n } catch (error) {\n return editorActions.downloadContentFailure({\n error,\n content,\n fileNameWithExtension,\n requestId,\n });\n }\n };\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_js_yaml_78384032__[\"default\"] });","import YAML from 'js-yaml';\nimport ShortUniqueId from 'short-unique-id';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_CONVERT_CONTENT_TO_JSON_STARTED = 'editor_convert_content_to_json_started';\nexport const EDITOR_CONVERT_CONTENT_TO_JSON_SUCCESS = 'editor_convert_content_to_json_success';\nexport const EDITOR_CONVERT_CONTENT_TO_JSON_FAILURE = 'editor_convert_content_to_json_failure';\n\n/**\n * Action creators.\n */\n\nexport const convertContentToJSONStarted = ({ content, requestId }) => ({\n type: EDITOR_CONVERT_CONTENT_TO_JSON_STARTED,\n payload: content,\n meta: {\n requestId,\n },\n});\n\nexport const convertContentToJSONSuccess = ({ contentJSON, content, requestId }) => ({\n type: EDITOR_CONVERT_CONTENT_TO_JSON_SUCCESS,\n payload: contentJSON,\n meta: { content, requestId },\n});\n\nexport const convertContentToJSONFailure = ({ error, content, requestId }) => {\n const errorMessage = error.message || 'Unknown error while converting editor content to JSON';\n\n return {\n type: EDITOR_CONVERT_CONTENT_TO_JSON_FAILURE,\n payload: error,\n error: true,\n meta: { content, errorMessage, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const convertContentToJSON = (content) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions } = system;\n const requestId = uid();\n\n editorActions.convertContentToJSONStarted({ content, requestId });\n\n try {\n const contentObject = YAML.load(content);\n const contentJSONString = JSON.stringify(contentObject, null, 2);\n\n return editorActions.convertContentToJSONSuccess({\n contentJSON: contentJSONString,\n content,\n requestId,\n });\n } catch (error) {\n return editorActions.convertContentToJSONFailure({ error, content, requestId });\n }\n };\n};\n","import YAML from 'js-yaml';\nimport ShortUniqueId from 'short-unique-id';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_CONVERT_CONTENT_TO_YAML_STARTED = 'editor_convert_content_to_yaml_started';\nexport const EDITOR_CONVERT_CONTENT_TO_YAML_SUCCESS = 'editor_convert_content_to_yaml_success';\nexport const EDITOR_CONVERT_CONTENT_TO_YAML_FAILURE = 'editor_convert_content_to_yaml_failure';\n\n/**\n * Action creators.\n */\n\nexport const convertContentToYAMLStarted = ({ content, requestId }) => ({\n type: EDITOR_CONVERT_CONTENT_TO_YAML_STARTED,\n payload: content,\n meta: {\n requestId,\n },\n});\n\nexport const convertContentToYAMLSuccess = ({ contentYAML, content, requestId }) => ({\n type: EDITOR_CONVERT_CONTENT_TO_YAML_SUCCESS,\n payload: contentYAML,\n meta: { content, requestId },\n});\n\nexport const convertContentToYAMLFailure = ({ error, content, requestId }) => {\n const errorMessage = error.message || 'Unknown error while converting editor content to JSON';\n\n return {\n type: EDITOR_CONVERT_CONTENT_TO_YAML_FAILURE,\n payload: error,\n error: true,\n meta: { content, errorMessage, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const convertContentToYAML = (content) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions } = system;\n const requestId = uid();\n\n editorActions.convertContentToYAMLStarted({ content, requestId });\n\n try {\n const contentObject = JSON.parse(content);\n const contentYAMLString = YAML.dump(contentObject);\n\n return editorActions.convertContentToYAMLSuccess({\n contentYAML: contentYAMLString,\n content,\n requestId,\n });\n } catch (error) {\n return editorActions.convertContentToYAMLFailure({ error, content, requestId });\n }\n };\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = __WEBPACK_EXTERNAL_MODULE_monaco_editor_23647bbd__;","import ShortUniqueId from 'short-unique-id';\nimport * as monaco from 'monaco-editor';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_DEREFERENCE_CONTENT_STARTED = 'editor_dereference_content_started';\nexport const EDITOR_DEREFERENCE_CONTENT_SUCCESS = 'editor_dereference_content_success';\nexport const EDITOR_DEREFERENCE_CONTENT_FAILURE = 'editor_dereference_content_failure';\n\n/**\n * Action creators.\n */\n\nexport const dereferenceContentStarted = ({ content, baseURI, requestId }) => ({\n type: EDITOR_DEREFERENCE_CONTENT_STARTED,\n payload: content,\n meta: {\n baseURI,\n requestId,\n },\n});\n\nexport const dereferenceContentSuccess = ({\n contentDereferenced,\n content,\n baseURI,\n requestId,\n}) => ({\n type: EDITOR_DEREFERENCE_CONTENT_SUCCESS,\n payload: contentDereferenced,\n meta: { content, baseURI, requestId },\n});\n\nexport const dereferenceContentFailure = ({ error, content, baseURI, requestId }) => {\n const errorMessage = error.message || 'Unknown error while dereferencing editor content';\n\n return {\n type: EDITOR_DEREFERENCE_CONTENT_FAILURE,\n payload: error,\n error: true,\n meta: { content, errorMessage, baseURI, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const dereferenceContent = ({ content, baseURI }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions, fn } = system;\n const requestId = uid();\n\n editorActions.dereferenceContentStarted({ content, baseURI, requestId });\n\n try {\n const model = monaco.editor.getModels().find((m) => m.getValue() === content);\n const worker = await fn.getApiDOMWorker()(model.uri);\n const contentDereferenced = await worker.doDeref(model.uri.toString(), {\n baseURI: baseURI ?? globalThis.location.href,\n });\n\n return editorActions.dereferenceContentSuccess({\n contentDereferenced,\n content,\n baseURI,\n requestId,\n });\n } catch (error) {\n return editorActions.dereferenceContentFailure({ error, content, baseURI, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_STARTED =\n 'editor_convert_openapi_2_to_openapi_3_started';\nexport const EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_SUCCESS =\n 'editor_convert_openapi_2_to_openapi_3_success';\nexport const EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_FAILURE =\n 'editor_convert_openapi_2_to_openapi_3_failure';\n\n/**\n * Action creators.\n */\n\nexport const convertOpenAPI20ToOpenAPI30xStarted = ({ openAPI2Content, requestId }) => ({\n type: EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_STARTED,\n payload: openAPI2Content,\n meta: {\n requestId,\n },\n});\n\nexport const convertOpenAPI20ToOpenAPI30xSuccess = ({\n openAPI30xContent,\n openAPI2Content,\n requestId,\n}) => ({\n type: EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_SUCCESS,\n payload: openAPI30xContent,\n meta: { openAPI2Content, requestId },\n});\n\nexport const convertOpenAPI20ToOpenAPI30xFailure = ({ error, openAPI2Content, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_CONVERT_OPENAPI_2_TO_OPENAPI_30X_FAILURE,\n payload: error,\n error: true,\n meta: { openAPI2Content, errorMessage, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const convertOpenAPI20ToOpenAPI30x = ({ openAPI2Content, contentType }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorActions, editorSelectors } = system;\n const { swagger2ConverterUrl: openAPI20ConverterURL } = system.getConfigs();\n const converterURL = openAPI20ConverterURL ?? editorSelectors.selectOpenAPI20ConverterURL();\n const requestId = uid();\n\n editorActions.convertOpenAPI20ToOpenAPI30xStarted({ openAPI2Content, requestId });\n\n try {\n const response = await axios.post(converterURL, openAPI2Content, {\n headers: {\n 'Content-Type': contentType,\n Accept: contentType,\n },\n });\n\n const openAPI30xContent =\n contentType === 'application/json'\n ? JSON.stringify(response.data, null, 2) // converter service returns ugly JSON string\n : response.request.responseText;\n\n return editorActions.convertOpenAPI20ToOpenAPI30xSuccess({\n openAPI30xContent,\n openAPI2Content,\n requestId,\n });\n } catch (error) {\n return editorActions.convertOpenAPI20ToOpenAPI30xFailure({\n error,\n openAPI2Content,\n requestId,\n });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED =\n 'editor_top_bar_fetch_openapi3_generator_server_list_started';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS =\n 'editor_top_bar_fetch_openapi3_generator_server_list_success';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE =\n 'editor_top_bar_fetch_openapi3_generator_server_list_failure';\n\n/**\n * Action creators.\n */\n\nexport const fetchOpenAPI3GeneratorServerListStarted = ({ url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED,\n meta: {\n url,\n requestId,\n },\n});\n\nexport const fetchOpenAPI3GeneratorServerListSuccess = ({ serverList, url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS,\n payload: serverList,\n meta: { url, requestId },\n});\n\nexport const fetchOpenAPI3GeneratorServerListFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, url, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const fetchOpenAPI3GeneratorServerList = () => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI3GeneratorServerListURL();\n\n editorTopBarActions.fetchOpenAPI3GeneratorServerListStarted({ url, requestId });\n\n try {\n const response = await axios.get(url);\n return editorTopBarActions.fetchOpenAPI3GeneratorServerListSuccess({\n serverList: response.data,\n url,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.fetchOpenAPI3GeneratorServerListFailure({ error, url, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED =\n 'editor_top_bar_fetch_openapi3_generator_client_list_started';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS =\n 'editor_top_bar_fetch_openapi3_generator_client_list_success';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE =\n 'editor_top_bar_fetch_openapi3_generator_client_list_failure';\n\n/**\n * Action creators.\n */\n\nexport const fetchOpenAPI3GeneratorClientListStarted = ({ url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED,\n meta: {\n url,\n requestId,\n },\n});\n\nexport const fetchOpenAPI3GeneratorClientListSuccess = ({ clientList, url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS,\n payload: clientList,\n meta: { url, requestId },\n});\n\nexport const fetchOpenAPI3GeneratorClientListFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, url, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const fetchOpenAPI3GeneratorClientList = () => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI3GeneratorClientListURL();\n\n editorTopBarActions.fetchOpenAPI3GeneratorClientListStarted({ url, requestId });\n\n try {\n const response = await axios.get(url);\n return editorTopBarActions.fetchOpenAPI3GeneratorClientListSuccess({\n clientList: response.data,\n url,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.fetchOpenAPI3GeneratorClientListFailure({ error, url, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED =\n 'editor_top_bar_fetch_openapi2_generator_server_list_started';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS =\n 'editor_top_bar_fetch_openapi2_generator_server_list_success';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE =\n 'editor_top_bar_fetch_openapi2_generator_server_list_failure';\n\n/**\n * Action creators.\n */\n\nexport const fetchOpenAPI2GeneratorServerListStarted = ({ url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED,\n meta: {\n url,\n requestId,\n },\n});\n\nexport const fetchOpenAPI2GeneratorServerListSuccess = ({ serverList, url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS,\n payload: serverList,\n meta: { url, requestId },\n});\n\nexport const fetchOpenAPI2GeneratorServerListFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, url, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const fetchOpenAPI2GeneratorServerList = () => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI2GeneratorServerListURL();\n\n editorTopBarActions.fetchOpenAPI2GeneratorServerListStarted({ url, requestId });\n\n try {\n const response = await axios.get(url);\n return editorTopBarActions.fetchOpenAPI2GeneratorServerListSuccess({\n serverList: response.data,\n url,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.fetchOpenAPI2GeneratorServerListFailure({ error, url, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED =\n 'editor_top_bar_fetch_openapi2_generator_client_list_started';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS =\n 'editor_top_bar_fetch_openapi2_generator_client_list_success';\nexport const EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE =\n 'editor_top_bar_fetch_openapi2_generator_client_list_failure';\n\n/**\n * Action creators.\n */\n\nexport const fetchOpenAPI2GeneratorClientListStarted = ({ url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED,\n meta: {\n url,\n requestId,\n },\n});\n\nexport const fetchOpenAPI2GeneratorClientListSuccess = ({ clientList, url, requestId }) => ({\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS,\n payload: clientList,\n meta: { url, requestId },\n});\n\nexport const fetchOpenAPI2GeneratorClientListFailure = ({ error, url, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, url, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const fetchOpenAPI2GeneratorClientList = () => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI2GeneratorClientListURL();\n\n editorTopBarActions.fetchOpenAPI2GeneratorClientListStarted({ url, requestId });\n\n try {\n const response = await axios.get(url);\n return editorTopBarActions.fetchOpenAPI2GeneratorClientListSuccess({\n clientList: response.data,\n url,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.fetchOpenAPI2GeneratorClientListFailure({ error, url, requestId });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport YAML from 'js-yaml';\nimport fileDownload from 'js-file-download';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_STARTED =\n 'editor_top_bar_generate_server_code_from_openapi3_started';\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_SUCCESS =\n 'editor_top_bar_generate_server_code_from_openapi3_success';\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_FAILURE =\n 'editor_top_bar_generate_server_code_from_openapi3_failure';\n\n/**\n * Action creators.\n */\n\nexport const generateServerCodeFromOpenAPI3Started = ({ content, framework, requestId }) => ({\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_STARTED,\n payload: content,\n meta: {\n framework,\n requestId,\n },\n});\n\nexport const generateServerCodeFromOpenAPI3Success = ({\n blob,\n content,\n framework,\n fileNameWithExtension,\n requestId,\n}) => ({\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_SUCCESS,\n payload: blob,\n meta: { content, framework, fileNameWithExtension, requestId },\n});\n\nexport const generateServerCodeFromOpenAPI3Failure = ({ error, content, framework, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI3_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, content, framework, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const generateServerCodeFromOpenAPI3 = ({ content, framework }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI3GenerateServerURL();\n const fileNameWithExtension = `${framework}-server-generated.zip`;\n\n editorTopBarActions.generateServerCodeFromOpenAPI3Started({ content, framework, requestId });\n\n try {\n const data = { spec: YAML.load(content), lang: framework, type: 'SERVER' };\n const response = await axios.post(url, data, {\n responseType: 'blob',\n });\n\n fileDownload(response.data, fileNameWithExtension);\n\n return editorTopBarActions.generateServerCodeFromOpenAPI3Success({\n blob: response.data,\n fileNameWithExtension,\n content,\n framework,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.generateServerCodeFromOpenAPI3Failure({\n error,\n content,\n framework,\n requestId,\n });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport YAML from 'js-yaml';\nimport fileDownload from 'js-file-download';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_STARTED =\n 'editor_top_bar_generate_client_code_from_openapi3_started';\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_SUCCESS =\n 'editor_top_bar_generate_client_code_from_openapi3_success';\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_FAILURE =\n 'editor_top_bar_generate_client_code_from_openapi3_failure';\n\n/**\n * Action creators.\n */\n\nexport const generateClientCodeFromOpenAPI3Started = ({ content, language, requestId }) => ({\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_STARTED,\n payload: content,\n meta: {\n language,\n requestId,\n },\n});\n\nexport const generateClientCodeFromOpenAPI3Success = ({\n blob,\n content,\n language,\n fileNameWithExtension,\n requestId,\n}) => ({\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_SUCCESS,\n payload: blob,\n meta: { content, language, fileNameWithExtension, requestId },\n});\n\nexport const generateClientCodeFromOpenAPI3Failure = ({ error, content, language, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI3_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, content, language, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const generateClientCodeFromOpenAPI3 = ({ content, language }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = editorTopBarSelectors.selectOpenAPI3GenerateClientURL();\n const fileNameWithExtension = `${language}-client-generated.zip`;\n\n editorTopBarActions.generateClientCodeFromOpenAPI3Started({ content, language, requestId });\n\n try {\n const data = { spec: YAML.load(content), lang: language, type: 'CLIENT' };\n const response = await axios.post(url, data, {\n responseType: 'blob',\n });\n\n fileDownload(response.data, fileNameWithExtension);\n\n return editorTopBarActions.generateClientCodeFromOpenAPI3Success({\n blob: response.data,\n fileNameWithExtension,\n content,\n language,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.generateClientCodeFromOpenAPI3Failure({\n error,\n content,\n language,\n requestId,\n });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport YAML from 'js-yaml';\nimport fileDownload from 'js-file-download';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_STARTED =\n 'editor_top_bar_generate_server_code_from_openapi20_started';\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_SUCCESS =\n 'editor_top_bar_generate_server_code_from_openapi20_success';\nexport const EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_FAILURE =\n 'editor_top_bar_generate_server_code_from_openapi20_failure';\n\n/**\n * Action creators.\n */\n\nexport const generateServerCodeFromOpenAPI20Started = ({ content, framework, requestId }) => ({\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_STARTED,\n payload: content,\n meta: {\n framework,\n requestId,\n },\n});\n\nexport const generateServerCodeFromOpenAPI20Success = ({\n blob,\n content,\n framework,\n fileNameWithExtension,\n requestId,\n}) => ({\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_SUCCESS,\n payload: blob,\n meta: { content, framework, fileNameWithExtension, requestId },\n});\n\nexport const generateServerCodeFromOpenAPI20Failure = ({\n error,\n content,\n framework,\n requestId,\n}) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_GENERATE_SERVER_CODE_FROM_OPENAPI20_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, content, framework, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const generateServerCodeFromOpenAPI20 = ({ content, framework }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = `${editorTopBarSelectors.selectOpenAPI2GenerateServerURL()}/${framework}`;\n const fileNameWithExtension = `${framework}-server-generated.zip`;\n\n editorTopBarActions.generateServerCodeFromOpenAPI20Started({ content, framework, requestId });\n\n try {\n const data = { spec: YAML.load(content) };\n const {\n data: { link: downloadURL },\n } = await axios.post(url, data);\n const response = await axios.get(downloadURL, {\n responseType: 'blob',\n });\n\n fileDownload(response.data, fileNameWithExtension);\n\n return editorTopBarActions.generateServerCodeFromOpenAPI20Success({\n blob: response.data,\n fileNameWithExtension,\n content,\n framework,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.generateServerCodeFromOpenAPI20Failure({\n error,\n content,\n framework,\n requestId,\n });\n }\n };\n};\n","import ShortUniqueId from 'short-unique-id';\nimport axios from 'axios';\nimport YAML from 'js-yaml';\nimport fileDownload from 'js-file-download';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_STARTED =\n 'editor_top_bar_generate_client_code_from_openapi20_started';\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_SUCCESS =\n 'editor_top_bar_generate_client_code_from_openapi20_success';\nexport const EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_FAILURE =\n 'editor_top_bar_generate_client_code_from_openapi20_failure';\n\n/**\n * Action creators.\n */\n\nexport const generateClientCodeFromOpenAPI20Started = ({ content, language, requestId }) => ({\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_STARTED,\n payload: content,\n meta: {\n language,\n requestId,\n },\n});\n\nexport const generateClientCodeFromOpenAPI20Success = ({\n blob,\n content,\n language,\n fileNameWithExtension,\n requestId,\n}) => ({\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_SUCCESS,\n payload: blob,\n meta: { content, language, fileNameWithExtension, requestId },\n});\n\nexport const generateClientCodeFromOpenAPI20Failure = ({ error, content, language, requestId }) => {\n /* eslint-disable no-nested-ternary */\n const errorMessage = error.response\n ? 'The request was made and the server responded with a status code that falls out of the range of 2xx'\n : error.request\n ? 'The request was made but no response was received'\n : error.message\n ? error.message\n : 'Unknown error occurred';\n /* eslint-enable */\n\n return {\n type: EDITOR_TOP_BAR_GENERATE_CLIENT_CODE_FROM_OPENAPI20_FAILURE,\n payload: error,\n error: true,\n meta: { errorMessage, content, language, requestId },\n };\n};\n\n/**\n * Async thunks.\n */\n\nexport const generateClientCodeFromOpenAPI20 = ({ content, language }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorTopBarActions, editorTopBarSelectors } = system;\n const requestId = uid();\n const url = `${editorTopBarSelectors.selectOpenAPI2GenerateClientURL()}/${language}`;\n const fileNameWithExtension = `${language}-client-generated.zip`;\n\n editorTopBarActions.generateClientCodeFromOpenAPI20Started({ content, language, requestId });\n\n try {\n const data = { spec: YAML.load(content) };\n const {\n data: { link: downloadURL },\n } = await axios.post(url, data);\n const response = await axios.get(downloadURL, {\n responseType: 'blob',\n });\n\n fileDownload(response.data, fileNameWithExtension);\n\n return editorTopBarActions.generateClientCodeFromOpenAPI20Success({\n blob: response.data,\n fileNameWithExtension,\n content,\n language,\n requestId,\n });\n } catch (error) {\n return editorTopBarActions.generateClientCodeFromOpenAPI20Failure({\n error,\n content,\n language,\n requestId,\n });\n }\n };\n};\n","/**\n * Creates action wrapper that avoids double dispatch.\n *\n * @param wrapper\n * @returns {function(*, *): function(...[*]): (*)}\n */\nconst createSafeActionWrapper = (wrapper) => {\n let lastFSA = null; // Flux Standard Action(FSA): action objects emitted through redux\n\n return (origAction, system) =>\n (...args) => {\n const fsa = origAction(...args);\n\n if (fsa === lastFSA) {\n return fsa;\n }\n\n wrapper(origAction, system)(...args);\n\n lastFSA = fsa;\n\n return fsa;\n };\n};\n\nexport default createSafeActionWrapper;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"List\"]: () => __WEBPACK_EXTERNAL_MODULE_immutable__.List, [\"fromJS\"]: () => __WEBPACK_EXTERNAL_MODULE_immutable__.fromJS });","import { List } from 'immutable';\n\nimport {\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED,\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS,\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE,\n} from './actions/fetch-openapi3-generator-server-list.js';\nimport {\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED,\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS,\n EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE,\n} from './actions/fetch-openapi3-generator-client-list.js';\nimport {\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED,\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS,\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE,\n} from './actions/fetch-openapi2-generator-server-list.js';\nimport {\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED,\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS,\n EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE,\n} from './actions/fetch-openapi2-generator-client-list.js';\n\nexport const IDLE_STATUS = 'idle';\nexport const FETCHING_STATUS = 'fetching';\nexport const SUCCESS_STATUS = 'success';\nexport const FAILURE_STATUS = 'failure';\n\nexport const initialState = {\n openAPI3GeneratorServerList: null,\n openAPI3GeneratorServerListError: null,\n openAPI3GeneratorServerListStatus: IDLE_STATUS,\n openAPI3GeneratorServerListRequestId: null,\n\n openAPI3GeneratorClientList: null,\n openAPI3GeneratorClientListError: null,\n openAPI3GeneratorClientListStatus: IDLE_STATUS,\n openAPI3GeneratorClientListRequestId: null,\n\n openAPI2GeneratorServerList: null,\n openAPI2GeneratorServerListError: null,\n openAPI2GeneratorServerListStatus: IDLE_STATUS,\n openAPI2GeneratorServerListRequestId: null,\n\n openAPI2GeneratorClientList: null,\n openAPI2GeneratorClientListError: null,\n openAPI2GeneratorClientListStatus: IDLE_STATUS,\n openAPI2GeneratorClientListRequestId: null,\n};\n\n/**\n * Case reducers modeled as finite state machine.\n */\n\nconst fetchOpenAPI3GeneratorServerListStartedReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorServerListStatus') || IDLE_STATUS;\n\n if (status !== FETCHING_STATUS) {\n return state.merge({\n openAPI3GeneratorServerListStatus: FETCHING_STATUS,\n openAPI3GeneratorServerListRequestId: action.meta.requestId,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorServerListSuccessReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorServerListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI3GeneratorServerListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI3GeneratorServerListStatus: SUCCESS_STATUS,\n openAPI3GeneratorServerList: List.of(...action.payload),\n openAPI3GeneratorServerListError: null,\n openAPI3GeneratorServerListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorServerListFailureReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorServerListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI3GeneratorServerListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI3GeneratorServerListStatus: FAILURE_STATUS,\n openAPI3GeneratorServerList: null,\n openAPI3GeneratorServerListError: action.payload,\n openAPI3GeneratorServerListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorClientListStartedReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorClientListStatus') || IDLE_STATUS;\n\n if (status !== FETCHING_STATUS) {\n return state.merge({\n openAPI3GeneratorClientListStatus: FETCHING_STATUS,\n openAPI3GeneratorClientListRequestId: action.meta.requestId,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorClientListSuccessReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorClientListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI3GeneratorClientListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI3GeneratorClientListStatus: SUCCESS_STATUS,\n openAPI3GeneratorClientList: List.of(...action.payload),\n openAPI3GeneratorClientListError: null,\n openAPI3GeneratorClientListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI3GeneratorClientListFailureReducer = (state, action) => {\n const status = state.get('openAPI3GeneratorClientListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI3GeneratorClientListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI3GeneratorClientListStatus: FAILURE_STATUS,\n openAPI3GeneratorClientList: null,\n openAPI3GeneratorClientListError: action.payload,\n openAPI3GeneratorClientListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorServerListStartedReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorServerListStatus') || IDLE_STATUS;\n\n if (status !== FETCHING_STATUS) {\n return state.merge({\n openAPI2GeneratorServerListStatus: FETCHING_STATUS,\n openAPI2GeneratorServerListRequestId: action.meta.requestId,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorServerListSuccessReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorServerListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI2GeneratorServerListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI2GeneratorServerListStatus: SUCCESS_STATUS,\n openAPI2GeneratorServerList: List.of(...action.payload),\n openAPI2GeneratorServerListError: null,\n openAPI2GeneratorServerListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorServerListFailureReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorServerListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI2GeneratorServerListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI2GeneratorServerListStatus: FAILURE_STATUS,\n openAPI2GeneratorServerList: null,\n openAPI2GeneratorServerListError: action.payload,\n openAPI2GeneratorServerListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorClientListStartedReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorClientListStatus') || IDLE_STATUS;\n\n if (status !== FETCHING_STATUS) {\n return state.merge({\n openAPI2GeneratorClientListStatus: FETCHING_STATUS,\n openAPI2GeneratorClientListRequestId: action.meta.requestId,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorClientListSuccessReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorClientListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI2GeneratorClientListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI2GeneratorClientListStatus: SUCCESS_STATUS,\n openAPI2GeneratorClientList: List.of(...action.payload),\n openAPI2GeneratorClientListError: null,\n openAPI2GeneratorClientListRequestId: null,\n });\n }\n\n return state;\n};\n\nconst fetchOpenAPI2GeneratorClientListFailureReducer = (state, action) => {\n const status = state.get('openAPI2GeneratorClientListStatus') || IDLE_STATUS;\n const requestId = state.get('openAPI2GeneratorClientListRequestId');\n\n if (status === FETCHING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n openAPI2GeneratorClientListStatus: FAILURE_STATUS,\n openAPI2GeneratorClientList: null,\n openAPI2GeneratorClientListError: action.payload,\n openAPI2GeneratorClientListRequestId: null,\n });\n }\n\n return state;\n};\n\n/**\n * Root reducer for this plugin.\n */\n\nexport default {\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED]:\n fetchOpenAPI3GeneratorServerListStartedReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS]:\n fetchOpenAPI3GeneratorServerListSuccessReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE]:\n fetchOpenAPI3GeneratorServerListFailureReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED]:\n fetchOpenAPI3GeneratorClientListStartedReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS]:\n fetchOpenAPI3GeneratorClientListSuccessReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE]:\n fetchOpenAPI3GeneratorClientListFailureReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED]:\n fetchOpenAPI2GeneratorServerListStartedReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS]:\n fetchOpenAPI2GeneratorServerListSuccessReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE]:\n fetchOpenAPI2GeneratorServerListFailureReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED]:\n fetchOpenAPI2GeneratorClientListStartedReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS]:\n fetchOpenAPI2GeneratorClientListSuccessReducer,\n [EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE]:\n fetchOpenAPI2GeneratorClientListFailureReducer,\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\nimport { IDLE_STATUS, FAILURE_STATUS } from './reducers.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const detectContentTypeSuccess = createSafeActionWrapper((oriAction, system) => () => {\n const { editorSelectors, editorTopBarSelectors, editorTopBarActions } = system;\n const triggerStatuses = [IDLE_STATUS, FAILURE_STATUS];\n\n if (\n triggerStatuses.includes(editorTopBarSelectors.selectOpenAPI3GeneratorServerListStatus()) &&\n (editorSelectors.selectIsContentTypeOpenAPI30x() ||\n editorSelectors.selectIsContentTypeOpenAPI31x())\n ) {\n editorTopBarActions.fetchOpenAPI3GeneratorServerList();\n }\n\n if (\n triggerStatuses.includes(editorTopBarSelectors.selectOpenAPI3GeneratorClientListStatus()) &&\n (editorSelectors.selectIsContentTypeOpenAPI30x() ||\n editorSelectors.selectIsContentTypeOpenAPI31x())\n ) {\n editorTopBarActions.fetchOpenAPI3GeneratorClientList();\n }\n\n if (\n triggerStatuses.includes(editorTopBarSelectors.selectOpenAPI2GeneratorServerListStatus()) &&\n editorSelectors.selectIsContentTypeOpenAPI20()\n ) {\n editorTopBarActions.fetchOpenAPI2GeneratorServerList();\n }\n\n if (\n triggerStatuses.includes(editorTopBarSelectors.selectOpenAPI2GeneratorClientListStatus()) &&\n editorSelectors.selectIsContentTypeOpenAPI20()\n ) {\n editorTopBarActions.fetchOpenAPI2GeneratorClientList();\n }\n});\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createSelector\"]: () => __WEBPACK_EXTERNAL_MODULE_reselect__.createSelector });","import { createSelector } from 'reselect';\n\nimport { SUCCESS_STATUS, IDLE_STATUS } from './reducers.js';\n\n/**\n * editor state plugin selectors.\n */\n\nexport const selectOpenAPI20ConverterURL = () => 'https://converter.swagger.io/api/convert';\n\n/**\n * editorTopBar state plugin selectors.\n */\n\nexport const selectEditorTopBarState = (state) => state;\n\nexport const selectOpenAPI3GeneratorServerListURL = () =>\n 'https://generator3.swagger.io/api/servers';\n\nexport const selectOpenAPI3GenerateServerURL = () => 'https://generator3.swagger.io/api/generate';\n\nexport const selectOpenAPI3GeneratorServerListStatus = (state) =>\n state.get('openAPI3GeneratorServerListStatus') || IDLE_STATUS;\n\nexport const selectOpenAPI3GeneratorServerList = createSelector(\n selectOpenAPI3GeneratorServerListStatus,\n selectEditorTopBarState,\n (status, state) => {\n if (status !== SUCCESS_STATUS) {\n return null;\n }\n\n return state.get('openAPI3GeneratorServerList').toJS();\n }\n);\n\nexport const selectOpenAPI3GeneratorClientListURL = () =>\n 'https://generator3.swagger.io/api/clients';\n\nexport const selectOpenAPI3GenerateClientURL = () => 'https://generator3.swagger.io/api/generate';\n\nexport const selectOpenAPI3GeneratorClientListStatus = (state) =>\n state.get('openAPI3GeneratorClientListStatus') || IDLE_STATUS;\n\nexport const selectOpenAPI3GeneratorClientList = createSelector(\n selectOpenAPI3GeneratorClientListStatus,\n selectEditorTopBarState,\n (status, state) => {\n if (status !== SUCCESS_STATUS) {\n return null;\n }\n\n return state.get('openAPI3GeneratorClientList').toJS();\n }\n);\n\nexport const selectOpenAPI2GeneratorServerListURL = () =>\n 'https://generator.swagger.io/api/gen/servers';\n\nexport const selectOpenAPI2GenerateServerURL = () => 'https://generator.swagger.io/api/gen/servers';\n\nexport const selectOpenAPI2GeneratorServerListStatus = (state) =>\n state.get('openAPI2GeneratorServerListStatus') || IDLE_STATUS;\n\nexport const selectOpenAPI2GeneratorServerList = createSelector(\n selectOpenAPI2GeneratorServerListStatus,\n selectEditorTopBarState,\n (status, state) => {\n if (status !== SUCCESS_STATUS) {\n return null;\n }\n\n return state.get('openAPI2GeneratorServerList').toJS();\n }\n);\n\nexport const selectOpenAPI2GeneratorClientListURL = () =>\n 'https://generator.swagger.io/api/gen/clients';\n\nexport const selectOpenAPI2GenerateClientURL = () => 'https://generator.swagger.io/api/gen/clients';\n\nexport const selectOpenAPI2GeneratorClientListStatus = (state) =>\n state.get('openAPI2GeneratorClientListStatus') || IDLE_STATUS;\n\nexport const selectOpenAPI2GeneratorClientList = createSelector(\n selectOpenAPI2GeneratorClientListStatus,\n selectEditorTopBarState,\n (status, state) => {\n if (status !== SUCCESS_STATUS) {\n return null;\n }\n\n return state.get('openAPI2GeneratorClientList').toJS();\n }\n);\n","import TopBar from './components/TopBar/TopBar.jsx';\nimport Logo from './components/Logo/Logo.jsx';\nimport FileMenu from './components/FileMenu/FileMenu.jsx';\nimport ImportUrlMenuItem from './components/FileMenu/items/ImportUrlMenuItem.jsx';\nimport ImportFileMenuItem from './components/FileMenu/items/ImportFileMenuItem.jsx';\nimport LoadExampleNestedMenu from './components/FileMenu/items/LoadExampleNestedMenu/LoadExampleNestedMenu.jsx';\nimport OpenAPI31PetstoreMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI31PetstoreMenuItem.jsx';\nimport OpenAPI30PetstoreMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI30PetstoreMenuItem.jsx';\nimport OpenAPI20PetstoreMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/OpenAPI20PetstoreMenuItem.jsx';\nimport AsyncAPI26PetstoreMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/AsyncAPI26PetstoreMenuItem.jsx';\nimport AsyncAPI26StreetlightsMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/AsyncAPI26StreetlightsMenuItem.jsx';\nimport APIDesignSystemsMenuItem from './components/FileMenu/items/LoadExampleNestedMenu/items/APIDesignSystemsMenuItem.jsx';\nimport SaveAsMenuItem from './components/FileMenu/items/SaveAsMenuItem.jsx';\nimport ConvertAndSaveAsJSONMenuItem from './components/FileMenu/items/ConvertAndSaveAsJSONMenuItem.jsx';\nimport ConvertAndSaveAsYAMLMenuItem from './components/FileMenu/items/ConvertAndSaveAsYAMLMenuItem.jsx';\nimport DownloadResolvedJSONMenuItem from './components/FileMenu/items/DownloadResolvedJSONMenuItem.jsx';\nimport DownloadResolvedYAMLMenuItem from './components/FileMenu/items/DownloadResolvedYAMLMenuItem.jsx';\nimport EditMenu from './components/EditMenu/EditMenu.jsx';\nimport ClearMenuItem from './components/EditMenu/items/ClearMenuItem.jsx';\nimport ConvertToJSONMenuItem from './components/EditMenu/items/ConvertToJSONMenuItem.jsx';\nimport ConvertToYAMLMenuItem from './components/EditMenu/items/ConvertToYAMLMenuItem.jsx';\nimport ConvertToOpenAPI30xMenuItem from './components/EditMenu/items/ConvertToOpenAPI30xMenuItem.jsx';\nimport OpenAPI3GenerateServerMenu from './components/GenerateServerMenu/OpenAPI3GenerateServerMenu.jsx';\nimport OpenAPI3GenerateClientMenu from './components/GenerateServerMenu/OpenAPI3GenerateClientMenu.jsx';\nimport OpenAPI2GenerateServerMenu from './components/GenerateServerMenu/OpenAPI2GenerateServerMenu.jsx';\nimport OpenAPI2GenerateClientMenu from './components/GenerateServerMenu/OpenAPI2GenerateClientMenu.jsx';\nimport AboutMenu from './components/AboutMenu/AboutMenu.jsx';\nimport {\n importUrlStarted,\n importUrlSuccess,\n importUrlFailure,\n importUrl,\n} from './actions/import-url.js';\nimport {\n downloadContent,\n downloadContentStarted,\n downloadContentSuccess,\n downloadContentFailure,\n} from './actions/download-content.js';\nimport {\n convertContentToJSON,\n convertContentToJSONStarted,\n convertContentToJSONSuccess,\n convertContentToJSONFailure,\n} from './actions/convert-content-to-json.js';\nimport {\n convertContentToYAML,\n convertContentToYAMLStarted,\n convertContentToYAMLSuccess,\n convertContentToYAMLFailure,\n} from './actions/convert-content-to-yaml.js';\nimport {\n dereferenceContent,\n dereferenceContentStarted,\n dereferenceContentSuccess,\n dereferenceContentFailure,\n} from './actions/dereference-content.js';\nimport {\n convertOpenAPI20ToOpenAPI30x,\n convertOpenAPI20ToOpenAPI30xStarted,\n convertOpenAPI20ToOpenAPI30xSuccess,\n convertOpenAPI20ToOpenAPI30xFailure,\n} from './actions/convert-openapi-20-to-openapi-30x.js';\nimport {\n fetchOpenAPI3GeneratorServerList,\n fetchOpenAPI3GeneratorServerListStarted,\n fetchOpenAPI3GeneratorServerListSuccess,\n fetchOpenAPI3GeneratorServerListFailure,\n} from './actions/fetch-openapi3-generator-server-list.js';\nimport {\n fetchOpenAPI3GeneratorClientList,\n fetchOpenAPI3GeneratorClientListStarted,\n fetchOpenAPI3GeneratorClientListSuccess,\n fetchOpenAPI3GeneratorClientListFailure,\n} from './actions/fetch-openapi3-generator-client-list.js';\nimport {\n fetchOpenAPI2GeneratorServerList,\n fetchOpenAPI2GeneratorServerListStarted,\n fetchOpenAPI2GeneratorServerListSuccess,\n fetchOpenAPI2GeneratorServerListFailure,\n} from './actions/fetch-openapi2-generator-server-list.js';\nimport {\n fetchOpenAPI2GeneratorClientList,\n fetchOpenAPI2GeneratorClientListStarted,\n fetchOpenAPI2GeneratorClientListSuccess,\n fetchOpenAPI2GeneratorClientListFailure,\n} from './actions/fetch-openapi2-generator-client-list.js';\nimport {\n generateServerCodeFromOpenAPI3,\n generateServerCodeFromOpenAPI3Started,\n generateServerCodeFromOpenAPI3Success,\n generateServerCodeFromOpenAPI3Failure,\n} from './actions/generate-server-code-from-openapi-3.js';\nimport {\n generateClientCodeFromOpenAPI3,\n generateClientCodeFromOpenAPI3Started,\n generateClientCodeFromOpenAPI3Success,\n generateClientCodeFromOpenAPI3Failure,\n} from './actions/generate-client-code-from-openapi-3.js';\nimport {\n generateServerCodeFromOpenAPI20,\n generateServerCodeFromOpenAPI20Started,\n generateServerCodeFromOpenAPI20Success,\n generateServerCodeFromOpenAPI20Failure,\n} from './actions/generate-server-code-from-openapi-20.js';\nimport {\n generateClientCodeFromOpenAPI20,\n generateClientCodeFromOpenAPI20Started,\n generateClientCodeFromOpenAPI20Success,\n generateClientCodeFromOpenAPI20Failure,\n} from './actions/generate-client-code-from-openapi-20.js';\nimport { detectContentTypeSuccess as detectContentTypeSuccessWrap } from './wrap-actions.js';\nimport {\n selectOpenAPI20ConverterURL,\n selectOpenAPI3GeneratorServerListURL,\n selectOpenAPI3GenerateServerURL,\n selectOpenAPI3GeneratorServerListStatus,\n selectOpenAPI3GeneratorServerList,\n selectOpenAPI3GeneratorClientListURL,\n selectOpenAPI3GenerateClientURL,\n selectOpenAPI3GeneratorClientListStatus,\n selectOpenAPI3GeneratorClientList,\n selectOpenAPI2GeneratorServerListURL,\n selectOpenAPI2GenerateServerURL,\n selectOpenAPI2GeneratorServerListStatus,\n selectOpenAPI2GeneratorServerList,\n selectOpenAPI2GeneratorClientListURL,\n selectOpenAPI2GenerateClientURL,\n selectOpenAPI2GeneratorClientListStatus,\n selectOpenAPI2GeneratorClientList,\n} from './selectors.js';\nimport reducers from './reducers.js';\n\nconst TopBarPlugin = () => ({\n components: {\n TopBar,\n TopBarLogo: Logo,\n\n TopBarFileMenu: FileMenu,\n TopBarFileMenuImportUrlMenuItem: ImportUrlMenuItem,\n TopBarFileMenuImportFileMenuItem: ImportFileMenuItem,\n TopBarFileMenuLoadExampleNestedMenu: LoadExampleNestedMenu,\n TopBarFileMenuLoadExampleNestedMenuOpenAPI31PetstoreMenuItem: OpenAPI31PetstoreMenuItem,\n TopBarFileMenuLoadExampleNestedMenuOpenAPI30PetstoreMenuItem: OpenAPI30PetstoreMenuItem,\n TopBarFileMenuLoadExampleNestedMenuOpenAPI20PetstoreMenuItem: OpenAPI20PetstoreMenuItem,\n TopBarFileMenuLoadExampleNestedMenuAsyncAPI26PetstoreMenuItem: AsyncAPI26PetstoreMenuItem,\n TopBarFileMenuLoadExampleNestedMenuAsyncAPI26StreetlightsMenuItem:\n AsyncAPI26StreetlightsMenuItem,\n TopBarFileMenuLoadExampleNestedMenuAPIDesignSystemsMenuItem: APIDesignSystemsMenuItem,\n TopBarFileMenuSaveAsMenuItem: SaveAsMenuItem,\n TopBarFileMenuConvertAndSaveAsJSONMenuItem: ConvertAndSaveAsJSONMenuItem,\n TopBarFileMenuConvertAndSaveAsYAMLMenuItem: ConvertAndSaveAsYAMLMenuItem,\n TopBarFileMenuDownloadResolvedJSONMenuItem: DownloadResolvedJSONMenuItem,\n TopBarFileMenuDownloadResolvedYAMLMenuItem: DownloadResolvedYAMLMenuItem,\n\n TopBarEditMenu: EditMenu,\n TopBarEditMenuClearMenuItem: ClearMenuItem,\n TopBarEditMenuConvertToJSONMenuItem: ConvertToJSONMenuItem,\n TopBarEditMenuConvertToYAMLMenuItem: ConvertToYAMLMenuItem,\n TopBarEditMenuConvertToOpenAPI30xMenuItem: ConvertToOpenAPI30xMenuItem,\n\n TopBarOpenAPI3GenerateServerMenu: OpenAPI3GenerateServerMenu,\n TopBarOpenAPI3GenerateClientMenu: OpenAPI3GenerateClientMenu,\n\n TopBarOpenAPI2GenerateServerMenu: OpenAPI2GenerateServerMenu,\n TopBarOpenAPI2GenerateClientMenu: OpenAPI2GenerateClientMenu,\n\n TopBarAboutMenu: AboutMenu,\n },\n statePlugins: {\n editor: {\n actions: {\n importUrl,\n importUrlStarted,\n importUrlSuccess,\n importUrlFailure,\n\n downloadContent,\n downloadContentStarted,\n downloadContentSuccess,\n downloadContentFailure,\n\n convertContentToJSON,\n convertContentToJSONStarted,\n convertContentToJSONSuccess,\n convertContentToJSONFailure,\n\n convertContentToYAML,\n convertContentToYAMLStarted,\n convertContentToYAMLSuccess,\n convertContentToYAMLFailure,\n\n dereferenceContent,\n dereferenceContentStarted,\n dereferenceContentSuccess,\n dereferenceContentFailure,\n\n convertOpenAPI20ToOpenAPI30x,\n convertOpenAPI20ToOpenAPI30xStarted,\n convertOpenAPI20ToOpenAPI30xSuccess,\n convertOpenAPI20ToOpenAPI30xFailure,\n },\n wrapActions: {\n detectContentTypeSuccess: detectContentTypeSuccessWrap,\n },\n selectors: {\n selectOpenAPI20ConverterURL,\n },\n },\n editorTopBar: {\n actions: {\n fetchOpenAPI3GeneratorServerList,\n fetchOpenAPI3GeneratorServerListStarted,\n fetchOpenAPI3GeneratorServerListSuccess,\n fetchOpenAPI3GeneratorServerListFailure,\n\n fetchOpenAPI3GeneratorClientList,\n fetchOpenAPI3GeneratorClientListStarted,\n fetchOpenAPI3GeneratorClientListSuccess,\n fetchOpenAPI3GeneratorClientListFailure,\n\n fetchOpenAPI2GeneratorServerList,\n fetchOpenAPI2GeneratorServerListStarted,\n fetchOpenAPI2GeneratorServerListSuccess,\n fetchOpenAPI2GeneratorServerListFailure,\n\n fetchOpenAPI2GeneratorClientList,\n fetchOpenAPI2GeneratorClientListStarted,\n fetchOpenAPI2GeneratorClientListSuccess,\n fetchOpenAPI2GeneratorClientListFailure,\n\n generateServerCodeFromOpenAPI3,\n generateServerCodeFromOpenAPI3Started,\n generateServerCodeFromOpenAPI3Success,\n generateServerCodeFromOpenAPI3Failure,\n\n generateClientCodeFromOpenAPI3,\n generateClientCodeFromOpenAPI3Started,\n generateClientCodeFromOpenAPI3Success,\n generateClientCodeFromOpenAPI3Failure,\n\n generateServerCodeFromOpenAPI20,\n generateServerCodeFromOpenAPI20Started,\n generateServerCodeFromOpenAPI20Success,\n generateServerCodeFromOpenAPI20Failure,\n\n generateClientCodeFromOpenAPI20,\n generateClientCodeFromOpenAPI20Started,\n generateClientCodeFromOpenAPI20Success,\n generateClientCodeFromOpenAPI20Failure,\n },\n selectors: {\n selectOpenAPI3GeneratorServerListURL,\n selectOpenAPI3GenerateServerURL,\n selectOpenAPI3GeneratorServerListStatus,\n selectOpenAPI3GeneratorServerList,\n\n selectOpenAPI3GeneratorClientListURL,\n selectOpenAPI3GenerateClientURL,\n selectOpenAPI3GeneratorClientListStatus,\n selectOpenAPI3GeneratorClientList,\n\n selectOpenAPI2GeneratorServerListURL,\n selectOpenAPI2GenerateServerURL,\n selectOpenAPI2GeneratorServerListStatus,\n selectOpenAPI2GeneratorServerList,\n\n selectOpenAPI2GeneratorClientListURL,\n selectOpenAPI2GenerateClientURL,\n selectOpenAPI2GeneratorClientListStatus,\n selectOpenAPI2GeneratorClientList,\n },\n reducers,\n },\n },\n});\n\nexport default TopBarPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_react_modal_ee4a10af__[\"default\"] });","import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactModal from 'react-modal';\n\nconst Modal = ({ isOpen, contentLabel, aria, children }) => {\n return (\n <ReactModal\n isOpen={isOpen}\n contentLabel={contentLabel}\n aria={aria}\n closeTimeoutMS={200}\n className=\"ReactModalDefault\"\n overlayClassName=\"ReactModalOverlay\"\n >\n <div className=\"modal-content\">{children}</div>\n </ReactModal>\n );\n};\n\nModal.propTypes = {\n isOpen: PropTypes.bool,\n contentLabel: PropTypes.string,\n aria: PropTypes.shape({ labelledby: PropTypes.string, describedby: PropTypes.string }),\n children: PropTypes.node,\n};\n\nModal.defaultProps = {\n isOpen: false,\n contentLabel: null,\n aria: {},\n children: null,\n};\n\nexport default Modal;\n","import PropTypes from 'prop-types';\n\nconst ModalHeader = ({ children }) => {\n return <div className=\"modal-header\">{children}</div>;\n};\n\nModalHeader.propTypes = {\n children: PropTypes.node,\n};\n\nModalHeader.defaultProps = {\n children: null,\n};\n\nexport default ModalHeader;\n","import PropTypes from 'prop-types';\n\nconst ModalTitle = ({ id, children }) => (\n <div id={id} className=\"modal-title\">\n {children}\n </div>\n);\n\nModalTitle.propTypes = {\n id: PropTypes.string,\n children: PropTypes.node,\n};\n\nModalTitle.defaultProps = {\n id: null,\n children: null,\n};\n\nexport default ModalTitle;\n","import PropTypes from 'prop-types';\n\nconst ModalBody = ({ children }) => {\n return (\n <div className=\"modal-body\">\n <div>{children}</div>\n </div>\n );\n};\n\nModalBody.propTypes = {\n children: PropTypes.node,\n};\n\nModalBody.defaultProps = {\n children: null,\n};\n\nexport default ModalBody;\n","import PropTypes from 'prop-types';\n\nconst ModalFooter = ({ children }) => {\n return <div className=\"modal-footer\">{children}</div>;\n};\n\nModalFooter.propTypes = {\n children: PropTypes.node,\n};\n\nModalFooter.defaultProps = {\n children: null,\n};\n\nexport default ModalFooter;\n","import { useEffect, useRef } from 'react';\nimport ReactModal from 'react-modal';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const useReactModal = () => {\n const ref = useRef(null);\n\n useEffect(() => {\n ReactModal.setAppElement(ref.current);\n return () => ReactModal.setAppElement(null);\n }, []);\n\n return ref;\n};\n","import Modal from './components/Modal.jsx';\nimport ModalHeader from './components/ModalHeader.jsx';\nimport ModalTitle from './components/ModalTitle.jsx';\nimport ModalBody from './components/ModalBody.jsx';\nimport ModalFooter from './components/ModalFooter.jsx';\nimport { useReactModal } from './hooks.js';\n\nconst ModalsPlugin = () => ({\n rootInjects: {\n useSwaggerEditorReactModal: useReactModal,\n },\n components: {\n Modal,\n ModalHeader,\n ModalTitle,\n ModalBody,\n ModalFooter,\n },\n});\n\nexport default ModalsPlugin;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst AlertDialog = ({ isOpen, title, getComponent, children, onClose }) => {\n const Modal = getComponent('Modal');\n const ModalHeader = getComponent('ModalHeader');\n const ModalTitle = getComponent('ModalTitle');\n const ModalBody = getComponent('ModalBody');\n const ModalFooter = getComponent('ModalFooter');\n\n return (\n <Modal isOpen={isOpen} contentLabel={title}>\n <ModalHeader>\n <button type=\"button\" className=\"close\" onClick={onClose}>\n <span aria-hidden=\"true\">x</span>\n </button>\n <ModalTitle>{title}</ModalTitle>\n </ModalHeader>\n <ModalBody>{children}</ModalBody>\n <ModalFooter>\n <button type=\"button\" className=\"btn btn-primary\" onClick={onClose}>\n OK\n </button>\n </ModalFooter>\n </Modal>\n );\n};\n\nAlertDialog.propTypes = {\n isOpen: PropTypes.bool,\n title: PropTypes.string,\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClose: PropTypes.func,\n};\n\nAlertDialog.defaultProps = {\n isOpen: false,\n title: '',\n children: null,\n onClose: () => {},\n};\n\nexport default AlertDialog;\n","import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst ConfirmDialog = ({ isOpen, title, getComponent, children, onClose }) => {\n const Modal = getComponent('Modal');\n const ModalHeader = getComponent('ModalHeader');\n const ModalTitle = getComponent('ModalTitle');\n const ModalBody = getComponent('ModalBody');\n const ModalFooter = getComponent('ModalFooter');\n\n const handleOKClick = () => {\n onClose(true);\n };\n const handleCancelClick = () => {\n onClose(false);\n };\n const handleCloseClick = () => {\n onClose(false);\n };\n\n return (\n <Modal isOpen={isOpen} contentLabel={title}>\n <ModalHeader>\n <button type=\"button\" className=\"close\" onClick={handleCloseClick}>\n <span aria-hidden=\"true\">x</span>\n </button>\n <ModalTitle>{title}</ModalTitle>\n </ModalHeader>\n <ModalBody>{children}</ModalBody>\n <ModalFooter>\n <button type=\"button\" className=\"btn btn-secondary\" onClick={handleCancelClick}>\n Cancel\n </button>\n <button type=\"button\" className=\"btn btn-primary\" onClick={handleOKClick}>\n OK\n </button>\n </ModalFooter>\n </Modal>\n );\n};\n\nConfirmDialog.propTypes = {\n isOpen: PropTypes.bool,\n title: PropTypes.string,\n getComponent: PropTypes.func.isRequired,\n children: PropTypes.node,\n onClose: PropTypes.func,\n};\n\nConfirmDialog.defaultProps = {\n isOpen: false,\n title: '',\n children: null,\n onClose: () => {},\n};\n\nexport default ConfirmDialog;\n","/**\n * Dialogs inform users about a task and can contain critical information,\n * require decisions, or involve multiple tasks.\n *\n * A Dialog is a type of modal window that appears in front of app content to provide\n * critical information or ask for a decision. Dialogs disable all app functionality when they appear,\n * and remain on screen until confirmed, dismissed, or a required action has been taken. *\n */\n\nimport AlertDialog from './components/AlertDialog.jsx';\nimport ConfirmDialog from './components/ConfirmDialog.jsx';\n\nconst DialogsPlugin = () => ({\n components: {\n AlertDialog,\n ConfirmDialog,\n },\n});\n\nexport default DialogsPlugin;\n","import React, { useState, useRef, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\n/* eslint-disable jsx-a11y/click-events-have-key-events */\n\nconst DropdownMenu = ({ children, label, isLong }) => {\n const ref = useRef(null);\n const [isOpen, setIsOpen] = useState(false);\n\n const handleClickOutside = (event) => {\n if (ref.current !== null && !ref.current.contains(event.target)) {\n setIsOpen(false);\n }\n };\n\n const handleToggleClick = () => {\n setIsOpen(!isOpen);\n };\n\n useEffect(() => {\n document.addEventListener('mousedown', handleClickOutside);\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside);\n };\n }, []);\n\n return (\n <div className={classNames('dd-menu dd-menu-left', { long: isLong })} ref={ref}>\n <span\n className=\"menu-item\"\n role=\"button\"\n tabIndex={0}\n aria-haspopup=\"true\"\n aria-expanded={isOpen}\n onClick={handleToggleClick}\n >\n {label}\n </span>\n {isOpen && (\n <div\n className=\"dd-menu-items\"\n aria-labelledby=\"Dropdown\"\n onClick={handleToggleClick}\n role=\"menu\"\n tabIndex={0}\n >\n <ul className=\"dd-items-left\">{children}</ul>\n </div>\n )}\n </div>\n );\n};\n\nDropdownMenu.propTypes = {\n label: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.element]),\n isLong: PropTypes.bool,\n};\n\nDropdownMenu.defaultProps = {\n children: [],\n isLong: false,\n};\n\nexport default DropdownMenu;\n","import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nconst DropdownMenuNested = ({ children, label, isLong }) => {\n const [isOpen, setIsOpen] = useState(false);\n\n const handleOpen = () => {\n setIsOpen(true);\n };\n const handleClose = () => {\n setIsOpen(false);\n };\n\n return (\n <li\n className={classNames('nested-dd-menu nested-reverse', { long: isLong })}\n onMouseEnter={handleOpen}\n onMouseLeave={handleClose}\n >\n <button type=\"button\">\n {label} <b>></b>\n </button>\n <span className=\"dd-item-ignore\">{isOpen && <ul>{children}</ul>}</span>\n </li>\n );\n};\n\nDropdownMenuNested.propTypes = {\n label: PropTypes.string.isRequired,\n children: PropTypes.oneOfType([PropTypes.array, PropTypes.element]),\n isLong: PropTypes.bool,\n};\n\nDropdownMenuNested.defaultProps = {\n children: [],\n isLong: false,\n};\n\nexport default DropdownMenuNested;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst DropdownMenuItem = ({ children, onClick }) => {\n return (\n <div>\n <li className=\"dropdown-item\">\n <button type=\"button\" onClick={onClick}>\n {children}\n </button>\n </li>\n </div>\n );\n};\n\nDropdownMenuItem.propTypes = {\n children: PropTypes.node.isRequired,\n onClick: PropTypes.func.isRequired,\n};\n\nexport default DropdownMenuItem;\n","const DropdownMenuItemDivider = () => <li role=\"separator\" />;\n\nexport default DropdownMenuItemDivider;\n","import DropdownMenu from './components/DropdownMenu/DropdownMenu.jsx';\nimport DropdownMenuNested from './components/DropdownMenuNested/DropdownMenuNested.jsx';\nimport DropdownMenuItem from './components/DropdownMenuItem/DropdownMenuItem.jsx';\nimport DropdownMenuItemDivider from './components/DropdownMenuItemDivider.jsx';\n\nconst DropdownMenuPlugin = () => ({\n components: {\n DropdownMenu,\n DropdownMenuNested,\n DropdownMenuItem,\n DropdownMenuItemDivider,\n },\n});\n\nexport default DropdownMenuPlugin;\n","/* eslint-disable react/jsx-props-no-spreading */\nimport React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Dropzone = ({ getComponent, useDropzone, children }) => {\n const AlertDialog = getComponent('AlertDialog', true);\n const [\n isDragActive,\n isAlertDialogOpen,\n setIsAlertDialogOpen,\n errorMessage,\n getRootProps,\n getInputProps,\n ] = useDropzone();\n\n const handleAlertDialogClose = () => {\n setIsAlertDialogOpen(false);\n };\n\n return (\n <div className=\"dropzone\" {...getRootProps()}>\n <AlertDialog\n isOpen={isAlertDialogOpen}\n title=\"Uh oh, an error has occurred\"\n onClose={handleAlertDialogClose}\n >\n {errorMessage}\n </AlertDialog>\n <input data-cy=\"dropzone\" {...getInputProps()} />\n {isDragActive ? (\n <div className=\"dropzone__overlay\">\n Please drop an OpenAPI 2.0/3.0/3.1 or AsyncApi 2.x definition in .yaml or .json format.\n </div>\n ) : (\n children\n )}\n </div>\n );\n};\n\nDropzone.propTypes = {\n getComponent: PropTypes.func.isRequired,\n useDropzone: PropTypes.func.isRequired,\n children: PropTypes.node.isRequired,\n};\n\nexport default Dropzone;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"useDropzone\"]: () => __WEBPACK_EXTERNAL_MODULE_react_dropzone_68d11630__.useDropzone });","import { useCallback, useState } from 'react';\nimport { useDropzone as useVendorDropzone } from 'react-dropzone';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const makeUseDropzone = (getSystem) => () => {\n const { editorActions } = getSystem();\n const [isAlertDialogOpen, setIsAlertDialogOpen] = useState(false);\n const [errorMessage, setErrorMessage] = useState('');\n\n const handleFileDrop = useCallback(\n async (acceptedFiles, rejectedFiles) => {\n const someFilesWereRejected = rejectedFiles && rejectedFiles.length > 0;\n const thereIsExactlyOneAcceptedFile = acceptedFiles && acceptedFiles.length === 1;\n\n try {\n if (someFilesWereRejected || !thereIsExactlyOneAcceptedFile) {\n const dropFileErrMessage = `Sorry, there was an error processing your file.\\nPlease drag and drop exactly one file.`;\n setErrorMessage(dropFileErrMessage);\n setIsAlertDialogOpen(true);\n } else {\n const file = acceptedFiles[0];\n const content = await file.text();\n\n editorActions.setContent(content, 'file-drop');\n }\n } catch (error) {\n const importedFileErrMessage = `Sorry, there was an error processing your file. Unable to process as valid YAML or JSON `;\n setErrorMessage(importedFileErrMessage);\n setIsAlertDialogOpen(true);\n }\n },\n [editorActions, setErrorMessage, setIsAlertDialogOpen]\n );\n const { getRootProps, getInputProps, isDragActive } = useVendorDropzone({\n onDrop: handleFileDrop,\n multiple: false,\n noClick: true,\n });\n\n return [\n isDragActive,\n isAlertDialogOpen,\n setIsAlertDialogOpen,\n errorMessage,\n getRootProps,\n getInputProps,\n ];\n};\n","import Dropzone from './components/Dropzone.jsx';\nimport { makeUseDropzone } from './hooks.js';\n\nconst DropzonePlugin = ({ getSystem }) => ({\n rootInjects: {\n useDropzone: makeUseDropzone(getSystem),\n },\n components: {\n Dropzone,\n },\n});\n\nexport default DropzonePlugin;\n","const afterLoad = () => {\n // eslint-disable-next-line no-undef\n const { PACKAGE_VERSION, GIT_COMMIT, GIT_DIRTY, BUILD_TIME } = buildInfo;\n\n globalThis.versions = globalThis.versions || {};\n globalThis.versions.swaggerEditor = Object.create(\n {\n toString() {\n return `${this.version}/${this.gitRevision || 'unknown'}${this.gitDirty ? '-dirty' : ''}`;\n },\n valueOf() {\n return this.toString();\n },\n },\n {\n version: { value: PACKAGE_VERSION, enumerable: true },\n gitRevision: { value: GIT_COMMIT, enumerable: true },\n gitDirty: { value: GIT_DIRTY, enumerable: true },\n buildTimestamp: { value: BUILD_TIME, enumerable: true },\n buildHash: { value: __webpack_hash__, enumerable: true }, // eslint-disable-line camelcase\n }\n );\n};\n\nexport default afterLoad;\n","import afterLoad from './after-load.js';\n\nconst VersionsPlugin = () => ({\n afterLoad,\n});\n\nexport default VersionsPlugin;\n","import PropTypes from 'prop-types';\n\nconst EditorPane = ({ getComponent, useElementResize }) => {\n const Editor = getComponent('Editor', true);\n const EditorPaneBarTop = getComponent('EditorPaneBarTop');\n const EditorPaneBarRight = getComponent('EditorPaneBarRight');\n const EditorPaneBarBottom = getComponent('EditorPaneBarBottom');\n const EditorPaneBarLeft = getComponent('EditorPaneBarLeft');\n const editorContainerRef = useElementResize({ eventName: 'editorcontainerresize' });\n\n return (\n <div className=\"swagger-editor__editor-pane\">\n <div className=\"swagger-editor__editor-pane-container-col\">\n <EditorPaneBarTop />\n <div className=\"swagger-editor__editor-pane-container-row\">\n <EditorPaneBarLeft />\n <div className=\"swagger-editor__editor-container\" ref={editorContainerRef}>\n <Editor />\n </div>\n </div>\n <EditorPaneBarBottom />\n </div>\n <EditorPaneBarRight />\n </div>\n );\n};\n\nEditorPane.propTypes = {\n getComponent: PropTypes.func.isRequired,\n useElementResize: PropTypes.func.isRequired,\n};\n\nexport default EditorPane;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"useResizeDetector\"]: () => __WEBPACK_EXTERNAL_MODULE_react_resize_detector_b0babbde__.useResizeDetector });","import { useCallback, useEffect, useRef, useState } from 'react';\nimport { useResizeDetector } from 'react-resize-detector';\n\nexport const makeUseEditorLifecycle = (getSystem) => (implementation) => {\n const { editorActions } = getSystem();\n const editorRef = useRef(null);\n\n useEffect(() => {\n const { current } = editorRef;\n editorActions.editorSetup(current, implementation);\n\n return () => {\n editorActions.editorTearDown(current, implementation);\n };\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n return editorRef;\n};\n\nexport const useElementResize = ({ eventName }) => {\n const handleResize = useCallback(\n (width, height) => {\n const event = new globalThis.CustomEvent(eventName, {\n detail: { width, height },\n });\n globalThis.dispatchEvent(event);\n },\n [eventName]\n );\n const { ref } = useResizeDetector({\n onResize: handleResize,\n refreshMode: 'debounce',\n refreshRate: 0,\n });\n\n return ref;\n};\n\nexport const useId = () => {\n const randomNumber = Math.floor(Math.random() * 10000000);\n const [id] = useState(String(randomNumber));\n return id;\n};\n","import React, { useCallback, useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\n\n// @TODO(vladimir.gorej@gmail.com): this can be replaced by React.useId in React@18\nimport { useId } from '../../hooks.js';\n\nconst TextareaEditor = ({ isReadOnly, editorActions, editorSelectors, useEditorLifecycle }) => {\n const content = editorSelectors.selectContent();\n const id = useId();\n const editorRef = useEditorLifecycle('textarea');\n const [value, setValue] = useState(content);\n\n const handleChange = useCallback(\n (e) => {\n e.preventDefault();\n setValue(e.target.value);\n editorActions.setContentDebounced(e.target.value, 'editor');\n },\n [editorActions]\n );\n\n useEffect(() => {\n setValue(content);\n }, [content]);\n\n return (\n <textarea\n id={id}\n ref={editorRef}\n readOnly={isReadOnly}\n className=\"swagger-editor__editor-textarea\"\n name=\"content\"\n value={value}\n onChange={handleChange}\n />\n );\n};\n\nTextareaEditor.propTypes = {\n isReadOnly: PropTypes.bool,\n editorActions: PropTypes.shape({\n setContentDebounced: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n }).isRequired,\n useEditorLifecycle: PropTypes.func.isRequired,\n};\n\nTextareaEditor.defaultProps = {\n isReadOnly: false,\n};\n\nexport default TextareaEditor;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPaneBarTop = ({ renderChildren, renderControls }) => {\n return (\n <div className=\"swagger-editor__editor-pane-bar swagger-editor__editor-pane-bar--top\">\n <div className=\"swagger-editor__toolbar-horizontal\">{renderControls(null)}</div>\n {renderChildren(null)}\n </div>\n );\n};\n\nEditorPaneBarTop.propTypes = {\n renderChildren: PropTypes.func,\n renderControls: PropTypes.func,\n};\n\nEditorPaneBarTop.defaultProps = {\n renderChildren: (children) => children,\n renderControls: (controls) => controls,\n};\n\nexport default EditorPaneBarTop;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPaneBarRight = ({ renderChildren, renderControls }) => {\n return (\n <div className=\"swagger-editor__editor-pane-bar swagger-editor__editor-pane-bar--right\">\n <div className=\"swagger-editor__toolbar-vertical\">{renderControls(null)}</div>\n {renderChildren(null)}\n </div>\n );\n};\n\nEditorPaneBarRight.propTypes = {\n renderChildren: PropTypes.func,\n renderControls: PropTypes.func,\n};\n\nEditorPaneBarRight.defaultProps = {\n renderChildren: (children) => children,\n renderControls: (controls) => controls,\n};\n\nexport default EditorPaneBarRight;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPaneBarBottom = ({ renderChildren, renderControls }) => {\n return (\n <div className=\"swagger-editor__editor-pane-bar swagger-editor__editor-pane-bar--bottom\">\n <div className=\"swagger-editor__toolbar-horizontal\">{renderControls(null)}</div>\n {renderChildren(null)}\n </div>\n );\n};\n\nEditorPaneBarBottom.propTypes = {\n renderChildren: PropTypes.func,\n renderControls: PropTypes.func,\n};\n\nEditorPaneBarBottom.defaultProps = {\n renderChildren: (children) => children,\n renderControls: (controls) => controls,\n};\n\nexport default EditorPaneBarBottom;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPaneBarLeft = ({ renderChildren, renderControls }) => {\n return (\n <div className=\"swagger-editor__editor-pane-bar swagger-editor__editor-pane-bar--left\">\n <div className=\"swagger-editor__toolbar-vertical\">{renderControls(null)}</div>\n {renderChildren(null)}\n </div>\n );\n};\n\nEditorPaneBarLeft.propTypes = {\n renderChildren: PropTypes.func,\n renderControls: PropTypes.func,\n};\n\nEditorPaneBarLeft.defaultProps = {\n renderChildren: (children) => children,\n renderControls: (controls) => controls,\n};\n\nexport default EditorPaneBarLeft;\n","export const EDITOR_SETUP = 'editor_setup';\nexport const EDITOR_TEAR_DOWN = 'editor_tear_down';\nexport const EDITOR_SET_CONTENT = 'editor_set_content';\nexport const EDITOR_CLEAR_CONTENT = 'editor_clear_content';\n\nexport const editorSetup = (editorInstance, implementation = 'textarea') => ({\n type: EDITOR_SETUP,\n payload: editorInstance,\n meta: ['editor', implementation],\n});\n\nexport const editorTearDown = (editorInstance, implementation = 'textarea') => ({\n type: EDITOR_TEAR_DOWN,\n payload: editorInstance,\n meta: ['editor', implementation],\n});\n\nexport const setContent = (content) => ({\n type: EDITOR_SET_CONTENT,\n payload: content,\n meta: {},\n});\n\nexport const clearContent = () => ({\n type: EDITOR_CLEAR_CONTENT,\n});\n","import { EDITOR_SET_CONTENT, EDITOR_SETUP, EDITOR_TEAR_DOWN } from './actions.js';\n\nexport const initialState = {\n content: '',\n id: null,\n};\n\nconst reducers = {\n [EDITOR_SET_CONTENT]: (state, action) => {\n return state.set('content', action.payload);\n },\n [EDITOR_SETUP]: (state, action) => {\n if (!action.meta.includes('textarea')) {\n return state;\n }\n return state.set('id', action.payload.id);\n },\n [EDITOR_TEAR_DOWN]: (state, action) => {\n if (!action.meta.includes('textarea')) {\n return state;\n }\n if (state.get('id') !== action.payload.id) {\n return state;\n }\n\n return state.delete('id');\n },\n};\n\nexport default reducers;\n","import { initialState } from './reducers.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const selectContent = (state) => state.get('content', initialState.content);\n\nexport const selectId = (state) => state.get('id', initialState.id);\n\nexport const selectEditor = () => (system) => {\n const id = system.editorSelectors.selectId();\n return document.getElementById(id);\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_debounce_js_35379ba8__[\"default\"] });","import debounce from 'lodash/debounce.js';\n\nimport createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\nexport const setContentDebouncedImpl = debounce((content, contentOrigin, system) => {\n system.editorActions.setContent(content, contentOrigin);\n}, 500);\n\nexport const editorSetup = (oriAction) => (editorInstance, implementation) => {\n oriAction(editorInstance, implementation);\n\n globalThis.editor = editorInstance;\n globalThis[implementation] = editorInstance;\n};\n\nexport const editorTearDown = (oriAction) => (editorInstance, implementation) => {\n oriAction(editorInstance, implementation);\n\n delete globalThis.editor;\n delete globalThis[implementation];\n};\n\nexport const setContentDebounced = (oriAction, system) => (content, contentOrigin) => {\n setContentDebouncedImpl(content, contentOrigin, system);\n};\n\nexport const clearContent = createSafeActionWrapper((oriAction, system) => () => {\n system.editorActions.setContent('', 'clear');\n});\n\n/**\n * This wrapped action makes sure that setting initial definition\n * via `spec` or `url` SwaggerUI option is propagated to editor content.\n */\nexport const updateSpec = (oriAction, system) => (spec, origin) => {\n const { editorActions, editorSelectors } = system;\n\n const fsa = oriAction(spec, origin); // Flux Standard Action(FSA): action objects emitted through redux\n\n if (origin !== 'swagger-editor' && editorSelectors.selectContent() !== spec) {\n editorActions.setContent(spec);\n }\n\n return fsa;\n};\n","import EditorPane from './components/EditorPane/EditorPane.jsx';\nimport TextareaEditor from './components/TextareaEditor/TextareaEditor.jsx';\nimport EditorPaneBarTop from './components/EditorPaneBars/EditorPaneBarTop.jsx';\nimport EditorPaneBarRight from './components/EditorPaneBars/EditorPaneBarRight.jsx';\nimport EditorPaneBarBottom from './components/EditorPaneBars/EditorPaneBarBottom.jsx';\nimport EditorPaneBarLeft from './components/EditorPaneBars/EditorPaneBarLeft.jsx';\nimport { editorSetup, editorTearDown, setContent, clearContent } from './actions.js';\nimport { selectContent, selectId, selectEditor } from './selectors.js';\nimport reducers from './reducers.js';\nimport {\n editorSetup as editorSetupWrap,\n editorTearDown as editorTearDownWrap,\n setContentDebounced as setContentDebouncedWrap,\n updateSpec as updateSpecWrap,\n clearContent as clearContentWrap,\n} from './wrap-actions.js';\nimport { makeUseEditorLifecycle, useElementResize } from './hooks.js';\n\nconst EditorTextareaPlugin = ({ getSystem }) => ({\n rootInjects: {\n useEditorLifecycle: makeUseEditorLifecycle(getSystem),\n useElementResize,\n },\n components: {\n EditorPane,\n EditorPaneBarTop,\n EditorPaneBarRight,\n EditorPaneBarBottom,\n EditorPaneBarLeft,\n Editor: TextareaEditor,\n TextareaEditor,\n },\n statePlugins: {\n editor: {\n actions: {\n editorSetup,\n editorTearDown,\n setContent,\n setContentDebounced: setContent,\n clearContent,\n },\n wrapActions: {\n editorSetup: editorSetupWrap,\n editorTearDown: editorTearDownWrap,\n setContentDebounced: setContentDebouncedWrap,\n clearContent: clearContentWrap,\n },\n selectors: {\n selectContent,\n selectId,\n selectEditor,\n },\n reducers,\n },\n spec: {\n wrapActions: {\n updateSpec: updateSpecWrap,\n },\n },\n },\n});\n\nexport default EditorTextareaPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_noop_js_57fa4577__[\"default\"] });","const darkThemeMap = {\n parameter: 5,\n specVersion: 6,\n version: 6,\n 'api-version': 6,\n 'spec-version': 6,\n info: 6,\n operation: {\n default: 7,\n 'httpMethod-GET': 5, // light blue\n 'httpMethod-POST': 7, // light green\n },\n key: {\n string: 0,\n number: 5,\n },\n value: {\n string: 0,\n number: 5,\n },\n pathItem: 13,\n components: 9,\n 'components-parameters': 17,\n 'components-schemas': 17,\n 'components-messages': 17,\n 'components-request-bodies': 17,\n 'components-examples': 17,\n 'components-headers': 17,\n 'components-security-schemes': 17,\n 'components-links': 17,\n 'components-callbacks': 17,\n 'components-path-items': 17,\n 'openapi-reference': 9,\n 'server-url': 0,\n 'Asyncapi-reference': 9,\n 'json-reference': 9,\n 'reference-element': 7,\n 'reference-value': 13,\n content: 5,\n mediaType: 5,\n openapi: 6,\n parameters: 17,\n paths: 17,\n reference: 9,\n requestBody: 12,\n response: 12,\n responses: 17,\n schema: 9,\n server: 5,\n servers: 17,\n title: 6,\n asyncApiVersion: 6,\n channelItem: 13,\n channels: 17,\n tags: 6,\n webhooks: 6,\n contact: 6,\n license: 6,\n externalDocumentation: 6,\n 'server-description': 6,\n 'server-variables': 6,\n 'operation-callbacks': 6,\n callback: 6,\n messageTraits: 17,\n operationTraits: 17,\n};\n\nexport const getStyleMetadataDark = (type, modifiers) => {\n let color = 5;\n\n if (modifiers && modifiers.length > 0) {\n color = darkThemeMap[type][modifiers[0]] ? darkThemeMap[type][modifiers[0]] : 5;\n } else {\n color = darkThemeMap[type];\n if (!color) {\n color = darkThemeMap[type] && darkThemeMap[type].default ? darkThemeMap[type].default : 5;\n }\n }\n\n return {\n foreground: color,\n bold: false,\n underline: false,\n italic: false,\n };\n};\n\nexport default {\n base: 'vs-dark',\n inherit: true,\n rules: [\n // top-level tokens for OpenAPI Object: bold, with light purple-white\n { token: 'openapi', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'info', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'jsonSchemaDialect', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'servers', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'paths', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'webhooks', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'components', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'security', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'tags', foreground: '#d0d0e3', fontStyle: 'bold' },\n { token: 'externalDocumentation', foreground: '#d0d0e3', fontStyle: 'bold' },\n // additional top-level tokens for AsyncAPI Object: bold, with light purple-white\n { token: 'spec-version', foreground: '#d0d0e3', fontStyle: 'bold' }, // e.g. asyncapi\n { token: 'channels', foreground: '#d0d0e3', fontStyle: 'bold' },\n // operation tokens: swagger-ui-post=green, swagger-ui-get=blue\n { token: 'operation', foreground: '#66afce', fontStyle: 'bold' }, // light blue\n { token: 'operation.httpMethod-GET', foreground: '#0099ff', fontStyle: 'bold' }, // blue\n { token: 'operation.httpMethod-POST', foreground: '#00cc99', fontStyle: 'bold' }, // teal\n // parameters tokens: purple\n { token: 'parameters', foreground: '#C678DD', fontStyle: 'italic' },\n { token: 'parameter', foreground: '#C678DD', fontStyle: 'italic' },\n { token: 'components-parameters', foreground: '#C678DD', fontStyle: 'bold' },\n // messages tokens: purple\n { token: 'components-messages', foreground: '#C678DD', fontStyle: 'bold' },\n { token: 'messages', foreground: '#C678DD', fontStyle: 'italic' },\n { token: 'message', foreground: '#C678DD' },\n // reference & $refs tokens: orange\n { token: 'reference-element', foreground: '#ff5500', fontStyle: 'bold' },\n { token: 'reference-value', foreground: '#ffddcc', fontStyle: 'italic' },\n // components/{schemas}/schema: bold olive green\n { token: 'components-schemas', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'schema', foreground: '#ceca84', fontStyle: 'bold' },\n // pathItem & channelItem: bold olive green\n { token: 'pathItem', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'channelItem', foreground: '#ceca84', fontStyle: 'bold' },\n // request & response: olive green\n { token: 'requestBody', foreground: '#ceca84', fontStyle: 'italic' },\n { token: 'responses', foreground: '#ceca84', fontStyle: 'italic' },\n { token: 'components-responses', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-request-bodies', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'content', foreground: '#ceca84' },\n { token: 'mediaType', foreground: '#ceca84' },\n { token: 'response', foreground: '#ceca84' },\n { token: 'server', foreground: '#ceca84' },\n // additional components: bold olive green\n { token: 'components-examples', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-headers', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-links', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-security-schemes', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-callbacks', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-pathItems', foreground: '#ceca84', fontStyle: 'bold' },\n { token: 'components-path-items', foreground: '#ceca84', fontStyle: 'bold' },\n // plain value: green\n { token: 'value', foreground: '#98C379' },\n { token: 'value.string', foreground: '#98C379' },\n { token: 'value.number', foreground: '#98C379' },\n // plain key: pinkish-orange, which appears light orange\n { token: 'key.string', foreground: '#e8b9bb' },\n { token: 'key.number', foreground: '#e8b9bb' },\n // misc token key/value pair: sky blue\n { token: 'api-version', foreground: '#1de2fa' }, // version inside of info object\n { token: 'server-url', foreground: '#1de2fa' },\n // misc token object: sky blue\n { token: 'callback', foreground: '#1de2fa' },\n { token: 'contact', foreground: '#1de2fa' },\n { token: 'discriminator', foreground: '#1de2fa' },\n { token: 'example', foreground: '#1de2fa' }, // only when examples.example\n { token: 'examples', foreground: '#1de2fa' },\n { token: 'header', foreground: '#1de2fa' },\n { token: 'license', foreground: '#1de2fa' },\n { token: 'oAuthFlow', foreground: '#1de2fa' },\n { token: 'oAuthFlows', foreground: '#1de2fa' },\n { token: 'operation-example', foreground: '#1de2fa' },\n { token: 'operation-callbacks', foreground: '#1de2fa' },\n { token: 'securityScheme', foreground: '#1de2fa' },\n { token: 'server-variables', foreground: '#1de2fa' },\n { token: 'messageTrait', foreground: '#1de2fa' },\n { token: 'operationTrait', foreground: '#1de2fa' },\n // tokens exist in apidom-ls, but not working in editor, sky blue\n { token: 'version', foreground: '#1de2fa' },\n { token: 'title', foreground: '#1de2fa' },\n { token: 'specVersion', foreground: '#1de2fa' },\n { token: 'asyncApiVersion', foreground: '#1de2fa' },\n // tokens exist in apidom-ls, but not working in editor, may be orange-ish to match other reference(s)\n { token: 'openapi-reference', foreground: '#ff9966' },\n { token: 'reference', foreground: '#ff9966' },\n { token: 'Asyncapi-reference', foreground: '#ff9966' },\n { token: 'json-reference', foreground: '#ff9966' },\n ],\n colors: {\n 'editor.background': '#282c34',\n 'editor.foreground': '#abb2bf',\n 'editorLineNumber.foreground': '#636D83',\n 'editorLineNumber.activeForeground': '#ABB2BF',\n 'editorHoverWidget.background': '#282c34',\n 'editorHoverWidget.border': '#636D83',\n 'minimap.background': '#282c34',\n },\n};\n","const lightThemeMap = {\n parameter: 5,\n specVersion: 6,\n version: 6,\n 'api-version': 6,\n 'spec-version': 6,\n info: 6,\n operation: {\n default: 7,\n 'httpMethod-GET': 5, // light blue\n 'httpMethod-POST': 7, // light green\n },\n key: {\n string: 0,\n number: 5,\n },\n value: {\n string: 0,\n number: 5,\n },\n pathItem: 13,\n components: 9,\n 'components-parameters': 17,\n 'components-schemas': 17,\n 'components-messages': 17,\n 'components-request-bodies': 17,\n 'components-examples': 17,\n 'components-headers': 17,\n 'components-security-schemes': 17,\n 'components-links': 17,\n 'components-callbacks': 17,\n 'components-path-items': 17,\n 'openapi-reference': 9,\n 'server-url': 0,\n 'Asyncapi-reference': 9,\n 'json-reference': 9,\n 'reference-element': 7,\n 'reference-value': 13,\n content: 5,\n mediaType: 5,\n openapi: 6,\n parameters: 17,\n paths: 17,\n reference: 9,\n requestBody: 12,\n response: 12,\n responses: 17,\n schema: 9,\n server: 5,\n servers: 17,\n title: 6,\n asyncApiVersion: 6,\n channelItem: 13,\n channels: 17,\n tags: 6,\n webhooks: 6,\n contact: 6,\n license: 6,\n externalDocumentation: 6,\n 'server-description': 6,\n 'server-variables': 6,\n 'operation-callbacks': 6,\n callback: 6,\n messageTraits: 17,\n operationTraits: 17,\n};\n\nexport const getStyleMetadataLight = (type, modifiers) => {\n let color = 5;\n\n if (modifiers && modifiers.length > 0) {\n color = lightThemeMap[type][modifiers[0]] ? lightThemeMap[type][modifiers[0]] : 5;\n } else {\n color = lightThemeMap[type];\n if (!color) {\n color = lightThemeMap[type] && lightThemeMap[type].default ? lightThemeMap[type].default : 5;\n }\n }\n\n return {\n foreground: color,\n bold: false,\n underline: false,\n italic: false,\n };\n};\n\nexport default {\n base: 'vs', // can also be vs-dark or hc-black\n inherit: true, // can also be false to completely replace the builtin rules\n rules: [\n // top-level tokens for OpenAPI Object: bold dark grey with purple tint\n { token: 'openapi', foreground: '#000033', fontStyle: 'bold' },\n { token: 'info', foreground: '#000033', fontStyle: 'bold' },\n { token: 'jsonSchemaDialect', foreground: '#000033', fontStyle: 'bold' },\n { token: 'servers', foreground: '#000033', fontStyle: 'bold' },\n { token: 'paths', foreground: '#000033', fontStyle: 'bold' },\n { token: 'webhooks', foreground: '#000033', fontStyle: 'bold' },\n { token: 'components', foreground: '#000033', fontStyle: 'bold' },\n { token: 'security', foreground: '#000033', fontStyle: 'bold' },\n { token: 'tags', foreground: '#000033', fontStyle: 'bold' },\n { token: 'externalDocumentation', foreground: '#000033', fontStyle: 'bold' },\n // additional top-level tokens for AsyncAPI Object: bold dark grey with purple tint\n { token: 'spec-version', foreground: '#000033', fontStyle: 'bold' }, // e.g. asyncapi\n { token: 'channels', foreground: '#000033', fontStyle: 'bold' },\n // operation tokens: swagger-ui-post=green, swagger-ui-get=blue\n { token: 'operation', foreground: '#66afce', fontStyle: 'bold' }, // light blue\n { token: 'operation.httpMethod-GET', foreground: '#006699', fontStyle: 'bold' }, // blue-grey\n { token: 'operation.httpMethod-POST', foreground: '#339966', fontStyle: 'bold' }, // dark teal\n // parameters tokens: purple\n { token: 'parameters', foreground: '#993399', fontStyle: 'italic' },\n { token: 'parameter', foreground: '#993399', fontStyle: 'italic' },\n { token: 'components-parameters', foreground: '#993399', fontStyle: 'bold' },\n // messages tokens: purple\n { token: 'components-messages', foreground: '#993399', fontStyle: 'bold' },\n { token: 'messages', foreground: '#993399', fontStyle: 'italic' },\n { token: 'message', foreground: '#993399' },\n // reference & $refs tokens: orange\n { token: 'reference-element', foreground: '#cc3300', fontStyle: 'bold' },\n { token: 'reference-value', foreground: '#ff5500', fontStyle: 'italic' },\n // components/{schemas}/schema: bold olive green\n { token: 'components-schemas', foreground: '#666633', fontStyle: 'bold' },\n { token: 'schema', foreground: '#666633', fontStyle: 'bold' },\n // pathItem & channelItem: bold olive green\n { token: 'pathItem', foreground: '#666633', fontStyle: 'bold' },\n { token: 'channelItem', foreground: '#666633', fontStyle: 'bold' },\n // request & response: olive green\n { token: 'requestBody', foreground: '#666633', fontStyle: 'italic' },\n { token: 'responses', foreground: '#666633', fontStyle: 'italic' },\n { token: 'components-responses', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-request-bodies', foreground: '#666633', fontStyle: 'bold' },\n { token: 'content', foreground: '#666633' },\n { token: 'mediaType', foreground: '#666633' },\n { token: 'response', foreground: '#666633' },\n { token: 'server', foreground: '#666633' },\n // additional components: bold olive green\n { token: 'components-examples', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-headers', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-links', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-security-schemes', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-callbacks', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-pathItems', foreground: '#666633', fontStyle: 'bold' },\n { token: 'components-path-items', foreground: '#666633', fontStyle: 'bold' },\n // plain value: green\n { token: 'value', foreground: '#339933' },\n { token: 'value.string', foreground: '#339933' },\n { token: 'value.number', foreground: '#339933' },\n // plain key: pumpkin\n { token: 'key.string', foreground: '#cc6600' },\n { token: 'key.number', foreground: '#cc6600' },\n // misc token key/value pair: sky blue\n { token: 'api-version', foreground: '#0099cc' }, // version inside of info object\n { token: 'server-url', foreground: '#0099cc' },\n // misc token object: sky blue\n { token: 'callback', foreground: '#0099cc' },\n { token: 'contact', foreground: '#0099cc' },\n { token: 'discriminator', foreground: '#0099cc' },\n { token: 'example', foreground: '#0099cc' }, // only when examples.example\n { token: 'examples', foreground: '#0099cc' },\n { token: 'header', foreground: '#0099cc' },\n { token: 'license', foreground: '#0099cc' },\n { token: 'oAuthFlow', foreground: '#0099cc' },\n { token: 'oAuthFlows', foreground: '#0099cc' },\n { token: 'operation-example', foreground: '#0099cc' },\n { token: 'operation-callbacks', foreground: '#0099cc' },\n { token: 'securityScheme', foreground: '#0099cc' },\n { token: 'server-variables', foreground: '#0099cc' },\n { token: 'messageTrait', foreground: '#0099cc' },\n { token: 'operationTrait', foreground: '#0099cc' },\n // tokens exist in apidom-ls, but not working in editor, sky blue\n { token: 'version', foreground: '#0099cc' },\n { token: 'title', foreground: '#0099cc' },\n { token: 'specVersion', foreground: '#0099cc' },\n { token: 'asyncApiVersion', foreground: '#0099cc' },\n // tokens exist in apidom-ls, but not working in editor, may be orange-ish to match other reference(s)\n { token: 'openapi-reference', foreground: '#ff9966' },\n { token: 'reference', foreground: '#ff9966' },\n { token: 'Asyncapi-reference', foreground: '#ff9966' },\n { token: 'json-reference', foreground: '#ff9966' },\n ],\n colors: {\n 'editor.background': '#fdf6e3',\n 'editor.foreground': '#383a42',\n 'editorLineNumber.foreground': '#9D9D9F',\n 'editorLineNumber.activeForeground': '#383A42',\n 'editorHoverWidget.background': '#fdf6e3',\n 'editorHoverWidget.border': '#9D9D9F',\n 'minimap.background': '#fdf6e3',\n },\n};\n","import { useEffect, useRef } from 'react';\n\nexport const useMount = (effect) => {\n useEffect(effect, []); // eslint-disable-line react-hooks/exhaustive-deps\n};\n\nexport const useUpdate = (effect, deps, applyChanges = true) => {\n const isInitialMount = useRef(true);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(\n isInitialMount.current || !applyChanges\n ? () => {\n isInitialMount.current = false;\n }\n : effect,\n deps\n );\n};\n\nexport const useSmoothResize = ({ eventName, editorRef }) => {\n useEffect(() => {\n let lastDimensions = {};\n let currentDimensions = {};\n let breakAnimationFrame = false;\n\n const handleEditorContainerResize = ({ detail }) => {\n currentDimensions = detail;\n };\n\n function handleEditorResize() {\n if (breakAnimationFrame) return;\n\n if (\n lastDimensions.width !== currentDimensions.width ||\n lastDimensions.height !== currentDimensions.height\n ) {\n editorRef.current.layout();\n lastDimensions = currentDimensions;\n }\n\n globalThis.requestAnimationFrame(handleEditorResize);\n }\n\n globalThis.requestAnimationFrame(handleEditorResize);\n\n globalThis.addEventListener(eventName, handleEditorContainerResize);\n\n return () => {\n breakAnimationFrame = true;\n globalThis.removeEventListener(eventName, handleEditorContainerResize);\n };\n }, [eventName, editorRef]);\n};\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport * as monaco from 'monaco-editor';\nimport noop from 'lodash/noop.js';\n\nimport seVsDarkTheme from '../../themes/se-vs-dark.js';\nimport seVsLightTheme from '../../themes/se-vs-light.js';\nimport { useMount, useUpdate, useSmoothResize } from './hooks.js';\n\n/**\n * Hooks in MonacoEditor component are divided into 4 categories:\n * - hooks that are executed only on mount (useMount)\n * - hooks that are executed on mount and when values change (useEffect)\n * - hooks that are executed only when values change after the mount (useUpdate)\n * - rest of the hooks\n */\n\nconst MonacoEditor = ({\n value,\n theme,\n language,\n isReadOnly,\n onMount,\n onWillUnmount,\n onChange,\n onEditorMarkersDidChange,\n}) => {\n const containerRef = useRef(null);\n const editorRef = useRef(null);\n const subscriptionRef = useRef(null);\n const valueRef = useRef(value);\n const [isEditorReady, setIsEditorReady] = useState(false);\n\n const createEditor = useCallback(() => {\n editorRef.current = monaco.editor.create(containerRef.current, {\n value,\n language,\n // semantic tokens provider is disabled by default; https://github.com/microsoft/monaco-editor/issues/1833\n 'semanticHighlighting.enabled': true,\n theme,\n glyphMargin: true,\n lightbulb: {\n enabled: true,\n },\n lineNumbers: 'on',\n autoIndent: 'full',\n formatOnPaste: true,\n formatOnType: true,\n wordWrap: 'on',\n minimap: {\n enabled: true,\n },\n domReadOnly: isReadOnly,\n readOnly: isReadOnly,\n wordBasedSuggestions: false,\n quickSuggestions: true,\n quickSuggestionsDelay: 300,\n fixedOverflowWidgets: true,\n 'bracketPairColorization.enabled': true,\n suggest: {\n snippetsPreventQuickSuggestions: false,\n },\n renderWhitespace: true,\n matchOnWordStartOnly: false,\n });\n\n editorRef.current.getModel().updateOptions({ tabSize: 2 });\n setIsEditorReady(true);\n }, [value, language, theme, isReadOnly]);\n\n const disposeEditor = useCallback(() => {\n onWillUnmount(editorRef.current);\n subscriptionRef.current?.dispose();\n editorRef.current.getModel()?.dispose();\n editorRef.current.dispose();\n }, [onWillUnmount]);\n\n // disposing of Monaco Editor\n useMount(() => () => {\n if (editorRef.current) {\n disposeEditor();\n }\n });\n\n // defining the custom themes and setting the active one\n useMount(() => {\n monaco.editor.defineTheme('se-vs-dark', seVsDarkTheme);\n monaco.editor.defineTheme('se-vs-light', seVsLightTheme);\n });\n\n // update language\n useUpdate(\n () => {\n monaco.editor.setModelLanguage(editorRef.current.getModel(), language);\n },\n [language],\n isEditorReady\n );\n\n // track model changes from outside of editor\n useUpdate(\n () => {\n valueRef.current = value;\n if (editorRef.current.getOption(monaco.editor.EditorOption.readOnly)) {\n editorRef.current.setValue(value);\n } else if (value !== editorRef.current.getValue()) {\n editorRef.current.executeEdits('', [\n {\n range: editorRef.current.getModel().getFullModelRange(),\n text: value,\n forceMoveMarkers: true,\n },\n ]);\n\n editorRef.current.pushUndoStop();\n }\n },\n [value],\n isEditorReady\n );\n\n // setting Monaco Editor to write/read mode\n useUpdate(\n () => {\n editorRef.current.updateOptions({ domReadOnly: isReadOnly, readOnly: isReadOnly });\n },\n [isReadOnly],\n isEditorReady\n );\n\n // settings the theme if changed\n useEffect(() => {\n monaco.editor.setTheme(theme);\n }, [theme]);\n\n // register listener for validation markers\n useEffect(() => {\n if (!isEditorReady) return undefined;\n\n const disposable = monaco.editor.onDidChangeMarkers((uris) => {\n const { uri: currentModelUri } = editorRef.current.getModel();\n const hasCurrentModelChanged = uris.find((uri) => String(uri) === String(currentModelUri));\n\n if (hasCurrentModelChanged) {\n const markers = monaco.editor.getModelMarkers({ resource: currentModelUri });\n onEditorMarkersDidChange(markers);\n }\n });\n\n return () => {\n disposable.dispose();\n };\n }, [isEditorReady, onEditorMarkersDidChange]);\n\n // propagate changes from editor to handler\n useEffect(() => {\n if (isEditorReady) {\n subscriptionRef.current?.dispose();\n subscriptionRef.current = editorRef.current?.onDidChangeModelContent((event) => {\n const editorValue = editorRef.current.getValue();\n\n if (valueRef.current !== editorValue) {\n valueRef.current = editorValue;\n onChange(editorValue, event);\n }\n });\n }\n }, [isEditorReady, onChange]);\n\n // allow editor to resize to available space\n useEffect(() => {\n if (isEditorReady) {\n editorRef.current.layout();\n }\n }, [isEditorReady]);\n\n // notify listeners that Monaco Editor instance has been created\n useEffect(() => {\n if (isEditorReady) {\n onMount(editorRef.current);\n }\n }, [isEditorReady, onMount]);\n\n // creating Editor instance as last effect\n useEffect(() => {\n if (!isEditorReady && containerRef.current) {\n createEditor();\n }\n }, [isEditorReady, createEditor]);\n\n // handle smooth resizing of Monaco Editor\n useSmoothResize({ eventName: 'editorcontainerresize', editorRef });\n\n return <div ref={containerRef} className=\"swagger-editor__editor-monaco\" />;\n};\n\nMonacoEditor.propTypes = {\n value: PropTypes.string.isRequired,\n language: PropTypes.string.isRequired,\n theme: PropTypes.string.isRequired,\n isReadOnly: PropTypes.bool,\n onMount: PropTypes.func,\n onWillUnmount: PropTypes.func,\n onChange: PropTypes.func,\n onEditorMarkersDidChange: PropTypes.func,\n};\n\nMonacoEditor.defaultProps = {\n isReadOnly: false,\n onMount: noop,\n onWillUnmount: noop,\n onChange: noop,\n onEditorMarkersDidChange: noop,\n};\n\nexport default MonacoEditor;\n","import React, { useCallback } from 'react';\nimport PropTypes from 'prop-types';\n\nimport MonacoEditor from './MonacoEditor.jsx';\n\nconst MonacoEditorContainer = ({ editorActions, editorSelectors, isReadOnly }) => {\n const theme = editorSelectors.selectTheme();\n const value = editorSelectors.selectContent();\n const language = editorSelectors.selectLanguage();\n\n const handleEditorDidMount = useCallback(\n (editor) => {\n editor.focus();\n editorActions.editorSetup(editor, 'monaco');\n },\n [editorActions]\n );\n\n const handleEditorWillUnmount = useCallback(\n (editor) => {\n editorActions.editorTearDown(editor, 'monaco');\n },\n [editorActions]\n );\n\n const handleChangeEditorValue = useCallback(\n (newValue) => {\n editorActions.setContentDebounced(newValue, 'editor');\n },\n [editorActions]\n );\n\n const handleEditorMarkersDidChange = useCallback(\n (markers) => {\n editorActions.setMarkers(markers);\n },\n [editorActions]\n );\n\n return (\n <MonacoEditor\n language={language}\n theme={theme}\n value={value}\n isReadOnly={isReadOnly}\n onChange={handleChangeEditorValue}\n onMount={handleEditorDidMount}\n onWillUnmount={handleEditorWillUnmount}\n onEditorMarkersDidChange={handleEditorMarkersDidChange}\n />\n );\n};\n\nMonacoEditorContainer.propTypes = {\n isReadOnly: PropTypes.bool,\n editorActions: PropTypes.shape({\n editorSetup: PropTypes.func.isRequired,\n editorTearDown: PropTypes.func.isRequired,\n setContentDebounced: PropTypes.func.isRequired,\n setMarkers: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectLanguage: PropTypes.func.isRequired,\n selectContent: PropTypes.func.isRequired,\n selectTheme: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nMonacoEditorContainer.defaultProps = {\n isReadOnly: false,\n};\n\nexport default MonacoEditorContainer;\n","import React, { useCallback } from 'react';\nimport PropTypes from 'prop-types';\n\nconst ValidationPane = ({\n editorSelectors,\n editorActions,\n getComponent,\n alwaysDisplayHeading,\n onValidationClick,\n}) => {\n const markers = editorSelectors.selectMarkers();\n const ValidationTable = getComponent('ValidationTable');\n const showTable = alwaysDisplayHeading || markers.length > 0;\n\n const handleValidationClick = useCallback(\n (event, marker) => {\n const position = { lineNumber: marker.startLineNumber, column: marker.startColumn };\n\n onValidationClick(marker);\n editorActions.setPosition(position);\n },\n [onValidationClick, editorActions]\n );\n\n return (\n <div className=\"swagger-editor__validation-pane\">\n {showTable && <ValidationTable data={markers} onRowClick={handleValidationClick} />}\n </div>\n );\n};\n\nValidationPane.propTypes = {\n alwaysDisplayHeading: PropTypes.bool,\n editorActions: PropTypes.shape({\n setPosition: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectMarkers: PropTypes.func.isRequired,\n }).isRequired,\n getComponent: PropTypes.func.isRequired,\n onValidationClick: PropTypes.func,\n};\n\nValidationPane.defaultProps = {\n alwaysDisplayHeading: false,\n onValidationClick: () => {},\n};\n\nexport default ValidationPane;\n","import React, { memo } from 'react';\nimport PropTypes from 'prop-types';\n\nimport errorIcon from '../../assets/error-icon.svg';\nimport warningIcon from '../../assets/warning-icon.svg';\nimport infoIcon from '../../assets/info-icon.svg';\nimport hintIcon from '../../assets/hint-icon.svg';\n\nconst SeverityIcon = memo(({ severity }) => (\n <>\n {severity === 8 && <img src={errorIcon} title=\"Error\" alt=\"Error\" width=\"13\" height=\"13\" />}\n {severity === 4 && (\n <img src={warningIcon} title=\"Warning\" alt=\"Warning\" width=\"13\" height=\"13\" />\n )}\n {severity === 2 && <img src={infoIcon} title=\"Info\" alt=\"Info\" width=\"13\" height=\"13\" />}\n {severity === 1 && <img src={hintIcon} title=\"Hint\" alt=\"Hint\" width=\"13\" height=\"13\" />}\n </>\n));\n\nSeverityIcon.propTypes = {\n severity: PropTypes.oneOf([8, 4, 2, 1]).isRequired,\n};\n\nexport default SeverityIcon;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nimport SeverityIcon from './SeverityIcon.jsx';\n\nconst ValidationTable = ({ data, onRowClick }) => {\n return (\n <table role=\"table\" className=\"swagger-editor__validation-table\">\n <thead>\n <tr>\n <th role=\"columnheader\">Severity</th>\n <th role=\"columnheader\">Line</th>\n <th role=\"columnheader\">Code</th>\n <th role=\"columnheader\">Message</th>\n </tr>\n </thead>\n <tbody>\n {data.map((marker, index) => (\n // eslint-disable-next-line react/no-array-index-key\n <tr key={index} role=\"row button\" onClick={(event) => onRowClick(event, marker)}>\n <td role=\"cell\">\n <SeverityIcon severity={marker.severity} />\n </td>\n <td role=\"cell\">{marker.startLineNumber}</td>\n <td role=\"cell\">{marker.code}</td>\n <td role=\"cell\">{marker.message}</td>\n </tr>\n ))}\n </tbody>\n </table>\n );\n};\n\nValidationTable.propTypes = {\n data: PropTypes.oneOfType([PropTypes.array]).isRequired,\n onRowClick: PropTypes.func.isRequired,\n};\n\nexport default ValidationTable;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"LockIcon\"]: () => __WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__.LockIcon, [\"MoonIcon\"]: () => __WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__.MoonIcon, [\"SunIcon\"]: () => __WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__.SunIcon, [\"UnlockIcon\"]: () => __WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__.UnlockIcon });","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { MoonIcon, SunIcon } from '@primer/octicons-react';\n\nconst ThemeSelectionIcon = ({ editorSelectors, editorActions }) => {\n const theme = editorSelectors.selectTheme();\n\n const handleChange = (newTheme) => () => {\n editorActions.setTheme(newTheme);\n };\n\n return theme === 'se-vs-dark' ? (\n <div className=\"swagger-editor__generic-padding-thin-top-bottom\">\n <button\n type=\"button\"\n className=\"swagger-editor__editor-pane-bar-control\"\n onClick={handleChange('se-vs-light')}\n >\n <SunIcon size=\"small\" aria-label=\"Light theme\" />\n </button>\n </div>\n ) : (\n <div className=\"swagger-editor__generic-padding-thin-top-bottom\">\n <button\n type=\"button\"\n className=\"swagger-editor__editor-pane-bar-control\"\n onClick={handleChange('se-vs-dark')}\n >\n <MoonIcon size=\"small\" aria-label=\"Dark theme\" />\n </button>\n </div>\n );\n};\n\nThemeSelectionIcon.propTypes = {\n editorActions: PropTypes.shape({\n setTheme: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectTheme: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ThemeSelectionIcon;\n","import PropTypes from 'prop-types';\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst EditorPaneBarTopWrapper = (Original, system) => {\n const ThemeSelection = system.getComponent('ThemeSelection', true);\n\n const EditorPaneBarTop = ({ renderControls, ...rest }) => {\n return (\n <Original\n {...rest}\n renderControls={(controls) =>\n renderControls(\n <>\n <ThemeSelection />\n {controls}\n </>\n )\n }\n />\n );\n };\n EditorPaneBarTop.propTypes = {\n renderControls: PropTypes.func,\n };\n EditorPaneBarTop.defaultProps = {\n renderControls: (controls) => controls,\n };\n\n return EditorPaneBarTop;\n};\n\nexport default EditorPaneBarTopWrapper;\n","import PropTypes from 'prop-types';\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst EditorPaneBarBottomWrapper = (Original, system) => {\n const ValidationPane = system.getComponent('ValidationPane', true);\n\n const EditorPaneBarBottom = ({ renderChildren, ...rest }) => {\n return <Original {...rest} renderChildren={() => renderChildren(<ValidationPane />)} />;\n };\n EditorPaneBarBottom.propTypes = {\n renderChildren: PropTypes.func,\n };\n EditorPaneBarBottom.defaultProps = {\n renderChildren: (children) => children,\n };\n\n return EditorPaneBarBottom;\n};\n\nexport default EditorPaneBarBottomWrapper;\n","export const EDITOR_APPEND_MARKERS = 'editor_append_markers';\n\nexport const appendMarkers = (markers = []) => {\n return {\n type: EDITOR_APPEND_MARKERS,\n payload: markers,\n };\n};\n","export const EDITOR_CLEAR_MARKERS = 'editor_clear_markers';\n\nexport const clearMarkers = (source = 'apilint') => {\n return {\n type: EDITOR_CLEAR_MARKERS,\n payload: source,\n };\n};\n","export const EDITOR_SET_LANGUAGE = 'editor_set_language';\n\nexport const setLanguage = (languageId) => {\n return {\n payload: languageId,\n type: EDITOR_SET_LANGUAGE,\n };\n};\n","export const EDITOR_SET_MARKERS = 'editor_set_markers';\n\nexport const setMarkers = (markers = []) => {\n return {\n type: EDITOR_SET_MARKERS,\n payload: markers,\n };\n};\n","export const EDITOR_SET_POSITION_STARTED = 'editor_set_position_started';\nexport const EDITOR_SET_POSITION_SUCCESS = 'editor_set_position_success';\nexport const EDITOR_SET_POSITION_FAILURE = 'editor_set_position_failure';\n\nexport const setPositionStarted = ({ lineNumber, column }) => ({\n type: EDITOR_SET_POSITION_STARTED,\n payload: { lineNumber, column },\n});\n\nexport const setPositionSuccess = ({ lineNumber, column }) => ({\n type: EDITOR_SET_POSITION_SUCCESS,\n payload: { lineNumber, column },\n});\n\nexport const setPositionFailure = ({ lineNumber, column, error }) => ({\n type: EDITOR_SET_POSITION_FAILURE,\n error: true,\n payload: error,\n meta: { lineNumber, column },\n});\n\nexport const setPosition =\n ({ lineNumber = 0, column = 0 } = {}) =>\n (system) => {\n const { editorActions, editorSelectors } = system;\n\n editorActions.setPositionStarted({ lineNumber, column });\n\n try {\n const editor = editorSelectors.selectEditor();\n\n editor.revealPositionNearTop({ lineNumber, column });\n editor.setPosition({ lineNumber, column });\n editor.focus();\n\n return editorActions.setPositionSuccess({ lineNumber, column });\n } catch (error) {\n return editorActions.setPositionFailure({ error, lineNumber, column });\n }\n };\n","export const EDITOR_SET_THEME = 'editor_set_theme';\n\nexport const setTheme = (theme = 'my-vs-dark') => {\n return {\n payload: theme,\n type: EDITOR_SET_THEME,\n };\n};\n","import { fromJS, List } from 'immutable';\n\nimport { EDITOR_SET_THEME } from './actions/set-theme.js';\nimport { EDITOR_SET_MARKERS } from './actions/set-markers.js';\nimport { EDITOR_CLEAR_MARKERS } from './actions/clear-markers.js';\nimport { EDITOR_APPEND_MARKERS } from './actions/append-markers.js';\nimport { EDITOR_SET_LANGUAGE } from './actions/set-language.js';\n\nconst reducers = {\n [EDITOR_SET_THEME]: (state, action) => {\n return state.set('theme', action.payload);\n },\n [EDITOR_SET_MARKERS]: (state, action) => {\n return state.set('markers', fromJS(action.payload));\n },\n [EDITOR_APPEND_MARKERS]: (state, action) => {\n const markers = state.get('markers', List());\n return state.set('markers', markers.concat(fromJS(action.payload)));\n },\n [EDITOR_CLEAR_MARKERS]: (state, action) => {\n const { payload: source } = action;\n const markers = state\n .get('markers', List())\n .filterNot((marker) => marker.get('source') === source);\n return state.set('markers', markers);\n },\n [EDITOR_SET_LANGUAGE]: (state, action) => {\n return state.set('language', action.payload);\n },\n // this action type comes from editor-textarea plugin\n editor_setup: (state, action) => {\n if (!action.meta.includes('monaco')) {\n return state;\n }\n return state.set('id', action.payload.getId());\n },\n // this action type comes from editor-textarea plugin\n editor_tear_down: (state, action) => {\n if (!action.meta.includes('monaco')) {\n return state;\n }\n if (state.get('id') !== action.payload.getId()) {\n return state;\n }\n\n return state.delete('id');\n },\n};\n\nexport default reducers;\n","import * as monaco from 'monaco-editor';\nimport { createSelector } from 'reselect';\nimport { List } from 'immutable';\n\nexport const selectTheme = (state) => state.get('theme', 'se-vs-dark');\n\nexport const selectMarkers = createSelector(\n (state) => state.get('markers', List()),\n (markers) => markers.toJS()\n);\n\nexport const selectLanguage = (state) => state.get('language', 'plaintext');\n\nexport const selectEditor = () => (system) => {\n const id = system.editorSelectors.selectId();\n return monaco.editor.getEditors().find((editor) => editor.getId() === id);\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"registerMarkerDataProvider\"]: () => __WEBPACK_EXTERNAL_MODULE_monaco_marker_data_provider_40519126__.registerMarkerDataProvider });","import * as monaco from 'monaco-editor';\nimport { registerMarkerDataProvider as registerMarkerDataProviderGeneric } from 'monaco-marker-data-provider';\n\nexport const registerMarkerDataProvider = registerMarkerDataProviderGeneric.bind(\n globalThis,\n monaco\n);\n\n/**\n * Handy util for waiting util certain condition is met\n * or maximum waiting time is reached.\n *\n * @param condition\n * @param interval\n * @param maxWait\n * @returns {Promise<unknown>}\n */\nexport const waitUntil = async (condition, { interval = 100, maxWait = 2500 } = {}) => {\n return new Promise((resolve, reject) => {\n const intervalID = setInterval(async () => {\n if (!(await condition())) {\n return;\n }\n\n clearInterval(intervalID);\n resolve();\n }, interval);\n\n setTimeout(() => {\n clearInterval(intervalID);\n reject(new Error('Waited long enough!'));\n }, maxWait);\n });\n};\n\nexport const makeDeferred = () => {\n const deferred = {};\n deferred.promise = new Promise((resolve, reject) => {\n deferred.resolve = resolve;\n deferred.reject = reject;\n });\n return deferred;\n};\n","import { makeDeferred } from './fn.js';\n\nexport * as monaco from 'monaco-editor';\n\nexport const monacoInitializationDeferred = makeDeferred();\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"IStorageService\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_services_3b1ec6e6__.IStorageService, [\"StandaloneServices\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_services_3b1ec6e6__.StandaloneServices, [\"initialize\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_services_3b1ec6e6__.initialize });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_service_override_languages_39ca0d84__[\"default\"] });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"initialize\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_extensions_dfa53f5d__.initialize });","import {\n initialize as initializeMonacoServices,\n StandaloneServices,\n IStorageService,\n} from 'vscode/services';\nimport getLanguagesServiceOverride from 'vscode/service-override/languages';\nimport { initialize as initializeVscodeExtensions } from 'vscode/extensions';\n\nfunction afterLoad(system) {\n const InitPhase = {\n UNINITIALIZED: 'UNINITIALIZED',\n IN_PROGRESS: 'IN_PROGRESS',\n INITIALIZED: 'INITIALIZED',\n };\n\n // setup monaco environment\n globalThis.MonacoEnvironment = {\n initPhase: InitPhase.UNINITIALIZED,\n baseUrl: document.baseURI || location.href, // eslint-disable-line no-restricted-globals\n getWorkerUrl() {\n return new URL(process.env.REACT_APP_APIDOM_WORKER_FILENAME, this.baseUrl).toString();\n },\n ...globalThis.MonacoEnvironment, // this will allow to override the base uri for loading Web Workers\n };\n\n /**\n * Monaco standalone services can be initialized only once.\n * Standalone services cannot be disposed of when no longer needed.\n * Individual services can be disposed of separately, but if one decides\n * to do that, `initialize` function will not able to initialize them again.\n *\n * Extensions needs to initialized explicitly as well.\n */\n if (globalThis.MonacoEnvironment.initPhase === InitPhase.UNINITIALIZED) {\n globalThis.MonacoEnvironment.initPhase = InitPhase.IN_PROGRESS;\n\n (async () => {\n try {\n await Promise.all([\n initializeMonacoServices({\n ...getLanguagesServiceOverride(),\n }),\n initializeVscodeExtensions(),\n ]);\n StandaloneServices.get(IStorageService).store('expandSuggestionDocs', true, 0, 0);\n system.monacoInitializationDeferred().resolve();\n } catch (error) {\n system.monacoInitializationDeferred().reject(error);\n } finally {\n globalThis.MonacoEnvironment.initPhase = InitPhase.INITIALIZED;\n }\n })();\n }\n}\n\nexport default afterLoad;\n","import MonacoEditorContainer from './components/MonacoEditor/MonacoEditorContainer.jsx';\nimport ValidationPane from './components/ValidationPane/ValidationPane.jsx';\nimport ValidationTable from './components/ValidationTable/ValidationTable.jsx';\nimport ThemeSelectionIcon from './components/ThemeSelectionIcon.jsx';\nimport EditorPaneBarTopWrapper from './wrap-components/EditorPaneBarTopWrapper.jsx';\nimport EditorPaneBarBottomWrapper from './wrap-components/EditorPaneBarBottomWrapper.jsx';\nimport { appendMarkers } from './actions/append-markers.js';\nimport { clearMarkers } from './actions/clear-markers.js';\nimport { setLanguage } from './actions/set-language.js';\nimport { setMarkers } from './actions/set-markers.js';\nimport {\n setPosition,\n setPositionStarted,\n setPositionSuccess,\n setPositionFailure,\n} from './actions/set-position.js';\nimport { setTheme } from './actions/set-theme.js';\nimport reducers from './reducers.js';\nimport { selectTheme, selectMarkers, selectLanguage, selectEditor } from './selectors.js';\nimport { registerMarkerDataProvider, waitUntil } from './fn.js';\nimport { monaco, monacoInitializationDeferred } from './root-injects.js';\nimport afterLoad from './after-load.js';\n\nconst EditorMonacoPlugin = () => ({\n afterLoad,\n rootInjects: {\n monaco,\n monacoInitializationDeferred: () => monacoInitializationDeferred,\n },\n components: {\n Editor: MonacoEditorContainer,\n MonacoEditor: MonacoEditorContainer,\n ValidationPane,\n ValidationTable,\n ThemeSelection: ThemeSelectionIcon,\n },\n wrapComponents: {\n EditorPaneBarTop: EditorPaneBarTopWrapper,\n EditorPaneBarBottom: EditorPaneBarBottomWrapper,\n },\n statePlugins: {\n editor: {\n actions: {\n setTheme,\n setMarkers,\n appendMarkers,\n clearMarkers,\n setLanguage,\n\n setPosition,\n setPositionStarted,\n setPositionSuccess,\n setPositionFailure,\n },\n reducers,\n selectors: {\n selectTheme,\n selectMarkers,\n selectLanguage,\n selectEditor,\n },\n },\n },\n fn: {\n registerMarkerDataProvider,\n waitUntil,\n },\n});\n\nexport default EditorMonacoPlugin;\n","export default function _classPrivateFieldBase(receiver, privateKey) {\n if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) {\n throw new TypeError(\"attempted to use private field on non-instance\");\n }\n return receiver;\n}","var id = 0;\nexport default function _classPrivateFieldKey(name) {\n return \"__private_\" + id++ + \"_\" + name;\n}","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"languages\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode__.languages });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"ModesRegistry\"]: () => __WEBPACK_EXTERNAL_MODULE_monaco_editor_esm_vs_editor_common_languages_modesRegistry_js_5f33ab3c__.ModesRegistry });","import * as monaco from 'monaco-editor';\n\nexport const languageId = 'apidom';\n\nexport const conf = {\n comments: {\n lineComment: '#',\n },\n brackets: [\n ['{', '}'],\n ['[', ']'],\n ['(', ')'],\n ],\n autoClosingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '\"', close: '\"' },\n { open: \"'\", close: \"'\" },\n ],\n surroundingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '\"', close: '\"' },\n { open: \"'\", close: \"'\" },\n ],\n\n onEnterRules: [\n {\n beforeText: /:\\s*$/,\n action: { indentAction: monaco.languages.IndentAction.Indent },\n },\n {\n beforeText: /-\\s+\\w*$/,\n action: { indentAction: monaco.languages.IndentAction.None, appendText: '- ' },\n },\n {\n beforeText: /-\\s*$/,\n action: { indentAction: monaco.languages.IndentAction.None, appendText: '- ' },\n },\n ],\n};\n\nexport const language = {\n // set defaultToken to invalid to see what you do not tokenize yet\n defaultToken: 'invalid',\n keywords: ['swagger', 'info', 'host', 'basePath', 'tags', 'schemes', 'paths', 'externalDocs'],\n typeKeywords: ['description', 'title', 'termsOfService'],\n escapes: /\\\\(?:[abfnrtv\\\\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,\n // the main tokenizer for our languages\n tokenizer: {\n root: [\n // identifiers and keywords\n [\n /[a-zA-Z_$][\\w$]*/,\n {\n cases: {\n '@keywords': { token: 'keyword' },\n '@typeKeywords': { token: 'type' },\n '@default': 'identifier',\n },\n },\n ],\n // whitespace\n { include: '@whitespace' },\n // strings for todos\n [/\"([^\"\\\\]|\\\\.)*$/, 'string.invalid'], // non-terminated string\n [/\"/, 'string', '@string'],\n ],\n whitespace: [[/[ \\t\\r\\n]+/, '']],\n string: [\n [/[^\\\\\"]+/, 'string'],\n [/@escapes/, 'string.escape'],\n [/\\\\./, 'string.escape.invalid'],\n [/\"/, 'string', '@pop'],\n ],\n },\n};\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createConverter\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_languageclient_lib_common_codeConverter_js_b2d3adcf__.createConverter });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createConverter\"]: () => __WEBPACK_EXTERNAL_MODULE_vscode_languageclient_lib_common_protocolConverter_js_779c1346__.createConverter });","import * as monaco from 'monaco-editor';\n\nconst STOP_WHEN_IDLE_FOR = 2 * 60 * 1000; // 2min\n\nexport default class WorkerManager {\n #defaults = null;\n\n #worker = null;\n\n #client = null;\n\n #idleCheckInterval;\n\n #lastUsedTime = 0;\n\n constructor(defaults) {\n this.#defaults = defaults;\n this.#idleCheckInterval = setInterval(() => this.#checkIfIdle(), 30 * 1000);\n }\n\n #stopWorker() {\n if (this.#worker) {\n this.#worker.dispose();\n this.#worker = null;\n }\n this.#client = null;\n }\n\n #checkIfIdle() {\n if (!this.#worker) {\n return;\n }\n\n const timePassedSinceLastUsed = Date.now() - this.#lastUsedTime;\n if (timePassedSinceLastUsed > STOP_WHEN_IDLE_FOR) {\n this.#stopWorker();\n }\n }\n\n async #getClient() {\n this.#lastUsedTime = Date.now();\n\n if (!this.#client) {\n this.#worker = monaco.editor.createWebWorker({\n moduleId: 'ApiDOMWorker',\n label: this.#defaults.getLanguageId(),\n createData: {\n ...this.#defaults.getWorkerOptions().data,\n languageId: this.#defaults.getLanguageId(),\n apiDOMContext: this.#defaults.getWorkerOptions().apiDOMContext,\n customWorkerPath: this.#defaults.getWorkerOptions().customWorkerPath,\n },\n });\n\n this.#client = this.#worker.getProxy();\n }\n return this.#client;\n }\n\n async getLanguageServiceWorker(...resources) {\n const client = await this.#getClient();\n await this.#worker.withSyncedResources(resources);\n return client;\n }\n\n dispose() {\n clearInterval(this.#idleCheckInterval);\n this.#stopWorker();\n }\n}\n","class Provider {\n #worker;\n\n #codeConverter;\n\n #protocolConverter;\n\n constructor(worker, codeConverter, protocolConverter) {\n this.#worker = worker;\n this.#codeConverter = codeConverter;\n this.#protocolConverter = protocolConverter;\n }\n\n get worker() {\n return this.#worker;\n }\n\n get codeConverter() {\n return this.#codeConverter;\n }\n\n get protocolConverter() {\n return this.#protocolConverter;\n }\n\n dispose() {\n this.#worker = null;\n this.#codeConverter = null;\n this.#protocolConverter = null;\n }\n}\n\nexport default Provider;\n","import * as monaco from 'monaco-editor';\nimport { languages as vscodeLanguages } from 'vscode';\n\nimport Provider from './Provider.js';\nimport * as apidom from '../apidom.js';\n\nclass DiagnosticsProvider extends Provider {\n #listener = [];\n\n #disposables = [];\n\n #diagnosticCollection = null;\n\n #system = null;\n\n constructor(worker, codeConverter, protocolConverter, getSystem) {\n super(worker, codeConverter, protocolConverter);\n this.#system = getSystem();\n\n const onModelAdded = (model) => {\n if (model.getLanguageId() !== apidom.languageId) {\n return;\n }\n\n let handle;\n const changeSubscription = model.onDidChangeContent(() => {\n /**\n * Here we are Debouncing the user changes, so everytime a new change is done,\n * we wait some time before validating, otherwise if the user is still typing, we cancel the change.\n */\n clearTimeout(handle);\n handle = setTimeout(() => this.#validate(model), 300);\n });\n\n this.#listener[model.uri.toString()] = {\n dispose() {\n changeSubscription.dispose();\n clearTimeout(handle);\n },\n };\n\n this.#validate(model);\n };\n\n const onModelRemoved = (model) => {\n this.#diagnosticCollection.set(model.uri, []);\n const key = model.uri.toString();\n if (this.#listener[key]) {\n this.#listener[key].dispose();\n delete this.#listener[key];\n }\n };\n\n const onModelLanguageChanged = (model) => {\n const key = model.uri.toString();\n const hasChangedToApiDOM = model.getLanguageId() === apidom.languageId;\n const isModelSubscribed = !!this.#listener[key];\n\n if (!isModelSubscribed && hasChangedToApiDOM) {\n onModelAdded(model);\n } else if (isModelSubscribed && !hasChangedToApiDOM) {\n onModelRemoved(model);\n }\n };\n\n const onVscodeInitialized = () => {\n this.#diagnosticCollection = vscodeLanguages.createDiagnosticCollection(apidom.languageId);\n return this.#diagnosticCollection;\n };\n\n this.#disposables.push(monaco.editor.onDidCreateModel(onModelAdded));\n this.#disposables.push(monaco.editor.onDidChangeModelLanguage(onModelLanguageChanged));\n this.#disposables.push(monaco.editor.onWillDisposeModel(onModelRemoved));\n this.#system.monacoInitializationDeferred().promise.then(() => {\n this.#disposables.push(onVscodeInitialized());\n });\n }\n\n async #getDiagnostics(model) {\n const worker = await this.worker(model.uri);\n\n if (model.isDisposed()) {\n // model was disposed in the meantime\n return undefined;\n }\n\n try {\n return await worker.doValidation(model.uri.toString());\n } catch {\n return undefined;\n }\n }\n\n async #validate(model) {\n const diagnostics = await this.#getDiagnostics(model);\n\n this.#diagnosticCollection?.set(\n model.uri,\n await this.protocolConverter.asDiagnostics(diagnostics)\n );\n }\n\n dispose() {\n super.dispose();\n this.#disposables.forEach((disposable) => disposable?.dispose());\n this.#disposables = [];\n this.#system = null;\n }\n}\n\nexport default DiagnosticsProvider;\n","import Provider from './Provider.js';\n\nclass HoverProvider extends Provider {\n async #getHover(vscodeDocument, position) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.doHover(\n vscodeDocument.uri.toString(),\n this.codeConverter.asPosition(position)\n );\n } catch {\n return undefined;\n }\n }\n\n async provideHover(vscodeDocument, position) {\n const hover = await this.#getHover(vscodeDocument, position);\n\n return this.protocolConverter.asHover(hover);\n }\n}\n\nexport default HoverProvider;\n","import Provider from './Provider.js';\n\nclass DocumentLinkProvider extends Provider {\n async #getLinks(vscodeDocument) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.doLinks(vscodeDocument.uri.toString());\n } catch {\n return undefined;\n }\n }\n\n async provideDocumentLinks(vscodeDocument) {\n const links = await this.#getLinks(vscodeDocument);\n const linksWithNonEmptyRanges = links.filter(\n (link) => !this.protocolConverter.asRange(link.range).isEmpty\n );\n\n return this.protocolConverter.asDocumentLinks(linksWithNonEmptyRanges);\n }\n\n // eslint-disable-next-line class-methods-use-this\n async resolveDocumentLink(link) {\n return link;\n }\n}\n\nexport default DocumentLinkProvider;\n","import Provider from './Provider.js';\n\nclass CompletionItemProvider extends Provider {\n async #getCompletionList(vscodeDocument, position) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.doComplete(\n vscodeDocument.uri.toString(),\n this.codeConverter.asPosition(position)\n );\n } catch {\n return undefined;\n }\n }\n\n async provideCompletionItems(vscodeDocument, position) {\n const completionList = await this.#getCompletionList(vscodeDocument, position);\n\n return this.protocolConverter.asCompletionResult(completionList);\n }\n}\n\nexport default CompletionItemProvider;\n","import Provider from './Provider.js';\n\nclass DocumentSemanticTokensProvider extends Provider {\n async #getSemanticTokens(vscodeDocument) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.findSemanticTokens(vscodeDocument.uri.toString());\n } catch {\n return undefined;\n }\n }\n\n async provideDocumentSemanticTokens(vscodeDocument) {\n const semanticTokens = await this.#getSemanticTokens(vscodeDocument);\n\n return this.protocolConverter.asSemanticTokens(semanticTokens);\n }\n}\n\nexport default DocumentSemanticTokensProvider;\n","import Provider from './Provider.js';\n\nclass CodeActionsProvider extends Provider {\n async #getCodeActionList(vscodeDocument, diagnosticList) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.doCodeActions(vscodeDocument.uri.toString(), diagnosticList);\n } catch {\n return undefined;\n }\n }\n\n #maybeConvert(codeActionList) {\n if (typeof codeActionList === 'undefined') {\n return codeActionList;\n }\n\n return this.protocolConverter.asCodeActionResult(codeActionList);\n }\n\n async provideCodeActions(vscodeDocument, range, ctx) {\n const diagnosticList = await this.codeConverter.asDiagnostics(ctx.diagnostics);\n const codeActionList = await this.#getCodeActionList(vscodeDocument, diagnosticList);\n\n return this.#maybeConvert(codeActionList);\n }\n}\n\nexport default CodeActionsProvider;\n","import Provider from './Provider.js';\n\nclass DocumentSymbolProvider extends Provider {\n async #getSymbolInformationList(vscodeDocument) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.findDocumentSymbols(vscodeDocument.uri.toString());\n } catch {\n return undefined;\n }\n }\n\n async provideDocumentSymbols(vscodeDocument) {\n const symbolInformationList = await this.#getSymbolInformationList(vscodeDocument);\n\n return this.protocolConverter.asSymbolInformations(symbolInformationList);\n }\n}\n\nexport default DocumentSymbolProvider;\n","import Provider from './Provider.js';\n\nclass DefinitionProvider extends Provider {\n async #getLocation(vscodeDocument, position) {\n const worker = await this.worker(vscodeDocument.uri);\n\n try {\n return await worker.provideDefinition(\n vscodeDocument.uri.toString(),\n this.codeConverter.asPosition(position)\n );\n } catch {\n return undefined;\n }\n }\n\n async provideDefinition(vscodeDocument, position) {\n const location = await this.#getLocation(vscodeDocument, position);\n\n return this.protocolConverter.asDefinitionResult(location);\n }\n}\n\nexport default DefinitionProvider;\n","import { languages as vscodeLanguages } from 'vscode';\nimport { createConverter as createCodeConverter } from 'vscode-languageclient/lib/common/codeConverter.js';\nimport { createConverter as createProtocolConverter } from 'vscode-languageclient/lib/common/protocolConverter.js';\n\nimport WorkerManager from './WorkerManager.js';\nimport DiagnosticsProvider from './providers/DiagnosticsProvider.js';\nimport HoverProvider from './providers/HoverProvider.js';\nimport DocumentLinkProvider from './providers/DocumentLinkProvider.js';\nimport CompletionItemProvider from './providers/CompletionItemProvider.js';\nimport DocumentSemanticTokensProvider from './providers/DocumentSemanticTokensProvider.js';\nimport CodeActionsProvider from './providers/CodeActionsProvider.js';\nimport DocumentSymbolProvider from './providers/DocumentSymbolProvider.js';\nimport DefinitionProvider from './providers/DefinitionProvider.js';\n\nlet apidomWorker;\n\nconst disposeAll = (disposables) => {\n while (disposables.length) {\n disposables.pop().dispose();\n }\n};\n\nconst asDisposable = (disposables) => {\n return { dispose: () => disposeAll(disposables) };\n};\n\nexport const getWorker = () => {\n if (!apidomWorker) {\n throw new Error('ApiDOM not registered');\n }\n return apidomWorker;\n};\n\nconst registerProviders = ({ languageId, providers, dependencies }) => {\n disposeAll(providers);\n\n const { worker, codeConverter, protocolConverter, getSystem } = dependencies;\n const args = [worker, codeConverter, protocolConverter];\n const system = getSystem();\n\n /**\n * Customized providers needs to be registered before monaco editor is created.\n */\n providers.push(new DiagnosticsProvider(...args, getSystem));\n\n (async () => {\n await system.monacoInitializationDeferred().promise;\n\n providers.push(vscodeLanguages.registerHoverProvider(languageId, new HoverProvider(...args)));\n providers.push(\n vscodeLanguages.registerDocumentLinkProvider(languageId, new DocumentLinkProvider(...args))\n );\n providers.push(\n vscodeLanguages.registerCompletionItemProvider(\n languageId,\n new CompletionItemProvider(...args)\n )\n );\n providers.push(\n vscodeLanguages.registerCodeActionsProvider(languageId, new CodeActionsProvider(...args))\n );\n providers.push(\n vscodeLanguages.registerDocumentSymbolProvider(\n languageId,\n new DocumentSymbolProvider(...args)\n )\n );\n providers.push(\n vscodeLanguages.registerDefinitionProvider(languageId, new DefinitionProvider(...args))\n );\n\n const workerService = await worker();\n const semanticTokensLegend = await workerService.getSemanticTokensLegend();\n\n providers.push(\n vscodeLanguages.registerDocumentSemanticTokensProvider(\n languageId,\n new DocumentSemanticTokensProvider(...args),\n semanticTokensLegend\n )\n );\n })();\n system.monacoInitializationDeferred().promise.then(() => {});\n\n return providers;\n};\n\nexport function setupMode(defaults) {\n const disposables = [];\n const providers = [];\n const codeConverter = createCodeConverter();\n const protocolConverter = createProtocolConverter(undefined, true, true);\n\n // setup ApiDOM worker\n const client = new WorkerManager(defaults);\n const worker = async (...uris) => client.getLanguageServiceWorker(...uris);\n apidomWorker = worker;\n disposables.push({\n dispose() {\n apidomWorker = null;\n },\n });\n disposables.push(client);\n\n /**\n * Register ApiDOM providers.\n * We're already assuming here that extensions have\n * been successfully initialized.\n */\n disposables.push(\n asDisposable(\n registerProviders({\n languageId: defaults.getLanguageId(),\n providers,\n dependencies: {\n worker,\n codeConverter,\n protocolConverter,\n getSystem: defaults.getModeConfiguration().getSystem,\n },\n })\n )\n );\n\n return asDisposable(disposables);\n}\n","import YAML from 'js-yaml';\n\nimport { getWorker } from '../apidom-mode.js';\n\nconst createDereferenceActionDescriptor = ({ getSystem }) => ({\n id: 'swagger.editor.apidomDereference',\n label: 'Resolve document',\n async run(editor) {\n const system = getSystem();\n const isContentJSON = system.editorSelectors.selectIsContentFormatJSON();\n const isContentYAML = system.editorSelectors.selectIsContentFormatYAML();\n\n if (!isContentJSON && !isContentYAML) return; // nothing to do here\n\n const model = editor.getModel();\n const worker = await getWorker()(model.uri);\n const dereferenced = await worker.doDeref(model.uri.toString(), {\n baseURI: globalThis.document.baseURI || globalThis.location.href,\n format: isContentJSON ? 0 : isContentYAML ? 1 : 'unknown', // eslint-disable-line no-nested-ternary\n });\n\n if (isContentYAML) {\n const nicelyFormattedYAML = YAML.dump(YAML.load(dereferenced));\n system.editorActions.setContent(nicelyFormattedYAML);\n } else if (isContentJSON) {\n system.editorActions.setContent(dereferenced);\n }\n },\n});\n\nexport default createDereferenceActionDescriptor;\n","import * as monaco from 'monaco-editor';\nimport { languages as vscodeLanguages } from 'vscode';\nimport { ModesRegistry } from 'monaco-editor/esm/vs/editor/common/languages/modesRegistry.js';\n\nimport * as apidom from './apidom.js';\nimport { setupMode } from './apidom-mode.js';\nimport createDereferenceActionDescriptor from './actions/dereference.js';\n\nexport { getWorker } from './apidom-mode.js';\n\nconst modeConfigurationDefault = {};\n\nconst workerOptionsDefault = {\n customWorkerPath: undefined,\n data: {},\n};\n\nclass LanguageServiceDefaultsImpl {\n #languageId;\n\n #workerOptions;\n\n #modeConfiguration;\n\n constructor(workerOptions, modeConfiguration) {\n this.setLanguageId(apidom.languageId);\n this.setWorkerOptions(workerOptions);\n this.setModeConfiguration(modeConfiguration);\n }\n\n getLanguageId() {\n return this.#languageId;\n }\n\n setLanguageId(languageId) {\n this.#languageId = languageId;\n }\n\n getWorkerOptions() {\n return this.#workerOptions;\n }\n\n setWorkerOptions(workerOptions) {\n this.#workerOptions = workerOptions || JSON.parse(JSON.stringify(workerOptionsDefault));\n }\n\n getModeConfiguration() {\n return this.#modeConfiguration;\n }\n\n setModeConfiguration(modeConfiguration) {\n this.#modeConfiguration =\n modeConfiguration || JSON.parse(JSON.stringify(modeConfigurationDefault));\n }\n}\n\nexport const apidomDefaults = new LanguageServiceDefaultsImpl(\n workerOptionsDefault,\n modeConfigurationDefault\n);\n\nexport const isLanguageRegistered = () => {\n const languages = ModesRegistry.getLanguages().map(({ id }) => id);\n return languages.includes(apidom.languageId);\n};\n\nconst lazyMonacoContribution = ({ createData, system }) => {\n const disposables = [];\n\n // register apidom language\n disposables.push(\n /**\n * This code uses ModesRegistry API instead of monaco.languages API.\n * The reason is that monaco.languages API is using ModesRegistry under the hood\n * but doesn't return disposables produced by ModesRegistry. By using ModesRegistry\n * directly we're able to obtain disposables.\n */\n ModesRegistry.registerLanguage({\n id: apidom.languageId,\n })\n );\n\n system.monacoInitializationDeferred().promise.then(() => {\n disposables.push(vscodeLanguages.setLanguageConfiguration(apidom.languageId, apidom.conf));\n });\n\n disposables.push(monaco.languages.setMonarchTokensProvider(apidom.languageId, apidom.language));\n\n // setup apidom mode\n disposables.push(\n monaco.editor.onDidCreateEditor(() => {\n const { customApiDOMWorkerPath: customWorkerPath, apiDOMContext, ...data } = createData;\n const defaults = new LanguageServiceDefaultsImpl(\n { apiDOMContext, customWorkerPath, data },\n { getSystem: system.getSystem }\n );\n\n disposables.push(setupMode(defaults));\n })\n );\n\n // setup custom actions\n disposables.push(\n monaco.editor.onDidCreateEditor((editor) => {\n disposables.push(\n monaco.editor.onDidCreateModel(() => {\n const dereferenceActionDescriptor = createDereferenceActionDescriptor(system);\n if (!editor.getAction(dereferenceActionDescriptor.id)) {\n disposables.push(editor.addAction(dereferenceActionDescriptor));\n }\n })\n );\n })\n );\n\n // disposing of all allocated disposables\n disposables.push(\n monaco.editor.onDidCreateEditor((editor) => {\n disposables.push(\n editor.onDidDispose(() => {\n disposables.forEach((disposable) => disposable.dispose());\n disposables.length = 0;\n })\n );\n })\n );\n\n // setup monaco environment\n globalThis.MonacoEnvironment = {\n // expect editor-monaco plugin to have already executed\n ...globalThis.MonacoEnvironment,\n getWorkerUrl(moduleId, label) {\n if (label === apidom.languageId) {\n return new URL(process.env.REACT_APP_APIDOM_WORKER_FILENAME, this.baseUrl).toString();\n }\n return new URL(process.env.REACT_APP_EDITOR_WORKER_FILENAME, this.baseUrl).toString();\n },\n };\n};\n\nexport default lazyMonacoContribution;\n","import lazyMonacoContribution, {\n isLanguageRegistered,\n apidomDefaults,\n} from './language/monaco.contribution.js';\n\nconst makeAfterLoad =\n ({ createData = {} } = {}) =>\n (system) => {\n if (isLanguageRegistered()) return;\n\n lazyMonacoContribution({ createData, system });\n system.editorActions.setLanguage(apidomDefaults.getLanguageId());\n };\n\nexport default makeAfterLoad;\n","export const EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_STARTED =\n 'editor_monaco_language_apidom_get_json_pointer_position_started';\n\nexport const EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_SUCCESS =\n 'editor_monaco_language_apidom_get_json_pointer_position_success';\n\nexport const EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_FAILURE =\n 'editor_monaco_language_apidom_get_json_pointer_position_failure';\n\nexport const getJsonPointerPositionStarted = ({ jsonPointer }) => ({\n type: EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_STARTED,\n payload: jsonPointer,\n});\n\nexport const getJsonPointerPositionSuccess = ({ position, jsonPointer }) => ({\n type: EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_SUCCESS,\n payload: position,\n meta: { jsonPointer },\n});\n\nexport const getJsonPointerPositionFailure = ({ error, jsonPointer }) => ({\n type: EDITOR_MONACO_LANGUAGE_APIDOM_GET_JSON_POINTER_POSITION_FAILURE,\n error: true,\n payload: error,\n meta: { jsonPointer },\n});\n\nexport const getJsonPointerPosition = (jsonPointer) => async (system) => {\n const { editorActions, editorSelectors, fn } = system;\n\n editorActions.getJsonPointerPositionStarted({ jsonPointer });\n\n try {\n const editor = editorSelectors.selectEditor();\n const model = editor.getModel();\n const worker = await fn.getApiDOMWorker()(model.uri);\n const { line, character } = await worker.getJsonPointerPosition(\n model.uri.toString(),\n jsonPointer\n );\n const position = { lineNumber: line, column: character - 1 };\n\n return editorActions.getJsonPointerPositionSuccess({ position, jsonPointer });\n } catch (error) {\n return editorActions.getJsonPointerPositionFailure({ error, jsonPointer });\n }\n};\n","import makeAfterLoad from './after-load.js';\nimport {\n getJsonPointerPosition,\n getJsonPointerPositionStarted,\n getJsonPointerPositionSuccess,\n getJsonPointerPositionFailure,\n} from './actions/get-json-pointer-position.js';\nimport { getWorker } from './language/monaco.contribution.js';\n\nconst EditorMonacoLanguageApiDOMPlugin = (opts = {}) => {\n const isCalledWithGetSystem = typeof opts.getSystem === 'function';\n const options = isCalledWithGetSystem ? {} : opts;\n const plugin = () => ({\n afterLoad: makeAfterLoad(options),\n fn: {\n getApiDOMWorker: getWorker,\n },\n statePlugins: {\n editor: {\n actions: {\n getJsonPointerPosition,\n getJsonPointerPositionStarted,\n getJsonPointerPositionSuccess,\n getJsonPointerPositionFailure,\n },\n },\n },\n });\n\n return isCalledWithGetSystem ? plugin(opts) : plugin;\n};\n\nexport default EditorMonacoLanguageApiDOMPlugin;\n","import PropTypes from 'prop-types';\n\nconst EditorPreviewPane = ({ getComponent }) => {\n const EditorPreview = getComponent('EditorPreview', true);\n\n return (\n <div className=\"swagger-editor__editor-preview-pane\">\n <EditorPreview />\n </div>\n );\n};\n\nEditorPreviewPane.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default EditorPreviewPane;\n","const EditorPreviewFallback = () => (\n <div className=\"swagger-editor__editor-preview-fallback swagger-ui\">\n <div className=\"version-pragma\">\n <div className=\"version-pragma__message version-pragma__message--missing\">\n <div>\n <h3>Unable to render editor content</h3>\n <p>Content was not recognized as supported language in particular format.</p>\n </div>\n </div>\n </div>\n </div>\n);\n\nexport default EditorPreviewFallback;\n","import EditorPreviewPane from './components/EditorPreviewPane.jsx';\nimport EditorPreviewFallback from './components/EditorPreviewFallback.jsx';\n\nconst EditorPreviewPlugin = () => ({\n components: {\n EditorPreviewPane,\n EditorPreviewFallback,\n EditorPreview: EditorPreviewFallback,\n },\n});\n\nexport default EditorPreviewPlugin;\n","import { useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPreviewSwaggerUI = ({ getComponent, editorPreviewSwaggerUIActions }) => {\n const BaseLayout = getComponent('BaseLayout', true); // accessed from swagger-ui\n\n useEffect(() => {\n return () => {\n editorPreviewSwaggerUIActions.previewUnmounted();\n };\n }, [editorPreviewSwaggerUIActions]);\n\n return (\n <div className=\"swagger-editor__editor-preview-swagger-ui\">\n <BaseLayout />\n </div>\n );\n};\n\nEditorPreviewSwaggerUI.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewSwaggerUIActions: PropTypes.shape({\n previewUnmounted: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default EditorPreviewSwaggerUI;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ });","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { List } from 'immutable';\nimport ImmutablePropTypes from 'react-immutable-proptypes';\n\nimport JumpIcon from '../assets/jump-icon.svg';\n\nconst JumpToPath = ({ path, content, showButton, editorPreviewSwaggerUIActions }) => {\n const handleJumpToPath = (e) => {\n e.stopPropagation();\n editorPreviewSwaggerUIActions.jumpToPath(path.toJS());\n };\n\n const jumpToPathButton = (\n <div role=\"button\" tabIndex={0} onClick={handleJumpToPath} onKeyDown={handleJumpToPath}>\n <img\n src={JumpIcon}\n className=\"view-line-link\"\n title=\"Jump to definition\"\n alt=\"Jump to path\"\n />\n </div>\n );\n\n if (content) {\n // if we were given content to render, wrap it\n return (\n <span role=\"button\" tabIndex={0} onClick={handleJumpToPath} onKeyDown={handleJumpToPath}>\n {showButton && jumpToPathButton}\n {content}\n </span>\n );\n }\n return <div>{jumpToPathButton}</div>;\n};\n\nJumpToPath.propTypes = {\n path: ImmutablePropTypes.listOf(PropTypes.string),\n content: PropTypes.element,\n showButton: PropTypes.bool,\n editorPreviewSwaggerUIActions: PropTypes.shape({\n jumpToPath: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nJumpToPath.defaultProps = {\n path: List(),\n content: null,\n showButton: false,\n};\n\nexport default JumpToPath;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPreviewWrapper = (Original, system) => {\n const EditorPreview = ({ getComponent, editorSelectors }) => {\n const EditorPreviewSwaggerUI = getComponent('EditorPreviewSwaggerUI', true);\n const isOpenAPI = editorSelectors.selectIsContentTypeOpenAPI();\n\n if (isOpenAPI) {\n return <EditorPreviewSwaggerUI />;\n }\n\n return (\n <Original {...system} /> // eslint-disable-line react/jsx-props-no-spreading\n );\n };\n\n EditorPreview.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeOpenAPI: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI31x: PropTypes.func.isRequired,\n }).isRequired,\n };\n\n return EditorPreview;\n};\n\nexport default EditorPreviewWrapper;\n","export const EDITOR_PREVIEW_SWAGGER_UI_PREVIEW_UNMOUNTED =\n 'editor_preview_swagger_ui_preview_unmounted';\n\nexport const previewUnmounted = () => ({\n type: EDITOR_PREVIEW_SWAGGER_UI_PREVIEW_UNMOUNTED,\n});\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"compile\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_json_pointer_c5d352f4__.compile });","import { compile } from '@swagger-api/apidom-json-pointer';\n\nexport const EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_STARTED =\n 'editor_preview_swagger_ui_jump_to_path_started';\nexport const EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_SUCCESS =\n 'editor_preview_swagger_ui_jump_to_path_success';\nexport const EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_FAILURE =\n 'editor_preview_swagger_ui_jump_to_path_failure';\n\nexport const jumpToPathStarted = ({ path }) => ({\n type: EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_STARTED,\n payload: path,\n});\n\nexport const jumpToPathSuccess = ({ position, path, jsonPointer }) => ({\n type: EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_SUCCESS,\n payload: position,\n meta: { jsonPointer, path },\n});\n\nexport const jumpToPathFailure = ({ error, path, jsonPointer }) => ({\n type: EDITOR_PREVIEW_SWAGGER_UI_JUMP_TO_PATH_FAILURE,\n error: true,\n payload: error,\n meta: { jsonPointer, path },\n});\n\nexport const jumpToPath = (path) => async (system) => {\n const { editorActions, editorPreviewSwaggerUIActions } = system;\n let jsonPointer = '';\n\n editorPreviewSwaggerUIActions.jumpToPathStarted({ path });\n\n try {\n jsonPointer = compile(path);\n const getJsonPointerPositionFSA = await editorActions.getJsonPointerPosition(jsonPointer);\n\n if (getJsonPointerPositionFSA.error) {\n throw getJsonPointerPositionFSA;\n }\n\n const { payload: position } = getJsonPointerPositionFSA;\n const setPositionActionFSA = await editorActions.setPosition(position);\n\n if (setPositionActionFSA.error) {\n throw setPositionActionFSA;\n }\n\n return editorPreviewSwaggerUIActions.jumpToPathSuccess({ path, jsonPointer, position });\n } catch (error) {\n return editorPreviewSwaggerUIActions.jumpToPathFailure({ error, path, jsonPointer });\n }\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\nexport const detectContentTypeSuccess = createSafeActionWrapper(\n (oriAction, system) =>\n ({ content }) => {\n const { specActions, editorSelectors } = system;\n\n if (editorSelectors.selectIsContentTypeOpenAPI()) {\n specActions.updateSpec(content, 'swagger-editor');\n }\n }\n);\n\nexport const previewUnmounted = createSafeActionWrapper((oriAction, system) => () => {\n system.specActions.updateSpec('', 'swagger-editor');\n});\n","import EditorPreviewSwaggerUI from './components/EditorPreviewSwaggerUI.jsx';\nimport JumpToPath from './components/JumpToPath.jsx';\nimport EditorPreviewWrapper from './wrap-components/EditorPreviewWrapper.jsx';\nimport { previewUnmounted } from './actions/preview-unmounted.js';\nimport {\n jumpToPath,\n jumpToPathStarted,\n jumpToPathSuccess,\n jumpToPathFailure,\n} from './actions/jump-to-path.js';\nimport {\n detectContentTypeSuccess as detectContentTypeSuccessWrap,\n previewUnmounted as previewUnmountedWrap,\n} from './wrap-actions.js';\n\nconst EditorPreviewSwaggerUIPlugin = () => ({\n components: {\n EditorPreviewSwaggerUI,\n JumpToPath,\n },\n wrapComponents: {\n EditorPreview: EditorPreviewWrapper,\n },\n statePlugins: {\n editor: {\n wrapActions: {\n detectContentTypeSuccess: detectContentTypeSuccessWrap,\n },\n },\n editorPreviewSwaggerUI: {\n actions: {\n previewUnmounted,\n\n jumpToPath,\n jumpToPathStarted,\n jumpToPathSuccess,\n jumpToPathFailure,\n },\n wrapActions: {\n previewUnmounted: previewUnmountedWrap,\n },\n },\n },\n});\n\nexport default EditorPreviewSwaggerUIPlugin;\n","import React, { Suspense, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport '@asyncapi/react-component/styles/default.min.css';\n\nconst AsyncApiReactComponent = React.lazy(() =>\n import('@asyncapi/react-component/lib/esm/without-parser.js')\n);\n\nconst Loading = () => <div>Loading...</div>;\nconst Parsing = () => <div>Parsing...</div>;\n\nconst EditorPreviewAsyncAPI = ({\n getComponent,\n editorPreviewAsyncAPIActions,\n editorPreviewAsyncAPISelectors,\n}) => {\n const ParseErrors = getComponent('EditorPreviewAsyncAPIParseErrors');\n const isParseInProgress = editorPreviewAsyncAPISelectors.selectIsParseInProgress();\n const isParseSuccess = editorPreviewAsyncAPISelectors.selectIsParseSuccess();\n const isParseFailure = editorPreviewAsyncAPISelectors.selectIsParseFailure();\n const parseResult = editorPreviewAsyncAPISelectors.selectParseResult();\n const parseErrors = editorPreviewAsyncAPISelectors.selectParseErrors();\n const config = { show: { errors: true } };\n\n useEffect(() => {\n return () => {\n editorPreviewAsyncAPIActions.previewUnmounted();\n };\n }, [editorPreviewAsyncAPIActions]);\n\n return (\n <div className=\"swagger-editor__editor-preview-asyncapi\">\n <Suspense fallback={<Loading />}>\n {isParseInProgress && <Parsing />}\n {isParseSuccess && <AsyncApiReactComponent schema={parseResult} config={config} />}\n {isParseFailure && <ParseErrors errors={parseErrors} />}\n </Suspense>\n </div>\n );\n};\n\nEditorPreviewAsyncAPI.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewAsyncAPIActions: PropTypes.shape({\n previewUnmounted: PropTypes.func.isRequired,\n }).isRequired,\n editorPreviewAsyncAPISelectors: PropTypes.shape({\n selectIsParseInProgress: PropTypes.func.isRequired,\n selectIsParseSuccess: PropTypes.func.isRequired,\n selectIsParseFailure: PropTypes.func.isRequired,\n selectParseResult: PropTypes.func.isRequired,\n selectParseErrors: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default EditorPreviewAsyncAPI;\n","const ParseErrors = () => {\n return (\n <div className=\"swagger-editor__editor-preview-asyncapi-parse-errors\">\n <div className=\"swagger-ui\">\n <div className=\"version-pragma\">\n <div className=\"version-pragma__message version-pragma__message--missing\">\n <div>\n <h3>Invalid AsyncAPI definition.</h3>\n <p>\n The provided AsyncAPI definition is not valid. Please check your syntax, and correct\n any discrepancies to ensure it adheres to the AsyncAPI standards.\n </p>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default ParseErrors;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPreviewWrapper = (Original, system) => {\n const EditorPreview = ({ getComponent, editorSelectors }) => {\n const EditorPreviewAsyncAPI = getComponent('EditorPreviewAsyncAPI', true);\n\n return editorSelectors.selectIsContentTypeAsyncAPI2() ? (\n <EditorPreviewAsyncAPI />\n ) : (\n <Original {...system} /> // eslint-disable-line react/jsx-props-no-spreading\n );\n };\n\n EditorPreview.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeAsyncAPI2: PropTypes.func.isRequired,\n }).isRequired,\n };\n\n return EditorPreview;\n};\n\nexport default EditorPreviewWrapper;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"AsyncAPIDocument\"]: () => __WEBPACK_EXTERNAL_MODULE__asyncapi_parser_bad37540__.AsyncAPIDocument, [\"parse\"]: () => __WEBPACK_EXTERNAL_MODULE__asyncapi_parser_bad37540__.parse, [\"registerSchemaParser\"]: () => __WEBPACK_EXTERNAL_MODULE__asyncapi_parser_bad37540__.registerSchemaParser });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = __WEBPACK_EXTERNAL_MODULE__asyncapi_openapi_schema_parser_16ffeb94__;","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = __WEBPACK_EXTERNAL_MODULE__asyncapi_avro_schema_parser_e6df19e2__;","import YAML from 'js-yaml';\n\n/* eslint-disable no-param-reassign */\n\nexport async function parse({ message, defaultSchemaFormat }) {\n try {\n let { payload } = message;\n if (typeof payload === 'object') {\n payload = YAML.dump(payload);\n }\n\n message['x-parser-original-schema-format'] = message.schemaFormat || defaultSchemaFormat;\n message['x-parser-original-payload'] = payload;\n message.payload = { description: `\\`\\`\\`raml\\n${payload}\\n\\`\\`\\`` };\n } catch (e) {\n console.error(e); // eslint-disable-line no-console\n }\n}\n\nexport function getMimeTypes() {\n return ['application/raml+yaml;version=1.0'];\n}\n","import ShortUniqueId from 'short-unique-id';\nimport { parse as parseAsyncAPIDefinition, registerSchemaParser } from '@asyncapi/parser';\nimport * as openapiSchemaParser from '@asyncapi/openapi-schema-parser';\nimport * as avroSchemaParser from '@asyncapi/avro-schema-parser';\n\nimport * as ramlSchemaParser from './util/raml-1-0-parser.js';\n\nregisterSchemaParser(openapiSchemaParser);\nregisterSchemaParser(ramlSchemaParser);\nregisterSchemaParser(avroSchemaParser);\n\n/**\n * Action types.\n */\n\nexport const EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED =\n 'editor_preview_asyncapi_preview_unmounted';\n\nexport const EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED = 'editor_preview_asyncapi_parse_started';\nexport const EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS = 'editor_preview_asyncapi_parse_success';\nexport const EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE = 'editor_preview_asyncapi_parse_failure';\n\n/**\n * Action creators.\n */\n\nexport const previewUnmounted = () => ({\n type: EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED,\n});\n\nexport const parseStarted = ({ content, requestId }) => ({\n type: EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED,\n payload: content,\n meta: {\n requestId,\n },\n});\n\nexport const parseSuccess = ({ parseResult, content, requestId }) => ({\n type: EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS,\n payload: parseResult,\n meta: { content, requestId },\n});\n\nexport const parseFailure = ({ error, content, requestId }) => ({\n type: EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE,\n payload: error,\n error: true,\n meta: { content, requestId },\n});\n\n/**\n * Async thunks.\n */\n\nexport const parse = (content, parserOptions = {}) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n /**\n * This code can easily be offloaded to a web worker and allow MRT\n * not to be blocked by the detection.\n */\n const { editorPreviewAsyncAPIActions } = system;\n const requestId = uid();\n\n editorPreviewAsyncAPIActions.parseStarted({ content, requestId });\n\n try {\n const parseResult = await parseAsyncAPIDefinition(content, parserOptions);\n editorPreviewAsyncAPIActions.parseSuccess({ parseResult, content, requestId });\n } catch (error) {\n editorPreviewAsyncAPIActions.parseFailure({ error, content, requestId });\n }\n };\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const detectContentTypeSuccess = createSafeActionWrapper(\n (oriAction, system) =>\n ({ content }) => {\n const { editorSelectors, editorPreviewAsyncAPIActions } = system;\n\n if (editorSelectors.selectIsContentTypeAsyncAPI2()) {\n editorPreviewAsyncAPIActions.parse(content);\n }\n }\n);\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE_lodash_uniqWith_js_0c2624c1__[\"default\"] });","import { AsyncAPIDocument } from '@asyncapi/parser';\nimport uniqWith from 'lodash/uniqWith.js';\nimport { fromJS } from 'immutable';\n\nimport {\n EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED,\n EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED,\n EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS,\n EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE,\n} from './actions.js';\n\nexport const IDLE_STATUS = 'idle';\nexport const PARSING_STATUS = 'parsing';\nexport const SUCCESS_STATUS = 'success';\nexport const FAILURE_STATUS = 'failure';\n\nexport const initialState = {\n parserMarkers: [],\n parseStatus: IDLE_STATUS,\n parseRequestId: null,\n parseResult: null,\n parseErrors: null,\n};\n\n/**\n * Reducer utils.\n */\n\nconst parseValidationErrorsReducer = (action) => {\n const { payload: error } = action;\n\n if (!(Array.isArray(error.validationErrors) && error.validationErrors.length > 0)) return [];\n\n return error.validationErrors.map((validationError) => ({\n message: validationError.title,\n startLineNumber: validationError.location.startLine,\n endLineNumber: validationError.location.endLine,\n startColumn: validationError.location.startColumn,\n endColumn: validationError.location.endColumn,\n }));\n};\n\nconst parseRefErrorsReducer = (action) => {\n const { payload: error } = action;\n\n if (!(Array.isArray(error.refs) && error.refs.length > 0)) return [];\n\n return error.refs.map((refError, index) => {\n const message = index === 0 ? error.title : 'Invalid JSON Reference';\n\n return {\n message,\n startLineNumber: refError.startLine,\n endLineNumber: refError.endLine,\n startColumn: refError.startColumn,\n endColumn: refError.endColumn,\n };\n });\n};\n\n/**\n * Case reducers modeled as finite state machine.\n */\n\nconst previewUnmountedReducer = (state) => {\n const { parseStatus, parseRequestId, parseResult, parseErrors } = initialState;\n\n return state.merge({\n parseStatus,\n parseRequestId,\n parseResult,\n parseErrors,\n });\n};\n\nconst parseStartedReducer = (state, action) => {\n return state.merge({\n parseStatus: PARSING_STATUS,\n parseRequestId: action.meta.requestId,\n });\n};\n\nconst parseSuccessReducer = (state, action) => {\n const status = state.get('parseStatus') || IDLE_STATUS;\n const requestId = state.get('parseRequestId');\n\n if (status === PARSING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n parseStatus: SUCCESS_STATUS,\n parseRequestId: null,\n parseResult: AsyncAPIDocument.stringify(action.payload),\n parseErrors: null,\n });\n }\n\n return state;\n};\n\nconst parseFailureReducer = (state, action) => {\n const status = state.get('parseStatus') || IDLE_STATUS;\n const requestId = state.get('parseRequestId');\n\n if (status === PARSING_STATUS && requestId === action.meta.requestId) {\n const validationErrors = parseValidationErrorsReducer(action);\n const refErrors = parseRefErrorsReducer(action);\n const parseErrors = uniqWith([...validationErrors, ...refErrors], (arrVal, othVal) => {\n return (\n arrVal.message === othVal.message &&\n arrVal.startLineNumber === othVal.startLineNumber &&\n arrVal.startColumn === othVal.startColumn\n );\n });\n\n return state.merge({\n parseStatus: FAILURE_STATUS,\n parseRequestId: null,\n parseResult: null,\n parseErrors: fromJS(parseErrors),\n });\n }\n\n return state;\n};\n\n/**\n * Root reducer for this plugin.\n */\n\nconst reducers = {\n [EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED]: previewUnmountedReducer,\n\n [EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED]: parseStartedReducer,\n [EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS]: parseSuccessReducer,\n [EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE]: parseFailureReducer,\n};\n\nexport default reducers;\n","import { AsyncAPIDocument } from '@asyncapi/parser';\nimport { createSelector } from 'reselect';\n\nimport {\n IDLE_STATUS,\n PARSING_STATUS,\n SUCCESS_STATUS,\n FAILURE_STATUS,\n initialState,\n} from './reducers.js';\n\nconst selectState = (state) => state;\n\nexport const selectParseStatus = (state) => state.get('parseStatus', IDLE_STATUS);\n\nexport const selectParseResult = createSelector(selectState, (state) => {\n const parseResult = state.get('parseResult', initialState.parseResult);\n\n if (typeof parseResult !== 'string') {\n return null;\n }\n\n return AsyncAPIDocument.parse(state.get('parseResult'));\n});\n\nexport const selectParseErrors = createSelector(selectState, (state) => {\n const parseErrorsIm = state.get('parseErrors', initialState.parseResult);\n\n if (parseErrorsIm === null) {\n return [];\n }\n\n return parseErrorsIm.toJS();\n});\n\nexport const selectParseMarkers = createSelector(\n selectParseErrors,\n (state, { monaco }) => monaco,\n (state, { modelVersionId }) => modelVersionId,\n (parseErrors, monaco, modelVersionId) => {\n return parseErrors.map((parseError) => ({\n ...parseError,\n code: `ASNCPRSR`,\n severity: monaco.MarkerSeverity.Error,\n source: '@asyncapi/parser',\n modelVersionId,\n }));\n }\n);\n\nexport const selectIsParseInProgress = createSelector(\n selectParseStatus,\n selectParseResult,\n selectParseErrors,\n (parseStatus, parseResult, parseErrors) => {\n return parseStatus === PARSING_STATUS && parseResult === null && parseErrors === null;\n }\n);\n\nexport const selectIsParseSuccess = createSelector(\n selectParseStatus,\n (parseStatus) => parseStatus === SUCCESS_STATUS\n);\n\nexport const selectIsParseFailure = createSelector(\n selectParseStatus,\n (parseStatus) => parseStatus === FAILURE_STATUS\n);\n","class Disposable extends Array {\n dispose() {\n this.forEach((disposable) => disposable.dispose());\n this.length = 0;\n }\n}\n\nconst lazyMonacoContribution = ({ system }) => {\n const { fn, editorPreviewAsyncAPISelectors, editorSelectors, monaco } = system;\n const disposables = new Disposable();\n\n disposables.push(\n fn.registerMarkerDataProvider('apidom', {\n owner: 'asyncapi-parser',\n async provideMarkerData(model) {\n const modelValue = model.getValue();\n const modelVersionId = model.getVersionId();\n const conditionFn = () =>\n editorSelectors.selectIsContentTypeAsyncAPI2() &&\n modelValue === editorSelectors.selectContent() &&\n !editorPreviewAsyncAPISelectors.selectIsParseInProgress();\n\n try {\n // wait until proper content type has been detected and parsing has finished\n await fn.waitUntil(conditionFn);\n\n if (editorPreviewAsyncAPISelectors.selectIsParseSuccess()) return [];\n\n return editorPreviewAsyncAPISelectors.selectParseMarkers({ monaco, modelVersionId });\n } catch (e) {\n return [];\n }\n },\n })\n );\n\n // disposing of all allocated disposables\n disposables.push(\n monaco.editor.onDidCreateEditor((editor) => {\n disposables.push(\n editor.onDidDispose(() => {\n disposables.forEach((disposable) => {\n disposable.dispose();\n });\n disposables.length = 0;\n })\n );\n })\n );\n\n return disposables;\n};\n\nexport default lazyMonacoContribution;\n","import lazyMonacoContribution from './monaco.contribution.js';\n\nfunction afterLoad(system) {\n const { monaco, fn } = system;\n const usingEditorMonacoPlugin = typeof monaco !== 'undefined';\n const usingEditorMonacoLanguageApiDOMPlugin = typeof fn.getApiDOMWorker !== 'undefined';\n const pluginAPI = this.statePlugins.editorPreviewAsyncAPI;\n\n if (usingEditorMonacoPlugin && usingEditorMonacoLanguageApiDOMPlugin) {\n if (pluginAPI.disposables) pluginAPI.disposables.dispose();\n pluginAPI.disposables = lazyMonacoContribution({ system });\n }\n}\n\nexport default afterLoad;\n","import EditorPreviewAsyncAPI from './components/EditorPreviewAsyncAPI/EditorPreviewAsyncAPI.jsx';\nimport ParseErrors from './components/ParseErrors/ParseErrors.jsx';\nimport EditorPreviewWrapper from './wrap-components/EditorPreviewWrapper.jsx';\nimport { previewUnmounted, parse, parseStarted, parseSuccess, parseFailure } from './actions.js';\nimport { detectContentTypeSuccess as detectContentTypeSuccessWrap } from './wrap-actions.js';\nimport reducers from './reducers.js';\nimport {\n selectParseStatus,\n selectIsParseInProgress,\n selectIsParseSuccess,\n selectIsParseFailure,\n selectParseResult,\n selectParseErrors,\n selectParseMarkers,\n} from './selectors.js';\nimport afterLoad from './after-load.js';\n\nconst EditorPreviewAsyncAPIPlugin = () => ({\n afterLoad,\n components: {\n EditorPreviewAsyncAPI,\n EditorPreviewAsyncAPIParseErrors: ParseErrors,\n },\n wrapComponents: {\n EditorPreview: EditorPreviewWrapper,\n },\n statePlugins: {\n editor: {\n wrapActions: {\n detectContentTypeSuccess: detectContentTypeSuccessWrap,\n },\n },\n editorPreviewAsyncAPI: {\n actions: {\n previewUnmounted,\n parse,\n parseStarted,\n parseSuccess,\n parseFailure,\n },\n selectors: {\n selectParseStatus,\n selectIsParseInProgress,\n selectIsParseSuccess,\n selectIsParseFailure,\n selectParseResult,\n selectParseErrors,\n selectParseMarkers,\n },\n reducers,\n },\n },\n});\n\nexport default EditorPreviewAsyncAPIPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detect\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_json_1adf0e52__.detect, [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_json_1adf0e52__.detectionRegExp, [\"parse\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_json_1adf0e52__.parse });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detect\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_yaml_bdee7436__.detect, [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_yaml_bdee7436__.detectionRegExp, [\"parse\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_yaml_bdee7436__.parse });","import ShortUniqueId from 'short-unique-id';\nimport { parse as parseJSON } from '@swagger-api/apidom-parser-adapter-api-design-systems-json';\nimport { parse as parseYAML } from '@swagger-api/apidom-parser-adapter-api-design-systems-yaml';\n\n/**\n * Action types.\n */\n\nexport const EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED =\n 'editor_preview_api_design_systems_preview_unmounted';\n\nexport const EDITOR_PREVIEW_ADS_PARSE_STARTED = 'editor_preview_api_design_systems_parse_started';\nexport const EDITOR_PREVIEW_ADS_PARSE_SUCCESS = 'editor_preview_api_design_systems_parse_success';\nexport const EDITOR_PREVIEW_ADS_PARSE_FAILURE = 'editor_preview_api_design_systems_parse_failure';\n\n/**\n * Action creators.\n */\n\nexport const previewUnmounted = () => ({\n type: EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED,\n});\n\nexport const parseStarted = ({ content, contentType, requestId }) => ({\n type: EDITOR_PREVIEW_ADS_PARSE_STARTED,\n payload: content,\n meta: {\n contentType,\n requestId,\n },\n});\n\nexport const parseSuccess = ({ parseResult, content, contentType, requestId }) => ({\n type: EDITOR_PREVIEW_ADS_PARSE_SUCCESS,\n payload: parseResult,\n meta: { content, contentType, requestId },\n});\n\nexport const parseFailure = ({ error, content, contentType, requestId }) => ({\n type: EDITOR_PREVIEW_ADS_PARSE_FAILURE,\n payload: error,\n error: true,\n meta: { content, contentType, requestId },\n});\n\n/**\n * Async thunks.\n */\n\nexport const parse = ({ content, contentType, parserOptions = {} }) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n const { editorPreviewADSActions } = system;\n const requestId = uid();\n\n editorPreviewADSActions.parseStarted({ content, contentType, requestId });\n\n const parseAPIDesignSystemsDefinition = contentType.includes('+json') ? parseJSON : parseYAML;\n\n try {\n const parseResult = await parseAPIDesignSystemsDefinition(content, parserOptions);\n editorPreviewADSActions.parseSuccess({ parseResult, content, contentType, requestId });\n } catch (error) {\n editorPreviewADSActions.parseFailure({ error, content, contentType, requestId });\n }\n };\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const detectContentTypeSuccess = createSafeActionWrapper(\n (oriAction, system) =>\n ({ content }) => {\n const { editorSelectors, editorPreviewADSActions } = system;\n\n if (editorSelectors.selectIsContentTypeAPIDesignSystems()) {\n const contentType = editorSelectors.selectContentType();\n const parserOptions = {};\n\n editorPreviewADSActions.parse({ content, contentType, parserOptions });\n }\n }\n);\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"createNamespace\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.createNamespace, [\"from\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.from, [\"isArrayElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.isArrayElement, [\"isStringElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.isStringElement, [\"toString\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.toString, [\"toValue\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__.toValue });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"default\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__[\"default\"], [\"isInfoElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isInfoElement, [\"isMainElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isMainElement, [\"isPrincipleElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isPrincipleElement, [\"isRequirementLevelElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isRequirementLevelElement, [\"isScenarioElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isScenarioElement, [\"isStandardElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isStandardElement, [\"isStandardIdentifierElement\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__.isStandardIdentifierElement });","import { createNamespace } from '@swagger-api/apidom-core';\nimport namespace from '@swagger-api/apidom-ns-api-design-systems';\n\nconst apiDesignSystemsNamespace = createNamespace(namespace);\n\nexport default apiDesignSystemsNamespace;\n","import { toString } from '@swagger-api/apidom-core';\n\nimport apiDesignSystemsNamespace from './namespace.js';\nimport {\n EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED,\n EDITOR_PREVIEW_ADS_PARSE_STARTED,\n EDITOR_PREVIEW_ADS_PARSE_SUCCESS,\n EDITOR_PREVIEW_ADS_PARSE_FAILURE,\n} from './actions.js';\n\nexport const IDLE_STATUS = 'idle';\nexport const PARSING_STATUS = 'parsing';\nexport const SUCCESS_STATUS = 'success';\nexport const FAILURE_STATUS = 'failure';\n\nexport const initialState = {\n parseStatus: IDLE_STATUS,\n parseRequestId: null,\n parseResult: null,\n parseError: null,\n};\n\n/**\n * Case reducers modeled as finite state machine.\n */\n\nconst previewUnmountedReducer = (state) => {\n const { parseStatus, parseRequestId, parseResult, parseErrors } = initialState;\n\n return state.merge({\n parseStatus,\n parseRequestId,\n parseResult,\n parseErrors,\n });\n};\n\nconst parseStartedReducer = (state, action) => {\n return state.merge({\n parseStatus: PARSING_STATUS,\n parseRequestId: action.meta.requestId,\n });\n};\n\nconst parseSuccessReducer = (state, action) => {\n const status = state.get('parseStatus') || IDLE_STATUS;\n const requestId = state.get('parseRequestId');\n\n if (status === PARSING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n parseStatus: SUCCESS_STATUS,\n parseRequestId: null,\n parseResult: toString(action.payload, apiDesignSystemsNamespace),\n parseErrors: null,\n });\n }\n\n return state;\n};\n\nconst parseFailureReducer = (state, action) => {\n const status = state.get('parseStatus') || IDLE_STATUS;\n const requestId = state.get('parseRequestId');\n\n if (status === PARSING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n parseStatus: FAILURE_STATUS,\n parseRequestId: null,\n parseResult: null,\n parseErrors: action.payload,\n });\n }\n\n return state;\n};\n\n/**\n * Root reducer for this plugin.\n */\n\nconst reducers = {\n [EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED]: previewUnmountedReducer,\n\n [EDITOR_PREVIEW_ADS_PARSE_STARTED]: parseStartedReducer,\n [EDITOR_PREVIEW_ADS_PARSE_SUCCESS]: parseSuccessReducer,\n [EDITOR_PREVIEW_ADS_PARSE_FAILURE]: parseFailureReducer,\n};\n\nexport default reducers;\n","import { createSelector } from 'reselect';\nimport { from, toValue, isStringElement, isArrayElement } from '@swagger-api/apidom-core';\nimport {\n isMainElement,\n isInfoElement,\n isPrincipleElement,\n isStandardElement,\n isScenarioElement,\n isStandardIdentifierElement,\n isRequirementLevelElement,\n} from '@swagger-api/apidom-ns-api-design-systems';\n\nimport apiDesignSystemsNamespace from './namespace.js';\nimport { initialState, FAILURE_STATUS, PARSING_STATUS, SUCCESS_STATUS } from './reducers.js';\n\nconst selectState = (state) => state;\n\nexport const selectParseResult = createSelector(selectState, (state) => {\n const parseResult = state.get('parseResult', initialState.parseResult);\n\n if (typeof parseResult !== 'string') {\n return null;\n }\n\n return from(parseResult, apiDesignSystemsNamespace);\n});\n\nexport const selectParseError = createSelector(selectState, (state) => {\n return state.get('parseError', initialState.parseResult);\n});\n\nexport const selectParseStatus = (state) => state.get('parseStatus') || initialState.parseStatus;\n\nexport const selectIsParseInProgress = createSelector(\n selectParseStatus,\n selectParseResult,\n selectParseError,\n (parseStatus, parseResult, parseErrors) => {\n return parseStatus === PARSING_STATUS && parseResult === null && parseErrors === null;\n }\n);\n\nexport const selectIsParseSuccess = createSelector(\n selectParseStatus,\n (parseStatus) => parseStatus === SUCCESS_STATUS\n);\n\nexport const selectIsParseFailure = createSelector(\n selectParseStatus,\n (parseStatus) => parseStatus === FAILURE_STATUS\n);\n\nexport const selectMainElement = createSelector(selectParseResult, (parseResult) => {\n if (parseResult === null) return null;\n\n const { result } = parseResult;\n\n return isMainElement(result) ? result : null;\n});\n\nexport const selectVersion = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { version } = mainElement;\n\n return isStringElement(version) ? toValue(version) : '2021-05-07';\n});\n\nexport const selectInfo = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { info } = mainElement;\n\n return isInfoElement(info) ? toValue(info) : null;\n});\n\nexport const selectPrinciplesCount = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { principles } = mainElement;\n\n return isArrayElement(principles) ? principles.length : 0;\n});\n\nexport const selectStandardsCount = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { standards } = mainElement;\n\n return isArrayElement(standards) ? standards.length : 0;\n});\n\nexport const selectScenariosCount = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return null;\n\n const { scenarios } = mainElement;\n\n return isArrayElement(scenarios) ? scenarios.length : 0;\n});\n\nexport const selectPrinciples = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return [];\n\n const { principles } = mainElement;\n\n if (!isArrayElement(principles)) return [];\n\n return principles.filter(isPrincipleElement).toValue();\n});\n\nexport const selectStandards = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return [];\n\n const { standards } = mainElement;\n\n if (!isArrayElement(standards)) return [];\n\n return standards.filter(isStandardElement).toValue();\n});\n\nexport const selectScenarios = createSelector(selectMainElement, (mainElement) => {\n if (mainElement === null) return [];\n\n const { scenarios } = mainElement;\n\n if (!isArrayElement(scenarios)) return [];\n\n return scenarios.filter(isScenarioElement).elements;\n});\n\nexport const selectStandardIdentifier = (state, { standardIdentifier }) => {\n if (!isStandardIdentifierElement(standardIdentifier)) return '[]';\n\n return `[${String(toValue(standardIdentifier)).replaceAll(',', ' > ')}]`;\n};\n\nexport const selectScenarioDescription = (state, { scenarioElement }) => {\n if (!isScenarioElement(scenarioElement)) return '';\n if (!isStringElement(scenarioElement.description)) return '';\n\n return toValue(scenarioElement.description);\n};\n\nexport const selectScenarioRequirements = (state, { scenarioElement }) => {\n if (!isScenarioElement(scenarioElement)) return [];\n if (!isArrayElement(scenarioElement.then)) return [];\n\n return scenarioElement.then.content;\n};\n\nexport const selectRequirementLevel = (state, { requirementElement }) => {\n if (!isRequirementLevelElement(requirementElement.level)) return 'unknown';\n\n return toValue(requirementElement.level);\n};\n\nexport const selectRequirementValues = (state, { requirementElement }) => {\n if (!isArrayElement(requirementElement.values)) return 'unknown';\n\n return String(toValue(requirementElement.values)).replaceAll(',', ', ');\n};\n","import PropTypes from 'prop-types';\n\nconst Main = ({ getComponent }) => {\n const Info = getComponent('ADSInfo', true);\n const Principles = getComponent('ADSPrinciples', true);\n const Standards = getComponent('ADSStandards', true);\n const Scenarios = getComponent('ADSScenarios', true);\n\n return (\n <section className=\"swagger-ui swagger-container\">\n <div className=\"swagger-ui\">\n <div className=\"information-container wrapper\">\n <section className=\"block col-12\">\n <Info />\n <Principles />\n <Standards />\n <Scenarios />\n <br />\n </section>\n </div>\n </div>\n </section>\n );\n};\n\nMain.propTypes = {\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default Main;\n","import PropTypes from 'prop-types';\n\nconst Info = ({ editorPreviewADSSelectors }) => {\n const version = editorPreviewADSSelectors.selectVersion();\n const info = editorPreviewADSSelectors.selectInfo();\n const principles = editorPreviewADSSelectors.selectPrinciplesCount();\n const standards = editorPreviewADSSelectors.selectStandardsCount();\n const scenarios = editorPreviewADSSelectors.selectScenariosCount();\n\n if (info === null) return null;\n\n return (\n <div className=\"info\">\n <hgroup className=\"main\">\n <h2 className=\"title\">\n {info.title}\n <span>\n <small>\n <pre className=\"version\">{version}</pre>\n </small>\n <small className=\"version-stamp\">\n <pre className=\"version\">ADS</pre>\n </small>\n </span>\n </h2>\n </hgroup>\n <hgroup className=\"main title\">\n <span>\n <small className=\"summary-pill\">\n <pre className=\"version\"> {principles} Principles</pre>\n </small>\n <small className=\"summary-pill\">\n <pre className=\"version\"> {standards} Standards</pre>\n </small>\n <small className=\"summary-pill\">\n <pre className=\"version\"> {scenarios} Scenarios</pre>\n </small>\n </span>\n </hgroup>\n\n <div className=\"description\">\n <div className=\"renderedMarkdown\">\n <p>{info.description}</p>\n </div>\n </div>\n </div>\n );\n};\n\nInfo.propTypes = {\n editorPreviewADSSelectors: PropTypes.shape({\n selectVersion: PropTypes.func.isRequired,\n selectInfo: PropTypes.func.isRequired,\n selectPrinciplesCount: PropTypes.func.isRequired,\n selectStandardsCount: PropTypes.func.isRequired,\n selectScenariosCount: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Info;\n","import PropTypes from 'prop-types';\n\nconst Principles = ({ editorPreviewADSSelectors, getComponent }) => {\n const principlesCount = editorPreviewADSSelectors.selectPrinciplesCount();\n const principles = editorPreviewADSSelectors.selectPrinciples();\n const Principle = getComponent('ADSPrinciple');\n\n return (\n <div className=\"no-margin\">\n <div className=\"opblock opblock-post is-open\">\n <div className=\"opblock-summary opblock-summary-post\">\n <span\n className=\"opblock-summary-method\"\n style={{ paddingLeft: '6px', paddingRight: '6px' }}\n >\n {principlesCount} Principles\n </span>\n </div>\n <div className=\"no-margin\">\n <div className=\"opblock-body\">\n <div className=\"opblock-description-wrapper\">\n <div className=\"opblock-description\">\n <div className=\"markdown\">\n <p>Principles guide how decisions in API design and delivery should be made.</p>\n </div>\n </div>\n </div>\n <div className=\"opblock-section\">\n <div className=\"parameters-container\">\n <div className=\"table-container\">\n <table className=\"model ads-principles\">\n <thead>\n <tr>\n <th className=\"col_header\" style={{ width: '50%' }}>\n Internationalized Resource Identifiers\n </th>\n <th className=\"col_header\" style={{ width: '20%' }}>\n level\n </th>\n <th className=\"col_header\">Name</th>\n </tr>\n </thead>\n <tbody>\n {principles.map((principle) => (\n <Principle\n key={principle.iri}\n name={principle.name}\n iri={principle.iri}\n level={principle.level}\n />\n ))}\n </tbody>\n </table>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nPrinciples.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectPrinciplesCount: PropTypes.func.isRequired,\n selectPrinciples: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Principles;\n","import PropTypes from 'prop-types';\n\nconst Principle = ({ name, iri, level }) => {\n return (\n <tr>\n <td>\n <span className=\"property-primitivetype\">{iri}</span>\n </td>\n <td>\n <span className=\"prop-type\">{level}</span>\n </td>\n <td>{name}</td>\n </tr>\n );\n};\n\nPrinciple.propTypes = {\n name: PropTypes.string,\n iri: PropTypes.string.isRequired,\n level: PropTypes.string.isRequired,\n};\n\nPrinciple.defaultProps = {\n name: '',\n};\n\nexport default Principle;\n","import PropTypes from 'prop-types';\n\nconst Standards = ({ editorPreviewADSSelectors, getComponent }) => {\n const standardsCount = editorPreviewADSSelectors.selectStandardsCount();\n const standards = editorPreviewADSSelectors.selectStandards();\n const Standard = getComponent('ADSStandard');\n\n return (\n <div className=\"no-margin\">\n <div className=\"opblock opblock-get is-open\">\n <div className=\"opblock-summary opblock-summary-get\">\n <span\n className=\"opblock-summary-method\"\n style={{ paddingLeft: '6px', paddingRight: '6px' }}\n >\n {standardsCount} Standards\n </span>\n </div>\n <div className=\"no-margin\">\n <div className=\"opblock-body\">\n <div className=\"opblock-description-wrapper\">\n <div className=\"opblock-description\">\n <div className=\"markdown\">\n <p>\n Standards are industry best practices (e.g. RFCs) that shall influence the rules\n for API design.\n </p>\n </div>\n </div>\n </div>\n <div className=\"opblock-section\">\n <div className=\"parameters-container\">\n <div className=\"table-container\">\n <table className=\"model ads-principles\">\n <thead>\n <tr>\n <th className=\"col_header\" style={{ width: '50%' }}>\n Internationalized Resource Identifiers\n </th>\n <th className=\"col_header\" style={{ width: '20%' }}>\n level\n </th>\n <th className=\"col_header\">Name</th>\n </tr>\n </thead>\n <tbody>\n {standards.map((principle) => (\n <Standard\n key={principle.iri}\n name={principle.name}\n iri={principle.iri}\n level={principle.level}\n />\n ))}\n </tbody>\n </table>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nStandards.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectStandardsCount: PropTypes.func.isRequired,\n selectStandards: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Standards;\n","import PropTypes from 'prop-types';\n\nconst Standard = ({ name, iri, level }) => {\n return (\n <tr>\n <td>\n <span className=\"property-primitivetype\">{iri}</span>\n </td>\n <td>\n <span className=\"prop-type\">{level}</span>\n </td>\n <td>{name}</td>\n </tr>\n );\n};\n\nStandard.propTypes = {\n name: PropTypes.string,\n iri: PropTypes.string.isRequired,\n level: PropTypes.string.isRequired,\n};\n\nStandard.defaultProps = {\n name: '',\n};\n\nexport default Standard;\n","import PropTypes from 'prop-types';\n\nconst Scenarios = ({ getComponent, editorPreviewADSSelectors }) => {\n const scenariosCount = editorPreviewADSSelectors.selectScenariosCount();\n const scenarios = editorPreviewADSSelectors.selectScenarios();\n const Scenario = getComponent('ADSScenario', true);\n\n return (\n <section className=\"block col-12 block-desktop col-12-desktop\">\n <section className=\"models is-open\">\n <h4>\n <button type=\"button\" aria-expanded=\"true\" className=\"models-control\">\n <span>{scenariosCount} Governance Scenarios</span>\n <svg width=\"20\" height=\"20\" aria-hidden=\"true\" focusable=\"false\" />\n </button>\n </h4>\n\n <div className=\"no-margin\">\n {scenarios.map((scenarioElement) => {\n const key = editorPreviewADSSelectors.selectStandardIdentifier({\n standardIdentifier: scenarioElement.when,\n });\n return <Scenario key={key} element={scenarioElement} />;\n })}\n </div>\n </section>\n </section>\n );\n};\n\nScenarios.propTypes = {\n editorPreviewADSSelectors: PropTypes.shape({\n selectScenariosCount: PropTypes.func.isRequired,\n selectScenarios: PropTypes.func.isRequired,\n selectStandardIdentifier: PropTypes.func.isRequired,\n }).isRequired,\n getComponent: PropTypes.func.isRequired,\n};\n\nexport default Scenarios;\n","import PropTypes from 'prop-types';\nimport { ScenarioElement } from '@swagger-api/apidom-ns-api-design-systems';\n\nconst Scenario = ({ getComponent, editorPreviewADSSelectors, element }) => {\n const scenarioName = editorPreviewADSSelectors.selectStandardIdentifier({\n standardIdentifier: element.when,\n });\n const description = editorPreviewADSSelectors.selectScenarioDescription({\n scenarioElement: element,\n });\n const requirements = editorPreviewADSSelectors.selectScenarioRequirements({\n scenarioElement: element,\n });\n const Requirement = getComponent('ADSRequirement', true);\n\n return (\n <div className=\"modal-container\">\n <span className=\"model-box\" style={{ display: 'block' }}>\n <button\n type=\"button\"\n aria-expanded=\"false\"\n className=\"model-box-control\"\n style={{ width: '100%' }}\n >\n <span className=\"pointer\">\n <span className=\"model-box\">\n <span className=\"model model-title\">\n <strong>Scenario: </strong> {scenarioName}\n </span>\n </span>\n </span>\n\n <div className=\"description\">\n <div className=\"markdown\">\n <p>{description}</p>\n </div>\n </div>\n\n <div className=\"table-container\">\n <table className=\"model\">\n <thead>\n <tr>\n <th className=\"col_header\" style={{ width: '50%' }}>\n Subject\n </th>\n <th className=\"col_header\">Level</th>\n <th className=\"col_header\" style={{ width: '40%' }}>\n Values\n </th>\n </tr>\n </thead>\n <tbody>\n {requirements.map((requirementElement, index) => {\n // eslint-disable-next-line react/no-array-index-key\n return <Requirement key={index} element={requirementElement} />;\n })}\n </tbody>\n </table>\n </div>\n </button>\n </span>\n </div>\n );\n};\n\nScenario.propTypes = {\n element: PropTypes.instanceOf(ScenarioElement).isRequired,\n getComponent: PropTypes.func.isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectStandardIdentifier: PropTypes.func.isRequired,\n selectScenarioDescription: PropTypes.func.isRequired,\n selectScenarioRequirements: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Scenario;\n","import PropTypes from 'prop-types';\nimport { RequirementElement } from '@swagger-api/apidom-ns-api-design-systems';\n\nconst Requirement = ({ editorPreviewADSSelectors, element }) => {\n const subject = editorPreviewADSSelectors.selectStandardIdentifier({\n standardIdentifier: element.subject,\n });\n const level = editorPreviewADSSelectors.selectRequirementLevel({ requirementElement: element });\n const values = editorPreviewADSSelectors.selectRequirementValues({ requirementElement: element });\n\n return (\n <tr className=\"property-row\">\n <td>{subject}</td>\n <td>\n <span className=\"prop-type\">{level}</span>\n </td>\n <td>\n <span className=\"property-primitive\">{values}</span>\n </td>\n </tr>\n );\n};\n\nRequirement.propTypes = {\n element: PropTypes.instanceOf(RequirementElement).isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectStandardIdentifier: PropTypes.func.isRequired,\n selectRequirementLevel: PropTypes.func.isRequired,\n selectRequirementValues: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default Requirement;\n","import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\n\nconst Parsing = () => <div>Parsing...</div>;\n\nconst EditorPreviewAPIDesignSystems = ({\n getComponent,\n editorPreviewADSActions,\n editorPreviewADSSelectors,\n}) => {\n const Main = getComponent('ADSMain', true);\n const ParseErrors = getComponent('EditorPreviewAPIDesignSystemsParseErrors', true);\n const isParseInProgress = editorPreviewADSSelectors.selectIsParseInProgress();\n const isParseSuccess = editorPreviewADSSelectors.selectIsParseSuccess();\n const isParseFailure = editorPreviewADSSelectors.selectIsParseFailure();\n const parseError = editorPreviewADSSelectors.selectParseError();\n\n useEffect(() => {\n return () => {\n editorPreviewADSActions.previewUnmounted();\n };\n }, [editorPreviewADSActions]);\n\n return (\n <section className=\"swagger-editor__editor-preview-api-design-systems\">\n {isParseInProgress && <Parsing />}\n {isParseSuccess && <Main />}\n {isParseFailure && <ParseErrors error={parseError} />}\n </section>\n );\n};\n\nEditorPreviewAPIDesignSystems.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorPreviewADSActions: PropTypes.shape({\n previewUnmounted: PropTypes.func.isRequired,\n }).isRequired,\n editorPreviewADSSelectors: PropTypes.shape({\n selectIsParseInProgress: PropTypes.func.isRequired,\n selectIsParseSuccess: PropTypes.func.isRequired,\n selectIsParseFailure: PropTypes.func.isRequired,\n selectParseResult: PropTypes.func.isRequired,\n selectParseError: PropTypes.func.isRequired,\n selectMainElement: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default EditorPreviewAPIDesignSystems;\n","import PropTypes from 'prop-types';\n\nconst ParseErrors = ({ error }) => {\n return (\n <div className=\"swagger-editor__editor-preview-api-design-systems-parse-errors\">\n <div className=\"swagger-ui\">\n <div className=\"version-pragma\">\n <div className=\"version-pragma__message version-pragma__message--missing\">\n <div>\n <h3>Invalid API Design Systems definition.</h3>\n <p>Please fix the error: {error.message}</p>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nParseErrors.propTypes = {\n error: PropTypes.shape({ message: PropTypes.string }).isRequired,\n};\n\nexport default ParseErrors;\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst EditorPreviewWrapper = (Original, system) => {\n const EditorPreview = ({ editorSelectors, getComponent }) => {\n const EditorPreviewAPIDesignSystems = getComponent('EditorPreviewAPIDesignSystems', true);\n\n return editorSelectors.selectIsContentTypeAPIDesignSystems() ? (\n <EditorPreviewAPIDesignSystems />\n ) : (\n <Original {...system} /> // eslint-disable-line react/jsx-props-no-spreading\n );\n };\n\n EditorPreview.propTypes = {\n editorSelectors: PropTypes.oneOfType([\n PropTypes.shape({\n selectIsContentTypeAPIDesignSystems: PropTypes.func.isRequired,\n }),\n ]).isRequired,\n getComponent: PropTypes.func.isRequired,\n };\n\n return EditorPreview;\n};\n\nexport default EditorPreviewWrapper;\n","import { previewUnmounted, parse, parseStarted, parseSuccess, parseFailure } from './actions.js';\nimport { detectContentTypeSuccess as detectContentTypeSuccessWrap } from './wrap-actions.js';\nimport {\n selectParseStatus,\n selectIsParseInProgress,\n selectIsParseFailure,\n selectIsParseSuccess,\n selectParseResult,\n selectParseError,\n selectMainElement,\n selectVersion,\n selectInfo,\n selectPrinciplesCount,\n selectStandardsCount,\n selectScenariosCount,\n selectPrinciples,\n selectStandards,\n selectScenarios,\n selectStandardIdentifier,\n selectScenarioDescription,\n selectScenarioRequirements,\n selectRequirementLevel,\n selectRequirementValues,\n} from './selectors.js';\nimport reducers from './reducers.js';\nimport Main from './components/Main.jsx';\nimport Info from './components/Info.jsx';\nimport Principles from './components/Principles.jsx';\nimport Principle from './components/Principle.jsx';\nimport Standards from './components/Standards.jsx';\nimport Standard from './components/Standard.jsx';\nimport Scenarios from './components/Scenarios.jsx';\nimport Scenario from './components/Scenario.jsx';\nimport Requirement from './components/Requirement.jsx';\nimport EditorPreviewAPIDesignSystems from './components/EditorPreviewAPIDesignSystems.jsx';\nimport ParseErrors from './components/ParseErrors.jsx';\nimport EditorPreviewWrapper from './wrap-components/EditorPreviewWrapper.jsx';\n\nconst EditorPreviewApiDesignSystemsPlugin = () => {\n return {\n components: {\n ADSMain: Main,\n ADSInfo: Info,\n ADSPrinciples: Principles,\n ADSPrinciple: Principle,\n ADSStandards: Standards,\n ADSStandard: Standard,\n ADSScenarios: Scenarios,\n ADSScenario: Scenario,\n ADSRequirement: Requirement,\n EditorPreviewAPIDesignSystems,\n EditorPreviewAPIDesignSystemsParseErrors: ParseErrors,\n },\n wrapComponents: {\n EditorPreviewPane: EditorPreviewWrapper,\n },\n statePlugins: {\n editor: {\n wrapActions: {\n detectContentTypeSuccess: detectContentTypeSuccessWrap,\n },\n },\n editorPreviewADS: {\n actions: {\n previewUnmounted,\n\n parse,\n parseStarted,\n parseSuccess,\n parseFailure,\n },\n selectors: {\n selectParseStatus,\n selectIsParseInProgress,\n selectIsParseSuccess,\n selectIsParseFailure,\n selectParseResult,\n selectParseError,\n selectMainElement,\n selectVersion,\n selectInfo,\n selectPrinciplesCount,\n selectStandardsCount,\n selectScenariosCount,\n selectPrinciples,\n selectStandards,\n selectScenarios,\n selectStandardIdentifier,\n selectScenarioDescription,\n selectScenarioRequirements,\n selectRequirementLevel,\n selectRequirementValues,\n },\n reducers,\n },\n },\n };\n};\n\nexport default EditorPreviewApiDesignSystemsPlugin;\n","/**\n * Action types.\n */\nexport const EDITOR_CONTENT_SET_READ_ONLY = 'editor_update_read_only';\nexport const EDITOR_CONTENT_SET_READ_WRITE = 'editor_update_read_write';\n\n/**\n * Action creators.\n */\nexport const setContentReadOnly = () => ({\n type: EDITOR_CONTENT_SET_READ_ONLY,\n});\n\nexport const setContentReadWrite = () => ({\n type: EDITOR_CONTENT_SET_READ_WRITE,\n});\n","import { EDITOR_CONTENT_SET_READ_ONLY, EDITOR_CONTENT_SET_READ_WRITE } from './actions.js';\n\nconst reducers = {\n [EDITOR_CONTENT_SET_READ_ONLY]: (state) => {\n return state.set('contentIsReadOnly', true);\n },\n [EDITOR_CONTENT_SET_READ_WRITE]: (state) => {\n return state.set('contentIsReadOnly', false);\n },\n};\n\nexport default reducers;\n","export const selectContentIsReadOnly = (state) => state.get('contentIsReadOnly') || false;\n\nexport const selectContentIsReadWrite = (state) => !selectContentIsReadOnly(state);\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { LockIcon, UnlockIcon } from '@primer/octicons-react';\n\nconst ReadOnlySelectionIcon = ({ editorSelectors, editorActions }) => {\n const isReadWrite = editorSelectors.selectContentIsReadWrite();\n const handleReadonly = (isReadOnlyNew) => () => {\n if (isReadOnlyNew) {\n editorActions.setContentReadOnly();\n } else {\n editorActions.setContentReadWrite();\n }\n };\n\n return isReadWrite ? (\n <div className=\"swagger-editor__generic-padding-thin-top-bottom\">\n <button\n type=\"button\"\n className=\"swagger-editor__editor-pane-bar-control\"\n onClick={handleReadonly(true)}\n >\n <UnlockIcon size=\"small\" aria-label=\"Unlock\" />\n </button>\n </div>\n ) : (\n <div className=\"swagger-editor__generic-padding-thin-top-bottom\">\n <button\n type=\"button\"\n className=\"swagger-editor__editor-pane-bar-control\"\n onClick={handleReadonly(false)}\n >\n <LockIcon size=\"small\" aria-label=\"Lock\" />\n </button>\n </div>\n );\n};\n\nReadOnlySelectionIcon.propTypes = {\n editorActions: PropTypes.shape({\n setContentReadOnly: PropTypes.func.isRequired,\n setContentReadWrite: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectContentIsReadWrite: PropTypes.func.isRequired,\n }).isRequired,\n};\n\nexport default ReadOnlySelectionIcon;\n","import PropTypes from 'prop-types';\n/* eslint-disable react/jsx-props-no-spreading */\n\nconst EditorPaneBarTopWrapper = (Original, system) => {\n const ReadOnlySelection = system.getComponent('ReadOnlySelection', true);\n const EditorPaneBarTop = ({ renderControls, ...rest }) => {\n return (\n <Original\n {...rest}\n renderControls={(controls) =>\n renderControls(\n <>\n <ReadOnlySelection />\n {controls}\n </>\n )\n }\n />\n );\n };\n EditorPaneBarTop.propTypes = {\n renderControls: PropTypes.func,\n };\n EditorPaneBarTop.defaultProps = {\n renderControls: (controls) => controls,\n };\n\n return EditorPaneBarTop;\n};\n\nexport default EditorPaneBarTopWrapper;\n","const EditorWrapper = (Original, system) => {\n const Editor = (props) => {\n const isReadOnly = system.editorSelectors.selectContentIsReadOnly();\n\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <Original {...props} isReadOnly={isReadOnly} />;\n };\n\n return Editor;\n};\n\nexport default EditorWrapper;\n","import reducers from './reducers.js';\nimport { setContentReadOnly, setContentReadWrite } from './actions.js';\nimport { selectContentIsReadOnly, selectContentIsReadWrite } from './selectors.js';\nimport ReadOnlySelectionIcon from './components/ReadOnlySelectionIcon.jsx';\nimport EditorPaneBarTopWrapper from './wrap-components/EditorPaneBarTopWrapper.jsx';\nimport EditorWrapper from './wrap-components/EditorWrapper.jsx';\n\nconst EditorContentReadOnlyPlugin = () => {\n return {\n components: {\n ReadOnlySelection: ReadOnlySelectionIcon,\n },\n wrapComponents: {\n Editor: EditorWrapper,\n EditorPaneBarTop: EditorPaneBarTopWrapper,\n },\n statePlugins: {\n editor: {\n reducers,\n selectors: {\n selectContentIsReadOnly,\n selectContentIsReadWrite,\n },\n actions: {\n setContentReadOnly,\n setContentReadWrite,\n },\n },\n },\n };\n};\n\nexport default EditorContentReadOnlyPlugin;\n","export const EDITOR_CONTENT_SET_ORIGIN = 'editor_content_set_origin';\n\nexport const setContentOrigin = (contentOrigin = 'not-editor') => ({\n type: EDITOR_CONTENT_SET_ORIGIN,\n payload: String(contentOrigin),\n});\n","import { EDITOR_CONTENT_SET_ORIGIN } from './actions.js';\n\nconst reducers = {\n [EDITOR_CONTENT_SET_ORIGIN]: (state, action) => {\n return state.set('contentOrigin', action.payload);\n },\n};\n\nexport default reducers;\n","// eslint-disable-next-line import/prefer-default-export\nexport const selectContentOrigin = (state) => state.get('contentOrigin') || 'not-editor';\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const setContent = createSafeActionWrapper(\n (oriAction, system) => (content, contentOrigin) => {\n const { editorActions } = system;\n\n editorActions.setContentOrigin(contentOrigin);\n }\n);\n","import reducers from './reducers.js';\nimport { selectContentOrigin } from './selectors.js';\nimport { setContentOrigin } from './actions.js';\nimport { setContent } from './wrap-actions.js';\n\n/**\n * Wraps setContent to include the \"contentOrigin\" parameter, defaulting to \"not-editor\".\n * Includes a selector to get the origin: `editorSelectors.selectContentOrigin()`.\n */\n\nconst EditorContentOriginPlugin = () => {\n return {\n statePlugins: {\n editor: {\n wrapActions: {\n setContent,\n },\n reducers,\n selectors: {\n selectContentOrigin,\n },\n actions: {\n setContentOrigin,\n },\n },\n },\n };\n};\n\nexport default EditorContentOriginPlugin;\n","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_asyncapi_json_2_77a2dadd__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_asyncapi_yaml_2_8d232224__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_json_3_0_9283cb64__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_yaml_3_0_95da947e__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_json_3_1_6b2e7700__.detectionRegExp });","var x = y => { var x = {}; __webpack_require__.d(x, y); return x; }\nvar y = x => () => x\nconst __WEBPACK_NAMESPACE_OBJECT__ = x({ [\"detectionRegExp\"]: () => __WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_yaml_3_1_7a900d16__.detectionRegExp });","import ShortUniqueId from 'short-unique-id';\nimport { detectionRegExp as detectionRegExpAsyncAPIJSON2 } from '@swagger-api/apidom-parser-adapter-asyncapi-json-2';\nimport { detectionRegExp as detectionRegExpAsyncAPIYAML2 } from '@swagger-api/apidom-parser-adapter-asyncapi-yaml-2';\nimport { detectionRegExp as detectionRegExpOpenAPIJSON30x } from '@swagger-api/apidom-parser-adapter-openapi-json-3-0';\nimport { detectionRegExp as detectionRegExpOpenAPIYAML30x } from '@swagger-api/apidom-parser-adapter-openapi-yaml-3-0';\nimport { detectionRegExp as detectionRegExpOpenAPIJSON31x } from '@swagger-api/apidom-parser-adapter-openapi-json-3-1';\nimport { detectionRegExp as detectionRegExpOpenAPIYAML31x } from '@swagger-api/apidom-parser-adapter-openapi-yaml-3-1';\nimport {\n detectionRegExp as detectionRegExpApiDesignSystemsJSON,\n detect as detectAPIDesignSystemsJSON,\n} from '@swagger-api/apidom-parser-adapter-api-design-systems-json';\nimport {\n detectionRegExp as detectionRegExpApiDesignSystemsYAML,\n detect as detectAPIDesignSystemsYAML,\n} from '@swagger-api/apidom-parser-adapter-api-design-systems-yaml';\n\n/**\n * Action types.\n */\nexport const EDITOR_CONTENT_TYPE_DETECT_STARTED = 'editor_content_type_detect_started';\nexport const EDITOR_CONTENT_TYPE_DETECT_SUCCESS = 'editor_content_type_detect_success';\nexport const EDITOR_CONTENT_TYPE_DETECT_FAILURE = 'editor_content_type_detect_failure';\n\n/**\n * Action creators.\n */\nexport const detectContentTypeStarted = ({ content, requestId }) => ({\n type: EDITOR_CONTENT_TYPE_DETECT_STARTED,\n payload: content,\n meta: {\n requestId,\n },\n});\n\nexport const detectContentTypeSuccess = ({ contentType, content, requestId }) => ({\n type: EDITOR_CONTENT_TYPE_DETECT_SUCCESS,\n payload: contentType,\n meta: { content, requestId },\n});\n\nexport const detectContentTypeFailure = ({ error, content, requestId }) => ({\n type: EDITOR_CONTENT_TYPE_DETECT_FAILURE,\n payload: error,\n error: true,\n meta: { content, requestId },\n});\n\n/**\n * Async thunks.\n */\nexport const detectContentType = (content) => {\n const uid = new ShortUniqueId({ length: 10 });\n\n return async (system) => {\n /**\n * This code can easily be offloaded to a web worker and allow MRT\n * not to be blocked by the detection.\n */\n const { editorActions, fn } = system;\n const requestId = uid();\n\n editorActions.detectContentTypeStarted({ content, requestId });\n\n try {\n const asyncApi2JSONMatch = content.match(detectionRegExpAsyncAPIJSON2);\n if (asyncApi2JSONMatch !== null && fn.isValidJSONObject(content)) {\n const { groups } = asyncApi2JSONMatch;\n const version = groups?.version_json;\n const contentType = `application/vnd.aai.asyncapi+json;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const asyncApi2YAMLMatch = content.match(detectionRegExpAsyncAPIYAML2);\n if (asyncApi2YAMLMatch !== null && fn.isValidYAMLObject(content)) {\n const { groups } = asyncApi2YAMLMatch;\n const version = groups?.version_json || groups?.version_yaml;\n const contentType = `application/vnd.aai.asyncapi+yaml;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi20JSONMatch = content.match(/\"swagger\"\\s*:\\s*\"(?<version_json>2\\.0)\"/);\n if (openApi20JSONMatch !== null && fn.isValidJSONObject(content)) {\n const contentType = 'application/vnd.oai.openapi+json;version=2.0';\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi2YAMLMatch = content.match(\n /(?<YAML>^([\"']?)swagger\\2\\s*:\\s*([\"']?)(?<version_yaml>2\\.0)\\3(?:\\s+|$))|(?<JSON>\"asyncapi\"\\s*:\\s*\"(?<version_json>2\\.0)\")/m\n );\n if (openApi2YAMLMatch !== null && fn.isValidYAMLObject(content)) {\n const contentType = 'application/vnd.oai.openapi+yaml;version=2.0';\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi30xJSONMatch = content.match(detectionRegExpOpenAPIJSON30x);\n if (openApi30xJSONMatch !== null && fn.isValidJSONObject(content)) {\n const { groups } = openApi30xJSONMatch;\n const version = groups?.version_json;\n const contentType = `application/vnd.oai.openapi+json;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi30xYAMLMatch = content.match(detectionRegExpOpenAPIYAML30x);\n if (openApi30xYAMLMatch !== null && fn.isValidYAMLObject(content)) {\n const { groups } = openApi30xYAMLMatch;\n const version = groups?.version_json || groups?.version_yaml;\n const contentType = `application/vnd.oai.openapi+yaml;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi31xJSONMatch = content.match(detectionRegExpOpenAPIJSON31x);\n if (openApi31xJSONMatch !== null && fn.isValidJSONObject(content)) {\n const { groups } = openApi31xJSONMatch;\n const version = groups?.version_json;\n const contentType = `application/vnd.oai.openapi+json;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const openApi31xYAMLMatch = content.match(detectionRegExpOpenAPIYAML31x);\n if (openApi31xYAMLMatch !== null && fn.isValidYAMLObject(content)) {\n const { groups } = openApi31xYAMLMatch;\n const version = groups?.version_json || groups?.version_yaml;\n const contentType = `application/vnd.oai.openapi+yaml;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const apiDesignSystemsJSONMatch = content.match(detectionRegExpApiDesignSystemsJSON);\n if (apiDesignSystemsJSONMatch !== null && (await detectAPIDesignSystemsJSON(content))) {\n const { groups } = apiDesignSystemsJSONMatch;\n const version = groups?.version_json;\n const contentType = `application/vnd.aai.apidesignsystems+json;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n const apiDesignSystemsYAMLMatch = content.match(detectionRegExpApiDesignSystemsYAML);\n if (apiDesignSystemsYAMLMatch !== null && (await detectAPIDesignSystemsYAML(content))) {\n const { groups } = apiDesignSystemsYAMLMatch;\n const version = groups?.version_json || groups?.version_yaml;\n const contentType = `application/vnd.aai.apidesignsystems+yaml;version=${version}`;\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n if (fn.isValidJSON(content)) {\n const contentType = 'application/json';\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n if (fn.isValidYAML(content)) {\n const contentType = 'text/yaml';\n\n return editorActions.detectContentTypeSuccess({ contentType, content, requestId });\n }\n\n return editorActions.detectContentTypeFailure({\n error: new Error('No content type detected'),\n content,\n requestId,\n });\n } catch (error) {\n return editorActions.detectContentTypeFailure({ error, content, requestId });\n }\n };\n};\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const setContent = createSafeActionWrapper((oriAction, system) => (content) => {\n const { editorActions } = system;\n\n editorActions.detectContentType(content, system);\n});\n","import {\n EDITOR_CONTENT_TYPE_DETECT_STARTED,\n EDITOR_CONTENT_TYPE_DETECT_SUCCESS,\n EDITOR_CONTENT_TYPE_DETECT_FAILURE,\n} from './actions.js';\n\nexport const IDLE_STATUS = 'idle';\nexport const DETECTING_STATUS = 'detecting';\nexport const SUCCESS_STATUS = 'success';\nexport const FAILURE_STATUS = 'failure';\n\nexport const initialState = {\n contentTypeDetectionStatus: IDLE_STATUS,\n contentTypeDetectionRequestId: null,\n contentType: null,\n contentTypeError: null,\n};\n\n/**\n * Case reducers modeled as finite state machine.\n */\n\nconst detectContentStartedReducer = (state, action) => {\n return state.merge({\n contentTypeDetectionStatus: DETECTING_STATUS,\n contentTypeDetectionRequestId: action.meta.requestId,\n });\n};\n\nconst detectContentSuccessReducer = (state, action) => {\n const status = state.get('contentTypeDetectionStatus') || IDLE_STATUS;\n const requestId = state.get('contentTypeDetectionRequestId');\n\n if (status === DETECTING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n contentTypeDetectionStatus: SUCCESS_STATUS,\n contentTypeDetectionRequestId: null,\n contentType: action.payload,\n contentTypeError: null,\n });\n }\n\n return state;\n};\n\nconst detectContentFailureReducer = (state, action) => {\n const status = state.get('contentTypeDetectionStatus') || IDLE_STATUS;\n const requestId = state.get('contentTypeDetectionRequestId');\n\n if (status === DETECTING_STATUS && requestId === action.meta.requestId) {\n return state.merge({\n contentTypeDetectionStatus: FAILURE_STATUS,\n contentTypeDetectionRequestId: null,\n contentType: null,\n contentTypeError: action.payload.message,\n });\n }\n\n return state;\n};\n\n/**\n * Root reducer for this plugin.\n */\nconst reducers = {\n [EDITOR_CONTENT_TYPE_DETECT_STARTED]: detectContentStartedReducer,\n [EDITOR_CONTENT_TYPE_DETECT_SUCCESS]: detectContentSuccessReducer,\n [EDITOR_CONTENT_TYPE_DETECT_FAILURE]: detectContentFailureReducer,\n};\n\nexport default reducers;\n","import { createSelector } from 'reselect';\n\nimport { initialState, DETECTING_STATUS } from './reducers.js';\n\nexport const selectContentTypeDetectionStatus = (state) => state.get('contentTypeDetectionStatus');\n\nexport const selectIsContentTypeDetectionInProgress = createSelector(\n selectContentTypeDetectionStatus,\n (status) => {\n return status === DETECTING_STATUS;\n }\n);\n\nexport const selectContentType = (state) => state.get('contentType') || initialState.contentType;\n\nexport const selectIsContentTypeOpenAPI = createSelector(selectContentType, (contentType) => {\n return contentType !== null && contentType.startsWith('application/vnd.oai.openapi');\n});\n\nexport const selectIsContentTypeOpenAPI20 = createSelector(\n selectIsContentTypeOpenAPI,\n selectContentType,\n (isContentOpenAPI, contentType) => {\n return isContentOpenAPI && /version=2\\.0$/.test(contentType);\n }\n);\n\nexport const selectIsContentTypeOpenAPI30x = createSelector(\n selectIsContentTypeOpenAPI,\n selectContentType,\n (isContentOpenAPI, contentType) => {\n return isContentOpenAPI && /version=3\\.0\\.\\d+$/.test(contentType);\n }\n);\n\nexport const selectIsContentTypeOpenAPI31x = createSelector(\n selectIsContentTypeOpenAPI,\n selectContentType,\n (isContentOpenAPI, contentType) => {\n return isContentOpenAPI && /version=3\\.1\\.\\d+$/.test(contentType);\n }\n);\n\nexport const selectIsContentTypeAsyncAPI = createSelector(selectContentType, (contentType) => {\n return contentType !== null && contentType.startsWith('application/vnd.aai.asyncapi');\n});\n\nexport const selectIsContentTypeAsyncAPI2 = createSelector(\n selectIsContentTypeAsyncAPI,\n selectContentType,\n (isContentAsyncAPI, contentType) => {\n return isContentAsyncAPI && /version=2.\\d+\\.\\d+$/.test(contentType);\n }\n);\n\nexport const selectIsContentTypeAPIDesignSystems = createSelector(\n selectContentType,\n (contentType) => {\n return contentType !== null && contentType.startsWith('application/vnd.aai.apidesignsystems');\n }\n);\n\nexport const selectIsContentFormatJSON = createSelector(selectContentType, (contentType) => {\n return (\n contentType !== null && (contentType === 'application/json' || contentType.includes('+json'))\n );\n});\n\nexport const selectIsContentFormatYAML = createSelector(selectContentType, (contentType) => {\n return contentType !== null && (contentType === 'text/yaml' || contentType.includes('+yaml'));\n});\n\nexport const selectInferFileExtensionFromContent = createSelector(\n selectIsContentFormatJSON,\n selectIsContentFormatYAML,\n (isJSON, isYAML) => {\n if (isJSON) {\n return '.json';\n }\n if (isYAML) {\n return '.yaml';\n }\n\n return '.txt';\n }\n);\n\nexport const selectInferFileNameFromContent = createSelector(\n selectIsContentTypeOpenAPI20,\n selectIsContentTypeOpenAPI30x,\n selectIsContentTypeOpenAPI31x,\n selectIsContentTypeAsyncAPI2,\n (isOpenAPI20, isOpenAPI30x, isOpenAPI31x, isAsyncAPI2) => {\n /* eslint-disable no-nested-ternary */\n return isOpenAPI20\n ? 'openapi2'\n : isOpenAPI30x\n ? 'openapi3_0'\n : isOpenAPI31x\n ? 'openapi3_1'\n : isAsyncAPI2\n ? 'asyncapi2'\n : 'definition';\n /* eslint-enable */\n }\n);\n\nexport const selectInferFileNameWithExtensionFromContent = createSelector(\n selectInferFileExtensionFromContent,\n selectInferFileNameFromContent,\n (extension, fileName) => `${fileName}${extension}`\n);\n","import YAML from 'js-yaml';\n\n/**\n * Checks if `content` is valid JSON string.\n *\n * @param content string\n * @returns {boolean}\n */\nexport const isValidJSON = (content) => {\n try {\n return JSON.parse(content) && true;\n } catch {\n return false;\n }\n};\n\n/**\n * Checks if `content` is valid JSON string containing object.\n *\n * @param content string\n * @returns {boolean}\n */\nexport const isValidJSONObject = (content) => {\n try {\n const obj = JSON.parse(content);\n return Object.prototype.toString.call(obj) === '[object Object]';\n } catch {\n return false;\n }\n};\n\n/**\n * Checks if `content` is valid YAML string.\n *\n * @param content string\n * @returns {boolean}\n */\nexport const isValidYAML = (content) => {\n try {\n return YAML.load(content) && true;\n } catch {\n return false;\n }\n};\n\n/**\n * Checks if `content` is valid YAML string containing object.\n *\n * @param content string\n * @returns {boolean}\n */\nexport const isValidYAMLObject = (content) => {\n try {\n const obj = YAML.load(content);\n return Object.prototype.toString.call(obj) === '[object Object]';\n } catch {\n return false;\n }\n};\n","import {\n detectContentType,\n detectContentTypeStarted,\n detectContentTypeSuccess,\n detectContentTypeFailure,\n} from './actions.js';\nimport { setContent as setContentWrap } from './wrap-actions.js';\nimport {\n selectIsContentFormatYAML,\n selectIsContentFormatJSON,\n selectContentType,\n selectContentTypeDetectionStatus,\n selectIsContentTypeDetectionInProgress,\n selectIsContentTypeAsyncAPI,\n selectIsContentTypeAsyncAPI2,\n selectIsContentTypeOpenAPI,\n selectIsContentTypeOpenAPI20,\n selectIsContentTypeOpenAPI30x,\n selectIsContentTypeOpenAPI31x,\n selectIsContentTypeAPIDesignSystems,\n selectInferFileExtensionFromContent,\n selectInferFileNameFromContent,\n selectInferFileNameWithExtensionFromContent,\n} from './selectors.js';\nimport reducers from './reducers.js';\nimport { isValidJSON, isValidJSONObject, isValidYAML, isValidYAMLObject } from './fn.js';\n\nconst EditorContentTypePlugin = () => {\n return {\n statePlugins: {\n editor: {\n wrapActions: {\n setContent: setContentWrap,\n },\n actions: {\n detectContentType,\n detectContentTypeStarted,\n detectContentTypeSuccess,\n detectContentTypeFailure,\n },\n selectors: {\n selectIsContentFormatYAML,\n selectIsContentFormatJSON,\n selectContentType,\n selectContentTypeDetectionStatus,\n selectIsContentTypeDetectionInProgress,\n selectIsContentTypeAsyncAPI,\n selectIsContentTypeAsyncAPI2,\n selectIsContentTypeOpenAPI,\n selectIsContentTypeOpenAPI20,\n selectIsContentTypeOpenAPI30x,\n selectIsContentTypeOpenAPI31x,\n selectIsContentTypeAPIDesignSystems,\n selectInferFileExtensionFromContent,\n selectInferFileNameFromContent,\n selectInferFileNameWithExtensionFromContent,\n },\n reducers,\n },\n },\n fn: {\n isValidJSON,\n isValidJSONObject,\n isValidYAML,\n isValidYAMLObject,\n },\n };\n};\n\nexport default EditorContentTypePlugin;\n","import createSafeActionWrapper from '../../utils/create-safe-action-wrapper.js';\n\nexport const setContent = createSafeActionWrapper((oriAction, system) => (content) => {\n const { editorContentPersistence } = system;\n\n editorContentPersistence.set(content);\n});\n\n/**\n * When given a SwaggerUI config prop `url`,\n * before `download` of new content as specified by `url`,\n * check if active content already exists in localStorage.\n */\n\nexport const download = (oriAction, system) => (content) => {\n const { editorContentPersistence } = system;\n\n if (!editorContentPersistence.has()) {\n oriAction(content);\n }\n};\n","const STORAGE_KEY = 'swagger-editor-next-content';\n\nexport const saveToLocalStorage = (value) => {\n return localStorage.setItem(STORAGE_KEY, value);\n};\n\nexport const loadFromLocalStorage = () => {\n return localStorage.getItem(STORAGE_KEY);\n};\n\nexport const hasLocalStorage = () => {\n return loadFromLocalStorage() !== null;\n};\n","import {\n hasLocalStorage,\n saveToLocalStorage,\n loadFromLocalStorage,\n} from './layers/local-storage.js';\n\n// eslint-disable-next-line import/prefer-default-export\nexport const editorContentPersistence = {\n has() {\n return hasLocalStorage();\n },\n set(value) {\n return saveToLocalStorage(value);\n },\n get() {\n return loadFromLocalStorage();\n },\n};\n","const afterLoad = (system) => {\n const { editorContentPersistence, editorActions, editorSelectors } = system;\n\n const contentPersisted = editorContentPersistence.get();\n const isPersisted = contentPersisted !== null;\n\n if (!isPersisted) return; // nothing persisted\n if (editorSelectors.selectContent() === contentPersisted) return; // content already persisted\n\n editorActions.setContent(contentPersisted, 'local-storage');\n};\n\nexport default afterLoad;\n","import { setContent as setContentWrap, download as downloadWrap } from './wrap-actions.js';\nimport { editorContentPersistence } from './root-injects.js';\nimport afterLoad from './after-load.js';\n\nconst EditorContentPersistencePlugin = () => {\n return {\n afterLoad,\n rootInjects: {\n editorContentPersistence,\n },\n statePlugins: {\n spec: {\n wrapActions: {\n download: downloadWrap,\n },\n },\n editor: {\n wrapActions: {\n setContent: setContentWrap,\n },\n },\n },\n };\n};\n\nexport default EditorContentPersistencePlugin;\n","const selectOpenAPI310PetstoreYAML = () => `openapi: 3.1.0\ninfo:\n title: Swagger Petstore - OpenAPI 3.1\n description: |-\n This is a sample Pet Store Server based on the OpenAPI 3.1 specification. You can find out more about\n Swagger at [https://swagger.io](https://swagger.io). In the third iteration of the pet store, we've switched to the design first approach!\n You can now help us improve the API whether it's by making changes to the definition itself or to the code.\n That way, with time, we can improve the API in general, and expose some of the new features in OAS3.\n\n Some useful links:\n - [The Pet Store repository](https://github.com/swagger-api/swagger-petstore)\n - [The source API definition for the Pet Store](https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml)\n\n termsOfService: http://swagger.io/terms/\n contact:\n email: apiteam@swagger.io\n license:\n name: Apache 2.0\n url: http://www.apache.org/licenses/LICENSE-2.0.html\n version: 1.0.11\nexternalDocs:\n description: Find out more about Swagger\n url: http://swagger.io\nservers:\n - url: https://petstore3.swagger.io/api/v3\ntags:\n - name: pet\n description: Everything about your Pets\n externalDocs:\n description: Find out more\n url: http://swagger.io\n - name: store\n description: Access to Petstore orders\n externalDocs:\n description: Find out more about our store\n url: http://swagger.io\n - name: user\n description: Operations about user\npaths:\n /pet:\n put:\n tags:\n - pet\n summary: Update an existing pet\n description: Update an existing pet by Id\n operationId: updatePet\n requestBody:\n description: Update an existent pet in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Pet'\n required: true\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid ID supplied\n '404':\n description: Pet not found\n '405':\n description: Validation exception\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n post:\n tags:\n - pet\n summary: Add a new pet to the store\n description: Add a new pet to the store\n operationId: addPet\n requestBody:\n description: Create a new pet in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Pet'\n required: true\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '405':\n description: Invalid input\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/findByStatus:\n get:\n tags:\n - pet\n summary: Finds Pets by status\n description: Multiple status values can be provided with comma separated strings\n operationId: findPetsByStatus\n parameters:\n - name: status\n in: query\n description: Status values that need to be considered for filter\n required: false\n explode: true\n schema:\n type: string\n default: available\n enum:\n - available\n - pending\n - sold\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid status value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/findByTags:\n get:\n tags:\n - pet\n summary: Finds Pets by tags\n description: Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.\n operationId: findPetsByTags\n parameters:\n - name: tags\n in: query\n description: Tags to filter by\n required: false\n explode: true\n schema:\n type: array\n items:\n type: string\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid tag value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/{petId}:\n get:\n tags:\n - pet\n summary: Find pet by ID\n description: Returns a single pet\n operationId: getPetById\n parameters:\n - name: petId\n in: path\n description: ID of pet to return\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid ID supplied\n '404':\n description: Pet not found\n security:\n - api_key: []\n - petstore_auth:\n - write:pets\n - read:pets\n post:\n tags:\n - pet\n summary: Updates a pet in the store with form data\n description: ''\n operationId: updatePetWithForm\n parameters:\n - name: petId\n in: path\n description: ID of pet that needs to be updated\n required: true\n schema:\n type: integer\n format: int64\n - name: name\n in: query\n description: Name of pet that needs to be updated\n schema:\n type: string\n - name: status\n in: query\n description: Status of pet that needs to be updated\n schema:\n type: string\n responses:\n '405':\n description: Invalid input\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n delete:\n tags:\n - pet\n summary: Deletes a pet\n description: delete a pet\n operationId: deletePet\n parameters:\n - name: api_key\n in: header\n description: ''\n required: false\n schema:\n type: string\n - name: petId\n in: path\n description: Pet id to delete\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '400':\n description: Invalid pet value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/{petId}/uploadImage:\n post:\n tags:\n - pet\n summary: uploads an image\n description: ''\n operationId: uploadFile\n parameters:\n - name: petId\n in: path\n description: ID of pet to update\n required: true\n schema:\n type: integer\n format: int64\n - name: additionalMetadata\n in: query\n description: Additional Metadata\n required: false\n schema:\n type: string\n requestBody:\n content:\n application/octet-stream:\n schema:\n type: string\n format: binary\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ApiResponse'\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /store/inventory:\n get:\n tags:\n - store\n summary: Returns pet inventories by status\n description: Returns a map of status codes to quantities\n operationId: getInventory\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: object\n additionalProperties:\n type: integer\n format: int32\n security:\n - api_key: []\n /store/order:\n post:\n tags:\n - store\n summary: Place an order for a pet\n description: Place a new order in the store\n operationId: placeOrder\n requestBody:\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n application/xml:\n schema:\n $ref: '#/components/schemas/Order'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Order'\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n '405':\n description: Invalid input\n /store/order/{orderId}:\n get:\n tags:\n - store\n summary: Find purchase order by ID\n description: For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions.\n operationId: getOrderById\n parameters:\n - name: orderId\n in: path\n description: ID of order that needs to be fetched\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n application/xml:\n schema:\n $ref: '#/components/schemas/Order'\n '400':\n description: Invalid ID supplied\n '404':\n description: Order not found\n delete:\n tags:\n - store\n summary: Delete purchase order by ID\n description: For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors\n operationId: deleteOrder\n parameters:\n - name: orderId\n in: path\n description: ID of the order that needs to be deleted\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '400':\n description: Invalid ID supplied\n '404':\n description: Order not found\n /user:\n post:\n tags:\n - user\n summary: Create user\n description: This can only be done by the logged in user.\n operationId: createUser\n requestBody:\n description: Created user object\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/User'\n responses:\n default:\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n /user/createWithList:\n post:\n tags:\n - user\n summary: Creates list of users with given input array\n description: Creates list of users with given input array\n operationId: createUsersWithListInput\n requestBody:\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/User'\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n default:\n description: successful operation\n /user/login:\n get:\n tags:\n - user\n summary: Logs user into the system\n description: ''\n operationId: loginUser\n parameters:\n - name: username\n in: query\n description: The user name for login\n required: false\n schema:\n type: string\n - name: password\n in: query\n description: The password for login in clear text\n required: false\n schema:\n type: string\n responses:\n '200':\n description: successful operation\n headers:\n X-Rate-Limit:\n description: calls per hour allowed by the user\n schema:\n type: integer\n format: int32\n X-Expires-After:\n description: date in UTC when token expires\n schema:\n type: string\n format: date-time\n content:\n application/xml:\n schema:\n type: string\n application/json:\n schema:\n type: string\n '400':\n description: Invalid username/password supplied\n /user/logout:\n get:\n tags:\n - user\n summary: Logs out current logged in user session\n description: ''\n operationId: logoutUser\n parameters: []\n responses:\n default:\n description: successful operation\n /user/{username}:\n get:\n tags:\n - user\n summary: Get user by user name\n description: ''\n operationId: getUserByName\n parameters:\n - name: username\n in: path\n description: 'The name that needs to be fetched. Use user1 for testing. '\n required: true\n schema:\n type: string\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n '400':\n description: Invalid username supplied\n '404':\n description: User not found\n put:\n tags:\n - user\n summary: Update user\n description: This can only be done by the logged in user.\n operationId: updateUser\n parameters:\n - name: username\n in: path\n description: name that need to be deleted\n required: true\n schema:\n type: string\n requestBody:\n description: Update an existent user in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/User'\n responses:\n default:\n description: successful operation\n delete:\n tags:\n - user\n summary: Delete user\n description: This can only be done by the logged in user.\n operationId: deleteUser\n parameters:\n - name: username\n in: path\n description: The name that needs to be deleted\n required: true\n schema:\n type: string\n responses:\n '400':\n description: Invalid username supplied\n '404':\n description: User not found\ncomponents:\n schemas:\n Order:\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [10]\n petId:\n type: integer\n format: int64\n examples: [198772]\n quantity:\n type: integer\n format: int32\n examples: [7]\n shipDate:\n type: string\n format: date-time\n status:\n type: string\n description: Order Status\n examples: [approved]\n enum:\n - placed\n - approved\n - delivered\n complete:\n type: boolean\n xml:\n name: order\n Customer:\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [100000]\n username:\n type: string\n examples: [fehguy]\n address:\n type: array\n xml:\n name: addresses\n wrapped: true\n items:\n $ref: '#/components/schemas/Address'\n xml:\n name: customer\n Address:\n type: object\n properties:\n street:\n type: string\n examples: [437 Lytton]\n city:\n type: string\n examples: [Palo Alto]\n state:\n type: string\n examples: [CA]\n zip:\n type: string\n examples: ['94301']\n xml:\n name: address\n Category:\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [1]\n name:\n type: string\n examples: [Dogs]\n xml:\n name: category\n User:\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [10]\n username:\n type: string\n examples: [theUser]\n firstName:\n type: string\n examples: [John]\n lastName:\n type: string\n examples: [James]\n email:\n type: string\n examples: [john@email.com]\n password:\n type: string\n examples: ['12345']\n phone:\n type: string\n examples: ['12345']\n userStatus:\n type: integer\n description: User Status\n format: int32\n examples: [1]\n xml:\n name: user\n Tag:\n type: object\n properties:\n id:\n type: integer\n format: int64\n name:\n type: string\n xml:\n name: tag\n Pet:\n required:\n - name\n - photoUrls\n type: object\n properties:\n id:\n type: integer\n format: int64\n examples: [10]\n name:\n type: string\n examples: [doggie]\n category:\n $ref: '#/components/schemas/Category'\n photoUrls:\n type: array\n xml:\n wrapped: true\n items:\n type: string\n xml:\n name: photoUrl\n tags:\n type: array\n xml:\n wrapped: true\n items:\n $ref: '#/components/schemas/Tag'\n status:\n type: string\n description: pet status in the store\n enum:\n - available\n - pending\n - sold\n xml:\n name: pet\n ApiResponse:\n type: object\n properties:\n code:\n type: integer\n format: int32\n type:\n type: string\n message:\n type: string\n xml:\n name: '##default'\n requestBodies:\n Pet:\n description: Pet object that needs to be added to the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n UserArray:\n description: List of user object\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/User'\n securitySchemes:\n petstore_auth:\n type: oauth2\n flows:\n implicit:\n authorizationUrl: https://petstore3.swagger.io/oauth/authorize\n scopes:\n write:pets: modify pets in your account\n read:pets: read your pets\n api_key:\n type: apiKey\n name: api_key\n in: header\n`;\n\nexport default selectOpenAPI310PetstoreYAML;\n","const selectOpenAPI310PetstoreYAML = () => `openapi: 3.0.3\ninfo:\n title: Swagger Petstore - OpenAPI 3.0\n description: |-\n This is a sample Pet Store Server based on the OpenAPI 3.0 specification. You can find out more about\n Swagger at [https://swagger.io](https://swagger.io). In the third iteration of the pet store, we've switched to the design first approach!\n You can now help us improve the API whether it's by making changes to the definition itself or to the code.\n That way, with time, we can improve the API in general, and expose some of the new features in OAS3.\n\n Some useful links:\n - [The Pet Store repository](https://github.com/swagger-api/swagger-petstore)\n - [The source API definition for the Pet Store](https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml)\n\n termsOfService: http://swagger.io/terms/\n contact:\n email: apiteam@swagger.io\n license:\n name: Apache 2.0\n url: http://www.apache.org/licenses/LICENSE-2.0.html\n version: 1.0.11\nexternalDocs:\n description: Find out more about Swagger\n url: http://swagger.io\nservers:\n - url: https://petstore3.swagger.io/api/v3\ntags:\n - name: pet\n description: Everything about your Pets\n externalDocs:\n description: Find out more\n url: http://swagger.io\n - name: store\n description: Access to Petstore orders\n externalDocs:\n description: Find out more about our store\n url: http://swagger.io\n - name: user\n description: Operations about user\npaths:\n /pet:\n put:\n tags:\n - pet\n summary: Update an existing pet\n description: Update an existing pet by Id\n operationId: updatePet\n requestBody:\n description: Update an existent pet in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Pet'\n required: true\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid ID supplied\n '404':\n description: Pet not found\n '405':\n description: Validation exception\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n post:\n tags:\n - pet\n summary: Add a new pet to the store\n description: Add a new pet to the store\n operationId: addPet\n requestBody:\n description: Create a new pet in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Pet'\n required: true\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '405':\n description: Invalid input\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/findByStatus:\n get:\n tags:\n - pet\n summary: Finds Pets by status\n description: Multiple status values can be provided with comma separated strings\n operationId: findPetsByStatus\n parameters:\n - name: status\n in: query\n description: Status values that need to be considered for filter\n required: false\n explode: true\n schema:\n type: string\n default: available\n enum:\n - available\n - pending\n - sold\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid status value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/findByTags:\n get:\n tags:\n - pet\n summary: Finds Pets by tags\n description: Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.\n operationId: findPetsByTags\n parameters:\n - name: tags\n in: query\n description: Tags to filter by\n required: false\n explode: true\n schema:\n type: array\n items:\n type: string\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid tag value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/{petId}:\n get:\n tags:\n - pet\n summary: Find pet by ID\n description: Returns a single pet\n operationId: getPetById\n parameters:\n - name: petId\n in: path\n description: ID of pet to return\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n '400':\n description: Invalid ID supplied\n '404':\n description: Pet not found\n security:\n - api_key: []\n - petstore_auth:\n - write:pets\n - read:pets\n post:\n tags:\n - pet\n summary: Updates a pet in the store with form data\n description: ''\n operationId: updatePetWithForm\n parameters:\n - name: petId\n in: path\n description: ID of pet that needs to be updated\n required: true\n schema:\n type: integer\n format: int64\n - name: name\n in: query\n description: Name of pet that needs to be updated\n schema:\n type: string\n - name: status\n in: query\n description: Status of pet that needs to be updated\n schema:\n type: string\n responses:\n '405':\n description: Invalid input\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n delete:\n tags:\n - pet\n summary: Deletes a pet\n description: delete a pet\n operationId: deletePet\n parameters:\n - name: api_key\n in: header\n description: ''\n required: false\n schema:\n type: string\n - name: petId\n in: path\n description: Pet id to delete\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '400':\n description: Invalid pet value\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /pet/{petId}/uploadImage:\n post:\n tags:\n - pet\n summary: uploads an image\n description: ''\n operationId: uploadFile\n parameters:\n - name: petId\n in: path\n description: ID of pet to update\n required: true\n schema:\n type: integer\n format: int64\n - name: additionalMetadata\n in: query\n description: Additional Metadata\n required: false\n schema:\n type: string\n requestBody:\n content:\n application/octet-stream:\n schema:\n type: string\n format: binary\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/ApiResponse'\n security:\n - petstore_auth:\n - write:pets\n - read:pets\n /store/inventory:\n get:\n tags:\n - store\n summary: Returns pet inventories by status\n description: Returns a map of status codes to quantities\n operationId: getInventory\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n type: object\n additionalProperties:\n type: integer\n format: int32\n security:\n - api_key: []\n /store/order:\n post:\n tags:\n - store\n summary: Place an order for a pet\n description: Place a new order in the store\n operationId: placeOrder\n requestBody:\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n application/xml:\n schema:\n $ref: '#/components/schemas/Order'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/Order'\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n '405':\n description: Invalid input\n /store/order/{orderId}:\n get:\n tags:\n - store\n summary: Find purchase order by ID\n description: For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions.\n operationId: getOrderById\n parameters:\n - name: orderId\n in: path\n description: ID of order that needs to be fetched\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Order'\n application/xml:\n schema:\n $ref: '#/components/schemas/Order'\n '400':\n description: Invalid ID supplied\n '404':\n description: Order not found\n delete:\n tags:\n - store\n summary: Delete purchase order by ID\n description: For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors\n operationId: deleteOrder\n parameters:\n - name: orderId\n in: path\n description: ID of the order that needs to be deleted\n required: true\n schema:\n type: integer\n format: int64\n responses:\n '400':\n description: Invalid ID supplied\n '404':\n description: Order not found\n /user:\n post:\n tags:\n - user\n summary: Create user\n description: This can only be done by the logged in user.\n operationId: createUser\n requestBody:\n description: Created user object\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/User'\n responses:\n default:\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n /user/createWithList:\n post:\n tags:\n - user\n summary: Creates list of users with given input array\n description: Creates list of users with given input array\n operationId: createUsersWithListInput\n requestBody:\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/User'\n responses:\n '200':\n description: Successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n default:\n description: successful operation\n /user/login:\n get:\n tags:\n - user\n summary: Logs user into the system\n description: ''\n operationId: loginUser\n parameters:\n - name: username\n in: query\n description: The user name for login\n required: false\n schema:\n type: string\n - name: password\n in: query\n description: The password for login in clear text\n required: false\n schema:\n type: string\n responses:\n '200':\n description: successful operation\n headers:\n X-Rate-Limit:\n description: calls per hour allowed by the user\n schema:\n type: integer\n format: int32\n X-Expires-After:\n description: date in UTC when token expires\n schema:\n type: string\n format: date-time\n content:\n application/xml:\n schema:\n type: string\n application/json:\n schema:\n type: string\n '400':\n description: Invalid username/password supplied\n /user/logout:\n get:\n tags:\n - user\n summary: Logs out current logged in user session\n description: ''\n operationId: logoutUser\n parameters: []\n responses:\n default:\n description: successful operation\n /user/{username}:\n get:\n tags:\n - user\n summary: Get user by user name\n description: ''\n operationId: getUserByName\n parameters:\n - name: username\n in: path\n description: 'The name that needs to be fetched. Use user1 for testing. '\n required: true\n schema:\n type: string\n responses:\n '200':\n description: successful operation\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n '400':\n description: Invalid username supplied\n '404':\n description: User not found\n put:\n tags:\n - user\n summary: Update user\n description: This can only be done by the logged in user.\n operationId: updateUser\n parameters:\n - name: username\n in: path\n description: name that need to be deleted\n required: true\n schema:\n type: string\n requestBody:\n description: Update an existent user in the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/User'\n application/xml:\n schema:\n $ref: '#/components/schemas/User'\n application/x-www-form-urlencoded:\n schema:\n $ref: '#/components/schemas/User'\n responses:\n default:\n description: successful operation\n delete:\n tags:\n - user\n summary: Delete user\n description: This can only be done by the logged in user.\n operationId: deleteUser\n parameters:\n - name: username\n in: path\n description: The name that needs to be deleted\n required: true\n schema:\n type: string\n responses:\n '400':\n description: Invalid username supplied\n '404':\n description: User not found\ncomponents:\n schemas:\n Order:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n petId:\n type: integer\n format: int64\n example: 198772\n quantity:\n type: integer\n format: int32\n example: 7\n shipDate:\n type: string\n format: date-time\n status:\n type: string\n description: Order Status\n example: approved\n enum:\n - placed\n - approved\n - delivered\n complete:\n type: boolean\n xml:\n name: order\n Customer:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 100000\n username:\n type: string\n example: fehguy\n address:\n type: array\n xml:\n name: addresses\n wrapped: true\n items:\n $ref: '#/components/schemas/Address'\n xml:\n name: customer\n Address:\n type: object\n properties:\n street:\n type: string\n example: 437 Lytton\n city:\n type: string\n example: Palo Alto\n state:\n type: string\n example: CA\n zip:\n type: string\n example: '94301'\n xml:\n name: address\n Category:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 1\n name:\n type: string\n example: Dogs\n xml:\n name: category\n User:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n username:\n type: string\n example: theUser\n firstName:\n type: string\n example: John\n lastName:\n type: string\n example: James\n email:\n type: string\n example: john@email.com\n password:\n type: string\n example: '12345'\n phone:\n type: string\n example: '12345'\n userStatus:\n type: integer\n description: User Status\n format: int32\n example: 1\n xml:\n name: user\n Tag:\n type: object\n properties:\n id:\n type: integer\n format: int64\n name:\n type: string\n xml:\n name: tag\n Pet:\n required:\n - name\n - photoUrls\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n name:\n type: string\n example: doggie\n category:\n $ref: '#/components/schemas/Category'\n photoUrls:\n type: array\n xml:\n wrapped: true\n items:\n type: string\n xml:\n name: photoUrl\n tags:\n type: array\n xml:\n wrapped: true\n items:\n $ref: '#/components/schemas/Tag'\n status:\n type: string\n description: pet status in the store\n enum:\n - available\n - pending\n - sold\n xml:\n name: pet\n ApiResponse:\n type: object\n properties:\n code:\n type: integer\n format: int32\n type:\n type: string\n message:\n type: string\n xml:\n name: '##default'\n requestBodies:\n Pet:\n description: Pet object that needs to be added to the store\n content:\n application/json:\n schema:\n $ref: '#/components/schemas/Pet'\n application/xml:\n schema:\n $ref: '#/components/schemas/Pet'\n UserArray:\n description: List of user object\n content:\n application/json:\n schema:\n type: array\n items:\n $ref: '#/components/schemas/User'\n securitySchemes:\n petstore_auth:\n type: oauth2\n flows:\n implicit:\n authorizationUrl: https://petstore3.swagger.io/oauth/authorize\n scopes:\n write:pets: modify pets in your account\n read:pets: read your pets\n api_key:\n type: apiKey\n name: api_key\n in: header\n`;\n\nexport default selectOpenAPI310PetstoreYAML;\n","const selectOpenAPI20PetstoreYAML = () => `swagger: \"2.0\"\ninfo:\n description: \"This is a sample server Petstore server. You can find out more about\\\n \\\\ Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/).\\\n \\\\ For this sample, you can use the api key \\`special-key\\` to test the authorization\\\n \\\\ filters.\"\n version: \"1.0.0\"\n title: \"Swagger Petstore 2.0\"\n termsOfService: \"http://swagger.io/terms/\"\n contact:\n email: \"apiteam@swagger.io\"\n license:\n name: \"Apache 2.0\"\n url: \"http://www.apache.org/licenses/LICENSE-2.0.html\"\nhost: \"petstore.swagger.io\"\nbasePath: \"/v2\"\ntags:\n- name: \"pet\"\n description: \"Everything about your Pets\"\n externalDocs:\n description: \"Find out more\"\n url: \"http://swagger.io\"\n- name: \"store\"\n description: \"Access to Petstore orders\"\n- name: \"user\"\n description: \"Operations about user\"\n externalDocs:\n description: \"Find out more about our store\"\n url: \"http://swagger.io\"\nschemes:\n- \"https\"\n- \"http\"\npaths:\n /pet:\n post:\n tags:\n - \"pet\"\n summary: \"Add a new pet to the store\"\n description: \"\"\n operationId: \"addPet\"\n consumes:\n - \"application/json\"\n - \"application/xml\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"Pet object that needs to be added to the store\"\n required: true\n schema:\n $ref: \"#/definitions/Pet\"\n responses:\n \"405\":\n description: \"Invalid input\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n put:\n tags:\n - \"pet\"\n summary: \"Update an existing pet\"\n description: \"\"\n operationId: \"updatePet\"\n consumes:\n - \"application/json\"\n - \"application/xml\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"Pet object that needs to be added to the store\"\n required: true\n schema:\n $ref: \"#/definitions/Pet\"\n responses:\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Pet not found\"\n \"405\":\n description: \"Validation exception\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n /pet/findByStatus:\n get:\n tags:\n - \"pet\"\n summary: \"Finds Pets by status\"\n description: \"Multiple status values can be provided with comma separated strings\"\n operationId: \"findPetsByStatus\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"status\"\n in: \"query\"\n description: \"Status values that need to be considered for filter\"\n required: true\n type: \"array\"\n items:\n type: \"string\"\n enum:\n - \"available\"\n - \"pending\"\n - \"sold\"\n default: \"available\"\n collectionFormat: \"multi\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n type: \"array\"\n items:\n $ref: \"#/definitions/Pet\"\n \"400\":\n description: \"Invalid status value\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n /pet/findByTags:\n get:\n tags:\n - \"pet\"\n summary: \"Finds Pets by tags\"\n description: \"Muliple tags can be provided with comma separated strings. Use\\\n \\\\ tag1, tag2, tag3 for testing.\"\n operationId: \"findPetsByTags\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"tags\"\n in: \"query\"\n description: \"Tags to filter by\"\n required: true\n type: \"array\"\n items:\n type: \"string\"\n collectionFormat: \"multi\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n type: \"array\"\n items:\n $ref: \"#/definitions/Pet\"\n \"400\":\n description: \"Invalid tag value\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n deprecated: true\n /pet/{petId}:\n get:\n tags:\n - \"pet\"\n summary: \"Find pet by ID\"\n description: \"Returns a single pet\"\n operationId: \"getPetById\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"petId\"\n in: \"path\"\n description: \"ID of pet to return\"\n required: true\n type: \"integer\"\n format: \"int64\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/Pet\"\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Pet not found\"\n security:\n - api_key: []\n post:\n tags:\n - \"pet\"\n summary: \"Updates a pet in the store with form data\"\n description: \"\"\n operationId: \"updatePetWithForm\"\n consumes:\n - \"application/x-www-form-urlencoded\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"petId\"\n in: \"path\"\n description: \"ID of pet that needs to be updated\"\n required: true\n type: \"integer\"\n format: \"int64\"\n - name: \"name\"\n in: \"formData\"\n description: \"Updated name of the pet\"\n required: false\n type: \"string\"\n - name: \"status\"\n in: \"formData\"\n description: \"Updated status of the pet\"\n required: false\n type: \"string\"\n responses:\n \"405\":\n description: \"Invalid input\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n delete:\n tags:\n - \"pet\"\n summary: \"Deletes a pet\"\n description: \"\"\n operationId: \"deletePet\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"api_key\"\n in: \"header\"\n required: false\n type: \"string\"\n - name: \"petId\"\n in: \"path\"\n description: \"Pet id to delete\"\n required: true\n type: \"integer\"\n format: \"int64\"\n responses:\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Pet not found\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n /pet/{petId}/uploadImage:\n post:\n tags:\n - \"pet\"\n summary: \"uploads an image\"\n description: \"\"\n operationId: \"uploadFile\"\n consumes:\n - \"multipart/form-data\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"petId\"\n in: \"path\"\n description: \"ID of pet to update\"\n required: true\n type: \"integer\"\n format: \"int64\"\n - name: \"additionalMetadata\"\n in: \"formData\"\n description: \"Additional data to pass to server\"\n required: false\n type: \"string\"\n - name: \"file\"\n in: \"formData\"\n description: \"file to upload\"\n required: false\n type: \"file\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/ApiResponse\"\n security:\n - petstore_auth:\n - \"write:pets\"\n - \"read:pets\"\n /store/inventory:\n get:\n tags:\n - \"store\"\n summary: \"Returns pet inventories by status\"\n description: \"Returns a map of status codes to quantities\"\n operationId: \"getInventory\"\n produces:\n - \"application/json\"\n parameters: []\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n type: \"object\"\n additionalProperties:\n type: \"integer\"\n format: \"int32\"\n security:\n - api_key: []\n /store/order:\n post:\n tags:\n - \"store\"\n summary: \"Place an order for a pet\"\n description: \"\"\n operationId: \"placeOrder\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"order placed for purchasing the pet\"\n required: true\n schema:\n $ref: \"#/definitions/Order\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/Order\"\n \"400\":\n description: \"Invalid Order\"\n /store/order/{orderId}:\n get:\n tags:\n - \"store\"\n summary: \"Find purchase order by ID\"\n description: \"For valid response try integer IDs with value >= 1 and <= 10.\\\n \\\\ Other values will generated exceptions\"\n operationId: \"getOrderById\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"orderId\"\n in: \"path\"\n description: \"ID of pet that needs to be fetched\"\n required: true\n type: \"integer\"\n maximum: 10.0\n minimum: 1.0\n format: \"int64\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/Order\"\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Order not found\"\n delete:\n tags:\n - \"store\"\n summary: \"Delete purchase order by ID\"\n description: \"For valid response try integer IDs with positive integer value.\\\n \\\\ Negative or non-integer values will generate API errors\"\n operationId: \"deleteOrder\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"orderId\"\n in: \"path\"\n description: \"ID of the order that needs to be deleted\"\n required: true\n type: \"integer\"\n minimum: 1.0\n format: \"int64\"\n responses:\n \"400\":\n description: \"Invalid ID supplied\"\n \"404\":\n description: \"Order not found\"\n /user:\n post:\n tags:\n - \"user\"\n summary: \"Create user\"\n description: \"This can only be done by the logged in user.\"\n operationId: \"createUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"Created user object\"\n required: true\n schema:\n $ref: \"#/definitions/User\"\n responses:\n default:\n description: \"successful operation\"\n /user/createWithArray:\n post:\n tags:\n - \"user\"\n summary: \"Creates list of users with given input array\"\n description: \"\"\n operationId: \"createUsersWithArrayInput\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"List of user object\"\n required: true\n schema:\n type: \"array\"\n items:\n $ref: \"#/definitions/User\"\n responses:\n default:\n description: \"successful operation\"\n /user/createWithList:\n post:\n tags:\n - \"user\"\n summary: \"Creates list of users with given input array\"\n description: \"\"\n operationId: \"createUsersWithListInput\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"List of user object\"\n required: true\n schema:\n type: \"array\"\n items:\n $ref: \"#/definitions/User\"\n responses:\n default:\n description: \"successful operation\"\n /user/login:\n get:\n tags:\n - \"user\"\n summary: \"Logs user into the system\"\n description: \"\"\n operationId: \"loginUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"username\"\n in: \"query\"\n description: \"The user name for login\"\n required: true\n type: \"string\"\n - name: \"password\"\n in: \"query\"\n description: \"The password for login in clear text\"\n required: true\n type: \"string\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n type: \"string\"\n headers:\n X-Rate-Limit:\n type: \"integer\"\n format: \"int32\"\n description: \"calls per hour allowed by the user\"\n X-Expires-After:\n type: \"string\"\n format: \"date-time\"\n description: \"date in UTC when token expires\"\n \"400\":\n description: \"Invalid username/password supplied\"\n /user/logout:\n get:\n tags:\n - \"user\"\n summary: \"Logs out current logged in user session\"\n description: \"\"\n operationId: \"logoutUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters: []\n responses:\n default:\n description: \"successful operation\"\n /user/{username}:\n get:\n tags:\n - \"user\"\n summary: \"Get user by user name\"\n description: \"\"\n operationId: \"getUserByName\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"username\"\n in: \"path\"\n description: \"The name that needs to be fetched. Use user1 for testing. \"\n required: true\n type: \"string\"\n responses:\n \"200\":\n description: \"successful operation\"\n schema:\n $ref: \"#/definitions/User\"\n \"400\":\n description: \"Invalid username supplied\"\n \"404\":\n description: \"User not found\"\n put:\n tags:\n - \"user\"\n summary: \"Updated user\"\n description: \"This can only be done by the logged in user.\"\n operationId: \"updateUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"username\"\n in: \"path\"\n description: \"name that need to be updated\"\n required: true\n type: \"string\"\n - in: \"body\"\n name: \"body\"\n description: \"Updated user object\"\n required: true\n schema:\n $ref: \"#/definitions/User\"\n responses:\n \"400\":\n description: \"Invalid user supplied\"\n \"404\":\n description: \"User not found\"\n delete:\n tags:\n - \"user\"\n summary: \"Delete user\"\n description: \"This can only be done by the logged in user.\"\n operationId: \"deleteUser\"\n produces:\n - \"application/xml\"\n - \"application/json\"\n parameters:\n - name: \"username\"\n in: \"path\"\n description: \"The name that needs to be deleted\"\n required: true\n type: \"string\"\n responses:\n \"400\":\n description: \"Invalid username supplied\"\n \"404\":\n description: \"User not found\"\nsecurityDefinitions:\n petstore_auth:\n type: \"oauth2\"\n authorizationUrl: \"http://petstore.swagger.io/oauth/dialog\"\n flow: \"implicit\"\n scopes:\n write:pets: \"modify pets in your account\"\n read:pets: \"read your pets\"\n api_key:\n type: \"apiKey\"\n name: \"api_key\"\n in: \"header\"\ndefinitions:\n Order:\n type: \"object\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n petId:\n type: \"integer\"\n format: \"int64\"\n quantity:\n type: \"integer\"\n format: \"int32\"\n shipDate:\n type: \"string\"\n format: \"date-time\"\n status:\n type: \"string\"\n description: \"Order Status\"\n enum:\n - \"placed\"\n - \"approved\"\n - \"delivered\"\n complete:\n type: \"boolean\"\n default: false\n xml:\n name: \"Order\"\n Category:\n type: \"object\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n name:\n type: \"string\"\n xml:\n name: \"Category\"\n User:\n type: \"object\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n username:\n type: \"string\"\n firstName:\n type: \"string\"\n lastName:\n type: \"string\"\n email:\n type: \"string\"\n password:\n type: \"string\"\n phone:\n type: \"string\"\n userStatus:\n type: \"integer\"\n format: \"int32\"\n description: \"User Status\"\n xml:\n name: \"User\"\n Tag:\n type: \"object\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n name:\n type: \"string\"\n xml:\n name: \"Tag\"\n Pet:\n type: \"object\"\n required:\n - \"name\"\n - \"photoUrls\"\n properties:\n id:\n type: \"integer\"\n format: \"int64\"\n category:\n $ref: \"#/definitions/Category\"\n name:\n type: \"string\"\n example: \"doggie\"\n photoUrls:\n type: \"array\"\n xml:\n name: \"photoUrl\"\n wrapped: true\n items:\n type: \"string\"\n tags:\n type: \"array\"\n xml:\n name: \"tag\"\n wrapped: true\n items:\n $ref: \"#/definitions/Tag\"\n status:\n type: \"string\"\n description: \"pet status in the store\"\n enum:\n - \"available\"\n - \"pending\"\n - \"sold\"\n xml:\n name: \"Pet\"\n ApiResponse:\n type: \"object\"\n properties:\n code:\n type: \"integer\"\n format: \"int32\"\n type:\n type: \"string\"\n message:\n type: \"string\"\nexternalDocs:\n description: \"Find out more about Swagger\"\n url: \"http://swagger.io\"`;\n\nexport default selectOpenAPI20PetstoreYAML;\n","const selectAsyncAPI260PetstoreYAML = () => `asyncapi: 2.6.0\ninfo:\n title: Petstore\n version: 1.0.0\n description: The PetStore running in Kafka\nchannels:\n petstore.order.added:\n publish:\n message:\n title: New order for pet\n summary: A new order for a pet was added.\n name: Order\n contentType: application/json\n payload:\n \"$ref\": \"#/components/schemas/Order\"\n petstore.order.deleted:\n publish:\n message:\n name: OrderId\n contentType: application/json\n payload:\n type: integer\n format: int64\n petstore.pet.added:\n publish:\n message:\n name: Pet\n contentType: application/json\n payload:\n \"$ref\": \"#/components/schemas/Pet\"\n petstore.pet.changed:\n publish:\n message:\n name: Pet\n contentType: application/json\n payload:\n \"$ref\": \"#/components/schemas/Pet\"\n petstore.pet.deleted:\n publish:\n message:\n name: PetId\n contentType: application/json\n payload:\n type: integer\n format: int64\ncomponents:\n schemas:\n Inventory:\n type: object\n additionalProperties:\n type: integer\n format: int64\n Order:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n petId:\n type: integer\n format: int64\n example: 198772\n quantity:\n type: integer\n format: int32\n example: 7\n shipDate:\n type: string\n format: date-time\n status:\n type: string\n description: Order Status\n example: approved\n enum:\n - placed\n - approved\n - delivered\n complete:\n type: boolean\n xml:\n name: order\n Customer:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 100000\n username:\n type: string\n example: fehguy\n address:\n type: array\n xml:\n name: addresses\n wrapped: true\n items:\n \"$ref\": \"#/components/schemas/Address\"\n xml:\n name: customer\n Address:\n type: object\n properties:\n street:\n type: string\n example: 437 Lytton\n city:\n type: string\n example: Palo Alto\n state:\n type: string\n example: CA\n zip:\n type: string\n example: '94301'\n xml:\n name: address\n Category:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 1\n name:\n type: string\n example: Dogs\n xml:\n name: category\n User:\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n username:\n type: string\n example: theUser\n firstName:\n type: string\n example: John\n lastName:\n type: string\n example: James\n email:\n type: string\n example: john@email.com\n password:\n type: string\n example: '12345'\n phone:\n type: string\n example: '12345'\n userStatus:\n type: integer\n description: User Status\n format: int32\n example: 1\n xml:\n name: user\n Tag:\n type: object\n properties:\n id:\n type: integer\n format: int64\n name:\n type: string\n xml:\n name: tag\n Pet:\n required:\n - name\n - photoUrls\n type: object\n properties:\n id:\n type: integer\n format: int64\n example: 10\n name:\n type: string\n example: doggie\n category:\n \"$ref\": \"#/components/schemas/Category\"\n photoUrls:\n type: array\n xml:\n wrapped: true\n items:\n type: string\n xml:\n name: photoUrl\n tags:\n type: array\n xml:\n wrapped: true\n items:\n \"$ref\": \"#/components/schemas/Tag\"\n status:\n type: string\n description: pet status in the store\n enum:\n - available\n - pending\n - sold\n xml:\n name: pet\n ApiResponse:\n type: object\n properties:\n code:\n type: integer\n format: int32\n type:\n type: string\n message:\n type: string\n xml:\n name: \"##default\"\n`;\n\nexport default selectAsyncAPI260PetstoreYAML;\n","const selectAsyncAPI260StreetlightsYAML = () => `asyncapi: '2.6.0'\ninfo:\n title: Streetlights Kafka API\n version: '1.0.0'\n description: |\n The Smartylighting Streetlights API allows you to remotely manage the city lights.\n\n ### Check out its awesome features:\n\n * Turn a specific streetlight on/off 🌃\n * Dim a specific streetlight 😎\n * Receive real-time information about environmental lighting conditions 📈\n license:\n name: Apache 2.0\n url: https://www.apache.org/licenses/LICENSE-2.0\n\nservers:\n scram-connections:\n url: test.mykafkacluster.org:18092\n protocol: kafka-secure\n description: Test broker secured with scramSha256\n security:\n - saslScram: []\n tags:\n - name: \"env:test-scram\"\n description: \"This environment is meant for running internal tests through scramSha256\"\n - name: \"kind:remote\"\n description: \"This server is a remote server. Not exposed by the application\"\n - name: \"visibility:private\"\n description: \"This resource is private and only available to certain users\"\n mtls-connections:\n url: test.mykafkacluster.org:28092\n protocol: kafka-secure\n description: Test broker secured with X509\n security:\n - certs: []\n tags:\n - name: \"env:test-mtls\"\n description: \"This environment is meant for running internal tests through mtls\"\n - name: \"kind:remote\"\n description: \"This server is a remote server. Not exposed by the application\"\n - name: \"visibility:private\"\n description: \"This resource is private and only available to certain users\"\n\ndefaultContentType: application/json\n\nchannels:\n smartylighting.streetlights.1.0.event.{streetlightId}.lighting.measured:\n description: The topic on which measured values may be produced and consumed.\n parameters:\n streetlightId:\n $ref: '#/components/parameters/streetlightId'\n publish:\n summary: Inform about environmental lighting conditions of a particular streetlight.\n operationId: receiveLightMeasurement\n traits:\n - $ref: '#/components/operationTraits/kafka'\n message:\n $ref: '#/components/messages/lightMeasured'\n\n smartylighting.streetlights.1.0.action.{streetlightId}.turn.on:\n parameters:\n streetlightId:\n $ref: '#/components/parameters/streetlightId'\n subscribe:\n operationId: turnOn\n traits:\n - $ref: '#/components/operationTraits/kafka'\n message:\n $ref: '#/components/messages/turnOnOff'\n\n smartylighting.streetlights.1.0.action.{streetlightId}.turn.off:\n parameters:\n streetlightId:\n $ref: '#/components/parameters/streetlightId'\n subscribe:\n operationId: turnOff\n traits:\n - $ref: '#/components/operationTraits/kafka'\n message:\n $ref: '#/components/messages/turnOnOff'\n\n smartylighting.streetlights.1.0.action.{streetlightId}.dim:\n parameters:\n streetlightId:\n $ref: '#/components/parameters/streetlightId'\n subscribe:\n operationId: dimLight\n traits:\n - $ref: '#/components/operationTraits/kafka'\n message:\n $ref: '#/components/messages/dimLight'\n\ncomponents:\n messages:\n lightMeasured:\n name: lightMeasured\n title: Light measured\n summary: Inform about environmental lighting conditions of a particular streetlight.\n contentType: application/json\n traits:\n - $ref: '#/components/messageTraits/commonHeaders'\n payload:\n $ref: \"#/components/schemas/lightMeasuredPayload\"\n turnOnOff:\n name: turnOnOff\n title: Turn on/off\n summary: Command a particular streetlight to turn the lights on or off.\n traits:\n - $ref: '#/components/messageTraits/commonHeaders'\n payload:\n $ref: \"#/components/schemas/turnOnOffPayload\"\n dimLight:\n name: dimLight\n title: Dim light\n summary: Command a particular streetlight to dim the lights.\n traits:\n - $ref: '#/components/messageTraits/commonHeaders'\n payload:\n $ref: \"#/components/schemas/dimLightPayload\"\n\n schemas:\n lightMeasuredPayload:\n type: object\n properties:\n lumens:\n type: integer\n minimum: 0\n description: Light intensity measured in lumens.\n sentAt:\n $ref: \"#/components/schemas/sentAt\"\n turnOnOffPayload:\n type: object\n properties:\n command:\n type: string\n enum:\n - on\n - off\n description: Whether to turn on or off the light.\n sentAt:\n $ref: \"#/components/schemas/sentAt\"\n dimLightPayload:\n type: object\n properties:\n percentage:\n type: integer\n description: Percentage to which the light should be dimmed to.\n minimum: 0\n maximum: 100\n sentAt:\n $ref: \"#/components/schemas/sentAt\"\n sentAt:\n type: string\n format: date-time\n description: Date and time when the message was sent.\n\n securitySchemes:\n saslScram:\n type: scramSha256\n description: Provide your username and password for SASL/SCRAM authentication\n certs:\n type: X509\n description: Download the certificate files from service provider\n\n parameters:\n streetlightId:\n description: The ID of the streetlight.\n schema:\n type: string\n\n messageTraits:\n commonHeaders:\n headers:\n type: object\n properties:\n my-app-header:\n type: integer\n minimum: 0\n maximum: 100\n\n operationTraits:\n kafka:\n bindings:\n kafka:\n clientId:\n type: string\n enum: ['my-app-id']\n`;\n\nexport default selectAsyncAPI260StreetlightsYAML;\n","const selectAPIDesignSystemsYAML = () => `version: '2021-05-07'\ninfo:\n title: SmartBear API Guidelines\n description: |\n A machine and human readable version of the SmartBear API Style Guide aimed at promoting living API Style Governance across various tools and teams, leading to improved API quality.\n See the [SmartBear Standards and Guidelines](https://github.com/SmartBear/api-standards-and-guidelines) repo for a traditional view of the static guidelines.\nprinciples:\n- iri: urn:apidesign.systems:principle:robustness\n level: must\n- iri: urn:apidesign.systems:principle:rmm:level2\n level: must\n- iri: urn:apidesign.systems:principle:rmm:level3\n level: should\nstandards:\n- iri: urn:ietf:rfc:6648\n level: must\n- iri: urn:ietf:rfc:7807\n level: must\n- iri: urn:ietf:rfc:7231\n level: should\n- iri: urn:ietf:rfc:6585\n level: may\n- iri: urn:ietf:rfc:5788\n level: may\n- iri: urn:ietf:draft:http-semantics\n level: may\nscenarios:\n- description: SB-API-010 - Only apply standard HTTP methods\n when:\n - http\n - transaction\n then:\n - subject:\n - http\n - request\n - method\n level: may\n values:\n - get\n - post\n - put\n - patch\n - delete\n - subject:\n - http\n - request\n - header\n level: may\n values:\n - Accept\n - Accept-Charset\n - Authorization\n - Content-Language\n - Content-Type\n - Link\n - Prefer\n - subject:\n - http\n - request\n - header\n - Content-Type\n level: may\n values:\n - application/json\n - application/hal+json\n - subject:\n - http\n - response\n - header\n - Content-Type\n level: should\n values:\n - application/hal+json\n - subject:\n - http\n - response\n - header\n - Content-Type\n level: may\n values:\n - application/json\n - application/hal+json\n - application/problem+json\n- description: GET Methods - Allowed status codes\n when:\n - http\n - request\n - method\n - get\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '304'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: POST Method - Allowed status codes\n when:\n - http\n - request\n - method\n - post\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '201'\n - '202'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '409'\n - '415'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: PUT Method - Allowed status codes\n when:\n - http\n - request\n - method\n - put\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '201'\n - '202'\n - '204'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '409'\n - '412'\n - '415'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: PATCH Method - Allowed status codes\n when:\n - http\n - request\n - method\n - patch\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '202'\n - '204'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '409'\n - '412'\n - '415'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: DELETE Method - Allowed status codes\n when:\n - http\n - request\n - method\n - delete\n then:\n - subject:\n - http\n - response\n - status_code\n level: may\n values:\n - '200'\n - '202'\n - '204'\n - '400'\n - '401'\n - '403'\n - '404'\n - '405'\n - '409'\n - '412'\n - '415'\n - '422'\n - '429'\n - '500'\n - '501'\n - '503'\n- description: Client Errors must return \\`application/problem+json\\`\n when:\n - http\n - response\n - status_code\n - client_error\n then:\n - subject:\n - http\n - response\n - header\n - Content-Type\n level: must\n values:\n - application/problem+json\n- description: Server Errors must return \\`application/problem+json\\`\n when:\n - http\n - response\n - status_code\n - server_error\n then:\n - subject:\n - http\n - response\n - header\n - Content-Type\n level: must\n values:\n - application/problem+json\n`;\n\nexport default selectAPIDesignSystemsYAML;\n","import selectOpenAPI310PetstoreYAML from './selectors/selectOpenAPI310PetstoreYAML.js';\nimport selectOpenAPI303PetstoreYAML from './selectors/selectOpenAPI303PetstoreYAML.js';\nimport selectOpenAPI20PetstoreYAML from './selectors/selectOpenAPI20PetstoreYAML.js';\nimport selectAsyncAPI260PetstoreYAML from './selectors/selectAsyncAPI260PetstoreYAML.js';\nimport selectAsyncAPI260StreetlightsYAML from './selectors/selectAsyncAPI260StreetlightsYAML.js';\nimport selectAPIDesignSystemsYAML from './selectors/selectAPIDesignSystemsYAML.js';\n// test\n\nconst EditorContentFixturesPlugin = () => ({\n statePlugins: {\n editorContentFixtures: {\n selectors: {\n selectOpenAPI310PetstoreYAML,\n selectOpenAPI303PetstoreYAML,\n selectOpenAPI20PetstoreYAML,\n selectAsyncAPI260PetstoreYAML,\n selectAsyncAPI260StreetlightsYAML,\n selectAPIDesignSystemsYAML,\n },\n },\n },\n});\n\nexport default EditorContentFixturesPlugin;\n","import PropTypes from 'prop-types';\nimport React, { Component } from 'react';\n\nclass ErrorBoundary extends Component {\n static defaultState = { hasError: false, error: null, editorContent: null };\n\n static getDerivedStateFromError(error) {\n return { hasError: true, error };\n }\n\n constructor(...args) {\n super(...args);\n this.state = this.constructor.defaultState;\n }\n\n componentDidMount() {\n const { editorSelectors } = this.props;\n\n this.setState({ editorContent: editorSelectors.selectContent() });\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { editorSelectors } = this.props;\n const hasEditorContentChanged = prevState.editorContent !== editorSelectors.selectContent();\n\n if (!hasEditorContentChanged) return;\n\n const newState = { editorContent: editorSelectors.selectContent() };\n\n if (prevState.hasError) {\n newState.hasError = false;\n newState.error = null;\n }\n\n this.setState(newState);\n }\n\n componentDidCatch(error, errorInfo) {\n const {\n fn: { componentDidCatch },\n } = this.props;\n\n componentDidCatch(error, errorInfo);\n }\n\n render() {\n const { hasError, error } = this.state;\n const { getComponent, targetName, children } = this.props;\n\n if (hasError && error) {\n const FallbackComponent = getComponent('Fallback');\n return <FallbackComponent name={targetName} />;\n }\n\n return children;\n }\n}\nErrorBoundary.propTypes = {\n targetName: PropTypes.string,\n getComponent: PropTypes.func.isRequired,\n fn: PropTypes.shape({\n componentDidCatch: PropTypes.func.isRequired,\n }).isRequired,\n editorSelectors: PropTypes.shape({\n selectContent: PropTypes.func.isRequired,\n }).isRequired,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n};\nErrorBoundary.defaultProps = {\n targetName: 'this component',\n children: null,\n};\n\nexport default ErrorBoundary;\n","import React from 'react';\n\nimport ErrorBoundary from '../components/ErrorBoundary.jsx';\n\nconst ErrorBoundaryWrapper = (Original, system) => {\n const ErrorBoundaryOverride = (props) => {\n const { editorSelectors } = system;\n\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <ErrorBoundary {...props} editorSelectors={editorSelectors} />;\n };\n\n return ErrorBoundaryOverride;\n};\n\nexport default ErrorBoundaryWrapper;\n","import SwaggerUI from 'swagger-ui-react';\n\nimport ErrorBoundaryWrapper from './wrap-components/ErrorBoundaryWrapper.jsx';\n\n/**\n * This is special version of SwaggerUI.plugins.SafeRender.\n * In editor context, we want to dismiss the error produced\n * in error boundary if editor content has changed.\n */\nconst EditorSafeRenderPlugin = (opts = {}) => {\n const isCalledWithGetSystem = typeof opts.getSystem === 'function';\n const defaultOptions = { componentList: [], fullOverride: false };\n const options = isCalledWithGetSystem ? defaultOptions : { ...defaultOptions, ...opts };\n\n const plugin = () => {\n const safeRenderPlugin = () => {\n const defaultComponentList = [\n 'TopBar',\n 'SwaggerEditorLayout',\n 'Editor',\n 'EditorTextarea',\n 'EditorMonaco',\n 'EditorPane',\n 'EditorPaneBarTop',\n 'EditorPreviewPane',\n 'ValidationPane',\n 'AlertDialog',\n 'ConfirmDialog',\n 'Dropzone',\n ];\n const mergedComponentList = options.fullOverride\n ? options.componentList\n : [...defaultComponentList, ...options.componentList];\n\n return SwaggerUI.plugins.SafeRender({\n fullOverride: true,\n componentList: mergedComponentList,\n });\n };\n\n const safeRenderPluginOverride = () => ({\n wrapComponents: {\n ErrorBoundary: ErrorBoundaryWrapper,\n },\n });\n\n return [safeRenderPlugin, safeRenderPluginOverride];\n };\n\n return isCalledWithGetSystem ? plugin(opts) : plugin;\n};\n\nexport default EditorSafeRenderPlugin;\n","// eslint-disable-next-line import/prefer-default-export\nexport const updateSpec = (oriAction, system) => (spec) => {\n const { editorActions } = system;\n\n oriAction(spec);\n editorActions.detectContentType(spec, system);\n};\n","import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst BaseLayoutWrapper = (Original, system) => {\n const BaseLayout = ({ getComponent, editorSelectors }) => {\n const EditorPreviewAsyncAPI = getComponent('EditorPreviewAsyncAPI', true);\n const EditorPreviewAPIDesignSystems = getComponent('EditorPreviewAPIDesignSystems', true);\n\n if (editorSelectors.selectIsContentTypeDetectionInProgress()) {\n return (\n <div className=\"swagger-ui swagger-container\">\n <div className=\"swagger-ui\">\n <div className=\"info\">\n <div className=\"loading-container\">\n <div className=\"loading\" />\n </div>\n </div>\n </div>\n </div>\n );\n }\n\n if (editorSelectors.selectIsContentTypeAsyncAPI2()) {\n return <EditorPreviewAsyncAPI />;\n }\n\n if (editorSelectors.selectIsContentTypeAPIDesignSystems()) {\n return <EditorPreviewAPIDesignSystems />;\n }\n\n // eslint-disable-next-line react/jsx-props-no-spreading\n return <Original {...system} />;\n };\n\n BaseLayout.propTypes = {\n getComponent: PropTypes.func.isRequired,\n editorSelectors: PropTypes.shape({\n selectIsContentTypeDetectionInProgress: PropTypes.func.isRequired,\n selectIsContentTypeAsyncAPI2: PropTypes.func.isRequired,\n selectIsContentTypeAPIDesignSystems: PropTypes.func.isRequired,\n selectIsContentTypeOpenAPI: PropTypes.func.isRequired,\n selectContentType: PropTypes.func.isRequired,\n }).isRequired,\n };\n\n return BaseLayout;\n};\n\nexport default BaseLayoutWrapper;\n","import { updateSpec as updateSpecWrap } from './wrap-actions.js';\nimport BaseLayoutWrapper from './wrap-components/BaseLayout.jsx';\n\n/**\n * This plugin adapts plugins from this codebase to SwaggerUI.\n * Using this adapter, one can use SwaggerUI to preview multiple\n * specifications.\n */\n\nconst SwaggerUIAdapterPlugin = () => {\n return {\n wrapComponents: {\n BaseLayout: BaseLayoutWrapper,\n },\n statePlugins: {\n spec: {\n wrapActions: {\n updateSpec: updateSpecWrap,\n },\n },\n },\n };\n};\n\nexport default SwaggerUIAdapterPlugin;\n","import React from 'react';\nimport deepmerge from 'deepmerge';\nimport SwaggerUI from 'swagger-ui-react';\nimport 'swagger-ui-react/swagger-ui.css';\n\nimport './styles/main.scss';\nimport LayoutPlugin from './plugins/layout/index.js';\nimport SplashScreenPlugin from './plugins/splash-screen/index.js';\nimport TopBarPlugin from './plugins/top-bar/index.js';\nimport ModalsPlugin from './plugins/modals/index.js';\nimport DialogsPlugin from './plugins/dialogs/index.js';\nimport DropdownMenuPlugin from './plugins/dropdown-menu/index.js';\nimport DropzonePlugin from './plugins/dropzone/index.js';\nimport VersionsPlugin from './plugins/versions/index.js';\nimport EditorTextareaPlugin from './plugins/editor-textarea/index.js';\nimport EditorMonacoPlugin from './plugins/editor-monaco/index.js';\nimport EditorMonacoLanguageApiDOMPlugin from './plugins/editor-monaco-language-apidom/index.js';\nimport EditorPreviewPlugin from './plugins/editor-preview/index.js';\nimport EditorPreviewSwaggerUIPlugin from './plugins/editor-preview-swagger-ui/index.js';\nimport EditorPreviewAsyncAPIPlugin from './plugins/editor-preview-asyncapi/index.js';\nimport EditorPreviewApiDesignSystemsPlugin from './plugins/editor-preview-api-design-systems/index.js';\nimport EditorContentReadOnlyPlugin from './plugins/editor-content-read-only/index.js';\nimport EditorContentOriginPlugin from './plugins/editor-content-origin/index.js';\nimport EditorContentTypePlugin from './plugins/editor-content-type/index.js';\nimport EditorContentPersistencePlugin from './plugins/editor-content-persistence/index.js';\nimport EditorContentFixturesPlugin from './plugins/editor-content-fixtures/index.js';\nimport EditorSafeRenderPlugin from './plugins/editor-safe-render/index.js';\nimport SwaggerUIAdapterPlugin from './plugins/swagger-ui-adapter/index.js';\n\nconst SwaggerEditor = React.memo((props) => {\n const mergedProps = deepmerge(SwaggerEditor.defaultProps, props);\n\n return (\n <div className=\"swagger-editor\">\n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n <SwaggerUI {...mergedProps} />\n </div>\n );\n});\n\nSwaggerEditor.plugins = {\n Modals: ModalsPlugin,\n Dialogs: DialogsPlugin,\n DropdownMenu: DropdownMenuPlugin,\n Dropzone: DropzonePlugin,\n Versions: VersionsPlugin,\n EditorTextarea: EditorTextareaPlugin,\n EditorMonaco: EditorMonacoPlugin,\n EditorMonacoLanguageApiDOM: EditorMonacoLanguageApiDOMPlugin,\n EditorContentReadOnly: EditorContentReadOnlyPlugin,\n EditorContentOrigin: EditorContentOriginPlugin,\n EditorContentType: EditorContentTypePlugin,\n EditorContentPersistence: EditorContentPersistencePlugin,\n EditorContentFixtures: EditorContentFixturesPlugin,\n EditorPreview: EditorPreviewPlugin,\n EditorPreviewSwaggerUI: EditorPreviewSwaggerUIPlugin,\n EditorPreviewAsyncAPI: EditorPreviewAsyncAPIPlugin,\n EditorPreviewApiDesignSystems: EditorPreviewApiDesignSystemsPlugin,\n EditorSafeRender: EditorSafeRenderPlugin,\n TopBar: TopBarPlugin,\n SplashScreenPlugin,\n Layout: LayoutPlugin,\n SwaggerUIAdapter: SwaggerUIAdapterPlugin,\n};\nSwaggerEditor.presets = {\n textarea: () => [\n ModalsPlugin,\n DialogsPlugin,\n DropdownMenuPlugin,\n DropzonePlugin,\n VersionsPlugin,\n EditorTextareaPlugin,\n EditorContentReadOnlyPlugin,\n EditorContentOriginPlugin,\n EditorContentTypePlugin,\n EditorContentPersistencePlugin,\n EditorContentFixturesPlugin,\n EditorPreviewPlugin,\n EditorPreviewSwaggerUIPlugin,\n EditorPreviewAsyncAPIPlugin,\n EditorPreviewApiDesignSystemsPlugin,\n TopBarPlugin,\n SplashScreenPlugin,\n LayoutPlugin,\n EditorSafeRenderPlugin,\n ],\n monaco: () => [\n ModalsPlugin,\n DialogsPlugin,\n DropdownMenuPlugin,\n DropzonePlugin,\n VersionsPlugin,\n EditorTextareaPlugin,\n EditorMonacoPlugin,\n EditorMonacoLanguageApiDOMPlugin,\n EditorContentReadOnlyPlugin,\n EditorContentOriginPlugin,\n EditorContentTypePlugin,\n EditorContentPersistencePlugin,\n EditorContentFixturesPlugin,\n EditorPreviewPlugin,\n EditorPreviewSwaggerUIPlugin,\n EditorPreviewAsyncAPIPlugin,\n EditorPreviewApiDesignSystemsPlugin,\n TopBarPlugin,\n SplashScreenPlugin,\n LayoutPlugin,\n EditorSafeRenderPlugin,\n ],\n default: (...args) => SwaggerEditor.presets.monaco(...args),\n};\n\nSwaggerEditor.propTypes = SwaggerUI.propTypes;\n\nSwaggerEditor.defaultProps = {\n ...SwaggerUI.defaultProps,\n layout: 'SwaggerEditorLayout',\n presets: [SwaggerEditor.presets.default],\n};\n\nexport default SwaggerEditor;\n"],"names":["module","exports","__WEBPACK_EXTERNAL_MODULE__asyncapi_react_component_lib_esm_without_parser_js_ba054bac__","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","d","definition","key","o","Object","defineProperty","enumerable","get","h","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","y","x","__WEBPACK_EXTERNAL_MODULE_react__","Component","Suspense","forwardRef","memo","useCallback","useEffect","useImperativeHandle","useRef","useState","__WEBPACK_EXTERNAL_MODULE_deepmerge__","__WEBPACK_EXTERNAL_MODULE_swagger_ui_react_ed26f026__","__WEBPACK_EXTERNAL_MODULE_react_collapse_pane_f7052d83__","SplitPane","__WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_js_fc12ce1a__","Fragment","jsx","jsxs","Layout","getComponent","useSwaggerEditorReactModal","useSplashScreen","EditorPane","EditorPreviewPane","TopBar","Container","Dropzone","SplashScreen","ref","canDisplaySplashScreen","canDisplayLayout","_jsxs","className","children","_jsx","isOpen","_Fragment","split","requestIdleCallback","globalThis","args","callback","start","Date","now","setTimeout","didTimeout","timeoutRemaining","Math","max","cancelIdleCallback","handle","clearTimeout","makeUseSplashScreen","getSystem","setCanDisplaySplashScreen","setDisplayLayout","fn","requestId","requestID","timeoutID","LayoutPlugin","rootInjects","components","SwaggerEditorLayout","__WEBPACK_EXTERNAL_MODULE_classnames__","PACKAGE_VERSION","buildInfo","SplashScreenSpinner","isHidden","setHidden","classNames","onTransitionEnd","handleTransitionEnd","width","src","alt","defaultProps","height","SplashScreenPlugin","Logo","FileMenu","EditMenu","OpenAPI3GenerateServerMenu","OpenAPI3GenerateClientMenu","OpenAPI2GenerateServerMenu","OpenAPI2GenerateClientMenu","AboutMenu","link","img","href","rel","ImportUrlMenuItemHandler","editorActions","isConfirmDialogOpen","setIsConfirmDialogOpen","isAlertDialogOpen","setIsAlertDialogOpen","alertDialogMessage","url","setUrl","ConfirmDialog","AlertDialog","openModal","title","onClose","handleAlertDialogClose","current","async","result","fsa","importUrl","error","meta","errorMessage","setContent","payload","htmlFor","id","type","placeholder","onChange","event","target","__WEBPACK_EXTERNAL_MODULE_file_dialog_c1aa51c0__","ImportFileMenuItemHandler","openFileDialog","file","fileDialog","multiple","content","text","message","SaveAsMenuItemHandler","editorSelectors","downloadContent","selectContent","fileNameWithExtension","selectInferFileNameWithExtensionFromContent","ConvertAndSaveAsJSONMenuItemHandler","convertAndSaveAsJSON","selectInferFileNameFromContent","convertFSA","convertContentToJSON","downloadFSA","ConvertAndSaveAsYAMLMenuItemHandler","convertAndSaveAsYAML","convertContentToYAML","DownloadResolvedJSONMenuItemHandler","downloadResolvedJSON","dereferencedContent","isContentJSON","selectIsContentFormatJSON","dereferenceFSA","dereferenceContent","DownloadResolvedYAMLMenuItemHandler","downloadResolvedYAML","isContentYAML","selectIsContentFormatYAML","FileMenuHandler","props","importUrlMenuItemHandler","importFileMenuItemHandler","saveAsMenuItemHandler","convertAndSaveAsJSONMenuItemHandler","convertAndSaveAsYAMLMenuItemHandler","downloadResolvedJSONMenuItemHandler","downloadResolvedYAMLMenuItemHandler","importURL","importFile","saveAs","fileMenuHandler","DropdownMenu","DropdownMenuItemDivider","ImportUrlMenuItem","ImportFileMenuItem","LoadExampleNestedMenu","SaveAsMenuItem","ConvertAndSaveAsJSONMenuItem","ConvertAndSaveAsYAMLMenuItem","DownloadResolvedJSONMenuItem","DownloadResolvedYAMLMenuItem","handleUrlImportClick","handleFileImportClick","handleSaveAsClick","handleConvertAndSaveAsJSONClick","handleConvertAndSaveAsYAMLClick","handleDownloadResolvedJSONClick","handleDownloadResolvedYAMLClick","label","onClick","DropdownMenuItem","__WEBPACK_EXTERNAL_MODULE_prop_types_adfe8e31__","LoadExampleNestedMenuHandler","editorContentFixturesSelectors","loadOpenAP31PetstoreFixture","selectOpenAPI310PetstoreYAML","loadOpenAP30PetstoreFixture","selectOpenAPI303PetstoreYAML","loadOpenAP20PetstoreFixture","selectOpenAPI20PetstoreYAML","loadAsyncAPI26PetstoreFixture","selectAsyncAPI260PetstoreYAML","loadAsyncAPI26StreetlightsFixture","selectAsyncAPI260StreetlightsYAML","loadAPIDesignSystemsFixture","selectAPIDesignSystemsYAML","propTypes","PropTypes","isRequired","loadExampleNestedMenuHandler","DropDownMenuNested","OpenAPI31PetstoreMenuItem","OpenAPI30PetstoreMenuItem","OpenAPI20PetstoreMenuItem","AsyncAPI26PetstoreMenuItem","AsyncAPI26StreetlightsMenuItem","APIDesignSystemsMenuItem","handleOpenAPI31PetstoreClick","handleOpenAPI30PetstoreClick","handleOpenAPI20PetstoreClick","handleAsyncAPI26PetstoreClick","handleAsyncAPI26StreetlightsClick","handleAPIDesignSystemsClick","itemName","isContentTypeOpenAPI","selectIsContentTypeOpenAPI","isContentTypeAsyncAPI","selectIsContentTypeAsyncAPI","isContentFormatJSON","isContentFormatYAML","CovertToJSONMenuItemHandler","convertToJSON","CovertToYAMLMenuItemHandler","convertToYAML","CovertToOpenAPI30xMenuItemHandler","convert","contentType","convertOpenAPI20ToOpenAPI30x","openAPI2Content","convertToJSONMenuItemHandler","convertToYAMLMenuItemHandler","convertToOpenAPI30xMenuItemHandler","clear","clearContent","convertOpenAPI20ToOpenAPI30xClick","ConvertToJSONMenuItemHandler","ConvertToYAMLMenuItemHandler","ClearMenuItem","ConvertToJSONMenuItem","ConvertToYAMLMenuItem","ConvertToOpenAPI30xMenuItem","editMenuHandler","handleClearClick","handleConvertToJSONClick","handleConvertToYAMLClick","handleConvertOpenAPI20ToOpenAPI30xClick","EditMenuHandler","selectIsContentTypeOpenAPI20","GenerateMenu","items","onMenuItemClick","handleMenuClick","item","isLong","map","editorTopBarSelectors","editorTopBarActions","isContentTypeOpenAPI30x","selectIsContentTypeOpenAPI30x","isContentTYpeOpenAPI31x","selectIsContentTypeOpenAPI31x","serverList","selectOpenAPI3GeneratorServerList","canShow","handleMenuItemClick","framework","generateServerCodeFromOpenAPI3","clientList","selectOpenAPI3GeneratorClientList","language","generateClientCodeFromOpenAPI3","isContentTYpeOpenAPI20","selectOpenAPI2GeneratorServerList","generateServerCodeFromOpenAPI20","selectOpenAPI2GeneratorClientList","generateClientCodeFromOpenAPI20","Link","__WEBPACK_EXTERNAL_MODULE_short_unique_id_298b54bb__","__WEBPACK_EXTERNAL_MODULE_axios__","__WEBPACK_EXTERNAL_MODULE__braintree_sanitize_url_2340607f__","sanitizeUrl","importUrlStarted","importUrlSuccess","importUrlFailure","response","request","uid","ShortUniqueId","length","system","sanitizedUrl","Error","axios","responseText","__WEBPACK_EXTERNAL_MODULE_js_file_download_bd23dbb6__","downloadContentStarted","downloadContentSuccess","downloadContentFailure","fileDownload","__WEBPACK_EXTERNAL_MODULE_js_yaml_78384032__","convertContentToJSONStarted","convertContentToJSONSuccess","contentJSON","convertContentToJSONFailure","contentObject","YAML","contentJSONString","JSON","stringify","convertContentToYAMLStarted","convertContentToYAMLSuccess","contentYAML","convertContentToYAMLFailure","parse","contentYAMLString","__WEBPACK_EXTERNAL_MODULE_monaco_editor_23647bbd__","dereferenceContentStarted","baseURI","dereferenceContentSuccess","contentDereferenced","dereferenceContentFailure","model","monaco","getModels","find","m","getValue","worker","getApiDOMWorker","uri","doDeref","toString","location","convertOpenAPI20ToOpenAPI30xStarted","convertOpenAPI20ToOpenAPI30xSuccess","openAPI30xContent","convertOpenAPI20ToOpenAPI30xFailure","swagger2ConverterUrl","openAPI20ConverterURL","getConfigs","converterURL","selectOpenAPI20ConverterURL","headers","Accept","data","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_STARTED","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_SUCCESS","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_SERVER_LIST_FAILURE","fetchOpenAPI3GeneratorServerListStarted","fetchOpenAPI3GeneratorServerListSuccess","fetchOpenAPI3GeneratorServerListFailure","fetchOpenAPI3GeneratorServerList","selectOpenAPI3GeneratorServerListURL","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_STARTED","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_SUCCESS","EDITOR_TOP_BAR_FETCH_OPENAPI3_GENERATOR_CLIENT_LIST_FAILURE","fetchOpenAPI3GeneratorClientListStarted","fetchOpenAPI3GeneratorClientListSuccess","fetchOpenAPI3GeneratorClientListFailure","fetchOpenAPI3GeneratorClientList","selectOpenAPI3GeneratorClientListURL","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_STARTED","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_SUCCESS","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_SERVER_LIST_FAILURE","fetchOpenAPI2GeneratorServerListStarted","fetchOpenAPI2GeneratorServerListSuccess","fetchOpenAPI2GeneratorServerListFailure","fetchOpenAPI2GeneratorServerList","selectOpenAPI2GeneratorServerListURL","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_STARTED","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_SUCCESS","EDITOR_TOP_BAR_FETCH_OPENAPI2_GENERATOR_CLIENT_LIST_FAILURE","fetchOpenAPI2GeneratorClientListStarted","fetchOpenAPI2GeneratorClientListSuccess","fetchOpenAPI2GeneratorClientListFailure","fetchOpenAPI2GeneratorClientList","selectOpenAPI2GeneratorClientListURL","generateServerCodeFromOpenAPI3Started","generateServerCodeFromOpenAPI3Success","blob","generateServerCodeFromOpenAPI3Failure","selectOpenAPI3GenerateServerURL","spec","lang","responseType","generateClientCodeFromOpenAPI3Started","generateClientCodeFromOpenAPI3Success","generateClientCodeFromOpenAPI3Failure","selectOpenAPI3GenerateClientURL","generateServerCodeFromOpenAPI20Started","generateServerCodeFromOpenAPI20Success","generateServerCodeFromOpenAPI20Failure","selectOpenAPI2GenerateServerURL","downloadURL","generateClientCodeFromOpenAPI20Started","generateClientCodeFromOpenAPI20Success","generateClientCodeFromOpenAPI20Failure","selectOpenAPI2GenerateClientURL","wrapper","lastFSA","origAction","__WEBPACK_EXTERNAL_MODULE_immutable__","List","fromJS","IDLE_STATUS","FETCHING_STATUS","SUCCESS_STATUS","FAILURE_STATUS","fetchOpenAPI3GeneratorServerListStartedReducer","state","action","merge","openAPI3GeneratorServerListStatus","openAPI3GeneratorServerListRequestId","fetchOpenAPI3GeneratorServerListSuccessReducer","status","openAPI3GeneratorServerList","of","openAPI3GeneratorServerListError","fetchOpenAPI3GeneratorServerListFailureReducer","fetchOpenAPI3GeneratorClientListStartedReducer","openAPI3GeneratorClientListStatus","openAPI3GeneratorClientListRequestId","fetchOpenAPI3GeneratorClientListSuccessReducer","openAPI3GeneratorClientList","openAPI3GeneratorClientListError","fetchOpenAPI3GeneratorClientListFailureReducer","fetchOpenAPI2GeneratorServerListStartedReducer","openAPI2GeneratorServerListStatus","openAPI2GeneratorServerListRequestId","fetchOpenAPI2GeneratorServerListSuccessReducer","openAPI2GeneratorServerList","openAPI2GeneratorServerListError","fetchOpenAPI2GeneratorServerListFailureReducer","fetchOpenAPI2GeneratorClientListStartedReducer","openAPI2GeneratorClientListStatus","openAPI2GeneratorClientListRequestId","fetchOpenAPI2GeneratorClientListSuccessReducer","openAPI2GeneratorClientList","openAPI2GeneratorClientListError","fetchOpenAPI2GeneratorClientListFailureReducer","detectContentTypeSuccess","createSafeActionWrapper","oriAction","triggerStatuses","includes","selectOpenAPI3GeneratorServerListStatus","selectOpenAPI3GeneratorClientListStatus","selectOpenAPI2GeneratorServerListStatus","selectOpenAPI2GeneratorClientListStatus","__WEBPACK_EXTERNAL_MODULE_reselect__","createSelector","selectEditorTopBarState","toJS","TopBarPlugin","TopBarLogo","TopBarFileMenu","TopBarFileMenuImportUrlMenuItem","TopBarFileMenuImportFileMenuItem","TopBarFileMenuLoadExampleNestedMenu","TopBarFileMenuLoadExampleNestedMenuOpenAPI31PetstoreMenuItem","TopBarFileMenuLoadExampleNestedMenuOpenAPI30PetstoreMenuItem","TopBarFileMenuLoadExampleNestedMenuOpenAPI20PetstoreMenuItem","TopBarFileMenuLoadExampleNestedMenuAsyncAPI26PetstoreMenuItem","TopBarFileMenuLoadExampleNestedMenuAsyncAPI26StreetlightsMenuItem","TopBarFileMenuLoadExampleNestedMenuAPIDesignSystemsMenuItem","TopBarFileMenuSaveAsMenuItem","TopBarFileMenuConvertAndSaveAsJSONMenuItem","TopBarFileMenuConvertAndSaveAsYAMLMenuItem","TopBarFileMenuDownloadResolvedJSONMenuItem","TopBarFileMenuDownloadResolvedYAMLMenuItem","TopBarEditMenu","TopBarEditMenuClearMenuItem","TopBarEditMenuConvertToJSONMenuItem","TopBarEditMenuConvertToYAMLMenuItem","TopBarEditMenuConvertToOpenAPI30xMenuItem","TopBarOpenAPI3GenerateServerMenu","TopBarOpenAPI3GenerateClientMenu","TopBarOpenAPI2GenerateServerMenu","TopBarOpenAPI2GenerateClientMenu","TopBarAboutMenu","statePlugins","editor","actions","wrapActions","detectContentTypeSuccessWrap","selectors","editorTopBar","reducers","__WEBPACK_EXTERNAL_MODULE_react_modal_ee4a10af__","Modal","contentLabel","aria","ReactModal","closeTimeoutMS","overlayClassName","ModalHeader","ModalTitle","ModalBody","ModalFooter","useReactModal","ModalsPlugin","handleCloseClick","handleCancelClick","handleOKClick","DialogsPlugin","setIsOpen","handleClickOutside","contains","handleToggleClick","document","addEventListener","removeEventListener","long","role","tabIndex","DropdownMenuNested","onMouseEnter","handleOpen","onMouseLeave","handleClose","DropdownMenuPlugin","useDropzone","isDragActive","getRootProps","getInputProps","__WEBPACK_EXTERNAL_MODULE_react_dropzone_68d11630__","makeUseDropzone","setErrorMessage","handleFileDrop","acceptedFiles","rejectedFiles","someFilesWereRejected","thereIsExactlyOneAcceptedFile","useVendorDropzone","onDrop","noClick","DropzonePlugin","afterLoad","GIT_COMMIT","GIT_DIRTY","BUILD_TIME","versions","swaggerEditor","create","this","version","gitRevision","gitDirty","valueOf","buildTimestamp","buildHash","__webpack_hash__","VersionsPlugin","useElementResize","Editor","EditorPaneBarTop","EditorPaneBarRight","EditorPaneBarBottom","EditorPaneBarLeft","editorContainerRef","eventName","__WEBPACK_EXTERNAL_MODULE_react_resize_detector_b0babbde__","useResizeDetector","makeUseEditorLifecycle","implementation","editorRef","editorSetup","editorTearDown","handleResize","CustomEvent","detail","dispatchEvent","onResize","refreshMode","refreshRate","TextareaEditor","isReadOnly","useEditorLifecycle","useId","randomNumber","floor","random","String","setValue","handleChange","e","preventDefault","setContentDebounced","readOnly","name","renderChildren","renderControls","controls","EDITOR_SETUP","EDITOR_TEAR_DOWN","EDITOR_SET_CONTENT","editorInstance","initialState","set","delete","selectId","selectEditor","getElementById","__WEBPACK_EXTERNAL_MODULE_lodash_debounce_js_35379ba8__","setContentDebouncedImpl","debounce","contentOrigin","updateSpec","origin","EditorTextareaPlugin","editorSetupWrap","editorTearDownWrap","setContentDebouncedWrap","clearContentWrap","updateSpecWrap","__WEBPACK_EXTERNAL_MODULE_lodash_noop_js_57fa4577__","base","inherit","rules","token","foreground","fontStyle","colors","useMount","effect","useUpdate","deps","applyChanges","isInitialMount","MonacoEditor","theme","onMount","onWillUnmount","onEditorMarkersDidChange","containerRef","subscriptionRef","valueRef","isEditorReady","setIsEditorReady","createEditor","glyphMargin","lightbulb","enabled","lineNumbers","autoIndent","formatOnPaste","formatOnType","wordWrap","minimap","domReadOnly","wordBasedSuggestions","quickSuggestions","quickSuggestionsDelay","fixedOverflowWidgets","suggest","snippetsPreventQuickSuggestions","renderWhitespace","matchOnWordStartOnly","getModel","updateOptions","tabSize","disposeEditor","_subscriptionRef$curr","_editorRef$current$ge","dispose","defineTheme","seVsDarkTheme","seVsLightTheme","setModelLanguage","getOption","EditorOption","executeEdits","range","getFullModelRange","forceMoveMarkers","pushUndoStop","setTheme","disposable","onDidChangeMarkers","uris","currentModelUri","markers","getModelMarkers","resource","_subscriptionRef$curr2","_editorRef$current","onDidChangeModelContent","editorValue","layout","useSmoothResize","lastDimensions","currentDimensions","breakAnimationFrame","handleEditorContainerResize","requestAnimationFrame","handleEditorResize","noop","MonacoEditorContainer","selectTheme","selectLanguage","handleEditorDidMount","focus","handleEditorWillUnmount","handleChangeEditorValue","newValue","handleEditorMarkersDidChange","setMarkers","ValidationPane","alwaysDisplayHeading","onValidationClick","selectMarkers","ValidationTable","showTable","handleValidationClick","marker","position","lineNumber","startLineNumber","column","startColumn","setPosition","onRowClick","SeverityIcon","severity","index","code","__WEBPACK_EXTERNAL_MODULE__primer_octicons_react_9fe6ea35__","LockIcon","MoonIcon","SunIcon","UnlockIcon","ThemeSelectionIcon","newTheme","size","EditorPaneBarTopWrapper","Original","ThemeSelection","rest","EditorPaneBarBottomWrapper","EDITOR_APPEND_MARKERS","appendMarkers","EDITOR_CLEAR_MARKERS","clearMarkers","source","EDITOR_SET_LANGUAGE","setLanguage","languageId","EDITOR_SET_MARKERS","setPositionStarted","setPositionSuccess","setPositionFailure","revealPositionNearTop","EDITOR_SET_THEME","concat","filterNot","editor_setup","getId","editor_tear_down","getEditors","__WEBPACK_EXTERNAL_MODULE_monaco_marker_data_provider_40519126__","registerMarkerDataProvider","registerMarkerDataProviderGeneric","bind","waitUntil","condition","interval","maxWait","Promise","resolve","reject","intervalID","setInterval","clearInterval","monacoInitializationDeferred","makeDeferred","deferred","promise","__WEBPACK_EXTERNAL_MODULE_vscode_services_3b1ec6e6__","IStorageService","StandaloneServices","initialize","__WEBPACK_EXTERNAL_MODULE_vscode_service_override_languages_39ca0d84__","__WEBPACK_EXTERNAL_MODULE_vscode_extensions_dfa53f5d__","InitPhase","MonacoEnvironment","initPhase","baseUrl","getWorkerUrl","URL","process","all","initializeMonacoServices","getLanguagesServiceOverride","initializeVscodeExtensions","store","EditorMonacoPlugin","wrapComponents","_classPrivateFieldBase","receiver","privateKey","TypeError","_classPrivateFieldKey","__WEBPACK_EXTERNAL_MODULE_vscode__","languages","__WEBPACK_EXTERNAL_MODULE_monaco_editor_esm_vs_editor_common_languages_modesRegistry_js_5f33ab3c__","ModesRegistry","conf","comments","lineComment","brackets","autoClosingPairs","open","close","surroundingPairs","onEnterRules","beforeText","indentAction","IndentAction","Indent","None","appendText","defaultToken","keywords","typeKeywords","escapes","tokenizer","root","cases","include","whitespace","string","__WEBPACK_EXTERNAL_MODULE_vscode_languageclient_lib_common_codeConverter_js_b2d3adcf__","createConverter","__WEBPACK_EXTERNAL_MODULE_vscode_languageclient_lib_common_protocolConverter_js_779c1346__","_defaults","_classPrivateFieldLooseKey","_worker","_client","_idleCheckInterval","_lastUsedTime","_stopWorker","_checkIfIdle","_getClient","WorkerManager","constructor","defaults","_getClient2","_checkIfIdle2","_stopWorker2","writable","_classPrivateFieldLooseBase","getLanguageServiceWorker","resources","client","withSyncedResources","createWebWorker","getLanguageId","createData","getWorkerOptions","apiDOMContext","customWorkerPath","getProxy","codeConverter","protocolConverter","_codeConverter","_protocolConverter","_listener","_disposables","_diagnosticCollection","_system","_getDiagnostics","_validate","_getDiagnostics2","isDisposed","doValidation","_validate2","_classPrivateFieldLoo","diagnostics","asDiagnostics","Provider","super","onModelAdded","apidom","changeSubscription","onDidChangeContent","onModelRemoved","onVscodeInitialized","vscodeLanguages","createDiagnosticCollection","push","onDidCreateModel","onDidChangeModelLanguage","hasChangedToApiDOM","isModelSubscribed","onWillDisposeModel","then","forEach","_getHover","_getHover2","vscodeDocument","doHover","asPosition","provideHover","hover","asHover","_getLinks","_getLinks2","doLinks","provideDocumentLinks","linksWithNonEmptyRanges","filter","asRange","isEmpty","asDocumentLinks","resolveDocumentLink","_getCompletionList","_getCompletionList2","doComplete","provideCompletionItems","completionList","asCompletionResult","_getSemanticTokens","_getSemanticTokens2","findSemanticTokens","provideDocumentSemanticTokens","semanticTokens","asSemanticTokens","_getCodeActionList","_maybeConvert","_getCodeActionList2","diagnosticList","doCodeActions","_maybeConvert2","codeActionList","asCodeActionResult","provideCodeActions","ctx","_getSymbolInformationList","_getSymbolInformationList2","findDocumentSymbols","provideDocumentSymbols","symbolInformationList","asSymbolInformations","_getLocation","_getLocation2","provideDefinition","asDefinitionResult","apidomWorker","disposeAll","disposables","pop","asDisposable","getWorker","setupMode","createCodeConverter","createProtocolConverter","registerProviders","providers","dependencies","DiagnosticsProvider","registerHoverProvider","HoverProvider","registerDocumentLinkProvider","DocumentLinkProvider","registerCompletionItemProvider","CompletionItemProvider","registerCodeActionsProvider","CodeActionsProvider","registerDocumentSymbolProvider","DocumentSymbolProvider","registerDefinitionProvider","DefinitionProvider","workerService","semanticTokensLegend","getSemanticTokensLegend","registerDocumentSemanticTokensProvider","DocumentSemanticTokensProvider","getModeConfiguration","createDereferenceActionDescriptor","run","dereferenced","format","nicelyFormattedYAML","modeConfigurationDefault","workerOptionsDefault","_languageId","_workerOptions","_modeConfiguration","LanguageServiceDefaultsImpl","workerOptions","modeConfiguration","setLanguageId","setWorkerOptions","setModeConfiguration","apidomDefaults","lazyMonacoContribution","registerLanguage","setLanguageConfiguration","setMonarchTokensProvider","onDidCreateEditor","customApiDOMWorkerPath","dereferenceActionDescriptor","getAction","addAction","onDidDispose","makeAfterLoad","isLanguageRegistered","getLanguages","getJsonPointerPositionStarted","jsonPointer","getJsonPointerPositionSuccess","getJsonPointerPositionFailure","getJsonPointerPosition","line","character","EditorMonacoLanguageApiDOMPlugin","opts","isCalledWithGetSystem","options","plugin","EditorPreview","EditorPreviewFallback","EditorPreviewPlugin","EditorPreviewSwaggerUI","editorPreviewSwaggerUIActions","BaseLayout","previewUnmounted","JumpToPath","path","showButton","handleJumpToPath","stopPropagation","jumpToPath","jumpToPathButton","onKeyDown","EditorPreviewWrapper","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_json_pointer_c5d352f4__","compile","jumpToPathStarted","jumpToPathSuccess","jumpToPathFailure","getJsonPointerPositionFSA","setPositionActionFSA","specActions","EditorPreviewSwaggerUIPlugin","editorPreviewSwaggerUI","previewUnmountedWrap","AsyncApiReactComponent","React","Loading","Parsing","EditorPreviewAsyncAPI","editorPreviewAsyncAPIActions","editorPreviewAsyncAPISelectors","ParseErrors","isParseInProgress","selectIsParseInProgress","isParseSuccess","selectIsParseSuccess","isParseFailure","selectIsParseFailure","parseResult","selectParseResult","parseErrors","selectParseErrors","fallback","schema","config","show","errors","selectIsContentTypeAsyncAPI2","__WEBPACK_EXTERNAL_MODULE__asyncapi_parser_bad37540__","AsyncAPIDocument","registerSchemaParser","__WEBPACK_EXTERNAL_MODULE__asyncapi_openapi_schema_parser_16ffeb94__","__WEBPACK_EXTERNAL_MODULE__asyncapi_avro_schema_parser_e6df19e2__","defaultSchemaFormat","schemaFormat","description","console","getMimeTypes","openapiSchemaParser","ramlSchemaParser","avroSchemaParser","EDITOR_PREVIEW_ASYNCAPI_PREVIEW_UNMOUNTED","EDITOR_PREVIEW_ASYNCAPI_PARSE_STARTED","EDITOR_PREVIEW_ASYNCAPI_PARSE_SUCCESS","EDITOR_PREVIEW_ASYNCAPI_PARSE_FAILURE","parseStarted","parseSuccess","parseFailure","parserOptions","parseAsyncAPIDefinition","__WEBPACK_EXTERNAL_MODULE_lodash_uniqWith_js_0c2624c1__","PARSING_STATUS","parserMarkers","parseStatus","parseRequestId","parseStartedReducer","parseSuccessReducer","parseFailureReducer","validationErrors","Array","isArray","validationError","startLine","endLineNumber","endLine","endColumn","parseValidationErrorsReducer","refErrors","refs","refError","parseRefErrorsReducer","uniqWith","arrVal","othVal","selectState","selectParseStatus","parseErrorsIm","selectParseMarkers","modelVersionId","parseError","MarkerSeverity","Disposable","owner","provideMarkerData","modelValue","getVersionId","conditionFn","usingEditorMonacoPlugin","usingEditorMonacoLanguageApiDOMPlugin","pluginAPI","editorPreviewAsyncAPI","EditorPreviewAsyncAPIPlugin","EditorPreviewAsyncAPIParseErrors","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_json_1adf0e52__","detect","detectionRegExp","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_api_design_systems_yaml_bdee7436__","EDITOR_PREVIEW_ADS_PREVIEW_UNMOUNTED","EDITOR_PREVIEW_ADS_PARSE_STARTED","EDITOR_PREVIEW_ADS_PARSE_SUCCESS","EDITOR_PREVIEW_ADS_PARSE_FAILURE","editorPreviewADSActions","parseAPIDesignSystemsDefinition","parseJSON","parseYAML","selectIsContentTypeAPIDesignSystems","selectContentType","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_core_e136e1a4__","createNamespace","from","isArrayElement","isStringElement","toValue","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_ns_api_design_systems_8e97df3b__","isInfoElement","isMainElement","isPrincipleElement","isRequirementLevelElement","isScenarioElement","isStandardElement","isStandardIdentifierElement","namespace","apiDesignSystemsNamespace","selectParseError","selectMainElement","selectVersion","mainElement","selectInfo","info","selectPrinciplesCount","principles","selectStandardsCount","standards","selectScenariosCount","scenarios","selectPrinciples","selectStandards","selectScenarios","elements","selectStandardIdentifier","standardIdentifier","replaceAll","selectScenarioDescription","scenarioElement","selectScenarioRequirements","selectRequirementLevel","requirementElement","level","selectRequirementValues","values","Main","Info","Principles","Standards","Scenarios","editorPreviewADSSelectors","principlesCount","Principle","style","paddingLeft","paddingRight","principle","iri","standardsCount","Standard","scenariosCount","Scenario","focusable","when","element","scenarioName","requirements","Requirement","display","subject","EditorPreviewAPIDesignSystems","EditorPreviewApiDesignSystemsPlugin","ADSMain","ADSInfo","ADSPrinciples","ADSPrinciple","ADSStandards","ADSStandard","ADSScenarios","ADSScenario","ADSRequirement","EditorPreviewAPIDesignSystemsParseErrors","editorPreviewADS","EDITOR_CONTENT_SET_READ_ONLY","EDITOR_CONTENT_SET_READ_WRITE","setContentReadOnly","setContentReadWrite","selectContentIsReadOnly","selectContentIsReadWrite","ReadOnlySelectionIcon","handleReadonly","isReadOnlyNew","ReadOnlySelection","EditorWrapper","EditorContentReadOnlyPlugin","EDITOR_CONTENT_SET_ORIGIN","setContentOrigin","selectContentOrigin","EditorContentOriginPlugin","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_asyncapi_json_2_77a2dadd__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_asyncapi_yaml_2_8d232224__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_json_3_0_9283cb64__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_yaml_3_0_95da947e__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_json_3_1_6b2e7700__","__WEBPACK_EXTERNAL_MODULE__swagger_api_apidom_parser_adapter_openapi_yaml_3_1_7a900d16__","EDITOR_CONTENT_TYPE_DETECT_STARTED","EDITOR_CONTENT_TYPE_DETECT_SUCCESS","EDITOR_CONTENT_TYPE_DETECT_FAILURE","detectContentTypeStarted","detectContentTypeFailure","detectContentType","asyncApi2JSONMatch","match","detectionRegExpAsyncAPIJSON2","isValidJSONObject","groups","version_json","asyncApi2YAMLMatch","detectionRegExpAsyncAPIYAML2","isValidYAMLObject","version_yaml","openApi30xJSONMatch","detectionRegExpOpenAPIJSON30x","openApi30xYAMLMatch","detectionRegExpOpenAPIYAML30x","openApi31xJSONMatch","detectionRegExpOpenAPIJSON31x","openApi31xYAMLMatch","detectionRegExpOpenAPIYAML31x","apiDesignSystemsJSONMatch","detectionRegExpApiDesignSystemsJSON","detectAPIDesignSystemsJSON","apiDesignSystemsYAMLMatch","detectionRegExpApiDesignSystemsYAML","detectAPIDesignSystemsYAML","isValidJSON","isValidYAML","DETECTING_STATUS","detectContentStartedReducer","contentTypeDetectionStatus","contentTypeDetectionRequestId","detectContentSuccessReducer","contentTypeError","detectContentFailureReducer","selectContentTypeDetectionStatus","selectIsContentTypeDetectionInProgress","startsWith","isContentOpenAPI","test","isContentAsyncAPI","selectInferFileExtensionFromContent","isJSON","isYAML","isOpenAPI20","isOpenAPI30x","isOpenAPI31x","isAsyncAPI2","extension","fileName","EditorContentTypePlugin","setContentWrap","editorContentPersistence","download","has","STORAGE_KEY","loadFromLocalStorage","localStorage","getItem","setItem","saveToLocalStorage","contentPersisted","EditorContentPersistencePlugin","downloadWrap","EditorContentFixturesPlugin","editorContentFixtures","ErrorBoundary","getDerivedStateFromError","hasError","defaultState","componentDidMount","setState","editorContent","componentDidUpdate","prevProps","prevState","newState","componentDidCatch","errorInfo","render","targetName","FallbackComponent","ErrorBoundaryWrapper","EditorSafeRenderPlugin","defaultOptions","componentList","fullOverride","safeRenderPlugin","mergedComponentList","SwaggerUI","SafeRender","safeRenderPluginOverride","BaseLayoutWrapper","SwaggerUIAdapterPlugin","SwaggerEditor","mergedProps","deepmerge","plugins","Modals","Dialogs","Versions","EditorTextarea","EditorMonaco","EditorMonacoLanguageApiDOM","EditorContentReadOnly","EditorContentOrigin","EditorContentType","EditorContentPersistence","EditorContentFixtures","EditorPreviewApiDesignSystems","EditorSafeRender","SwaggerUIAdapter","presets","textarea","default"],"sourceRoot":""}
|