construct-hub 0.3.56 → 0.3.60

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. package/.jsii +2 -2
  2. package/lib/construct-hub.js +1 -1
  3. package/lib/package-sources/code-artifact.js +1 -1
  4. package/lib/package-sources/npmjs.js +1 -1
  5. package/lib/package-tag/index.js +2 -2
  6. package/lib/spdx-license.js +1 -1
  7. package/package.json +3 -3
  8. package/website/asset-manifest.json +27 -27
  9. package/website/assets/checkmark.svg +3 -0
  10. package/website/index.html +1 -1
  11. package/website/service-worker.js +1 -1
  12. package/website/static/js/{1.fa36c516.chunk.js → 1.ddd0fd4b.chunk.js} +2 -2
  13. package/website/static/js/{1.fa36c516.chunk.js.map → 1.ddd0fd4b.chunk.js.map} +1 -1
  14. package/website/static/js/{10.02ced27a.chunk.js → 10.b91108a6.chunk.js} +2 -2
  15. package/website/static/js/10.b91108a6.chunk.js.map +1 -0
  16. package/website/static/js/{12.ba292c49.chunk.js → 12.309ba8f7.chunk.js} +1 -1
  17. package/website/static/js/{12.ba292c49.chunk.js.map → 12.309ba8f7.chunk.js.map} +1 -1
  18. package/website/static/js/{4.d2b9c583.chunk.js → 4.e2ba75d9.chunk.js} +3 -3
  19. package/website/static/js/{4.d2b9c583.chunk.js.LICENSE.txt → 4.e2ba75d9.chunk.js.LICENSE.txt} +0 -0
  20. package/website/static/js/4.e2ba75d9.chunk.js.map +1 -0
  21. package/website/static/js/{5.a2819889.chunk.js → 5.33b63db6.chunk.js} +3 -3
  22. package/website/static/js/{5.a2819889.chunk.js.LICENSE.txt → 5.33b63db6.chunk.js.LICENSE.txt} +0 -0
  23. package/website/static/js/{5.a2819889.chunk.js.map → 5.33b63db6.chunk.js.map} +1 -1
  24. package/website/static/js/{6.7ba5b2e6.chunk.js → 6.0fcd2680.chunk.js} +2 -2
  25. package/website/static/js/{6.7ba5b2e6.chunk.js.map → 6.0fcd2680.chunk.js.map} +1 -1
  26. package/website/static/js/{7.ca8ff14b.chunk.js → 7.123067dc.chunk.js} +2 -2
  27. package/website/static/js/7.123067dc.chunk.js.map +1 -0
  28. package/website/static/js/8.703cfb42.chunk.js +2 -0
  29. package/website/static/js/8.703cfb42.chunk.js.map +1 -0
  30. package/website/static/js/9.a8fecf34.chunk.js +2 -0
  31. package/website/static/js/9.a8fecf34.chunk.js.map +1 -0
  32. package/website/static/js/main.ca806cb8.chunk.js +2 -0
  33. package/website/static/js/main.ca806cb8.chunk.js.map +1 -0
  34. package/website/static/js/{runtime-main.808c6139.js → runtime-main.9acc4988.js} +2 -2
  35. package/website/static/js/{runtime-main.808c6139.js.map → runtime-main.9acc4988.js.map} +1 -1
  36. package/website/static/js/10.02ced27a.chunk.js.map +0 -1
  37. package/website/static/js/4.d2b9c583.chunk.js.map +0 -1
  38. package/website/static/js/7.ca8ff14b.chunk.js.map +0 -1
  39. package/website/static/js/8.bd66730f.chunk.js +0 -2
  40. package/website/static/js/8.bd66730f.chunk.js.map +0 -1
  41. package/website/static/js/9.b8a2bbeb.chunk.js +0 -2
  42. package/website/static/js/9.b8a2bbeb.chunk.js.map +0 -1
  43. package/website/static/js/main.fd06cc71.chunk.js +0 -2
  44. package/website/static/js/main.fd06cc71.chunk.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/index.ts","../../../src/use-radio-group.ts","../../../src/radio-group.tsx","../../../src/link-box.tsx","../../../src/ChevronRight.tsx","../../../src/Question.tsx","../../../src/ChevronLeft.tsx","../../../src/popover-context.ts","../../../src/popover-transition.tsx","../../../src/pointer-event.ts","../../../src/use-focus-on-pointerdown.ts","../../../src/user-agent.ts","../../../src/use-pointer-event.ts","../../../src/use-focus-on-show.ts","../../../src/use-popover.ts","../../../src/popover.tsx","../../../src/use-radio.ts","../../../src/radio.tsx"],"names":["useRadioGroup","props","onChange","value","name","isNative","React","defaultValue","useControllableProp","valueProp","ref","focus","rootNode","query","firstEnabledAndCheckedInput","firstEnabledInput","fallbackName","useId","undefined","nameProp","eventOrValue","nextValue","isInputEvent","setValue","onChangeProp","String","getRootProps","forwardedRef","mergeRefs","role","getRadioProps","checkedKey","isDisabled","isFocusable","htmlProps","createContext","strict","RadioGroup","forwardRef","group","size","colorScheme","variant","groupProps","_className","cx","className","LinkOverlay","rel","isExternal","target","__css","position","content","cursor","display","top","left","zIndex","width","height","LinkBox","ChevronRightIcon","createIcon","d","displayName","QuestionIcon","ChevronLeftIcon","errorMessage","mergeVariants","variants","mergeWith","enter","visibility","exit","transitionEnd","Section","motion","chakra","PopoverTransition","isOpen","usePopoverContext","initial","animate","opacity","scale","transition","duration","ease","isTouchEvent","event","defaultPagePoint","pageX","pageY","pointFromTouch","e","pointType","point","x","y","pointFromMouse","extractEventInfo","wrapPointerEventHandler","shouldFilterPrimaryPointer","eventHandler","listener","handler","isMouseEvent","getEventWindow","mouseEventNames","pointerdown","pointermove","pointerup","pointercancel","pointerover","pointerout","pointerenter","pointerleave","touchEventNames","getPointerEventName","isBrowser","window","useFocusOnPointerDown","browser","enabled","isSafari","navigator","userAgent","vendor","android","test","ua","getUserAgentBrowser","getOwnerDocument","isValidTarget","elements","elementOrRef","el","isRefObject","contains","isActiveElement","useEventListener","eventName","defaultOptions","preventScroll","shouldFocus","TRIGGER","usePopover","closeOnBlur","closeOnEsc","returnFocusOnClose","autoFocus","trigger","openDelay","closeDelay","lazyBehavior","computePositionOnMount","useDisclosure","onToggle","triggerRef","useRef","popoverRef","isHoveringRef","hasBeenOpened","useState","useIds","usePopper","forceUpdate","useFocusOnHide","focusRef","visible","options","element","onFocus","useCallback","document","nextTick","tabbableEls","getAllFocusable","useUpdateEffect","useFocusOnShow","shouldRenderChildren","determineLazyBehavior","hasBeenSelected","isLazy","isSelected","getPopoverProps","_ref","popoverProps","style","transformOrigin","popperCSSVars","arrowSize","px","arrowShadowColor","children","id","tabIndex","onKeyDown","callAllHandlers","onClose","onBlur","relatedTarget","getRelatedTarget","targetIsPopover","targetIsTrigger","hasHeader","headerId","hasBody","bodyId","setTimeout","getPopoverPositionerProps","getPopperProps","openTimeout","closeTimeout","getTriggerProps","triggerProps","popoverId","clearTimeout","useEffect","getHeaderProps","node","setHasHeader","getBodyProps","setHasBody","getArrowProps","getArrowInnerProps","Popover","styles","useMultiStyleConfig","omitThemingProps","context","direction","useTheme","runIfFn","PopoverTrigger","child","PopoverContent","rootProps","useStyles","contentStyles","flexDirection","contentProps","PopoverHeader","header","PopoverBody","body","PopoverCloseButton","onClick","closeButton","PopoverArrow","backgroundColor","arrowBg","bg","useRadio","defaultChecked","isChecked","isReadOnly","isRequired","isInvalid","dataRadioGroup","uuid","formControl","useFormControlContext","useRadioGroupContext","isWithinFormControl","idProp","isDisabledProp","isReadOnlyProp","isRequiredProp","isInvalidProp","useBoolean","Boolean","warn","condition","message","handleChange","setChecked","isControlled","setActive","onKeyUp","getCheckboxProps","dataAttr","onMouseDown","onMouseUp","onMouseEnter","setHovering","onMouseLeave","getInputProps","trulyDisabled","type","setFocused","checked","disabled","readOnly","required","ariaAttr","visuallyHiddenStyle","state","isFocused","isActive","isHovered","getLabelProps","onTouchStart","stop","Radio","ownProps","spacing","callAll","split","checkboxProps","inputProps","labelProps","Object","rootStyles","isFullWidth","alignItems","verticalAlign","checkboxStyles","justifyContent","flexShrink","labelStyles","userSelect","marginStart"],"mappings":"mIAAA,8M,qaCoEO,SAASA,EAAcC,QAAgC,IAAhCA,MAA4B,IACxD,QAAM,EAAN,EACEC,SADI,EAAN,EAEEC,MAFI,EAAN,EAAM,eAAN,EAIEC,KAJI,EAAN,EAAM,aAAN,EAAM,YAOJC,EAPF,EAOEA,SAPF,E,oIAAA,qFAWA,EAA+BC,WAC7BC,GADF,uBAAM,EAAN,KAAM,EAAN,KAGA,EAA8BC,YAAoBC,EAAlD,sBAAM,EAAN,KAAM,EAAN,KAEMC,EAAMJ,SAAZ,MAEMK,EAAQ,eAAkB,WAC9B,IAAMC,EAAWF,EAAjB,QACA,MAEA,IAAIG,EAAJ,+BAEMC,EAA8BF,gBAApC,GAIA,KACEE,cADF,CAKAD,yBAEA,IAAME,EAAoBH,gBAA1B,GACAG,uBAlBF,IAwBMC,EAAeC,iBAAMC,EAA3B,SACMd,EAAOe,GAAb,EAEMjB,EAAW,eACdkB,YACC,IAAMC,EAAYC,eACdF,SADcE,MAAlB,EAIA,GACEC,KAGFC,WAAeC,OAAfD,MAEF,CAACA,EAZH,IAeME,EAA2B,eAC/B,8BAACzB,MAAD,aAAa0B,MAAb,cAEEjB,IAAKkB,YAAUD,EAFjB,GAGEE,KAAM,iBAJV,IASMC,EAAiC,eACrC,cAA4B,eAA3B7B,MAAQ,SAAmB,IAAfS,MAAM,MACjB,IAAMqB,EAAa1B,EAAW,UAA9B,YACA,kBAEEK,MACAN,QAHF,cAIE,EAAcD,QAAgBF,UAAhBE,OAJhB,6CAME,mBAAmB,GANrB,MASF,CAACE,EAAUD,EAAMF,EAZnB,IAeA,MAAO,CACLwB,eACAI,gBACA1B,OACAM,MACAC,QACAY,WACApB,QACAD,WACA8B,aACAC,cACAC,a,gNC9IJ,MAGIC,YAAiC,CACnC/B,KADmC,oBAEnCgC,QAAQ,IALV,mBAAM,EAAN,KAAM,EAAN,KA6BaC,EAAaC,aAAmC,cAC3D,IAAM,EAAN,EAAM,cAAN,EAAM,OAAN,EAAM,UAAN,EAAM,WAAN,EAAM,YAAN,EAAM,WAOJL,EAPF,EAOEA,YAIF,EAA2DjC,E,oIAX3D,wFAWM,EAAN,EAAM,QAAN,EAAM,WAAN,EAAM,eAAN,EAAM,KAAuCkC,EAA7C,EAA6CA,UAEvCK,EAAQ,WACZ,iBAAO,CACLnC,OACAoC,OACAtC,WACAuC,cACAtC,QACAuC,UACAV,aACAC,iBAEF,CAAC,EAAD,YAXF,IAuBMU,EAAajB,EAAaQ,EAAhC,GACMU,EAAaC,YAAG,qBAAtB,GAEA,OACE,mBAAoB1C,MAAOoC,GACzB,gBAAC,IAAD,YAA4BO,UAAWF,IAF3C,OASE,EAAJ,IACEP,6B,8dC1FK,IAAMU,EAAcT,aAAkC,cAC3D,IAAM,EAAN,EAAM,aAAN,EAAM,SAAN,EAAM,IAA2BQ,EAAjC,EAAiCA,UAAjC,iDACA,OACE,gBAAC,IAAD,UAEEpC,IAFF,EAGEoC,UAAWD,YAAG,0BAHhB,GAIEG,IAAKC,EAAa,sBAJpB,EAKEC,OAAQD,EAAa,SALvB,EAMEE,MAAO,CACLC,SADK,SAEL,YAAa,CACXC,QADW,KAEXC,OAFW,UAGXC,QAHW,QAIXH,SAJW,WAKXI,IALW,EAMXC,KANW,EAOXC,OAPW,EAQXC,MARW,OASXC,OAAQ,eAeLC,EAAUvB,aAAgC,cAC/C,IAAEQ,EAAR,EAAQA,UAAR,qBAEA,OACE,gBAAC,IAAD,OACEpC,IADF,EAEE0C,SAAS,YAFX,GAIEN,UAAWD,YAAG,iBAJhB,GAKEM,MAAO,CAEL,qDAAsD,CACpDC,SADoD,WAEpDM,OAAQ,W,iCC3DlB,8CAEaI,EAAmBC,YAAW,CACzCC,EADyC,iDAEzCC,YAAa,sB,iCCJf,8CAEaC,EAAeH,YAAW,CACrCC,EADqC,qNAGrCC,YAAa,kB,iCCLf,8CAEaE,EAAkBJ,YAAW,CACxCC,EADwC,gDAExCC,YAAa,qB,kYCDR,EAGH9B,YAAgC,CAClC/B,KADkC,iBAElCgE,aACE,oHANG,mBAAM,EAAN,KAAM,EAAN,K,0OCsBP,IAAMC,EAAiBC,YACrB,KACA,OAAOC,IAAUD,EAAU,CACzBE,MAAO,CACLC,WAAY,WAEdC,KAAM,CACJC,cAAe,CACbF,WAAY,cAyBdG,EAAUC,YAAOC,IAAvB,SAKaC,EAAoB,gBAC/B,cACE,IAAQC,EAAWC,IAAXD,OACR,OACE,uBACEtE,IADF,EAEE4D,SAAUD,EAAcpE,EAAD,WAFzB,GAIEiF,SAJF,EAKEC,QAASH,EAAS,QAAU,aAMpCD,eAAiC,CAC/BT,SAxCgC,CAChCI,KAAM,CACJU,QADI,EAEJC,MAFI,IAGJC,WAAY,CACVC,SADU,GAEVC,KAAM,CAAC,GAAK,EAAG,EAAG,KAGtBhB,MAAO,CACLa,MADK,EAELD,QAFK,EAGLE,WAAY,CACVC,SADU,IAEVC,KAAM,CAAC,EAAG,EAAG,GAAK,O,kDC5BjB,SAASC,EAAaC,GAE3B,QADsBA,EAAtB,QAuCF,IAAMC,EAAmB,CAAEC,MAAF,EAAYC,MAAO,GAE5C,SAASC,EAAeC,EAAxB,QAAsE,IAA/BC,MAAuB,QAC5D,IACMC,EADeF,cAAgBA,iBAArC,IACA,EAEA,MAAO,CACLG,EAAGD,EAASD,EADP,KAELG,EAAGF,EAASD,EAAJ,MAIZ,SAASI,EAAe,EAAxB,GAIE,YADA,IADAJ,MAAuB,QAEhB,CACLE,EAAGD,EAASD,EADP,KAELG,EAAGF,EAASD,EAAJ,MAIL,SAASK,EAAiB,EAA1B,GAIL,YADkB,IADlBL,MAAuB,QAEhB,CACLC,MAAOR,KACHK,EAAeJ,EADZD,GAEHW,EAAeV,EAAOM,IAQvB,IAAMM,EAA0B,SAAC,EAAD,QAGnB,IADlBC,OAA6B,GAE7B,IA1D4BC,EA0DtBC,EAA2Bf,YAAD,OAC9BgB,EAAQhB,EAAOW,EADjB,KAGA,OAAOE,GA7DqBC,EA6DK,EA5DzBd,YACN,IACMiB,EAAejB,aADTkB,YAAZ,GACA,aAEGD,GAAiBA,GADpB,IACqCjB,EAAD,SAElCc,OAsDJ,GAmBIK,EAAkC,CACtCC,YADsC,YAEtCC,YAFsC,YAGtCC,UAHsC,UAItCC,cAJsC,cAKtCC,YALsC,YAMtCC,WANsC,WAOtCC,aAPsC,aAQtCC,aAAc,cAGVC,EAAkC,CACtCR,YADsC,aAEtCC,YAFsC,YAGtCC,UAHsC,WAItCC,cAAe,eAGV,SAASM,EAAoBnH,GAClC,OAlCkCoH,KAApC,OAAiDC,qBAmC7C,EAlC8BD,KAAlC,OAA+CC,oBAqCpCH,EAAP,GApC8BE,KAAlC,OAA+CC,mBAuCpCZ,EAAP,GAGF,E,aCnIK,SAASa,EAAsBzH,GACpC,IC6C4B0H,ECzDE,EAAzB,MFYC,EAAN,EAAM,MAAN,EAAM,SAAiBC,EAAvB,EAAuBA,QAEjBC,GC2CsBF,ED3C5B,WC4CA,KAvEF,SAA6BG,GAC3B,IAAM,EAAN,EAAQC,UAAeC,EAAvB,EAAuBA,OACjBC,EAAU,aAAaC,KAA7B,GAEA,WACE,IAAK,QAAQA,KAAb,GACE,uBACF,IAAK,QAAQA,KAAb,GACE,aACF,KAAKD,GAAW,SAASC,KAAzB,GACE,aACF,IAAK,SAASA,KAAKC,IAAO,aAAaD,KAAvC,GACE,eACF,IAAK,qBAAqBA,KAA1B,GACE,gBACF,OACE,aACF,IAAK,eAAeA,KAApB,GACE,WACF,IAAK,SAASA,KAAKJ,EAAd,YAAsC,iBAAiBI,KAA5D,GACE,eACF,IAAK,cAAcA,KAAnB,GACE,eACF,QACE,aAgDGE,CAAoBX,OAApBW,aAAP,GC3D8B,EFelB,kBAAMC,YAAiB3H,EAAnC,UEfK,EFiBgB,cEjBhB,EFiBgCgF,YACnC,GAAKmC,GAAL,GACA,IAAM3E,EAASwC,EAAf,OAGM4C,GADG,MAAGC,EAAH,EAAe,CAAxB,IACsB,MAAUC,YAC9B,IAAMC,EAAKC,eAA4BF,EAA5BE,QAAX,EACA,OAAOC,YAASF,EAAhB,OAGGG,YAAD,IAAJ,IACElD,mBACA/E,kBEvBGkI,YACLtB,EADqB,GAErBjB,EAAwBI,EAFH,gBAEYoC,GAFZ,EAAvB,G,+BCHIC,EAAwC,CAC5CC,eAD4C,EAE5CC,aAAa,G,gQCAf,IAAMC,EAAU,QAAVA,GAEG,QAsGF,SAASC,GAAWlJ,QAA6B,IAA7BA,MAAyB,IAClD,YACEmJ,mBADF,aAEEC,kBAFF,SAAM,EAAN,EAAM,kBAAN,EAAM,GAAN,IAKEC,0BALF,aAMEC,iBANF,SAAM,EAAN,EAAM,YAAN,EAAM,iBAAN,IASEC,eATF,MASYN,EATZ,MAUEO,iBAVF,MAAM,IAAN,MAWEC,kBAXF,MAAM,IAAN,EAAM,EAAN,EAAM,OAAN,IAaEC,oBAbF,MAAM,UAAN,EAcEC,EAdF,EAcEA,uBAdF,E,oIAAA,4MAkBA,EAA8CC,YAA9C,GAAM,EAAN,EAAM,SAAN,EAAM,UAAN,EAAM,OAA2BC,EAAjC,EAAiCA,SAE3BC,EAAaC,iBAAnB,MACMC,EAAaD,iBAAnB,MAEME,GAAgBF,kBAAtB,GAEMG,GAAgBH,kBAAtB,GACA,IACEG,eAGF,OAAkCC,oBAAlC,wBAAM,GAAN,MAAM,GAAN,MACA,GAA8BA,oBAA9B,wBAAM,GAAN,MAAM,GAAN,MAEA,GAAiDC,YAAO,EAAD,qDAAvD,qCAAM,GAAN,MAAM,GAAN,MAAM,GAAN,MAAM,GAAN,MAQA,GAMIC,YAAU,EAAD,MAEX1C,QAAS5C,KAAY4E,KARjB,GAAN,GAAM,gBAAN,GAAM,iBAAN,GAAM,kBAAN,GAAM,mBAKJW,GALF,GAKEA,YAMF7C,EAAsB,CACpBE,QADoB,EAEpBlH,IAAKqJ,IAGPS,YAAeP,EAAY,CACzBQ,SADyB,EAEzBC,QAFyB,EAGzBzB,YAAaK,GAAsBE,IAAYN,IDlK5C,mBAGL,IADAyB,MAAU5B,GAEV,QAAM,EAAN,EAAM,WAAN,EAAM,gBAAN,EAAM,YAAwC2B,EAA9C,EAA8CA,QACxCE,EAAUlC,eAAsBxF,EAAtBwF,QAAhB,EAEMa,EAAYN,GAAlB,EAEM4B,EAAUC,uBAAY,WAC1B,GAAKF,GAAL,IAEIjC,YAASiC,EAASG,SAAtB,eAEA,SAAIN,KAAJ,QACE9J,YAAM8J,EAAD,QAAmB,CAAEzB,gBAAegC,UAAU,QAC9C,CACL,IAAMC,EAAcC,YAApB,GACID,SAAJ,GACEtK,YAAMsK,EAAD,GAAiB,CAAEjC,gBAAegC,UAAU,OAGpD,CAACzB,EAAWP,EAAe4B,EAb9B,IAeAO,aAAgB,WACdN,MACC,CAFHM,IAIAtC,YAAiB,gBAAiBgC,EAAlChC,GCyIAuC,CAAenB,EAAY,CACzBQ,SADyB,EAEzBC,QAFyB,EAGzBzB,YAAaM,GAAaC,IAAYN,IAGxC,IAAMmC,GAAuBC,YAAsB,CACjDC,gBAAiBpB,GADgC,QAEjDqB,SACA7B,eACA8B,WAAYzG,IAGR0G,GAA8BZ,uBAClC,cAA6B,eAA5B7K,MAAQ,SAAoB,IAAhB0L,MAAO,MAClB,IAAMC,EAA0B,EAAH,MAE3BC,MAAO,EAAF,GACA5L,EADA,UAEH6L,gBAAiBC,oBAFd,sBAGFA,cAAD,IAA+BC,EAAYC,YAAH,QAHrC,iBAIFF,qBAAD,IAAsCG,GAJnC,IAMLxL,IAAKkB,YAAUqI,EARY,GAS3BkC,SAAUd,GAAuBpL,EAAH,SATH,KAU3BmM,GAV2B,GAW3BC,UAX2B,EAY3BxK,KAZ2B,SAa3ByK,UAAWC,YAAgBtM,EAAD,WAAmByF,YACvC2D,GAAJ,WAAkB3D,OAChB8G,OAGJC,OAAQF,YAAgBtM,EAAD,QAAgByF,YACrC,IAAMgH,EAAgBC,YAAtB,GACMC,EAAkBjE,YAASsB,EAAD,QAAhC,GACM4C,EAAkBlE,YAASoB,EAAD,QAAhC,GAGI/E,QAFiB4H,IAArB,IAGEJ,OAGJ,kBAAmBM,GAAYC,QA5BJ,EA6B3B,mBAAoBC,GAAUC,QAAS/L,IAczC,OAXIsI,IAAYN,KACd0C,iBACAA,eAA4BW,YAAgBtM,EAAD,cAAqB,WAC9DiK,iBAEF0B,eAA4BW,YAAgBtM,EAAD,cAAqB,WAC9DiK,cACAgD,WAAWV,EAAXU,OAIJ,IAEF,CAAC,GAAD,6BA/CF,IAiEMC,GAAwCrC,uBAC5C,8BAAC7K,MAAD,aAAa0B,MAAb,MACEyL,GAAe,EAAD,MAGVvB,MAAO,EAAF,CACHpH,WAAYO,EAAS,UAAY,UAC9B/E,EAFA,SAJX,KAWA,CAAC+E,EAZH,KAeMqI,GAAcrD,mBACdsD,GAAetD,mBAEfuD,GAA8BzC,uBAClC,mBAA6B,IAA5B7K,MAAQ,SAAoB,IAAhB0L,MAAO,MAClB,IAAM6B,EAA0B,EAAH,MAE3B9M,IAAKkB,YAAUmI,EAAY4B,EAFA,IAG3BS,GAH2B,GAI3B,gBAJ2B,SAK3B,gBAL2B,EAM3B,gBAAiBqB,KAgDnB,OA7CIjE,IAAYN,IACdsE,UAAuBjB,YAAgBtM,EAAD,QAAtCuN,IAGEhE,IAAYN,KAOdsE,UAAuBjB,YAAgBtM,EAAD,QAAtCuN,GACAA,SAAsBjB,YAAgBtM,EAAD,OAArCuN,GAMAA,YAAyBjB,YAAgBtM,EAAD,WAAmByF,YACzD,WAAIA,OACF8G,OAIJgB,eAA4BjB,YAAgBtM,EAAD,cAAqB,WAC9DiK,cACAmD,WAAsB5F,oBAAtB4F,MAGFG,eAA4BjB,YAAgBtM,EAAD,cAAqB,WAC9DiK,cAEImD,GAAJ,UACEK,aAAaL,GAAbK,SACAL,mBAGFC,WAAuB7F,OAAA,YAAkB,YACvC,IAAIyC,YACFsC,MAFJc,OAQJ,IAEF,CAAC,GAAD,kBA1DF,IAwEAK,qBAAU,WACR,OAAO,WACDN,GAAJ,SACEK,aAAaL,GAAbK,SAEEJ,GAAJ,SACEI,aAAaJ,GAAbI,YANNC,IAWA,IAAMC,GAA6B9C,uBACjC,8BAAC7K,MAAD,aAAaS,MAAb,cAEE0L,GAFF,GAGE1L,IAAKkB,YAAUlB,GAAMmN,YACnBC,eAGJ,CARF,KAWMC,GAA2BjD,uBAC/B,8BAAC7K,MAAD,aAAaS,MAAb,cAEE0L,GAFF,GAGE1L,IAAKkB,YAAUlB,GAAMmN,YACnBG,eAGJ,CARF,KAWA,MAAO,CACLzD,eACAvF,SACAwH,UACAyB,iBACAC,sBACAf,6BACAzB,mBACA6B,mBACAK,kBACAG,iB,0VCzWG,IAAMI,GAAmClO,YAC9C,IAAMmO,EAASC,YAAoB,UAAnC,GAEA,EAA8BC,YAA9B,GAAQnC,EAAR,EAAQA,SAEFoC,EAAUpF,GAAW,GAAD,GAF1B,mBAE0B,CAAYqF,UADxBC,cACyCD,aAEvD,OACE,mBAAiBrO,MAAOoO,GACtB,qBAAgBpO,MAAOiO,GACpBM,YAAQvC,EAAU,CACjBnH,OAAQuJ,EADS,OAEjB/B,QAAS+B,EAFQ,QAGjBhE,YAAagE,EAAQhE,iBAO3B,EAAJ,IACE4D,0BAOK,IAAMQ,GAA4B1O,YAEvC,IAAM2O,EAAatO,gBAAoBL,EAAvC,UACQsN,EAAoBtI,IAApBsI,gBACR,OAAOjN,iBAA0BiN,EAAgBqB,EAAD,MAAcA,EAA9D,OAGE,EAAJ,IACED,iCAOK,IAAME,GAAiBvM,aAC5B,cACQ,IAAEwM,EAAR,EAAQA,UAAR,sBAEA,EAAuD7J,IAAjD,EAAN,EAAM,gBAAmBkI,EAAzB,EAAyBA,0BAEnBiB,EAASW,cACTC,EAAmC,GAAH,CACpC5L,SADoC,WAEpCG,QAFoC,OAGpC0L,cAAe,UACZb,EAJL,SAOA,OACE,gBAAC,IAAD,UACMjB,EADN,IAEEhK,MAAOiL,EAFT,OAGEtL,UAAU,2BAEV,wBACM4I,EAAgBwD,EADtB,IAEEpM,UAAWD,YAAG,0BAA2B5C,EAF3C,WAGEkD,MAAO6L,SAOb,EAAJ,IACEH,iCASK,IAAMM,GAAgB7M,aAC3B,cACE,IAAQsL,EAAmB3I,IAAnB2I,eAEFQ,EAASW,cAEf,OACE,gBAAC,IAAD,aACMnB,EAAe3N,EADrB,IAEE6C,UAAWD,YAAG,yBAA0B5C,EAF1C,WAGEkD,MAAOiL,EAAOgB,aAMlB,EAAJ,IACED,gCASK,IAAME,GAAc/M,aAAoC,cAC7D,IAAQyL,EAAiB9I,IAAjB8I,aAEFK,EAASW,cAEf,OACE,gBAAC,IAAD,UACMhB,EAAa9N,EADnB,IAEE6C,UAAWD,YAAG,uBAAwB5C,EAFxC,WAGEkD,MAAOiL,EAAOkB,WAKhB,EAAJ,IACED,8BAeE,EAAJ,EAMO,IAAME,GAAkDtP,YAC7D,IAAQuM,EAAYvH,IAAZuH,QACF4B,EAASW,cACf,OACE,wBACEvM,KADF,KAEEgN,QAFF,EAGE1M,UAAWD,YAAG,4BAA6B5C,EAH7C,WAIEkD,MAAOiL,EAAOqB,aALlB,KAWE,EAAJ,IACEF,qCAKK,IAAMG,GAA6CzP,YAAU,MAC5D,EAAN,EAAM,KAAN,EAAM,QAAe0P,EAArB,EAAqBA,gBACrB,EAA8C1K,IAAxC,EAAN,EAAM,cAAiBiJ,EAAvB,EAAuBA,mBACjBE,EAASW,cACTa,EAAO,eAAGC,EAAH,OAAb,EACA,OACE,gBAAC,IAAD,UACM5B,IADN,CAEEnL,UAAU,qCAEV,gBAAC,IAAD,QACEA,UAAWD,YAAG,wBAAyB5C,EAA1B,YACTiO,EAFN,IAGE/K,MAAK,MACAiL,EADA,OAEH,oBAAqBwB,EAAO,wBAExB1O,SAOV,EAAJ,IACEwO,gC,2aCpJK,SAASI,EAAS7P,QAA2B,IAA3BA,MAAuB,IAC9C,QAAM,EAAN,EAAM,iBAAN,IAEE8P,sBAFF,MAAM,EAAN,EAAM,EAAN,EAGEC,UAHI,EAAN,EAAM,cAAN,EAKEhO,WALI,EAAN,EAMEiO,WANI,EAAN,EAOEC,WAPI,EAAN,EAAM,WAAN,EASEC,UATI,EAAN,EAAM,OAAN,EAAM,QAAN,EAYE/D,GACmBgE,EAbrB,EAaE,mBAbF,E,oIAAA,wKAiBMC,EAAOpP,iBAAMC,EAAnB,SAEMoP,EAAcC,cACdhO,EAAQiO,cAKVpE,IAFJ,OAD2B,KAA3B,GAGsDkE,EAA7CG,GAAT,EACArE,EAAE,MAAGsE,EAAH,EAAFtE,EAEA,IAAMpK,EAAU,MAAG2O,EAAH,QAAqBL,OAArB,EAAqBA,EAArC,WACML,EAAU,MAAGW,EAAH,QAAqBN,OAArB,EAAqBA,EAArC,WACMJ,EAAU,MAAGW,EAAH,QAAqBP,OAArB,EAAqBA,EAArC,WACMH,EAAS,MAAGW,EAAH,QAAoBR,OAApB,EAAoBA,EAAnC,UAEA,EAAgCS,cAAhC,mBAAM,EAAN,KAAM,EAAN,KACA,EAAiCA,cAAjC,mBAAM,EAAN,KAAM,EAAN,KACA,EAA8BA,cAA9B,mBAAM,EAAN,KAAM,EAAN,KAEMrQ,EAAMsJ,iBAAZ,MAEA,EAAqCI,mBAAS4G,QAA9C,uBAAM,EAAN,KAAM,GAAN,KAEA,GAAkCxQ,YAAoB,EAAtD,wBAAM,GAAN,MAAM,GAAN,MAKAyQ,YAAK,CACHC,YADG,EAEHC,QACE,0LAIJ,IAAMC,GAAetG,uBAClBpF,YACKuK,GAAJ,EACEvK,oBAIF,IACE2L,GAAW3L,SAAX2L,SAGFnR,iBAEF,CAACoR,GAActP,EAAYiO,EAb7B,IAgBM3D,GAAYxB,uBACfpF,YACC,MAAIA,OACF6L,SAGJ,CANF,IASMC,GAAU1G,uBACbpF,YACC,MAAIA,OACF6L,UAGJ,CANF,IASME,GAA+B3G,uBACnC,8BAAC7K,MAAD,aAAaS,MAAb,cAEEA,MACA,cAAegR,YAHjB,GAIE,aAAcA,YAJhB,GAKE,gBAAiBA,YALnB,GAME,eAAgBA,YANlB,GAOE,eAAgBA,YAPlB,IAQE,aAAcA,YARhB,GASE,gBAAiBA,YATnB,GAUE,eAVF,EAWEC,YAAapF,YAAgBtM,EAAD,YAAoBsR,EAXlD,IAYEK,UAAWrF,YAAgBtM,EAAD,UAAkBsR,EAZ9C,KAaEM,aAActF,YAAgBtM,EAAD,aAAqB6R,EAbpD,IAcEC,aAAcxF,YAAgBtM,EAAD,aAAqB6R,EAArB,SAE/B,CAAC,EAAD,aAQEP,EARF,GASEA,EATF,IAUEO,EAVF,GAWEA,EA5BJ,MAgCA,GAAM,MAAsBxB,EAAtB,EAAN,GAAM,GAAN,GAAM,QAAW7D,GAAjB,GAAiBA,OAEXuF,GAA8ClH,uBAClD,mBAAqC,IAApC7K,MAAQ,SAA4B,IAAxB0B,MAAe,MAC1B,IAAMsQ,EAAgBjQ,IAAtB,EAEA,eAEEoK,KACA1L,IAAKkB,YAAUD,EAHjB,GAIEuQ,KAJF,QAKE9R,OACAD,QACAD,SAAUqM,YAAgBtM,EAAD,SAP3B,IAQEwM,OAAQF,YAAgBE,GAAQxM,EAAT,OAAuBkS,EARhD,KASEtH,QAAS0B,YAAgB1B,GAAS5K,EAAV,QAAyBkS,EATnD,IAUE7F,UAAWC,YAAgBtM,EAAD,UAV5B,IAWEuR,QAASjF,YAAgBtM,EAAD,QAX1B,IAYEmS,QAZF,GAaEC,SAbF,EAcEC,SAdF,EAeEC,SAfF,EAgBE,eAAgBC,YAhBlB,GAiBE,gBAAiBA,YAjBnB,GAkBE,gBAAiBA,YAlBnB,GAmBE,gBAAiBd,YAnBnB,GAoBE7F,MAAO4G,QAGX,CAAC,EAAD,gCA3BF,IAgEA,MAAO,CACLC,MAAO,CACLvC,YACAwC,YACA3C,aACA4C,WACAC,YACA7Q,aACAiO,aACAC,cAEFuB,oBACAO,iBACAc,cA/BgC,SAAC7S,EAAD,mBAACA,MAAD,aAAaS,MAAb,cAEhCA,MACAiR,YAAapF,YAAgBtM,EAAD,YAHI,GAIhC8S,aAAcxG,YAAgBtM,EAAD,aAJG,GAKhC,gBAAiByR,YALe,GAMhC,eAAgBA,YANgB,IAOhC,eAAgBA,YAASvB,MAyBzBzO,aAtB+B,SAACzB,EAAOS,GAAR,gBAAQA,MAAR,cAE/BA,MACA,gBAAiBgR,YAHc,GAI/B,eAAgBA,YAJe,IAK/B,eAAgBA,YAASvB,MAkBzBjO,aAOJ,SAAS8Q,EAAKtN,GACZA,mBACAA,oB,gNCrPK,IAAMuN,EAAQ3Q,aAAgC,cAAgB,MAC7DC,EAAQiO,cACR,EAAN,EAAQtQ,SAA+BO,EAAvC,EAAgCN,MAE1BiO,EAASC,YAAoB,QAAS,EAAV,KAAlC,IAEM6E,EAAW5E,YAAjB,GAEA,IACE6E,eADF,MAAM,SAAN,EAAM,EAAN,EAAM,WAAN,EAAM,YAAN,IAIEnR,kBAJF,MAIY,MAAGO,OAAH,EAAGA,EAJT,WAAN,MAKEN,mBALF,MAKa,MAAGM,OAAH,EAAGA,EAAON,YALvB,I,oIAAA,oEASI+N,EAAY/P,EAAhB,UACI,aAAAsC,OAAA,EAAAA,EAAA,QAAJ,MAA4B9B,IAC1BuP,EAAYzN,UAAZyN,GAGF,IAAI9P,EAAJ,EACIqC,qBAAJ,MAAuB9B,IACrBP,EAAWkT,YAAQ7Q,EAAD,SAAlBrC,IAGF,IAEA,EAMI4P,EAAS,EAAD,MAEVE,YACA/N,cACAD,aACA9B,WACAE,KAdQ,eAAGH,OAAH,EAAGA,EAAH,cAAkBsC,OAAlB,EAAkBA,EAA5B,QAEM,EAAN,EAAM,gBAAN,EAAM,mBAAN,EAAM,gBAAN,EAAM,aAKJL,EALF,EAKEA,UAUF,EAAkCmR,YAAMnR,EAAxC,sCAAM,EAAN,KAEMoR,EAAgB7B,EAFtB,MAGM8B,EAAavB,EAAc,GAAjC,GACMwB,EAAaV,IACbhE,EAAY2E,mBAA+B/R,KAE3CgS,EAAa,EAAH,CACd/P,MAAOgQ,EAAc,YADP,EAEdpQ,QAFc,cAGdqQ,WAHc,SAIdC,cAAe,OACZzF,EALL,WAQM0F,EAAiB,EAAH,CAClBvQ,QADkB,cAElBqQ,WAFkB,SAGlBG,eAHkB,SAIlBC,WAAY,GACT5F,EALL,SAQM6F,EAAiC,EAAH,CAClCC,WADkC,OAElCC,YAAahB,GACV/E,EAHL,OAMA,OACE,gBAAC,IAAD,SAActL,UAAU,gBAAxB,GAAsDK,MAAOuQ,IAC3D,2BAAO5Q,UAAU,uBADnB,IAEE,gBAAC,IAAD,QACEA,UAAU,yBADZ,GAGEK,MAAO2Q,KAER3H,GACC,gBAAC,IAAD,QACErJ,UAAU,uBADZ,GAGEK,MAAO8Q,IAZf,OAqBE,EAAJ,IACEhB","file":"static/js/9.b8a2bbeb.chunk.js","sourcesContent":["export * from \"@chakra-ui/color-mode\"\nexport * from \"@chakra-ui/styled-system\"\nexport { keyframes } from \"@emotion/react\"\nexport type { Interpolation } from \"@emotion/react\"\nexport * from \"./hooks\"\nexport * from \"./system.types\"\nexport * from \"./providers\"\nexport { omitThemingProps } from \"./system.utils\"\nexport * from \"./system\"\nexport * from \"./forward-ref\"\nexport * from \"./use-style-config\"\nexport { shouldForwardProp } from \"./should-forward-prop\"\n","import { useControllableProp, useId } from \"@chakra-ui/hooks\"\nimport { StringOrNumber, isInputEvent } from \"@chakra-ui/utils\"\nimport * as React from \"react\"\nimport { mergeRefs, PropGetter } from \"@chakra-ui/react-utils\"\n\ntype EventOrValue = React.ChangeEvent<HTMLInputElement> | StringOrNumber\n\nexport interface UseRadioGroupProps {\n /**\n * The value of the radio to be `checked`\n * (in controlled mode)\n */\n value?: StringOrNumber\n /**\n * The value of the radio to be `checked`\n * initially (in uncontrolled mode)\n */\n defaultValue?: StringOrNumber\n /**\n * Function called once a radio is checked\n * @param nextValue the value of the checked radio\n */\n onChange?(nextValue: string): void\n /**\n * If `true`, all wrapped radio inputs will be disabled\n */\n isDisabled?: boolean\n\n /**\n * If `true` and `isDisabled` is true, all wrapped radio inputs will remain\n * focusable but not interactive.\n */\n isFocusable?: boolean\n /**\n * The `name` attribute forwarded to each `radio` element\n */\n name?: string\n /**\n * If `true`, input elements will receive\n * `checked` attribute instead of `isChecked`.\n *\n * This assumes, you're using native radio inputs\n */\n isNative?: boolean\n}\n\ntype RadioPropGetter = PropGetter<\n HTMLInputElement,\n {\n onChange?: (e: EventOrValue) => void\n value?: StringOrNumber\n /**\n * checked is defined if isNative=true\n */\n checked?: boolean\n /**\n * isChecked is defined if isNative=false\n */\n isChecked?: boolean\n } & Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"onChange\" | \"size\" | \"value\"\n >\n>\n\n/**\n * React hook to manage a group of radio inputs\n */\nexport function useRadioGroup(props: UseRadioGroupProps = {}) {\n const {\n onChange: onChangeProp,\n value: valueProp,\n defaultValue,\n name: nameProp,\n isDisabled,\n isFocusable,\n isNative,\n ...htmlProps\n } = props\n\n const [valueState, setValue] = React.useState<StringOrNumber>(\n defaultValue || \"\",\n )\n const [isControlled, value] = useControllableProp(valueProp, valueState)\n\n const ref = React.useRef<any>(null)\n\n const focus = React.useCallback(() => {\n const rootNode = ref.current\n if (!rootNode) return\n\n let query = `input:not(:disabled):checked`\n\n const firstEnabledAndCheckedInput = rootNode.querySelector(\n query,\n ) as HTMLElement\n\n if (firstEnabledAndCheckedInput) {\n firstEnabledAndCheckedInput.focus()\n return\n }\n\n query = `input:not(:disabled)`\n\n const firstEnabledInput = rootNode.querySelector(query) as HTMLElement\n firstEnabledInput?.focus()\n }, [])\n\n /**\n * All radio options must use the same name\n */\n const fallbackName = useId(undefined, `radio`)\n const name = nameProp || fallbackName\n\n const onChange = React.useCallback(\n (eventOrValue: EventOrValue) => {\n const nextValue = isInputEvent(eventOrValue)\n ? eventOrValue.target.value\n : eventOrValue\n\n if (!isControlled) {\n setValue(nextValue)\n }\n\n onChangeProp?.(String(nextValue))\n },\n [onChangeProp, isControlled],\n )\n\n const getRootProps: PropGetter = React.useCallback(\n (props = {}, forwardedRef = null) => ({\n ...props,\n ref: mergeRefs(forwardedRef, ref),\n role: \"radiogroup\",\n }),\n [],\n )\n\n const getRadioProps: RadioPropGetter = React.useCallback(\n (props = {}, ref = null) => {\n const checkedKey = isNative ? \"checked\" : \"isChecked\"\n return {\n ...props,\n ref,\n name,\n [checkedKey]: value != null ? props.value === value : undefined,\n onChange,\n \"data-radiogroup\": true,\n }\n },\n [isNative, name, onChange, value],\n )\n\n return {\n getRootProps,\n getRadioProps,\n name,\n ref,\n focus,\n setValue,\n value,\n onChange,\n isDisabled,\n isFocusable,\n htmlProps,\n }\n}\n\nexport type UseRadioGroupReturn = ReturnType<typeof useRadioGroup>\n","import {\n chakra,\n forwardRef,\n ThemingProps,\n HTMLChakraProps,\n} from \"@chakra-ui/system\"\nimport { cx, __DEV__ } from \"@chakra-ui/utils\"\nimport { createContext } from \"@chakra-ui/react-utils\"\nimport * as React from \"react\"\nimport {\n useRadioGroup,\n UseRadioGroupProps,\n UseRadioGroupReturn,\n} from \"./use-radio-group\"\n\nexport interface RadioGroupContext\n extends Pick<\n UseRadioGroupReturn,\n \"onChange\" | \"value\" | \"name\" | \"isDisabled\" | \"isFocusable\"\n >,\n Omit<ThemingProps<\"Radio\">, \"orientation\"> {}\n\nconst [\n RadioGroupProvider,\n useRadioGroupContext,\n] = createContext<RadioGroupContext>({\n name: \"RadioGroupContext\",\n strict: false,\n})\n\nexport { useRadioGroupContext }\n\ntype Omitted =\n | \"onChange\"\n | \"value\"\n | \"defaultValue\"\n | \"defaultChecked\"\n | \"children\"\nexport interface RadioGroupProps\n extends UseRadioGroupProps,\n Omit<HTMLChakraProps<\"div\">, Omitted>,\n Omit<ThemingProps<\"Radio\">, \"orientation\"> {\n children: React.ReactNode\n}\n\n/**\n * Used for multiple radios which are bound in one group,\n * and it indicates which option is selected.\n *\n * @see Docs https://chakra-ui.com/radio\n */\nexport const RadioGroup = forwardRef<RadioGroupProps, \"div\">((props, ref) => {\n const {\n colorScheme,\n size,\n variant,\n children,\n className,\n isDisabled,\n isFocusable,\n ...rest\n } = props\n\n const { value, onChange, getRootProps, name, htmlProps } = useRadioGroup(rest)\n\n const group = React.useMemo(\n () => ({\n name,\n size,\n onChange,\n colorScheme,\n value,\n variant,\n isDisabled,\n isFocusable,\n }),\n [\n name,\n size,\n onChange,\n colorScheme,\n value,\n variant,\n isDisabled,\n isFocusable,\n ],\n )\n\n const groupProps = getRootProps(htmlProps, ref)\n const _className = cx(\"chakra-radio-group\", className)\n\n return (\n <RadioGroupProvider value={group}>\n <chakra.div {...groupProps} className={_className}>\n {children}\n </chakra.div>\n </RadioGroupProvider>\n )\n})\n\nif (__DEV__) {\n RadioGroup.displayName = \"RadioGroup\"\n}\n","import { chakra, forwardRef, HTMLChakraProps } from \"@chakra-ui/system\"\nimport { cx } from \"@chakra-ui/utils\"\nimport * as React from \"react\"\n\nexport interface LinkOverlayProps extends HTMLChakraProps<\"a\"> {\n /**\n * If `true`, the link will open in new tab\n */\n isExternal?: boolean\n}\n\nexport const LinkOverlay = forwardRef<LinkOverlayProps, \"a\">((props, ref) => {\n const { isExternal, target, rel, className, ...rest } = props\n return (\n <chakra.a\n {...rest}\n ref={ref}\n className={cx(\"chakra-linkbox__overlay\", className)}\n rel={isExternal ? \"noopener noreferrer\" : rel}\n target={isExternal ? \"_blank\" : target}\n __css={{\n position: \"static\",\n \"&::before\": {\n content: \"''\",\n cursor: \"inherit\",\n display: \"block\",\n position: \"absolute\",\n top: 0,\n left: 0,\n zIndex: 0,\n width: \"100%\",\n height: \"100%\",\n },\n }}\n />\n )\n})\n\nexport interface LinkBoxProps extends HTMLChakraProps<\"div\"> {}\n\n/**\n * `LinkBox` is used to wrap content areas within a link while ensuring semantic html\n *\n * @see Docs https://chakra-ui.com/docs/navigation/link-overlay\n * @see Resources https://www.sarasoueidan.com/blog/nested-links\n */\nexport const LinkBox = forwardRef<LinkBoxProps, \"div\">((props, ref) => {\n const { className, ...rest } = props\n\n return (\n <chakra.div\n ref={ref}\n position=\"relative\"\n {...rest}\n className={cx(\"chakra-linkbox\", className)}\n __css={{\n /* Elevate the links and abbreviations up */\n \"a[href]:not(.chakra-linkbox__overlay), abbr[title]\": {\n position: \"relative\",\n zIndex: 1,\n },\n }}\n />\n )\n})\n","import { createIcon } from \"@chakra-ui/icon\"\n\nexport const ChevronRightIcon = createIcon({\n d: \"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z\",\n displayName: \"ChevronRightIcon\",\n})\n","import { createIcon } from \"@chakra-ui/icon\"\n\nexport const QuestionIcon = createIcon({\n d:\n \"M12,0A12,12,0,1,0,24,12,12.013,12.013,0,0,0,12,0Zm0,19a1.5,1.5,0,1,1,1.5-1.5A1.5,1.5,0,0,1,12,19Zm1.6-6.08a1,1,0,0,0-.6.917,1,1,0,1,1-2,0,3,3,0,0,1,1.8-2.75A2,2,0,1,0,10,9.255a1,1,0,1,1-2,0,4,4,0,1,1,5.6,3.666Z\",\n displayName: \"QuestionIcon\",\n})\n","import { createIcon } from \"@chakra-ui/icon\"\n\nexport const ChevronLeftIcon = createIcon({\n d: \"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z\",\n displayName: \"ChevronLeftIcon\",\n})\n","import { createContext } from \"@chakra-ui/react-utils\"\nimport { UsePopoverReturn } from \"./use-popover\"\n\nexport const [\n PopoverProvider,\n usePopoverContext,\n] = createContext<UsePopoverReturn>({\n name: \"PopoverContext\",\n errorMessage:\n \"usePopoverContext: `context` is undefined. Seems you forgot to wrap all popover components within `<Popover />`\",\n})\n","import { chakra, HTMLChakraProps } from \"@chakra-ui/system\"\nimport { HTMLMotionProps, motion, Variant } from \"framer-motion\"\nimport { mergeWith } from \"@chakra-ui/utils\"\nimport React from \"react\"\nimport { usePopoverContext } from \"./popover-context\"\n\n// TODO: consider moving this to some util\ntype HTMLMotionChakraProps<T extends keyof React.ReactHTML> = Omit<\n HTMLChakraProps<T>,\n keyof HTMLMotionProps<T>\n> &\n Omit<\n HTMLMotionProps<T>,\n | \"style\"\n | \"onDrag\"\n | \"onDragEnd\"\n | \"onDragStart\"\n | \"onAnimationStart\"\n | \"variants\"\n > & {\n variants?: MotionVariants\n }\n\ntype MotionVariants = Partial<Record<\"enter\" | \"exit\", Variant>>\n\nconst mergeVariants = (variants?: MotionVariants) => {\n if (!variants) return\n return mergeWith(variants, {\n enter: {\n visibility: \"visible\",\n },\n exit: {\n transitionEnd: {\n visibility: \"hidden\",\n },\n },\n })\n}\n\nconst scaleFade: MotionVariants = {\n exit: {\n opacity: 0,\n scale: 0.95,\n transition: {\n duration: 0.1,\n ease: [0.4, 0, 1, 1],\n },\n },\n enter: {\n scale: 1,\n opacity: 1,\n transition: {\n duration: 0.15,\n ease: [0, 0, 0.2, 1],\n },\n },\n}\n\nconst Section = motion(chakra.section)\n\nexport interface PopoverTransitionProps\n extends HTMLMotionChakraProps<\"section\"> {}\n\nexport const PopoverTransition = React.forwardRef(\n (props: HTMLMotionChakraProps<\"section\">, ref: React.Ref<any>) => {\n const { isOpen } = usePopoverContext()\n return (\n <Section\n ref={ref}\n variants={mergeVariants(props.variants)}\n {...props}\n initial={false}\n animate={isOpen ? \"enter\" : \"exit\"}\n />\n )\n },\n)\n\nPopoverTransition.defaultProps = {\n variants: scaleFade,\n}\n","/**\n * Credit goes to `framer-motion` of this useful utilities.\n * License can be found here: https://github.com/framer/motion\n */\n\nimport { addDomEvent, getEventWindow, isBrowser } from \"./dom\"\n\nexport type AnyPointerEvent = MouseEvent | TouchEvent | PointerEvent\n\ntype PointType = \"page\" | \"client\"\n\nexport function isMouseEvent(event: AnyPointerEvent): event is MouseEvent {\n const win = getEventWindow(event)\n\n // PointerEvent inherits from MouseEvent so we can't use a straight instanceof check.\n if (\n typeof win.PointerEvent !== \"undefined\" &&\n event instanceof win.PointerEvent\n ) {\n return !!(event.pointerType === \"mouse\")\n }\n\n return event instanceof win.MouseEvent\n}\n\nexport function isTouchEvent(event: AnyPointerEvent): event is TouchEvent {\n const hasTouches = !!(event as TouchEvent).touches\n return hasTouches\n}\n\nexport interface Point {\n x: number\n y: number\n}\n\nexport interface PointerEventInfo {\n point: Point\n}\n\nexport type EventHandler = (\n event: AnyPointerEvent,\n info: PointerEventInfo,\n) => void\n\n/**\n * Filters out events not attached to the primary pointer (currently left mouse button)\n * @param eventHandler\n */\nfunction filterPrimaryPointer(eventHandler: EventListener): EventListener {\n return (event: Event) => {\n const win = getEventWindow(event)\n const isMouseEvent = event instanceof win.MouseEvent\n const isPrimaryPointer =\n !isMouseEvent || (isMouseEvent && (event as MouseEvent).button === 0)\n if (isPrimaryPointer) {\n eventHandler(event)\n }\n }\n}\n\nexport type EventListenerWithPointInfo = (\n e: AnyPointerEvent,\n info: PointerEventInfo,\n) => void\n\nconst defaultPagePoint = { pageX: 0, pageY: 0 }\n\nfunction pointFromTouch(e: TouchEvent, pointType: PointType = \"page\") {\n const primaryTouch = e.touches[0] || e.changedTouches[0]\n const point = primaryTouch || defaultPagePoint\n\n return {\n x: point[`${pointType}X`],\n y: point[`${pointType}Y`],\n }\n}\n\nfunction pointFromMouse(\n point: MouseEvent | PointerEvent,\n pointType: PointType = \"page\",\n) {\n return {\n x: point[`${pointType}X`],\n y: point[`${pointType}Y`],\n }\n}\n\nexport function extractEventInfo(\n event: AnyPointerEvent,\n pointType: PointType = \"page\",\n): PointerEventInfo {\n return {\n point: isTouchEvent(event)\n ? pointFromTouch(event, pointType)\n : pointFromMouse(event, pointType),\n }\n}\n\nexport function getViewportPointFromEvent(event: AnyPointerEvent) {\n return extractEventInfo(event, \"client\")\n}\n\nexport const wrapPointerEventHandler = (\n handler: EventListenerWithPointInfo,\n shouldFilterPrimaryPointer = false,\n): EventListener => {\n const listener: EventListener = (event: any) =>\n handler(event, extractEventInfo(event))\n\n return shouldFilterPrimaryPointer ? filterPrimaryPointer(listener) : listener\n}\n\n// We check for event support via functions in case they've been mocked by a testing suite.\nconst supportsPointerEvents = () => isBrowser && window.onpointerdown === null\nconst supportsTouchEvents = () => isBrowser && window.ontouchstart === null\nconst supportsMouseEvents = () => isBrowser && window.onmousedown === null\n\ninterface PointerNameMap {\n pointerdown: string\n pointermove: string\n pointerup: string\n pointercancel: string\n pointerover?: string\n pointerout?: string\n pointerenter?: string\n pointerleave?: string\n}\n\nconst mouseEventNames: PointerNameMap = {\n pointerdown: \"mousedown\",\n pointermove: \"mousemove\",\n pointerup: \"mouseup\",\n pointercancel: \"mousecancel\",\n pointerover: \"mouseover\",\n pointerout: \"mouseout\",\n pointerenter: \"mouseenter\",\n pointerleave: \"mouseleave\",\n}\n\nconst touchEventNames: PointerNameMap = {\n pointerdown: \"touchstart\",\n pointermove: \"touchmove\",\n pointerup: \"touchend\",\n pointercancel: \"touchcancel\",\n}\n\nexport function getPointerEventName(name: string): string {\n if (supportsPointerEvents()) {\n return name\n }\n if (supportsTouchEvents()) {\n return touchEventNames[name]\n }\n if (supportsMouseEvents()) {\n return mouseEventNames[name]\n }\n\n return name\n}\n\nexport function addPointerEvent(\n target: EventTarget,\n eventName: string,\n handler: EventListenerWithPointInfo,\n options?: AddEventListenerOptions,\n) {\n return addDomEvent(\n target,\n getPointerEventName(eventName),\n wrapPointerEventHandler(handler, eventName === \"pointerdown\"),\n options,\n )\n}\n\nexport function isMultiTouchEvent(event: AnyPointerEvent) {\n return isTouchEvent(event) && event.touches.length > 1\n}\n","import {\n contains,\n detectBrowser,\n focus,\n getOwnerDocument,\n isActiveElement,\n isRefObject,\n} from \"@chakra-ui/utils\"\nimport { RefObject } from \"react\"\nimport { usePointerEvent } from \"./use-pointer-event\"\n\nexport interface UseFocusOnMouseDownProps {\n enabled?: boolean\n ref: RefObject<HTMLElement>\n elements?: Array<RefObject<HTMLElement> | HTMLElement | null>\n}\n\n/**\n * Polyfill to get `relatedTarget` working correctly consistently\n * across all browsers.\n *\n * It ensures that elements receives focus on pointer down if\n * it's not the active active element.\n *\n * @internal\n */\nexport function useFocusOnPointerDown(props: UseFocusOnMouseDownProps) {\n const { ref, elements, enabled } = props\n\n const isSafari = detectBrowser(\"Safari\")\n const doc = () => getOwnerDocument(ref.current)\n\n usePointerEvent(doc, \"pointerdown\", (event) => {\n if (!isSafari || !enabled) return\n const target = event.target as HTMLElement\n\n const els = elements ?? [ref]\n const isValidTarget = els.some((elementOrRef) => {\n const el = isRefObject(elementOrRef) ? elementOrRef.current : elementOrRef\n return contains(el, target)\n })\n\n if (!isActiveElement(target) && isValidTarget) {\n event.preventDefault()\n focus(target)\n }\n })\n}\n","import { isBrowser } from \"./dom\"\n\nfunction getUserAgentBrowser(navigator: Navigator) {\n const { userAgent: ua, vendor } = navigator\n const android = /(android)/i.test(ua)\n\n switch (true) {\n case /CriOS/.test(ua):\n return \"Chrome for iOS\"\n case /Edg\\//.test(ua):\n return \"Edge\"\n case android && /Silk\\//.test(ua):\n return \"Silk\"\n case /Chrome/.test(ua) && /Google Inc/.test(vendor):\n return \"Chrome\"\n case /Firefox\\/\\d+\\.\\d+$/.test(ua):\n return \"Firefox\"\n case android:\n return \"AOSP\"\n case /MSIE|Trident/.test(ua):\n return \"IE\"\n case /Safari/.test(navigator.userAgent) && /Apple Computer/.test(ua):\n return \"Safari\"\n case /AppleWebKit/.test(ua):\n return \"WebKit\"\n default:\n return null\n }\n}\n\nexport type UserAgentBrowser = NonNullable<\n ReturnType<typeof getUserAgentBrowser>\n>\n\nfunction getUserAgentOS(navigator: Navigator) {\n const { userAgent: ua, platform } = navigator\n switch (true) {\n case /Android/.test(ua):\n return \"Android\"\n case /iPhone|iPad|iPod/.test(platform):\n return \"iOS\"\n case /Win/.test(platform):\n return \"Windows\"\n case /Mac/.test(platform):\n return \"Mac\"\n case /CrOS/.test(ua):\n return \"Chrome OS\"\n case /Firefox/.test(ua):\n return \"Firefox OS\"\n default:\n return null\n }\n}\n\nexport type UserAgentOS = NonNullable<ReturnType<typeof getUserAgentOS>>\n\nexport function detectDeviceType(navigator: Navigator) {\n const { userAgent: ua } = navigator\n if (/(tablet)|(iPad)|(Nexus 9)/i.test(ua)) return \"tablet\"\n if (/(mobi)/i.test(ua)) return \"phone\"\n return \"desktop\"\n}\n\nexport type UserAgentDeviceType = NonNullable<\n ReturnType<typeof detectDeviceType>\n>\n\nexport function detectOS(os: UserAgentOS) {\n if (!isBrowser) return false\n return getUserAgentOS(window.navigator) === os\n}\n\nexport function detectBrowser(browser: UserAgentBrowser) {\n if (!isBrowser) return false\n return getUserAgentBrowser(window.navigator) === browser\n}\n\nexport function detectTouch() {\n if (!isBrowser) return false\n return (\n window.ontouchstart === null &&\n window.ontouchmove === null &&\n window.ontouchend === null\n )\n}\n","/**\n * Credit goes to `framer-motion` of this useful utilities.\n * License can be found here: https://github.com/framer/motion\n */\n\nimport {\n EventListenerWithPointInfo,\n getPointerEventName,\n wrapPointerEventHandler,\n} from \"@chakra-ui/utils\"\nimport { EventListenerEnv, useEventListener } from \"./use-event-listener\"\n\n/**\n * @internal\n */\nexport function usePointerEvent(\n env: EventListenerEnv,\n eventName: string,\n handler: EventListenerWithPointInfo,\n options?: AddEventListenerOptions,\n) {\n return useEventListener(\n getPointerEventName(eventName),\n wrapPointerEventHandler(handler, eventName === \"pointerdown\"),\n env,\n options,\n )\n}\n","import {\n contains,\n focus,\n FocusableElement,\n getAllFocusable,\n isRefObject,\n} from \"@chakra-ui/utils\"\nimport React, { useCallback } from \"react\"\nimport { useEventListener } from \"./use-event-listener\"\nimport { useUpdateEffect } from \"./use-update-effect\"\n\nexport interface UseFocusOnShowOptions {\n visible?: boolean\n shouldFocus?: boolean\n preventScroll?: boolean\n focusRef?: React.RefObject<FocusableElement>\n}\n\nconst defaultOptions: UseFocusOnShowOptions = {\n preventScroll: true,\n shouldFocus: false,\n}\n\nexport function useFocusOnShow<T extends HTMLElement>(\n target: React.RefObject<T> | T,\n options = defaultOptions,\n) {\n const { focusRef, preventScroll, shouldFocus, visible } = options\n const element = isRefObject(target) ? target.current : target\n\n const autoFocus = shouldFocus && visible\n\n const onFocus = useCallback(() => {\n if (!element || !autoFocus) return\n\n if (contains(element, document.activeElement as HTMLElement)) return\n\n if (focusRef?.current) {\n focus(focusRef.current, { preventScroll, nextTick: true })\n } else {\n const tabbableEls = getAllFocusable(element)\n if (tabbableEls.length > 0) {\n focus(tabbableEls[0], { preventScroll, nextTick: true })\n }\n }\n }, [autoFocus, preventScroll, element, focusRef])\n\n useUpdateEffect(() => {\n onFocus()\n }, [onFocus])\n\n useEventListener(\"transitionend\", onFocus, element)\n}\n","import {\n useDisclosure,\n useFocusOnHide,\n useFocusOnPointerDown,\n useFocusOnShow,\n useIds,\n} from \"@chakra-ui/hooks\"\nimport { popperCSSVars, usePopper, UsePopperProps } from \"@chakra-ui/popper\"\nimport { HTMLProps, mergeRefs, PropGetter } from \"@chakra-ui/react-utils\"\nimport {\n callAllHandlers,\n contains,\n determineLazyBehavior,\n FocusableElement,\n getRelatedTarget,\n LazyBehavior,\n px,\n} from \"@chakra-ui/utils\"\nimport { RefObject, useCallback, useEffect, useRef, useState } from \"react\"\n\nconst TRIGGER = {\n click: \"click\",\n hover: \"hover\",\n} as const\n\nexport interface UsePopoverProps extends UsePopperProps {\n /**\n * The html `id` attribute of the popover.\n * If not provided, we generate a unique id.\n *\n * This `id` is also used to auto-generate the `aria-labelledby`\n * and `aria-decribedby` attributes that points to the `PopoverHeader` and `PopoverBody`\n */\n id?: string\n /**\n * If `true`, the popover will be opened in controlled mode.\n */\n isOpen?: boolean\n /**\n * If `true`, the popover will be initially opened.\n */\n defaultIsOpen?: boolean\n /**\n * The `ref` of the element that should receive focus when the popover opens.\n */\n initialFocusRef?: RefObject<FocusableElement>\n /**\n * If `true`, focus will be returned to the element that triggers the popover\n * when it closes\n */\n returnFocusOnClose?: boolean\n /**\n * If `true`, focus will be transferred to the first interactive element\n * when the popover opens\n */\n autoFocus?: boolean\n /**\n * If `true`, the popover will close when you blur out it by\n * clicking outside or tabbing out\n */\n closeOnBlur?: boolean\n /**\n * If `true`, the popover will close when you hit the `Esc` key\n */\n closeOnEsc?: boolean\n /**\n * Callback fired when the popover opens\n */\n onOpen?: () => void\n /**\n * Callback fired when the popover closes\n */\n onClose?: () => void\n /**\n * The size of the popover arrow\n */\n arrowSize?: number\n /**\n * The `box-shadow` of the popover arrow\n */\n arrowShadowColor?: string\n /**\n * The interaction that triggers the popover.\n *\n * `hover` - means the popover will open when you hover with mouse or\n * focus with keyboard on the popover trigger\n *\n * `click` - means the popover will open on click or\n * press `Enter` to `Space` on keyboard\n */\n trigger?: keyof typeof TRIGGER\n openDelay?: number\n closeDelay?: number\n /**\n * Performance 🚀:\n * If `true`, the PopoverContent rendering will be deferred\n * until the popover is open.\n */\n isLazy?: boolean\n /**\n * Performance 🚀:\n * The lazy behavior of popover's content when not visible.\n * Only works when `isLazy={true}`\n *\n * - \"unmount\": The popover's content is always unmounted when not open.\n * - \"keepMounted\": The popover's content initially unmounted,\n * but stays mounted when popover is open.\n *\n * @default \"unmount\"\n */\n lazyBehavior?: LazyBehavior\n /**\n * If `true`, the popover will be positioned when it mounts\n * (even if it's not open)\n *\n * Note 🚨: We don't recommend using this in a popover/menu intensive UI or page\n * as it might affect scrolling performance.\n */\n computePositionOnMount?: boolean\n}\n\n/**\n * @internal\n */\nexport function usePopover(props: UsePopoverProps = {}) {\n const {\n closeOnBlur = true,\n closeOnEsc = true,\n initialFocusRef,\n id,\n returnFocusOnClose = true,\n autoFocus = true,\n arrowSize,\n arrowShadowColor,\n trigger = TRIGGER.click,\n openDelay = 200,\n closeDelay = 200,\n isLazy,\n lazyBehavior = \"unmount\",\n computePositionOnMount,\n ...popperProps\n } = props\n\n const { isOpen, onClose, onOpen, onToggle } = useDisclosure(props)\n\n const triggerRef = useRef<HTMLElement>(null)\n const popoverRef = useRef<HTMLElement>(null)\n\n const isHoveringRef = useRef(false)\n\n const hasBeenOpened = useRef(false)\n if (isOpen) {\n hasBeenOpened.current = true\n }\n\n const [hasHeader, setHasHeader] = useState(false)\n const [hasBody, setHasBody] = useState(false)\n\n const [triggerId, popoverId, headerId, bodyId] = useIds(\n id,\n \"popover-trigger\",\n \"popover-content\",\n \"popover-header\",\n \"popover-body\",\n )\n\n const {\n referenceRef,\n getArrowProps,\n getPopperProps,\n getArrowInnerProps,\n forceUpdate,\n } = usePopper({\n ...popperProps,\n enabled: isOpen || !!computePositionOnMount,\n })\n\n useFocusOnPointerDown({\n enabled: isOpen,\n ref: triggerRef,\n })\n\n useFocusOnHide(popoverRef, {\n focusRef: triggerRef,\n visible: isOpen,\n shouldFocus: returnFocusOnClose && trigger === TRIGGER.click,\n })\n\n useFocusOnShow(popoverRef, {\n focusRef: initialFocusRef,\n visible: isOpen,\n shouldFocus: autoFocus && trigger === TRIGGER.click,\n })\n\n const shouldRenderChildren = determineLazyBehavior({\n hasBeenSelected: hasBeenOpened.current,\n isLazy,\n lazyBehavior,\n isSelected: isOpen,\n })\n\n const getPopoverProps: PropGetter = useCallback(\n (props = {}, _ref = null) => {\n const popoverProps: HTMLProps = {\n ...props,\n style: {\n ...props.style,\n transformOrigin: popperCSSVars.transformOrigin.varRef,\n [popperCSSVars.arrowSize.var]: arrowSize ? px(arrowSize) : undefined,\n [popperCSSVars.arrowShadowColor.var]: arrowShadowColor,\n },\n ref: mergeRefs(popoverRef, _ref),\n children: shouldRenderChildren ? props.children : null,\n id: popoverId,\n tabIndex: -1,\n role: \"dialog\",\n onKeyDown: callAllHandlers(props.onKeyDown, (event) => {\n if (closeOnEsc && event.key === \"Escape\") {\n onClose()\n }\n }),\n onBlur: callAllHandlers(props.onBlur, (event) => {\n const relatedTarget = getRelatedTarget(event)\n const targetIsPopover = contains(popoverRef.current, relatedTarget)\n const targetIsTrigger = contains(triggerRef.current, relatedTarget)\n const isValidBlur = !targetIsPopover && !targetIsTrigger\n\n if (isOpen && closeOnBlur && isValidBlur) {\n onClose()\n }\n }),\n \"aria-labelledby\": hasHeader ? headerId : undefined,\n \"aria-describedby\": hasBody ? bodyId : undefined,\n }\n\n if (trigger === TRIGGER.hover) {\n popoverProps.role = \"tooltip\"\n popoverProps.onMouseEnter = callAllHandlers(props.onMouseEnter, () => {\n isHoveringRef.current = true\n })\n popoverProps.onMouseLeave = callAllHandlers(props.onMouseLeave, () => {\n isHoveringRef.current = false\n setTimeout(onClose, closeDelay)\n })\n }\n\n return popoverProps\n },\n [\n shouldRenderChildren,\n popoverId,\n hasHeader,\n headerId,\n hasBody,\n bodyId,\n trigger,\n closeOnEsc,\n onClose,\n isOpen,\n closeOnBlur,\n closeDelay,\n arrowShadowColor,\n arrowSize,\n ],\n )\n\n const getPopoverPositionerProps: PropGetter = useCallback(\n (props = {}, forwardedRef = null) =>\n getPopperProps(\n {\n ...props,\n style: {\n visibility: isOpen ? \"visible\" : \"hidden\",\n ...props.style,\n },\n },\n forwardedRef,\n ),\n [isOpen, getPopperProps],\n )\n\n const openTimeout = useRef<number>()\n const closeTimeout = useRef<number>()\n\n const getTriggerProps: PropGetter = useCallback(\n (props = {}, _ref = null) => {\n const triggerProps: HTMLProps = {\n ...props,\n ref: mergeRefs(triggerRef, _ref, referenceRef),\n id: triggerId,\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": isOpen,\n \"aria-controls\": popoverId,\n }\n\n if (trigger === TRIGGER.click) {\n triggerProps.onClick = callAllHandlers(props.onClick, onToggle)\n }\n\n if (trigger === TRIGGER.hover) {\n /**\n * Any content that shows on pointer hover should also show on keyboard focus.\n * Consider focus and blur to be the `hover` for keyboard users.\n *\n * @see https://www.w3.org/WAI/WCAG21/Understanding/content-on-hover-or-focus.html\n */\n triggerProps.onFocus = callAllHandlers(props.onFocus, onOpen)\n triggerProps.onBlur = callAllHandlers(props.onBlur, onClose)\n\n /**\n * Any content that shows on hover or focus must be dismissible.\n * This case pressing `Escape` will dismiss the popover\n */\n triggerProps.onKeyDown = callAllHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Escape\") {\n onClose()\n }\n })\n\n triggerProps.onMouseEnter = callAllHandlers(props.onMouseEnter, () => {\n isHoveringRef.current = true\n openTimeout.current = window.setTimeout(onOpen, openDelay)\n })\n\n triggerProps.onMouseLeave = callAllHandlers(props.onMouseLeave, () => {\n isHoveringRef.current = false\n\n if (openTimeout.current) {\n clearTimeout(openTimeout.current)\n openTimeout.current = undefined\n }\n\n closeTimeout.current = window.setTimeout(() => {\n if (isHoveringRef.current === false) {\n onClose()\n }\n }, closeDelay)\n })\n }\n\n return triggerProps\n },\n [\n triggerId,\n isOpen,\n popoverId,\n trigger,\n referenceRef,\n onToggle,\n onOpen,\n onClose,\n openDelay,\n closeDelay,\n ],\n )\n\n useEffect(() => {\n return () => {\n if (openTimeout.current) {\n clearTimeout(openTimeout.current)\n }\n if (closeTimeout.current) {\n clearTimeout(closeTimeout.current)\n }\n }\n }, [])\n\n const getHeaderProps: PropGetter = useCallback(\n (props = {}, ref = null) => ({\n ...props,\n id: headerId,\n ref: mergeRefs(ref, (node: HTMLElement | null) => {\n setHasHeader(!!node)\n }),\n }),\n [headerId],\n )\n\n const getBodyProps: PropGetter = useCallback(\n (props = {}, ref = null) => ({\n ...props,\n id: bodyId,\n ref: mergeRefs(ref, (node) => {\n setHasBody(!!node)\n }),\n }),\n [bodyId],\n )\n\n return {\n forceUpdate,\n isOpen,\n onClose,\n getArrowProps,\n getArrowInnerProps,\n getPopoverPositionerProps,\n getPopoverProps,\n getTriggerProps,\n getHeaderProps,\n getBodyProps,\n }\n}\n\nexport type UsePopoverReturn = ReturnType<typeof usePopover>\n","import { CloseButton, CloseButtonProps } from \"@chakra-ui/close-button\"\nimport { MaybeRenderProp } from \"@chakra-ui/react-utils\"\nimport {\n chakra,\n forwardRef,\n HTMLChakraProps,\n omitThemingProps,\n StylesProvider,\n SystemStyleObject,\n ThemingProps,\n useMultiStyleConfig,\n useStyles,\n useTheme,\n} from \"@chakra-ui/system\"\nimport { cx, runIfFn, __DEV__ } from \"@chakra-ui/utils\"\nimport * as React from \"react\"\nimport { PopoverProvider, usePopoverContext } from \"./popover-context\"\nimport { PopoverTransition, PopoverTransitionProps } from \"./popover-transition\"\nimport { usePopover, UsePopoverProps } from \"./use-popover\"\n\nexport { usePopoverContext }\n\nexport interface PopoverProps extends UsePopoverProps, ThemingProps<\"Popover\"> {\n /**\n * The content of the popover. It is usually the `PopoverTrigger`,\n * and `PopoverContent`\n */\n children?: MaybeRenderProp<{\n isOpen: boolean\n onClose: () => void\n forceUpdate: (() => void) | undefined\n }>\n}\n\n/**\n * Popover is used to bring attention to specific user interface elements,\n * typically to suggest an action or to guide users through a new experience.\n */\nexport const Popover: React.FC<PopoverProps> = (props) => {\n const styles = useMultiStyleConfig(\"Popover\", props)\n\n const { children, ...rest } = omitThemingProps(props)\n const theme = useTheme()\n const context = usePopover({ ...rest, direction: theme.direction })\n\n return (\n <PopoverProvider value={context}>\n <StylesProvider value={styles}>\n {runIfFn(children, {\n isOpen: context.isOpen,\n onClose: context.onClose,\n forceUpdate: context.forceUpdate,\n })}\n </StylesProvider>\n </PopoverProvider>\n )\n}\n\nif (__DEV__) {\n Popover.displayName = \"Popover\"\n}\n\n/**\n * PopoverTrigger opens the popover's content. It must be an interactive element\n * such as `button` or `a`.\n */\nexport const PopoverTrigger: React.FC = (props) => {\n // enforce a single child\n const child: any = React.Children.only(props.children)\n const { getTriggerProps } = usePopoverContext()\n return React.cloneElement(child, getTriggerProps(child.props, child.ref))\n}\n\nif (__DEV__) {\n PopoverTrigger.displayName = \"PopoverTrigger\"\n}\n\nexport interface PopoverContentProps extends PopoverTransitionProps {\n rootProps?: HTMLChakraProps<\"div\">\n}\n\nexport const PopoverContent = forwardRef<PopoverContentProps, \"section\">(\n (props, ref) => {\n const { rootProps, ...contentProps } = props\n\n const { getPopoverProps, getPopoverPositionerProps } = usePopoverContext()\n\n const styles = useStyles()\n const contentStyles: SystemStyleObject = {\n position: \"relative\",\n display: \"flex\",\n flexDirection: \"column\",\n ...styles.content,\n }\n\n return (\n <chakra.div\n {...getPopoverPositionerProps(rootProps)}\n __css={styles.popper}\n className=\"chakra-popover__popper\"\n >\n <PopoverTransition\n {...getPopoverProps(contentProps, ref)}\n className={cx(\"chakra-popover__content\", props.className)}\n __css={contentStyles}\n />\n </chakra.div>\n )\n },\n)\n\nif (__DEV__) {\n PopoverContent.displayName = \"PopoverContent\"\n}\n\nexport interface PopoverHeaderProps extends HTMLChakraProps<\"header\"> {}\n\n/**\n * PopoverHeader is the accessible header or label\n * for the popover's content and it is first announced by screenreaders.\n */\nexport const PopoverHeader = forwardRef<PopoverHeaderProps, \"header\">(\n (props, ref) => {\n const { getHeaderProps } = usePopoverContext()\n\n const styles = useStyles()\n\n return (\n <chakra.header\n {...getHeaderProps(props, ref)}\n className={cx(\"chakra-popover__header\", props.className)}\n __css={styles.header}\n />\n )\n },\n)\n\nif (__DEV__) {\n PopoverHeader.displayName = \"PopoverHeader\"\n}\n\nexport interface PopoverBodyProps extends HTMLChakraProps<\"div\"> {}\n\n/**\n * PopoverBody is the main content area for the popover. Should contain\n * at least one interactive element.\n */\nexport const PopoverBody = forwardRef<PopoverBodyProps, \"div\">((props, ref) => {\n const { getBodyProps } = usePopoverContext()\n\n const styles = useStyles()\n\n return (\n <chakra.div\n {...getBodyProps(props, ref)}\n className={cx(\"chakra-popover__body\", props.className)}\n __css={styles.body}\n />\n )\n})\n\nif (__DEV__) {\n PopoverBody.displayName = \"PopoverBody\"\n}\nexport interface PopoverFooterProps extends HTMLChakraProps<\"footer\"> {}\n\nexport const PopoverFooter: React.FC<PopoverFooterProps> = (props) => {\n const styles = useStyles()\n return (\n <chakra.footer\n {...props}\n className={cx(\"chakra-popover__footer\", props.className)}\n __css={styles.footer}\n />\n )\n}\n\nif (__DEV__) {\n PopoverFooter.displayName = \"PopoverFooter\"\n}\n\nexport type PopoverCloseButtonProps = CloseButtonProps\n\nexport const PopoverCloseButton: React.FC<CloseButtonProps> = (props) => {\n const { onClose } = usePopoverContext()\n const styles = useStyles()\n return (\n <CloseButton\n size=\"sm\"\n onClick={onClose}\n className={cx(\"chakra-popover__close-btn\", props.className)}\n __css={styles.closeButton}\n {...props}\n />\n )\n}\n\nif (__DEV__) {\n PopoverCloseButton.displayName = \"PopoverCloseButton\"\n}\n\nexport interface PopoverArrowProps extends HTMLChakraProps<\"div\"> {}\n\nexport const PopoverArrow: React.FC<PopoverArrowProps> = (props) => {\n const { bg, bgColor, backgroundColor } = props\n const { getArrowProps, getArrowInnerProps } = usePopoverContext()\n const styles = useStyles()\n const arrowBg = bg ?? bgColor ?? backgroundColor\n return (\n <chakra.div\n {...getArrowProps()}\n className=\"chakra-popover__arrow-positioner\"\n >\n <chakra.div\n className={cx(\"chakra-popover__arrow\", props.className)}\n {...getArrowInnerProps(props)}\n __css={{\n ...styles.arrow,\n \"--popper-arrow-bg\": arrowBg\n ? `colors.${arrowBg}, ${arrowBg}`\n : undefined,\n }}\n />\n </chakra.div>\n )\n}\n\nif (__DEV__) {\n PopoverArrow.displayName = \"PopoverArrow\"\n}\n","import { useFormControlContext } from \"@chakra-ui/form-control\"\nimport { useBoolean, useControllableProp, useId } from \"@chakra-ui/hooks\"\nimport { mergeRefs, PropGetter } from \"@chakra-ui/react-utils\"\nimport { ariaAttr, callAllHandlers, dataAttr, warn } from \"@chakra-ui/utils\"\nimport { visuallyHiddenStyle } from \"@chakra-ui/visually-hidden\"\nimport {\n ChangeEvent,\n SyntheticEvent,\n useCallback,\n useRef,\n useState,\n} from \"react\"\nimport { useRadioGroupContext } from \"./radio-group\"\n\n/**\n * @todo use the `useClickable` hook here\n * to manage the isFocusable & isDisabled props\n */\nexport interface UseRadioProps {\n /**\n * id assigned to input\n */\n id?: string\n /**\n * The name of the input field in a radio\n * (Useful for form submission).\n */\n name?: string\n /**\n * The value to be used in the radio button.\n * This is the value that will be returned on form submission.\n */\n value?: string | number\n /**\n * If `true`, the radio will be checked.\n * You'll need to pass `onChange` to update its value (since it is now controlled)\n */\n isChecked?: boolean\n /**\n * If `true`, the radio will be initially checked.\n *\n * @deprecated Please use `defaultChecked` which mirrors the default prop\n * name for radio elements.\n */\n defaultIsChecked?: boolean\n /**\n * If `true`, the radio will be initially checked.\n */\n defaultChecked?: boolean\n /**\n * If `true`, the radio will be disabled\n */\n isDisabled?: boolean\n /**\n * If `true` and `isDisabled` is true, the radio will remain\n * focusable but not interactive.\n */\n isFocusable?: boolean\n /**\n * If `true`, the radio will be read-only\n */\n isReadOnly?: boolean\n /**\n * If `true`, the radio button will be invalid. This also sets `aria-invalid` to `true`.\n */\n isInvalid?: boolean\n /**\n * If `true`, the radio button will be required. This also sets `aria-required` to `true`.\n */\n isRequired?: boolean\n /**\n * Function called when checked state of the `input` changes\n */\n onChange?: (event: ChangeEvent<HTMLInputElement>) => void\n /**\n * @internal\n */\n \"data-radiogroup\"?: any\n}\n\nexport function useRadio(props: UseRadioProps = {}) {\n const {\n defaultIsChecked,\n defaultChecked = defaultIsChecked,\n isChecked: isCheckedProp,\n isFocusable,\n isDisabled: isDisabledProp,\n isReadOnly: isReadOnlyProp,\n isRequired: isRequiredProp,\n onChange,\n isInvalid: isInvalidProp,\n name,\n value,\n id: idProp,\n \"data-radiogroup\": dataRadioGroup,\n ...htmlProps\n } = props\n\n const uuid = useId(undefined, \"radio\")\n\n const formControl = useFormControlContext()\n const group = useRadioGroupContext()\n\n const isWithinRadioGroup = !!group || !!dataRadioGroup\n const isWithinFormControl = !!formControl\n\n let id = isWithinFormControl && !isWithinRadioGroup ? formControl.id : uuid\n id = idProp ?? id\n\n const isDisabled = isDisabledProp ?? formControl?.isDisabled\n const isReadOnly = isReadOnlyProp ?? formControl?.isReadOnly\n const isRequired = isRequiredProp ?? formControl?.isRequired\n const isInvalid = isInvalidProp ?? formControl?.isInvalid\n\n const [isFocused, setFocused] = useBoolean()\n const [isHovered, setHovering] = useBoolean()\n const [isActive, setActive] = useBoolean()\n\n const ref = useRef<HTMLInputElement>(null)\n\n const [isCheckedState, setChecked] = useState(Boolean(defaultChecked))\n\n const [isControlled, isChecked] = useControllableProp(\n isCheckedProp,\n isCheckedState,\n )\n\n warn({\n condition: !!defaultIsChecked,\n message:\n 'The \"defaultIsChecked\" prop has been deprecated and will be removed in a future version. ' +\n 'Please use the \"defaultChecked\" prop instead, which mirrors default React checkbox behavior.',\n })\n\n const handleChange = useCallback(\n (event: ChangeEvent<HTMLInputElement>) => {\n if (isReadOnly || isDisabled) {\n event.preventDefault()\n return\n }\n\n if (!isControlled) {\n setChecked(event.target.checked)\n }\n\n onChange?.(event)\n },\n [isControlled, isDisabled, isReadOnly, onChange],\n )\n\n const onKeyDown = useCallback(\n (event: React.KeyboardEvent) => {\n if (event.key === \" \") {\n setActive.on()\n }\n },\n [setActive],\n )\n\n const onKeyUp = useCallback(\n (event: React.KeyboardEvent) => {\n if (event.key === \" \") {\n setActive.off()\n }\n },\n [setActive],\n )\n\n const getCheckboxProps: PropGetter = useCallback(\n (props = {}, ref = null) => ({\n ...props,\n ref,\n \"data-active\": dataAttr(isActive),\n \"data-hover\": dataAttr(isHovered),\n \"data-disabled\": dataAttr(isDisabled),\n \"data-invalid\": dataAttr(isInvalid),\n \"data-checked\": dataAttr(isChecked),\n \"data-focus\": dataAttr(isFocused),\n \"data-readonly\": dataAttr(isReadOnly),\n \"aria-hidden\": true,\n onMouseDown: callAllHandlers(props.onMouseDown, setActive.on),\n onMouseUp: callAllHandlers(props.onMouseUp, setActive.off),\n onMouseEnter: callAllHandlers(props.onMouseEnter, setHovering.on),\n onMouseLeave: callAllHandlers(props.onMouseLeave, setHovering.off),\n }),\n [\n isActive,\n isHovered,\n isDisabled,\n isInvalid,\n isChecked,\n isFocused,\n isReadOnly,\n setActive.on,\n setActive.off,\n setHovering.on,\n setHovering.off,\n ],\n )\n\n const { onFocus, onBlur } = formControl ?? {}\n\n const getInputProps: PropGetter<HTMLInputElement> = useCallback(\n (props = {}, forwardedRef = null) => {\n const trulyDisabled = isDisabled && !isFocusable\n\n return {\n ...props,\n id,\n ref: mergeRefs(forwardedRef, ref),\n type: \"radio\",\n name,\n value,\n onChange: callAllHandlers(props.onChange, handleChange),\n onBlur: callAllHandlers(onBlur, props.onBlur, setFocused.off),\n onFocus: callAllHandlers(onFocus, props.onFocus, setFocused.on),\n onKeyDown: callAllHandlers(props.onKeyDown, onKeyDown),\n onKeyUp: callAllHandlers(props.onKeyUp, onKeyUp),\n checked: isChecked,\n disabled: trulyDisabled,\n readOnly: isReadOnly,\n required: isRequired,\n \"aria-invalid\": ariaAttr(isInvalid),\n \"aria-disabled\": ariaAttr(trulyDisabled),\n \"aria-required\": ariaAttr(isRequired),\n \"data-readonly\": dataAttr(isReadOnly),\n style: visuallyHiddenStyle,\n }\n },\n [\n isDisabled,\n isFocusable,\n id,\n name,\n value,\n handleChange,\n onBlur,\n setFocused,\n onFocus,\n onKeyDown,\n onKeyUp,\n isChecked,\n isReadOnly,\n isRequired,\n isInvalid,\n ],\n )\n\n const getLabelProps: PropGetter = (props = {}, ref = null) => ({\n ...props,\n ref,\n onMouseDown: callAllHandlers(props.onMouseDown, stop),\n onTouchStart: callAllHandlers(props.onTouchStart, stop),\n \"data-disabled\": dataAttr(isDisabled),\n \"data-checked\": dataAttr(isChecked),\n \"data-invalid\": dataAttr(isInvalid),\n })\n\n const getRootProps: PropGetter = (props, ref = null) => ({\n ...props,\n ref,\n \"data-disabled\": dataAttr(isDisabled),\n \"data-checked\": dataAttr(isChecked),\n \"data-invalid\": dataAttr(isInvalid),\n })\n\n return {\n state: {\n isInvalid,\n isFocused,\n isChecked,\n isActive,\n isHovered,\n isDisabled,\n isReadOnly,\n isRequired,\n },\n getCheckboxProps,\n getInputProps,\n getLabelProps,\n getRootProps,\n htmlProps,\n }\n}\n\n/**\n * Prevent `onBlur` being fired when the checkbox label is touched\n */\nfunction stop(event: SyntheticEvent) {\n event.preventDefault()\n event.stopPropagation()\n}\n\nexport type UseRadioReturn = ReturnType<typeof useRadio>\n","import {\n chakra,\n forwardRef,\n layoutPropNames,\n omitThemingProps,\n SystemProps,\n SystemStyleObject,\n ThemingProps,\n useMultiStyleConfig,\n HTMLChakraProps,\n} from \"@chakra-ui/system\"\nimport { callAll, split, __DEV__ } from \"@chakra-ui/utils\"\nimport * as React from \"react\"\nimport { useRadioGroupContext } from \"./radio-group\"\nimport { useRadio, UseRadioProps } from \"./use-radio\"\n\ntype Omitted = \"onChange\" | \"defaultChecked\" | \"checked\"\ninterface BaseControlProps extends Omit<HTMLChakraProps<\"div\">, Omitted> {}\n\nexport interface RadioProps\n extends UseRadioProps,\n ThemingProps<\"Radio\">,\n BaseControlProps {\n /**\n * The spacing between the checkbox and its label text\n * @default 0.5rem\n * @type SystemProps[\"marginLeft\"]\n */\n spacing?: SystemProps[\"marginLeft\"]\n /**\n * If `true`, the radio will occupy the full width of its parent container\n *\n * @deprecated\n * This component defaults to 100% width,\n * please use the props `maxWidth` or `width` to configure\n */\n isFullWidth?: boolean\n}\n\n/**\n * Radio component is used in forms when a user needs to select a single value from\n * several options.\n *\n * @see Docs https://chakra-ui.com/radio\n */\nexport const Radio = forwardRef<RadioProps, \"input\">((props, ref) => {\n const group = useRadioGroupContext()\n const { onChange: onChangeProp, value: valueProp } = props\n\n const styles = useMultiStyleConfig(\"Radio\", { ...group, ...props })\n\n const ownProps = omitThemingProps(props)\n\n const {\n spacing = \"0.5rem\",\n children,\n isFullWidth,\n isDisabled = group?.isDisabled,\n isFocusable = group?.isFocusable,\n ...rest\n } = ownProps\n\n let isChecked = props.isChecked\n if (group?.value != null && valueProp != null) {\n isChecked = group.value === valueProp\n }\n\n let onChange = onChangeProp\n if (group?.onChange && valueProp != null) {\n onChange = callAll(group.onChange, onChangeProp)\n }\n\n const name = props?.name ?? group?.name\n\n const {\n getInputProps,\n getCheckboxProps,\n getLabelProps,\n getRootProps,\n htmlProps,\n } = useRadio({\n ...rest,\n isChecked,\n isFocusable,\n isDisabled,\n onChange,\n name,\n })\n\n const [layoutProps, otherProps] = split(htmlProps, layoutPropNames as any)\n\n const checkboxProps = getCheckboxProps(otherProps)\n const inputProps = getInputProps({}, ref)\n const labelProps = getLabelProps()\n const rootProps = Object.assign({}, layoutProps, getRootProps())\n\n const rootStyles = {\n width: isFullWidth ? \"full\" : undefined,\n display: \"inline-flex\",\n alignItems: \"center\",\n verticalAlign: \"top\",\n ...styles.container,\n }\n\n const checkboxStyles = {\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n ...styles.control,\n }\n\n const labelStyles: SystemStyleObject = {\n userSelect: \"none\",\n marginStart: spacing,\n ...styles.label,\n }\n\n return (\n <chakra.label className=\"chakra-radio\" {...rootProps} __css={rootStyles}>\n <input className=\"chakra-radio__input\" {...inputProps} />\n <chakra.span\n className=\"chakra-radio__control\"\n {...checkboxProps}\n __css={checkboxStyles}\n />\n {children && (\n <chakra.span\n className=\"chakra-radio__label\"\n {...labelProps}\n __css={labelStyles}\n >\n {children}\n </chakra.span>\n )}\n </chakra.label>\n )\n})\n\nif (__DEV__) {\n Radio.displayName = \"Radio\"\n}\n"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- (this["webpackJsonpconstruct-hub-webapp"]=this["webpackJsonpconstruct-hub-webapp"]||[]).push([[2],{107:function(e,t,n){"use strict";n.d(t,"b",(function(){return v})),n.d(t,"a",(function(){return m}));var a=n(6),c=n(5),r=n(203),o=n(0),i="prefersWarnOnExternalLinkClick",s=n(204),u=n(46),l=n(201),d=n(226),j=n(156),b=n(229),f=n(45),O=n(1),h=function(e){var t=e.href,n=e.isOpen,a=e.onClick,r=e.onClose,h=e.setShouldWarn,p=Object(o.useState)(!0),v=Object(c.a)(p,2),m=v[0],g=v[1];return Object(O.jsx)(u.a,{closeOnOverlayClick:!1,isOpen:n,onClose:r,children:Object(O.jsx)(u.h,{children:Object(O.jsxs)(u.d,{color:"blue.800",children:[Object(O.jsx)(u.g,{children:"Confirm"}),Object(O.jsxs)(u.b,{children:[Object(O.jsx)(l.a,{fontSize:"lg",mb:2,children:"This link is taking you to an external site"}),Object(O.jsx)(l.a,{bg:"gray.100",borderRadius:"sm",color:"blue.500",fontSize:"sm",mb:4,p:1,children:t}),Object(O.jsx)(d.a,{onChange:function(e){var t=!e.target.checked;g(t)},children:"Do not show this warning again."})]}),Object(O.jsxs)(u.f,{children:[Object(O.jsx)(j.a,{onClick:function(){g(!0),r()},variant:"ghost",children:"Cancel"}),Object(O.jsx)(b.a,{hasArrow:!0,label:t,placement:"top",children:Object(O.jsx)(f.a,{hasIcon:!1,hasWarning:!1,href:t,noFollow:!0,onClick:function(e){if(!m){h(m);try{localStorage.setItem(i,JSON.stringify(m))}catch(t){}}null===a||void 0===a||a(e),r()},children:Object(O.jsx)(j.a,{colorScheme:"blue",ml:4,rightIcon:Object(O.jsx)(s.a,{}),tabIndex:0,variant:"ghost",children:"Proceed"})})})]})]})})})},p=Object(o.createContext)((function(e){return e.onClick})),v=function(){return Object(o.useContext)(p)},m=function(e){var t=e.children,n=Object(o.useState)(null),s=Object(c.a)(n,2),u=s[0],l=s[1],d=Object(r.a)({onClose:function(){l(null)}}),j=d.isOpen,b=d.onOpen,f=d.onClose,v=Object(o.useState)((function(){try{var e,t=null!==(e=localStorage.getItem(i))&&void 0!==e?e:"true";return JSON.parse(t)}catch(n){return!0}})),m=Object(c.a)(v,2),g=m[0],x=m[1],k=Object(o.useCallback)((function(e){var t=e.href,n=e.onClick;if(!g)return n;return function(e){l({href:t,onClick:n}),e.preventDefault(),b()}}),[b,g]);return Object(O.jsxs)(p.Provider,{value:k,children:[t,Object(O.jsx)(h,Object(a.a)({isOpen:j,onClose:f,setShouldWarn:x},u))]})}},110:function(e,t,n){"use strict";n.d(t,"d",(function(){return o})),n.d(t,"f",(function(){return d})),n.d(t,"a",(function(){return j})),n.d(t,"b",(function(){return b})),n.d(t,"e",(function(){return f})),n.d(t,"c",(function(){return O}));var a,c,r,o,i=n(4),s=n(6),u=n(108),l=n(1);!function(e){e.DotNet="dotnet",e.TypeScript="typescript",e.Python="python",e.Go="golang",e.Java="java"}(o||(o={}));var d=(a={},Object(i.a)(a,o.TypeScript,o.TypeScript),Object(i.a)(a,o.Python,o.Python),Object(i.a)(a,o.Go,o.Go),Object(i.a)(a,o.Java,o.Java),Object(i.a)(a,o.DotNet,"csharp"),a),j=[o.TypeScript,o.Python,o.Java,o.Go,o.DotNet],b=(c={},Object(i.a)(c,o.TypeScript,"TypeScript"),Object(i.a)(c,o.Python,"Python"),Object(i.a)(c,o.Java,"Java"),Object(i.a)(c,o.Go,"Go"),Object(i.a)(c,o.DotNet,".NET"),c),f=new Set([o.Python,o.TypeScript,o.Java,o.DotNet]),O=(r={},Object(i.a)(r,o.TypeScript,{name:b.typescript,icon:function(e){return Object(l.jsxs)(u.a,Object(s.a)(Object(s.a)({},e),{},{"aria-hidden":"true",transform:"rotate(360)",viewBox:"0 0 256 256",children:[Object(l.jsx)("path",{d:"M0 128v128h256V0H0z",fill:"#007ACC"}),Object(l.jsx)("path",{d:"M56.611 128.85l-.081 10.483h33.32v94.68h23.57v-94.68h33.32v-10.28c0-5.69-.122-10.444-.284-10.566-.122-.162-20.399-.244-44.983-.203l-44.739.122-.122 10.443zM206.567 118.108c6.501 1.626 11.459 4.51 16.01 9.224 2.357 2.52 5.851 7.112 6.136 8.209.08.325-11.053 7.802-17.798 11.987-.244.163-1.22-.894-2.317-2.52-3.291-4.794-6.745-6.867-12.028-7.232-7.76-.529-12.759 3.535-12.718 10.32 0 1.992.284 3.17 1.097 4.796 1.707 3.535 4.876 5.648 14.832 9.955 18.326 7.884 26.168 13.085 31.045 20.48 5.445 8.25 6.664 21.415 2.966 31.208-4.063 10.646-14.14 17.88-28.323 20.277-4.388.772-14.79.65-19.504-.203-10.28-1.829-20.033-6.908-26.047-13.572-2.357-2.601-6.949-9.387-6.664-9.875.122-.162 1.178-.812 2.356-1.503 1.138-.65 5.446-3.13 9.509-5.486l7.355-4.267 1.544 2.276c2.154 3.291 6.867 7.802 9.712 9.305 8.167 4.308 19.383 3.698 24.909-1.26 2.357-2.153 3.332-4.388 3.332-7.68 0-2.966-.366-4.266-1.91-6.5-1.99-2.845-6.054-5.243-17.595-10.24-13.206-5.69-18.895-9.225-24.096-14.833-3.007-3.25-5.852-8.452-7.03-12.8-.975-3.616-1.22-12.678-.447-16.335 2.723-12.76 12.353-21.658 26.25-24.3 4.51-.853 14.994-.528 19.424.57z",fill:"#FFF"})]}))}}),Object(i.a)(r,o.Python,{name:b.python,icon:function(e){return Object(l.jsxs)(u.a,Object(s.a)(Object(s.a)({},e),{},{version:"1.0",viewBox:"0 0 110.421 109.846",children:[Object(l.jsxs)("defs",{children:[Object(l.jsxs)("linearGradient",{id:"a",children:[Object(l.jsx)("stop",{offset:"0",stopColor:"#ffe052"}),Object(l.jsx)("stop",{offset:"1",stopColor:"#ffc331"})]}),Object(l.jsx)("linearGradient",{gradientUnits:"userSpaceOnUse",id:"d",x1:"89.137",x2:"147.777",xlinkHref:"#a",y1:"111.921",y2:"168.101"}),Object(l.jsxs)("linearGradient",{id:"b",children:[Object(l.jsx)("stop",{offset:"0",stopColor:"#387eb8"}),Object(l.jsx)("stop",{offset:"1",stopColor:"#366994"})]}),Object(l.jsx)("linearGradient",{gradientUnits:"userSpaceOnUse",id:"c",x1:"55.549",x2:"110.149",xlinkHref:"#b",y1:"77.07",y2:"131.853"})]}),Object(l.jsxs)("g",{color:"#000",children:[Object(l.jsx)("path",{d:"M99.75 67.469c-28.032 0-26.281 12.156-26.281 12.156l.031 12.594h26.75V96H62.875s-17.938-2.034-17.938 26.25 15.657 27.281 15.657 27.281h9.343v-13.125s-.503-15.656 15.407-15.656h26.531s14.906.241 14.906-14.406V82.125s2.263-14.656-27.031-14.656zM85 75.938a4.808 4.808 0 014.813 4.812A4.808 4.808 0 0185 85.563a4.808 4.808 0 01-4.813-4.813A4.808 4.808 0 0185 75.937z",fill:"url(#c)",overflow:"visible",style:{marker:"none"},transform:"translate(-44.938 -67.469)"}),Object(l.jsx)("path",{d:"M100.546 177.315c28.032 0 26.281-12.156 26.281-12.156l-.03-12.594h-26.75v-3.781h37.374s17.938 2.034 17.938-26.25c0-28.285-15.657-27.282-15.657-27.282h-9.343v13.125s.503 15.657-15.407 15.657h-26.53s-14.907-.241-14.907 14.406v24.219s-2.263 14.656 27.031 14.656zm14.75-8.469a4.808 4.808 0 01-4.812-4.812 4.808 4.808 0 014.812-4.813 4.808 4.808 0 014.813 4.813 4.808 4.808 0 01-4.813 4.812z",fill:"url(#d)",overflow:"visible",style:{marker:"none"},transform:"translate(-44.938 -67.469)"})]})]}))}}),Object(i.a)(r,o.Java,{name:b.java,icon:function(e){return Object(l.jsxs)(u.a,Object(s.a)(Object(s.a)({},e),{},{"aria-hidden":"true",transform:"rotate(360)",viewBox:"0 0 256 346",children:[Object(l.jsx)("path",{d:"M82.554 267.473s-13.198 7.675 9.393 10.272c27.369 3.122 41.356 2.675 71.517-3.034 0 0 7.93 4.972 19.003 9.279-67.611 28.977-153.019-1.679-99.913-16.517M74.292 229.659s-14.803 10.958 7.805 13.296c29.236 3.016 52.324 3.263 92.276-4.43 0 0 5.526 5.602 14.215 8.666-81.747 23.904-172.798 1.885-114.296-17.532",fill:"#5382A1"}),Object(l.jsx)("path",{d:"M143.942 165.515c16.66 19.18-4.377 36.44-4.377 36.44s42.301-21.837 22.874-49.183c-18.144-25.5-32.059-38.172 43.268-81.858 0 0-118.238 29.53-61.765 94.6",fill:"#E76F00"}),Object(l.jsx)("path",{d:"M233.364 295.442s9.767 8.047-10.757 14.273c-39.026 11.823-162.432 15.393-196.714.471-12.323-5.36 10.787-12.8 18.056-14.362 7.581-1.644 11.914-1.337 11.914-1.337-13.705-9.655-88.583 18.957-38.034 27.15 137.853 22.356 251.292-10.066 215.535-26.195M88.9 190.48s-62.771 14.91-22.228 20.323c17.118 2.292 51.243 1.774 83.03-.89 25.978-2.19 52.063-6.85 52.063-6.85s-9.16 3.923-15.787 8.448c-63.744 16.765-186.886 8.966-151.435-8.183 29.981-14.492 54.358-12.848 54.358-12.848M201.506 253.422c64.8-33.672 34.839-66.03 13.927-61.67-5.126 1.066-7.411 1.99-7.411 1.99s1.903-2.98 5.537-4.27c41.37-14.545 73.187 42.897-13.355 65.647 0 .001 1.003-.895 1.302-1.697",fill:"#5382A1"}),Object(l.jsx)("path",{d:"M162.439.371s35.887 35.9-34.037 91.101c-56.071 44.282-12.786 69.53-.023 98.377-32.73-29.53-56.75-55.526-40.635-79.72C111.395 74.612 176.918 57.393 162.439.37",fill:"#E76F00"}),Object(l.jsx)("path",{d:"M95.268 344.665c62.199 3.982 157.712-2.209 159.974-31.64 0 0-4.348 11.158-51.404 20.018-53.088 9.99-118.564 8.824-157.399 2.421.001 0 7.95 6.58 48.83 9.201",fill:"#5382A1"})]}))}}),Object(i.a)(r,o.Go,{name:b.golang,icon:function(e){return Object(l.jsx)(u.a,Object(s.a)(Object(s.a)({},e),{},{"aria-hidden":"true",transform:"rotate(360)",viewBox:"0 0 512 192",children:Object(l.jsx)("path",{d:"M292.533 13.295l1.124.75c13.212 8.725 22.685 20.691 28.917 35.15 1.496 2.243.499 3.49-2.493 4.237l-5.063 1.296c-11.447 2.949-20.53 5.429-31.827 8.378l-6.443 1.678c-2.32.574-2.96.333-5.428-2.477l-.348-.399c-3.519-3.988-6.155-6.652-10.817-9.03l-.899-.443c-15.705-7.727-30.911-5.484-45.12 3.74-16.952 10.968-25.677 27.172-25.428 47.364.25 19.942 13.96 36.395 33.654 39.137 16.951 2.244 31.16-3.739 42.378-16.452 2.244-2.743 4.238-5.734 6.73-9.224h-48.11c-5.235 0-6.481-3.24-4.736-7.478l.864-2.035c3.204-7.454 8.173-18.168 11.4-24.294l.704-1.319c.862-1.494 2.612-3.513 5.977-3.513h80.224c3.603-11.415 9.449-22.201 17.246-32.407 18.198-23.931 40.135-36.396 69.8-41.63 25.427-4.488 49.359-1.995 71.046 12.713 19.694 13.461 31.909 31.66 35.15 55.59 4.237 33.654-5.485 61.075-28.668 84.508-16.453 16.702-36.645 27.172-59.829 31.908-6.73 1.247-13.461 1.496-19.942 2.244-22.685-.499-43.376-6.98-60.826-21.937-12.273-10.61-20.727-23.648-24.928-38.828a104.937 104.937 0 01-10.47 16.89c-17.949 23.683-41.381 38.39-71.046 42.38-24.43 3.24-47.115-1.497-67.058-16.454-18.447-13.96-28.917-32.407-31.66-55.34-3.24-27.173 4.737-51.603 21.19-73.041 17.7-23.184 41.132-37.891 69.8-43.126 22.999-4.16 45.037-1.595 64.936 11.464zM411.12 49.017l-.798.178c-23.183 5.235-38.14 19.942-43.624 43.375-4.488 19.444 4.985 39.138 22.934 47.115 13.71 5.983 27.421 5.235 40.633-1.496 19.694-10.22 30.413-26.175 31.66-47.613-.25-3.24-.25-5.734-.749-8.227-4.436-24.401-26.664-38.324-50.056-33.332zM116.416 94.564c.997 0 1.496.748 1.496 1.745l-.499 5.983c0 .997-.997 1.745-1.745 1.745l-54.344-.249c-.997 0-1.246-.748-.748-1.496l3.49-6.232c.499-.748 1.496-1.496 2.493-1.496h49.857zM121.9 71.63c.997 0 1.496.748 1.247 1.496l-1.995 5.983c-.249.997-1.246 1.495-2.243 1.495l-117.912.25c-.997 0-1.246-.499-.748-1.247l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247H121.9zm12.963-22.934c.997 0 1.246.748.748 1.496l-4.238 6.481c-.499.748-1.745 1.496-2.493 1.496l-90.24-.25c-.998 0-1.247-.498-.749-1.246l5.235-6.73c.499-.748 1.745-1.247 2.742-1.247h88.995z",fill:"#00ACD7"})}))}}),Object(i.a)(r,o.DotNet,{name:b.dotnet,icon:function(e){return Object(l.jsx)(u.a,Object(s.a)(Object(s.a)({},e),{},{"aria-hidden":"true",transform:"rotate(360)",viewBox:"0 0 32 32",children:Object(l.jsx)("path",{d:"M4.224 10.089v11.667h1.365v-8.438a12.58 12.58 0 00-.068-1.599h.052c.099.255.224.5.37.729l6 9.302h1.672V10.089h-1.359v8.203c-.016.573.016 1.146.083 1.714h-.031a13.986 13.986 0 00-.474-.781L5.995 10.09zm12.417 0v11.667h6.203l.005-1.281h-4.813v-4.047h4.214v-1.229h-4.214v-3.875h4.521V10.09zm7.25 0v1.234h3.354v10.432h1.365V11.323h3.391v-1.234zm-23.021 10a.86.86 0 00-.609.276.91.91 0 00-.26.641.901.901 0 001.542.641c.172-.167.271-.401.271-.641s-.099-.474-.271-.641a.876.876 0 00-.641-.276H.871z",fill:"#626262"})}))}}),r)},121:function(e,t,n){"use strict";n.d(t,"a",(function(){return i})),n.d(t,"b",(function(){return u}));var a=n(0),c=n(21),r=n(1),o=Object(a.createContext)({trackPageView:function(){}}),i=function(e){var t=e.children,n=Object(c.h)().pathname,i=Object(a.useRef)(null),s=Object(a.useCallback)((function(e){var t,a,c;i.current!==n&&(null===(t=window)||void 0===t||null===(a=t.AWSMA)||void 0===a||null===(c=a.ready)||void 0===c||c.call(a,(function(){document.dispatchEvent(new CustomEvent(window.AWSMA.TRIGGER_EVENT,{detail:e})),i.current=n})))}),[n]);return Object(r.jsx)(o.Provider,{value:{trackPageView:s},children:t})},s=n(6),u=function(e){var t=Object(a.useContext)(o).trackPageView,n=Object(c.h)().pathname,r=Object(a.useMemo)((function(){return{page:Object(s.a)({pageURL:window.location.href.replace("://localhost:3000","://constructs.local.dev")},e.page),event:{type:"pageview",name:e.event.name,description:e.event.description}}}),[n,e]);return Object(a.useCallback)((function(){return t(r)}),[t,r])}},123:function(e,t,n){"use strict";n.d(t,"a",(function(){return j})),n.d(t,"b",(function(){return b}));var a=n(6),c=n(24),r=n(17),o=n(234),i=n(201),s=n(65),u=n(1),l=["name"],d=["name","majorVersion"],j=Object(r.a)((function(e,t){var n=e.name,r=Object(c.a)(e,l);return n?Object(u.jsx)(o.a,Object(a.a)({alt:"".concat(s.b[n].name," Logo"),h:5,ref:t,src:s.b[n].imgsrc,w:5},r)):null})),b=Object(r.a)((function(e,t){var n=e.name,r=e.majorVersion,o=Object(c.a)(e,d);return n?Object(u.jsxs)(i.a,Object(a.a)(Object(a.a)({ref:t},o),{},{children:[s.b[n].name,void 0!==r?" v".concat(r):""]})):null}))},128:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var a=n(0),c=function(e,t){var n=t.limit,a=t.offset*n,c=a+n;return e.slice(a,c)},r=n(18),o=n(93),i=function(e){var t=e.cdkMajor,n=e.cdkType,i=e.limit,s=e.offset,u=void 0===s?0:s,l=e.query,d=void 0===l?"":l,j=e.language,b=void 0===j?null:j,f=e.languages,O=e.sort,h=e.tags,p=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.query,n=e.filters,c=e.sort,i=Object(o.b)();if(!i)throw new Error("This hook can only be called within a descendant of a <SearchProvider />");return Object(a.useMemo)((function(){return Object(r.a)(i.search({query:t,filters:n,sort:c}).values())}),[i,t,n,c])}({filters:Object(a.useMemo)((function(){return{cdkMajor:t,cdkType:n,language:null!==b&&void 0!==b?b:void 0,languages:f,tags:h}}),[t,n,b,f,h]),query:d,sort:O}),v=function(e,t){var n=null!==t&&void 0!==t?t:{},r=n.limit,o=void 0===r?25:r,i=n.offset,s=void 0===i?0:i,u=e?Math.floor(e.length/o):0;return Object(a.useMemo)((function(){return{page:c(e,{limit:o,offset:s>u?u:s}),pageLimit:u}}),[e,o,s,u])}(p,{offset:u,limit:i}),m=v.page,g=v.pageLimit;return Object(a.useMemo)((function(){return{results:p,page:m,pageLimit:g}}),[m,g,p])}},13:function(e,t,n){"use strict";n.d(t,"a",(function(){return a})),n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return r}));var a={PACKAGES_PREFIX:"/data",CATALOG_SUFFIX:"/catalog.json",ASSEMBLY_SUFFIX:"/assembly.json",METADATA_SUFFIX:"/metadata.json",CONFIG:"/config.json",STATS:"/stats.json"},c={CDK_TYPE:"cdk",LANGUAGE:"lang",LANGUAGES:"langs",OFFSET:"offset",SEARCH_QUERY:"q",SORT:"sort",SUBMODULE:"submodule",CDK_MAJOR:"cdkver",TAGS:"tags"},r={FAQ:"/faq",HOME:"/",PACKAGES:"/packages",SEARCH:"/search",SITE_TERMS:"/terms"}},138:function(e,t,n){"use strict";n.d(t,"a",(function(){return i})),n.d(t,"b",(function(){return u}));var a=n(27),c=n.n(a),r=n(41),o=n(13),i={sections:[{name:"Recently updated",showLastUpdated:10}]},s={featureFlags:{},packageLinks:[],featuredPackages:i},u=function(){var e=Object(r.a)(c.a.mark((function e(){var t;return c.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!window.configOverride){e.next=2;break}return e.abrupt("return",window.configOverride);case 2:return e.next=4,fetch(o.a.CONFIG);case 4:if((t=e.sent).ok){e.next=8;break}return console.log("Failed to fetch application config, using default values"),e.abrupt("return",s);case 8:return e.abrupt("return",t.json().catch((function(e){return console.error(e),console.log("Invalid config response, using default values"),s})));case 9:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()},140:function(e,t,n){"use strict";n.d(t,"a",(function(){return O}));var a=n(207),c=n(209),r=n(203),o=n(197),i=n(206),s=n(201),u=n(208),l=n(53),d=n(94),j=n(45),b=n(1),f="showing-dev-preview-banner",O=function(){var e,t=Object(r.a)({defaultIsOpen:JSON.parse(null!==(e=window.sessionStorage.getItem(f))&&void 0!==e?e:"true"),onClose:function(){return window.sessionStorage.setItem(f,"false")}}),n=t.isOpen,O=t.onClose;return Object(b.jsx)(o.a,{h:"max-content",children:Object(b.jsx)(i.a,{in:n,children:Object(b.jsxs)(d.a,{"aria-label":"Preview Banner",bg:"blue.500",border:"none",boxShadow:"none",color:"white",mt:4,mx:4,p:4,position:"relative",role:"alertdialog",children:[Object(b.jsx)(a.a,{h:5,left:4,position:"absolute",top:4,w:5}),Object(b.jsxs)(s.a,{fontSize:"md",mx:8,textAlign:"center",children:["This application is in Dev Preview. Some features may change. If you find any issues, please report them"," ",Object(b.jsx)(j.a,{color:"inherit",hasWarning:!1,href:"".concat(l.a,"/issues"),textDecoration:"underline",children:"here"})]}),Object(b.jsx)(u.a,{"aria-label":"Dismiss banner",colorScheme:"white",icon:Object(b.jsx)(c.a,{}),onClick:O,position:"absolute",right:4,size:"xs",top:3,variant:"ghost"})]})})})}},142:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var a=n(6),c=n(17),r=n(20),o=n(1),i=Object(c.a)((function(e,t){return Object(o.jsx)(r.a.form,Object(a.a)(Object(a.a)({},e),{},{ref:t}))}));i.displayName="Form"},143:function(e,t,n){"use strict";n.d(t,"a",(function(){return r}));var a=n(5),c=n(0),r=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=Object(c.useState)(e),r=Object(a.a)(n,2),o=r[0],i=r[1],s=t.delay,u=void 0===s?250:s,l=t.onChange;return Object(c.useEffect)((function(){var t=setTimeout((function(){i(e),null===l||void 0===l||l(e)}),u);return function(){clearTimeout(t)}}),[e,u,l]),o}},144:function(e,t,n){"use strict";n.d(t,"a",(function(){return u}));var a=n(6),c=n(24),r=n(17),o=n(220),i=n(1),s=["name","onClick"],u=Object(r.a)((function(e,t){var n=e.name,r=e.onClick,u=Object(c.a)(e,s);return Object(i.jsx)(o.a,Object(a.a)(Object(a.a)({_hover:{cursor:"pointer"},alignItems:"center",display:"flex",fontSize:"md",lineHeight:"base",listStyleType:"none",minH:8,onClick:r,onKeyDown:function(e){["Enter"," "].includes(e.key)&&(e.preventDefault(),r())},px:4,ref:t,role:"option",sx:{":hover, :focus":{bg:"gray.100"}},tabIndex:0},u),{},{children:n}))}));u.displayName="SearchItem"},172:function(e,t,n){},179:function(e,t,n){"use strict";n.r(t);var a={};n.r(a),n.d(a,"initialize",(function(){return S})),n.d(a,"access",(function(){return T})),n.d(a,"checkForCookieConsent",(function(){return A})),n.d(a,"customizeCookies",(function(){return M})),n.d(a,"getConsentCookie",(function(){return I})),n.d(a,"hasConsent",(function(){return F}));var c,r,o=n(0),i=n.n(o),s=n(84),u=n.n(s),l=n(33),d=(n(172),n(150)),j=n(21),b=n(140),f=n(5),O=n(210),h=n(211),p=n(197),v=n(212),m=n(201),g=n(156),x=n(24),k=n(27),y=n.n(k),w=n(41),C=function(){new URLSearchParams(window.location.search).get("sb")},S=function(){var e=Object(w.a)(y.a.mark((function e(){return y.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,t){window.addEventListener("load",Object(w.a)(y.a.mark((function a(){var r,o,i;return y.a.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.prev=0,r={domain:window.location.hostname,language:navigator.language,__storeWriter:C()},a.next=4,n.e(13).then(n.t.bind(null,603,7));case 4:o=a.sent,i=o.AWSCShortbread,c=i(r),e(),a.next=13;break;case 10:a.prev=10,a.t0=a.catch(0),t(a.t0);case 13:case"end":return a.stop()}}),a,null,[[0,10]])}))))})));case 1:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),E=function(e){return function(){var t;if(!c)throw new Error("shortbread has not been initialized");return(t=c)[e].apply(t,arguments)}},T=E("access"),A=E("checkForCookieConsent"),M=E("customizeCookies"),I=E("getConsentCookie"),F=E("hasConsent"),z=n(1),P=S,D=Object(x.a)(a,["initialize"]),L=Object(o.createContext)({}),R=function(e){var t=e.children,n=Object(o.useState)(!1),a=Object(f.a)(n,2),c=a[0],r=a[1];return Object(o.useEffect)((function(){var e=!1;return P().then((function(){e||(D.checkForCookieConsent(),r(!0))})).catch((function(t){console.error(t),e||r(!1)})),function(){e=!0,r(!1)}}),[]),Object(z.jsx)(L.Provider,{value:c?D:{},children:t})},G=n(45),N=n(72),H=n(13),U={SERVICE_TERMS:{display:"AWS Service Terms",url:"https://aws.amazon.com/service-terms/",testId:"service-terms"},PRIVACY:{display:"Privacy",url:"https://aws.amazon.com/privacy/",testId:"privacy"},SITE_TERMS:{display:"Construct Hub Site Terms",url:H.c.SITE_TERMS,testId:"site-terms",isExternal:!1},LEGAL:{display:"Legal",url:"https://aws.amazon.com/legal/",testId:"legal"}},W=n(18),_=n(61),B=Object(_.a)("footer",["container","links","disclaimer","manageCookies"].concat(Object(W.a)(Object.values(U).map((function(e){return e.testId}))))),V=function(){var e=Object(o.useContext)(L).customizeCookies;return Object(z.jsxs)(O.a,{align:"center",as:"footer",bg:"blue.800",color:"white","data-testid":B.container,direction:"column",justify:"center",py:4,children:[Object(z.jsx)(h.a,{columnGap:6,columns:[1,2,4],"data-testid":B.links,children:Object.entries(U).map((function(e,t){var n=Object(f.a)(e,2),a=n[0],c=n[1],r=c.display,o=c.isExternal,i=void 0===o||o,s=c.testId,u=c.url;return Object(z.jsxs)(O.a,{align:"center",direction:{base:"column",md:"row"},children:[Object(z.jsx)(p.a,{display:{base:"none",md:0!==t?"initial":"none"},h:5,children:Object(z.jsx)(v.a,{borderColor:"white",mr:6,orientation:"vertical"})}),i?Object(z.jsx)(G.a,{color:"currentcolor","data-testid":B[s],hasWarning:!1,href:u,lineHeight:10,mx:"auto",children:r}):Object(z.jsx)(N.a,{color:"currentcolor","data-testid":B[s],lineHeight:10,mx:"auto",to:u,children:r}),Object(z.jsx)(p.a,{display:{base:"none",sm:t<2?"initial":"none",md:"none"},w:"100%",children:Object(z.jsx)(v.a,{borderColor:"white"})})]},a)}))}),Object(z.jsx)(m.a,{"data-testid":B.disclaimer,fontSize:"xs",mt:4,children:"2021 Amazon Web Services, Inc. All rights reserved."}),Object(z.jsx)(g.a,{color:"white","data-testid":B.manageCookies,fontSize:"xs",fontWeight:"normal",mt:4,onClick:e,variant:"link",children:"Manage Cookies"})]})},q=n(6),J=n(53),K=n(227),Q=["children"],Y=function(e){var t=e.children,n=Object(x.a)(e,Q);return Object(z.jsx)(K.a,Object(q.a)(Object(q.a)({colorScheme:"blue.800",strategy:"fixed"},n),{},{children:t}))},X=n(17),Z=["items"],$=function(e){var t=e.display,n=e.isNavLink,a=e.url;return n?Object(z.jsx)(N.a,{color:"blue.500",to:a,w:"100%",children:t}):Object(z.jsx)(G.a,{alignItems:"center",display:"flex",hasWarning:!1,href:a,justifyContent:"space-between",w:"100%",children:t})},ee=Object(X.a)((function(e,t){var n=e.items,a=Object(x.a)(e,Z);return Object(z.jsx)(K.f,Object(q.a)(Object(q.a)({},a),{},{ref:t,children:n.map((function(e,t){return"links"in e?Object(z.jsxs)(o.Fragment,{children:[Object(z.jsx)(K.d,{align:"left",title:e.display,children:e.links.map((function(e,t){return Object(z.jsx)(K.e,{children:Object(z.jsx)($,Object(q.a)({},e))},"".concat(e.display,"-").concat(t))}))}),t!==n.length-1&&Object(z.jsx)(K.c,{})]},"".concat(e.display,"-").concat(t)):Object(z.jsx)(K.e,{children:Object(z.jsx)($,Object(q.a)({},e))},"".concat(e.display,"-").concat(t))}))}))})),te=n(215),ne=["children"],ae=Object(X.a)((function(e,t){var n=e.children,a=Object(x.a)(e,ne);return Object(z.jsx)(K.b,Object(q.a)(Object(q.a)({as:g.a,color:"blue.800",fontWeight:"500",ref:t,rightIcon:Object(z.jsx)(te.a,{h:6,w:6}),size:"md",variant:"link"},a),{},{children:n}))})),ce=Object(_.a)("header",["container","title","gettingStartedTrigger","gettingStartedMenu","resourcesTrigger","resourcesMenu","navOpen","navClose","searchInput","searchIcon","mobileNav"]),re=function(){return Object(z.jsxs)(Y,{children:[Object(z.jsx)(ae,{"data-testid":ce.gettingStartedTrigger,children:"Getting Started"}),Object(z.jsx)(ee,{"data-testid":ce.gettingStartedMenu,items:J.b})]})},oe=n(218),ie=n(203),se=n(208),ue=n(73),le=n(232),de=n(46),je=n(235),be=n(95),fe=Object(_.a)("searchModal",["container"]),Oe=function(e){var t=e.isOpen,n=e.onClose,a=Object(be.a)(),c=a.query,r=a.onQueryChange,o=a.onSubmit,i=a.onSearch;return Object(z.jsx)(le.a,{children:Object(z.jsx)(de.a,{isOpen:t,onClose:n,children:Object(z.jsx)(de.h,{children:Object(z.jsxs)(de.d,{"data-testid":fe.container,children:[Object(z.jsx)(de.c,{}),Object(z.jsx)(de.g,{children:"Search"}),Object(z.jsx)(de.b,{children:Object(z.jsxs)(je.a,{pb:4,spacing:4,children:[Object(z.jsx)(ue.a,{onChange:r,onSubmit:o,value:c}),Object(z.jsx)(g.a,{colorScheme:"blue",onClick:function(){return i()},children:"Find Constructs"})]})})]})})})})},he=function(){var e=Object(ie.a)();return Object(z.jsxs)(j.d,{children:[Object(z.jsx)(j.b,{exact:!0,path:[H.c.HOME,H.c.SEARCH]}),Object(z.jsxs)(j.b,{path:"*",children:[Object(z.jsx)(p.a,{"data-testid":ce.searchInput,display:{base:"none",md:"initial"},children:Object(z.jsxs)(ue.a,{bg:"gray.50",children:[Object(z.jsx)(ue.b,{}),Object(z.jsx)(ue.c,{})]})}),Object(z.jsxs)(p.a,{display:{base:"initial",md:"none"},children:[Object(z.jsx)(se.a,{"aria-label":"Search Icon",borderRadius:"md","data-testid":ce.searchIcon,icon:Object(z.jsx)(oe.a,{color:"gray.600"}),onClick:e.onOpen,variant:"ghost"}),Object(z.jsx)(Oe,Object(q.a)({},e))]})]})]})},pe=n(222),ve=n(237),me=n(236),ge=n(221),xe={color:"blue.500",py:2,w:"full"},ke=function(e){var t=e.display,n=e.isNavLink,a=e.url;return n?Object(z.jsx)(N.a,Object(q.a)(Object(q.a)({to:a},xe),{},{children:t})):Object(z.jsx)(G.a,Object(q.a)(Object(q.a)({alignItems:"center",display:"flex",hasWarning:!1,href:a,justifyContent:"space-between"},xe),{},{children:t}))},ye=function(e){var t=e.title,n=e.items,a=e.testId;return Object(z.jsxs)(me.d,{"data-testid":a,w:"full",children:[Object(z.jsxs)(me.b,{px:0,py:4,children:[Object(z.jsx)(p.a,{flex:"1",textAlign:"left",children:Object(z.jsx)(ge.a,{as:"h3",size:"sm",children:t})}),Object(z.jsx)(me.c,{})]}),Object(z.jsx)(me.e,{p:0,w:"full",children:Object(z.jsx)(O.a,{direction:"column",w:"full",children:n.map((function(e,t){return"links"in e?Object(z.jsxs)(o.Fragment,{children:[Object(z.jsx)(ge.a,{as:"h4",borderBottom:"base",pb:2,pt:4,size:"xs",children:e.display}),e.links.map((function(e,t){return Object(o.createElement)(ke,Object(q.a)(Object(q.a)({},e),{},{key:"".concat(e.display,"-").concat(t)}))}))]},"".concat(e.display,"-").concat(t)):Object(o.createElement)(ke,Object(q.a)(Object(q.a)({},e),{},{key:"".concat(e.display,"-").concat(t)}))}))})})]})},we=function(e){var t=e.sections;return Object(z.jsx)(me.a,{allowMultiple:!0,allowToggle:!0,defaultIndex:t.map((function(e,t){return t})),w:"full",children:t.map((function(e,t){return Object(z.jsx)(ye,Object(q.a)({},e),"section-".concat(t))}))})},Ce=function(){return Object(z.jsx)(ge.a,{as:"h1",color:"blue.800","data-testid":ce.title,size:"lg",children:Object(z.jsxs)(l.b,{to:"/",children:[Object(z.jsx)(p.a,{as:"span",color:"blue.500",children:"Construct"})," ","Hub"]})})},Se=function(e){var t=e.isOpen,n=e.onClose;return Object(z.jsx)(le.a,{children:Object(z.jsxs)(ve.a,{isOpen:t,onClose:n,placement:"left",size:"xs",children:[Object(z.jsx)(de.h,{}),Object(z.jsxs)(ve.b,{"data-testid":ce.mobileNav,children:[Object(z.jsx)(de.c,{}),Object(z.jsx)(de.g,{display:"flex",justifyContent:"start",children:Object(z.jsx)(Ce,{})}),Object(z.jsx)(de.b,{children:Object(z.jsx)(je.a,{align:"start",justify:"start",spacing:4,children:Object(z.jsx)(we,{sections:[{title:"Getting Started",items:J.b,testId:ce.gettingStartedMenu},{title:"Resources",items:J.c,testId:ce.resourcesMenu}]})})})]})]})})},Ee=function(){var e=Object(ie.a)();return Object(z.jsxs)(z.Fragment,{children:[Object(z.jsx)(se.a,{"aria-label":"Navigation Menu",borderRadius:"md","data-testid":ce.navOpen,display:{md:"none"},icon:Object(z.jsx)(pe.a,{}),onClick:e.onOpen,variant:"ghost"}),Object(z.jsx)(Se,Object(q.a)({},e))]})},Te=function(){return Object(z.jsxs)(Y,{children:[Object(z.jsx)(ae,{"data-testid":ce.resourcesTrigger,children:"Resources"}),Object(z.jsx)(ee,{"data-testid":ce.resourcesMenu,items:J.c})]})},Ae=function(e){return Object(z.jsx)(d.b,Object(q.a)({align:"center",justify:"center",rowStart:1},e))},Me=function(){return Object(z.jsxs)(d.a,{alignItems:"center",as:"header",bg:"white",boxShadow:"base","data-testid":ce.container,gap:6,gridTemplateColumns:{base:"1fr max-content 1fr",md:"max-content minmax(12rem, 31rem) auto"},gridTemplateRows:"1fr",maxW:"100vw",position:"sticky",px:4,py:4,top:0,w:"100%",zIndex:"sticky",children:[Object(z.jsx)(Ae,{colStart:{base:2,md:1},justifySelf:{base:"center",md:"start"},children:Object(z.jsx)(Ce,{})}),Object(z.jsx)(Ae,{colStart:{base:3,md:2},justifySelf:{base:"end",md:"stretch"},children:Object(z.jsx)(he,{})}),Object(z.jsxs)(Ae,{colStart:{base:1,md:3},justifySelf:{base:"start",md:"end"},children:[Object(z.jsxs)(d.a,{display:{base:"none",md:"grid"},gap:4,gridTemplateColumns:"1fr 1fr",gridTemplateRows:"1fr",placeItems:"center",w:"100%",children:[Object(z.jsx)(p.a,{children:Object(z.jsx)(re,{})}),Object(z.jsx)(p.a,{children:Object(z.jsx)(Te,{})})]}),Object(z.jsx)(Ee,{})]})]})},Ie=n(74),Fe=["component"],ze=function(e){var t=e.component,n=Object(x.a)(e,Fe);return Object(z.jsx)(j.b,Object(q.a)(Object(q.a)({},n),{},{children:Object(z.jsx)(o.Suspense,{fallback:Object(z.jsx)(Ie.a,{}),children:Object(z.jsx)(t,{})})}))},Pe=Object(o.lazy)((function(){return Promise.all([n.e(0),n.e(10)]).then(n.bind(null,610))})),De=Object(o.lazy)((function(){return Promise.all([n.e(0),n.e(1),n.e(7)]).then(n.bind(null,608))})),Le=Object(o.lazy)((function(){return Promise.all([n.e(0),n.e(11)]).then(n.bind(null,289))})),Re=Object(o.lazy)((function(){return Promise.all([n.e(0),n.e(1),n.e(4),n.e(6)]).then(n.bind(null,605))})),Ge=Object(o.lazy)((function(){return Promise.all([n.e(0),n.e(1),n.e(9),n.e(8)]).then(n.bind(null,607))})),Ne=Object(o.lazy)((function(){return Promise.all([n.e(0),n.e(12)]).then(n.bind(null,611))})),He=function(){var e="/"!==Object(j.h)().pathname;return Object(z.jsxs)(d.a,{as:"main",bg:"bgPrimary",gridTemplateColumns:"1fr",gridTemplateRows:"auto auto 1fr auto",h:"100%",maxW:"100%",minH:"100vh",children:[Object(z.jsx)(Me,{}),e?Object(z.jsx)(b.a,{}):Object(z.jsx)("div",{}),Object(z.jsxs)(j.d,{children:[Object(z.jsx)(ze,{component:Pe,exact:!0,path:H.c.FAQ}),Object(z.jsx)(ze,{component:De,exact:!0,path:H.c.HOME}),Object(z.jsx)(ze,{component:Ne,exact:!0,path:H.c.SITE_TERMS}),Object(z.jsx)(ze,{component:Re,path:H.c.PACKAGES}),Object(z.jsx)(ze,{component:Ge,exact:!0,path:H.c.SEARCH}),Object(z.jsx)(ze,{component:Le,path:"*"})]}),Object(z.jsx)(V,{})]})},Ue=n(121),We=n(90),_e=n(89),Be=n(107),Ve=n(93),qe=n(88),Je=n(228),Ke=n(223),Qe=n(103),Ye=Qe.theme.components.Code,Xe=Object(q.a)(Object(q.a)({},Ye),{},{variants:Object(q.a)(Object(q.a)({},Ye.variants),{},{"code-block":Object(q.a)(Object(q.a)({},Ye.variants.subtle),{},{display:"block",whiteSpace:"pre"})})}),Ze={defaultProps:{borderColor:"rgba(0, 124, 253, 0.15)"}},$e=n(4),et=n(225),tt=function(e,t){return function(n){var a="function"===typeof e?e(n):e;return Object(q.a)(Object(q.a)({},a),{},{container:Object(q.a)(Object(q.a)({},a.container),t)})}},nt=Qe.theme.components.Tag,at=function(e){var t=e.reduce((function(e,t){var n=t.keyword;return(null===n||void 0===n?void 0:n.color)?Object(q.a)(Object(q.a)({},e),{},Object($e.a)({},n.color,tt(nt.variants.subtle,{background:Object(et.e)(n.color,.1),color:n.color}))):e}),{});return Object(q.a)(Object(q.a)({},nt),{},{baseStyle:{container:{fontWeight:"normal"}},variants:Object(q.a)(Object(q.a)({},nt.variants),{},{subtle:tt(nt.variants.subtle,{background:"#F2F2F2",color:"blue.800"})},t)})},ct=function(e){return Object(q.a)(Object(q.a)({},Qe.theme.components),{},{Code:Xe,Divider:Ze,Tag:at(e.Tag)})},rt={borders:{base:"1px solid rgba(0, 124, 253, 0.15)"},colors:Object(q.a)(Object(q.a)({},Qe.theme.colors),{},{blue:{50:"#dcf3ff",100:"#aed9ff",200:"#7dbeff",300:"#4aa4ff",400:"#1a8aff",500:"#0070e6",600:"#0057b4",700:"#003e82",800:"#002551",900:"#000d21"},bgPrimary:"#F8F8F8"}),radii:{card:"0.75rem"},sizes:{container:{"2xl":"120rem"}},shadows:{base:"0px 4px 15px rgba(40, 132, 178, 0.15)"}},ot=function(e){var t,n={Tag:null!==(t=e.packageTags)&&void 0!==t?t:[]};return Object(Ke.a)(Object(q.a)(Object(q.a)({},rt),{},{components:ct(n)}))},it=function(e){var t=e.children,n=Object(_e.b)(),a=n.loading,c=n.data;return a?Object(z.jsx)(Ie.a,{}):Object(z.jsx)(Je.a,{resetCSS:!0,theme:ot(c),children:t})};Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));u.a.render(Object(z.jsx)(i.a.StrictMode,{children:Object(z.jsx)(l.a,{children:Object(z.jsx)(R,{children:Object(z.jsx)(Ue.a,{children:Object(z.jsx)(_e.a,{children:Object(z.jsx)(We.a,{children:Object(z.jsx)(qe.a,{children:Object(z.jsx)(Ve.a,{children:Object(z.jsx)(it,{children:Object(z.jsx)(Be.a,{children:Object(z.jsx)(He,{})})})})})})})})})})}),document.getElementById("root")),r&&r instanceof Function&&n.e(14).then(n.bind(null,604)).then((function(e){var t=e.getCLS,n=e.getFID,a=e.getFCP,c=e.getLCP,o=e.getTTFB;t(r),n(r),a(r),c(r),o(r)}),(function(){})),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(e){e.unregister()})).catch((function(e){console.error(e.message)}))},45:function(e,t,n){"use strict";n.d(t,"a",(function(){return d}));var a=n(6),c=n(24),r=n(204),o=n(17),i=n(205),s=n(107),u=n(1),l=["children","hasIcon","hasWarning","href","onClick","noFollow"],d=Object(o.a)((function(e,t){var n=e.children,o=e.hasIcon,d=void 0===o||o,j=e.hasWarning,b=void 0===j||j,f=e.href,O=e.onClick,h=e.noFollow,p=Object(c.a)(e,l),v=Object(s.b)(),m="noopener noreferrer";return(b||h)&&(m+=" nofollow"),Object(u.jsxs)(i.a,Object(a.a)(Object(a.a)({color:"blue.500",href:f,isExternal:!0,onClick:b?v({href:f,onClick:O}):O,ref:t,rel:m},p),{},{children:[n," ",d&&Object(u.jsx)(r.a,{mb:1,ml:2})]}))}));d.displayName="ExternalLink"},53:function(e,t,n){"use strict";n.d(t,"a",(function(){return a})),n.d(t,"b",(function(){return c})),n.d(t,"c",(function(){return r}));var a="https://github.com/cdklabs/construct-hub",c=[{display:"FAQ",isNavLink:!0,url:"/faq"},{display:"Construct Hub on GitHub",url:a},{display:"Issues on GitHub",url:"".concat(a,"/issues")}],r=[{display:"AWS CDK",links:[{display:"Home",url:"https://aws.amazon.com/cdk/"},{display:"Getting Started",url:"https://docs.aws.amazon.com/cdk/latest/guide/getting_started.html"},{display:"Workshop",url:"https://cdkworkshop.com/"},{display:"Best Practices",url:"https://aws.amazon.com/blogs/devops/best-practices-for-developing-cloud-applications-with-aws-cdk"}]},{display:"CDK for Terraform",links:[{display:"Getting Started",url:"https://learn.hashicorp.com/tutorials/terraform/cdktf"},{display:"Tutorials",url:"https://learn.hashicorp.com/collections/terraform/cdktf"}]},{display:"CDK for Kubernetes",links:[{display:"Home",url:"https://cdk8s.io"},{display:"Getting Started",url:"https://cdk8s.io/docs/latest/getting-started"},{display:"Documentation",url:"https://cdk8s.io/docs/latest"},{display:"API Reference",url:"https://cdk8s.io/docs/latest/reference/index.html"}]},{display:"Community",links:[{display:"Slack",url:"https://join.slack.com/t/cdk-dev/shared_invite/zt-mso6p56d-qJp7SOTBvMaQuDrx7R2wHg"},{display:"Community Hub",url:"https://cdk.dev"}]}]},54:function(e,t,n){"use strict";var a;n.d(t,"a",(function(){return a})),function(e){e.NameAsc="asc",e.NameDesc="desc",e.PublishDateAsc="oldest",e.PublishDateDesc="newest",e.DownloadsAsc="downloadsAsc",e.DownloadsDesc="downloadsDesc"}(a||(a={}))},61:function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var a=function(e,t){return t.reduce((function(t,n){return t[n]="".concat(e,"-").concat(n),t}),{})}},65:function(e,t,n){"use strict";n.d(t,"c",(function(){return r})),n.d(t,"a",(function(){return i})),n.d(t,"b",(function(){return s}));var a,c,r,o=n(4);!function(e){e.awscdk="aws-cdk",e.cdktf="cdktf",e.cdk8s="cdk8s"}(r||(r={}));var i=(a={},Object(o.a)(a,r.awscdk,"AWS CDK"),Object(o.a)(a,r.cdktf,"CDKtf"),Object(o.a)(a,r.cdk8s,"CDK8s"),a),s=(c={},Object(o.a)(c,r.awscdk,{name:i[r.awscdk],imgsrc:"/assets/awscdk-icon.png"}),Object(o.a)(c,r.cdk8s,{name:i[r.cdk8s],imgsrc:"/assets/cdk8s-icon.png"}),Object(o.a)(c,r.cdktf,{name:i[r.cdktf],imgsrc:"/assets/cdktf-icon.png"}),c)},70:function(e,t,n){"use strict";n.d(t,"b",(function(){return l})),n.d(t,"a",(function(){return d}));var a,c=n(4),r=n(110),o=n(54),i=function(e){return function(t,n){var a=new Date(t.metadata.date),c=new Date(n.metadata.date);return a===c?0:e?c<a?1:-1:a<c?1:-1}},s=function(e){return function(t,n){return t.name.localeCompare(n.name)*(e?1:-1)}},u=function(e){return function(t,n){return t.downloads!==n.downloads?(t.downloads-n.downloads)*(e?1:-1):s(!e)(t,n)}},l=(a={},Object(c.a)(a,o.a.NameAsc,s(!0)),Object(c.a)(a,o.a.NameDesc,s(!1)),Object(c.a)(a,o.a.PublishDateAsc,i(!0)),Object(c.a)(a,o.a.PublishDateDesc,i(!1)),Object(c.a)(a,o.a.DownloadsAsc,u(!0)),Object(c.a)(a,o.a.DownloadsDesc,u(!1)),a),d={cdkType:function(e){if(e)return function(t){var n,a;return(null===(n=t.metadata)||void 0===n||null===(a=n.constructFramework)||void 0===a?void 0:a.name)===e}},cdkMajor:function(e){if("number"===typeof e)return function(t){var n,a;return(null===(n=t.metadata)||void 0===n||null===(a=n.constructFramework)||void 0===a?void 0:a.majorVersion)===e}},language:function(e){if(e&&e!==r.d.TypeScript)return function(t){var n;return void 0!==(null===(n=t.languages)||void 0===n?void 0:n[e])}},languages:function(e){var t,n=(null!==(t=null===e||void 0===e?void 0:e.length)&&void 0!==t?t:0)>0?new Set(e):void 0;if(n&&!n.has(r.d.TypeScript))return function(e){var t;return Object.keys(null!==(t=e.languages)&&void 0!==t?t:{}).some((function(e){return n.has(e)}))}},tags:function(e){if(e&&e.length)return function(t){var n,a,c;return null!==(n=null===(a=t.metadata)||void 0===a||null===(c=a.packageTags)||void 0===c?void 0:c.some((function(t){return e.includes(t.id)})))&&void 0!==n&&n}}}},72:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var a=n(6),c=n(205),r=n(33),o=n(1),i=function(e){return Object(o.jsx)(c.a,Object(a.a)({as:r.b},e))}},73:function(e,t,n){"use strict";n.d(t,"a",(function(){return g})),n.d(t,"b",(function(){return y})),n.d(t,"c",(function(){return D}));var a=n(6),c=n(24),r=n(218),o=n(203),i=n(216),s=n(217),u=n(233),l=n(156),d=n(0),j=n(95),b=n(142),f=n(61),O=Object(f.a)("searchBar",["input","searchIcon","searchButton","overlay","suggestionsList","suggestion"]),h=n(1),p=["children","hasButton","onSubmit","value","onChange"],v=Object(d.createContext)(void 0),m=function(){var e=Object(d.useContext)(v);if(!e)throw new Error("This component must be a child of a <SearchBar />");return e},g=function(e){var t=e.children,n=e.hasButton,f=e.onSubmit,m=e.value,g=e.onChange,x=Object(c.a)(e,p),k=Object(o.a)(),y=Object(d.useRef)(null),w=Object(j.a)();return Object(d.useEffect)((function(){var e=function(e){y.current&&e.target&&(y.current.contains(e.target)||k.onClose())},t=function(e){var t,n;"Escape"===e.key&&(null===(t=y.current)||void 0===t||null===(n=t.blur)||void 0===n||n.call(t),k.onClose())};return window.addEventListener("keyup",t),window.addEventListener("click",e),function(){window.removeEventListener("keyup",t),window.removeEventListener("click",e)}}),[]),Object(h.jsx)(v.Provider,{value:{query:null!==m&&void 0!==m?m:w.query,isOpen:k.isOpen},children:Object(h.jsxs)(b.a,{color:"initial",onSubmit:null!==f&&void 0!==f?f:w.onSubmit,pos:"relative",children:[Object(h.jsxs)(i.a,{pos:"relative",zIndex:k.isOpen?3:"initial",children:[n&&Object(h.jsx)(s.a,{children:Object(h.jsx)(r.a,{"data-testid":O.searchIcon})}),Object(h.jsx)(u.a,Object(a.a)({_focus:{boxShadow:"base",borderColor:"inherit"},bg:"white",boxShadow:k.isOpen?"base":"none","data-testid":O.input,onChange:null!==g&&void 0!==g?g:w.onQueryChange,onFocus:k.onOpen,placeholder:"Search 600+ construct libraries",ref:y,value:null!==m&&void 0!==m?m:w.query},x)),n?Object(h.jsx)(s.b,{display:{base:"none",md:"initial"},w:"9rem",children:Object(h.jsx)(l.a,{borderLeftRadius:"0",colorScheme:"blue","data-testid":O.searchButton,type:"submit",children:"Find Constructs"})}):Object(h.jsx)(s.b,{children:Object(h.jsx)(r.a,{"data-testid":O.searchIcon})})]}),t]})})},x=n(17),k=n(197),y=Object(x.a)((function(e,t){var n=m().isOpen;return Object(h.jsx)(k.a,Object(a.a)({bg:"gray.700","data-testid":O.overlay,display:n?"initial":"none",inset:"0",opacity:"0.5",pos:"fixed",ref:t,zIndex:"1"},e))})),w=n(220),C=n(212),S=n(235),E=n(201),T=n(21),A=n(128),M=n(143),I=n(87),F=n(94),z=n(123),P=n(144),D=Object(x.a)((function(e,t){var n=m(),c=n.query,r=n.isOpen,o=Object(M.a)(c),i=Object(T.g)().push,s=Object(A.a)({limit:5,offset:0,query:o}).page;return!r||s.length<1||!o?null:Object(h.jsx)(F.a,Object(a.a)(Object(a.a)({as:w.c,"data-testid":O.suggestionsList,left:0,ml:0,pos:"absolute",pt:10,px:0,ref:t,right:0,top:0,zIndex:2},e),{},{children:s.map((function(e,t){var n,c,r=null!==(n=null===(c=e.metadata)||void 0===c?void 0:c.constructFramework)&&void 0!==n?n:{},o=Boolean(r.name);return Object(h.jsxs)(h.Fragment,{children:[t>0&&Object(h.jsx)(C.a,{mx:4,w:"auto"}),Object(h.jsx)(P.a,{"data-testid":O.suggestion,name:Object(h.jsxs)(S.a,{align:"center",direction:"row",spacing:4,children:[Object(h.jsx)(z.a,Object(a.a)({},r)),Object(h.jsx)(E.a,{ml:o?0:9,children:e.name})]}),onClick:function(){return i(Object(I.a)(e))},py:2,textAlign:"left"},e.id)]})}))}))}))},74:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var a=n(219),c=n(202),r=n(1),o=function(){return Object(r.jsx)(a.a,{children:Object(r.jsx)(c.a,{size:"xl"})})}},75:function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));var a=n(27),c=n.n(a),r=n(41),o=n(5),i=n(0),s=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.initialValue,a=t.onSuccess,s=t.onError,u=Object(i.useState)(!1),l=Object(o.a)(u,2),d=l[0],j=l[1],b=Object(i.useState)(n),f=Object(o.a)(b,2),O=f[0],h=f[1],p=Object(i.useState)(),v=Object(o.a)(p,2),m=v[0],g=v[1],x=Object(i.useRef)(!1);Object(i.useEffect)((function(){return x.current=!0,function(){x.current=!1}}),[]);var k=Object(i.useCallback)(Object(r.a)(c.a.mark((function t(){var r,o=arguments;return c.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(x.current){t.next=2;break}return t.abrupt("return");case 2:return j(!0),g(void 0),t.prev=4,t.next=7,e.apply(void 0,o);case 7:r=t.sent,null===a||void 0===a||a(r),x.current&&(h(r),j(!1)),t.next=17;break;case 12:t.prev=12,t.t0=t.catch(4),console.error(t.t0),null===s||void 0===s||s(t.t0),x.current&&(h(n),g(t.t0),j(!1));case 17:case"end":return t.stop()}}),t,null,[[4,12]])}))),[s,a]);return Object(i.useMemo)((function(){return[k,{data:O,loading:d,error:m}]}),[k,O,d,m])}},87:function(e,t,n){"use strict";n.d(t,"b",(function(){return i})),n.d(t,"c",(function(){return u})),n.d(t,"a",(function(){return l}));var a=n(4),c=n(5),r=n(13),o=new RegExp(/git@github\.com:([a-zA-Z-]+)+\/?([a-zA-Z-]+)*(\.git)?/),i=function(e){try{var t=e,n=e.match(o);if(n){var a=Object(c.a)(n,3),r=a[1],i=a[2];t="https://github.com/".concat(r,"/").concat(i)}return{hostname:new URL(t).hostname,url:t}}catch(s){return}},s=function(e,t){var n=e;if(t){var a=function(e,t){var n=new URLSearchParams(t);return Object.entries(e).filter((function(e){return null!=Object(c.a)(e,2)[1]})).forEach((function(e){var t=Object(c.a)(e,2),a=t[0],r=t[1];n.set(a,"".concat(r))})),n.toString()}(t);a&&(n+="?".concat(a))}return n},u=function(e){var t,n=e.cdkMajor,c=e.cdkType,o=e.query,i=e.offset,u=e.language,l=e.languages,d=e.sort,j=e.tags;return s(r.c.SEARCH,(t={},Object(a.a)(t,r.b.SEARCH_QUERY,o),Object(a.a)(t,r.b.CDK_TYPE,c),Object(a.a)(t,r.b.CDK_MAJOR,n),Object(a.a)(t,r.b.LANGUAGE,u),Object(a.a)(t,r.b.LANGUAGES,(null===l||void 0===l?void 0:l.length)?l.join(","):null),Object(a.a)(t,r.b.SORT,d),Object(a.a)(t,r.b.OFFSET,null!==i&&void 0!==i?i:0),Object(a.a)(t,r.b.TAGS,(null===j||void 0===j?void 0:j.length)?j.join(","):null),t))},l=function(e){var t,n=e.name,c=e.version,o=e.language,i=e.submodule;return s("".concat(r.c.PACKAGES,"/").concat(n,"/v/").concat(c),(t={},Object(a.a)(t,r.b.SUBMODULE,i),Object(a.a)(t,r.b.LANGUAGE,o),t))}},88:function(e,t,n){"use strict";n.d(t,"b",(function(){return f})),n.d(t,"a",(function(){return O}));var a=n(5),c=n(0),r=n(27),o=n.n(r),i=n(41),s=n(13),u={packages:{},updated:"NOT_FOUND"},l=function(){var e=Object(i.a)(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch(s.a.STATS);case 2:if((t=e.sent).ok){e.next=6;break}return console.error("Could not retrieve package stats. Using empty stats."),e.abrupt("return",u);case 6:return e.abrupt("return",t.json().catch((function(e){return console.error(e),console.error("Error in package stats response. Using empty stats."),u})));case 7:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),d=n(75),j=n(1),b=Object(c.createContext)({loading:!1,data:void 0,error:void 0}),f=function(){return Object(c.useContext)(b)},O=function(e){var t=e.children,n=Object(d.a)(l),r=Object(a.a)(n,2),o=r[0],i=r[1];return Object(c.useEffect)((function(){o()}),[o]),Object(j.jsx)(b.Provider,{value:i,children:t})}},89:function(e,t,n){"use strict";n.d(t,"a",(function(){return j})),n.d(t,"b",(function(){return d}));var a=n(6),c=n(5),r=n(0),o=n(138),i=n(75),s=n(1),u=Object(r.createContext)({loading:!1,data:void 0,error:void 0}),l="construct-hub-config",d=function(){return Object(r.useContext)(u)},j=function(e){var t=e.children,n=Object(r.useState)((function(){try{var e=localStorage.getItem(l);return e?JSON.parse(e):void 0}catch(t){console.error(t)}})),d=Object(c.a)(n,2),j=d[0],b=d[1],f=Object(i.a)(o.b,{onSuccess:function(e){b(e);try{localStorage.setItem(l,JSON.stringify(e))}catch(t){console.error(t)}}}),O=Object(c.a)(f,2),h=O[0],p=O[1];return Object(r.useEffect)((function(){h()}),[]),Object(s.jsx)(u.Provider,{value:Object(a.a)(Object(a.a)({},p),{},{data:j}),children:t})}},90:function(e,t,n){"use strict";n.d(t,"b",(function(){return b})),n.d(t,"a",(function(){return f}));var a=n(5),c=n(0),r=n(27),o=n.n(r),i=n(41),s=n(13),u=function(){var e=Object(i.a)(o.a.mark((function e(){var t;return o.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch(s.a.CATALOG_SUFFIX);case 2:if((t=e.sent).ok){e.next=6;break}throw console.error(t.statusText),new Error("Failed fetching packages index: ".concat(t.statusText));case 6:return e.abrupt("return",t.json());case 7:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),l=n(75),d=n(1),j=Object(c.createContext)({loading:!1,data:void 0,error:void 0}),b=function(){return Object(c.useContext)(j)},f=function(e){var t=e.children,n=Object(l.a)(u),r=Object(a.a)(n,2),o=r[0],i=r[1];return Object(c.useEffect)((function(){o()}),[o]),Object(d.jsx)(j.Provider,{value:i,children:t})}},93:function(e,t,n){"use strict";n.d(t,"b",(function(){return x})),n.d(t,"a",(function(){return k}));var a=n(0),c=n(4),r=n(5),o=n(18),i=n(6),s=n(67),u=n(76),l=n(152),d=n.n(l),j=n(65),b=n(54),f=n(70),O=function(){function e(t,n){Object(s.a)(this,e),this.map=void 0,this.index=void 0,this.constructFrameworks=void 0;var a=t.reduce((function(e,t){var a,c,r,o=t.name,s=[o,t.version].join("@"),u=null!==(a=null===(c=n.packages[o])||void 0===c||null===(r=c.downloads)||void 0===r?void 0:r.npm)&&void 0!==a?a:0;return e.set(s,Object(i.a)(Object(i.a)({},t),{},{downloads:u,id:s})),e}),new Map);this.map=this.sort(a,b.a.PublishDateDesc),this.constructFrameworks=this.detectConstructFrameworks(),this.index=d()((function(){var e=this;this.ref("id"),this.field("name"),this.field("scope"),this.field("packageName"),this.field("description"),this.field("authorName"),this.field("authorEmail"),Object(o.a)(a.values()).forEach((function(t){var n=t.author,a=t.name.split("/"),c=Object(r.a)(a,2),o=c[0],i=c[1];o&&i&&(t.scope=o,t.packageName=i),"string"===typeof n&&(t.authorName=n),(null===n||void 0===n?void 0:n.name)&&(t.authorName=n.name),(null===n||void 0===n?void 0:n.email)&&(t.authorEmail=n.email),e.add(t)}))}))}return Object(u.a)(e,[{key:"search",value:function(e){var t=null!==e&&void 0!==e?e:{},n=t.query,a=t.filters,c=t.sort,r=n?this.query(n):new Map(this.map);return a&&(r=this.filter(r,a)),c&&(r=this.sort(r,c)),r}},{key:"query",value:function(e){var t=this,n=[];try{n=this.index.search(e)}catch(a){console.error(a)}return n.reduce((function(e,n){var a=n.ref,c=t.map.get(a);return c&&e.set(a,c),e}),new Map)}},{key:"filter",value:function(e,t){var n=t.cdkType,a=t.cdkMajor,c=t.language,r=t.languages,o=t.tags,i=new Map(e),s=[f.a.cdkType(n),f.a.cdkMajor(n?a:void 0),f.a.language(c),f.a.languages(r),f.a.tags(o)].filter(Boolean);return i.forEach((function(e){var t=!1;s.forEach((function(n){t||n(e)||(t=!0)})),t&&i.delete(e.id)})),i}},{key:"sort",value:function(e,t){return t?new Map(Object(o.a)(e.entries()).sort((function(e,n){var a=Object(r.a)(e,2)[1],c=Object(r.a)(n,2)[1];return f.b[t](a,c)}))):e}},{key:"detectConstructFrameworks",value:function(){var e;return Object(o.a)(this.map.values()).reduce((function(e,t){var n,a,c=t.metadata,r=null===c||void 0===c||null===(n=c.constructFramework)||void 0===n?void 0:n.name,o=null===c||void 0===c||null===(a=c.constructFramework)||void 0===a?void 0:a.majorVersion;if(r){var i=e[r];void 0===o||i.majorVersions.includes(o)||i.majorVersions.push(o),i.pkgCount+=1}return e}),(e={},Object(c.a)(e,j.c.awscdk,{majorVersions:[],pkgCount:0}),Object(c.a)(e,j.c.cdk8s,{majorVersions:[],pkgCount:0}),Object(c.a)(e,j.c.cdktf,{majorVersions:[],pkgCount:0}),e))}}]),e}(),h=n(74),p=n(90),v=n(88),m=n(1),g=Object(a.createContext)(void 0),x=function(){return Object(a.useContext)(g)},k=function(e){var t=e.children,n=Object(p.b)(),c=n.data,r=n.loading,o=Object(v.b)(),i=o.data,s=o.loading,u=Object(a.useMemo)((function(){if(void 0!==(null===c||void 0===c?void 0:c.packages)&&!r&&(void 0!==i&&!s))return new O(c.packages,i)}),[c,r,i,s]);return u?Object(m.jsx)(g.Provider,{value:u,children:t}):Object(m.jsx)(h.a,{})}},94:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var a=n(6),c=n(17),r=n(197),o=n(1),i=Object(c.a)((function(e,t){return Object(o.jsx)(r.a,Object(a.a)({bg:"white",border:"base",borderRadius:"card",boxShadow:"base",p:2,ref:t},e))}));i.displayName="Card"},95:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var a=n(5),c=n(0),r=n(21),o=n(87),i=function(){var e,t,n,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},s=Object(c.useState)(null!==(e=i.defaultQuery)&&void 0!==e?e:""),u=Object(a.a)(s,2),l=u[0],d=u[1],j=Object(c.useState)(i.defaultCdkType),b=Object(a.a)(j,2),f=b[0],O=b[1],h=Object(c.useState)(i.defaultCdkMajor),p=Object(a.a)(h,2),v=p[0],m=p[1],g=Object(c.useState)(null!==(t=i.defaultLanguages)&&void 0!==t?t:[]),x=Object(a.a)(g,2),k=x[0],y=x[1],w=Object(c.useState)(null!==(n=i.defaultTags)&&void 0!==n?n:[]),C=Object(a.a)(w,2),S=C[0],E=C[1],T=Object(c.useState)(i.defaultLanguage),A=Object(a.a)(T,2),M=A[0],I=A[1],F=Object(c.useState)(i.defaultSort),z=Object(a.a)(F,2),P=z[0],D=z[1],L=Object(r.g)(),R=L.push,G=L.replace,N=function(e){e.preventDefault(),d(e.target.value)},H=Object(c.useCallback)((function(e){((null===e||void 0===e?void 0:e.replace)?G:R)(Object(o.c)({cdkType:f,cdkMajor:v,language:M,languages:k,query:l,sort:P,tags:S}))}),[f,v,M,k,R,l,G,P,S]),U=Object(c.useCallback)((function(e){null===e||void 0===e||e.preventDefault(),H()}),[H]);return Object(c.useMemo)((function(){return{cdkMajor:v,cdkType:f,language:M,languages:k,onLanguageChange:I,onQueryChange:N,onSearch:H,onSubmit:U,query:l,setCdkMajor:m,setCdkType:O,setLanguage:I,setLanguages:y,setTags:E,setQuery:d,setSort:D,sort:P,tags:S}}),[v,f,M,k,H,U,l,P,S])}}},[[179,3,5]]]);
2
- //# sourceMappingURL=main.fd06cc71.chunk.js.map