{"ast":null,"code":"import React from 'react';\nimport { Button, Form, Tooltip } from '@patternfly/react-core';\nimport { CodeEditor, CodeEditorControl, Language } from '@patternfly/react-code-editor';\nimport { convertToJSX } from '@patternfly/ast-helpers';\nimport ExternalLinkAltIcon from '@patternfly/react-icons/dist/esm/icons/external-link-alt-icon';\nimport CodepenIcon from '@patternfly/react-icons/dist/esm/icons/codepen-icon';\nimport CopyIcon from '@patternfly/react-icons/dist/esm/icons/copy-icon';\nimport CodeIcon from '@patternfly/react-icons/dist/esm/icons/code-icon';\nimport AngleDoubleRightIcon from '@patternfly/react-icons/dist/esm/icons/angle-double-right-icon';\nimport ReplyAllIcon from '@patternfly/react-icons/dist/esm/icons/reply-all-icon';\nimport { copy } from '../../helpers';\nimport { trackEvent } from '../../helpers';\n\nfunction getLanguage(lang) {\n  if (lang === 'js') {\n    return Language.javascript;\n  } else if (lang === 'ts') {\n    return Language.typescript;\n  }\n\n  return lang;\n}\n\nexport var ExampleToolbar = function ExampleToolbar(_ref) {\n  var fullscreenLink = _ref.fullscreenLink,\n      codeBoxParams = _ref.codeBoxParams,\n      lang = _ref.lang,\n      isFullscreen = _ref.isFullscreen,\n      originalCode = _ref.originalCode,\n      code = _ref.code,\n      setCode = _ref.setCode,\n      exampleTitle = _ref.exampleTitle;\n\n  var _React$useState = React.useState(false),\n      isEditorOpen = _React$useState[0],\n      setIsEditorOpen = _React$useState[1];\n\n  var _React$useState2 = React.useState(false),\n      isCopied = _React$useState2[0],\n      setCopied = _React$useState2[1];\n\n  var copyCode = function copyCode() {\n    copy(code);\n    setCopied(true); // Reset isCopied after Tooltip fades out\n\n    setTimeout(function () {\n      setCopied(false);\n    }, 2500);\n  };\n\n  var copyLabel = 'Copy code to clipboard';\n  var languageLabel = \"Toggle \" + lang.toUpperCase() + \" code\";\n  var codesandboxLabel = 'Open example in CodeSandbox';\n  var fullscreenLabel = 'Open example in new window';\n  var convertLabel = 'Convert example from Typescript to JavaScript';\n  var undoAllLabel = 'Undo all changes';\n  var copyAriaLabel = \"Copy \" + exampleTitle + \" example code to clipboard\";\n  var languageAriaLabel = \"Toggle \" + lang.toUpperCase() + \" code in \" + exampleTitle + \" example\";\n  var codesandboxAriaLabel = \"Open \" + exampleTitle + \" example in CodeSandbox\";\n  var fullscreenAriaLabel = \"Open \" + exampleTitle + \" example in new window\";\n  var convertAriaLabel = \"Convert \" + exampleTitle + \" example from Typescript to JavaScript\";\n  var undoAllAriaLabel = \"Undo all changes to \" + exampleTitle;\n  var customControls = React.createElement(React.Fragment, null, React.createElement(CodeEditorControl, {\n    icon: React.createElement(React.Fragment, null, React.createElement(CodeIcon, null), ' ' + lang.toUpperCase()),\n    onClick: function onClick() {\n      setIsEditorOpen(!isEditorOpen); // 1 === expand code, 0 === collapse code\n\n      trackEvent('code_editor_control_click', 'click_event', 'TOGGLE_CODE', isEditorOpen ? 0 : 1);\n    },\n    \"aria-label\": languageAriaLabel,\n    toolTipText: languageLabel,\n    \"aria-expanded\": isEditorOpen,\n    className: \"ws-code-editor-control\"\n  }), React.createElement(Tooltip, {\n    trigger: \"mouseenter\",\n    content: React.createElement(\"div\", null, isCopied ? 'Code copied' : copyLabel),\n    exitDelay: isCopied ? 1600 : 300,\n    entryDelay: 300,\n    maxWidth: \"100px\",\n    position: \"top\"\n  }, React.createElement(Button, {\n    onClick: function onClick() {\n      copyCode();\n      trackEvent('code_editor_control_click', 'click_event', 'COPY_CODE');\n    },\n    variant: \"control\",\n    \"aria-label\": copyAriaLabel,\n    className: \"ws-code-editor-control\"\n  }, React.createElement(CopyIcon, null))), codeBoxParams && React.createElement(Tooltip, {\n    trigger: \"mouseenter\",\n    content: codesandboxLabel,\n    exitDelay: 300,\n    entryDelay: 300,\n    maxWidth: \"100px\",\n    position: \"top\"\n  }, React.createElement(Form, {\n    \"aria-label\": codesandboxAriaLabel + \" form\",\n    action: \"https://codesandbox.io/api/v1/sandboxes/define\",\n    method: \"POST\",\n    target: \"_blank\",\n    style: {\n      display: \"inline-block\"\n    }\n  }, React.createElement(Button, {\n    \"aria-label\": codesandboxAriaLabel,\n    variant: \"control\",\n    type: \"submit\",\n    onClick: function onClick() {\n      trackEvent('code_editor_control_click', 'click_event', 'CODESANDBOX_LINK');\n    },\n    className: \"ws-code-editor-control\"\n  }, React.createElement(\"input\", {\n    type: \"hidden\",\n    name: \"parameters\",\n    value: codeBoxParams\n  }), React.createElement(CodepenIcon, null)))), fullscreenLink && React.createElement(CodeEditorControl, {\n    component: \"a\",\n    icon: React.createElement(ExternalLinkAltIcon, null),\n    href: fullscreenLink,\n    target: \"_blank\",\n    rel: \"noopener noreferrer\",\n    \"aria-label\": fullscreenAriaLabel,\n    toolTipText: fullscreenLabel,\n    onClick: function onClick() {\n      trackEvent('code_editor_control_click', 'click_event', 'FULLSCREEN_LINK');\n    },\n    className: \"ws-code-editor-control\"\n  }), isEditorOpen && lang === 'ts' && React.createElement(CodeEditorControl, {\n    icon: React.createElement(React.Fragment, null, 'TS ', React.createElement(AngleDoubleRightIcon, null), ' JS'),\n    \"aria-label\": convertAriaLabel,\n    toolTipText: convertLabel,\n    onClick: function onClick() {\n      setCode(convertToJSX(code).code);\n      trackEvent('code_editor_control_click', 'click_event', 'TS_TO_JS');\n    },\n    className: \"ws-code-editor-control\"\n  }), code !== originalCode && React.createElement(CodeEditorControl, {\n    icon: React.createElement(ReplyAllIcon, null),\n    \"aria-label\": undoAllAriaLabel,\n    toolTipText: undoAllLabel,\n    onClick: function onClick() {\n      setCode(originalCode);\n      trackEvent('code_editor_control_click', 'click_event', 'RESET_CODE');\n    },\n    className: \"ws-code-editor-control\"\n  })); // TODO: check if worth adding react, patternfly, and example types\n  // https://microsoft.github.io/monaco-editor/api/interfaces/monaco.languages.typescript.languageservicedefaults.html#addextralib\n\n  var onEditorDidMount = function onEditorDidMount(_editor, monaco) {\n    monaco.languages.typescript.typescriptDefaults.setCompilerOptions(Object.assign({\n      jsx: true\n    }, monaco.languages.typescript.typescriptDefaults.getCompilerOptions()));\n    monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({\n      noSemanticValidation: true,\n      noSyntaxValidation: true,\n      noSuggestionDiagnostics: true,\n      onlyVisible: true\n    });\n  };\n\n  return React.createElement(CodeEditor, {\n    customControls: customControls,\n    showEditor: isEditorOpen,\n    language: getLanguage(lang),\n    height: \"400px\",\n    code: code,\n    onChange: function onChange(newCode) {\n      return setCode(newCode);\n    },\n    onEditorDidMount: onEditorDidMount,\n    isReadOnly: isFullscreen,\n    className: (isEditorOpen ? 'ws-example-code-expanded ' : '') + \"ws-code-editor\"\n  });\n};","map":{"version":3,"names":["React","Button","Form","Tooltip","CodeEditor","CodeEditorControl","Language","convertToJSX","ExternalLinkAltIcon","CodepenIcon","CopyIcon","CodeIcon","AngleDoubleRightIcon","ReplyAllIcon","copy","trackEvent","getLanguage","lang","javascript","typescript","ExampleToolbar","fullscreenLink","codeBoxParams","isFullscreen","originalCode","code","setCode","exampleTitle","useState","isEditorOpen","setIsEditorOpen","isCopied","setCopied","copyCode","setTimeout","copyLabel","languageLabel","toUpperCase","codesandboxLabel","fullscreenLabel","convertLabel","undoAllLabel","copyAriaLabel","languageAriaLabel","codesandboxAriaLabel","fullscreenAriaLabel","convertAriaLabel","undoAllAriaLabel","customControls","display","onEditorDidMount","_editor","monaco","languages","typescriptDefaults","setCompilerOptions","jsx","getCompilerOptions","setDiagnosticsOptions","noSemanticValidation","noSyntaxValidation","noSuggestionDiagnostics","onlyVisible","newCode"],"sources":["/Users/ausulliv/repos/temp/patternfly-react/node_modules/@patternfly/documentation-framework/components/example/exampleToolbar.js"],"sourcesContent":["import React from 'react';\nimport { Button, Form, Tooltip } from '@patternfly/react-core';\nimport { CodeEditor, CodeEditorControl, Language } from '@patternfly/react-code-editor';\nimport { convertToJSX } from '@patternfly/ast-helpers';\nimport ExternalLinkAltIcon from '@patternfly/react-icons/dist/esm/icons/external-link-alt-icon';\nimport CodepenIcon from '@patternfly/react-icons/dist/esm/icons/codepen-icon';\nimport CopyIcon from '@patternfly/react-icons/dist/esm/icons/copy-icon';\nimport CodeIcon from '@patternfly/react-icons/dist/esm/icons/code-icon';\nimport AngleDoubleRightIcon from '@patternfly/react-icons/dist/esm/icons/angle-double-right-icon';\nimport ReplyAllIcon from '@patternfly/react-icons/dist/esm/icons/reply-all-icon';\nimport { copy } from '../../helpers';\nimport { trackEvent } from '../../helpers';\n\nfunction getLanguage(lang) {\n  if (lang === 'js') {\n    return Language.javascript;\n  } else if (lang === 'ts') {\n    return Language.typescript;\n  }\n\n  return lang;\n}\n\nexport const ExampleToolbar = ({\n  // Link to fullscreen example page (each example has one)\n  fullscreenLink,\n  // Params to pass to codesandbox\n  codeBoxParams,\n  // Language of code\n  lang,\n  // Whether the example is fullscreen only\n  isFullscreen,\n  // Original version of the code\n  originalCode,\n  // Current code in editor\n  code,\n  // Callback to set code in parent component\n  setCode,\n  // Title of example used in creating unique labels\n  exampleTitle\n}) => {\n  const [isEditorOpen, setIsEditorOpen] = React.useState(false);\n  const [isCopied, setCopied] = React.useState(false);\n\n  const copyCode = () => {\n    copy(code);\n\n    setCopied(true);\n    // Reset isCopied after Tooltip fades out\n    setTimeout(() => {\n      setCopied(false);\n    }, 2500);\n  };\n\n  const copyLabel = 'Copy code to clipboard';\n  const languageLabel = `Toggle ${lang.toUpperCase()} code`;\n  const codesandboxLabel = 'Open example in CodeSandbox';\n  const fullscreenLabel = 'Open example in new window';\n  const convertLabel = 'Convert example from Typescript to JavaScript';\n  const undoAllLabel = 'Undo all changes';\n\n  const copyAriaLabel = `Copy ${exampleTitle} example code to clipboard`;\n  const languageAriaLabel = `Toggle ${lang.toUpperCase()} code in ${exampleTitle} example`;\n  const codesandboxAriaLabel = `Open ${exampleTitle} example in CodeSandbox`;\n  const fullscreenAriaLabel = `Open ${exampleTitle} example in new window`;\n  const convertAriaLabel = `Convert ${exampleTitle} example from Typescript to JavaScript`;\n  const undoAllAriaLabel = `Undo all changes to ${exampleTitle}`;\n\n  const customControls = (\n    <React.Fragment>\n      <CodeEditorControl\n        icon={\n          <React.Fragment>\n            <CodeIcon />\n            {' ' + lang.toUpperCase()}\n          </React.Fragment>\n        }\n        onClick={() => {\n          setIsEditorOpen(!isEditorOpen);\n          // 1 === expand code, 0 === collapse code\n          trackEvent('code_editor_control_click',  'click_event', 'TOGGLE_CODE', isEditorOpen ? 0 : 1);\n        }}\n        aria-label={languageAriaLabel}\n        toolTipText={languageLabel}\n        aria-expanded={isEditorOpen}\n        className=\"ws-code-editor-control\"\n      />\n      <Tooltip\n        trigger=\"mouseenter\"\n        content={<div>{isCopied ? 'Code copied' : copyLabel}</div>}\n        exitDelay={isCopied ? 1600 : 300}\n        entryDelay={300}\n        maxWidth=\"100px\"\n        position=\"top\"\n      >\n        <Button onClick={() => {\n          copyCode();\n          trackEvent('code_editor_control_click', 'click_event', 'COPY_CODE');\n        }} variant=\"control\" aria-label={copyAriaLabel} className=\"ws-code-editor-control\">\n          <CopyIcon />\n        </Button>\n      </Tooltip>\n      {codeBoxParams &&\n        <Tooltip\n          trigger=\"mouseenter\"\n          content={codesandboxLabel}\n          exitDelay={300}\n          entryDelay={300}\n          maxWidth=\"100px\"\n          position=\"top\"\n        >\n          <Form\n            aria-label={`${codesandboxAriaLabel} form` }\n            action=\"https://codesandbox.io/api/v1/sandboxes/define\"\n            method=\"POST\"\n            target=\"_blank\"\n            style={{ display: \"inline-block\" }}\n          >\n            <Button\n              aria-label={codesandboxAriaLabel}\n              variant=\"control\"\n              type=\"submit\"\n              onClick={() => {\n                trackEvent('code_editor_control_click', 'click_event', 'CODESANDBOX_LINK');\n              }}\n              className=\"ws-code-editor-control\"\n            >\n              <input type=\"hidden\" name=\"parameters\" value={codeBoxParams} />\n              <CodepenIcon />\n            </Button>\n          </Form>\n        </Tooltip>\n      }\n      {fullscreenLink && \n        <CodeEditorControl\n          component=\"a\"\n          icon={<ExternalLinkAltIcon />}\n          href={fullscreenLink} \n          target=\"_blank\"\n          rel=\"noopener noreferrer\"\n          aria-label={fullscreenAriaLabel}\n          toolTipText={fullscreenLabel}\n          onClick={() => {\n            trackEvent('code_editor_control_click', 'click_event', 'FULLSCREEN_LINK');\n          }}\n          className=\"ws-code-editor-control\"\n        />\n      }\n      {isEditorOpen && lang === 'ts' &&\n        <CodeEditorControl\n          icon={(\n            <React.Fragment>\n              {'TS '}<AngleDoubleRightIcon />{' JS'}\n            </React.Fragment>\n          )}\n          aria-label={convertAriaLabel}\n          toolTipText={convertLabel}\n          onClick={() => {\n            setCode(convertToJSX(code).code);\n            trackEvent('code_editor_control_click', 'click_event', 'TS_TO_JS');\n          }}\n          className=\"ws-code-editor-control\"\n        />\n      }\n      {code !== originalCode &&\n        <CodeEditorControl\n          icon={<ReplyAllIcon />}\n          aria-label={undoAllAriaLabel}\n          toolTipText={undoAllLabel}\n          onClick={() => {\n            setCode(originalCode);\n            trackEvent('code_editor_control_click', 'click_event', 'RESET_CODE');\n          }}\n          className=\"ws-code-editor-control\"\n        />\n      }\n    </React.Fragment>\n  );\n\n  // TODO: check if worth adding react, patternfly, and example types\n  // https://microsoft.github.io/monaco-editor/api/interfaces/monaco.languages.typescript.languageservicedefaults.html#addextralib\n  const onEditorDidMount = (_editor, monaco) => {\n    monaco.languages.typescript.typescriptDefaults.setCompilerOptions({\n      jsx: true,\n      ...monaco.languages.typescript.typescriptDefaults.getCompilerOptions()\n    });\n    monaco.languages.typescript.typescriptDefaults.setDiagnosticsOptions({\n      noSemanticValidation: true,\n      noSyntaxValidation: true,\n      noSuggestionDiagnostics: true,\n      onlyVisible: true\n    });\n  };\n\n  return (\n    <CodeEditor\n      customControls={customControls}\n      showEditor={isEditorOpen}\n      language={getLanguage(lang)}\n      height=\"400px\"\n      code={code}\n      onChange={newCode => setCode(newCode)}\n      onEditorDidMount={onEditorDidMount}\n      isReadOnly={isFullscreen}\n      className={`${isEditorOpen ? 'ws-example-code-expanded ' : ''}ws-code-editor`}\n    />\n  );\n}\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,MAAT,EAAiBC,IAAjB,EAAuBC,OAAvB,QAAsC,wBAAtC;AACA,SAASC,UAAT,EAAqBC,iBAArB,EAAwCC,QAAxC,QAAwD,+BAAxD;AACA,SAASC,YAAT,QAA6B,yBAA7B;AACA,OAAOC,mBAAP,MAAgC,+DAAhC;AACA,OAAOC,WAAP,MAAwB,qDAAxB;AACA,OAAOC,QAAP,MAAqB,kDAArB;AACA,OAAOC,QAAP,MAAqB,kDAArB;AACA,OAAOC,oBAAP,MAAiC,gEAAjC;AACA,OAAOC,YAAP,MAAyB,uDAAzB;AACA,SAASC,IAAT,QAAqB,eAArB;AACA,SAASC,UAAT,QAA2B,eAA3B;;AAEA,SAASC,WAAT,CAAqBC,IAArB,EAA2B;EACzB,IAAIA,IAAI,KAAK,IAAb,EAAmB;IACjB,OAAOX,QAAQ,CAACY,UAAhB;EACD,CAFD,MAEO,IAAID,IAAI,KAAK,IAAb,EAAmB;IACxB,OAAOX,QAAQ,CAACa,UAAhB;EACD;;EAED,OAAOF,IAAP;AACD;;AAED,OAAO,IAAMG,cAAc,GAAG,SAAjBA,cAAiB,OAiBxB;EAAA,IAfJC,cAeI,QAfJA,cAeI;EAAA,IAbJC,aAaI,QAbJA,aAaI;EAAA,IAXJL,IAWI,QAXJA,IAWI;EAAA,IATJM,YASI,QATJA,YASI;EAAA,IAPJC,YAOI,QAPJA,YAOI;EAAA,IALJC,IAKI,QALJA,IAKI;EAAA,IAHJC,OAGI,QAHJA,OAGI;EAAA,IADJC,YACI,QADJA,YACI;;EAAA,sBACoC3B,KAAK,CAAC4B,QAAN,CAAe,KAAf,CADpC;EAAA,IACGC,YADH;EAAA,IACiBC,eADjB;;EAAA,uBAE0B9B,KAAK,CAAC4B,QAAN,CAAe,KAAf,CAF1B;EAAA,IAEGG,QAFH;EAAA,IAEaC,SAFb;;EAIJ,IAAMC,QAAQ,GAAG,SAAXA,QAAW,GAAM;IACrBnB,IAAI,CAACW,IAAD,CAAJ;IAEAO,SAAS,CAAC,IAAD,CAAT,CAHqB,CAIrB;;IACAE,UAAU,CAAC,YAAM;MACfF,SAAS,CAAC,KAAD,CAAT;IACD,CAFS,EAEP,IAFO,CAAV;EAGD,CARD;;EAUA,IAAMG,SAAS,GAAG,wBAAlB;EACA,IAAMC,aAAa,eAAanB,IAAI,CAACoB,WAAL,EAAb,UAAnB;EACA,IAAMC,gBAAgB,GAAG,6BAAzB;EACA,IAAMC,eAAe,GAAG,4BAAxB;EACA,IAAMC,YAAY,GAAG,+CAArB;EACA,IAAMC,YAAY,GAAG,kBAArB;EAEA,IAAMC,aAAa,aAAWf,YAAX,+BAAnB;EACA,IAAMgB,iBAAiB,eAAa1B,IAAI,CAACoB,WAAL,EAAb,iBAA2CV,YAA3C,aAAvB;EACA,IAAMiB,oBAAoB,aAAWjB,YAAX,4BAA1B;EACA,IAAMkB,mBAAmB,aAAWlB,YAAX,2BAAzB;EACA,IAAMmB,gBAAgB,gBAAcnB,YAAd,2CAAtB;EACA,IAAMoB,gBAAgB,4BAA0BpB,YAAhD;EAEA,IAAMqB,cAAc,GAClB,oBAAC,KAAD,CAAO,QAAP,QACE,oBAAC,iBAAD;IACE,IAAI,EACF,oBAAC,KAAD,CAAO,QAAP,QACE,oBAAC,QAAD,OADF,EAEG,MAAM/B,IAAI,CAACoB,WAAL,EAFT,CAFJ;IAOE,OAAO,EAAE,mBAAM;MACbP,eAAe,CAAC,CAACD,YAAF,CAAf,CADa,CAEb;;MACAd,UAAU,CAAC,2BAAD,EAA+B,aAA/B,EAA8C,aAA9C,EAA6Dc,YAAY,GAAG,CAAH,GAAO,CAAhF,CAAV;IACD,CAXH;IAYE,cAAYc,iBAZd;IAaE,WAAW,EAAEP,aAbf;IAcE,iBAAeP,YAdjB;IAeE,SAAS,EAAC;EAfZ,EADF,EAkBE,oBAAC,OAAD;IACE,OAAO,EAAC,YADV;IAEE,OAAO,EAAE,iCAAME,QAAQ,GAAG,aAAH,GAAmBI,SAAjC,CAFX;IAGE,SAAS,EAAEJ,QAAQ,GAAG,IAAH,GAAU,GAH/B;IAIE,UAAU,EAAE,GAJd;IAKE,QAAQ,EAAC,OALX;IAME,QAAQ,EAAC;EANX,GAQE,oBAAC,MAAD;IAAQ,OAAO,EAAE,mBAAM;MACrBE,QAAQ;MACRlB,UAAU,CAAC,2BAAD,EAA8B,aAA9B,EAA6C,WAA7C,CAAV;IACD,CAHD;IAGG,OAAO,EAAC,SAHX;IAGqB,cAAY2B,aAHjC;IAGgD,SAAS,EAAC;EAH1D,GAIE,oBAAC,QAAD,OAJF,CARF,CAlBF,EAiCGpB,aAAa,IACZ,oBAAC,OAAD;IACE,OAAO,EAAC,YADV;IAEE,OAAO,EAAEgB,gBAFX;IAGE,SAAS,EAAE,GAHb;IAIE,UAAU,EAAE,GAJd;IAKE,QAAQ,EAAC,OALX;IAME,QAAQ,EAAC;EANX,GAQE,oBAAC,IAAD;IACE,cAAeM,oBAAf,UADF;IAEE,MAAM,EAAC,gDAFT;IAGE,MAAM,EAAC,MAHT;IAIE,MAAM,EAAC,QAJT;IAKE,KAAK,EAAE;MAAEK,OAAO,EAAE;IAAX;EALT,GAOE,oBAAC,MAAD;IACE,cAAYL,oBADd;IAEE,OAAO,EAAC,SAFV;IAGE,IAAI,EAAC,QAHP;IAIE,OAAO,EAAE,mBAAM;MACb7B,UAAU,CAAC,2BAAD,EAA8B,aAA9B,EAA6C,kBAA7C,CAAV;IACD,CANH;IAOE,SAAS,EAAC;EAPZ,GASE;IAAO,IAAI,EAAC,QAAZ;IAAqB,IAAI,EAAC,YAA1B;IAAuC,KAAK,EAAEO;EAA9C,EATF,EAUE,oBAAC,WAAD,OAVF,CAPF,CARF,CAlCJ,EAgEGD,cAAc,IACb,oBAAC,iBAAD;IACE,SAAS,EAAC,GADZ;IAEE,IAAI,EAAE,oBAAC,mBAAD,OAFR;IAGE,IAAI,EAAEA,cAHR;IAIE,MAAM,EAAC,QAJT;IAKE,GAAG,EAAC,qBALN;IAME,cAAYwB,mBANd;IAOE,WAAW,EAAEN,eAPf;IAQE,OAAO,EAAE,mBAAM;MACbxB,UAAU,CAAC,2BAAD,EAA8B,aAA9B,EAA6C,iBAA7C,CAAV;IACD,CAVH;IAWE,SAAS,EAAC;EAXZ,EAjEJ,EA+EGc,YAAY,IAAIZ,IAAI,KAAK,IAAzB,IACC,oBAAC,iBAAD;IACE,IAAI,EACF,oBAAC,KAAD,CAAO,QAAP,QACG,KADH,EACS,oBAAC,oBAAD,OADT,EACkC,KADlC,CAFJ;IAME,cAAY6B,gBANd;IAOE,WAAW,EAAEN,YAPf;IAQE,OAAO,EAAE,mBAAM;MACbd,OAAO,CAACnB,YAAY,CAACkB,IAAD,CAAZ,CAAmBA,IAApB,CAAP;MACAV,UAAU,CAAC,2BAAD,EAA8B,aAA9B,EAA6C,UAA7C,CAAV;IACD,CAXH;IAYE,SAAS,EAAC;EAZZ,EAhFJ,EA+FGU,IAAI,KAAKD,YAAT,IACC,oBAAC,iBAAD;IACE,IAAI,EAAE,oBAAC,YAAD,OADR;IAEE,cAAYuB,gBAFd;IAGE,WAAW,EAAEN,YAHf;IAIE,OAAO,EAAE,mBAAM;MACbf,OAAO,CAACF,YAAD,CAAP;MACAT,UAAU,CAAC,2BAAD,EAA8B,aAA9B,EAA6C,YAA7C,CAAV;IACD,CAPH;IAQE,SAAS,EAAC;EARZ,EAhGJ,CADF,CA5BI,CA2IJ;EACA;;EACA,IAAMmC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,OAAD,EAAUC,MAAV,EAAqB;IAC5CA,MAAM,CAACC,SAAP,CAAiBlC,UAAjB,CAA4BmC,kBAA5B,CAA+CC,kBAA/C;MACEC,GAAG,EAAE;IADP,GAEKJ,MAAM,CAACC,SAAP,CAAiBlC,UAAjB,CAA4BmC,kBAA5B,CAA+CG,kBAA/C,EAFL;IAIAL,MAAM,CAACC,SAAP,CAAiBlC,UAAjB,CAA4BmC,kBAA5B,CAA+CI,qBAA/C,CAAqE;MACnEC,oBAAoB,EAAE,IAD6C;MAEnEC,kBAAkB,EAAE,IAF+C;MAGnEC,uBAAuB,EAAE,IAH0C;MAInEC,WAAW,EAAE;IAJsD,CAArE;EAMD,CAXD;;EAaA,OACE,oBAAC,UAAD;IACE,cAAc,EAAEd,cADlB;IAEE,UAAU,EAAEnB,YAFd;IAGE,QAAQ,EAAEb,WAAW,CAACC,IAAD,CAHvB;IAIE,MAAM,EAAC,OAJT;IAKE,IAAI,EAAEQ,IALR;IAME,QAAQ,EAAE,kBAAAsC,OAAO;MAAA,OAAIrC,OAAO,CAACqC,OAAD,CAAX;IAAA,CANnB;IAOE,gBAAgB,EAAEb,gBAPpB;IAQE,UAAU,EAAE3B,YARd;IASE,SAAS,GAAKM,YAAY,GAAG,2BAAH,GAAiC,EAAlD;EATX,EADF;AAaD,CAxLM"},"metadata":{},"sourceType":"module"}