construct-hub-webapp 0.1.486 → 0.1.490
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/asset-manifest.json +24 -24
- package/build/index.html +1 -1
- package/build/static/css/main.efe592a7.css +2 -0
- package/build/static/css/main.efe592a7.css.map +1 -0
- package/build/static/js/19.6c0c3bb2.chunk.js +2 -0
- package/build/static/js/19.6c0c3bb2.chunk.js.map +1 -0
- package/build/static/js/283.e48c9b37.chunk.js +2 -0
- package/build/static/js/283.e48c9b37.chunk.js.map +1 -0
- package/build/static/js/{502.275f06f6.chunk.js → 439.94405d44.chunk.js} +3 -3
- package/build/static/js/{502.275f06f6.chunk.js.LICENSE.txt → 439.94405d44.chunk.js.LICENSE.txt} +0 -0
- package/build/static/js/439.94405d44.chunk.js.map +1 -0
- package/build/static/js/51.cd3ab6c3.chunk.js +2 -0
- package/build/static/js/51.cd3ab6c3.chunk.js.map +1 -0
- package/build/static/js/540.2b86534a.chunk.js +2 -0
- package/build/static/js/{540.85e0d93a.chunk.js.map → 540.2b86534a.chunk.js.map} +1 -1
- package/build/static/js/543.a3de21c6.chunk.js +2 -0
- package/build/static/js/543.a3de21c6.chunk.js.map +1 -0
- package/build/static/js/{577.d5b9ef00.chunk.js → 577.968f867e.chunk.js} +2 -2
- package/build/static/js/{577.d5b9ef00.chunk.js.map → 577.968f867e.chunk.js.map} +1 -1
- package/build/static/js/58.87aebf6e.chunk.js +2 -0
- package/build/static/js/58.87aebf6e.chunk.js.map +1 -0
- package/build/static/js/679.dddc0a34.chunk.js +2 -0
- package/build/static/js/679.dddc0a34.chunk.js.map +1 -0
- package/build/static/js/main.011f4b24.js +3 -0
- package/build/static/js/{main.50cddec1.js.LICENSE.txt → main.011f4b24.js.LICENSE.txt} +0 -0
- package/build/static/js/main.011f4b24.js.map +1 -0
- package/package.json +3 -3
- package/scripts/proxy-server.js +3 -1
- package/build/static/css/main.60c3637f.css +0 -2
- package/build/static/css/main.60c3637f.css.map +0 -1
- package/build/static/js/19.a588ef1b.chunk.js +0 -2
- package/build/static/js/19.a588ef1b.chunk.js.map +0 -1
- package/build/static/js/229.50ab3802.chunk.js +0 -2
- package/build/static/js/229.50ab3802.chunk.js.map +0 -1
- package/build/static/js/283.a041037a.chunk.js +0 -2
- package/build/static/js/283.a041037a.chunk.js.map +0 -1
- package/build/static/js/502.275f06f6.chunk.js.map +0 -1
- package/build/static/js/51.a4435f89.chunk.js +0 -2
- package/build/static/js/51.a4435f89.chunk.js.map +0 -1
- package/build/static/js/540.85e0d93a.chunk.js +0 -2
- package/build/static/js/543.31c652ce.chunk.js +0 -2
- package/build/static/js/543.31c652ce.chunk.js.map +0 -1
- package/build/static/js/679.5a3ba75b.chunk.js +0 -2
- package/build/static/js/679.5a3ba75b.chunk.js.map +0 -1
- package/build/static/js/main.50cddec1.js +0 -3
- package/build/static/js/main.50cddec1.js.map +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkconstruct_hub_webapp=self.webpackChunkconstruct_hub_webapp||[]).push([[51],{55051:function(e,n,t){t.r(n),t.d(n,{default:function(){return we}});var r,a=t(28735),i=t(41712),o=t(777),s=t(42982),l=t(4942),c=t(1413),u=t(70885),d=t(72791),f=t(30791),v=t(84586),h=t(3445),x=t(59534),m=t(16478),g=(r={},(0,l.Z)(r,m.W.NameAsc,"A-Z"),(0,l.Z)(r,m.W.NameDesc,"Z-A"),(0,l.Z)(r,m.W.PublishDateAsc,"Oldest"),(0,l.Z)(r,m.W.PublishDateDesc,"Recently updated"),(0,l.Z)(r,m.W.DownloadsDesc,"Most downloads"),(0,l.Z)(r,m.W.DownloadsAsc,"Least downloads"),r),p=function(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return x.oJ.apply(void 0,["Search"].concat(n))},j={FILTERS:p("Filters"),RESULTS:p("Results"),SEARCH:p("Search"),SORT:p("Sort")},y=t(75272),b=t(10855),C=t(74817),k=t(80184),S=function(e){var n=e.name,t=e.hint,r=(0,b.Sx)({base:"auto",md:"right"});return(0,k.jsxs)(a.kC,{align:"center",mb:1,children:[(0,k.jsx)(a.X6,{as:"h3",size:"sm",w:"max-content",children:n}),t?(0,k.jsxs)(C.J2,{colorScheme:"dark",placement:r,strategy:"fixed",children:[(0,k.jsx)(C.xo,{children:(0,k.jsx)(a.kC,{"aria-label":"Hint: ".concat(n),as:"button","data-event":(0,x.oJ)(j.FILTERS,n,"Popover"),ml:2,children:(0,k.jsx)(y.UO,{h:3.5,w:3.5})})}),(0,k.jsxs)(C.yk,{bg:"gray.700",borderRadius:"base",color:"white",fontSize:"sm",mx:{base:"1rem",md:"initial"},shadow:"whiteAlpha.300",children:[(0,k.jsx)(C.QH,{bg:"gray.700"}),(0,k.jsx)(C.b,{children:(0,k.jsx)(a.xv,{children:t})})]})]}):null]})},Z=(0,t(88606).$)("searchRedesign",["page","searchDetails","nextPage","prevPage","goToPage","sortButton","sortDropdown","sortItem","filtersPanel","cdkTypeFilter","cdkVersionFilter","filterItem","languagesFilter"]),T=function(e){var n=e["data-testid"],t=e.value,r=e.onValueChange,i=e.options,o=e.name,s=e.hint;return(0,k.jsxs)(a.Kq,{"data-testid":n,spacing:1,children:[(0,k.jsx)(S,{hint:s,name:o}),(0,k.jsx)(h.Ee,{onChange:r,value:t,children:(0,k.jsx)(a.Kq,{spacing:1,children:i.map((function(e){var n=e.display,t=e.value,r=(0,x.oJ)(j.FILTERS,o,"Filter",n);return(0,k.jsx)(h.Y8,{"data-event":r,value:t,children:(0,k.jsx)(a.xv,{color:"textTertiary","data-event":r,"data-testid":Z.filterItem,"data-value":t,isTruncated:!0,children:n})},t)}))})})]})},w=t(29499),R=t(4487),D=function(e){var n=parseInt(e);return"NaN"==="".concat(n)?0:n},E=function(e){return e?decodeURIComponent(e).split(","):[]},F=function(e){return"undefined"===typeof window?null:new URL(window.location.href).searchParams.get(e)},K=function(e,n){var t=(0,R.K)().get(e);return(0,d.useMemo)((function(){return n?n(t):t}),[t])},O=function(){var e;return null!==(e=K(w.Tx.CDK_TYPE))&&void 0!==e?e:void 0},A=function(){return K(w.Tx.CDK_MAJOR,(function(e){return e?D(e):void 0}))},I=function(){return K(w.Tx.KEYWORDS,E)},P=function(){return K(w.Tx.LANGUAGES,E)},L=function(){var e;return null!==(e=K(w.Tx.SEARCH_QUERY))&&void 0!==e?e:""},W=function(){var e;return null!==(e=K(w.Tx.SORT))&&void 0!==e?e:void 0},q=function(){return K(w.Tx.TAGS,E)},M=t(45987),J=t(79271),N=t(19748),V=["offset"],U=function(){var e=(0,J.k6)().push;return(0,d.useCallback)((function(n){var t=null!==n&&void 0!==n?n:{},r=t.offset,a=(0,M.Z)(t,V);e((0,N.yc)((0,c.Z)((0,c.Z)((0,c.Z)({},function(){var e,n,t,r;return{query:null!==(e=F(w.Tx.SEARCH_QUERY))&&void 0!==e?e:"",keywords:E(F(w.Tx.KEYWORDS)),cdkType:null!==(n=F(w.Tx.CDK_TYPE))&&void 0!==n?n:void 0,cdkMajor:function(){var e=F(w.Tx.CDK_MAJOR);return e?D(e):void 0}(),languages:E(F(w.Tx.LANGUAGES)),offset:D(null!==(t=F(w.Tx.OFFSET))&&void 0!==t?t:""),sort:null!==(r=F(w.Tx.SORT))&&void 0!==r?r:void 0,tags:E(F(w.Tx.TAGS))}}()),a),{},{offset:null!==r&&void 0!==r?r:0})))}),[e])},z=function(){var e,n=O(),t=A(),r=U(),a=(0,v.A)(),i=(0,d.useMemo)((function(){var e=a.constructFrameworks,n=Object.entries(e).reduce((function(e,n){var t=(0,u.Z)(n,2),r=t[0],a=t[1];return a.pkgCount<1?e:(0,c.Z)((0,c.Z)({},e),{},(0,l.Z)({},r,(0,c.Z)({display:f.lQ[r],value:r},a)))}),{});return Object.keys(n).length?n:void 0}),[a]),o=(0,d.useMemo)((function(){var e;if(i&&n){var t=null===(e=i[n])||void 0===e?void 0:e.majorVersions;if(t)return(0,s.Z)(t).sort((function(e,n){return e-n})).map((function(e){return{value:e.toString(),display:"".concat(f.lQ[n]," v").concat(e)}}))}}),[i,n]);if(!i)return null;return(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(T,{"data-testid":Z.cdkTypeFilter,hint:"Choose the right CDK for your IaC technology: AWS CDK for AWS CloudFormation, CDKtf for Terraform, or CDK8s for Kubernetes.",name:"CDK Type",onValueChange:function(e){r({cdkType:e?e:void 0,cdkMajor:void 0})},options:[{display:"Any CDK Type",value:""}].concat((0,s.Z)(Object.values(i))),value:null!==n&&void 0!==n?n:""}),!!(o&&o.length>1)&&(0,k.jsx)(T,{"data-testid":Z.cdkVersionFilter,hint:"Choose the major version of the CDK you're using to see only constructs that will work with that version.",name:"CDK Major Version",onValueChange:function(e){var n=void 0;e&&(n=parseInt(e,10)),r({cdkMajor:n})},options:[{display:"Any Major Version",value:""}].concat((0,s.Z)(o)),value:null!==(e=null===t||void 0===t?void 0:t.toString())&&void 0!==e?e:""})]})},H=t(62732),_=t(81070),Y=t(65223),G=t(77231),Q=t(82504),$=function(e){var n=e.display,t=e.value,r=e.isDisabled,i=e.disabledHint,o=e.isChecked,s=e.onChange;return(0,k.jsx)(H.XZ,{isChecked:o,isDisabled:r,onChange:s,children:(0,k.jsx)(_.u,{hasArrow:!0,isDisabled:!r&&!i,label:i,placement:"right",children:(0,k.jsx)(a.xv,{color:"textTertiary","data-testid":Z.filterItem,"data-value":t,isTruncated:!0,children:n})})},t)},B=function(e){var n=e["data-testid"],t=e.initialItemCount,r=e.hint,i=e.name,o=e.options,s=e.values,l=e.onValueChange,u=(0,Y.qY)(),f=(0,x.z$)().trackCustomEvent,v=function(e){return function(){f((0,x.Q5)({name:(0,x.oJ)(j.FILTERS,i,"Filter",e.display)})),l(e.value)}},h=o,m=[];t&&(h=o.slice(0,t),m=o.slice(t,o.length));var g=m.length>0;return(0,k.jsxs)(a.kC,{"data-testid":n,direction:"column",children:[(0,k.jsx)(S,{hint:r,name:i}),(0,k.jsxs)(a.Kq,{mt:1,spacing:1,children:[h.map((function(e){return(0,d.createElement)($,(0,c.Z)((0,c.Z)({},e),{},{isChecked:s.includes(e.value),key:e.value,onChange:v(e)}))})),g&&(0,k.jsx)(G.UO,{animateOpacity:!0,in:u.isOpen,unmountOnExit:!0,children:(0,k.jsx)(a.Kq,{spacing:1,children:m.map((function(e){return(0,d.createElement)($,(0,c.Z)((0,c.Z)({},e),{},{isChecked:s.includes(e.value),key:e.value,onChange:v(e)}))}))})})]}),g&&(0,k.jsx)(a.kC,{align:"start",mt:1,children:(0,k.jsx)(Q.zx,{color:"textTertiary","data-event":(0,x.oJ)(j.FILTERS,i,"Show More"),fontWeight:"normal",leftIcon:u.isOpen?(0,k.jsx)(y.g8,{}):(0,k.jsx)(y.v4,{}),onClick:u.onToggle,size:"sm",textAlign:"left",variant:"link",w:"auto",children:u.isOpen?"Show fewer options (".concat(h.length,")"):"Show more options (".concat(m.length,")")})})]})},X=function(){var e=I(),n=(0,v.A)().keywords,t=U(),r=(0,d.useMemo)((function(){var t=(0,s.Z)(n.entries()).sort((function(e,n){return(0,u.Z)(e,2)[1]<(0,u.Z)(n,2)[1]?1:-1})).filter((function(n){var t=(0,u.Z)(n,1)[0];return!e.includes(t)})).map((function(e){var n=(0,u.Z)(e,1)[0];return{display:n,value:n}})).slice(0,25),r=e.filter((function(e){return!t.some((function(n){return n.value===e}))}));return[].concat((0,s.Z)(r.map((function(e){return{display:e,value:e}}))),(0,s.Z)(t))}),[n,e]);return(0,k.jsx)(B,{"data-testid":Z.languagesFilter,hint:"Focus the results by choosing one or more keywords reflecting the kind of construct you're looking for. Keywords are provided by construct authors.",initialItemCount:5,name:"Keywords",onValueChange:function(n){t({keywords:e.includes(n)?e.filter((function(e){return e!==n})):[].concat((0,s.Z)(e),[n])})},options:r,values:e})},ee=t(86617),ne=Object.entries(ee.k8).map((function(e){var n=(0,u.Z)(e,2),t=n[0],r=n[1];return(0,c.Z)({display:r,value:t},ee.dX.has(t)?{isDisabled:!1}:{isDisabled:!0,disabledHint:"".concat(ee.k8[t]," support is coming soon!")})})).sort((function(e,n){return e.isDisabled>n.isDisabled?1:-1})),te=function(){var e=P(),n=U();return(0,k.jsx)(B,{"data-testid":Z.languagesFilter,hint:"Choose one or more languages. Results include constructs for use with at least one of the selected languages.",name:"Programming Language",onValueChange:function(t){var r=t;n({languages:e.includes(r)?e.filter((function(e){return e!==r})):[].concat((0,s.Z)(e),[r])})},options:ne,values:e})},re=t(56804),ae=function(){var e=(0,re.E)("packageTags"),n=(0,re.E)("packageTagGroups"),t=(0,d.useMemo)((function(){var t,r=new Map;return null===n||void 0===n||n.forEach((function(e){r.set(e.id,e)})),function(e,n){return e.reduce((function(e,t){var r,a,i,o=null===(r=t.searchFilter)||void 0===r?void 0:r.groupBy,u=o?n.get(o):void 0;if(o&&u){var d=e[o];return d?(d.tags=[].concat((0,s.Z)(d.tags),[t]),e):(0,c.Z)((0,c.Z)({},e),{},(0,l.Z)({},o,(0,c.Z)((0,c.Z)({},u),{},{tags:[t]})))}return o?(0,c.Z)((0,c.Z)({},e),{},(0,l.Z)({},o,{id:o,tags:[].concat((0,s.Z)(null!==(a=null===e||void 0===e||null===(i=e[o])||void 0===i?void 0:i.tags)&&void 0!==a?a:[]),[t])})):e}),{})}(null!==(t=null===e||void 0===e?void 0:e.filter((function(e){return Boolean(e.searchFilter)})))&&void 0!==t?t:[],r)}),[e,n]),r=q(),a=U(),i=function(e){a({tags:r.includes(e)?r.filter((function(n){return n!==e})):[].concat((0,s.Z)(r),[e])})},o=(0,d.useCallback)((function(e){var n,i,o=new Set((null!==(n=null===(i=t[e])||void 0===i?void 0:i.tags)&&void 0!==n?n:[]).map((function(e){return e.id})));return function(e){var n=r.filter((function(e){return!o.has(e)}));a({tags:e?[].concat((0,s.Z)(n),[e]):n})}}),[t,r,a]);return(0,k.jsx)(k.Fragment,{children:Object.values(t).map((function(e){var n,t,a=e.filterType,l=e.id,u=e.label,f=e.tooltip,v=e.tags,h={hint:f,name:null!==u&&void 0!==u?u:l,options:v.map((function(e){return{display:e.searchFilter.display,value:e.id}}))};return"radio"===a?(0,d.createElement)(T,(0,c.Z)((0,c.Z)({},h),{},{key:l,onValueChange:o(l),options:[{display:"Any ".concat(h.name),value:""}].concat((0,s.Z)(h.options)),value:null!==(n=null===(t=v.find((function(e){return r.includes(e.id)})))||void 0===t?void 0:t.id)&&void 0!==n?n:""})):(0,d.createElement)(B,(0,c.Z)((0,c.Z)({},h),{},{key:l,onValueChange:i,values:r}))}))})},ie="5.75rem",oe=function(){return(0,k.jsx)(o.Z,{borderRadius:"sm","data-testid":Z.filtersPanel,display:{base:"none",md:"flex"},maxH:"calc(100vh - ".concat(ie," - 1.25rem)"),maxW:"23rem",minW:"100%",overflow:"hidden auto",p:4,pos:"sticky",top:ie,zIndex:"docked",children:(0,k.jsxs)(a.Kq,{color:"textPrimary",h:"max-content",spacing:4,top:4,children:[(0,k.jsx)(a.X6,{as:"h2",size:"sm",children:"Filters"}),(0,k.jsx)(z,{}),(0,k.jsx)(te,{}),(0,k.jsx)(ae,{}),(0,k.jsx)(X,{})]})})},se=t(92213),le=t(64159),ce=(0,l.Z)({},le.$.Wide,(function(e){var n=e["data-event"],t=e.items;return(0,k.jsx)(a.Kq,{spacing:4,children:t.map((function(e){return(0,k.jsx)(le.L,{"data-event":n,pkg:e,variant:le.$.Wide},"".concat(e.name,"-").concat(e.version))}))})})),ue=(0,d.memo)((function(e){var n=e["data-event"],t=e.cardView,r=void 0===t?le.$.Wide:t,i=e.items;if(e.loading||!i)return(0,k.jsx)(a.M5,{children:(0,k.jsx)(se.$,{size:"xl"})});var o=ce[r];return(0,k.jsx)(o,{"data-event":n,items:i})}));ue.displayName="PackageList";var de=t(45832),fe=function(e){var n=e["data-event"],t=e["data-testid"],r=e.icon,a=e.label,i=e.onClick,o={"aria-label":a,borderRadius:"md",borderColor:"blue.500",colorScheme:"blue","data-event":n,"data-testid":t,icon:(0,k.jsx)(r,{color:"blue.500",h:5,w:5}),mx:2,h:10,w:10,variant:"outline"};return(0,k.jsx)(Q.hU,(0,c.Z)((0,c.Z)({},o),{},{disabled:!i,onClick:i}))},ve=t(95798),he=function(e){var n=e["data-event"],t=e["data-testid"],r=e.pageLimit,i=e.offset,o=U(),s=(0,x.z$)().trackCustomEvent,l=(0,d.useState)((i+1).toString()),c=(0,u.Z)(l,2),f=c[0],v=c[1];(0,d.useEffect)((function(){v((i+1).toString())}),[i]);return(0,k.jsxs)(a.kC,{align:"center",as:"form",mx:2,onSubmit:function(e){e.preventDefault(),o({offset:parseInt(f)-1})},children:[(0,k.jsx)(ve.II,{"aria-label":"Jump to page",colorScheme:"brand","data-testid":t,h:10,max:r+1,min:1,name:"page",onChange:function(e){e.preventDefault(),v(e.target.value)},onFocus:function(){n&&s((0,x.Q5)({name:n}))},p:0,textAlign:"center",type:"number",value:f,w:10}),(0,k.jsxs)(a.xv,{ml:2,w:"max-content",children:["of ",r+1]})]})},xe=function(e){var n=e.offset,t=e.pageLimit,r=U(),i=n<t?function(){return r({offset:n+1})}:void 0,o=n>0?function(){return r({offset:n-1})}:void 0;return(0,k.jsxs)(a.Kq,{align:"center",direction:"row",justify:"space-between",maxW:"18rem",mx:"auto",spacing:4,w:"full",children:[(0,k.jsx)(fe,{"data-event":(0,x.oJ)(j.RESULTS,"Previous Page"),"data-testid":Z.prevPage,icon:y.wy,label:"Previous page button",onClick:o}),(0,k.jsx)(he,{"data-event":(0,x.oJ)(j.RESULTS,"Go to Page"),"data-testid":Z.goToPage,offset:n,pageLimit:t}),(0,k.jsx)(fe,{"data-event":(0,x.oJ)(j.RESULTS,"Next Page"),"data-testid":Z.nextPage,icon:y.XC,label:"Next page button",onClick:i})]})},me=t(99185),ge=function(){var e=L(),n=U(),t=(0,d.useState)(null!==e&&void 0!==e?e:""),r=(0,u.Z)(t,2),a=r[0],i=r[1];return(0,k.jsx)(me.E1,{bg:"bgSecondary","data-event":j.SEARCH,onChange:function(e){return i(e.target.value)},onSubmit:function(e){e.preventDefault(),n({query:a,sort:void 0})},value:a})},pe=function(e){var n=e.children;return(0,k.jsx)(a.xv,{as:"strong",color:"textSecondary",children:n})},je=function(e){var n=e.first,t=e.count,r=e.last;return!n&&r>=t?(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(pe,{children:t})," of ",(0,k.jsx)(pe,{children:t})]}):(0,k.jsxs)(k.Fragment,{children:[(0,k.jsxs)(pe,{children:[t?n+1:t," - ",r>t?t:r]})," ","of ",(0,k.jsx)(pe,{children:t})]})},ye=function(e){var n=e.limit,t=e.offset,r=e.count,i=e.filtered,o=e.query,s=n*t,l=s+n,c=r>0;return(0,k.jsxs)(a.xv,{"data-testid":Z.searchDetails,children:[c?(0,k.jsxs)(k.Fragment,{children:["Displaying ",(0,k.jsx)(je,{count:r,first:s,last:l})," ",i?"search results":"constructs"]}):(0,k.jsx)(k.Fragment,{children:i?"There were no search results":"No constructs found"}),o&&(0,k.jsxs)(k.Fragment,{children:[" for ",(0,k.jsx)(pe,{children:o})]}),".",!c&&i&&(0,k.jsx)(k.Fragment,{children:" Try a different term."})]})},be=t(86988),Ce=function(){var e=W(),n=U();return(0,k.jsx)(T,{hint:"Sets the order of search results",name:"Sorted By",onValueChange:function(e){n({sort:e||void 0})},options:[{display:"Relevance",value:""}].concat((0,s.Z)(Object.entries(g).map((function(e){var n=(0,u.Z)(e,2),t=n[0];return{display:n[1],value:t}})))),value:null!==e&&void 0!==e?e:""})},ke=function(){var e=(0,Y.qY)();return(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(Q.zx,{colorScheme:"brand",display:{md:"none"},onClick:e.onOpen,rightIcon:(0,k.jsx)(y.v4,{}),variant:"link",children:"Sorting and Filters"}),(0,k.jsxs)(be.dy,(0,c.Z)((0,c.Z)({},e),{},{placement:"bottom",children:[(0,k.jsx)(be.P1,{}),(0,k.jsxs)(be.sc,{color:"textPrimary",maxH:"full",children:[(0,k.jsx)(be.OX,{borderBottom:"base",children:"Sorting and Filters"}),(0,k.jsx)(be.cC,{}),(0,k.jsx)(be.Ng,{children:(0,k.jsxs)(a.Kq,{color:"textPrimary",pb:4,spacing:4,children:[(0,k.jsx)(Ce,{}),(0,k.jsx)(z,{}),(0,k.jsx)(te,{}),(0,k.jsx)(ae,{}),(0,k.jsx)(X,{})]})})]})]}))]})},Se=t(81641),Ze=function(){var e=W(),n=U(),t=e?g[e]:"Relevance";return(0,k.jsxs)(a.kC,{align:"center",children:[(0,k.jsx)(a.xv,{children:"Sorted by"}),(0,k.jsxs)(Se.v2,{children:[(0,k.jsx)(Se.j2,{as:Q.zx,color:"link","data-event":(0,x.oJ)(j.SORT,"Menu"),"data-testid":Z.sortButton,ml:2,pl:2,pr:2,py:1,rightIcon:(0,k.jsx)(y.v4,{}),variant:"link",children:t}),(0,k.jsxs)(Se.qy,{"data-testid":Z.sortDropdown,minW:"180",zIndex:"sticky",children:[(0,k.jsx)(Se.sN,{"data-event":(0,x.oJ)(j.SORT,"Option","Relevance"),"data-testid":Z.sortItem,"data-value":"",onClick:function(){return n({sort:void 0})},children:"Relevance"},"Relevance"),Object.entries(g).map((function(e){var t=(0,u.Z)(e,2),r=t[0],a=t[1];return(0,k.jsx)(Se.sN,{"data-event":(0,x.oJ)(j.SORT,"Option",a),"data-testid":Z.sortItem,"data-value":r,onClick:function(){return n({sort:r})},children:a},r)}))]})]})]})},Te=function(){var e=U(),n=K(w.Tx.OFFSET,(function(e){return D(null!==e&&void 0!==e?e:"")})),t=L(),r=I(),o=P(),s=A(),l=O(),c=W(),u=q(),f=(0,de.D)({offset:n,limit:25,query:t,keywords:r,languages:o,cdkMajor:s,cdkType:l,sort:c,tags:u}),v=f.page,h=f.pageLimit,x=f.results;return(0,d.useEffect)((function(){x.length&&(n<0||n>h)&&e(n<0?{offset:0}:{offset:h})}),[x,n,h]),(0,d.useEffect)((function(){window.scrollTo(0,0)}),[v]),(0,k.jsx)(i.T,{meta:{title:t||"Search",description:t?"".concat(x.length," results for ").concat(t," at Construct Hub"):"Search reusable components for your cloud application"},pageName:"search",children:(0,k.jsxs)(a.Kq,{direction:"column",maxW:"100vw",pb:4,px:4,spacing:4,children:[(0,k.jsx)(ge,{}),(0,k.jsxs)(a.Kq,{align:{base:"start",lg:"center"},direction:{base:"column-reverse",lg:"row"},justify:{base:"initial",lg:"space-between"},spacing:4,children:[(0,k.jsx)(ye,{count:x.length,filtered:!!t,limit:25,offset:n,query:t}),(0,k.jsx)(a.xu,{display:{base:"none",md:"initial"},children:(0,k.jsx)(Ze,{})}),(0,k.jsx)(a.xu,{display:{md:"none"},children:(0,k.jsx)(ke,{})})]}),(0,k.jsx)(ue,{"data-event":j.RESULTS,items:v}),(0,k.jsx)(a.xu,{w:"full",children:(0,k.jsx)(xe,{offset:n,pageLimit:h})})]})})},we=function(){return(0,k.jsx)(i.T,{meta:{title:"Search - Construct Hub",description:"Search Construct Libraries for AWS CDK, CDK8s, and CDKtf"},pageName:"search",children:(0,k.jsxs)(a.rj,{"data-testid":Z.page,gap:4,h:"full",maxW:"100%",px:{base:0,md:6},py:6,templateColumns:{base:"1fr",md:"auto 1fr"},templateRows:"1fr",children:[(0,k.jsx)(oe,{}),(0,k.jsx)(Te,{})]})})}}}]);
|
|
2
|
+
//# sourceMappingURL=51.cd3ab6c3.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"static/js/51.cd3ab6c3.chunk.js","mappings":"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","sources":["views/Search/constants.ts","views/Search/FilterHeading.tsx","views/Search/testIds.ts","views/Search/RadioFilter.tsx","views/Search/util.ts","views/Search/useSearchParam.ts","views/Search/useUpdateSearchParam.ts","views/Search/CDKFilter.tsx","views/Search/CheckboxFilter.tsx","views/Search/KeywordsFilter.tsx","views/Search/LanguageFilter.tsx","views/Search/TagFilter.tsx","views/Search/FilterPanel.tsx","components/PackageList/PackageList.tsx","components/PackageList/WideCardList.tsx","views/Search/ArrowButton.tsx","views/Search/GoToPage.tsx","views/Search/PageControls.tsx","views/Search/SearchBar.tsx","views/Search/SearchDetails.tsx","views/Search/SortFilter.tsx","views/Search/SortAndFilterDrawer.tsx","views/Search/SortedBy.tsx","views/Search/SearchResults.tsx","views/Search/Search.tsx"],"sourcesContent":["import { CatalogSearchSort } from \"../../api/catalog-search/constants\";\nimport type { QueryParamKey } from \"../../constants/url\";\nimport { eventName } from \"../../contexts/Analytics\";\n\nconst LIMITS = [25, 50, 75, 100];\nexport const LIMIT = LIMITS[0];\n\nexport type SearchQueryParam = Extract<QueryParamKey, \"offset\" | \"q\">;\n\nexport const SORT_RENDER_MAP = {\n [CatalogSearchSort.NameAsc]: \"A-Z\",\n [CatalogSearchSort.NameDesc]: \"Z-A\",\n [CatalogSearchSort.PublishDateAsc]: \"Oldest\",\n [CatalogSearchSort.PublishDateDesc]: \"Recently updated\",\n [CatalogSearchSort.DownloadsDesc]: \"Most downloads\",\n [CatalogSearchSort.DownloadsAsc]: \"Least downloads\",\n};\n\nconst searchEvent: typeof eventName = (...e) => eventName(\"Search\", ...e);\n\nexport const SEARCH_ANALYTICS = {\n FILTERS: searchEvent(\"Filters\"),\n RESULTS: searchEvent(\"Results\"),\n SEARCH: searchEvent(\"Search\"),\n SORT: searchEvent(\"Sort\"),\n};\n","import { QuestionIcon } from \"@chakra-ui/icons\";\nimport {\n Flex,\n Heading,\n Text,\n Popover,\n PopoverTrigger,\n PopoverBody,\n PopoverArrow,\n PopoverContent,\n useBreakpointValue,\n PlacementWithLogical,\n} from \"@chakra-ui/react\";\nimport { FunctionComponent } from \"react\";\nimport { eventName } from \"../../contexts/Analytics\";\nimport { SEARCH_ANALYTICS } from \"./constants\";\n\nexport interface FilterHeadingProps {\n name: string;\n hint?: string;\n}\n\nexport const FilterHeading: FunctionComponent<FilterHeadingProps> = ({\n name,\n hint,\n}) => {\n const placement = useBreakpointValue<PlacementWithLogical>({\n base: \"auto\",\n md: \"right\",\n });\n\n return (\n <Flex align=\"center\" mb={1}>\n <Heading as=\"h3\" size=\"sm\" w=\"max-content\">\n {name}\n </Heading>\n {hint ? (\n <Popover colorScheme=\"dark\" placement={placement} strategy=\"fixed\">\n <PopoverTrigger>\n <Flex\n aria-label={`Hint: ${name}`}\n as=\"button\"\n data-event={eventName(SEARCH_ANALYTICS.FILTERS, name, \"Popover\")}\n ml={2}\n >\n <QuestionIcon h={3.5} w={3.5} />\n </Flex>\n </PopoverTrigger>\n <PopoverContent\n bg=\"gray.700\"\n borderRadius=\"base\"\n color=\"white\"\n fontSize=\"sm\"\n mx={{ base: \"1rem\", md: \"initial\" }}\n shadow=\"whiteAlpha.300\"\n >\n <PopoverArrow bg=\"gray.700\" />\n <PopoverBody>\n <Text>{hint}</Text>\n </PopoverBody>\n </PopoverContent>\n </Popover>\n ) : null}\n </Flex>\n );\n};\n","import { createTestIds } from \"../../util/createTestIds\";\n\nexport default createTestIds(\"searchRedesign\", [\n \"page\",\n // Results\n \"searchDetails\",\n \"nextPage\",\n \"prevPage\",\n \"goToPage\",\n // Sorting\n \"sortButton\",\n \"sortDropdown\",\n \"sortItem\",\n // Filters Panel\n \"filtersPanel\",\n \"cdkTypeFilter\",\n \"cdkVersionFilter\",\n \"filterItem\",\n \"languagesFilter\",\n] as const);\n","import { Radio, RadioGroup, Stack, Text } from \"@chakra-ui/react\";\nimport { FunctionComponent } from \"react\";\nimport { eventName } from \"../../contexts/Analytics\";\nimport { SEARCH_ANALYTICS } from \"./constants\";\nimport { FilterHeading, FilterHeadingProps } from \"./FilterHeading\";\nimport testIds from \"./testIds\";\n\nexport interface RadioFilterProps extends FilterHeadingProps {\n \"data-testid\"?: string;\n value?: string;\n onValueChange: (value: string) => void;\n options: {\n display: string;\n value: string;\n }[];\n}\n\nexport const RadioFilter: FunctionComponent<RadioFilterProps> = ({\n \"data-testid\": dataTestid,\n value: checkedValue,\n onValueChange,\n options,\n name,\n hint,\n}) => {\n return (\n <Stack data-testid={dataTestid} spacing={1}>\n <FilterHeading hint={hint} name={name} />\n <RadioGroup onChange={onValueChange} value={checkedValue}>\n <Stack spacing={1}>\n {options.map(({ display, value }) => {\n const dataEvent = eventName(\n SEARCH_ANALYTICS.FILTERS,\n name,\n \"Filter\",\n display\n );\n return (\n <Radio data-event={dataEvent} key={value} value={value}>\n <Text\n color=\"textTertiary\"\n data-event={dataEvent}\n data-testid={testIds.filterItem}\n data-value={value}\n isTruncated\n >\n {display}\n </Text>\n </Radio>\n );\n })}\n </Stack>\n </RadioGroup>\n </Stack>\n );\n};\n","import { CatalogSearchSort } from \"../../api/catalog-search/constants\";\nimport { CDKType } from \"../../constants/constructs\";\nimport { Language } from \"../../constants/languages\";\nimport { QUERY_PARAMS } from \"../../constants/url\";\n\nexport const toNum = (val: string) => {\n const result = parseInt(val);\n\n if (`${result}` === \"NaN\") {\n return 0;\n }\n\n return result;\n};\n\nexport const parseQueryArray = <T extends string>(\n queryString: string | null\n) => {\n if (!queryString) return [];\n\n return decodeURIComponent(queryString).split(\",\") as T[];\n};\n\nconst getParamFromUrl = (key: string) => {\n if (typeof window === \"undefined\") return null;\n const queryParams = new URL(window.location.href).searchParams;\n return queryParams.get(key);\n};\n\nexport const getSearchUrlParams = () => {\n return {\n query: getParamFromUrl(QUERY_PARAMS.SEARCH_QUERY) ?? \"\",\n keywords: parseQueryArray(getParamFromUrl(QUERY_PARAMS.KEYWORDS)),\n cdkType: (getParamFromUrl(QUERY_PARAMS.CDK_TYPE) as CDKType) ?? undefined,\n cdkMajor: (() => {\n const cdkMajorParam = getParamFromUrl(QUERY_PARAMS.CDK_MAJOR);\n return cdkMajorParam ? toNum(cdkMajorParam) : undefined;\n })(),\n languages: parseQueryArray(\n getParamFromUrl(QUERY_PARAMS.LANGUAGES)\n ) as Language[],\n offset: toNum(getParamFromUrl(QUERY_PARAMS.OFFSET) ?? \"\"),\n sort:\n (getParamFromUrl(QUERY_PARAMS.SORT) as CatalogSearchSort) ?? undefined,\n tags: parseQueryArray(getParamFromUrl(QUERY_PARAMS.TAGS)),\n };\n};\n","import { useMemo } from \"react\";\nimport { CatalogSearchSort } from \"../../api/catalog-search/constants\";\nimport { CDKType } from \"../../constants/constructs\";\nimport { Language } from \"../../constants/languages\";\nimport { QUERY_PARAMS } from \"../../constants/url\";\nimport { useQueryParams } from \"../../hooks/useQueryParams\";\nimport { parseQueryArray, toNum } from \"./util\";\n\nconst useSearchParam = <T = string | null>(\n key: string,\n transform?: (param: string | null) => T\n): T => {\n const queryParams = useQueryParams();\n const qp = queryParams.get(key);\n\n return useMemo(\n () => (transform ? transform(qp) : (qp as unknown as T)),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [qp]\n );\n};\n\nexport const useCdkType = () => {\n const cdkType: CDKType | undefined =\n useSearchParam(QUERY_PARAMS.CDK_TYPE) ?? undefined;\n\n return cdkType;\n};\n\nexport const useCdkMajor = () => {\n const cdkMajor: number | undefined = useSearchParam(\n QUERY_PARAMS.CDK_MAJOR,\n (p) => (p ? toNum(p) : undefined)\n );\n\n return cdkMajor;\n};\n\nexport const useKeywords = () => {\n const keywords: string[] = useSearchParam(\n QUERY_PARAMS.KEYWORDS,\n parseQueryArray\n );\n\n return keywords;\n};\n\nexport const useLanguages = () => {\n const languages: Language[] = useSearchParam(\n QUERY_PARAMS.LANGUAGES,\n parseQueryArray\n ) as Language[];\n\n return languages;\n};\n\nexport const useOffset = () => {\n const offset = useSearchParam(QUERY_PARAMS.OFFSET, (o) => toNum(o ?? \"\"));\n return offset;\n};\n\nexport const useSearchQuery = () => {\n const query: string = useSearchParam(QUERY_PARAMS.SEARCH_QUERY) ?? \"\";\n return query;\n};\n\nexport const useSort = () => {\n const sort: CatalogSearchSort | undefined =\n useSearchParam(QUERY_PARAMS.SORT) ?? undefined;\n return sort;\n};\n\nexport const useTags = () => {\n const tags: string[] = useSearchParam(QUERY_PARAMS.TAGS, parseQueryArray);\n return tags;\n};\n","import { useCallback } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport { getSearchPath } from \"../../util/url\";\nimport { getSearchUrlParams } from \"./util\";\n\nexport const useUpdateSearchParam = () => {\n const { push } = useHistory();\n\n return useCallback(\n (p?: Partial<Parameters<typeof getSearchPath>[0]>) => {\n const { offset, ...params } = p ?? {};\n\n push(\n getSearchPath({\n ...getSearchUrlParams(),\n ...params,\n offset: offset ?? 0,\n })\n );\n },\n [push]\n );\n};\n","import { FunctionComponent, useMemo } from \"react\";\nimport { CatalogConstructFrameworkMeta } from \"../../api/catalog-search\";\nimport { CDKType, CDKTYPE_NAME_MAP } from \"../../constants/constructs\";\nimport { useSearchContext } from \"../../contexts/Search\";\nimport { RadioFilter } from \"./RadioFilter\";\nimport testIds from \"./testIds\";\nimport { useCdkMajor, useCdkType } from \"./useSearchParam\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\ntype CDKOptions = Partial<{\n [key in CDKType]: CatalogConstructFrameworkMeta & {\n display: string;\n value: key;\n };\n}>;\n\nexport const CDKFilter: FunctionComponent = () => {\n const cdkType = useCdkType();\n const cdkMajor = useCdkMajor();\n\n const updateSearch = useUpdateSearchParam();\n\n const searchAPI = useSearchContext()!;\n\n // Options with less than one package will be omitted\n const cdkOptions = useMemo(() => {\n const cdkTypes = searchAPI.constructFrameworks;\n const options = Object.entries(cdkTypes).reduce((opts, [name, meta]) => {\n if (meta.pkgCount < 1) {\n return opts;\n }\n\n return {\n ...opts,\n [name]: {\n display: CDKTYPE_NAME_MAP[name as CDKType],\n value: name,\n ...meta,\n },\n };\n }, {});\n\n return Object.keys(options).length ? (options as CDKOptions) : undefined;\n }, [searchAPI]);\n\n const majorsOptions = useMemo(() => {\n if (!cdkOptions || !cdkType) return undefined;\n const majorVersions = cdkOptions[cdkType]?.majorVersions;\n\n if (!majorVersions) return undefined;\n\n return [...majorVersions]\n .sort((a, b) => a - b)\n .map((value) => ({\n value: value.toString(),\n display: `${CDKTYPE_NAME_MAP[cdkType]} v${value}`,\n }));\n }, [cdkOptions, cdkType]);\n\n if (!cdkOptions) {\n return null;\n }\n\n const onCdkTypeChange = (type: string) => {\n const cdk = type as CDKType;\n updateSearch({ cdkType: type ? cdk : undefined, cdkMajor: undefined });\n };\n\n const onCdkMajorChange = (major: string) => {\n let majorNum: number | undefined = undefined;\n\n if (major) {\n majorNum = parseInt(major, 10);\n }\n\n updateSearch({ cdkMajor: majorNum });\n };\n\n return (\n <>\n <RadioFilter\n data-testid={testIds.cdkTypeFilter}\n hint=\"Choose the right CDK for your IaC technology: AWS CDK for AWS CloudFormation, CDKtf for Terraform, or CDK8s for Kubernetes.\"\n name=\"CDK Type\"\n onValueChange={onCdkTypeChange}\n options={[\n { display: \"Any CDK Type\", value: \"\" },\n ...Object.values(cdkOptions),\n ]}\n value={cdkType ?? \"\"}\n />\n {/* No point in showing major versions if only a single one is available */}\n {!!(majorsOptions && majorsOptions.length > 1) && (\n <RadioFilter\n data-testid={testIds.cdkVersionFilter}\n hint=\"Choose the major version of the CDK you're using to see only constructs that will work with that version.\"\n name=\"CDK Major Version\"\n onValueChange={onCdkMajorChange}\n options={[\n { display: \"Any Major Version\", value: \"\" },\n ...majorsOptions,\n ]}\n value={cdkMajor?.toString() ?? \"\"}\n />\n )}\n </>\n );\n};\n","import { ChevronDownIcon, ChevronUpIcon } from \"@chakra-ui/icons\";\nimport {\n Flex,\n Button,\n Collapse,\n Checkbox,\n Stack,\n Text,\n Tooltip,\n useDisclosure,\n} from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { clickEvent, eventName, useAnalytics } from \"../../contexts/Analytics\";\nimport { SEARCH_ANALYTICS } from \"./constants\";\nimport { FilterHeading, FilterHeadingProps } from \"./FilterHeading\";\nimport testIds from \"./testIds\";\n\ninterface CheckboxOption {\n display: string;\n value: string;\n isDisabled?: boolean;\n disabledHint?: string;\n}\n\ninterface CheckboxItemProps extends CheckboxOption {\n onChange: () => void;\n isChecked: boolean;\n}\n\nexport interface CheckboxFilterProps extends FilterHeadingProps {\n /**\n * Test ID to select checkbox in tests\n */\n \"data-testid\"?: string;\n /**\n * Number of items that can be initially shown\n */\n initialItemCount?: number;\n /**\n * Defines checkbox items\n */\n options: CheckboxOption[];\n /**\n * Selected values\n */\n values: string[];\n /**\n * Callback triggered when an item is clicked\n */\n onValueChange: (value: string) => void;\n}\n\nconst CheckboxItem: FunctionComponent<CheckboxItemProps> = ({\n display,\n value,\n isDisabled,\n disabledHint,\n isChecked,\n onChange,\n}) => (\n <Checkbox\n isChecked={isChecked}\n isDisabled={isDisabled}\n key={value}\n onChange={onChange}\n >\n <Tooltip\n hasArrow\n isDisabled={!isDisabled && !disabledHint}\n label={disabledHint}\n placement=\"right\"\n >\n <Text\n color=\"textTertiary\"\n data-testid={testIds.filterItem}\n data-value={value}\n isTruncated\n >\n {display}\n </Text>\n </Tooltip>\n </Checkbox>\n);\n\nexport const CheckboxFilter: FunctionComponent<CheckboxFilterProps> = ({\n \"data-testid\": dataTestid,\n initialItemCount,\n hint,\n name,\n options,\n values: checkedValues,\n onValueChange,\n}) => {\n const collapse = useDisclosure();\n const { trackCustomEvent } = useAnalytics();\n\n const getOnChange = (item: CheckboxOption) => () => {\n trackCustomEvent(\n clickEvent({\n name: eventName(SEARCH_ANALYTICS.FILTERS, name, \"Filter\", item.display),\n })\n );\n onValueChange(item.value);\n };\n\n let alwaysShow: typeof options = options;\n let showWhenExpanded: typeof options = [];\n\n if (initialItemCount) {\n alwaysShow = options.slice(0, initialItemCount);\n showWhenExpanded = options.slice(initialItemCount, options.length);\n }\n\n const isExpandible = showWhenExpanded.length > 0;\n\n return (\n <Flex data-testid={dataTestid} direction=\"column\">\n <FilterHeading hint={hint} name={name} />\n <Stack mt={1} spacing={1}>\n {alwaysShow.map((item) => (\n <CheckboxItem\n {...item}\n isChecked={checkedValues.includes(item.value)}\n key={item.value}\n onChange={getOnChange(item)}\n />\n ))}\n {isExpandible && (\n <Collapse animateOpacity in={collapse.isOpen} unmountOnExit>\n <Stack spacing={1}>\n {showWhenExpanded.map((item) => (\n <CheckboxItem\n {...item}\n isChecked={checkedValues.includes(item.value)}\n key={item.value}\n onChange={getOnChange(item)}\n />\n ))}\n </Stack>\n </Collapse>\n )}\n </Stack>\n {isExpandible && (\n <Flex align=\"start\" mt={1}>\n <Button\n color=\"textTertiary\"\n data-event={eventName(SEARCH_ANALYTICS.FILTERS, name, \"Show More\")}\n fontWeight=\"normal\"\n leftIcon={collapse.isOpen ? <ChevronUpIcon /> : <ChevronDownIcon />}\n onClick={collapse.onToggle}\n size=\"sm\"\n textAlign=\"left\"\n variant=\"link\"\n w=\"auto\"\n >\n {collapse.isOpen\n ? `Show fewer options (${alwaysShow.length})`\n : `Show more options (${showWhenExpanded.length})`}\n </Button>\n </Flex>\n )}\n </Flex>\n );\n};\n","import { FunctionComponent, useMemo } from \"react\";\nimport { useSearchContext } from \"../../contexts/Search\";\nimport { CheckboxFilter } from \"./CheckboxFilter\";\nimport testIds from \"./testIds\";\nimport { useKeywords } from \"./useSearchParam\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\nexport const KeywordsFilter: FunctionComponent = () => {\n const keywords = useKeywords();\n const keywordMap = useSearchContext()!.keywords;\n const updateSearch = useUpdateSearchParam();\n\n const onKeywordChange = (keyword: string) => {\n updateSearch({\n keywords: keywords.includes(keyword)\n ? keywords.filter((k) => k !== keyword)\n : [...keywords, keyword],\n });\n };\n\n const keywordOptions = useMemo(() => {\n const baseOptions = [...keywordMap.entries()]\n .sort(([, count1], [, count2]) => {\n return count1 < count2 ? 1 : -1;\n })\n .filter(([keyword]) => !keywords.includes(keyword))\n .map(([keyword]) => ({\n display: keyword,\n value: keyword,\n }))\n .slice(0, 25);\n\n const keywordsNotInOptions = keywords.filter(\n (k) => !baseOptions.some((opt) => opt.value === k)\n );\n\n return [\n ...keywordsNotInOptions.map((k) => ({ display: k, value: k })),\n ...baseOptions,\n ];\n }, [keywordMap, keywords]);\n\n return (\n <CheckboxFilter\n data-testid={testIds.languagesFilter}\n hint=\"Focus the results by choosing one or more keywords reflecting the kind of construct you're looking for. Keywords are provided by construct authors.\"\n initialItemCount={5}\n name=\"Keywords\"\n onValueChange={onKeywordChange}\n options={keywordOptions}\n values={keywords}\n />\n );\n};\n","import { FunctionComponent } from \"react\";\nimport {\n Language,\n LANGUAGE_NAME_MAP,\n TEMP_SUPPORTED_LANGUAGES,\n} from \"../../constants/languages\";\nimport { CheckboxFilter } from \"./CheckboxFilter\";\nimport testIds from \"./testIds\";\nimport { useLanguages } from \"./useSearchParam\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\nconst languageOptions = Object.entries(LANGUAGE_NAME_MAP)\n .map(([key, value]) => ({\n display: value,\n value: key,\n ...(TEMP_SUPPORTED_LANGUAGES.has(key as Language)\n ? { isDisabled: false }\n : {\n isDisabled: true,\n disabledHint: `${\n LANGUAGE_NAME_MAP[key as Language]\n } support is coming soon!`,\n }),\n }))\n .sort((l1, l2) => {\n // Push disabled languages to back of list\n return l1.isDisabled > l2.isDisabled ? 1 : -1;\n });\n\nexport const LanguageFilter: FunctionComponent = () => {\n const languages = useLanguages();\n\n const updateSearch = useUpdateSearchParam();\n\n const onLanguagesChange = (lang: string) => {\n const language = lang as Language;\n\n updateSearch({\n languages: languages.includes(language)\n ? languages.filter((l) => l !== language)\n : [...languages, language],\n });\n };\n\n return (\n <CheckboxFilter\n data-testid={testIds.languagesFilter}\n hint=\"Choose one or more languages. Results include constructs for use with at least one of the selected languages.\"\n name=\"Programming Language\"\n onValueChange={onLanguagesChange}\n options={languageOptions}\n values={languages}\n />\n );\n};\n","import { FunctionComponent, useCallback, useMemo } from \"react\";\nimport { PackageTagConfig, TagGroupConfig } from \"../../api/config\";\nimport { useConfigValue } from \"../../hooks/useConfigValue\";\nimport { CheckboxFilter } from \"./CheckboxFilter\";\nimport { RadioFilter } from \"./RadioFilter\";\nimport { useTags } from \"./useSearchParam\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\ninterface FilterGroup extends Partial<TagGroupConfig> {\n id: string;\n tags: PackageTagConfig[];\n}\ninterface FilterGroups {\n [group: string]: FilterGroup;\n}\n\n/**\n * Creates a plain object map of FilterGroups keyed by group id\n */\nexport const mapTagsToFilterGroups = (\n packageTags: PackageTagConfig[],\n tagGroupsMap: Map<string, TagGroupConfig>\n): FilterGroups => {\n return packageTags.reduce(\n (accum: FilterGroups, tag: PackageTagConfig): FilterGroups => {\n const groupIdOrName = tag.searchFilter?.groupBy;\n const customGroup = groupIdOrName\n ? tagGroupsMap.get(groupIdOrName)\n : undefined;\n\n if (groupIdOrName && customGroup) {\n const entry = accum[groupIdOrName];\n if (entry) {\n entry.tags = [...entry.tags, tag];\n return accum;\n }\n\n return {\n ...accum,\n [groupIdOrName]: {\n ...customGroup,\n tags: [tag],\n },\n };\n }\n\n if (groupIdOrName) {\n return {\n ...accum,\n [groupIdOrName]: {\n id: groupIdOrName,\n tags: [...(accum?.[groupIdOrName]?.tags ?? []), tag],\n },\n };\n }\n return accum;\n },\n {}\n );\n};\n\nexport const TagFilter: FunctionComponent = () => {\n const packageTags = useConfigValue(\"packageTags\");\n const packageTagGroups = useConfigValue(\"packageTagGroups\");\n\n const tagFilterGroups: FilterGroups = useMemo(() => {\n const tagGroupsMap = new Map<string, TagGroupConfig>();\n packageTagGroups?.forEach((group) => {\n tagGroupsMap.set(group.id, group);\n });\n\n const filterableTags =\n packageTags?.filter((tag) => Boolean(tag.searchFilter)) ?? [];\n\n return mapTagsToFilterGroups(filterableTags, tagGroupsMap);\n }, [packageTags, packageTagGroups]);\n\n const tags = useTags();\n const updateSearch = useUpdateSearchParam();\n\n const onTagsChange = (tag: string) => {\n updateSearch({\n tags: tags.includes(tag) ? tags.filter((t) => t !== tag) : [...tags, tag],\n });\n };\n\n const getOnRadioTagChange = useCallback(\n (groupName: string) => {\n const groupTags = new Set(\n (tagFilterGroups[groupName]?.tags ?? []).map(({ id }) => id)\n );\n\n return (tag: string) => {\n const filteredTags = tags.filter((t) => !groupTags.has(t));\n\n updateSearch({\n tags: tag ? [...filteredTags, tag] : filteredTags,\n });\n };\n },\n [tagFilterGroups, tags, updateSearch]\n );\n\n return (\n <>\n {Object.values(tagFilterGroups).map(\n ({ filterType, id, label, tooltip, tags: tagItems }) => {\n const sharedProps = {\n hint: tooltip,\n name: label ?? id,\n options: tagItems.map((tag) => {\n return {\n display: tag.searchFilter!.display,\n value: tag.id,\n };\n }),\n };\n\n if (filterType === \"radio\") {\n return (\n <RadioFilter\n {...sharedProps}\n key={id}\n onValueChange={getOnRadioTagChange(id)}\n options={[\n { display: `Any ${sharedProps.name}`, value: \"\" },\n ...sharedProps.options,\n ]}\n value={tagItems.find((t) => tags.includes(t.id))?.id ?? \"\"}\n />\n );\n }\n\n return (\n <CheckboxFilter\n {...sharedProps}\n key={id}\n onValueChange={onTagsChange}\n values={tags}\n />\n );\n }\n )}\n </>\n );\n};\n","import { Heading, Stack } from \"@chakra-ui/react\";\nimport { FunctionComponent } from \"react\";\nimport { Card } from \"../../components/Card\";\nimport { CDKFilter } from \"./CDKFilter\";\nimport { KeywordsFilter } from \"./KeywordsFilter\";\nimport { LanguageFilter } from \"./LanguageFilter\";\nimport { TagFilter } from \"./TagFilter\";\nimport testIds from \"./testIds\";\n\nexport interface FilterPanelProps {}\n\n// Header height + section padding\nconst TOP_OFFSET = \"5.75rem\";\n\n/**\n * The desktop Resolution Filter Panel\n */\nexport const FilterPanel: FunctionComponent<FilterPanelProps> = () => {\n return (\n <Card\n borderRadius=\"sm\"\n data-testid={testIds.filtersPanel}\n display={{ base: \"none\", md: \"flex\" }}\n maxH={`calc(100vh - ${TOP_OFFSET} - 1.25rem)`}\n maxW=\"23rem\"\n minW=\"100%\"\n overflow=\"hidden auto\"\n p={4}\n pos=\"sticky\"\n top={TOP_OFFSET}\n zIndex=\"docked\"\n >\n <Stack color=\"textPrimary\" h=\"max-content\" spacing={4} top={4}>\n <Heading as=\"h2\" size=\"sm\">\n Filters\n </Heading>\n\n <CDKFilter />\n\n <LanguageFilter />\n\n <TagFilter />\n\n <KeywordsFilter />\n </Stack>\n </Card>\n );\n};\n","import { Center, Spinner } from \"@chakra-ui/react\";\nimport { FunctionComponent, memo } from \"react\";\nimport { CatalogPackage } from \"../../api/package/packages\";\nimport { PackageCardType } from \"../PackageCard\";\nimport { WideCardList } from \"./WideCardList\";\n\nconst listViews = {\n [PackageCardType.Wide]: WideCardList,\n};\n\nexport interface PackageListViewProps {\n \"data-event\"?: string;\n items: CatalogPackage[];\n}\n\nexport interface PackageListProps extends Partial<PackageListViewProps> {\n cardView?: PackageCardType;\n loading?: boolean;\n title?: string;\n}\n\nexport const PackageList: FunctionComponent<PackageListProps> = memo(\n ({\n \"data-event\": dataEvent,\n cardView = PackageCardType.Wide,\n items,\n loading,\n // title,\n }) => {\n if (loading || !items) {\n return (\n <Center>\n <Spinner size=\"xl\" />\n </Center>\n );\n }\n\n const View = listViews[cardView];\n\n return <View data-event={dataEvent} items={items} />;\n }\n);\n\nPackageList.displayName = \"PackageList\";\n","import { Stack } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { PackageCard, PackageCardType } from \"../PackageCard\";\nimport { PackageListViewProps } from \"./PackageList\";\n\nexport const WideCardList: FunctionComponent<PackageListViewProps> = ({\n \"data-event\": dataEvent,\n items,\n}) => {\n return (\n <Stack spacing={4}>\n {items.map((pkg) => (\n <PackageCard\n data-event={dataEvent}\n key={`${pkg.name}-${pkg.version}`}\n pkg={pkg}\n variant={PackageCardType.Wide}\n />\n ))}\n </Stack>\n );\n};\n","import { IconButton, IconProps } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\n\nexport interface ArrowButtonProps {\n \"data-event\"?: string;\n \"data-testid\"?: string;\n icon: FunctionComponent<IconProps>;\n label: string;\n onClick?: () => void;\n}\n\nexport const ArrowButton: FunctionComponent<ArrowButtonProps> = ({\n \"data-event\": dataEvent,\n \"data-testid\": dataTestid,\n icon: Icon,\n label,\n onClick,\n}) => {\n const props = {\n \"aria-label\": label,\n borderRadius: \"md\",\n borderColor: \"blue.500\",\n colorScheme: \"blue\",\n \"data-event\": dataEvent,\n \"data-testid\": dataTestid,\n icon: <Icon color=\"blue.500\" h={5} w={5} />,\n mx: 2,\n h: 10,\n w: 10,\n variant: \"outline\",\n };\n\n return <IconButton {...props} disabled={!onClick} onClick={onClick} />;\n};\n","import { Flex, Input, Text } from \"@chakra-ui/react\";\nimport {\n FormEventHandler,\n FunctionComponent,\n SyntheticEvent,\n useEffect,\n useState,\n} from \"react\";\nimport { clickEvent, useAnalytics } from \"../../contexts/Analytics\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\nexport interface GoToPageProps {\n \"data-event\"?: string;\n \"data-testid\"?: string;\n pageLimit: number;\n offset: number;\n}\n\nexport const GoToPage: FunctionComponent<GoToPageProps> = ({\n \"data-event\": dataEvent,\n \"data-testid\": dataTestid,\n pageLimit,\n offset,\n}) => {\n const updateSearch = useUpdateSearchParam();\n const { trackCustomEvent } = useAnalytics();\n const [inputValue, setInputValue] = useState((offset + 1).toString());\n\n useEffect(() => {\n setInputValue((offset + 1).toString());\n }, [offset]);\n\n const onInputChange = (e: SyntheticEvent<HTMLInputElement>) => {\n e.preventDefault();\n setInputValue((e.target as HTMLInputElement).value);\n };\n\n const onSubmit: FormEventHandler<HTMLInputElement> = (e) => {\n e.preventDefault();\n updateSearch({ offset: parseInt(inputValue) - 1 });\n };\n\n return (\n <Flex align=\"center\" as=\"form\" mx={2} onSubmit={onSubmit}>\n <Input\n aria-label=\"Jump to page\"\n colorScheme=\"brand\"\n data-testid={dataTestid}\n h={10}\n max={pageLimit + 1}\n min={1}\n name=\"page\"\n onChange={onInputChange}\n onFocus={() => {\n if (dataEvent) {\n trackCustomEvent(clickEvent({ name: dataEvent }));\n }\n }}\n p={0}\n textAlign=\"center\"\n type=\"number\"\n value={inputValue}\n w={10}\n />\n <Text ml={2} w=\"max-content\">\n of {pageLimit + 1}\n </Text>\n </Flex>\n );\n};\n","import { ChevronLeftIcon, ChevronRightIcon } from \"@chakra-ui/icons\";\nimport { Stack } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { eventName } from \"../../contexts/Analytics\";\nimport { ArrowButton } from \"./ArrowButton\";\nimport { SEARCH_ANALYTICS } from \"./constants\";\nimport { GoToPage } from \"./GoToPage\";\nimport testIds from \"./testIds\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\nexport interface PageControlsProps {\n offset: number;\n pageLimit: number;\n}\n\nexport const PageControls: FunctionComponent<PageControlsProps> = ({\n offset,\n pageLimit,\n}) => {\n const updateSearch = useUpdateSearchParam();\n const goForward =\n offset < pageLimit ? () => updateSearch({ offset: offset + 1 }) : undefined;\n const goBack =\n offset > 0 ? () => updateSearch({ offset: offset - 1 }) : undefined;\n\n return (\n <Stack\n align=\"center\"\n direction=\"row\"\n justify=\"space-between\"\n maxW=\"18rem\"\n mx=\"auto\"\n spacing={4}\n w=\"full\"\n >\n <ArrowButton\n data-event={eventName(SEARCH_ANALYTICS.RESULTS, \"Previous Page\")}\n data-testid={testIds.prevPage}\n icon={ChevronLeftIcon}\n label=\"Previous page button\"\n onClick={goBack}\n />\n <GoToPage\n data-event={eventName(SEARCH_ANALYTICS.RESULTS, \"Go to Page\")}\n data-testid={testIds.goToPage}\n offset={offset}\n pageLimit={pageLimit}\n />\n <ArrowButton\n data-event={eventName(SEARCH_ANALYTICS.RESULTS, \"Next Page\")}\n data-testid={testIds.nextPage}\n icon={ChevronRightIcon}\n label=\"Next page button\"\n onClick={goForward}\n />\n </Stack>\n );\n};\n","import { FunctionComponent, useState } from \"react\";\nimport { SearchBar as SearchBarComponent } from \"../../components/SearchBar\";\nimport { SEARCH_ANALYTICS } from \"./constants\";\nimport { useSearchQuery } from \"./useSearchParam\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\nexport const SearchBar: FunctionComponent = () => {\n const query = useSearchQuery();\n const updateSearch = useUpdateSearchParam();\n\n const [value, setValue] = useState(query ?? \"\");\n\n return (\n <SearchBarComponent\n bg=\"bgSecondary\"\n data-event={SEARCH_ANALYTICS.SEARCH}\n onChange={(e) => setValue(e.target.value)}\n onSubmit={(e) => {\n e.preventDefault();\n\n updateSearch({\n query: value,\n sort: undefined,\n });\n }}\n value={value}\n />\n );\n};\n","import { Text } from \"@chakra-ui/react\";\nimport { FunctionComponent } from \"react\";\nimport testIds from \"./testIds\";\n\nexport interface SearchDetailsProps {\n limit: number;\n offset: number;\n count: number;\n filtered: boolean;\n query?: string;\n}\n\nconst Em: FunctionComponent = ({ children }) => (\n <Text as=\"strong\" color=\"textSecondary\">\n {children}\n </Text>\n);\n\nconst Count: FunctionComponent<{\n first: number;\n count: number;\n last: number;\n}> = ({ first, count, last }) => {\n if (!first && last >= count) {\n return (\n <>\n <Em>{count}</Em> of <Em>{count}</Em>\n </>\n );\n }\n\n return (\n <>\n <Em>\n {count ? first + 1 : count} - {last > count ? count : last}\n </Em>{\" \"}\n of <Em>{count}</Em>\n </>\n );\n};\n\nexport const SearchDetails: FunctionComponent<SearchDetailsProps> = ({\n limit,\n offset,\n count,\n filtered,\n query,\n}) => {\n const first = limit * offset;\n const last = first + limit;\n const hasResults = count > 0;\n\n return (\n <Text data-testid={testIds.searchDetails}>\n {hasResults ? (\n <>\n Displaying <Count count={count} first={first} last={last} />{\" \"}\n {filtered ? \"search results\" : \"constructs\"}\n </>\n ) : (\n <>{filtered ? \"There were no search results\" : \"No constructs found\"}</>\n )}\n {query && (\n <>\n {\" for \"}\n <Em>{query}</Em>\n </>\n )}\n .{!hasResults && filtered && <> Try a different term.</>}\n </Text>\n );\n};\n","import { FunctionComponent } from \"react\";\nimport { CatalogSearchSort } from \"../../api/catalog-search/constants\";\nimport { SORT_RENDER_MAP } from \"./constants\";\nimport { RadioFilter } from \"./RadioFilter\";\nimport { useSort } from \"./useSearchParam\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\nexport const SortFilter: FunctionComponent = () => {\n const sort = useSort();\n const updateSearch = useUpdateSearchParam();\n\n const onSortChange = (newSort: string) => {\n updateSearch({\n sort: newSort ? (newSort as CatalogSearchSort) : undefined,\n });\n };\n\n return (\n <RadioFilter\n hint=\"Sets the order of search results\"\n name=\"Sorted By\"\n onValueChange={onSortChange}\n options={[\n { display: \"Relevance\", value: \"\" },\n ...Object.entries(SORT_RENDER_MAP).map(([value, display]) => ({\n display,\n value,\n })),\n ]}\n value={sort ?? \"\"}\n />\n );\n};\n","import { ChevronDownIcon } from \"@chakra-ui/icons\";\nimport {\n Button,\n Drawer,\n Stack,\n DrawerBody,\n DrawerHeader,\n DrawerOverlay,\n DrawerContent,\n DrawerCloseButton,\n useDisclosure,\n} from \"@chakra-ui/react\";\nimport { FunctionComponent } from \"react\";\nimport { CDKFilter } from \"./CDKFilter\";\nimport { KeywordsFilter } from \"./KeywordsFilter\";\nimport { LanguageFilter } from \"./LanguageFilter\";\nimport { SortFilter } from \"./SortFilter\";\nimport { TagFilter } from \"./TagFilter\";\n\n/**\n * The mobile filter Drawer (Bottomsheet in iOS terminology)\n */\nexport const SortAndFilterDrawer: FunctionComponent = () => {\n const drawer = useDisclosure();\n return (\n <>\n <Button\n colorScheme=\"brand\"\n display={{ md: \"none\" }}\n onClick={drawer.onOpen}\n rightIcon={<ChevronDownIcon />}\n variant=\"link\"\n >\n Sorting and Filters\n </Button>\n <Drawer {...drawer} placement=\"bottom\">\n <DrawerOverlay />\n\n <DrawerContent color=\"textPrimary\" maxH=\"full\">\n <DrawerHeader borderBottom=\"base\">Sorting and Filters</DrawerHeader>\n\n <DrawerCloseButton />\n\n <DrawerBody>\n <Stack color=\"textPrimary\" pb={4} spacing={4}>\n <SortFilter />\n\n <CDKFilter />\n\n <LanguageFilter />\n\n <TagFilter />\n\n <KeywordsFilter />\n </Stack>\n </DrawerBody>\n </DrawerContent>\n </Drawer>\n </>\n );\n};\n","import { ChevronDownIcon } from \"@chakra-ui/icons\";\nimport {\n Flex,\n Text,\n Menu,\n MenuButton,\n MenuList,\n MenuItem,\n Button,\n} from \"@chakra-ui/react\";\nimport { FunctionComponent } from \"react\";\nimport { CatalogSearchSort } from \"../../api/catalog-search/constants\";\nimport { eventName } from \"../../contexts/Analytics\";\nimport { SEARCH_ANALYTICS, SORT_RENDER_MAP } from \"./constants\";\nimport testIds from \"./testIds\";\nimport { useSort } from \"./useSearchParam\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\nexport const SortedBy: FunctionComponent = () => {\n const sort = useSort();\n const updateSearch = useUpdateSearchParam();\n\n const selected = sort ? SORT_RENDER_MAP[sort] : \"Relevance\";\n\n return (\n <Flex align=\"center\">\n <Text>Sorted by</Text>\n <Menu>\n <MenuButton\n as={Button}\n color=\"link\"\n data-event={eventName(SEARCH_ANALYTICS.SORT, \"Menu\")}\n data-testid={testIds.sortButton}\n ml={2}\n pl={2} // For some reason, the px shorthand doesn't work on this Button\n pr={2}\n py={1}\n rightIcon={<ChevronDownIcon />}\n variant=\"link\"\n >\n {selected}\n </MenuButton>\n <MenuList data-testid={testIds.sortDropdown} minW=\"180\" zIndex=\"sticky\">\n <MenuItem\n data-event={eventName(SEARCH_ANALYTICS.SORT, \"Option\", \"Relevance\")}\n data-testid={testIds.sortItem}\n data-value=\"\"\n key=\"Relevance\"\n onClick={() => updateSearch({ sort: undefined })}\n >\n Relevance\n </MenuItem>\n {Object.entries(SORT_RENDER_MAP).map(([value, display]) => (\n <MenuItem\n data-event={eventName(SEARCH_ANALYTICS.SORT, \"Option\", display)}\n data-testid={testIds.sortItem}\n data-value={value}\n key={value}\n onClick={() => updateSearch({ sort: value as CatalogSearchSort })}\n >\n {display}\n </MenuItem>\n ))}\n </MenuList>\n </Menu>\n </Flex>\n );\n};\n","import { Box, Stack } from \"@chakra-ui/react\";\nimport { FunctionComponent, useEffect } from \"react\";\nimport { PackageList } from \"../../components/PackageList\";\nimport { Page } from \"../../components/Page\";\nimport { useCatalogResults } from \"../../hooks/useCatalogResults\";\nimport { LIMIT, SEARCH_ANALYTICS } from \"./constants\";\nimport { PageControls } from \"./PageControls\";\nimport { SearchBar } from \"./SearchBar\";\nimport { SearchDetails } from \"./SearchDetails\";\nimport { SortAndFilterDrawer } from \"./SortAndFilterDrawer\";\nimport { SortedBy } from \"./SortedBy\";\nimport {\n useCdkType,\n useCdkMajor,\n useKeywords,\n useLanguages,\n useOffset,\n useSearchQuery,\n useSort,\n useTags,\n} from \"./useSearchParam\";\nimport { useUpdateSearchParam } from \"./useUpdateSearchParam\";\n\nexport const SearchResults: FunctionComponent = () => {\n const updateSearch = useUpdateSearchParam();\n\n const offset = useOffset();\n const query = useSearchQuery();\n const keywords = useKeywords();\n const languages = useLanguages();\n const cdkMajor = useCdkMajor();\n const cdkType = useCdkType();\n const sort = useSort();\n const tags = useTags();\n\n const { page, pageLimit, results } = useCatalogResults({\n offset,\n limit: LIMIT,\n query,\n keywords,\n languages,\n cdkMajor,\n cdkType,\n sort,\n tags,\n });\n\n // Resets the page number to 1 if query param offset is below 0, or to the last page if offset is higher than page count\n useEffect(() => {\n // If the query has results but the page has nothing to show...\n if (results.length && (offset < 0 || offset > pageLimit)) {\n // Handle an out of bounds offset\n if (offset < 0) {\n updateSearch({ offset: 0 });\n } else {\n // Offset is too large, just take last page\n updateSearch({ offset: pageLimit });\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [results, offset, pageLimit]);\n\n // Scroll to top on page change\n useEffect(() => {\n window.scrollTo(0, 0);\n }, [page]);\n\n return (\n <Page\n meta={{\n title: query || \"Search\",\n description: query\n ? `${results.length} results for ${query} at Construct Hub`\n : \"Search reusable components for your cloud application\",\n }}\n pageName=\"search\"\n >\n <Stack direction=\"column\" maxW=\"100vw\" pb={4} px={4} spacing={4}>\n <SearchBar />\n\n <Stack\n align={{ base: \"start\", lg: \"center\" }}\n direction={{ base: \"column-reverse\", lg: \"row\" }}\n justify={{ base: \"initial\", lg: \"space-between\" }}\n spacing={4}\n >\n <SearchDetails\n count={results.length}\n filtered={!!query}\n limit={LIMIT}\n offset={offset}\n query={query}\n />\n\n <Box display={{ base: \"none\", md: \"initial\" }}>\n <SortedBy />\n </Box>\n\n <Box display={{ md: \"none\" }}>\n <SortAndFilterDrawer />\n </Box>\n </Stack>\n\n <PackageList data-event={SEARCH_ANALYTICS.RESULTS} items={page} />\n\n <Box w=\"full\">\n <PageControls offset={offset} pageLimit={pageLimit} />\n </Box>\n </Stack>\n </Page>\n );\n};\n","import { Grid } from \"@chakra-ui/react\";\nimport { FunctionComponent } from \"react\";\nimport { Page } from \"../../components/Page\";\nimport { FilterPanel } from \"./FilterPanel\";\nimport { SearchResults } from \"./SearchResults\";\nimport testIds from \"./testIds\";\n\nexport const Search: FunctionComponent = () => {\n return (\n <Page\n meta={{\n title: \"Search - Construct Hub\",\n description: \"Search Construct Libraries for AWS CDK, CDK8s, and CDKtf\",\n }}\n pageName=\"search\"\n >\n <Grid\n data-testid={testIds.page}\n gap={4}\n h=\"full\"\n maxW=\"100%\"\n px={{ base: 0, md: 6 }}\n py={6}\n templateColumns={{ base: \"1fr\", md: \"auto 1fr\" }}\n templateRows=\"1fr\"\n >\n {/* Filter Panel Desktop */}\n <FilterPanel />\n\n {/* Results, Info, and Controls */}\n <SearchResults />\n </Grid>\n </Page>\n );\n};\n"],"names":["SORT_RENDER_MAP","CatalogSearchSort","searchEvent","e","eventName","SEARCH_ANALYTICS","FILTERS","RESULTS","SEARCH","SORT","FilterHeading","name","hint","placement","useBreakpointValue","base","md","align","mb","as","size","w","colorScheme","strategy","ml","h","bg","borderRadius","color","fontSize","mx","shadow","createTestIds","RadioFilter","dataTestid","checkedValue","value","onValueChange","options","spacing","onChange","map","display","dataEvent","testIds","filterItem","isTruncated","toNum","val","result","parseInt","parseQueryArray","queryString","decodeURIComponent","split","getParamFromUrl","key","window","URL","location","href","searchParams","get","useSearchParam","transform","qp","useQueryParams","useMemo","useCdkType","QUERY_PARAMS","undefined","useCdkMajor","p","useKeywords","useLanguages","useSearchQuery","useSort","useTags","useUpdateSearchParam","push","useHistory","useCallback","offset","params","getSearchPath","query","keywords","cdkType","cdkMajor","cdkMajorParam","languages","sort","tags","getSearchUrlParams","CDKFilter","updateSearch","searchAPI","useSearchContext","cdkOptions","cdkTypes","constructFrameworks","Object","entries","reduce","opts","meta","pkgCount","CDKTYPE_NAME_MAP","keys","length","majorsOptions","majorVersions","a","b","toString","cdkTypeFilter","type","values","cdkVersionFilter","major","majorNum","CheckboxItem","isDisabled","disabledHint","isChecked","hasArrow","label","CheckboxFilter","initialItemCount","checkedValues","collapse","useDisclosure","trackCustomEvent","useAnalytics","getOnChange","item","clickEvent","alwaysShow","showWhenExpanded","slice","isExpandible","direction","mt","includes","animateOpacity","in","isOpen","unmountOnExit","fontWeight","leftIcon","onClick","onToggle","textAlign","variant","KeywordsFilter","keywordMap","keywordOptions","baseOptions","filter","keyword","keywordsNotInOptions","k","some","opt","languagesFilter","languageOptions","LANGUAGE_NAME_MAP","TEMP_SUPPORTED_LANGUAGES","l1","l2","LanguageFilter","lang","language","l","TagFilter","packageTags","useConfigValue","packageTagGroups","tagFilterGroups","tagGroupsMap","Map","forEach","group","set","id","accum","tag","groupIdOrName","searchFilter","groupBy","customGroup","entry","mapTagsToFilterGroups","Boolean","onTagsChange","t","getOnRadioTagChange","groupName","groupTags","Set","filteredTags","has","filterType","tooltip","tagItems","sharedProps","find","TOP_OFFSET","FilterPanel","Card","filtersPanel","maxH","maxW","minW","overflow","pos","top","zIndex","listViews","PackageCardType","items","pkg","PackageCard","version","PackageList","memo","cardView","loading","View","displayName","ArrowButton","Icon","icon","props","borderColor","disabled","GoToPage","pageLimit","useState","inputValue","setInputValue","useEffect","onSubmit","preventDefault","max","min","target","onFocus","PageControls","goForward","goBack","justify","prevPage","ChevronLeftIcon","goToPage","nextPage","ChevronRightIcon","SearchBar","setValue","Em","children","Count","first","count","last","SearchDetails","limit","filtered","hasResults","searchDetails","SortFilter","newSort","SortAndFilterDrawer","drawer","onOpen","rightIcon","borderBottom","pb","SortedBy","selected","Button","sortButton","pl","pr","py","sortDropdown","sortItem","SearchResults","o","useCatalogResults","page","results","scrollTo","Page","title","description","pageName","px","lg","Search","gap","templateColumns","templateRows"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkconstruct_hub_webapp=self.webpackChunkconstruct_hub_webapp||[]).push([[540],{41712:function(e,t,n){n.d(t,{T:function(){return o}});var s=n(72791),a=n(54270),i={contribute:{event:{name:"Contribute Load"}},home:{event:{name:"Home Load"}},faq:{event:{name:"Frequently Asked Questions Load"}},packageProfile:{event:{name:"Package Profile Load"}},search:{event:{name:"Search Load"}},siteTerms:{event:{name:"Site Terms Load"}},notFound:{page:{pageType:"errorPage"},event:{name:"404 Page Load"}}},r=n(59534),c=n(80184),o=(["default-src 'self' 'unsafe-inline' http://*.awsstatic.com;","connect-src 'self' https://*.shortbread.aws.dev http://*.shortbread.aws.dev http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;","frame-src http://aws.demdex.net http://dpm.demdex.net;","img-src 'self' https://* http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;","object-src 'none';","style-src 'self' 'unsafe-inline';"].join(" "),function(e){var t=e.children,n=e.meta,o=e.pageName,h=(0,r.aQ)(i[o]);(0,s.useEffect)((function(){h()}),[h]);var d=n.suffix,m=void 0===d||d,l=n.title,u=n.description,p=m?"".concat(l," - Construct Hub"):l;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(a.q,{children:[!1,(0,c.jsx)("meta",{content:"width=device-width, initial-scale=1",name:"viewport"}),(0,c.jsx)("meta",{charSet:"utf-8"}),(0,c.jsx)("title",{children:p}),(0,c.jsx)("meta",{content:p,property:"og:title"}),(0,c.jsx)("meta",{content:p,name:"twitter:title"}),(0,c.jsx)("meta",{content:"summary",name:"twitter:card"}),(0,c.jsx)("meta",{content:u,name:"description"}),(0,c.jsx)("meta",{content:u,property:"og:description"}),(0,c.jsx)("meta",{content:u,name:"twitter:description"})]}),t]})})},98540:function(e,t,n){n.r(t),n.d(t,{default:function(){return o}});var s=n(28735),a=n(6074),i=n(41712),r=n(76798),c=n(80184),o=function(){return(0,c.jsx)(i.T,{meta:{title:"Site Terms",description:"View the Construct Hub Site Terms"},pageName:"siteTerms",children:(0,c.jsx)(s.xu,{bg:"bgSecondary",h:"100%",py:16,w:"100%",children:(0,c.jsxs)(s.xu,{as:"article",color:"textPrimary",fontSize:"lg",maxW:{base:"80%",md:"38rem"},mx:"auto",textAlign:"justify",w:"100%",children:[(0,c.jsx)(s.X6,{as:"h1",color:"textPrimary",mb:8,mx:"auto",size:"lg",children:"AWS Site Terms for CDK Construct Hub"}),(0,c.jsxs)(s.Kq,{spacing:4,children:[(0,c.jsx)(s.xv,{fontStyle:"italic",children:"Last Updated: July 2021"}),(0,c.jsxs)(s.xv,{children:["Welcome to the AWS CDK Construct Hub site (the \u201cAWS Site\u201d or \u201cConstruct Hub\u201d). Except as specifically follows, the AWS CDK Construct Hub site shall be subject to the"," ",(0,c.jsx)(a.d,{hasWarning:!1,href:"https://aws.amazon.com/terms/",children:"Site Terms"})," ","(\u201cAWS Site Terms\u201d) and considered an AWS Site for purposes of applying the AWS Site Terms (together, the \u201cCDK Construct Hub Site Terms\u201d)."]}),(0,c.jsxs)(s.xv,{children:["In place of the \u201cLicense and Site Access\u201d term of the AWS Site Terms, the Construct Hub is provided to you under this license:"," ",(0,c.jsx)(a.d,{hasWarning:!1,href:"".concat(r.Sx,"/blob/main/LICENSE"),children:"".concat(r.Sx,"/blob/main/LICENSE")}),". Some AWS Content and Third-Party Content may be provided to you under a separate license, such as the Apache License, Version 2.0, or other open source license. In the event of a conflict between the CDK Construct Hub Site Terms and any separate license, the separate license will prevail with respect to the AWS Content or Third-Party Content that is the subject of such separate license. This AWS Site is a construct registry and search site. The links to the CDK constructs displayed may comprise third party user generated content which shall, in any case, be subject to the \u201cDisclaimer of Warranties and Limitation of Liability\u201d section of the AWS Site Terms. Accessing a construct via its hyperlink will send you to a non-affiliated third party website (\u2018Third-Party Website\u201d) and you shall be subject to the terms and conditions of that Third-Party Website upon entering it."]})]})]})})})}}}]);
|
|
2
|
+
//# sourceMappingURL=540.2b86534a.chunk.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/540.
|
|
1
|
+
{"version":3,"file":"static/js/540.2b86534a.chunk.js","mappings":"4LAAaA,EAAW,CACtBC,WAAY,CACVC,MAAO,CACLC,KAAM,oBAGVC,KAAM,CACJF,MAAO,CACLC,KAAM,cAGVE,IAAK,CACHH,MAAO,CACLC,KAAM,oCAGVG,eAAgB,CACdJ,MAAO,CACLC,KAAM,yBAGVI,OAAQ,CACNL,MAAO,CACLC,KAAM,gBAGVK,UAAW,CACTN,MAAO,CACLC,KAAM,oBAGVM,SAAU,CACRC,KAAM,CACJC,SAAU,aAEZT,MAAO,CACLC,KAAM,mB,sBCVCS,GATD,CACV,6DACA,wNACA,yDACA,qKACA,qBACA,qCACAC,KAAK,KAE2C,SAAC,GAI5C,IAHLC,EAGI,EAHJA,SACAC,EAEI,EAFJA,KACAC,EACI,EADJA,SAEMC,GAAgBC,EAAAA,EAAAA,IAAYlB,EAASgB,KAE3CG,EAAAA,EAAAA,YAAU,WACRF,MACC,CAACA,IAEJ,MAA8CF,EAAtCK,OAAAA,OAAR,SAAuBC,EAAuBN,EAAvBM,MAAOC,EAAgBP,EAAhBO,YACxBC,EAAiBH,EAAM,UAAMC,EAAN,oBAAgCA,EAE7D,OACE,iCACE,UAACG,EAAA,EAAD,YACGC,GAID,iBAAMC,QAAQ,sCAAsCvB,KAAK,cACzD,iBAAMwB,QAAQ,WAEd,2BAAQJ,KACR,iBAAMG,QAASH,EAAgBK,SAAS,cACxC,iBAAMF,QAASH,EAAgBpB,KAAK,mBACpC,iBAAMuB,QAAQ,UAAUvB,KAAK,kBAE7B,iBAAMuB,QAASJ,EAAanB,KAAK,iBACjC,iBAAMuB,QAASJ,EAAaM,SAAS,oBACrC,iBAAMF,QAASJ,EAAanB,KAAK,2BAElCW,Q,6HCrDMe,EAA+B,kBAC1C,SAACjB,EAAA,EAAD,CACEG,KAAM,CACJM,MAAO,aACPC,YAAa,qCAEfN,SAAS,YALX,UAOE,SAAC,KAAD,CAAKc,GAAG,cAAcC,EAAE,OAAOC,GAAI,GAAIC,EAAE,OAAzC,UACE,UAAC,KAAD,CACEC,GAAG,UACHC,MAAM,cACNC,SAAS,KACTC,KAAM,CAAEC,KAAM,MAAOC,GAAI,SACzBC,GAAG,OACHC,UAAU,UACVR,EAAE,OAPJ,WASE,SAAC,KAAD,CAASC,GAAG,KAAKC,MAAM,cAAcO,GAAI,EAAGF,GAAG,OAAOG,KAAK,KAA3D,mDAGA,UAAC,KAAD,CAAOC,QAAS,EAAhB,WACE,SAAC,KAAD,CAAMC,UAAU,SAAhB,sCACA,UAAC,KAAD,uMAG6C,KAC3C,SAACC,EAAA,EAAD,CACEC,YAAY,EACZC,KAAK,gCAFP,wBAKgB,IATlB,oKAcA,UAAC,KAAD,sJAEkE,KAChE,SAACF,EAAA,EAAD,CACEC,YAAY,EACZC,KAAI,UAAKC,EAAAA,GAAL,sBAFN,mBAIMA,EAAAA,GAJN,wBAHF","sources":["constants/pageInfo.ts","components/Page/Page.tsx","views/SiteTerms/SiteTerms.tsx"],"sourcesContent":["export const pageInfo = {\n contribute: {\n event: {\n name: \"Contribute Load\",\n },\n },\n home: {\n event: {\n name: \"Home Load\",\n },\n },\n faq: {\n event: {\n name: \"Frequently Asked Questions Load\",\n },\n },\n packageProfile: {\n event: {\n name: \"Package Profile Load\",\n },\n },\n search: {\n event: {\n name: \"Search Load\",\n },\n },\n siteTerms: {\n event: {\n name: \"Site Terms Load\",\n },\n },\n notFound: {\n page: {\n pageType: \"errorPage\",\n },\n event: {\n name: \"404 Page Load\",\n },\n },\n} as const;\n","import { FunctionComponent, useEffect } from \"react\";\nimport { Helmet } from \"react-helmet\";\nimport { pageInfo } from \"../../constants/pageInfo\";\nimport { usePageView } from \"../../contexts/Analytics\";\n\nexport interface PageProps {\n pageName: keyof typeof pageInfo;\n meta: {\n suffix?: boolean;\n title: string;\n description: string;\n };\n}\n\n// Should be the same as the \"real\" CSP, except most things come from HTTP\n// instead of HTTPS (because it is protocol-relative, and the dev site is\n// served over plain HTTP).\nconst csp = [\n \"default-src 'self' 'unsafe-inline' http://*.awsstatic.com;\",\n \"connect-src 'self' https://*.shortbread.aws.dev http://*.shortbread.aws.dev http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"frame-src http://aws.demdex.net http://dpm.demdex.net;\",\n \"img-src 'self' https://* http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;\",\n \"object-src 'none';\",\n \"style-src 'self' 'unsafe-inline';\",\n].join(\" \");\n\nexport const Page: FunctionComponent<PageProps> = ({\n children,\n meta,\n pageName,\n}) => {\n const trackPageView = usePageView(pageInfo[pageName]);\n\n useEffect(() => {\n trackPageView();\n }, [trackPageView]);\n\n const { suffix = true, title, description } = meta;\n const formattedTitle = suffix ? `${title} - Construct Hub` : title;\n\n return (\n <>\n <Helmet>\n {process.env.NODE_ENV === \"development\" && (\n <meta content={csp} httpEquiv=\"Content-Security-Policy\" />\n )}\n\n <meta content=\"width=device-width, initial-scale=1\" name=\"viewport\" />\n <meta charSet=\"utf-8\" />\n\n <title>{formattedTitle}</title>\n <meta content={formattedTitle} property=\"og:title\" />\n <meta content={formattedTitle} name=\"twitter:title\" />\n <meta content=\"summary\" name=\"twitter:card\" />\n\n <meta content={description} name=\"description\" />\n <meta content={description} property=\"og:description\" />\n <meta content={description} name=\"twitter:description\" />\n </Helmet>\n {children}\n </>\n );\n};\n","import { Box, Heading, Stack, Text } from \"@chakra-ui/react\";\nimport type { FunctionComponent } from \"react\";\nimport { ExternalLink } from \"../../components/ExternalLink\";\nimport { Page } from \"../../components/Page\";\nimport { CONSTRUCT_HUB_REPO_URL } from \"../../constants/links\";\n\nexport const SiteTerms: FunctionComponent = () => (\n <Page\n meta={{\n title: \"Site Terms\",\n description: \"View the Construct Hub Site Terms\",\n }}\n pageName=\"siteTerms\"\n >\n <Box bg=\"bgSecondary\" h=\"100%\" py={16} w=\"100%\">\n <Box\n as=\"article\"\n color=\"textPrimary\"\n fontSize=\"lg\"\n maxW={{ base: \"80%\", md: \"38rem\" }}\n mx=\"auto\"\n textAlign=\"justify\"\n w=\"100%\"\n >\n <Heading as=\"h1\" color=\"textPrimary\" mb={8} mx=\"auto\" size=\"lg\">\n AWS Site Terms for CDK Construct Hub\n </Heading>\n <Stack spacing={4}>\n <Text fontStyle=\"italic\">Last Updated: July 2021</Text>\n <Text>\n Welcome to the AWS CDK Construct Hub site (the “AWS Site” or\n “Construct Hub”). Except as specifically follows, the AWS CDK\n Construct Hub site shall be subject to the{\" \"}\n <ExternalLink\n hasWarning={false}\n href=\"https://aws.amazon.com/terms/\"\n >\n Site Terms\n </ExternalLink>{\" \"}\n (“AWS Site Terms”) and considered an AWS Site for purposes of\n applying the AWS Site Terms (together, the “CDK Construct Hub Site\n Terms”).\n </Text>\n <Text>\n In place of the “License and Site Access” term of the AWS Site\n Terms, the Construct Hub is provided to you under this license:{\" \"}\n <ExternalLink\n hasWarning={false}\n href={`${CONSTRUCT_HUB_REPO_URL}/blob/main/LICENSE`}\n >\n {`${CONSTRUCT_HUB_REPO_URL}/blob/main/LICENSE`}\n </ExternalLink>\n . Some AWS Content and Third-Party Content may be provided to you\n under a separate license, such as the Apache License, Version 2.0,\n or other open source license. In the event of a conflict between the\n CDK Construct Hub Site Terms and any separate license, the separate\n license will prevail with respect to the AWS Content or Third-Party\n Content that is the subject of such separate license. This AWS Site\n is a construct registry and search site. The links to the CDK\n constructs displayed may comprise third party user generated content\n which shall, in any case, be subject to the “Disclaimer of\n Warranties and Limitation of Liability” section of the AWS Site\n Terms. Accessing a construct via its hyperlink will send you to a\n non-affiliated third party website (‘Third-Party Website”) and you\n shall be subject to the terms and conditions of that Third-Party\n Website upon entering it.\n </Text>\n </Stack>\n </Box>\n </Box>\n </Page>\n);\n"],"names":["pageInfo","contribute","event","name","home","faq","packageProfile","search","siteTerms","notFound","page","pageType","Page","join","children","meta","pageName","trackPageView","usePageView","useEffect","suffix","title","description","formattedTitle","Helmet","process","content","charSet","property","SiteTerms","bg","h","py","w","as","color","fontSize","maxW","base","md","mx","textAlign","mb","size","spacing","fontStyle","ExternalLink","hasWarning","href","CONSTRUCT_HUB_REPO_URL"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkconstruct_hub_webapp=self.webpackChunkconstruct_hub_webapp||[]).push([[543,577],{29880:function(e,n,t){t.d(n,{KD:function(){return a},_J:function(){return o},Kj:function(){return i},_c:function(){return c}});var r=t(29499),a=function(e,n){return n?"".concat(n,"/").concat(e):e},o=function(e,n,t){var o="".concat(r.i0.PACKAGES_PREFIX,"/"),i=a(e,t),c="/v".concat(n);return"".concat(o).concat(i).concat(c)},i=function(e){var n=e;return(n.startsWith("~")||n.startsWith("^"))&&(n=n.substring(1)),n},c=function(e,n){var t=e.packages.filter((function(e){return e.name===n}));return t.length>1?t.sort((function(e,n){var t=new Date(e.metadata.date);return new Date(n.metadata.date).getTime()-t.getTime()}))[0]:t[0]}},50535:function(e,n,t){t.d(n,{y:function(){return c}});var r=t(28227),a=t(28735),o=t(53046),i=t(80184),c=function(e){var n=e.label,t=e.color,c=e.icon,s=(0,r.ff)("none","brightness(1.75)");return(0,i.jsxs)(a.Kq,{align:"center",direction:"row",filter:s,spacing:2,children:[(0,i.jsx)(o.Ee,{alt:"".concat(n," icon"),src:c,w:4}),(0,i.jsx)(a.xv,{color:t,fontWeight:"bold",children:n})]})}},2148:function(e,n,t){t.d(n,{N:function(){return i}});var r=t(81070),a=t(86617),o=t(80184),i=function(e){var n=e.children,t=e.language,i=a.dX.has(t),c=a.k8[t],s=i?"Click to view documentation in ".concat(c):"Documentation support for ".concat(c," is coming soon!");return(0,o.jsx)(r.u,{hasArrow:!0,label:s,placement:"top-start",children:(0,o.jsx)("span",{children:n})})}},29988:function(e,n,t){t.d(n,{X:function(){return d}});var r=t(1413),a=t(45987),o=t(96450),i=t(19748),c=t(67003),s=t(80184),l=["children","value","label","zIndex"],d=function(e){var n=e.children,t=e.value,d=e.label,u=void 0===d?t:d,h=e.zIndex,p=(0,a.Z)(e,l);return(0,s.jsx)(c.O,{"aria-label":"Tag: ".concat(u),to:(0,i.yc)({keywords:[t]}),zIndex:h,children:(0,s.jsx)(o.Vp,(0,r.Z)((0,r.Z)({_hover:{textDecoration:"underline"}},p),{},{children:(0,s.jsx)(o.Sn,{children:n})}))})}},41712:function(e,n,t){t.d(n,{T:function(){return s}});var r=t(72791),a=t(54270),o={contribute:{event:{name:"Contribute Load"}},home:{event:{name:"Home Load"}},faq:{event:{name:"Frequently Asked Questions Load"}},packageProfile:{event:{name:"Package Profile Load"}},search:{event:{name:"Search Load"}},siteTerms:{event:{name:"Site Terms Load"}},notFound:{page:{pageType:"errorPage"},event:{name:"404 Page Load"}}},i=t(59534),c=t(80184),s=(["default-src 'self' 'unsafe-inline' http://*.awsstatic.com;","connect-src 'self' https://*.shortbread.aws.dev http://*.shortbread.aws.dev http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;","frame-src http://aws.demdex.net http://dpm.demdex.net;","img-src 'self' https://* http://a0.awsstatic.com/ http://amazonwebservices.d2.sc.omtrdc.net http://aws.demdex.net http://dpm.demdex.net http://cm.everesttech.net;","object-src 'none';","style-src 'self' 'unsafe-inline';"].join(" "),function(e){var n=e.children,t=e.meta,s=e.pageName,l=(0,i.aQ)(o[s]);(0,r.useEffect)((function(){l()}),[l]);var d=t.suffix,u=void 0===d||d,h=t.title,p=t.description,v=u?"".concat(h," - Construct Hub"):h;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(a.q,{children:[!1,(0,c.jsx)("meta",{content:"width=device-width, initial-scale=1",name:"viewport"}),(0,c.jsx)("meta",{charSet:"utf-8"}),(0,c.jsx)("title",{children:v}),(0,c.jsx)("meta",{content:v,property:"og:title"}),(0,c.jsx)("meta",{content:v,name:"twitter:title"}),(0,c.jsx)("meta",{content:"summary",name:"twitter:card"}),(0,c.jsx)("meta",{content:p,name:"description"}),(0,c.jsx)("meta",{content:p,property:"og:description"}),(0,c.jsx)("meta",{content:p,name:"twitter:description"})]}),n]})})},79227:function(e,n,t){t.d(n,{q:function(){return d}});var r=t(1413),a=t(45987),o=t(63209),i=t(28735),c=t(29158),s=t(80184),l=["date","format","formattedDate"],d=(0,o.Gp)((function(e,n){var t=e.date,o=e.format,d=e.formattedDate,u=(0,a.Z)(e,l);return(0,s.jsx)(i.xu,(0,r.Z)((0,r.Z)({as:"time",dateTime:t.toISOString(),ref:n},u),{},{children:null!==d&&void 0!==d?d:(0,c.Z)(t,null!==o&&void 0!==o?o:"")}))}));d.displayName="Time"},56804:function(e,n,t){t.d(n,{E:function(){return a}});var r=t(24026),a=function(e){var n=(0,r.Z)().data;return(null!==n&&void 0!==n?n:{})[e]}},7991:function(e,n,t){t.d(n,{Z:function(){return p}});var r=t(70885),a=t(72791),o=t(79271),i=t(86617),c=t(29499),s=t(4487),l=i.SQ.TypeScript,d="preferred-language",u=function(e){return null!=e&&i.dX.has(e)},h=function(e){if(u(e))return e;try{var n,t=null!==(n=localStorage.getItem(d))&&void 0!==n?n:"";if(u(t))return t}catch(r){}return l},p=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.updateUrl,t=e.updateSaved,i=(0,o.TH)(),l=i.pathname,p=i.hash,v=(0,o.k6)(),m=v.replace,f=(0,s.K)(),x=f.get(c.Tx.LANGUAGE),g=(0,a.useState)((function(){return h(x)})),j=(0,r.Z)(g,2),b=j[0],y=j[1];(0,a.useEffect)((function(){u(x)&&x!==b&&y(x)}),[x]),(0,a.useEffect)((function(){x!==b&&n&&(f.set(c.Tx.LANGUAGE,b),m({pathname:l,hash:p,search:f.toString()}))}),[b,n]);var w=(0,a.useCallback)((function(e){if(y(e),t)try{localStorage.setItem(d,e)}catch(n){}}),[t]);return(0,a.useMemo)((function(){return[b,w]}),[b,w])}},4487:function(e,n,t){t.d(n,{K:function(){return o}});var r=t(72791),a=t(79271),o=function(){var e=(0,a.TH)().search;return(0,r.useMemo)((function(){return new URLSearchParams(e)}),[e])}},98371:function(e,n,t){t.d(n,{JA:function(){return i},QX:function(){return c}});var r=t(1413),a=t(42982),o=t(9272),i=function(e){return!e||e.length<1?[]:e.reduce((function(e,n){return n.highlight?[].concat((0,a.Z)(e),[n.highlight]):e}),[])},c=function(e){for(var n=e.packageTags,t=e.keywords,i=new Array,c=new Set,s=0,l=[].concat((0,a.Z)(function(e){return(null!==e&&void 0!==e?e:[]).filter((function(e){var n;return Boolean(null===(n=e.keyword)||void 0===n?void 0:n.label)})).map((function(e){var n;return(0,r.Z)((0,r.Z)({},e),{},{id:null===(n=e.keyword)||void 0===n?void 0:n.label})}))}(n)),(0,a.Z)(function(e){return!e||e.length<1?[]:e.filter((function(e){return Boolean(e)&&!o.h.has(e)})).map((function(e){return{id:e,keyword:{label:e}}}))}(t)));s<l.length;s++){var d=l[s],u=d.keyword.label.toLowerCase();c.has(u)||(i.push(d),c.add(u))}return i}},42577:function(e,n,t){t.r(n),t.d(n,{NotFound:function(){return m},default:function(){return m}});var r=t(28735),a=t(82504),o=t(91523),i=t(41712),c=t(1413),s=t(45987),l=t(63209),d=t(53046),u=t(80184),h=["sources"],p=(0,l.Gp)((function(e,n){var t=e.sources,a=(0,s.Z)(e,h);return(0,u.jsxs)(r.xu,{as:"picture",children:[null===t||void 0===t?void 0:t.map((function(e,n){return(0,u.jsx)("source",{media:e.media,srcSet:e.srcSet},n)})),(0,u.jsx)(d.Ee,(0,c.Z)({ref:n},a))]})}));p.displayName="Picture";var v={optimal:[{media:"(max-width:1024px)",srcSet:"/assets/404-hive@50.webp"},{media:"(min-width:1024px)",srcSet:"/assets/404-hive@100.webp"},{media:"(min-width:1024px)",srcSet:"/assets/404-hive@100.png"}],fallback:"/assets/404-hive@50.png"},m=function(){return(0,u.jsx)(i.T,{meta:{title:"Not Found",description:"Oops! The page you were looking for does not exist"},pageName:"notFound",children:(0,u.jsxs)(r.M5,{h:"100%",position:"relative",w:"100%",children:[(0,u.jsx)(p,{alt:"",inset:0,position:"absolute",sources:v.optimal,src:v.fallback,zIndex:"hide"}),(0,u.jsxs)(r.kC,{align:"center",direction:"column",justify:"center",children:[(0,u.jsx)(p,{alt:"404 Image",sources:[{srcSet:"/assets/robot.webp"}],src:"/assets/robot.png"}),(0,u.jsx)(a.zx,{as:o.rU,colorScheme:"brand",to:"/",children:"Take Me Home"})]})]})})}},26543:function(e,n,t){t.r(n),t.d(n,{default:function(){return ot}});var r=t(79271),a=t(42577),o=t(70885),i=t(28735),c=t(13822),s=t(72791),l=t(41712),d=t(78236),u=function(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return d.o.apply(void 0,["Package Page"].concat(n))},h={SCOPE:u(),SELECT_VERSION:u("Select Version"),CDK_BADGE:{eventName:function(e){return u("CDK Badge",e)}},KEYWORD:{eventName:function(e){return u("Keyword",e)}},LANGUAGE:{eventName:function(e){return u("Language",e)}},DOCUMENTATION:{TAB:u("Documentation","Tab")},DEPENDENCIES:{TAB:u("Dependencies","Tab")},FEEDBACK:{PUBLISHER:u("Feedback","Publisher"),CONSTRUCT_HUB:u("Feedback","Construct Hub"),ABUSE:u("Feedback","Abuse")}},p=t(29880),v=t(67003),m=t(7752),f=t(19748),x=t(1413),g=t(91933),j=t(15861),b=t(87757),y=t.n(b),w=t(29499),k=function(){var e=(0,j.Z)(y().mark((function e(n,t,r){var a,o;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a="".concat((0,p._J)(n,t,r)).concat(w.i0.ASSEMBLY_SUFFIX),e.next=3,fetch(a);case 3:if((o=e.sent).ok){e.next=6;break}throw new Error("Failed fetching assembly for ".concat(a,": ").concat(o.statusText));case 6:return e.abrupt("return",o.json());case 7:case"end":return e.stop()}}),e)})));return function(n,t,r){return e.apply(this,arguments)}}(),C=function(){var e=(0,j.Z)(y().mark((function e(n,t,r,a,o){var i,c,s,l,d;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i="/docs-".concat(o?"".concat(o,"-"):"").concat(r,".md"),c="".concat((0,p._J)(n,t,a)).concat(i),e.next=4,fetch(c);case 4:if((s=e.sent).ok){e.next=7;break}throw new Error("Failed fetching documentation for ".concat(c,": ").concat(s.statusText));case 7:if(l="text/markdown",(d=s.headers.get("Content-Type"))&&d.includes(l)){e.next=11;break}throw new Error("Invalid content type: ".concat(d,". Expected ").concat(l,'"'));case 11:return e.abrupt("return",s.text());case 12:case"end":return e.stop()}}),e)})));return function(n,t,r,a,o){return e.apply(this,arguments)}}(),S=function(){var e=(0,j.Z)(y().mark((function e(n,t,r){var a,o,i;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(a=t).startsWith("^")&&(a=a.substring(1,a.length)),o="".concat((0,p._J)(n,t,r)).concat(w.i0.METADATA_SUFFIX),e.next=5,fetch(o);case 5:if((i=e.sent).ok){e.next=8;break}throw new Error("Failed fetching metadata for ".concat(o,": ").concat(i.statusText));case 8:return e.abrupt("return",i.json());case 9:case"end":return e.stop()}}),e)})));return function(n,t,r){return e.apply(this,arguments)}}(),Z=t(86617),T=t(7991),L=t(4487),E={packages:{},updated:"NOT_FOUND"},O=function(){var e=(0,j.Z)(y().mark((function e(){var n;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch(w.i0.ALL_VERSIONS);case 2:if((n=e.sent).ok){e.next=7;break}return console.error(n.statusText),console.warn("Could not retrieve package versions. Using empty data."),e.abrupt("return",E);case 7:return e.abrupt("return",n.json().catch((function(e){return console.error(e),console.warn("Error in package versions response. Using empty data."),E})));case 8:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),I=t(4942),A=t(42982),D=t(15841),N=t.n(D),z=function(e){return e.toLowerCase().replace(/[^a-zA-Z0-9 ]/g,"").replace(/ /g,"-")},P=function e(n,t){var r=n[n.length-1];return r&&r.level<t.level?(r.children=e(r.children,t),n):(n.push(t),n)},B=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:6,t=new RegExp("(`{3}[\\s\\S]*?(?:`{3})|^#{1,".concat(n,"}[^#].*)"),"gm");return e.split(t).reduce((function(e,n){var t=e[e.length-1];return n.startsWith("#")||null!==t&&void 0!==t&&t.startsWith("#")?[].concat((0,A.Z)(e),[n]):(e[e.length-1]+=n,e)}),[])},R=function(e){var n,t,r,a,i=(null!==(n=e.match(/(\S+)\s*=\s*(\"?)([^"]*)(\2|\s|$)/g))&&void 0!==n?n:[]).reduce((function(e,n){var t,r=n.split("="),a=(0,o.Z)(r,2),i=a[0],c=a[1],s=null!==(t=/['"](.*?)['"]/.exec(c))&&void 0!==t?t:[],l=(0,o.Z)(s,2),d=(l[0],l[1]);return(0,x.Z)((0,x.Z)({},e),{},(0,I.Z)({},i,d))}),{}),c=null!==(t=/^#*\s*(?:<a\s.*?(?:\/>|<\/a>))?\s*([^<]+?)\s*(?:<|$)/.exec(e))&&void 0!==t?t:[e,e],s=(0,o.Z)(c,2),l=(s[0],s[1].replace(/\[([^\]]+)\](?:\([^)]+\)|\[[^\]]+\])/g,"$1").replace(/:\+1:|:-1:|:[\w-]+:/g,(function(e){var n;return null!==(n=N().get(e))&&void 0!==n?n:e}))),d=null!==(r=i["data-heading-title"])&&void 0!==r?r:l;return{id:null!==(a=i["data-heading-id"])&&void 0!==a?a:encodeURIComponent(z(d)),title:d}},U=function(e,n){var t=n.scope,r=n.language,a=n.name,o=n.version,i=n.submodule,c=t?"".concat(t,"/").concat(a):"".concat(a),s="/packages/".concat(c,"/v/").concat(o),l="?".concat(w.Tx.LANGUAGE,"=").concat(r);i&&(l+="&submodule=".concat(i));var d='# API Reference <span data-heading-title="API Reference" data-heading-id="api-reference"></span>',u=e.split(d),h=u.length>1?u.pop():"",p=u.join(d),v=B(h,3),m=B(p),f=[d.trim()].concat((0,A.Z)(null!==v&&void 0!==v?v:[])),g="".concat(s).concat(l),j=m.reduce((function(e,n){if(n.startsWith("#")){var t,r,a=R(n),o=a.id,i=a.title,c=null!==(t=null===(r=n.match(/(#)/gm))||void 0===r?void 0:r.length)&&void 0!==t?t:1,s=function(e){return(e.endsWith(".")||e.endsWith(":"))&&(e=e.slice(0,-1)),e}(i),l={level:c,id:o,title:s,path:"".concat(g,"#").concat(o),children:[]};return P(e,l)}return e}),[]);1===j.length&&(j=j[0].children);var b,y,k=[].concat([{level:1,id:"Readme",title:"Readme",path:g,children:j}]),C={};return null===f||void 0===f||f.forEach((function(e){var n,t,r,a=e.match(/(^#{1,3}[^#].*)/g),o=null!==(n=null===(t=e.match(/(#)/gm))||void 0===t?void 0:t.length)&&void 0!==n?n:1;if(null!==a&&void 0!==a&&a.length){var i=R(e),c=i.id,d=i.title,u=3===o?(r=c,"".concat(s,"/api/").concat(r).concat(l)):void 0,h=(0,x.Z)({level:o,id:c,title:d,children:[]},u?{path:u}:{});k=P(k,h),b={id:c,title:d},y=o}else 3===y&&(C[b.id]={title:b.title,content:e})})),{readme:p,apiReference:C,menuItems:k}},W=t(80184),F=(0,s.createContext)(void 0),M=function(){var e=(0,s.useContext)(F);if(!e)throw new Error("This component must be a child of a <PackageStateProvider />");return e},K=function(e){var n,t,i,c,l,d=e.children,u=(0,r.UO)(),h=u.name,p=u.scope,v=u.version,m="".concat(p,"/").concat(h,"/v").concat(v),f=(0,T.Z)(),j=(0,o.Z)(f,1)[0],b=null!==(n=(0,L.K)().get(w.Tx.SUBMODULE))&&void 0!==n?n:"",y=(0,g.useQuery)("Versions",O).data,E=p?"".concat(p,"/").concat(h):h,I=null===y||void 0===y?void 0:y.packages[E],A=(0,g.useQuery)("".concat(m,"-docs-").concat(j,"-").concat(b),(function(){return C(h,v,Z.$[j],p,b)})),D=(0,g.useQuery)("".concat(m,"-assembly"),(function(){return k(h,v,p)})),N=(0,g.useQuery)("".concat(m,"-metadata"),(function(){return S(h,v,p)})),z="".concat(p?"".concat(p,"/").concat(h):h," ").concat(v),P=null!==(t=null===(i=D.data)||void 0===i?void 0:i.description)&&void 0!==t?t:"",B=Boolean(A.error||D.error),R=Boolean(!A.isLoading&&!D.isLoading&&A.data&&D.data),M=Boolean(j===Z.SQ.TypeScript||D.isLoading||D.error||null!=(null===(c=D.data)||void 0===c||null===(l=c.targets)||void 0===l?void 0:l[j.toString()])),K=Boolean(!N.isLoading&&(D.isLoading||A.isLoading)),_=(0,s.useMemo)((function(){return A.data?U(A.data,{scope:p,name:h,version:v,language:j,submodule:b}):{menuItems:[]}}),[A.data,h,p,v,j,b]);return D.error?(0,W.jsx)(a.NotFound,{}):(0,W.jsx)(F.Provider,{value:(0,x.Z)({assembly:D,hasDocs:R,hasError:B,isLoadingDocs:K,isSupported:M,language:j,markdown:A,metadata:N,name:h,pageDescription:P,pageTitle:z,scope:p,version:v,allVersions:I},_),children:d})},_=t(88606),H=(0,_.$)("package-page",["page","feedbackLinks","reportLink","reportAbuseLink","githubLink","dependenciesTab","dependenciesList","dependenciesLink","description","markdown","selectVersionButton","selectVersionDropdown","selectVersionItem"]),q=function(){var e,n=M().assembly.data;if(!n)return(0,W.jsx)(m.w,{});var t=Object.entries(null!==(e=n.dependencies)&&void 0!==e?e:{});return t.length?(0,W.jsx)(i.Kq,{"data-testid":H.dependenciesList,direction:"row",justify:"center",mx:"auto",spacing:4,wrap:"wrap",children:t.map((function(e){var n=(0,o.Z)(e,2),t=n[0],r=n[1];return(0,W.jsxs)(v.O,{_first:{ml:4},"data-testid":H.dependenciesLink,fontWeight:"semibold",p:2,to:(0,f.Mt)({name:t,version:(0,p.Kj)(r)}),children:[t," - ",r]},"".concat(t,"-").concat(r))}))}):(0,W.jsx)(i.M5,{children:"This library does not have any known CDK dependencies"})},Q=t(75272),G=t(10855),V=t(6074),X=t(76798),$=t(69113),J=function(e){return(0,W.jsxs)($.JO,(0,x.Z)((0,x.Z)({},e),{},{children:[(0,W.jsx)("path",{clipRule:"evenodd",d:"M10.2532 0C4.59124 0 0 4.59022 0 10.2532C0 14.7835 2.93785 18.6266 7.01174 19.9825C7.524 20.0776 7.71212 19.7601 7.71212 19.4893C7.71212 19.2448 7.70261 18.4371 7.6982 17.5804C4.84576 18.2006 4.24386 16.3706 4.24386 16.3706C3.77745 15.1855 3.10543 14.8704 3.10543 14.8704C2.17499 14.234 3.17555 14.2473 3.17555 14.2473C4.20498 14.3194 4.74728 15.3039 4.74728 15.3039C5.66176 16.871 7.14588 16.418 7.73097 16.1562C7.82299 15.4935 8.08871 15.041 8.38194 14.785C6.10457 14.5261 3.71038 13.6467 3.71038 9.718C3.71038 8.59859 4.11108 7.68394 4.76697 6.96573C4.66035 6.70765 4.30939 5.66481 4.86613 4.25252C4.86613 4.25252 5.72696 3.97695 7.68631 5.3035C8.50435 5.07616 9.38165 4.96189 10.2532 4.95799C11.1242 4.96189 12.002 5.07582 12.8216 5.30317C14.7785 3.97661 15.6383 4.25218 15.6383 4.25218C16.1964 5.6643 15.8455 6.70731 15.739 6.96539C16.3964 7.6836 16.7943 8.59825 16.7943 9.71766C16.7943 13.6557 14.3957 14.5227 12.1125 14.7767C12.4805 15.0949 12.8081 15.719 12.8081 16.6754C12.8081 18.0473 12.7963 19.1514 12.7963 19.4891C12.7963 19.762 12.981 20.0817 13.5005 19.981C17.5721 18.6237 20.5065 14.7818 20.5065 10.2532C20.5063 4.59056 15.9156 0.000169776 10.2532 0.000169776V0Z",fill:"currentColor",fillRule:"evenodd"}),(0,W.jsx)("path",{d:"M3.88318 14.7214C3.86059 14.7724 3.78045 14.7876 3.70744 14.7528C3.63274 14.7195 3.59114 14.6501 3.61525 14.599C3.63732 14.5464 3.71763 14.5319 3.79183 14.5671C3.86654 14.6005 3.90898 14.6706 3.88301 14.7216L3.88318 14.7214ZM4.29848 15.1848C4.24975 15.2301 4.15416 15.209 4.0893 15.1372C4.02206 15.0659 4.0095 14.9703 4.05925 14.9243C4.10984 14.8791 4.20255 14.9005 4.26978 14.9719C4.33668 15.0442 4.34992 15.1389 4.29865 15.1849L4.29848 15.1848ZM4.70291 15.7751C4.64009 15.8189 4.5372 15.778 4.4737 15.6868C4.41088 15.5955 4.41088 15.486 4.4754 15.4423C4.53873 15.3985 4.64009 15.4381 4.70461 15.5284C4.76709 15.621 4.76709 15.7305 4.70291 15.775V15.7751ZM5.25659 16.3458C5.20056 16.4078 5.08069 16.3911 4.99308 16.3067C4.9036 16.224 4.87864 16.1064 4.93484 16.0446C4.99189 15.9824 5.11227 15.9998 5.20039 16.0836C5.28987 16.1661 5.31687 16.284 5.25693 16.3456L5.25659 16.3458ZM6.02064 16.677C5.99568 16.7573 5.88056 16.7939 5.76426 16.7596C5.64829 16.7244 5.5724 16.6305 5.59617 16.5494C5.61994 16.4684 5.7359 16.4305 5.85289 16.467C5.96885 16.502 6.04475 16.5954 6.02064 16.677ZM6.8599 16.7383C6.86279 16.8229 6.76431 16.8928 6.64257 16.8945C6.51982 16.8974 6.42049 16.8288 6.4193 16.7456C6.4193 16.6602 6.51574 16.5911 6.63833 16.5887C6.76007 16.5865 6.86007 16.6545 6.86007 16.7382L6.8599 16.7383ZM7.64059 16.6056C7.65519 16.6879 7.57047 16.7726 7.44941 16.7952C7.33056 16.8173 7.22019 16.766 7.20491 16.6843C7.19031 16.5998 7.27656 16.5151 7.39541 16.4932C7.51664 16.4723 7.62531 16.522 7.64059 16.6057V16.6056Z",fill:"currentColor"})]}))},Y={h:6,ml:2,w:6},ee=function(){var e,n=M(),t=(0,G.Sx)({base:"horizontal",md:"vertical"}),r=(0,W.jsx)(i.iz,{borderColor:"white",mr:6,orientation:t}),a=n.metadata.data,o=n.assembly.data;if(!o||!a)return null;var c,s=null!==(e=null===o||void 0===o?void 0:o.repository)&&void 0!==e?e:{},l=void 0;"git"===s.type&&((l=null!==(c=s.url)&&void 0!==c&&c.endsWith(".git")?s.url.replace(".git",""):s.url).endsWith("/")&&(l=l.slice(0,l.length-1)));return(0,W.jsxs)(i.Kq,{align:"center",backgroundColor:"blue.600",borderTop:"1px solid",borderTopColor:"borderColor",color:"white","data-testid":H.feedbackLinks,direction:{base:"column",md:"row"},justify:"space-evenly",px:8,py:5,spacing:4,children:[l&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(V.d,{color:"currentcolor","data-event":h.FEEDBACK.PUBLISHER,"data-testid":H.githubLink,fontSize:"lg",fontWeight:"semibold",hasIcon:!1,href:"".concat(l,"/issues"),rightIcon:(0,W.jsx)(J,(0,x.Z)({color:"white"},Y)),variant:"solid",children:"Provide feedback to publisher"}),r]}),(0,W.jsx)(V.d,{color:"currentcolor","data-event":h.FEEDBACK.CONSTRUCT_HUB,"data-testid":H.reportLink,fontSize:"lg",fontWeight:"semibold",hasIcon:!1,href:"".concat(X.Sx,"/issues/new"),rightIcon:(0,W.jsx)(J,(0,x.Z)({color:"white"},Y)),children:"Provide feedback to Construct Hub"}),r,(0,W.jsx)(V.d,{color:"currentcolor","data-event":h.FEEDBACK.ABUSE,"data-testid":H.reportAbuseLink,fontSize:"lg",fontWeight:"semibold",hasIcon:!1,href:"mailto:abuse@amazonaws.com?subject=".concat(encodeURIComponent("ConstructHub - Report of abusive package: ".concat(null===o||void 0===o?void 0:o.name))),rightIcon:(0,W.jsx)(Q.LQ,(0,x.Z)({},Y)),children:"Report abuse"})]})},ne=t(65223),te=t(82504),re=t(59534),ae=function(e,n){return(0,re.oJ)(e,"NavTree",n)},oe={color:"textTertiary",h:4,w:4},ie=function(e){var n=e.children,t=e["data-event"],r=e.path,a=e.title,o=e.showToggle,c={_hover:{bg:"rgba(0, 124, 253, 0.05)"},overflow:"hidden",pl:1,py:o?2:1,marginLeft:o?0:1,fontWeight:o?"bold":void 0,textOverflow:"ellipsis",w:"100%"};return r?(0,W.jsx)(v.O,(0,x.Z)((0,x.Z)({"data-event":t,title:a,to:r},c),{},{children:n})):(0,W.jsx)(i.xv,(0,x.Z)((0,x.Z)({},c),{},{children:n}))},ce=function e(n){var t,a=n.children,o=n["data-event"],c=n.title,l=n.path,d=n.level,u=n.onOpen,h=(0,re.z$)().trackCustomEvent,p=d<2,v=(0,ne.qY)({onOpen:u,defaultIsOpen:p}),m=(0,r.TH)(),f=m.hash,g=m.pathname,j=new URL(null!==l&&void 0!==l?l:"",window.origin),b=null!==l&&void 0!==l&&l.includes("/api/")?j.pathname===g:j.hash&&f&&j.hash===f,y=(null!==(t=null===a||void 0===a?void 0:a.length)&&void 0!==t?t:0)>0,w=v.isOpen&&y,k=(0,s.useMemo)((function(){return null===a||void 0===a?void 0:a.map((function(n,t){return(0,s.createElement)(e,(0,x.Z)((0,x.Z)({"data-event":o},n),{},{key:t,level:d+1,onOpen:v.onOpen}))}))}),[a,o,v.onOpen,d]);return(0,W.jsxs)(i.kC,{direction:"column",children:[(0,W.jsxs)(i.kC,{align:"center",color:b?"link":"textPrimary",children:[y&&(0,W.jsx)(te.hU,{"aria-label":"expand-toggle",borderRadius:"md",h:4,icon:v.isOpen?(0,W.jsx)(Q.v4,(0,x.Z)({},oe)):(0,W.jsx)(Q.XC,(0,x.Z)({},oe)),ml:-1,onClick:function(){v.onToggle(),o&&h((0,re.Q5)({name:ae(o,"Toggle")}))},size:"xs",variant:"link",w:0}),(0,W.jsx)(ie,{"data-event":o?ae(o,"Link"):void 0,path:l,showToggle:y,title:c,children:c})]}),(0,W.jsx)(i.xu,{_before:{bg:"borderColor",bottom:0,content:'""',left:0,position:"absolute",top:0,w:"1px"},display:w?"initial":"none",ml:2,mr:2,pl:2,position:"relative",children:k})]})},se=function(e){var n=e["data-event"],t=e.items;return(0,W.jsx)(i.kC,{direction:"column",maxWidth:"100%",children:t.map((function(e,t){return(0,s.createElement)(ce,(0,x.Z)((0,x.Z)({},e),{},{"data-event":n,key:t,level:0,onOpen:void 0}))}))})},le=t(86988),de=t(3669),ue=t(63209),he=t(95798),pe=t(57992),ve=t(89570),me=(0,ue.Gp)((function(e,n){var t=e.value,r=e.onChange,a=e.onSubmit,i=(0,s.useState)(t),c=(0,o.Z)(i,2),l=c[0],d=c[1];return(0,ve.N)(l,{onChange:r}),(0,W.jsx)(pe.l,{"data-testid":"choose-submodule-search-form",onSubmit:a,children:(0,W.jsxs)(he.BZ,{children:[(0,W.jsx)(he.Z8,{children:(0,W.jsx)(Q.W1,{color:"gray.400"})}),(0,W.jsx)(he.II,{"data-testid":"choose-submodule-search-input",onChange:function(e){return d(e.target.value)},placeholder:"Search",ref:n,value:l,variant:"filled"})]})})}));me.displayName="SearchInput";var fe=function(e){var n=e.inputValue,t=e.isOpen,a=e.onClose,o=e.onInputChange,c=e.submodules,l=(0,s.useRef)(null),d=(0,r.k6)().push,u=(0,s.useCallback)((function(e){a(),d(e)}),[a,d]),h=(0,s.useCallback)((function(e){if(e.preventDefault(),c.length){var n=c[0].to;u(n)}}),[u,c]);return(0,W.jsx)(le.u_,{initialFocusRef:l,isOpen:t,onClose:a,children:(0,W.jsx)(le.ZA,{children:(0,W.jsxs)(le.hz,{mx:4,children:[(0,W.jsx)(le.ol,{"data-testid":"choose-submodule-modal-close"}),(0,W.jsx)(le.xB,{"data-testid":"choose-submodule-modal-header",fontSize:"lg",fontWeight:"bold",children:"Choose a submodule"}),(0,W.jsxs)(le.fe,{"data-testid":"choose-submodule-modal-body",p:0,children:[(0,W.jsx)(i.xu,{pb:4,px:4,children:(0,W.jsx)(me,{onChange:o,onSubmit:h,ref:l,value:n})}),(0,W.jsx)(i.iz,{}),(0,W.jsx)(i.QI,{"data-testid":"choose-submodule-modal-results",m:0,maxH:"50vh",overflow:"hidden auto",p:0,role:"listbox",tabIndex:-1,children:c.map((function(e){var n=e.name,t=e.to;return(0,W.jsx)(de.T,{"data-testid":"choose-submodule-result",name:n,onClick:function(){return u(t)}},n)}))})]})]})})})},xe=function(){var e,n,t,a=M(),c=a.assembly,l=a.name,d=a.language,u=a.scope,h=a.version,p=(0,r.k6)().push,v=(0,L.K)(),m=Object.keys(null!==(e=null===c||void 0===c||null===(n=c.data)||void 0===n?void 0:n.submodules)&&void 0!==e?e:{}),x=(0,ne.qY)(),g=x.isOpen,j=x.onOpen,b=x.onClose,y=v.get(w.Tx.SUBMODULE),k=y?"Submodule: ".concat(y):"Choose Submodule",C=(0,s.useState)(""),S=(0,o.Z)(C,2),Z=S[0],T=S[1],E=u?"".concat(u,"/").concat(l):l,O=(0,s.useCallback)((function(e){return(0,f.Mt)({name:E,version:h,language:d,submodule:e})}),[d,E,h]),I=(0,s.useMemo)((function(){var e=m;return Z&&(e=e.filter((function(e){return e.toLowerCase().includes(Z.toLowerCase())}))),e.map((function(e){var n=e.split(".")[1];return{name:n,to:O(n)}}))}),[m,Z,O]);return 0===m.length?null:(0,W.jsxs)(i.Kq,{spacing:4,w:"100%",children:[y&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(te.zx,{borderRadius:"none","data-testid":"choose-submodule-go-back",leftIcon:(0,W.jsx)(Q.Rp,{"aria-label":"Back to construct root"}),onClick:function(){p((0,f.Mt)({name:E,version:h,language:d}))},title:"Back to construct root",variant:"link",children:null===c||void 0===c||null===(t=c.data)||void 0===t?void 0:t.name}),(0,W.jsx)(i.iz,{})]}),(0,W.jsx)(te.zx,{borderRadius:"none",color:"blue.500","data-testid":"choose-submodule-search-trigger",flexGrow:1,onClick:j,rightIcon:(0,W.jsx)(Q.v4,{}),title:"Choose Submodule",variant:"link",children:k}),(0,W.jsx)(fe,{inputValue:Z,isOpen:g,onClose:b,onInputChange:T,submodules:I})]})},ge=t(51922),je=function(){var e,n,t=M(),a=t.assembly,o=t.menuItems,c=(0,ne.qY)(),l=(0,r.TH)(),d=Object.keys(null!==(e=null===(n=a.data)||void 0===n?void 0:n.submodules)&&void 0!==e?e:{}).length>0;return(0,s.useEffect)((function(){c.isOpen&&c.onClose()}),[l]),(0,W.jsxs)(i.xu,{bottom:0,display:{md:"none"},left:0,pos:"fixed",right:0,children:[(0,W.jsx)(te.zx,{bg:"bgPrimary",borderTop:"base",boxShadow:"base",fontSize:"xl",fontWeight:"semibold",h:"3.5rem",onClick:c.onOpen,variant:"unstyled",w:"full",children:(0,W.jsxs)(i.kC,{align:"center",justify:"space-between",px:6,children:["Table of contents",(0,W.jsx)(Q.g8,{})]})}),(0,W.jsx)(ge.h_,{children:(0,W.jsxs)(le.dy,(0,x.Z)((0,x.Z)({},c),{},{blockScrollOnMount:!1,placement:"bottom",children:[(0,W.jsx)(le.P1,{}),(0,W.jsxs)(le.sc,{maxH:"60vh",children:[(0,W.jsx)(le.OX,{children:"Table of contents"}),(0,W.jsx)(le.cC,{}),(0,W.jsxs)(le.Ng,{children:[d&&(0,W.jsx)(i.xu,{mb:4,sx:{button:{justifyContent:"initial"}},children:(0,W.jsx)(xe,{})}),(0,W.jsx)(se,{items:o})]})]})]}))})]})},be=t(29370),ye=t(54915),we=t.n(ye),ke=t(5474),Ce=t.n(ke),Se=t(16580),Ze=t.n(Se),Te=t(45618),Le=t(65218),Ee=t.n(Le),Oe=t(45987),Ie=t(28227),Ae=t(60185),De=t(1250),Ne=t(32536),ze=["value"],Pe=(0,ue.Gp)((function(e,n){var t=e.value,r=(0,Oe.Z)(e,ze),a=(0,ne.VP)(t),o=a.hasCopied,i=a.onCopy;return(0,W.jsx)(te.hU,(0,x.Z)({"aria-label":"Copy Button",color:"blue.500",colorScheme:"brand",h:6,icon:o?(0,W.jsx)(Q.nQ,{color:"green.300"}):(0,W.jsx)(Q.TI,{}),minW:"auto",ml:1,onClick:i,ref:n,variant:"ghost",w:6},r))}));Pe.displayName="CopyButton";var Be,Re=function(e){var n=e.code,t=e.tokens,r=e.getLineProps,a=e.getTokenProps;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(i.kC,{align:"center",bg:"rgba(0, 124, 253, 0.15)",borderTopRadius:"md",justify:"flex-end",px:2,py:1,children:(0,W.jsx)(Pe,{value:n})}),(0,W.jsx)(i.xu,{overflowX:"auto",p:2,children:t.map((function(e,n){return(0,W.jsx)("div",(0,x.Z)((0,x.Z)({},r({line:e,key:n})),{},{children:e.map((function(e,n){return(0,W.jsx)(i.xu,(0,x.Z)({as:"span",sx:{wordWrap:"normal"}},a({token:e,key:n})),n)}))}),n)}))})]})},Ue=function(e){var n=e.code,t=e.tokens,r=e.getLineProps,a=e.getTokenProps;return(0,W.jsxs)(i.rj,{p:3,templateColumns:"1fr min-content",w:"full",children:[(0,W.jsx)(i.xu,{m:-3,maxW:"full",overflow:"auto",p:3,children:t.map((function(e,n){return(0,W.jsx)("div",(0,x.Z)((0,x.Z)({},r({line:e,key:n})),{},{children:e.map((function(e,n){return(0,W.jsx)("span",(0,x.Z)({},a({token:e,key:n})),n)}))}),n)}))}),(0,W.jsx)(i.kC,{align:"center",ml:1,children:(0,W.jsx)(Pe,{value:n})})]})},We=["code","language"],Fe=function(e){var n=e.code,t=e.language,r=(0,Oe.Z)(e,We),a=(0,Ie.ff)(Ne.Z,De.Z);return(0,W.jsx)(Ae.ZP,(0,x.Z)((0,x.Z)({},Ae.lG),{},{code:n,language:t,theme:a,children:function(e){return(0,W.jsx)(i.xu,(0,x.Z)((0,x.Z)({as:"pre",border:"base",borderRadius:"md",boxShadow:"base",className:e.className,style:e.style},r),{},{children:e.tokens.length>1?(0,W.jsx)(Re,(0,x.Z)((0,x.Z)({},e),{},{code:n})):(0,W.jsx)(Ue,(0,x.Z)((0,x.Z)({},e),{},{code:n}))}))}}))},Me=function(e){var n=e.inline,t=e.children,r=e.language,a=void 0===r?"typescript":r;if(n)return(0,W.jsx)(i.EK,{border:"base",marginTop:"md",mx:2,px:2,py:0,children:t});var o=s.Children.toArray(t).reduce((function(e,n){return"string"===typeof n?"".concat(e).concat(n):e}),"").trim();return(0,W.jsx)(Fe,{code:o,fontSize:"0.9rem",language:a})},Ke=t(58340),_e=function e(n){return s.Children.toArray(n).reduce((function(n,t){return"string"===typeof t?n+t:"object"===typeof t&&"props"in t?n+e(t.props.children):n}),"").trim()},He=function(e){var n,t,r=e.level,a=e.children,o=["2xl","xl","lg","md","sm","xs"][r-1],c="h".concat(r),s=(new DOMParser).parseFromString(Ke.renderToStaticMarkup(a),"text/html").querySelector("span[data-heading-title][data-heading-id]"),l=null!==(n=null===s||void 0===s?void 0:s.dataset.headingTitle)&&void 0!==n?n:_e(a),d=null!==(t=null===s||void 0===s?void 0:s.dataset.headingId)&&void 0!==t?t:z(l);return(0,W.jsx)(W.Fragment,{children:(0,W.jsx)(i.X6,{as:c,borderBottom:"base",color:"textPrimary",level:r,marginBottom:4,marginTop:r>=4?"1.5em":4,paddingBottom:2,paddingTop:2,paddingX:r>=4?2:void 0,size:o,children:(0,W.jsx)(v.O,{"data-heading-id":"#".concat(d),"data-heading-level":r,"data-heading-title":l,id:d,replace:!0,sx:{"> code":{fontSize:"inherit"}},to:"#".concat(d),children:a})})})},qe=t(53046),Qe=t(97005),Ge=(0,_.$)("markdown",["container"]),Ve=["children","href"],Xe={a:function(e){var n=e.children,t=e.href,r=(0,Oe.Z)(e,Ve),a=i.rU;try{if(t&&t.startsWith("http"))if(new URL(t).hostname!==window.location.hostname){a=function(e){return(0,W.jsx)(V.d,(0,x.Z)({},e))}}}catch(o){a=i.rU}return(0,W.jsx)(a,(0,x.Z)((0,x.Z)({color:"link",href:t,sx:{"> img + svg":{display:"none"}}},r),{},{children:n}))},blockquote:function(e){var n=e.children;return(0,W.jsx)(i.xu,{as:"blockquote",borderLeft:"5px solid",borderLeftColor:"borderColor",marginX:"2",px:"2",wordBreak:"break-word",children:n})},caption:Qe.Rn,code:Me,em:function(e){var n=e.children;return(0,W.jsx)(i.xu,{as:"em",fontStyle:"normal",fontWeight:"bold",children:n})},h1:He,h2:He,h3:He,h4:He,h5:He,h6:He,hr:function(){return(0,W.jsx)(W.Fragment,{})},img:function(e){return(0,W.jsx)(qe.Ee,(0,x.Z)({display:"inline-block"},e))},li:function(e){var n=e.children;return(0,W.jsx)(i.HC,{lineHeight:"tall",marginX:2,sx:{"em:first-of-type":{fontSize:"small"},code:{fontSize:"small"}},children:n})},ol:function(e){var n=e.children;return(0,W.jsx)(i.GS,{children:n})},p:function(e){var n=e.children;return(0,W.jsx)(i.xv,{lineHeight:"1.5",mx:2,my:4,children:n})},pre:function(e){var n=e.children,t=e.lang;return t?(0,W.jsx)(Me,{language:t,children:n}):(0,W.jsx)(i.xu,{as:"pre",children:n})},sup:function(e){var n=e.children,t=void 0,r="";if(Array.isArray(n)){var a=(0,o.Z)(n,1)[0];"string"===typeof a&&(r=a)}return"Required"===r?t="orange.700":"Optional"===r&&(t="green.700"),(0,W.jsx)(i.xu,{as:"sup",color:t,fontSize:"xs",ml:-1,top:-1,children:n})},table:function(e){var n=e.children;return(0,W.jsx)(i.xu,{maxW:"100%",overflowX:"auto",children:(0,W.jsx)(Qe.iA,{variant:"striped",children:n})})},tbody:Qe.p3,td:Qe.Td,tfoot:Qe.$R,th:Qe.Th,thead:Qe.hr,tr:Qe.Tr,ul:function(e){var n=e.children;return(0,W.jsx)(i.QI,{marginTop:2,padding:0,children:n})}},$e=(0,x.Z)({},be);$e.attributes.span=(null!==(Be=$e.attributes.span)&&void 0!==Be?Be:[]).concat(["dataHeadingTitle","dataHeadingId"]);var Je=[[Ce()],[Ze(),$e]],Ye=[Ee(),Te.Z],en=/^(?:(?:git@)?github\.com:|(?:https?:\/\/)github\.com\/)([^/]+)\/([^/]+)(?:\.git)?$/,nn=function(e){var n=e.children,t=function(e){var n=e.type,t=e.url,r=e.directory;if("git"===n){var a=en.exec(t);if(null!=a){var i=(0,o.Z)(a,3);return{owner:i[1],repo:i[2],directory:r}}}}(e.repository),r=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"HEAD";return null==t?we().uriTransformer:function(r){var a=we().uriTransformer(r),i=(0,o.Z)(a,1)[0];if("#"===i||"/"===i)return a;if(a.includes("://"))return a;var c=t.owner,s=t.repo.replace(/\.git$/,""),l=t.directory?"".concat(t.directory,"/"):"";return"https://".concat(e,"/").concat(c,"/").concat(s,"/").concat(n,"/").concat(l).concat(a)}};return(0,W.jsx)(i.xu,{"data-testid":Ge.container,px:8,children:(0,W.jsx)(we(),{components:Xe,rehypePlugins:Je,remarkPlugins:Ye,transformImageUri:r("raw.githubusercontent.com"),transformLinkUri:r("github.com","blob/HEAD"),children:n})})},tn=function(e){var n=e.children;return(0,W.jsx)(i.xv,{align:"center",fontSize:"xl",fontStyle:"oblique",px:4,wordBreak:"break-word",children:n})},rn=function(){var e=M(),n=e.isLoadingDocs,t=e.readme,r=e.assembly.data;return!n&&t&&r?"\n"===t?(0,W.jsx)(tn,{children:"No readme available for this module or submodule"}):(0,W.jsx)(nn,{repository:r.repository,children:t}):null},an=t(91523),on=function(){var e=M().language,n=(0,W.jsx)(V.d,{href:"".concat(X.Sx,"/issues/new"),children:"issue"});return(0,W.jsxs)(tn,{children:["Documentation in ",e," is still not ready for this package. Come back soon. If this issue persists, please let us know by creating an"," ",n,"."]})},cn=function(e){var n=e.rootId,t=(0,r.TH)(),a=t.pathname,o=t.hash,c=t.search,s=M(),l=s.isLoadingDocs,d=s.assembly.data,u=function(){var e=(0,r.UO)().typeId,n=M().apiReference;if(e)return null===n||void 0===n?void 0:n[e]}();if(l)return null;if(!u||!d)return(0,W.jsx)(on,{});var h=u.title,p=u.content,v="".concat(a).concat(c,"#").concat(o);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(i.X6,{as:"h2",p:8,size:"2xl",children:(0,W.jsx)(an.OL,{id:n,to:v,children:h})}),(0,W.jsx)(nn,{repository:d.repository,children:p})]})},sn="4.5rem",ln="apidocs_header",dn="api",un=function(){var e,n=M().assembly.data;return Object.keys(null!==(e=null===n||void 0===n?void 0:n.submodules)&&void 0!==e?e:{}).length>0?(0,W.jsx)(i.kC,{borderBottom:"1px solid",borderColor:"borderColor",justify:"center",py:4,children:(0,W.jsx)(xe,{})}):null},hn=function(){var e=(0,r.$B)().path,n=M().menuItems,t=(0,r.TH)(),a=t.hash,o=t.pathname,c=t.search;return(0,s.useEffect)((function(){if(a){var e=document.querySelector('[data-heading-id="'.concat(a,'"]'));null===e||void 0===e||e.scrollIntoView(!0)}else if(function(e){var n=e.split("/");return n[n.length-2]===dn}(o)){var n=document.getElementById(ln);null===n||void 0===n||n.scrollIntoView(!0)}else window.scrollTo(0,0)}),[a,o]),(0,W.jsxs)(i.rj,{columnGap:4,h:"full",templateColumns:{base:"1fr",md:"1fr 3fr"},width:"100%",children:[(0,W.jsxs)(i.kC,{alignSelf:"stretch",borderRight:"1px solid",borderRightColor:"borderColor",direction:"column",display:{base:"none",md:"flex"},maxHeight:"calc(100vh - ".concat(sn,")"),overflow:"hidden auto",pl:6,position:"sticky",pr:4,top:sn,children:[(0,W.jsx)(un,{}),(0,W.jsx)(i.xu,{overflowY:"auto",py:4,children:(0,W.jsx)(se,{"data-event":h.SCOPE,items:n})})]}),(0,W.jsx)(i.xu,{h:"max-content",maxWidth:"100%",overflow:"hidden",py:4,sx:{a:{scrollMarginTop:sn}},children:(0,W.jsxs)(r.rs,{children:[(0,W.jsx)(r.l_,{exact:!0,from:"".concat(e,"/").concat(dn),to:{pathname:e,search:c}}),(0,W.jsx)(r.AW,{exact:!0,path:e,children:(0,W.jsx)(rn,{})}),(0,W.jsx)(r.AW,{exact:!0,path:"".concat(e,"/").concat(dn,"/:typeId"),children:(0,W.jsx)(cn,{rootId:ln})})]})}),(0,W.jsx)(je,{})]})},pn=t(92213),vn=t(2148),mn=function(e){var n=e.targetLanguages,t=e.selectedLanguage,a=(0,re.z$)().trackCustomEvent,o=M(),c=o.name,s=o.scope,l=o.version,d=(0,r.k6)().push;return(0,W.jsx)(i.Kq,{align:"center","data-testid":"language-bar",direction:"row",spacing:2,children:(0,A.Z)(n).sort((function(e,n){return Z.a2.indexOf(e)-Z.a2.indexOf(n)})).map((function(e){var n=!Z.dX.has(e),r=e===t,o=Z.kP[e].icon;return(0,W.jsx)(vn.N,{language:e,children:(0,W.jsx)(te.hU,{"aria-label":"Select ".concat(e," icon"),bg:"bgSecondary",border:"base",borderColor:r?"brand.500":"borderColor",borderRadius:"lg",boxShadow:"base",colorScheme:"brand",cursor:n?"not-allowed":"pointer","data-testid":"language-".concat(e),disabled:n,icon:(0,W.jsx)(o,{"aria-label":"".concat(e,"-icon"),borderRadius:"sm",height:[4,5,6],width:[4,5,6]}),onClick:function(){r||(a((0,re.Q5)({name:h.LANGUAGE.eventName(e)})),d((0,f.Mt)({name:(0,p.KD)(c,s),version:l,language:e})))},p:1,variant:"outline",w:"max-content"})},e)}))})},fn=new Set(Z.a2),xn=function(){var e,n=M(),t=n.assembly.data,r=n.language,a=(0,T.Z)({updateSaved:!0,updateUrl:!0}),i=(0,o.Z)(a,2)[1],c=(0,T.Z)({updateUrl:!0}),l=(0,o.Z)(c,2)[1],d=[].concat((0,A.Z)(Object.keys(null!==(e=null===t||void 0===t?void 0:t.targets)&&void 0!==e?e:{})),[Z.SQ.TypeScript]),u=d.includes(r);(0,s.useEffect)((function(){u||l(Z.SQ.TypeScript)}),[u]);var h={selectedLanguage:u?r:Z.SQ.TypeScript,setSelectedLanguage:i,targetLanguages:d.filter((function(e){return fn.has(e)}))};return(0,W.jsx)(mn,(0,x.Z)({},h))},gn=t(81070),jn=t(77231),bn=t(44717),yn=t(50535),wn=["license"],kn=(0,ue.Gp)((function(e,n){var t=e.license,r=(0,Oe.Z)(e,wn),a=bn[t].url;return(0,W.jsx)(V.d,(0,x.Z)((0,x.Z)({href:a,ref:n},r),{},{children:t}))}));kn.displayName="LicenseLink";var Cn=t(79227),Sn="MMM dd, yyyy 'at' h:mmaaa",Zn=t(56804),Tn=t(10297),Ln=t(98371),En=["openText","closeText","isOpen"],On=function(e){var n=e.openText,t=e.closeText,r=e.isOpen,a=(0,Oe.Z)(e,En);return(0,W.jsx)(te.zx,(0,x.Z)((0,x.Z)({color:"link",colorScheme:"blue",leftIcon:r?(0,W.jsx)(Q.g8,{}):(0,W.jsx)(Q.v4,{}),variant:"link"},a),{},{children:r?t:n}))},In=function(e){var n=e.children,t=e.label,r=e.tooltip;return(0,W.jsx)(gn.u,{hasArrow:!0,isDisabled:!r,label:r,placement:"left",children:(0,W.jsxs)(i.xv,{fontWeight:"bold",children:[t," ",(0,W.jsx)(i.xu,{as:"span",fontWeight:"normal",children:n})]})})},An=function(e){var n=e.downloads;return(0,W.jsx)(In,{label:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(i.xu,{as:"span",mr:1,children:(0,W.jsx)(Q._8,{})}),n.toLocaleString()]}),tooltip:"Download numbers are periodically sourced from the npm registry",children:"Weekly downloads"})},Dn=function(e){var n=M(),t=(0,Tn.V)().data,r=(0,ne.qY)({defaultIsOpen:!0}),a=(0,Zn.E)("packageLinks"),c=n.assembly.data,l=n.metadata.data,d=n.scope?"".concat(n.scope,"/").concat(n.name):n.name,u=(0,Ln.JA)(null===l||void 0===l?void 0:l.packageTags),h=(0,o.Z)(u,1)[0],p=function(e){var n=e.assembly,t=e.metadata,r=e.name,a=e.packageLinks,o=e.stats,i=[];if(n||t||o||a){var c,l,d,u,h,p=null===o||void 0===o||null===(c=o.packages)||void 0===c||null===(l=c[r])||void 0===l||null===(d=l.downloads)||void 0===d?void 0:d.npm;void 0!==p&&i.push((0,W.jsx)(An,{downloads:p}));var m=null===n||void 0===n?void 0:n.author.name,x=null===n||void 0===n?void 0:n.repository,g=null===n||void 0===n?void 0:n.license;if(m){var j=(0,W.jsx)(v.O,{color:"link",to:(0,f.yc)({query:m}),children:m});i.push((0,W.jsx)(In,{label:"Author",children:j}))}var b=null===t||void 0===t?void 0:t.date;if(b){var y=(0,W.jsx)(Cn.q,{date:new Date(b),fontWeight:"normal",format:Sn});i.push((0,W.jsx)(In,{label:"Published",children:y}))}if(x){var w=(0,f.rM)(x.url);if(w){var k=(0,W.jsx)(V.d,{href:w.url,children:w.hostname});i.push((0,W.jsx)(In,{label:"Repository",children:k}))}}if(g&&g in bn){var C=(0,W.jsx)(kn,{license:g});i.push((0,W.jsx)(In,{label:"License",children:C}))}null!==a&&void 0!==a&&a.length&&a.forEach((function(e){var n,r=e.linkLabel,a=e.configKey,o=e.linkText,c=(null!==(n=null===t||void 0===t?void 0:t.packageLinks)&&void 0!==n?n:{})[a];if(c){var s=(0,W.jsx)(V.d,{href:c,children:null!==o&&void 0!==o?o:c});i.push((0,W.jsxs)(In,{label:r,children:[r,": ",s]}))}}));var S=null!==(u=null===t||void 0===t||null===(h=t.links)||void 0===h?void 0:h.npm)&&void 0!==u?u:"https://www.npmjs.com/package/".concat(null===n||void 0===n?void 0:n.name,"/v/").concat(null===n||void 0===n?void 0:n.version);if(S){var Z=(0,W.jsx)(V.d,{href:S,children:new URL(S).hostname});i.push((0,W.jsx)(In,{label:"Registry",children:Z}))}}return i.map((function(e,n){return(0,W.jsx)(s.Fragment,{children:e},n)}))}({assembly:c,metadata:l,name:d,packageLinks:a,stats:t});if(!p.length)return null;var m=p.slice(0,2),g=p.slice(2,p.length);return(0,W.jsxs)(i.Kq,(0,x.Z)((0,x.Z)({align:"start",color:"textPrimary",fontSize:".75rem",mt:2,spacing:2},e),{},{children:[h&&(0,W.jsx)(yn.y,(0,x.Z)({},h)),m,g.length>0&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(jn.UO,{animateOpacity:!0,in:r.isOpen,children:(0,W.jsx)(i.Kq,{spacing:2,children:g})}),(0,W.jsx)(On,{closeText:"See fewer details (".concat(m.length,")"),fontSize:"inherit",isOpen:r.isOpen,onClick:r.onToggle,openText:"See more details (".concat(g.length,")")})]})]}))},Nn=function(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return n.map((function(e){return'"'.concat(e.map((function(e){return null!==e&&void 0!==e?e:"."})).join(" "),'"')})).join(" ")},zn="heading",Pn="install",Bn="languages",Rn="meta",Un=Nn([zn],[Rn],[Bn],[Pn]),Wn=Nn([zn,Bn,Pn],[zn,null,Rn]),Fn=function(e){var n=e.children;return(0,W.jsx)(i.rj,{bg:"bgSecondary",columnGap:{md:6,lg:10},pt:{base:3,lg:6},px:{base:5,md:6,lg:10},rowGap:{base:4,lg:0},templateAreas:{base:Un,lg:Wn},templateColumns:{base:"1fr",lg:"1fr auto 15rem"},templateRows:{lg:"auto 1fr"},children:n})},Mn=t(77766),Kn=t(29988),_n=t(57640),Hn=t(10724),qn=t.n(Hn),Qn=t(84586),Gn=function(){var e=M(),n=e.scope,t=e.name,a=e.version,i=e.allVersions,c=e.language,l=n?"".concat(n,"/").concat(t):t,d=(0,Qn.A)(),u=(0,r.k6)(),p=u.push,v=u.location,m=d.findByName(l),x=(0,s.useMemo)((function(){var e=m.map((function(e){return e.version})),n=(0,A.Z)(new Set([].concat((0,A.Z)(null!==i&&void 0!==i?i:[]),(0,A.Z)(e),[a])));return n.sort(qn().rcompare),n}),[m,a,i]);return(0,W.jsx)(_n.Ph,{"data-event":h.SELECT_VERSION,"data-testid":H.selectVersionDropdown,fontWeight:"500",onChange:function(e){var n=v.pathname,t=v.hash,r="";if(n.includes("/api/")){var a=n.split("/api/");r=(0,o.Z)(a,2)[1]}var i=[(0,f.Mt)({name:l,version:e.target.value,language:c,api:r}),t].join("");p(i)},size:"sm",value:a,width:"10rem",children:x.map((function(e){return(0,W.jsx)("option",{"data-testid":H.selectVersionItem,"data-value":e,value:e,children:"v".concat(e)},e)}))})},Vn=["assembly","name","description","metadata","version"],Xn=function(e){var n,t,r,a=e.assembly,o=e.name,c=e.description,s=e.metadata,l=(e.version,(0,Oe.Z)(e,Vn)),d=(0,Ln.QX)({packageTags:null!==(n=null===s||void 0===s?void 0:s.packageTags)&&void 0!==n?n:[],keywords:null!==(t=null===a||void 0===a?void 0:a.keywords)&&void 0!==t?t:[]}),u=null!==(r=s.constructFramework)&&void 0!==r?r:{};return(0,W.jsxs)(i.Kq,(0,x.Z)((0,x.Z)({lineHeight:"1.5",maxW:"full",overflow:"hidden",spacing:2},l),{},{children:[(0,W.jsxs)(i.kC,{align:"center",wrap:"wrap",children:[(0,W.jsx)(i.X6,{color:"textPrimary",flexShrink:1,fontSize:"1.5rem",isTruncated:!0,mr:4,children:o}),(0,W.jsx)(Gn,{})]}),(0,W.jsx)(i.xv,{"data-testid":H.description,fontSize:"1rem",children:c}),(0,W.jsxs)(i.kC,{align:"center",direction:"row",pt:1,sx:{gap:"0.5rem"},wrap:"wrap",children:[(0,W.jsx)(Mn.uo,(0,x.Z)({"data-event":h.CDK_BADGE.eventName("".concat(u.name).concat(void 0!==u.majorVersion?" v".concat(u.majorVersion):""))},u)),d.map((function(e){var n=e.id,t=e.keyword,r=(t=void 0===t?{}:t).label,a=t.color;return(0,W.jsx)(Kn.X,{"data-event":h.KEYWORD.eventName(r),value:n,variant:a,children:r},n)}))]})]}))},$n=function(e){var n=M(),t=n.language,r=n.assembly.data,a=(0,ne.qY)();if(!r)return null;var o=function(e){var n=e.language,t=e.assembly,r=t.version;if(n===Z.SQ.TypeScript){var a=t.name;return"npm install ".concat(a,"@").concat(r)}if(n===Z.SQ.Python){var o,i,c=null===(o=t.targets)||void 0===o||null===(i=o.python)||void 0===i?void 0:i.distName;if(!c)return;return"pip install ".concat(c,"==").concat(r)}if(n===Z.SQ.Java){var s,l,d,u,h,p,v=null===(s=t.targets)||void 0===s||null===(l=s.java)||void 0===l||null===(d=l.maven)||void 0===d?void 0:d.groupId,m=null===(u=t.targets)||void 0===u||null===(h=u.java)||void 0===h||null===(p=h.maven)||void 0===p?void 0:p.artifactId;if(!v||!m)return;return["// add this to your pom.xml","<dependency>"," <groupId>".concat(v,"</groupId>")," <artifactId>".concat(m,"</artifactId>")," <version>".concat(r,"</version>"),"</dependency>"].join("\n")}if(n===Z.SQ.DotNet){var f,x,g=null===(f=t.targets)||void 0===f||null===(x=f.dotnet)||void 0===x?void 0:x.packageId;if(!g)return;return"dotnet add package ".concat(g," --version ").concat(r)}}({language:t,assembly:r});return o&&t?(0,W.jsx)(i.kC,(0,x.Z)((0,x.Z)({align:"start",direction:"column",fontSize:".75rem",w:"full"},e),{},{children:t===Z.SQ.Java?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(On,{closeText:"Hide",fontSize:"inherit",isOpen:a.isOpen,mt:2,onClick:a.onToggle,openText:"Install"}),(0,W.jsx)(i.xu,{maxW:"full",overflow:"hidden",children:(0,W.jsx)(jn.UO,{in:a.isOpen,children:(0,W.jsx)(Fe,{boxShadow:"none",code:o,fontSize:"inherit",language:t,mt:2})})})]}):(0,W.jsx)(Fe,{boxShadow:"none",code:o,fontSize:"inherit",language:t,lineHeight:"2",w:"full"})})):null},Jn=function(){var e=M(),n=e.assembly,t=e.metadata,r=e.version,a=n.data,o=t.data;return a&&o?(0,W.jsxs)(Fn,{children:[(0,W.jsx)(Xn,{assembly:a,description:a.description,gridArea:zn,metadata:o,name:a.name,version:r}),(0,W.jsx)(i.kC,{align:"start",gridArea:Bn,children:(0,W.jsx)(xn,{})}),(0,W.jsxs)(i.kC,{direction:"column",gridArea:Rn,children:[(0,W.jsx)(i.iz,{borderBottom:"base",display:{md:"none"},mb:2}),(0,W.jsx)(Dn,{}),(0,W.jsx)(i.iz,{borderBottom:"base",display:{md:"none"},mt:2})]}),(0,W.jsx)(i.kC,{align:"start",gridArea:Pn,children:(0,W.jsx)($n,{})})]}):(0,W.jsx)(pn.$,{mx:"auto",my:10,size:"xl"})},Yn=function(){var e=M(),n=e.pageDescription,t=e.pageTitle,r=(0,s.useState)(0),a=(0,o.Z)(r,2),d=a[0],u=a[1];return(0,s.useEffect)((function(){u(0)}),[t]),(0,W.jsx)(l.T,{meta:{title:t,description:n},pageName:"packageProfile",children:(0,W.jsxs)(i.rj,{bg:"bgPrimary","data-testid":H.page,maxW:"100vw",templateColumns:"1fr",templateRows:"auto 1fr auto",children:[(0,W.jsx)(Jn,{}),(0,W.jsxs)(c.mQ,{index:d,onChange:u,variant:"line",children:[(0,W.jsxs)(c.td,{bg:"bgSecondary",borderBottom:"base",px:{base:0,lg:6},children:[(0,W.jsx)(c.OK,{"data-event":h.DOCUMENTATION.TAB,children:"Documentation"}),(0,W.jsx)(c.OK,{"data-event":h.DEPENDENCIES.TAB,"data-testid":H.dependenciesTab,children:"Dependencies"})]}),(0,W.jsxs)(c.nP,{maxW:"full",children:[(0,W.jsx)(c.x4,{p:0,children:(0,W.jsx)(hn,{})}),(0,W.jsx)(c.x4,{children:(0,W.jsx)(q,{})})]})]}),(0,W.jsx)(ee,{})]})})},et=function(){return(0,W.jsx)(K,{children:(0,W.jsx)(Yn,{})})},nt=t(95038),tt=function(){var e=(0,r.UO)(),n=e.name,t=e.scope,o=(0,nt.r)();if(o.isLoading||!o.data)return(0,W.jsx)(i.M5,{minH:"16rem",children:(0,W.jsx)(pn.$,{size:"xl"})});var c=function(e,n,t){var r=(0,p.KD)(n,t),a=(0,p._c)(e,r);if(a){var o=a.version,i="/v/".concat(o);return"".concat("/packages/").concat(r).concat(i)}}(o.data,n,t);return c?(0,W.jsx)(r.l_,{to:c}):(0,W.jsx)(a.default,{})},rt="[^@\\/]+",at="@[^\\/]+",ot=function(){var e=(0,r.$B)().path;return(0,W.jsxs)(r.rs,{children:[(0,W.jsx)(r.AW,{exact:!0,path:"".concat(e,"/:scope(").concat(at,")?/:name(").concat(rt,")"),children:(0,W.jsx)(tt,{})}),(0,W.jsx)(r.AW,{path:"".concat(e,"/:scope(").concat(at,")?/:name(").concat(rt,")/v/:version"),children:(0,W.jsx)(et,{})}),(0,W.jsx)(r.AW,{path:"*",children:(0,W.jsx)(a.NotFound,{})})]})}}}]);
|
|
2
|
+
//# sourceMappingURL=543.a3de21c6.chunk.js.map
|