pdap-design-system 2.7.0-beta.2 → 2.7.0-beta.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. package/README.md +39 -47
  2. package/dist/components/Breadcrumbs/PdapBreadcrumbs.vue.d.ts +9 -0
  3. package/dist/components/Breadcrumbs/index.d.ts +1 -2
  4. package/dist/components/Button/PdapButton.vue.d.ts +9 -0
  5. package/dist/components/Button/index.d.ts +1 -2
  6. package/dist/components/Dropdown/PdapDropdown.vue.d.ts +56 -0
  7. package/dist/components/Dropdown/index.d.ts +1 -0
  8. package/dist/components/Dropdown/types.d.ts +9 -0
  9. package/dist/components/ErrorBoundary/PdapErrorBoundary.vue.d.ts +82 -16
  10. package/dist/components/ErrorBoundary/index.d.ts +1 -0
  11. package/dist/components/ErrorBoundary/types.d.ts +11 -0
  12. package/dist/components/Footer/PdapFooter.vue.d.ts +8 -0
  13. package/dist/components/Form/PdapForm.vue.d.ts +105 -2
  14. package/dist/components/Header/PdapHeader.vue.d.ts +11 -0
  15. package/dist/components/Nav/PdapNav.vue.d.ts +37 -0
  16. package/dist/components/QuickSearchForm/QuickSearchForm.vue.d.ts +14 -0
  17. package/dist/components/TileIcon/TileIcon.vue.d.ts +3 -0
  18. package/dist/components/index.d.ts +2 -3
  19. package/dist/directives/click-outside.d.ts +16 -0
  20. package/dist/directives/index.d.ts +1 -0
  21. package/dist/index.cjs +2 -2
  22. package/dist/index.d.ts +3 -3
  23. package/dist/index.js +961 -879
  24. package/dist/styles.css +1 -1
  25. package/docs/components.md +13 -584
  26. package/package.json +3 -2
  27. package/dist/components/FlexContainer/FlexContainer.vue.d.ts +0 -37
  28. package/dist/components/FlexContainer/index.d.ts +0 -2
  29. package/dist/components/FlexContainer/types.d.ts +0 -4
  30. package/dist/components/GridContainer/GridContainer.vue.d.ts +0 -40
  31. package/dist/components/GridContainer/index.d.ts +0 -2
  32. package/dist/components/GridContainer/types.d.ts +0 -7
  33. package/dist/components/GridItem/GridItem.vue.d.ts +0 -40
  34. package/dist/components/GridItem/index.d.ts +0 -2
  35. package/dist/components/GridItem/types.d.ts +0 -5
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),z=require("vue-router"),Le=e.defineComponent({__name:"PdapButton",props:{intent:{default:"primary"},isLoading:{type:Boolean,default:!1}},setup(t){const r=t,n=e.reactive({"pdap-button":!0,[`pdap-button-${r.intent}`]:!!r.intent,"pdap-button-loading":r.isLoading});return(a,s)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(n)},[e.renderSlot(a.$slots,"default")],2))}});const Ie={name:"FlexContainer"},Se=e.defineComponent({...Ie,props:{alignment:{default:"start"},component:{default:"div"}},setup(t){const r=t,n=e.reactive({"pdap-flex-container":!0,[`pdap-flex-container-${r.alignment}`]:!0});return(a,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.component),{class:e.normalizeClass(n)},{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3},8,["class"]))}}),ze="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxMTMuOCA4Ni4xIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMTMuOCA4Ni4xOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxwYXRoIGQ9Ik0wLDgwLjlMMjEuNSwyLjZoNS4xTDUuMSw4MC45SDB6Ii8+Cjxwb2x5Z29uIHBvaW50cz0iNzguOCwyMC40IDYxLjgsMjAuNCA3NSw3LjIgNzEuMSwzLjIgNTguNCwxNS44IDU4LjQsMCA1Mi44LDAgNTIuOCwxNS44IDQwLjIsMy4yIDM2LjIsNy4yIDQ5LjUsMjAuNCAzMi41LDIwLjQgCgkzMi41LDI2IDQ4LjMsMjYgMzYuMiwzOCA0MC4yLDQyIDUyLjgsMjkuMyA1Mi44LDQ2LjMgNTguNCw0Ni4zIDU4LjQsMjkuMyA3MS4xLDQyIDc1LDM4IDYzLDI2IDc4LjgsMjYgIi8+CjxwYXRoIGQ9Ik00Mi4xLDcxLjFoLTIuNnY5LjFoLTVWNTcuM2g3LjZjNS4xLDAsOC40LDIuNCw4LjQsNi43UzQ3LjMsNzEuMSw0Mi4xLDcxLjF6IE00Mi4xLDYxLjVoLTIuNnY1LjNoMi42CgljMi4zLDAsMy4zLTAuOSwzLjMtMi43UzQ0LjMsNjEuNSw0Mi4xLDYxLjV6Ii8+CjxwYXRoIGQ9Ik02MC41LDgwLjFoLTYuOVY1Ny4zaDYuOWM2LjUsMCwxMS45LDQsMTEuOSwxMS40QzcyLjQsNzYuMiw2Ni42LDgwLjEsNjAuNSw4MC4xeiBNNjAuNSw2MS41aC0xLjl2MTQuNGgxLjkKCWM0LjMsMCw2LjctMy40LDYuNy03LjJTNjQuNSw2MS41LDYwLjUsNjEuNXoiLz4KPHBhdGggZD0iTTg4LjcsODAuMUw4Nyw3NC40aC03bC0xLjgsNS44aC01LjNsOC4yLTIyLjloNC44bDguMywyMi45aC01LjVWODAuMXogTTg0LDY0LjZjLTAuMi0wLjctMC41LTEuNi0wLjUtMS44CgljMCwwLjEtMC4yLDEtMC41LDEuOGwtMS43LDUuNmg0LjRMODQsNjQuNnoiLz4KPHBhdGggZD0iTTEwNC43LDcxLjFoLTIuNnY5LjFoLTVWNTcuM2g3LjZjNS4xLDAsOC40LDIuNCw4LjQsNi43UzEwOS44LDcxLjEsMTA0LjcsNzEuMXogTTEwNC43LDYxLjVoLTIuNnY1LjNoMi42CgljMi4zLDAsMy4zLTAuOSwzLjMtMi43UzEwNi45LDYxLjUsMTA0LjcsNjEuNXoiLz4KPC9zdmc+Cg==",Oe={class:"pdap-footer"},be={class:"pdap-flex-container-center"},ke={class:"pdap-footer-social-links"},_e=["href"],Ae={class:"pdap-footer-copyright"},Ye=e.createElementVNode("br",null,null,-1),Pe=e.createElementVNode("p",{class:"pdap-footer-copyright"},[e.createTextVNode(" PDAP is a non-profit. EIN: 85-4207132. "),e.createElementVNode("a",{href:"https://docs.pdap.io/meta/policy/pdap-privacy-policy",alt:"Privacy Policy",target:"_blank"},[e.createElementVNode("br"),e.createTextVNode(" Privacy Policy "),e.createElementVNode("i",{class:"fa fa-external-link"})]),e.createElementVNode("br"),e.createElementVNode("a",{href:"mailto:contact@pdap.io"},"contact@pdap.io")],-1),Be={class:"pdap-footer-widget-links"},Qe=e.createElementVNode("a",{href:"https://www.guidestar.org/profile/85-4207132",target:"_blank"},[e.createElementVNode("img",{src:"https://widgets.guidestar.org/gximage2?o=9973356&l=v4"})],-1),Ve=["href"],Re=["src"],Ue=["src"],Fe=e.defineComponent({__name:"PdapFooter",props:{logoImageSrc:{default:ze},logoImageAnchorPath:{default:"/"}},setup(t){const r=t,n=e.inject("footerLinks",[{href:"https://github.com/orgs/Police-Data-Accessibility-Project",text:"Github"},{href:"https://discord.gg/wMqex8nKZJ",text:"Discord"},{href:"https://www.linkedin.com/company/pdap",text:"LinkedIn"},{path:"/jobs",text:"Jobs"}]),a=r.logoImageAnchorPath.startsWith("/");return(s,o)=>{const i=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("footer",Oe,[e.createElementVNode("div",be,[e.createElementVNode("ul",ke,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n),c=>(e.openBlock(),e.createElementBlock("li",{key:c.text,class:"pdap-footer-link-container"},[c.href?(e.openBlock(),e.createElementBlock("a",{key:0,class:"pdap-footer-social-link",href:c.href,target:"_blank",referrerpolicy:"no-referrer"},e.toDisplayString(c.text),9,_e)):e.createCommentVNode("",!0),c.path?(e.openBlock(),e.createBlock(i,{key:1,"active-class":"pdap-footer-social-link-current","exact-active-class":"pdap-footer-social-link-current-exact",class:"pdap-footer-social-link",to:c.path},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.text),1)]),_:2},1032,["to"])):e.createCommentVNode("",!0)]))),128))]),e.createElementVNode("p",Ae,[e.createTextVNode(" © "+e.toDisplayString(new Date().getFullYear())+" Police Data Accessibility Project",1),Ye]),Pe,e.createElementVNode("div",Be,[Qe,e.unref(a)?(e.openBlock(),e.createBlock(i,{key:1,to:s.logoImageAnchorPath,class:"pdap-footer-logo"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:s.logoImageSrc,loading:"lazy",width:"250",alt:"Police Data Accessibility Project Logo"},null,8,Ue)]),_:1},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:0,href:s.logoImageAnchorPath,class:"pdap-footer-logo"},[e.createElementVNode("img",{src:s.logoImageSrc,loading:"lazy",width:"250",alt:"Police Data Accessibility Project Logo"},null,8,Re)],8,Ve))])])])}}});function q(t,r){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);r&&(a=a.filter(function(s){return Object.getOwnPropertyDescriptor(t,s).enumerable})),n.push.apply(n,a)}return n}function v(t){for(var r=1;r<arguments.length;r++){var n=arguments[r]!=null?arguments[r]:{};r%2?q(Object(n),!0).forEach(function(a){Ge(t,a,n[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):q(Object(n)).forEach(function(a){Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(n,a))})}return t}function Ge(t,r,n){return r in t?Object.defineProperty(t,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[r]=n,t}function ee(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return Object.keys(t).reduce((n,a)=>(r.includes(a)||(n[a]=e.unref(t[a])),n),{})}function B(t){return typeof t=="function"}function We(t){return e.isReactive(t)||e.isReadonly(t)}function Me(t,r,n){let a=t;const s=r.split(".");for(let o=0;o<s.length;o++){if(!a[s[o]])return n;a=a[s[o]]}return a}function G(t,r,n){return e.computed(()=>t.some(a=>Me(r,a,{[n]:!1})[n]))}function te(t,r,n){return e.computed(()=>t.reduce((a,s)=>{const o=Me(r,s,{[n]:!1})[n]||[];return a.concat(o)},[]))}function me(t,r,n,a){return t.call(a,e.unref(r),e.unref(n),a)}function pe(t){return t.$valid!==void 0?!t.$valid:!t}function Ze(t,r,n,a,s,o,i){let{$lazy:c,$rewardEarly:l}=s,d=arguments.length>7&&arguments[7]!==void 0?arguments[7]:[],M=arguments.length>8?arguments[8]:void 0,g=arguments.length>9?arguments[9]:void 0,f=arguments.length>10?arguments[10]:void 0;const m=e.ref(!!a.value),u=e.ref(0);n.value=!1;const L=e.watch([r,a].concat(d,f),()=>{if(c&&!a.value||l&&!g.value&&!n.value)return;let p;try{p=me(t,r,M,i)}catch(j){p=Promise.reject(j)}u.value++,n.value=!!u.value,m.value=!1,Promise.resolve(p).then(j=>{u.value--,n.value=!!u.value,o.value=j,m.value=pe(j)}).catch(j=>{u.value--,n.value=!!u.value,o.value=j,m.value=!0})},{immediate:!0,deep:typeof r=="object"});return{$invalid:m,$unwatch:L}}function He(t,r,n,a,s,o,i,c){let{$lazy:l,$rewardEarly:d}=a;const M=()=>({}),g=e.computed(()=>{if(l&&!n.value||d&&!c.value)return!1;let f=!0;try{const m=me(t,r,i,o);s.value=m,f=pe(m)}catch(m){s.value=m}return f});return{$unwatch:M,$invalid:g}}function Je(t,r,n,a,s,o,i,c,l,d,M){const g=e.ref(!1),f=t.$params||{},m=e.ref(null);let u,L;t.$async?{$invalid:u,$unwatch:L}=Ze(t.$validator,r,g,n,a,m,s,t.$watchTargets,l,d,M):{$invalid:u,$unwatch:L}=He(t.$validator,r,n,a,m,s,l,d);const p=t.$message;return{$message:B(p)?e.computed(()=>p(ee({$pending:g,$invalid:u,$params:ee(f),$model:r,$response:m,$validator:o,$propertyPath:c,$property:i}))):p||"",$params:f,$pending:g,$invalid:u,$response:m,$unwatch:L}}function Xe(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const r=e.unref(t),n=Object.keys(r),a={},s={},o={};let i=null;return n.forEach(c=>{const l=r[c];switch(!0){case B(l.$validator):a[c]=l;break;case B(l):a[c]={$validator:l};break;case c==="$validationGroups":i=l;break;case c.startsWith("$"):o[c]=l;break;default:s[c]=l}}),{rules:a,nestedValidators:s,config:o,validationGroups:i}}const Ke="__root";function qe(t,r,n,a,s,o,i,c,l){const d=Object.keys(t),M=a.get(s,t),g=e.ref(!1),f=e.ref(!1),m=e.ref(0);if(M){if(!M.$partial)return M;M.$unwatch(),g.value=M.$dirty.value}const u={$dirty:g,$path:s,$touch:()=>{g.value||(g.value=!0)},$reset:()=>{g.value&&(g.value=!1)},$commit:()=>{}};return d.length?(d.forEach(L=>{u[L]=Je(t[L],r,u.$dirty,o,i,L,n,s,l,f,m)}),u.$externalResults=e.computed(()=>c.value?[].concat(c.value).map((L,p)=>({$propertyPath:s,$property:n,$validator:"$externalResults",$uid:`${s}-externalResult-${p}`,$message:L,$params:{},$response:null,$pending:!1})):[]),u.$invalid=e.computed(()=>{const L=d.some(p=>e.unref(u[p].$invalid));return f.value=L,!!u.$externalResults.value.length||L}),u.$pending=e.computed(()=>d.some(L=>e.unref(u[L].$pending))),u.$error=e.computed(()=>u.$dirty.value?u.$pending.value||u.$invalid.value:!1),u.$silentErrors=e.computed(()=>d.filter(L=>e.unref(u[L].$invalid)).map(L=>{const p=u[L];return e.reactive({$propertyPath:s,$property:n,$validator:L,$uid:`${s}-${L}`,$message:p.$message,$params:p.$params,$response:p.$response,$pending:p.$pending})}).concat(u.$externalResults.value)),u.$errors=e.computed(()=>u.$dirty.value?u.$silentErrors.value:[]),u.$unwatch=()=>d.forEach(L=>{u[L].$unwatch()}),u.$commit=()=>{f.value=!0,m.value=Date.now()},a.set(s,t,u),u):(M&&a.set(s,t,u),u)}function et(t,r,n,a,s,o,i){const c=Object.keys(t);return c.length?c.reduce((l,d)=>(l[d]=W({validations:t[d],state:r,key:d,parentKey:n,resultsCache:a,globalConfig:s,instance:o,externalResults:i}),l),{}):{}}function tt(t,r,n){const a=e.computed(()=>[r,n].filter(u=>u).reduce((u,L)=>u.concat(Object.values(e.unref(L))),[])),s=e.computed({get(){return t.$dirty.value||(a.value.length?a.value.every(u=>u.$dirty):!1)},set(u){t.$dirty.value=u}}),o=e.computed(()=>{const u=e.unref(t.$silentErrors)||[],L=a.value.filter(p=>(e.unref(p).$silentErrors||[]).length).reduce((p,j)=>p.concat(...j.$silentErrors),[]);return u.concat(L)}),i=e.computed(()=>{const u=e.unref(t.$errors)||[],L=a.value.filter(p=>(e.unref(p).$errors||[]).length).reduce((p,j)=>p.concat(...j.$errors),[]);return u.concat(L)}),c=e.computed(()=>a.value.some(u=>u.$invalid)||e.unref(t.$invalid)||!1),l=e.computed(()=>a.value.some(u=>e.unref(u.$pending))||e.unref(t.$pending)||!1),d=e.computed(()=>a.value.some(u=>u.$dirty)||a.value.some(u=>u.$anyDirty)||s.value),M=e.computed(()=>s.value?l.value||c.value:!1),g=()=>{t.$touch(),a.value.forEach(u=>{u.$touch()})},f=()=>{t.$commit(),a.value.forEach(u=>{u.$commit()})},m=()=>{t.$reset(),a.value.forEach(u=>{u.$reset()})};return a.value.length&&a.value.every(u=>u.$dirty)&&g(),{$dirty:s,$errors:i,$invalid:c,$anyDirty:d,$error:M,$pending:l,$touch:g,$reset:m,$silentErrors:o,$commit:f}}function W(t){let{validations:r,state:n,key:a,parentKey:s,childResults:o,resultsCache:i,globalConfig:c={},instance:l,externalResults:d}=t;const M=s?`${s}.${a}`:a,{rules:g,nestedValidators:f,config:m,validationGroups:u}=Xe(r),L=v(v({},c),m),p=a?e.computed(()=>{const y=e.unref(n);return y?e.unref(y[a]):void 0}):n,j=v({},e.unref(d)||{}),$=e.computed(()=>{const y=e.unref(d);return a?y?e.unref(y[a]):void 0:y}),k=qe(g,p,a,i,M,L,l,$,n),h=et(f,p,M,i,L,l,$),E={};u&&Object.entries(u).forEach(y=>{let[I,D]=y;E[I]={$invalid:G(D,h,"$invalid"),$error:G(D,h,"$error"),$pending:G(D,h,"$pending"),$errors:te(D,h,"$errors"),$silentErrors:te(D,h,"$silentErrors")}});const{$dirty:C,$errors:Y,$invalid:R,$anyDirty:Ne,$error:$e,$pending:U,$touch:F,$reset:Ce,$silentErrors:De,$commit:K}=tt(k,h,o),ve=a?e.computed({get:()=>e.unref(p),set:y=>{C.value=!0;const I=e.unref(n),D=e.unref(d);D&&(D[a]=j[a]),e.isRef(I[a])?I[a].value=y:I[a]=y}}):null;a&&L.$autoDirty&&e.watch(p,()=>{C.value||F();const y=e.unref(d);y&&(y[a]=j[a])},{flush:"sync"});async function Te(){return F(),L.$rewardEarly&&(K(),await e.nextTick()),await e.nextTick(),new Promise(y=>{if(!U.value)return y(!R.value);const I=e.watch(U,()=>{y(!R.value),I()})})}function xe(y){return(o.value||{})[y]}function Ee(){e.isRef(d)?d.value=j:Object.keys(j).length===0?Object.keys(d).forEach(y=>{delete d[y]}):Object.assign(d,j)}return e.reactive(v(v(v({},k),{},{$model:ve,$dirty:C,$error:$e,$errors:Y,$invalid:R,$anyDirty:Ne,$pending:U,$touch:F,$reset:Ce,$path:M||Ke,$silentErrors:De,$validate:Te,$commit:K},o&&{$getResultsForChild:xe,$clearExternalResults:Ee,$validationGroups:E}),h))}class rt{constructor(){this.storage=new Map}set(r,n,a){this.storage.set(r,{rules:n,result:a})}checkRulesValidity(r,n,a){const s=Object.keys(a),o=Object.keys(n);return o.length!==s.length||!o.every(c=>s.includes(c))?!1:o.every(c=>n[c].$params?Object.keys(n[c].$params).every(l=>e.unref(a[c].$params[l])===e.unref(n[c].$params[l])):!0)}get(r,n){const a=this.storage.get(r);if(!a)return;const{rules:s,result:o}=a,i=this.checkRulesValidity(r,n,s),c=o.$unwatch?o.$unwatch:()=>({});return i?o:{$dirty:o.$dirty,$partial:!0,$unwatch:c}}}const P={COLLECT_ALL:!0,COLLECT_NONE:!1},re=Symbol("vuelidate#injectChildResults"),ne=Symbol("vuelidate#removeChildResults");function nt(t){let{$scope:r,instance:n}=t;const a={},s=e.ref([]),o=e.computed(()=>s.value.reduce((M,g)=>(M[g]=e.unref(a[g]),M),{}));function i(M,g){let{$registerAs:f,$scope:m,$stopPropagation:u}=g;u||r===P.COLLECT_NONE||m===P.COLLECT_NONE||r!==P.COLLECT_ALL&&r!==m||(a[f]=M,s.value.push(f))}n.__vuelidateInjectInstances=[].concat(n.__vuelidateInjectInstances||[],i);function c(M){s.value=s.value.filter(g=>g!==M),delete a[M]}n.__vuelidateRemoveInstances=[].concat(n.__vuelidateRemoveInstances||[],c);const l=e.inject(re,[]);e.provide(re,n.__vuelidateInjectInstances);const d=e.inject(ne,[]);return e.provide(ne,n.__vuelidateRemoveInstances),{childResults:o,sendValidationResultsToParent:l,removeValidationResultsFromParent:d}}function ge(t){return new Proxy(t,{get(r,n){return typeof r[n]=="object"?ge(r[n]):e.computed(()=>r[n])}})}let ae=0;function at(t,r){var n;let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};arguments.length===1&&(a=t,t=void 0,r=void 0);let{$registerAs:s,$scope:o=P.COLLECT_ALL,$stopPropagation:i,$externalResults:c,currentVueInstance:l}=a;const d=l||((n=e.getCurrentInstance())===null||n===void 0?void 0:n.proxy),M=d?d.$options:{};s||(ae+=1,s=`_vuelidate_${ae}`);const g=e.ref({}),f=new rt,{childResults:m,sendValidationResultsToParent:u,removeValidationResultsFromParent:L}=d?nt({$scope:o,instance:d}):{childResults:e.ref({})};if(!t&&M.validations){const p=M.validations;r=e.ref({}),e.onBeforeMount(()=>{r.value=d,e.watch(()=>B(p)?p.call(r.value,new ge(r.value)):p,j=>{g.value=W({validations:j,state:r,childResults:m,resultsCache:f,globalConfig:a,instance:d,externalResults:c||d.vuelidateExternalResults})},{immediate:!0})}),a=M.validationsConfig||a}else{const p=e.isRef(t)||We(t)?t:e.reactive(t||{});e.watch(p,j=>{g.value=W({validations:j,state:r,childResults:m,resultsCache:f,globalConfig:a,instance:d??{},externalResults:c})},{immediate:!0})}return d&&(u.forEach(p=>p(g,{$registerAs:s,$scope:o,$stopPropagation:i})),e.onBeforeUnmount(()=>L.forEach(p=>p(s)))),e.computed(()=>v(v({},e.unref(g.value)),m.value))}var N=(t=>(t.CHECKBOX="checkbox",t.TEXT="text",t.PASSWORD="password",t))(N||{});const st=["id","type","name","placeholder","value"],ot=e.defineComponent({__name:"InputText",props:{type:{},error:{},id:{},label:{},name:{},placeholder:{},value:{}},emits:["change","input"],setup(t,{emit:r}){const n=r,a=o=>{n("change",o)},s=o=>{n("input",o)};return(o,i)=>(e.openBlock(),e.createElementBlock("input",e.mergeProps({id:o.id,type:o.type,name:o.name,placeholder:o.placeholder,value:o.value},o.$attrs,{onChange:a,onInput:s}),null,16,st))}}),ut=["id","name","checked","value"],it=e.defineComponent({__name:"InputCheckbox",props:{defaultChecked:{type:Boolean},type:{},error:{},id:{},label:{},name:{},placeholder:{},value:{}},emits:["change"],setup(t,{emit:r}){const n=r,a=s=>{n("change",s)};return(s,o)=>(e.openBlock(),e.createElementBlock("input",e.mergeProps({id:s.id,name:s.name,checked:s.value==="true",value:s.value,class:"pdap-input-checkbox",type:"checkbox"},s.$attrs,{onChange:a}),null,16,ut))}}),ct=["id"],lt=["for"],fe=e.defineComponent({__name:"PdapInput",props:{type:{},error:{},id:{},label:{},name:{},placeholder:{},value:{},defaultChecked:{type:Boolean}},setup(t){const r=t,n=e.computed(()=>`pdap-${r.name}-input-error`);return(a,s)=>{var o;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"pdap-input":!0,[`pdap-input-${a.type}`]:!0,[`pdap-input-${a.type}-checked`]:a.type===e.unref(N).CHECKBOX&&a.value==="true","pdap-input-error":Number((o=a.error)==null?void 0:o.length)>=1})},[a.type===e.unref(N).CHECKBOX?(e.openBlock(),e.createBlock(it,e.mergeProps({key:0,class:"pdap-input-checkbox"},{...a.$attrs,...r}),null,16)):(e.openBlock(),e.createBlock(ot,e.normalizeProps(e.mergeProps({key:1},{...a.$attrs,...a.$props})),null,16)),a.error?(e.openBlock(),e.createElementBlock("div",{key:2,id:n.value,class:"pdap-input-error-message"},e.toDisplayString(a.error),9,ct)):e.createCommentVNode("",!0),e.createElementVNode("label",{class:"pdap-input-label",for:a.id},e.toDisplayString(a.label),9,lt)],2)}}});function se(t,r){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);r&&(a=a.filter(function(s){return Object.getOwnPropertyDescriptor(t,s).enumerable})),n.push.apply(n,a)}return n}function O(t){for(var r=1;r<arguments.length;r++){var n=arguments[r]!=null?arguments[r]:{};r%2?se(Object(n),!0).forEach(function(a){dt(t,a,n[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):se(Object(n)).forEach(function(a){Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(n,a))})}return t}function dt(t,r,n){return r in t?Object.defineProperty(t,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[r]=n,t}function _(t){return typeof t=="function"}function Q(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function V(t){return _(t.$validator)?O({},t):{$validator:t}}function Lt(t){return Q(t)&&_(t.then)}function T(t){return typeof t=="object"?t.$valid:t}function S(t){return t.$validator||t}function Z(t,r){if(!Q(t))throw new Error(`[@vuelidate/validators]: First parameter to "withParams" should be an object, provided ${typeof t}`);if(!Q(r)&&!_(r))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const n=V(r);return n.$params=O(O({},n.$params||{}),t),n}function A(t,r){if(!_(t)&&typeof e.unref(t)!="string")throw new Error(`[@vuelidate/validators]: First parameter to "withMessage" should be string or a function returning a string, provided ${typeof t}`);if(!Q(r)&&!_(r))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const n=V(r);return n.$message=t,n}function Mt(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const n=V(t);return O(O({},n),{},{$async:!0,$watchTargets:r})}function mt(t){return{$validator(r){for(var n=arguments.length,a=new Array(n>1?n-1:0),s=1;s<n;s++)a[s-1]=arguments[s];return e.unref(r).reduce((o,i,c)=>{const l=Object.entries(i).reduce((d,M)=>{let[g,f]=M;const m=t[g]||{},u=Object.entries(m).reduce((L,p)=>{let[j,$]=p;const h=S($).call(this,f,i,c,...a),E=T(h);if(L.$data[j]=h,L.$data.$invalid=!E||!!L.$data.$invalid,L.$data.$error=L.$data.$invalid,!E){let C=$.$message||"";const Y=$.$params||{};typeof C=="function"&&(C=C({$pending:!1,$invalid:!E,$params:Y,$model:f,$response:h})),L.$errors.push({$property:g,$message:C,$params:Y,$response:h,$model:f,$pending:!1,$validator:j})}return{$valid:L.$valid&&E,$data:L.$data,$errors:L.$errors}},{$valid:!0,$data:{},$errors:[]});return d.$data[g]=u.$data,d.$errors[g]=u.$errors,{$valid:d.$valid&&u.$valid,$data:d.$data,$errors:d.$errors}},{$valid:!0,$data:{},$errors:{}});return{$valid:o.$valid&&l.$valid,$data:o.$data.concat(l.$data),$errors:o.$errors.concat(l.$errors)}},{$valid:!0,$data:[],$errors:[]})},$message:r=>{let{$response:n}=r;return n?n.$errors.map(a=>Object.values(a).map(s=>s.map(o=>o.$message)).reduce((s,o)=>s.concat(o),[])):[]}}}const w=t=>{if(t=e.unref(t),Array.isArray(t))return!!t.length;if(t==null)return!1;if(t===!1)return!0;if(t instanceof Date)return!isNaN(t.getTime());if(typeof t=="object"){for(let r in t)return!0;return!1}return!!String(t).length},H=t=>(t=e.unref(t),Array.isArray(t)?t.length:typeof t=="object"?Object.keys(t).length:String(t).length);function x(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return a=>(a=e.unref(a),!w(a)||r.every(s=>(s.lastIndex=0,s.test(a))))}var b=Object.freeze({__proto__:null,forEach:mt,len:H,normalizeValidatorObject:V,regex:x,req:w,unwrap:e.unref,unwrapNormalizedValidator:S,unwrapValidatorResponse:T,withAsync:Mt,withMessage:A,withParams:Z}),pt=x(/^[a-zA-Z]*$/),gt={$validator:pt,$message:"The value is not alphabetical",$params:{type:"alpha"}},ft=x(/^[a-zA-Z0-9]*$/),jt={$validator:ft,$message:"The value must be alpha-numeric",$params:{type:"alphaNum"}},yt=x(/^\d*(\.\d+)?$/),wt={$validator:yt,$message:"Value must be numeric",$params:{type:"numeric"}};function ht(t,r){return n=>!w(n)||(!/\s/.test(n)||n instanceof Date)&&+e.unref(t)<=+n&&+e.unref(r)>=+n}function Nt(t,r){return{$validator:ht(t,r),$message:n=>{let{$params:a}=n;return`The value must be between ${a.min} and ${a.max}`},$params:{min:t,max:r,type:"between"}}}const $t=/^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i;var Ct=x($t),J={$validator:Ct,$message:"Value is not a valid email address",$params:{type:"email"}};function Dt(t){if(!w(t))return!0;if(typeof t!="string")return!1;const r=t.split(".");return r.length===4&&r.every(vt)}const vt=t=>{if(t.length>3||t.length===0||t[0]==="0"&&t!=="0"||!t.match(/^\d+$/))return!1;const r=+t|0;return r>=0&&r<=255};var Tt={$validator:Dt,$message:"The value is not a valid IP address",$params:{type:"ipAddress"}};function xt(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:":";return r=>{if(t=e.unref(t),!w(r))return!0;if(typeof r!="string")return!1;const n=typeof t=="string"&&t!==""?r.split(t):r.length===12||r.length===16?r.match(/.{2}/g):null;return n!==null&&(n.length===6||n.length===8)&&n.every(Et)}}const Et=t=>t.toLowerCase().match(/^[0-9a-f]{2}$/);function It(t){return{$validator:xt(t),$message:"The value is not a valid MAC Address",$params:{type:"macAddress"}}}function St(t){return r=>!w(r)||H(r)<=e.unref(t)}function zt(t){return{$validator:St(t),$message:r=>{let{$params:n}=r;return`The maximum length allowed is ${n.max}`},$params:{max:t,type:"maxLength"}}}function Ot(t){return r=>!w(r)||H(r)>=e.unref(t)}function bt(t){return{$validator:Ot(t),$message:r=>{let{$params:n}=r;return`This field should be at least ${n.min} characters long`},$params:{min:t,type:"minLength"}}}function kt(t){return typeof t=="string"&&(t=t.trim()),w(t)}var X={$validator:kt,$message:"Value is required",$params:{type:"required"}};const oe=(t,r)=>t?w(typeof r=="string"?r.trim():r):!0;function _t(t){return function(r,n){if(typeof t!="function")return oe(e.unref(t),r);const a=t.call(this,r,n);return oe(a,r)}}function At(t){return{$validator:_t(t),$message:"The value is required",$params:{type:"requiredIf",prop:t}}}const ue=(t,r)=>t?!0:w(typeof r=="string"?r.trim():r);function Yt(t){return function(r,n){if(typeof t!="function")return ue(e.unref(t),r);const a=t.call(this,r,n);return ue(a,r)}}function Pt(t){return{$validator:Yt(t),$message:"The value is required",$params:{type:"requiredUnless",prop:t}}}function Bt(t){return r=>e.unref(r)===e.unref(t)}function Qt(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"other";return{$validator:Bt(t),$message:n=>`The value must be equal to the ${r} value`,$params:{equalTo:t,otherName:r,type:"sameAs"}}}const Vt=/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i;var Rt=x(Vt),Ut={$validator:Rt,$message:"The value is not a valid URL address",$params:{type:"url"}};function Ft(t){return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return t.reduce((s,o)=>T(s)?s:S(o).apply(this,n),!1)}}function Gt(t){return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return t.reduce(async(s,o)=>{const i=await s;return T(i)?i:S(o).apply(this,n)},Promise.resolve(!1))}}function Wt(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];const a=r.some(i=>i.$async),s=r.reduce((i,c)=>c.$watchTargets?i.concat(c.$watchTargets):i,[]);let o=()=>!1;return r.length&&(o=a?Gt(r):Ft(r)),{$async:a,$validator:o,$watchTargets:s}}function Zt(){return Z({type:"or"},A("The value does not match any of the provided validators",Wt(...arguments)))}function Ht(t){return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return t.reduce((s,o)=>T(s)?S(o).apply(this,n):s,!0)}}function Jt(t){return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return t.reduce(async(s,o)=>{const i=await s;return T(i)?S(o).apply(this,n):i},Promise.resolve(!0))}}function Xt(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];const a=r.some(i=>i.$async),s=r.reduce((i,c)=>c.$watchTargets?i.concat(c.$watchTargets):i,[]);let o=()=>!1;return r.length&&(o=a?Jt(r):Ht(r)),{$async:a,$validator:o,$watchTargets:s}}function Kt(){return Z({type:"and"},A("The value does not match all of the provided validators",Xt(...arguments)))}function qt(t){return function(r,n){if(!w(r))return!0;const a=S(t).call(this,r,n);return Lt(a)?a.then(s=>!T(s)):!T(a)}}function er(t){return{$validator:qt(t),$message:"The value does not match the provided validator",$params:{type:"not"}}}function tr(t){return r=>!w(r)||(!/\s/.test(r)||r instanceof Date)&&+r>=+e.unref(t)}function rr(t){return{$validator:tr(t),$message:r=>{let{$params:n}=r;return`The minimum value allowed is ${n.min}`},$params:{min:t,type:"minValue"}}}function nr(t){return r=>!w(r)||(!/\s/.test(r)||r instanceof Date)&&+r<=+e.unref(t)}var ar=t=>({$validator:nr(t),$message:r=>{let{$params:n}=r;return`The maximum value allowed is ${n.max}`},$params:{max:t,type:"maxValue"}}),sr=x(/(^[0-9]*$)|(^-[0-9]+$)/),or={$validator:sr,$message:"Value is not an integer",$params:{type:"integer"}},ur=x(/^[-]?\d*(\.\d+)?$/),ir={$validator:ur,$message:"Value must be decimal",$params:{type:"decimal"}};function cr(t){let{t:r,messagePath:n=s=>{let{$validator:o}=s;return`validations.${o}`},messageParams:a=s=>s}=t;return function(o){let{withArguments:i=!1,messagePath:c=n,messageParams:l=a}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};function d(M){return r(c(M),l(O({model:M.$model,property:M.$property,pending:M.$pending,invalid:M.$invalid,response:M.$response,validator:M.$validator,propertyPath:M.$propertyPath},M.$params)))}return i&&typeof o=="function"?function(){return A(d,o(...arguments))}:A(d,o)}}const je=Object.freeze(Object.defineProperty({__proto__:null,alpha:gt,alphaNum:jt,and:Kt,between:Nt,createI18nMessage:cr,decimal:ir,email:J,helpers:b,integer:or,ipAddress:Tt,macAddress:It,maxLength:zt,maxValue:ar,minLength:bt,minValue:rr,not:er,numeric:wt,or:Zt,required:X,requiredIf:At,requiredUnless:Pt,sameAs:Qt,url:Ut},Symbol.toStringTag,{value:"Module"})),ye=b.regex(/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$ %^&*-]).{8,}$/);function ie(t){return["maxLength","minLength"].includes(t)}function ce(t){return t==="required"}function le(t){return t==="email"}function de(t){return t==="password"}function lr(t,r){return{[t]:je[t](r)}}function dr(t,r,n){return{[t]:b.withMessage(n,je[t](r))}}function Lr(){return{required:X}}function Mr(t){return{required:b.withMessage(t,X)}}function mr(){return{email:J}}function pr(t){return{email:b.withMessage(t,J)}}function gr(){return{password:ye}}function fr(t){return{password:b.withMessage(t,ye)}}function jr(t,r){if(ie(t)&&typeof r.message=="string"&&typeof r.value=="number")return dr(t,r.value,r.message);if(ie(t)&&typeof r.message>"u"&&typeof r.value=="number")return lr(t,r.value);if(le(t)&&typeof r.message=="string")return pr(r.message);if(le(t)&&typeof r.message>"u")return mr();if(de(t)&&typeof r.message=="string")return fr(r.message);if(de(t)&&typeof r.message>"u")return gr();if(ce(t)&&typeof r.message=="string")return Mr(r.message);if(ce(t)&&typeof r.message>"u")return Lr();throw new Error("No valid rule detected")}const yr=["id","name"],wr={key:0,class:"pdap-form-error-message"},we=e.defineComponent({__name:"PdapForm",props:{error:{default:null},id:{},name:{},schema:{}},emits:["submit","change"],setup(t,{emit:r}){const n=t,a=r,s=e.computed(()=>n.schema.map(f=>{const m={...f};return delete m.validators,m})),o=e.ref(s.value.reduce((f,m)=>{switch(m.type){case N.CHECKBOX:return{...f,[m.name]:String(m.defaultChecked)};case N.TEXT:case N.PASSWORD:default:return{...f,[m.name]:m.value}}},{})),i=n.schema.reduce((f,m)=>{const u=Object.entries(m.validators??{}).reduce((L,[p,j])=>({...L,...jr(p,j)}),{});return{...f,[m.name]:{...u}}},{}),c=at(i,o,{$autoDirty:!1,$lazy:!0}),l=e.ref(n.error);function d(f,m){const u=m.target,L=u.type===N.CHECKBOX&&typeof u.checked=="boolean"?u.checked.toString():u.value;o.value[f]=L,M()}e.watchEffect(()=>{n.error?l.value=n.error:l.value&&c.value.$errors.length===0?l.value=null:!l.value&&c.value.$errors.length>0&&(l.value="Please update this form to correct the errors")}),e.watchEffect(()=>{});function M(){a("change",{...o.value})}async function g(f){if(await c.value.$validate()){a("submit",{...o.value}),c.value.$reset(),f.target.reset(),o.value=Object.entries(o).reduce((L,[p])=>({...L,[p]:""}),{});return}}return(f,m)=>(e.openBlock(),e.createElementBlock("form",{id:f.id,name:f.name,class:"pdap-form",onChange:M,onSubmit:m[0]||(m[0]=e.withModifiers(u=>g(u),["prevent"]))},[typeof l.value=="string"?(e.openBlock(),e.createElementBlock("div",wr,e.toDisplayString(l.value),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,u=>{var L,p,j,$;return e.openBlock(),e.createBlock(fe,e.mergeProps(u,{key:u.name,error:(L=e.unref(c)[u.name])!=null&&L.$error?($=(j=(p=e.unref(c)[u.name])==null?void 0:p.$errors)==null?void 0:j[0])==null?void 0:$.$message:"",value:o.value[u.name],onChange:k=>d(u.name,k)}),null,16,["error","value","onChange"])}),128)),e.renderSlot(f.$slots,"default")],40,yr))}});const hr={name:"GridContainer"},Nr=e.defineComponent({...hr,props:{columns:{default:"auto"},component:{default:"div"},rows:{default:"auto"},templateColumns:{},templateRows:{}},setup(t){const r=t,n=e.reactive({"pdap-grid-container":!0,[`pdap-grid-container-column-${r.columns}`]:r.columns!=="auto"}),a=r.templateRows||typeof r.rows=="number",s=r.templateRows??`repeat(${r.rows}, minmax(0, 1fr))`,o=e.reactive({...a&&{gridTemplateRows:s},...r.templateColumns&&{gridTemplateColumns:r.templateColumns}});return(i,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.component),{class:e.normalizeClass(n),style:e.normalizeStyle(o)},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},8,["class","style"]))}}),$r={name:"GridItem"},Cr=e.defineComponent({...$r,props:{component:{default:"div"},spanColumn:{default:1},spanRow:{default:1}},setup(t){const r=t,n=e.reactive({"pdap-grid-item":!0,[`pdap-grid-item-span-column-${r.spanColumn}`]:r.spanColumn>1}),a=e.reactive({...r.spanRow>1&&{gridRow:`span ${r.spanRow} / span ${r.spanRow}`}});return(s,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.component),{class:e.normalizeClass(n),style:e.normalizeStyle(a)},{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:3},8,["class","style"]))}});const Dr=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},[e.createElementVNode("path",{d:"M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"})],-1),vr=[Dr],Tr=["aria-expanded"],xr=["href"],he=e.defineComponent({__name:"PdapNav",props:{topPosition:{}},setup(t){let r=e.inject("navLinks");typeof r>"u"&&(r=[],console.error(`Hey, PDAP developer
2
- `,"Did you forget to inject some linkData for the Nav component?"));const n=e.reactive({isExpanded:!1,isMobile:!0}),a=e.reactive({"pdap-nav":!0});e.onBeforeMount(()=>{s(),window.addEventListener("resize",s)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",s)});async function s(){window.innerWidth<=1024?n.isMobile=!0:n.isMobile=!1,await e.nextTick()}async function o(){var c,l;const i=document.querySelector("body");!n.isExpanded&&n.isMobile?(n.isExpanded=!0,i!=null&&i.classList.contains("lock-scroll")||(c=document.querySelector("body"))==null||c.classList.add("lock-scroll")):n.isExpanded&&n.isMobile&&(n.isExpanded=!1,(l=document.querySelector("body"))==null||l.classList.remove("lock-scroll")),await e.nextTick()}return(i,c)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{"aria-controls":"nav",class:"pdap-nav-open-button",role:"button",onClick:o},vr),e.createElementVNode("nav",{id:"nav","aria-expanded":n.isMobile&&n.isExpanded||!n.isMobile,class:e.normalizeClass(a),style:e.normalizeStyle(n.isMobile?{top:`${i.topPosition}px`}:{})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),l=>(e.openBlock(),e.createElementBlock("li",{key:l.text,class:"pdap-nav-link-container"},[l.href?(e.openBlock(),e.createElementBlock("a",{key:0,class:"pdap-nav-link",href:l.href,target:"_blank",referrerpolicy:"no-referrer",onClick:o},e.toDisplayString(l.text),9,xr)):e.createCommentVNode("",!0),l.path?(e.openBlock(),e.createBlock(e.unref(z.RouterLink),{key:1,"active-class":"pdap-nav-link-current","exact-active-class":"pdap-nav-link-current-exact",class:"pdap-nav-link",to:l.path,onClick:o},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.text),1)]),_:2},1032,["to"])):e.createCommentVNode("",!0)]))),128))],14,Tr)],64))}});const Er="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA1MDkuNCAxMTEuNyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTA5LjQgMTExLjc7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBhdGggZD0iTTAsMTAwLjhMMjYuOCwzLjJoOS4zTDkuNCwxMDAuOEgweiIvPgo8cGF0aCBkPSJNMTIzLjIsMjdoLTQuN3YxNi42aC05LjFWMS45aDEzLjhjOS4zLDAsMTUuMiw0LjUsMTUuMiwxMi4zUzEzMi43LDI3LDEyMy4yLDI3eiBNMTIzLjIsOS42aC00Ljd2OS43aDQuNwoJYzQuMSwwLDYuMS0xLjYsNi4xLTVTMTI3LjMsOS42LDEyMy4yLDkuNkwxMjMuMiw5LjZ6Ii8+CjxwYXRoIGQ9Ik0xNTEuNCw0NC4zYy03LjIsMC0xMy01LjgtMTMtMTNzNS44LTEzLDEzLTEzczEzLjMsNS40LDEzLjMsMTIuOUMxNjQuNiwzOC40LDE1OC43LDQ0LjMsMTUxLjQsNDQuM3ogTTE1MS40LDI1LjMKCWMtMywwLTQuNiwzLjEtNC42LDUuOXMxLjYsNiw0LjcsNnM0LjYtMy4yLDQuNi02UzE1NC42LDI1LjMsMTUxLjQsMjUuM0wxNTEuNCwyNS4zeiIvPgo8cGF0aCBkPSJNMTY5LDQzLjZWMS45aDguOXY0MS43QzE3Ny45LDQzLjYsMTY5LDQzLjYsMTY5LDQzLjZ6Ii8+CjxwYXRoIGQ9Ik0xODMuNSwxNVY2LjhoOC45VjE1SDE4My41eiBNMTgzLjUsNDMuNlYxOWg4Ljl2MjQuNkgxODMuNXoiLz4KPHBhdGggZD0iTTIxMC4yLDQ0LjNjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNmwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMy00LjktMi4zCgljLTMuMSwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC45LTIuNUwyMjEsMzlDMjE4LDQyLjcsMjE1LDQ0LjMsMjEwLjIsNDQuM3oiLz4KPHBhdGggZD0iTTIzNi45LDQ0LjNjLTcuMiwwLTEzLjgtMy44LTEzLjgtMTMuMmMwLTguMiw1LjUtMTIuOCwxMi40LTEyLjhjNy44LDAsMTMuMSw1LjUsMTMuMSwxNC41aC0xNy4yYzAuMywyLjksMiw1LjIsNS41LDUuMgoJYzMuOCwwLDYuMS0wLjksOC4yLTIuNmwzLjgsNC44QzI0NS41LDQzLDI0MS4zLDQ0LjQsMjM2LjksNDQuM3ogTTIzNS4zLDI0Yy0yLjUsMC0zLjUsMS44LTQsNC4xaDguMUMyMzkuMywyNS42LDIzNy43LDI0LDIzNS4zLDI0egoJIi8+CjxwYXRoIGQ9Ik0yODAuMiw0My42aC0xMi42VjEuOWgxMi42YzExLjksMCwyMS43LDcuMywyMS43LDIwLjhDMzAxLjksMzYuNCwyOTEuMyw0My42LDI4MC4yLDQzLjZ6IE0yODAuMiw5LjZoLTMuNXYyNi4zaDMuNQoJYzcuOCwwLDEyLjMtNi4yLDEyLjMtMTMuMkMyOTIuNSwxNS40LDI4Ny41LDkuNiwyODAuMiw5LjZMMjgwLjIsOS42eiIvPgo8cGF0aCBkPSJNMzIyLjEsNDMuNnYtMS45Yy0yLjcsMS45LTQuMiwyLjYtOC41LDIuNmMtNC43LDAtOC45LTMtOC45LTcuN2MwLTcuNyw5LjQtOS4xLDE3LjQtOS41di0wLjljMC0xLjctMS4xLTIuMy0zLjYtMi4zCgljLTMuMSwwLTYuMSwwLjctOC44LDIuMWwtMi43LTUuM2MzLjMtMS44LDcuNC0yLjUsMTEuOC0yLjVjOC4yLDAsMTIuMiwyLjYsMTIuMiw5Ljd2MTUuN0gzMjIuMXogTTMyMi4xLDMyLjFjLTMuOCwwLTgsMC44LTgsMy42CgljMCwxLjQsMS40LDIuMywyLjksMi4zYzEuOSwwLjEsMy43LTAuNSw1LjEtMS44VjMyLjF6Ii8+CjxwYXRoIGQ9Ik0zNDUuOSw0My42Yy01LDAtOC4yLTMuOC04LjItOXYtOWgtMy4xVjE5aDMuMVY4LjdoOC45VjE5aDQuMnY2LjZoLTQuMlYzM2MwLDEuOSwxLDMuMiwyLjcsMy4yaDIuMnY3LjRMMzQ1LjksNDMuNnoiLz4KPHBhdGggZD0iTTM3Mi4yLDQzLjZ2LTEuOWMtMi43LDEuOS00LjIsMi42LTguNSwyLjZjLTQuNywwLTguOS0zLTguOS03LjdjMC03LjcsOS40LTkuMSwxNy40LTkuNXYtMC45YzAtMS43LTEuMS0yLjMtMy43LTIuMwoJYy0zLjEsMC02LjEsMC43LTguOCwyLjFsLTIuOC01LjNjMy4zLTEuOCw3LjQtMi41LDExLjgtMi41YzguMiwwLDEyLjIsMi42LDEyLjIsOS43djE1LjdIMzcyLjJ6IE0zNzIuMiwzMi4xYy0zLjgsMC04LDAuOC04LDMuNgoJYzAsMS40LDEuNCwyLjMsMi45LDIuM2MxLjksMC4xLDMuNy0wLjUsNS4xLTEuOFYzMi4xeiIvPgo8cGF0aCBkPSJNNTYuNCwxMDAuOGwtMy4yLTEwLjVINDAuNWwtMy4zLDEwLjVoLTkuN2wxNC45LTQxLjdoOC44bDE1LjEsNDEuN0g1Ni40eiBNNDcuOCw3Mi40Yy0wLjQtMS4zLTAuOS0zLTAuOS0zLjMKCWMwLDAuMi0wLjUsMS45LTAuOCwzLjNMNDMsODIuNmg4TDQ3LjgsNzIuNHoiLz4KPHBhdGggZD0iTTgxLjYsMTAxLjVjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNmwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMy00LjktMi4zCgljLTMuMiwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC44LTIuNWw1LjksNC4yQzg5LjQsOTkuOSw4Ni4zLDEwMS41LDgxLjYsMTAxLjV6Ii8+CjxwYXRoIGQ9Ik0xMDgsMTAxLjVjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNWwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMi00LjktMi4yCgljLTMuMSwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC44LTIuNWw2LDQuMkMxMTUuOCw5OS45LDExMi44LDEwMS41LDEwOCwxMDEuNXoiLz4KPHBhdGggZD0iTTEzNC42LDEwMS41Yy03LjIsMC0xMy44LTMuOC0xMy44LTEzLjJjMC04LjIsNS41LTEyLjgsMTIuNC0xMi44YzcuOCwwLDEzLjEsNS41LDEzLjEsMTQuNWgtMTcuMmMwLjMsMi44LDIsNS4yLDUuNSw1LjIKCWMzLjgsMCw2LjEtMC44LDguMi0yLjZsMy44LDQuOEMxNDMuMywxMDAuMiwxMzksMTAxLjYsMTM0LjYsMTAxLjV6IE0xMzMuMSw4MS4yYy0yLjUsMC0zLjUsMS44LTMuOSw0LjFoOC4xCglDMTM3LDgyLjgsMTM1LjQsODEuMiwxMzMuMSw4MS4yeiIvPgo8cGF0aCBkPSJNMTYwLDEwMS41Yy0zLjgsMC04LTAuOS0xMC42LTIuOGwyLjktNS42YzEuOSwxLjMsNC4yLDIsNi41LDIuMWMxLjksMCwyLjktMC42LDIuOS0xLjRjMC0xLjMtMS41LTEuOS0zLjUtMi42CgljLTMuMy0xLjMtNy44LTIuOC03LjgtOC4yYzAtNC45LDQuMi03LjUsMTAuMy03LjVjMy4yLTAuMSw2LjMsMC43LDksMi4zbC0yLjUsNS41Yy0xLjktMS4xLTQuMS0xLjYtNi4zLTEuNmMtMS40LDAtMi43LDAuMi0yLjcsMS4zCgljMCwwLjksMiwxLjUsNC40LDIuNGMzLjYsMS4zLDgsMy40LDgsOC4zQzE3MC40LDk5LjMsMTY1LjQsMTAxLjUsMTYwLDEwMS41eiIvPgo8cGF0aCBkPSJNMTgzLjEsMTAxLjVjLTMuOCwwLTgtMC45LTEwLjYtMi44bDIuOS01LjZjMS45LDEuMyw0LjIsMiw2LjUsMi4xYzEuOSwwLDIuOS0wLjYsMi45LTEuNGMwLTEuMy0xLjUtMS45LTMuNS0yLjYKCWMtMy4zLTEuMy03LjgtMi44LTcuOC04LjJjMC00LjksNC4yLTcuNSwxMC4zLTcuNWMzLjItMC4xLDYuMywwLjcsOSwyLjNsLTIuNSw1LjVjLTEuOS0xLjEtNC4xLTEuNi02LjMtMS42Yy0xLjQsMC0yLjcsMC4yLTIuNywxLjMKCWMwLDAuOSwyLDEuNSw0LjQsMi40YzMuNiwxLjMsOCwzLjQsOCw4LjNDMTkzLjUsOTkuMywxODguNSwxMDEuNSwxODMuMSwxMDEuNXoiLz4KPHBhdGggZD0iTTE5Ny44LDcyLjJWNjRoOC45djguMUwxOTcuOCw3Mi4yeiBNMTk3LjgsMTAwLjhWNzYuMmg4Ljl2MjQuNkMyMDYuNywxMDAuOCwxOTcuOCwxMDAuOCwxOTcuOCwxMDAuOHoiLz4KPHBhdGggZD0iTTIyOC43LDEwMS41Yy0zLDAtNi4xLTEuMy03LjQtMy4ydjIuNWgtOC45VjU5LjFoOC45djE5LjZjMS40LTEuOSw0LjUtMy4yLDcuNC0zLjJjNi45LDAsMTEuNSw2LjMsMTEuNSwxMwoJQzI0MC4yLDk1LjQsMjM1LjYsMTAxLjUsMjI4LjcsMTAxLjV6IE0yMjYuMyw4Mi43Yy0zLDAtNS4xLDIuMy01LjEsNS43czIsNS44LDUuMSw1LjhjMi45LDAsNS0yLjQsNS01LjhTMjI5LjIsODIuNywyMjYuMyw4Mi43eiIvPgo8cGF0aCBkPSJNMjQ0LjUsNzIuMlY2NGg4Ljl2OC4xTDI0NC41LDcyLjJ6IE0yNDQuNSwxMDAuOFY3Ni4yaDguOXYyNC42QzI1My40LDEwMC44LDI0NC41LDEwMC44LDI0NC41LDEwMC44eiIvPgo8cGF0aCBkPSJNMjU5LDEwMC44VjU5LjFoOC45djQxLjdIMjU5eiIvPgo8cGF0aCBkPSJNMjczLjYsNzIuMlY2NGg4Ljl2OC4xTDI3My42LDcyLjJ6IE0yNzMuNiwxMDAuOFY3Ni4yaDguOXYyNC42QzI4Mi41LDEwMC44LDI3My42LDEwMC44LDI3My42LDEwMC44eiIvPgo8cGF0aCBkPSJNMjk3LjYsMTAwLjhjLTUsMC04LjItMy44LTguMi05di05aC0zLjF2LTYuNmgzLjFWNjUuOWg4Ljl2MTAuMmg0LjJ2Ni42aC00LjJ2Ny40YzAsMS45LDEsMy4yLDIuNywzLjJoMi4ydjcuNGgtNS42VjEwMC44egoJIi8+CjxwYXRoIGQ9Ik0zMjEuNiwxMDYuM2MtMS4xLDMuMi0zLjIsNS40LTcsNS40aC01LjF2LTcuMmgxLjljMS43LDAsMy40LTEsMy40LTIuNWMwLTEuMi0wLjItMi4zLTAuNy0zLjRsLTguNS0yMi40aDkuM2wzLjQsMTEuMgoJYzAuNSwxLjQsMC44LDMuMSwwLjgsMy4xczAuNC0xLjYsMC44LTMuMWwyLjktMTEuMmg5LjJMMzIxLjYsMTA2LjN6Ii8+CjxwYXRoIGQ9Ik0zNjIsODQuMmgtNC43djE2LjZoLTkuMVY1OS4xSDM2MmM5LjMsMCwxNS4zLDQuNSwxNS4zLDEyLjNTMzcxLjUsODQuMiwzNjIsODQuMnogTTM2Miw2Ni44aC00Ljd2OS43aDQuNwoJYzQuMSwwLDYuMS0xLjYsNi4xLTVTMzY2LjEsNjYuOCwzNjIsNjYuOHoiLz4KPHBhdGggZD0iTTM5NS44LDg1LjNjLTEuMS0xLTIuNS0xLjUtMy45LTEuNWMtMi45LDAtNC4xLDIuMy00LjEsNC45djEyLjFoLTguOVY3Ni4yaDguOXYzLjNjMS4zLTIuNCwzLjctMy44LDYuNC0zLjkKCWMyLjItMC4xLDQuNCwwLjgsNS45LDIuM0wzOTUuOCw4NS4zeiIvPgo8cGF0aCBkPSJNNDEyLjgsMTAxLjVjLTcuMiwwLTEzLTUuOC0xMy0xM3M1LjgtMTMsMTMtMTNzMTMuMyw1LjQsMTMuMywxMi45QzQyNi4xLDk1LjYsNDIwLjEsMTAxLjUsNDEyLjgsMTAxLjV6IE00MTIuOCw4Mi41CgljLTMsMC00LjYsMy4xLTQuNiw1LjlzMS42LDYsNC43LDZzNC42LTMuMiw0LjYtNi4xUzQxNiw4Mi41LDQxMi44LDgyLjVMNDEyLjgsODIuNXoiLz4KPHBhdGggZD0iTTQzMC42LDExMWgtNS40di03LjRoMi4yYzEuMiwwLDEuNS0xLjEsMS41LTIuOFY3Ni4yaDguOXYyNy4yQzQzNy44LDEwOCw0MzUuNCwxMTEsNDMwLjYsMTExeiBNNDI5LDcyLjJWNjRoOC45djguMQoJTDQyOSw3Mi4yeiIvPgo8cGF0aCBkPSJNNDU0LjUsMTAxLjVjLTcuMiwwLTEzLjgtMy44LTEzLjgtMTMuMmMwLTguMiw1LjUtMTIuOCwxMi40LTEyLjhjNy44LDAsMTMuMSw1LjUsMTMuMSwxNC41SDQ0OWMwLjMsMi44LDIuMSw1LjIsNS41LDUuMgoJYzMuOCwwLDYuMS0wLjgsOC4yLTIuNmwzLjgsNC44QzQ2My4yLDEwMC4yLDQ1OC45LDEwMS42LDQ1NC41LDEwMS41eiBNNDUzLDgxLjJjLTIuNSwwLTMuNSwxLjgtMy45LDQuMWg4LjEKCUM0NTYuOSw4Mi44LDQ1NS4zLDgxLjIsNDUzLDgxLjJ6Ii8+CjxwYXRoIGQ9Ik00ODEuNiwxMDEuNWMtNy44LDAtMTMuNS01LjYtMTMuNS0xMi45YzAtNy4xLDUuNy0xMy4xLDEzLjUtMTMuMWMzLjktMC4yLDcuNiwxLjUsMTAsNC42bC01LjEsNC43Yy0xLjItMS40LTMtMi4zLTQuOS0yLjMKCWMtMy4xLDAtNS4zLDIuNi01LjMsNi4xYzAsMywyLjEsNS45LDUuMyw1LjljMi4zLDAsMy41LTAuOSw0LjktMi41bDUuOSw0LjJDNDg5LjQsOTkuOSw0ODYuNCwxMDEuNSw0ODEuNiwxMDEuNXoiLz4KPHBhdGggZD0iTTUwMy45LDEwMC44Yy01LDAtOC4yLTMuOC04LjItOXYtOWgtMy4xdi02LjZoMy4xVjY1LjloOC45djEwLjJoNC4ydjYuNmgtNC4ydjcuNGMwLDEuOSwxLDMuMiwyLjcsMy4yaDIuMnY3LjRoLTUuNlYxMDAuOHoKCSIvPgo8cG9seWdvbiBwb2ludHM9IjkxLjcsMjAuMiA3Ni4yLDIwLjIgODguNCw4IDgzLjEsMi43IDcxLjUsMTQuMyA3MS41LDAgNjQsMCA2NCwxNC4zIDUyLjMsMi43IDQ3LDggNTkuMiwyMC4yIDQzLjcsMjAuMiA0My43LDI3LjggCgk1OC4xLDI3LjggNDcsMzguOCA1Mi4zLDQ0LjEgNjQsMzIuNSA2NCw0OCA3MS41LDQ4IDcxLjUsMzIuNSA4My4xLDQ0LjEgODguNCwzOC44IDc3LjQsMjcuOCA5MS43LDI3LjggIi8+Cjwvc3ZnPgo=",Ir=["href"],Sr=["src"],zr=["src"],Or=e.defineComponent({__name:"PdapHeader",props:{logoImageSrc:{default:Er},logoImageAnchorPath:{default:"/"}},setup(t){const r=t,n=e.ref(),a=e.ref(null),s=r.logoImageAnchorPath.startsWith("/");e.onMounted(()=>{o(),window.addEventListener("resize",o)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",o)});function o(){a.value&&(n.value=a.value.offsetHeight)}return(i,c)=>(e.openBlock(),e.createElementBlock("header",{ref_key:"el",ref:a,class:"pdap-header"},[e.unref(s)?(e.openBlock(),e.createBlock(e.unref(z.RouterLink),{key:1,to:i.logoImageAnchorPath,class:"logo"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:i.logoImageSrc,loading:"lazy",width:"250",alt:"Police Data Accessibility Project Logo"},null,8,zr)]),_:1},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:0,href:i.logoImageAnchorPath,class:"logo"},[e.createElementVNode("img",{src:i.logoImageSrc,loading:"lazy",width:"250",alt:"Police Data Accessibility Project Logo"},null,8,Sr)],8,Ir)),e.createVNode(he,{"top-position":n.value},null,8,["top-position"])],512))}});const br=e.createElementVNode("div",{class:"pdap-flex-container"},[e.createElementVNode("h2",{class:"mt-0"},"Search our database"),e.createElementVNode("p",{class:"pb-4 md:pb-8"},[e.createTextVNode(" If you are looking for something specific, we may already be tracking it. "),e.createElementVNode("a",{href:"https://pdap.io/data"},"Learn more about the data here.")])],-1),kr={class:"pdap-quick-search-form h-full max-h-[75-vh] justify-start p-0"},_r={class:"max-w-[unset] text-med"},Ar=["href"],Yr=["href"],Pr=e.defineComponent({__name:"QuickSearchForm",props:{baseUrlForRedirect:{default:"https://data-sources.pdap.io"}},setup(t){const r=z.useRouter(),n=t,a=[{id:"search-term",name:"searchTerm",label:"What are you looking for?",type:N.TEXT,placeholder:"Enter a keyword, or 'all'",value:""},{id:"location",name:"location",label:"From where?",type:N.TEXT,placeholder:"Enter a place, or 'all'",value:""}],s=e.ref(void 0),o=r.getRoutes().some(l=>l.path.includes("/search/"));function i(l){s.value&&Object.values(l).some(Boolean)&&(s.value=void 0)}function c(l){if(Object.values(l).every(g=>!g)){s.value="Either a search term or a location is required.";return}let{location:d,searchTerm:M}=l;d=d&&d.length>0?d:"all",M=M&&M.length>0?M:"all",o?r.push(`/search/${M}/${d}`):window.location.assign(`${n.baseUrlForRedirect}/search/${M}/${d}`)}return(l,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[br,e.createElementVNode("div",kr,[e.createVNode(we,{id:"quick-search-form",class:"flex flex-wrap gap-x-4",error:s.value,schema:a,name:"quickSearchForm",onChange:i,onSubmit:c},{default:e.withCtx(()=>[e.createVNode(Le,{type:"submit",class:"flex-grow-0 flex-shrink-0 basis-full max-w-[unset] mt-4"},{default:e.withCtx(()=>[e.createTextVNode("Search Data Sources")]),_:1})]),_:1},8,["error"]),e.createElementVNode("p",_r,[e.createTextVNode(" For example, you could search for "),e.unref(o)?(e.openBlock(),e.createBlock(e.unref(z.RouterLink),{key:0,to:"/search/stops/pittsburgh"},{default:e.withCtx(()=>[e.createTextVNode(" stops in Pittsburgh ")]),_:1})):(e.openBlock(),e.createElementBlock("a",{key:1,target:"_blank",rel:"noreferrer",href:`${n.baseUrlForRedirect}/search/stops/pittsburgh`}," stops in Pittsburgh ",8,Ar)),e.createTextVNode(" or "),e.unref(o)?(e.openBlock(),e.createBlock(e.unref(z.RouterLink),{key:2,to:"/search/complaints/all"},{default:e.withCtx(()=>[e.createTextVNode(" complaints everywhere ")]),_:1})):(e.openBlock(),e.createElementBlock("a",{key:3,target:"_blank",rel:"noreferrer",href:`${n.baseUrlForRedirect}/search/complaints/all`}," complaints everywhere ",8,Yr)),e.createTextVNode(" . ")])])],64))}});const Br=["alt","src"],Qr=e.defineComponent({__name:"TileIcon",props:{imgAltText:{},imgSrc:{}},setup(t){return(r,n)=>(e.openBlock(),e.createElementBlock("img",{class:"pdap-tile-icon",alt:r.imgAltText,src:r.imgSrc},null,8,Br))}});function Vr(t){const r=[];for(const n of t.matched){const{name:a,path:s,meta:o}=n,i=o.breadcrumbText??a;i&&r.push({text:i,path:s,active:!1})}return r.length>0&&(r[r.length-1].active=!0),r}const Rr={"aria-label":"Breadcrumb"},Ur={key:1},Fr=e.defineComponent({__name:"PdapBreadcrumbs",setup(t){const r=z.useRoute(),n=e.computed(()=>Vr(r));return(a,s)=>{const o=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("nav",Rr,[e.createVNode(e.TransitionGroup,{class:"pdap-breadcrumbs",name:"pdap-breadcrumbs",tag:"ul"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,i=>(e.openBlock(),e.createElementBlock("li",{key:i.text,class:e.normalizeClass({"is-active":i.active})},[i.active?(e.openBlock(),e.createElementBlock("span",Ur,e.toDisplayString(i.text),1)):(e.openBlock(),e.createBlock(o,{key:0,to:i.path},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.text),1)]),_:2},1032,["to"]))],2))),128))]),_:1})])}}});const Gr=(t,r)=>{const n=t.__vccOpts||t;for(const[a,s]of r)n[a]=s;return n},Wr=Gr(Fr,[["__scopeId","data-v-91ca33c0"]]);const Zr={content:["./src/**/*.vue","./src/**/*.css"],theme:{extend:{colors:{brand:{blue:{light:"rgba(var(--color-brand-blue-light)/<alpha-value>)",medium:"rgba(var(--color-brand-blue-medium)/<alpha-value>)"},gold:"rgba(var(--color-brand-gold)/<alpha-value>)",wine:"rgba(var(--color-brand-wine)/<alpha-value>)"},neutral:{50:"rgba(var(--color-neutral-50)/<alpha-value>)",100:"rgba(var(--color-neutral-100)/<alpha-value>)",200:"rgba(var(--color-neutral-200)/<alpha-value>)",300:"rgba(var(--color-neutral-300)/<alpha-value>)",400:"rgba(var(--color-neutral-400)/<alpha-value>)",500:"rgba(var(--color-neutral-500)/<alpha-value>)",600:"rgba(var(--color-neutral-600)/<alpha-value>)",700:"rgba(var(--color-neutral-700)/<alpha-value>)",800:"rgba(var(--color-neutral-800)/<alpha-value>)",900:"rgba(var(--color-neutral-900)/<alpha-value>)",950:"rgba(var(--color-neutral-950)/<alpha-value>)"}},brightness:{85:".85"},maxWidth:{"4xl":"59rem"},screens:{xs:"500px"}},fontFamily:{sans:['"Libre Franklin"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto","Oxygen","Ubuntu","Cantarell",'"Fira Sans"','"Droid Sans"','"Helvetica Neue"',"sans-serif"],serif:["ui-serif","Georgia"],mono:['"Source Code Pro"',"monospace","ui-monospace","SFMono-Regular"]},fontSize:{xs:"0.75rem",sm:"0.875rem",med:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.75rem","4xl":"2rem","5xl":"2.625rem","6xl":"3rem"}}};exports.Breadcrumbs=Wr;exports.Button=Le;exports.FlexContainer=Se;exports.Footer=Fe;exports.Form=we;exports.GridContainer=Nr;exports.GridItem=Cr;exports.Header=Or;exports.Input=fe;exports.Nav=he;exports.PdapInputTypes=N;exports.QuickSearchForm=Pr;exports.TileIcon=Qr;exports.tailwindConfig=Zr;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),O=require("vue-router"),ze={name:"PdapButton"},Z=e.defineComponent({...ze,props:{intent:{default:"primary"},isLoading:{type:Boolean,default:!1}},setup(t){const r=t,n=e.reactive({"pdap-button":!0,[`pdap-button-${r.intent}`]:!!r.intent,"pdap-button-loading":r.isLoading});return(a,o)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(n)},[e.renderSlot(a.$slots,"default")],2))}});const Oe=e.createElementVNode("h1",null,"Oops, something went wrong!",-1),be=e.createElementVNode("p",{class:"max-w-full","data-test":"error-boundary-message"},[e.createTextVNode(" If you keep seeing this message, please email "),e.createElementVNode("a",{href:"mailto:contact@pdap.io"},"contact@pdap.io"),e.createTextVNode(" for assistance. ")],-1),ke={name:"ErrorBoundary"},_e=e.defineComponent({...ke,props:{component:{default:"div"},onError:{type:Function,default:void 0},params:{default:void 0}},emits:["onError"],setup(t,{emit:r}){const n=t,a=r,o=e.ref(),s=e.ref("");function c(i,l,d){var M;o.value=i,s.value=d,(M=n.onError)==null||M.call(n,i,l,d),a("onError",{error:i,vm:l,info:d})}return e.onErrorCaptured((i,l,d)=>{c(i,l,d)}),(i,l)=>o.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.component),{key:1,class:"pdap-flex-container-center h-[full]","v-bind":i.params},{default:e.withCtx(()=>[Oe,be]),_:1},8,["v-bind"])):e.renderSlot(i.$slots,"default",{key:0})}}),Ae="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxMTMuOCA4Ni4xIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMTMuOCA4Ni4xOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxwYXRoIGQ9Ik0wLDgwLjlMMjEuNSwyLjZoNS4xTDUuMSw4MC45SDB6Ii8+Cjxwb2x5Z29uIHBvaW50cz0iNzguOCwyMC40IDYxLjgsMjAuNCA3NSw3LjIgNzEuMSwzLjIgNTguNCwxNS44IDU4LjQsMCA1Mi44LDAgNTIuOCwxNS44IDQwLjIsMy4yIDM2LjIsNy4yIDQ5LjUsMjAuNCAzMi41LDIwLjQgCgkzMi41LDI2IDQ4LjMsMjYgMzYuMiwzOCA0MC4yLDQyIDUyLjgsMjkuMyA1Mi44LDQ2LjMgNTguNCw0Ni4zIDU4LjQsMjkuMyA3MS4xLDQyIDc1LDM4IDYzLDI2IDc4LjgsMjYgIi8+CjxwYXRoIGQ9Ik00Mi4xLDcxLjFoLTIuNnY5LjFoLTVWNTcuM2g3LjZjNS4xLDAsOC40LDIuNCw4LjQsNi43UzQ3LjMsNzEuMSw0Mi4xLDcxLjF6IE00Mi4xLDYxLjVoLTIuNnY1LjNoMi42CgljMi4zLDAsMy4zLTAuOSwzLjMtMi43UzQ0LjMsNjEuNSw0Mi4xLDYxLjV6Ii8+CjxwYXRoIGQ9Ik02MC41LDgwLjFoLTYuOVY1Ny4zaDYuOWM2LjUsMCwxMS45LDQsMTEuOSwxMS40QzcyLjQsNzYuMiw2Ni42LDgwLjEsNjAuNSw4MC4xeiBNNjAuNSw2MS41aC0xLjl2MTQuNGgxLjkKCWM0LjMsMCw2LjctMy40LDYuNy03LjJTNjQuNSw2MS41LDYwLjUsNjEuNXoiLz4KPHBhdGggZD0iTTg4LjcsODAuMUw4Nyw3NC40aC03bC0xLjgsNS44aC01LjNsOC4yLTIyLjloNC44bDguMywyMi45aC01LjVWODAuMXogTTg0LDY0LjZjLTAuMi0wLjctMC41LTEuNi0wLjUtMS44CgljMCwwLjEtMC4yLDEtMC41LDEuOGwtMS43LDUuNmg0LjRMODQsNjQuNnoiLz4KPHBhdGggZD0iTTEwNC43LDcxLjFoLTIuNnY5LjFoLTVWNTcuM2g3LjZjNS4xLDAsOC40LDIuNCw4LjQsNi43UzEwOS44LDcxLjEsMTA0LjcsNzEuMXogTTEwNC43LDYxLjVoLTIuNnY1LjNoMi42CgljMi4zLDAsMy4zLTAuOSwzLjMtMi43UzEwNi45LDYxLjUsMTA0LjcsNjEuNXoiLz4KPC9zdmc+Cg==",Pe={class:"pdap-footer"},Ye={class:"pdap-flex-container-center"},Ve={class:"pdap-footer-social-links"},Be=["href"],Qe={class:"pdap-footer-copyright"},Re=e.createElementVNode("br",null,null,-1),Ue=e.createElementVNode("p",{class:"pdap-footer-copyright"},[e.createTextVNode(" PDAP is a non-profit. EIN: 85-4207132. "),e.createElementVNode("a",{href:"https://docs.pdap.io/meta/policy/pdap-privacy-policy",alt:"Privacy Policy",target:"_blank"},[e.createElementVNode("br"),e.createTextVNode(" Privacy Policy "),e.createElementVNode("i",{class:"fa fa-external-link"})]),e.createElementVNode("br"),e.createElementVNode("a",{href:"mailto:contact@pdap.io"},"contact@pdap.io")],-1),Fe={class:"pdap-footer-widget-links"},We=e.createElementVNode("a",{href:"https://www.guidestar.org/profile/85-4207132",target:"_blank"},[e.createElementVNode("img",{src:"https://widgets.guidestar.org/gximage2?o=9973356&l=v4"})],-1),Ge=["href"],He=["src"],Ze=["src"],Je={name:"PdapFooter"},Xe=e.defineComponent({...Je,props:{logoImageSrc:{default:Ae},logoImageAnchorPath:{default:"/"}},setup(t){const r=t,n=e.inject("footerLinks",[{href:"https://github.com/orgs/Police-Data-Accessibility-Project",text:"Github"},{href:"https://discord.gg/wMqex8nKZJ",text:"Discord"},{href:"https://www.linkedin.com/company/pdap",text:"LinkedIn"},{path:"/jobs",text:"Jobs"}]),a=r.logoImageAnchorPath.startsWith("/");return(o,s)=>{const c=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("footer",Pe,[e.createElementVNode("div",Ye,[e.createElementVNode("ul",Ve,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n),i=>(e.openBlock(),e.createElementBlock("li",{key:i.text,class:"pdap-footer-link-container"},[i.href?(e.openBlock(),e.createElementBlock("a",{key:0,class:"pdap-footer-social-link",href:i.href,target:"_blank",referrerpolicy:"no-referrer"},e.toDisplayString(i.text),9,Be)):e.createCommentVNode("",!0),i.path?(e.openBlock(),e.createBlock(c,{key:1,"active-class":"pdap-footer-social-link-current","exact-active-class":"pdap-footer-social-link-current-exact",class:"pdap-footer-social-link",to:i.path},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.text),1)]),_:2},1032,["to"])):e.createCommentVNode("",!0)]))),128))]),e.createElementVNode("p",Qe,[e.createTextVNode(" © "+e.toDisplayString(new Date().getFullYear())+" Police Data Accessibility Project",1),Re]),Ue,e.createElementVNode("div",Fe,[We,e.unref(a)?(e.openBlock(),e.createBlock(c,{key:1,to:o.logoImageAnchorPath,class:"pdap-footer-logo"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:o.logoImageSrc,loading:"lazy",width:"250",alt:"Police Data Accessibility Project Logo"},null,8,Ze)]),_:1},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:0,href:o.logoImageAnchorPath,class:"pdap-footer-logo"},[e.createElementVNode("img",{src:o.logoImageSrc,loading:"lazy",width:"250",alt:"Police Data Accessibility Project Logo"},null,8,He)],8,Ge))])])])}}});function te(t,r){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);r&&(a=a.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),n.push.apply(n,a)}return n}function T(t){for(var r=1;r<arguments.length;r++){var n=arguments[r]!=null?arguments[r]:{};r%2?te(Object(n),!0).forEach(function(a){Ke(t,a,n[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):te(Object(n)).forEach(function(a){Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(n,a))})}return t}function Ke(t,r,n){return r in t?Object.defineProperty(t,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[r]=n,t}function re(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return Object.keys(t).reduce((n,a)=>(r.includes(a)||(n[a]=e.unref(t[a])),n),{})}function B(t){return typeof t=="function"}function qe(t){return e.isReactive(t)||e.isReadonly(t)}function pe(t,r,n){let a=t;const o=r.split(".");for(let s=0;s<o.length;s++){if(!a[o[s]])return n;a=a[o[s]]}return a}function G(t,r,n){return e.computed(()=>t.some(a=>pe(r,a,{[n]:!1})[n]))}function ne(t,r,n){return e.computed(()=>t.reduce((a,o)=>{const s=pe(r,o,{[n]:!1})[n]||[];return a.concat(s)},[]))}function ge(t,r,n,a){return t.call(a,e.unref(r),e.unref(n),a)}function me(t){return t.$valid!==void 0?!t.$valid:!t}function et(t,r,n,a,o,s,c){let{$lazy:i,$rewardEarly:l}=o,d=arguments.length>7&&arguments[7]!==void 0?arguments[7]:[],M=arguments.length>8?arguments[8]:void 0,f=arguments.length>9?arguments[9]:void 0,m=arguments.length>10?arguments[10]:void 0;const g=e.ref(!!a.value),u=e.ref(0);n.value=!1;const L=e.watch([r,a].concat(d,m),()=>{if(i&&!a.value||l&&!f.value&&!n.value)return;let p;try{p=ge(t,r,M,c)}catch(j){p=Promise.reject(j)}u.value++,n.value=!!u.value,g.value=!1,Promise.resolve(p).then(j=>{u.value--,n.value=!!u.value,s.value=j,g.value=me(j)}).catch(j=>{u.value--,n.value=!!u.value,s.value=j,g.value=!0})},{immediate:!0,deep:typeof r=="object"});return{$invalid:g,$unwatch:L}}function tt(t,r,n,a,o,s,c,i){let{$lazy:l,$rewardEarly:d}=a;const M=()=>({}),f=e.computed(()=>{if(l&&!n.value||d&&!i.value)return!1;let m=!0;try{const g=ge(t,r,c,s);o.value=g,m=me(g)}catch(g){o.value=g}return m});return{$unwatch:M,$invalid:f}}function rt(t,r,n,a,o,s,c,i,l,d,M){const f=e.ref(!1),m=t.$params||{},g=e.ref(null);let u,L;t.$async?{$invalid:u,$unwatch:L}=et(t.$validator,r,f,n,a,g,o,t.$watchTargets,l,d,M):{$invalid:u,$unwatch:L}=tt(t.$validator,r,n,a,g,o,l,d);const p=t.$message;return{$message:B(p)?e.computed(()=>p(re({$pending:f,$invalid:u,$params:re(m),$model:r,$response:g,$validator:s,$propertyPath:i,$property:c}))):p||"",$params:m,$pending:f,$invalid:u,$response:g,$unwatch:L}}function nt(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const r=e.unref(t),n=Object.keys(r),a={},o={},s={};let c=null;return n.forEach(i=>{const l=r[i];switch(!0){case B(l.$validator):a[i]=l;break;case B(l):a[i]={$validator:l};break;case i==="$validationGroups":c=l;break;case i.startsWith("$"):s[i]=l;break;default:o[i]=l}}),{rules:a,nestedValidators:o,config:s,validationGroups:c}}const at="__root";function ot(t,r,n,a,o,s,c,i,l){const d=Object.keys(t),M=a.get(o,t),f=e.ref(!1),m=e.ref(!1),g=e.ref(0);if(M){if(!M.$partial)return M;M.$unwatch(),f.value=M.$dirty.value}const u={$dirty:f,$path:o,$touch:()=>{f.value||(f.value=!0)},$reset:()=>{f.value&&(f.value=!1)},$commit:()=>{}};return d.length?(d.forEach(L=>{u[L]=rt(t[L],r,u.$dirty,s,c,L,n,o,l,m,g)}),u.$externalResults=e.computed(()=>i.value?[].concat(i.value).map((L,p)=>({$propertyPath:o,$property:n,$validator:"$externalResults",$uid:`${o}-externalResult-${p}`,$message:L,$params:{},$response:null,$pending:!1})):[]),u.$invalid=e.computed(()=>{const L=d.some(p=>e.unref(u[p].$invalid));return m.value=L,!!u.$externalResults.value.length||L}),u.$pending=e.computed(()=>d.some(L=>e.unref(u[L].$pending))),u.$error=e.computed(()=>u.$dirty.value?u.$pending.value||u.$invalid.value:!1),u.$silentErrors=e.computed(()=>d.filter(L=>e.unref(u[L].$invalid)).map(L=>{const p=u[L];return e.reactive({$propertyPath:o,$property:n,$validator:L,$uid:`${o}-${L}`,$message:p.$message,$params:p.$params,$response:p.$response,$pending:p.$pending})}).concat(u.$externalResults.value)),u.$errors=e.computed(()=>u.$dirty.value?u.$silentErrors.value:[]),u.$unwatch=()=>d.forEach(L=>{u[L].$unwatch()}),u.$commit=()=>{m.value=!0,g.value=Date.now()},a.set(o,t,u),u):(M&&a.set(o,t,u),u)}function st(t,r,n,a,o,s,c){const i=Object.keys(t);return i.length?i.reduce((l,d)=>(l[d]=H({validations:t[d],state:r,key:d,parentKey:n,resultsCache:a,globalConfig:o,instance:s,externalResults:c}),l),{}):{}}function ut(t,r,n){const a=e.computed(()=>[r,n].filter(u=>u).reduce((u,L)=>u.concat(Object.values(e.unref(L))),[])),o=e.computed({get(){return t.$dirty.value||(a.value.length?a.value.every(u=>u.$dirty):!1)},set(u){t.$dirty.value=u}}),s=e.computed(()=>{const u=e.unref(t.$silentErrors)||[],L=a.value.filter(p=>(e.unref(p).$silentErrors||[]).length).reduce((p,j)=>p.concat(...j.$silentErrors),[]);return u.concat(L)}),c=e.computed(()=>{const u=e.unref(t.$errors)||[],L=a.value.filter(p=>(e.unref(p).$errors||[]).length).reduce((p,j)=>p.concat(...j.$errors),[]);return u.concat(L)}),i=e.computed(()=>a.value.some(u=>u.$invalid)||e.unref(t.$invalid)||!1),l=e.computed(()=>a.value.some(u=>e.unref(u.$pending))||e.unref(t.$pending)||!1),d=e.computed(()=>a.value.some(u=>u.$dirty)||a.value.some(u=>u.$anyDirty)||o.value),M=e.computed(()=>o.value?l.value||i.value:!1),f=()=>{t.$touch(),a.value.forEach(u=>{u.$touch()})},m=()=>{t.$commit(),a.value.forEach(u=>{u.$commit()})},g=()=>{t.$reset(),a.value.forEach(u=>{u.$reset()})};return a.value.length&&a.value.every(u=>u.$dirty)&&f(),{$dirty:o,$errors:c,$invalid:i,$anyDirty:d,$error:M,$pending:l,$touch:f,$reset:g,$silentErrors:s,$commit:m}}function H(t){let{validations:r,state:n,key:a,parentKey:o,childResults:s,resultsCache:c,globalConfig:i={},instance:l,externalResults:d}=t;const M=o?`${o}.${a}`:a,{rules:f,nestedValidators:m,config:g,validationGroups:u}=nt(r),L=T(T({},i),g),p=a?e.computed(()=>{const y=e.unref(n);return y?e.unref(y[a]):void 0}):n,j=T({},e.unref(d)||{}),h=e.computed(()=>{const y=e.unref(d);return a?y?e.unref(y[a]):void 0:y}),$=ot(f,p,a,c,M,L,l,h,n),N=st(m,p,M,c,L,l,h),S={};u&&Object.entries(u).forEach(y=>{let[I,C]=y;S[I]={$invalid:G(C,N,"$invalid"),$error:G(C,N,"$error"),$pending:G(C,N,"$pending"),$errors:ne(C,N,"$errors"),$silentErrors:ne(C,N,"$silentErrors")}});const{$dirty:D,$errors:Y,$invalid:U,$anyDirty:$e,$error:De,$pending:F,$touch:W,$reset:Ce,$silentErrors:Te,$commit:ee}=ut($,N,s),xe=a?e.computed({get:()=>e.unref(p),set:y=>{D.value=!0;const I=e.unref(n),C=e.unref(d);C&&(C[a]=j[a]),e.isRef(I[a])?I[a].value=y:I[a]=y}}):null;a&&L.$autoDirty&&e.watch(p,()=>{D.value||W();const y=e.unref(d);y&&(y[a]=j[a])},{flush:"sync"});async function Ee(){return W(),L.$rewardEarly&&(ee(),await e.nextTick()),await e.nextTick(),new Promise(y=>{if(!F.value)return y(!U.value);const I=e.watch(F,()=>{y(!U.value),I()})})}function Se(y){return(s.value||{})[y]}function Ie(){e.isRef(d)?d.value=j:Object.keys(j).length===0?Object.keys(d).forEach(y=>{delete d[y]}):Object.assign(d,j)}return e.reactive(T(T(T({},$),{},{$model:xe,$dirty:D,$error:De,$errors:Y,$invalid:U,$anyDirty:$e,$pending:F,$touch:W,$reset:Ce,$path:M||at,$silentErrors:Te,$validate:Ee,$commit:ee},s&&{$getResultsForChild:Se,$clearExternalResults:Ie,$validationGroups:S}),N))}class it{constructor(){this.storage=new Map}set(r,n,a){this.storage.set(r,{rules:n,result:a})}checkRulesValidity(r,n,a){const o=Object.keys(a),s=Object.keys(n);return s.length!==o.length||!s.every(i=>o.includes(i))?!1:s.every(i=>n[i].$params?Object.keys(n[i].$params).every(l=>e.unref(a[i].$params[l])===e.unref(n[i].$params[l])):!0)}get(r,n){const a=this.storage.get(r);if(!a)return;const{rules:o,result:s}=a,c=this.checkRulesValidity(r,n,o),i=s.$unwatch?s.$unwatch:()=>({});return c?s:{$dirty:s.$dirty,$partial:!0,$unwatch:i}}}const V={COLLECT_ALL:!0,COLLECT_NONE:!1},ae=Symbol("vuelidate#injectChildResults"),oe=Symbol("vuelidate#removeChildResults");function ct(t){let{$scope:r,instance:n}=t;const a={},o=e.ref([]),s=e.computed(()=>o.value.reduce((M,f)=>(M[f]=e.unref(a[f]),M),{}));function c(M,f){let{$registerAs:m,$scope:g,$stopPropagation:u}=f;u||r===V.COLLECT_NONE||g===V.COLLECT_NONE||r!==V.COLLECT_ALL&&r!==g||(a[m]=M,o.value.push(m))}n.__vuelidateInjectInstances=[].concat(n.__vuelidateInjectInstances||[],c);function i(M){o.value=o.value.filter(f=>f!==M),delete a[M]}n.__vuelidateRemoveInstances=[].concat(n.__vuelidateRemoveInstances||[],i);const l=e.inject(ae,[]);e.provide(ae,n.__vuelidateInjectInstances);const d=e.inject(oe,[]);return e.provide(oe,n.__vuelidateRemoveInstances),{childResults:s,sendValidationResultsToParent:l,removeValidationResultsFromParent:d}}function fe(t){return new Proxy(t,{get(r,n){return typeof r[n]=="object"?fe(r[n]):e.computed(()=>r[n])}})}let se=0;function lt(t,r){var n;let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};arguments.length===1&&(a=t,t=void 0,r=void 0);let{$registerAs:o,$scope:s=V.COLLECT_ALL,$stopPropagation:c,$externalResults:i,currentVueInstance:l}=a;const d=l||((n=e.getCurrentInstance())===null||n===void 0?void 0:n.proxy),M=d?d.$options:{};o||(se+=1,o=`_vuelidate_${se}`);const f=e.ref({}),m=new it,{childResults:g,sendValidationResultsToParent:u,removeValidationResultsFromParent:L}=d?ct({$scope:s,instance:d}):{childResults:e.ref({})};if(!t&&M.validations){const p=M.validations;r=e.ref({}),e.onBeforeMount(()=>{r.value=d,e.watch(()=>B(p)?p.call(r.value,new fe(r.value)):p,j=>{f.value=H({validations:j,state:r,childResults:g,resultsCache:m,globalConfig:a,instance:d,externalResults:i||d.vuelidateExternalResults})},{immediate:!0})}),a=M.validationsConfig||a}else{const p=e.isRef(t)||qe(t)?t:e.reactive(t||{});e.watch(p,j=>{f.value=H({validations:j,state:r,childResults:g,resultsCache:m,globalConfig:a,instance:d??{},externalResults:i})},{immediate:!0})}return d&&(u.forEach(p=>p(f,{$registerAs:o,$scope:s,$stopPropagation:c})),e.onBeforeUnmount(()=>L.forEach(p=>p(o)))),e.computed(()=>T(T({},e.unref(f.value)),g.value))}var v=(t=>(t.CHECKBOX="checkbox",t.TEXT="text",t.PASSWORD="password",t))(v||{});const dt=["id","type","name","placeholder","value"],Lt=e.defineComponent({__name:"InputText",props:{type:{},error:{},id:{},label:{},name:{},placeholder:{},value:{}},emits:["change","input"],setup(t,{emit:r}){const n=r,a=s=>{n("change",s)},o=s=>{n("input",s)};return(s,c)=>(e.openBlock(),e.createElementBlock("input",e.mergeProps({id:s.id,type:s.type,name:s.name,placeholder:s.placeholder,value:s.value},s.$attrs,{onChange:a,onInput:o}),null,16,dt))}}),Mt=["id","name","checked","value"],pt=e.defineComponent({__name:"InputCheckbox",props:{defaultChecked:{type:Boolean},type:{},error:{},id:{},label:{},name:{},placeholder:{},value:{}},emits:["change"],setup(t,{emit:r}){const n=r,a=o=>{n("change",o)};return(o,s)=>(e.openBlock(),e.createElementBlock("input",e.mergeProps({id:o.id,name:o.name,checked:o.value==="true",value:o.value,class:"pdap-input-checkbox",type:"checkbox"},o.$attrs,{onChange:a}),null,16,Mt))}}),gt=["id"],mt=["for"],je=e.defineComponent({__name:"PdapInput",props:{type:{},error:{},id:{},label:{},name:{},placeholder:{},value:{},defaultChecked:{type:Boolean}},setup(t){const r=t,n=e.computed(()=>`pdap-${r.name}-input-error`);return(a,o)=>{var s;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"pdap-input":!0,[`pdap-input-${a.type}`]:!0,[`pdap-input-${a.type}-checked`]:a.type===e.unref(v).CHECKBOX&&a.value==="true","pdap-input-error":Number((s=a.error)==null?void 0:s.length)>=1})},[a.type===e.unref(v).CHECKBOX?(e.openBlock(),e.createBlock(pt,e.mergeProps({key:0,class:"pdap-input-checkbox"},{...a.$attrs,...r}),null,16)):(e.openBlock(),e.createBlock(Lt,e.normalizeProps(e.mergeProps({key:1},{...a.$attrs,...a.$props})),null,16)),a.error?(e.openBlock(),e.createElementBlock("div",{key:2,id:n.value,class:"pdap-input-error-message"},e.toDisplayString(a.error),9,gt)):e.createCommentVNode("",!0),e.createElementVNode("label",{class:"pdap-input-label",for:a.id},e.toDisplayString(a.label),9,mt)],2)}}});function ue(t,r){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);r&&(a=a.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),n.push.apply(n,a)}return n}function b(t){for(var r=1;r<arguments.length;r++){var n=arguments[r]!=null?arguments[r]:{};r%2?ue(Object(n),!0).forEach(function(a){ft(t,a,n[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ue(Object(n)).forEach(function(a){Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(n,a))})}return t}function ft(t,r,n){return r in t?Object.defineProperty(t,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[r]=n,t}function A(t){return typeof t=="function"}function Q(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function R(t){return A(t.$validator)?b({},t):{$validator:t}}function jt(t){return Q(t)&&A(t.then)}function x(t){return typeof t=="object"?t.$valid:t}function z(t){return t.$validator||t}function J(t,r){if(!Q(t))throw new Error(`[@vuelidate/validators]: First parameter to "withParams" should be an object, provided ${typeof t}`);if(!Q(r)&&!A(r))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const n=R(r);return n.$params=b(b({},n.$params||{}),t),n}function P(t,r){if(!A(t)&&typeof e.unref(t)!="string")throw new Error(`[@vuelidate/validators]: First parameter to "withMessage" should be string or a function returning a string, provided ${typeof t}`);if(!Q(r)&&!A(r))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const n=R(r);return n.$message=t,n}function yt(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const n=R(t);return b(b({},n),{},{$async:!0,$watchTargets:r})}function wt(t){return{$validator(r){for(var n=arguments.length,a=new Array(n>1?n-1:0),o=1;o<n;o++)a[o-1]=arguments[o];return e.unref(r).reduce((s,c,i)=>{const l=Object.entries(c).reduce((d,M)=>{let[f,m]=M;const g=t[f]||{},u=Object.entries(g).reduce((L,p)=>{let[j,h]=p;const N=z(h).call(this,m,c,i,...a),S=x(N);if(L.$data[j]=N,L.$data.$invalid=!S||!!L.$data.$invalid,L.$data.$error=L.$data.$invalid,!S){let D=h.$message||"";const Y=h.$params||{};typeof D=="function"&&(D=D({$pending:!1,$invalid:!S,$params:Y,$model:m,$response:N})),L.$errors.push({$property:f,$message:D,$params:Y,$response:N,$model:m,$pending:!1,$validator:j})}return{$valid:L.$valid&&S,$data:L.$data,$errors:L.$errors}},{$valid:!0,$data:{},$errors:[]});return d.$data[f]=u.$data,d.$errors[f]=u.$errors,{$valid:d.$valid&&u.$valid,$data:d.$data,$errors:d.$errors}},{$valid:!0,$data:{},$errors:{}});return{$valid:s.$valid&&l.$valid,$data:s.$data.concat(l.$data),$errors:s.$errors.concat(l.$errors)}},{$valid:!0,$data:[],$errors:[]})},$message:r=>{let{$response:n}=r;return n?n.$errors.map(a=>Object.values(a).map(o=>o.map(s=>s.$message)).reduce((o,s)=>o.concat(s),[])):[]}}}const w=t=>{if(t=e.unref(t),Array.isArray(t))return!!t.length;if(t==null)return!1;if(t===!1)return!0;if(t instanceof Date)return!isNaN(t.getTime());if(typeof t=="object"){for(let r in t)return!0;return!1}return!!String(t).length},X=t=>(t=e.unref(t),Array.isArray(t)?t.length:typeof t=="object"?Object.keys(t).length:String(t).length);function E(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return a=>(a=e.unref(a),!w(a)||r.every(o=>(o.lastIndex=0,o.test(a))))}var k=Object.freeze({__proto__:null,forEach:wt,len:X,normalizeValidatorObject:R,regex:E,req:w,unwrap:e.unref,unwrapNormalizedValidator:z,unwrapValidatorResponse:x,withAsync:yt,withMessage:P,withParams:J}),ht=E(/^[a-zA-Z]*$/),Nt={$validator:ht,$message:"The value is not alphabetical",$params:{type:"alpha"}},vt=E(/^[a-zA-Z0-9]*$/),$t={$validator:vt,$message:"The value must be alpha-numeric",$params:{type:"alphaNum"}},Dt=E(/^\d*(\.\d+)?$/),Ct={$validator:Dt,$message:"Value must be numeric",$params:{type:"numeric"}};function Tt(t,r){return n=>!w(n)||(!/\s/.test(n)||n instanceof Date)&&+e.unref(t)<=+n&&+e.unref(r)>=+n}function xt(t,r){return{$validator:Tt(t,r),$message:n=>{let{$params:a}=n;return`The value must be between ${a.min} and ${a.max}`},$params:{min:t,max:r,type:"between"}}}const Et=/^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i;var St=E(Et),K={$validator:St,$message:"Value is not a valid email address",$params:{type:"email"}};function It(t){if(!w(t))return!0;if(typeof t!="string")return!1;const r=t.split(".");return r.length===4&&r.every(zt)}const zt=t=>{if(t.length>3||t.length===0||t[0]==="0"&&t!=="0"||!t.match(/^\d+$/))return!1;const r=+t|0;return r>=0&&r<=255};var Ot={$validator:It,$message:"The value is not a valid IP address",$params:{type:"ipAddress"}};function bt(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:":";return r=>{if(t=e.unref(t),!w(r))return!0;if(typeof r!="string")return!1;const n=typeof t=="string"&&t!==""?r.split(t):r.length===12||r.length===16?r.match(/.{2}/g):null;return n!==null&&(n.length===6||n.length===8)&&n.every(kt)}}const kt=t=>t.toLowerCase().match(/^[0-9a-f]{2}$/);function _t(t){return{$validator:bt(t),$message:"The value is not a valid MAC Address",$params:{type:"macAddress"}}}function At(t){return r=>!w(r)||X(r)<=e.unref(t)}function Pt(t){return{$validator:At(t),$message:r=>{let{$params:n}=r;return`The maximum length allowed is ${n.max}`},$params:{max:t,type:"maxLength"}}}function Yt(t){return r=>!w(r)||X(r)>=e.unref(t)}function Vt(t){return{$validator:Yt(t),$message:r=>{let{$params:n}=r;return`This field should be at least ${n.min} characters long`},$params:{min:t,type:"minLength"}}}function Bt(t){return typeof t=="string"&&(t=t.trim()),w(t)}var q={$validator:Bt,$message:"Value is required",$params:{type:"required"}};const ie=(t,r)=>t?w(typeof r=="string"?r.trim():r):!0;function Qt(t){return function(r,n){if(typeof t!="function")return ie(e.unref(t),r);const a=t.call(this,r,n);return ie(a,r)}}function Rt(t){return{$validator:Qt(t),$message:"The value is required",$params:{type:"requiredIf",prop:t}}}const ce=(t,r)=>t?!0:w(typeof r=="string"?r.trim():r);function Ut(t){return function(r,n){if(typeof t!="function")return ce(e.unref(t),r);const a=t.call(this,r,n);return ce(a,r)}}function Ft(t){return{$validator:Ut(t),$message:"The value is required",$params:{type:"requiredUnless",prop:t}}}function Wt(t){return r=>e.unref(r)===e.unref(t)}function Gt(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"other";return{$validator:Wt(t),$message:n=>`The value must be equal to the ${r} value`,$params:{equalTo:t,otherName:r,type:"sameAs"}}}const Ht=/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i;var Zt=E(Ht),Jt={$validator:Zt,$message:"The value is not a valid URL address",$params:{type:"url"}};function Xt(t){return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return t.reduce((o,s)=>x(o)?o:z(s).apply(this,n),!1)}}function Kt(t){return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return t.reduce(async(o,s)=>{const c=await o;return x(c)?c:z(s).apply(this,n)},Promise.resolve(!1))}}function qt(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];const a=r.some(c=>c.$async),o=r.reduce((c,i)=>i.$watchTargets?c.concat(i.$watchTargets):c,[]);let s=()=>!1;return r.length&&(s=a?Kt(r):Xt(r)),{$async:a,$validator:s,$watchTargets:o}}function er(){return J({type:"or"},P("The value does not match any of the provided validators",qt(...arguments)))}function tr(t){return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return t.reduce((o,s)=>x(o)?z(s).apply(this,n):o,!0)}}function rr(t){return function(){for(var r=arguments.length,n=new Array(r),a=0;a<r;a++)n[a]=arguments[a];return t.reduce(async(o,s)=>{const c=await o;return x(c)?z(s).apply(this,n):c},Promise.resolve(!0))}}function nr(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];const a=r.some(c=>c.$async),o=r.reduce((c,i)=>i.$watchTargets?c.concat(i.$watchTargets):c,[]);let s=()=>!1;return r.length&&(s=a?rr(r):tr(r)),{$async:a,$validator:s,$watchTargets:o}}function ar(){return J({type:"and"},P("The value does not match all of the provided validators",nr(...arguments)))}function or(t){return function(r,n){if(!w(r))return!0;const a=z(t).call(this,r,n);return jt(a)?a.then(o=>!x(o)):!x(a)}}function sr(t){return{$validator:or(t),$message:"The value does not match the provided validator",$params:{type:"not"}}}function ur(t){return r=>!w(r)||(!/\s/.test(r)||r instanceof Date)&&+r>=+e.unref(t)}function ir(t){return{$validator:ur(t),$message:r=>{let{$params:n}=r;return`The minimum value allowed is ${n.min}`},$params:{min:t,type:"minValue"}}}function cr(t){return r=>!w(r)||(!/\s/.test(r)||r instanceof Date)&&+r<=+e.unref(t)}var lr=t=>({$validator:cr(t),$message:r=>{let{$params:n}=r;return`The maximum value allowed is ${n.max}`},$params:{max:t,type:"maxValue"}}),dr=E(/(^[0-9]*$)|(^-[0-9]+$)/),Lr={$validator:dr,$message:"Value is not an integer",$params:{type:"integer"}},Mr=E(/^[-]?\d*(\.\d+)?$/),pr={$validator:Mr,$message:"Value must be decimal",$params:{type:"decimal"}};function gr(t){let{t:r,messagePath:n=o=>{let{$validator:s}=o;return`validations.${s}`},messageParams:a=o=>o}=t;return function(s){let{withArguments:c=!1,messagePath:i=n,messageParams:l=a}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};function d(M){return r(i(M),l(b({model:M.$model,property:M.$property,pending:M.$pending,invalid:M.$invalid,response:M.$response,validator:M.$validator,propertyPath:M.$propertyPath},M.$params)))}return c&&typeof s=="function"?function(){return P(d,s(...arguments))}:P(d,s)}}const ye=Object.freeze(Object.defineProperty({__proto__:null,alpha:Nt,alphaNum:$t,and:ar,between:xt,createI18nMessage:gr,decimal:pr,email:K,helpers:k,integer:Lr,ipAddress:Ot,macAddress:_t,maxLength:Pt,maxValue:lr,minLength:Vt,minValue:ir,not:sr,numeric:Ct,or:er,required:q,requiredIf:Rt,requiredUnless:Ft,sameAs:Gt,url:Jt},Symbol.toStringTag,{value:"Module"})),we=k.regex(/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$ %^&*-]).{8,}$/);function le(t){return["maxLength","minLength"].includes(t)}function de(t){return t==="required"}function Le(t){return t==="email"}function Me(t){return t==="password"}function mr(t,r){return{[t]:ye[t](r)}}function fr(t,r,n){return{[t]:k.withMessage(n,ye[t](r))}}function jr(){return{required:q}}function yr(t){return{required:k.withMessage(t,q)}}function wr(){return{email:K}}function hr(t){return{email:k.withMessage(t,K)}}function Nr(){return{password:we}}function vr(t){return{password:k.withMessage(t,we)}}function $r(t,r){if(le(t)&&typeof r.message=="string"&&typeof r.value=="number")return fr(t,r.value,r.message);if(le(t)&&typeof r.message>"u"&&typeof r.value=="number")return mr(t,r.value);if(Le(t)&&typeof r.message=="string")return hr(r.message);if(Le(t)&&typeof r.message>"u")return wr();if(Me(t)&&typeof r.message=="string")return vr(r.message);if(Me(t)&&typeof r.message>"u")return Nr();if(de(t)&&typeof r.message=="string")return yr(r.message);if(de(t)&&typeof r.message>"u")return jr();throw new Error("No valid rule detected")}const Dr=["id","name"],Cr={key:0,class:"pdap-form-error-message"},Tr={name:"PdapForm"},he=e.defineComponent({...Tr,props:{error:{default:null},id:{},name:{},schema:{}},emits:["submit","change"],setup(t,{emit:r}){const n=t,a=r,o=e.computed(()=>n.schema.map(m=>{const g={...m};return delete g.validators,g})),s=e.ref(o.value.reduce((m,g)=>{switch(g.type){case v.CHECKBOX:return{...m,[g.name]:String(g.defaultChecked)};case v.TEXT:case v.PASSWORD:default:return{...m,[g.name]:g.value}}},{})),c=n.schema.reduce((m,g)=>{const u=Object.entries(g.validators??{}).reduce((L,[p,j])=>({...L,...$r(p,j)}),{});return{...m,[g.name]:{...u}}},{}),i=lt(c,s,{$autoDirty:!1,$lazy:!0}),l=e.ref(n.error);function d(m,g){const u=g.target,L=u.type===v.CHECKBOX&&typeof u.checked=="boolean"?u.checked.toString():u.value;s.value[m]=L,M()}e.watchEffect(()=>{n.error?l.value=n.error:l.value&&i.value.$errors.length===0?l.value=null:!l.value&&i.value.$errors.length>0&&(l.value="Please update this form to correct the errors")}),e.watchEffect(()=>{});function M(){a("change",{...s.value})}async function f(m){if(await i.value.$validate()){a("submit",{...s.value}),i.value.$reset(),m.target.reset(),s.value=Object.entries(s).reduce((L,[p])=>({...L,[p]:""}),{});return}}return(m,g)=>(e.openBlock(),e.createElementBlock("form",{id:m.id,name:m.name,class:"pdap-form",onChange:M,onSubmit:g[0]||(g[0]=e.withModifiers(u=>f(u),["prevent"]))},[typeof l.value=="string"?(e.openBlock(),e.createElementBlock("div",Cr,e.toDisplayString(l.value),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,u=>{var L,p,j,h;return e.openBlock(),e.createBlock(je,e.mergeProps(u,{key:u.name,error:(L=e.unref(i)[u.name])!=null&&L.$error?(h=(j=(p=e.unref(i)[u.name])==null?void 0:p.$errors)==null?void 0:j[0])==null?void 0:h.$message:"",value:s.value[u.name],onChange:$=>d(u.name,$)}),null,16,["error","value","onChange"])}),128)),e.renderSlot(m.$slots,"default")],40,Dr))}});const xr=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"},[e.createElementVNode("path",{d:"M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"})],-1),Er=[xr],Sr=["aria-expanded"],Ir=["href"],zr={name:"PdapHeader"},Ne=e.defineComponent({...zr,props:{topPosition:{}},setup(t){let r=e.inject("navLinks");typeof r>"u"&&(r=[],console.error(`Hey, PDAP developer
2
+ `,"Did you forget to inject some linkData for the Nav component?"));const n=e.reactive({isExpanded:!1,isMobile:!0}),a=e.reactive({"pdap-nav":!0});e.onBeforeMount(()=>{o(),window.addEventListener("resize",o)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",o)});async function o(){window.innerWidth<=1024?n.isMobile=!0:n.isMobile=!1,await e.nextTick()}async function s(){var i,l;const c=document.querySelector("body");!n.isExpanded&&n.isMobile?(n.isExpanded=!0,c!=null&&c.classList.contains("lock-scroll")||(i=document.querySelector("body"))==null||i.classList.add("lock-scroll")):n.isExpanded&&n.isMobile&&(n.isExpanded=!1,(l=document.querySelector("body"))==null||l.classList.remove("lock-scroll")),await e.nextTick()}return(c,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{"aria-controls":"nav",class:"pdap-nav-open-button",role:"button",onClick:s},Er),e.createElementVNode("nav",{id:"nav","aria-expanded":n.isMobile&&n.isExpanded||!n.isMobile,class:e.normalizeClass(a),style:e.normalizeStyle(n.isMobile?{top:`${c.topPosition}px`}:{})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),l=>(e.openBlock(),e.createElementBlock("li",{key:l.text,class:"pdap-nav-link-container"},[l.href?(e.openBlock(),e.createElementBlock("a",{key:0,class:"pdap-nav-link",href:l.href,target:"_blank",referrerpolicy:"no-referrer",onClick:s},e.toDisplayString(l.text),9,Ir)):e.createCommentVNode("",!0),l.path?(e.openBlock(),e.createBlock(e.unref(O.RouterLink),{key:1,"active-class":"pdap-nav-link-current","exact-active-class":"pdap-nav-link-current-exact",class:"pdap-nav-link",to:l.path,onClick:s},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.text),1)]),_:2},1032,["to"])):e.createCommentVNode("",!0)]))),128))],14,Sr)],64))}});const Or="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA1MDkuNCAxMTEuNyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTA5LjQgMTExLjc7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBhdGggZD0iTTAsMTAwLjhMMjYuOCwzLjJoOS4zTDkuNCwxMDAuOEgweiIvPgo8cGF0aCBkPSJNMTIzLjIsMjdoLTQuN3YxNi42aC05LjFWMS45aDEzLjhjOS4zLDAsMTUuMiw0LjUsMTUuMiwxMi4zUzEzMi43LDI3LDEyMy4yLDI3eiBNMTIzLjIsOS42aC00Ljd2OS43aDQuNwoJYzQuMSwwLDYuMS0xLjYsNi4xLTVTMTI3LjMsOS42LDEyMy4yLDkuNkwxMjMuMiw5LjZ6Ii8+CjxwYXRoIGQ9Ik0xNTEuNCw0NC4zYy03LjIsMC0xMy01LjgtMTMtMTNzNS44LTEzLDEzLTEzczEzLjMsNS40LDEzLjMsMTIuOUMxNjQuNiwzOC40LDE1OC43LDQ0LjMsMTUxLjQsNDQuM3ogTTE1MS40LDI1LjMKCWMtMywwLTQuNiwzLjEtNC42LDUuOXMxLjYsNiw0LjcsNnM0LjYtMy4yLDQuNi02UzE1NC42LDI1LjMsMTUxLjQsMjUuM0wxNTEuNCwyNS4zeiIvPgo8cGF0aCBkPSJNMTY5LDQzLjZWMS45aDguOXY0MS43QzE3Ny45LDQzLjYsMTY5LDQzLjYsMTY5LDQzLjZ6Ii8+CjxwYXRoIGQ9Ik0xODMuNSwxNVY2LjhoOC45VjE1SDE4My41eiBNMTgzLjUsNDMuNlYxOWg4Ljl2MjQuNkgxODMuNXoiLz4KPHBhdGggZD0iTTIxMC4yLDQ0LjNjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNmwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMy00LjktMi4zCgljLTMuMSwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC45LTIuNUwyMjEsMzlDMjE4LDQyLjcsMjE1LDQ0LjMsMjEwLjIsNDQuM3oiLz4KPHBhdGggZD0iTTIzNi45LDQ0LjNjLTcuMiwwLTEzLjgtMy44LTEzLjgtMTMuMmMwLTguMiw1LjUtMTIuOCwxMi40LTEyLjhjNy44LDAsMTMuMSw1LjUsMTMuMSwxNC41aC0xNy4yYzAuMywyLjksMiw1LjIsNS41LDUuMgoJYzMuOCwwLDYuMS0wLjksOC4yLTIuNmwzLjgsNC44QzI0NS41LDQzLDI0MS4zLDQ0LjQsMjM2LjksNDQuM3ogTTIzNS4zLDI0Yy0yLjUsMC0zLjUsMS44LTQsNC4xaDguMUMyMzkuMywyNS42LDIzNy43LDI0LDIzNS4zLDI0egoJIi8+CjxwYXRoIGQ9Ik0yODAuMiw0My42aC0xMi42VjEuOWgxMi42YzExLjksMCwyMS43LDcuMywyMS43LDIwLjhDMzAxLjksMzYuNCwyOTEuMyw0My42LDI4MC4yLDQzLjZ6IE0yODAuMiw5LjZoLTMuNXYyNi4zaDMuNQoJYzcuOCwwLDEyLjMtNi4yLDEyLjMtMTMuMkMyOTIuNSwxNS40LDI4Ny41LDkuNiwyODAuMiw5LjZMMjgwLjIsOS42eiIvPgo8cGF0aCBkPSJNMzIyLjEsNDMuNnYtMS45Yy0yLjcsMS45LTQuMiwyLjYtOC41LDIuNmMtNC43LDAtOC45LTMtOC45LTcuN2MwLTcuNyw5LjQtOS4xLDE3LjQtOS41di0wLjljMC0xLjctMS4xLTIuMy0zLjYtMi4zCgljLTMuMSwwLTYuMSwwLjctOC44LDIuMWwtMi43LTUuM2MzLjMtMS44LDcuNC0yLjUsMTEuOC0yLjVjOC4yLDAsMTIuMiwyLjYsMTIuMiw5Ljd2MTUuN0gzMjIuMXogTTMyMi4xLDMyLjFjLTMuOCwwLTgsMC44LTgsMy42CgljMCwxLjQsMS40LDIuMywyLjksMi4zYzEuOSwwLjEsMy43LTAuNSw1LjEtMS44VjMyLjF6Ii8+CjxwYXRoIGQ9Ik0zNDUuOSw0My42Yy01LDAtOC4yLTMuOC04LjItOXYtOWgtMy4xVjE5aDMuMVY4LjdoOC45VjE5aDQuMnY2LjZoLTQuMlYzM2MwLDEuOSwxLDMuMiwyLjcsMy4yaDIuMnY3LjRMMzQ1LjksNDMuNnoiLz4KPHBhdGggZD0iTTM3Mi4yLDQzLjZ2LTEuOWMtMi43LDEuOS00LjIsMi42LTguNSwyLjZjLTQuNywwLTguOS0zLTguOS03LjdjMC03LjcsOS40LTkuMSwxNy40LTkuNXYtMC45YzAtMS43LTEuMS0yLjMtMy43LTIuMwoJYy0zLjEsMC02LjEsMC43LTguOCwyLjFsLTIuOC01LjNjMy4zLTEuOCw3LjQtMi41LDExLjgtMi41YzguMiwwLDEyLjIsMi42LDEyLjIsOS43djE1LjdIMzcyLjJ6IE0zNzIuMiwzMi4xYy0zLjgsMC04LDAuOC04LDMuNgoJYzAsMS40LDEuNCwyLjMsMi45LDIuM2MxLjksMC4xLDMuNy0wLjUsNS4xLTEuOFYzMi4xeiIvPgo8cGF0aCBkPSJNNTYuNCwxMDAuOGwtMy4yLTEwLjVINDAuNWwtMy4zLDEwLjVoLTkuN2wxNC45LTQxLjdoOC44bDE1LjEsNDEuN0g1Ni40eiBNNDcuOCw3Mi40Yy0wLjQtMS4zLTAuOS0zLTAuOS0zLjMKCWMwLDAuMi0wLjUsMS45LTAuOCwzLjNMNDMsODIuNmg4TDQ3LjgsNzIuNHoiLz4KPHBhdGggZD0iTTgxLjYsMTAxLjVjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNmwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMy00LjktMi4zCgljLTMuMiwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC44LTIuNWw1LjksNC4yQzg5LjQsOTkuOSw4Ni4zLDEwMS41LDgxLjYsMTAxLjV6Ii8+CjxwYXRoIGQ9Ik0xMDgsMTAxLjVjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNWwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMi00LjktMi4yCgljLTMuMSwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC44LTIuNWw2LDQuMkMxMTUuOCw5OS45LDExMi44LDEwMS41LDEwOCwxMDEuNXoiLz4KPHBhdGggZD0iTTEzNC42LDEwMS41Yy03LjIsMC0xMy44LTMuOC0xMy44LTEzLjJjMC04LjIsNS41LTEyLjgsMTIuNC0xMi44YzcuOCwwLDEzLjEsNS41LDEzLjEsMTQuNWgtMTcuMmMwLjMsMi44LDIsNS4yLDUuNSw1LjIKCWMzLjgsMCw2LjEtMC44LDguMi0yLjZsMy44LDQuOEMxNDMuMywxMDAuMiwxMzksMTAxLjYsMTM0LjYsMTAxLjV6IE0xMzMuMSw4MS4yYy0yLjUsMC0zLjUsMS44LTMuOSw0LjFoOC4xCglDMTM3LDgyLjgsMTM1LjQsODEuMiwxMzMuMSw4MS4yeiIvPgo8cGF0aCBkPSJNMTYwLDEwMS41Yy0zLjgsMC04LTAuOS0xMC42LTIuOGwyLjktNS42YzEuOSwxLjMsNC4yLDIsNi41LDIuMWMxLjksMCwyLjktMC42LDIuOS0xLjRjMC0xLjMtMS41LTEuOS0zLjUtMi42CgljLTMuMy0xLjMtNy44LTIuOC03LjgtOC4yYzAtNC45LDQuMi03LjUsMTAuMy03LjVjMy4yLTAuMSw2LjMsMC43LDksMi4zbC0yLjUsNS41Yy0xLjktMS4xLTQuMS0xLjYtNi4zLTEuNmMtMS40LDAtMi43LDAuMi0yLjcsMS4zCgljMCwwLjksMiwxLjUsNC40LDIuNGMzLjYsMS4zLDgsMy40LDgsOC4zQzE3MC40LDk5LjMsMTY1LjQsMTAxLjUsMTYwLDEwMS41eiIvPgo8cGF0aCBkPSJNMTgzLjEsMTAxLjVjLTMuOCwwLTgtMC45LTEwLjYtMi44bDIuOS01LjZjMS45LDEuMyw0LjIsMiw2LjUsMi4xYzEuOSwwLDIuOS0wLjYsMi45LTEuNGMwLTEuMy0xLjUtMS45LTMuNS0yLjYKCWMtMy4zLTEuMy03LjgtMi44LTcuOC04LjJjMC00LjksNC4yLTcuNSwxMC4zLTcuNWMzLjItMC4xLDYuMywwLjcsOSwyLjNsLTIuNSw1LjVjLTEuOS0xLjEtNC4xLTEuNi02LjMtMS42Yy0xLjQsMC0yLjcsMC4yLTIuNywxLjMKCWMwLDAuOSwyLDEuNSw0LjQsMi40YzMuNiwxLjMsOCwzLjQsOCw4LjNDMTkzLjUsOTkuMywxODguNSwxMDEuNSwxODMuMSwxMDEuNXoiLz4KPHBhdGggZD0iTTE5Ny44LDcyLjJWNjRoOC45djguMUwxOTcuOCw3Mi4yeiBNMTk3LjgsMTAwLjhWNzYuMmg4Ljl2MjQuNkMyMDYuNywxMDAuOCwxOTcuOCwxMDAuOCwxOTcuOCwxMDAuOHoiLz4KPHBhdGggZD0iTTIyOC43LDEwMS41Yy0zLDAtNi4xLTEuMy03LjQtMy4ydjIuNWgtOC45VjU5LjFoOC45djE5LjZjMS40LTEuOSw0LjUtMy4yLDcuNC0zLjJjNi45LDAsMTEuNSw2LjMsMTEuNSwxMwoJQzI0MC4yLDk1LjQsMjM1LjYsMTAxLjUsMjI4LjcsMTAxLjV6IE0yMjYuMyw4Mi43Yy0zLDAtNS4xLDIuMy01LjEsNS43czIsNS44LDUuMSw1LjhjMi45LDAsNS0yLjQsNS01LjhTMjI5LjIsODIuNywyMjYuMyw4Mi43eiIvPgo8cGF0aCBkPSJNMjQ0LjUsNzIuMlY2NGg4Ljl2OC4xTDI0NC41LDcyLjJ6IE0yNDQuNSwxMDAuOFY3Ni4yaDguOXYyNC42QzI1My40LDEwMC44LDI0NC41LDEwMC44LDI0NC41LDEwMC44eiIvPgo8cGF0aCBkPSJNMjU5LDEwMC44VjU5LjFoOC45djQxLjdIMjU5eiIvPgo8cGF0aCBkPSJNMjczLjYsNzIuMlY2NGg4Ljl2OC4xTDI3My42LDcyLjJ6IE0yNzMuNiwxMDAuOFY3Ni4yaDguOXYyNC42QzI4Mi41LDEwMC44LDI3My42LDEwMC44LDI3My42LDEwMC44eiIvPgo8cGF0aCBkPSJNMjk3LjYsMTAwLjhjLTUsMC04LjItMy44LTguMi05di05aC0zLjF2LTYuNmgzLjFWNjUuOWg4Ljl2MTAuMmg0LjJ2Ni42aC00LjJ2Ny40YzAsMS45LDEsMy4yLDIuNywzLjJoMi4ydjcuNGgtNS42VjEwMC44egoJIi8+CjxwYXRoIGQ9Ik0zMjEuNiwxMDYuM2MtMS4xLDMuMi0zLjIsNS40LTcsNS40aC01LjF2LTcuMmgxLjljMS43LDAsMy40LTEsMy40LTIuNWMwLTEuMi0wLjItMi4zLTAuNy0zLjRsLTguNS0yMi40aDkuM2wzLjQsMTEuMgoJYzAuNSwxLjQsMC44LDMuMSwwLjgsMy4xczAuNC0xLjYsMC44LTMuMWwyLjktMTEuMmg5LjJMMzIxLjYsMTA2LjN6Ii8+CjxwYXRoIGQ9Ik0zNjIsODQuMmgtNC43djE2LjZoLTkuMVY1OS4xSDM2MmM5LjMsMCwxNS4zLDQuNSwxNS4zLDEyLjNTMzcxLjUsODQuMiwzNjIsODQuMnogTTM2Miw2Ni44aC00Ljd2OS43aDQuNwoJYzQuMSwwLDYuMS0xLjYsNi4xLTVTMzY2LjEsNjYuOCwzNjIsNjYuOHoiLz4KPHBhdGggZD0iTTM5NS44LDg1LjNjLTEuMS0xLTIuNS0xLjUtMy45LTEuNWMtMi45LDAtNC4xLDIuMy00LjEsNC45djEyLjFoLTguOVY3Ni4yaDguOXYzLjNjMS4zLTIuNCwzLjctMy44LDYuNC0zLjkKCWMyLjItMC4xLDQuNCwwLjgsNS45LDIuM0wzOTUuOCw4NS4zeiIvPgo8cGF0aCBkPSJNNDEyLjgsMTAxLjVjLTcuMiwwLTEzLTUuOC0xMy0xM3M1LjgtMTMsMTMtMTNzMTMuMyw1LjQsMTMuMywxMi45QzQyNi4xLDk1LjYsNDIwLjEsMTAxLjUsNDEyLjgsMTAxLjV6IE00MTIuOCw4Mi41CgljLTMsMC00LjYsMy4xLTQuNiw1LjlzMS42LDYsNC43LDZzNC42LTMuMiw0LjYtNi4xUzQxNiw4Mi41LDQxMi44LDgyLjVMNDEyLjgsODIuNXoiLz4KPHBhdGggZD0iTTQzMC42LDExMWgtNS40di03LjRoMi4yYzEuMiwwLDEuNS0xLjEsMS41LTIuOFY3Ni4yaDguOXYyNy4yQzQzNy44LDEwOCw0MzUuNCwxMTEsNDMwLjYsMTExeiBNNDI5LDcyLjJWNjRoOC45djguMQoJTDQyOSw3Mi4yeiIvPgo8cGF0aCBkPSJNNDU0LjUsMTAxLjVjLTcuMiwwLTEzLjgtMy44LTEzLjgtMTMuMmMwLTguMiw1LjUtMTIuOCwxMi40LTEyLjhjNy44LDAsMTMuMSw1LjUsMTMuMSwxNC41SDQ0OWMwLjMsMi44LDIuMSw1LjIsNS41LDUuMgoJYzMuOCwwLDYuMS0wLjgsOC4yLTIuNmwzLjgsNC44QzQ2My4yLDEwMC4yLDQ1OC45LDEwMS42LDQ1NC41LDEwMS41eiBNNDUzLDgxLjJjLTIuNSwwLTMuNSwxLjgtMy45LDQuMWg4LjEKCUM0NTYuOSw4Mi44LDQ1NS4zLDgxLjIsNDUzLDgxLjJ6Ii8+CjxwYXRoIGQ9Ik00ODEuNiwxMDEuNWMtNy44LDAtMTMuNS01LjYtMTMuNS0xMi45YzAtNy4xLDUuNy0xMy4xLDEzLjUtMTMuMWMzLjktMC4yLDcuNiwxLjUsMTAsNC42bC01LjEsNC43Yy0xLjItMS40LTMtMi4zLTQuOS0yLjMKCWMtMy4xLDAtNS4zLDIuNi01LjMsNi4xYzAsMywyLjEsNS45LDUuMyw1LjljMi4zLDAsMy41LTAuOSw0LjktMi41bDUuOSw0LjJDNDg5LjQsOTkuOSw0ODYuNCwxMDEuNSw0ODEuNiwxMDEuNXoiLz4KPHBhdGggZD0iTTUwMy45LDEwMC44Yy01LDAtOC4yLTMuOC04LjItOXYtOWgtMy4xdi02LjZoMy4xVjY1LjloOC45djEwLjJoNC4ydjYuNmgtNC4ydjcuNGMwLDEuOSwxLDMuMiwyLjcsMy4yaDIuMnY3LjRoLTUuNlYxMDAuOHoKCSIvPgo8cG9seWdvbiBwb2ludHM9IjkxLjcsMjAuMiA3Ni4yLDIwLjIgODguNCw4IDgzLjEsMi43IDcxLjUsMTQuMyA3MS41LDAgNjQsMCA2NCwxNC4zIDUyLjMsMi43IDQ3LDggNTkuMiwyMC4yIDQzLjcsMjAuMiA0My43LDI3LjggCgk1OC4xLDI3LjggNDcsMzguOCA1Mi4zLDQ0LjEgNjQsMzIuNSA2NCw0OCA3MS41LDQ4IDcxLjUsMzIuNSA4My4xLDQ0LjEgODguNCwzOC44IDc3LjQsMjcuOCA5MS43LDI3LjggIi8+Cjwvc3ZnPgo=",br=["href"],kr=["src"],_r=["src"],Ar={name:"PdapHeader"},Pr=e.defineComponent({...Ar,props:{logoImageSrc:{default:Or},logoImageAnchorPath:{default:"/"}},setup(t){const r=t,n=e.ref(),a=e.ref(null),o=r.logoImageAnchorPath.startsWith("/");e.onMounted(()=>{s(),window.addEventListener("resize",s)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",s)});function s(){a.value&&(n.value=a.value.offsetHeight)}return(c,i)=>(e.openBlock(),e.createElementBlock("header",{ref_key:"el",ref:a,class:"pdap-header"},[e.unref(o)?(e.openBlock(),e.createBlock(e.unref(O.RouterLink),{key:1,to:c.logoImageAnchorPath,class:"logo"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:c.logoImageSrc,loading:"lazy",width:"250",alt:"Police Data Accessibility Project Logo"},null,8,_r)]),_:1},8,["to"])):(e.openBlock(),e.createElementBlock("a",{key:0,href:c.logoImageAnchorPath,class:"logo"},[e.createElementVNode("img",{src:c.logoImageSrc,loading:"lazy",width:"250",alt:"Police Data Accessibility Project Logo"},null,8,kr)],8,br)),e.createVNode(Ne,{"top-position":n.value},null,8,["top-position"])],512))}});const Yr=e.createElementVNode("div",{class:"pdap-flex-container"},[e.createElementVNode("h2",{class:"mt-0"},"Search our database"),e.createElementVNode("p",{class:"pb-4 md:pb-8"},[e.createTextVNode(" If you are looking for something specific, we may already be tracking it. "),e.createElementVNode("a",{href:"https://pdap.io/data"},"Learn more about the data here.")])],-1),Vr={class:"pdap-quick-search-form h-full max-h-[75-vh] justify-start p-0"},Br={class:"max-w-[unset] text-med"},Qr=["href"],Rr=["href"],Ur={name:"QuickSearchForm"},Fr=e.defineComponent({...Ur,props:{baseUrlForRedirect:{default:"https://data-sources.pdap.io"}},setup(t){const r=O.useRouter(),n=t,a=[{id:"search-term",name:"searchTerm",label:"What are you looking for?",type:v.TEXT,placeholder:"Enter a keyword, or 'all'",value:""},{id:"location",name:"location",label:"From where?",type:v.TEXT,placeholder:"Enter a place, or 'all'",value:""}],o=e.ref(void 0),s=r.getRoutes().some(l=>l.path.includes("/search/"));function c(l){o.value&&Object.values(l).some(Boolean)&&(o.value=void 0)}function i(l){if(Object.values(l).every(f=>!f)){o.value="Either a search term or a location is required.";return}let{location:d,searchTerm:M}=l;d=d&&d.length>0?d:"all",M=M&&M.length>0?M:"all",s?r.push(`/search/${M}/${d}`):window.location.assign(`${n.baseUrlForRedirect}/search/${M}/${d}`)}return(l,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[Yr,e.createElementVNode("div",Vr,[e.createVNode(he,{id:"quick-search-form",class:"flex flex-wrap gap-x-4",error:o.value,schema:a,name:"quickSearchForm",onChange:c,onSubmit:i},{default:e.withCtx(()=>[e.createVNode(Z,{type:"submit",class:"flex-grow-0 flex-shrink-0 basis-full max-w-[unset] mt-4"},{default:e.withCtx(()=>[e.createTextVNode("Search Data Sources")]),_:1})]),_:1},8,["error"]),e.createElementVNode("p",Br,[e.createTextVNode(" For example, you could search for "),e.unref(s)?(e.openBlock(),e.createBlock(e.unref(O.RouterLink),{key:0,to:"/search/stops/pittsburgh"},{default:e.withCtx(()=>[e.createTextVNode(" stops in Pittsburgh ")]),_:1})):(e.openBlock(),e.createElementBlock("a",{key:1,target:"_blank",rel:"noreferrer",href:`${n.baseUrlForRedirect}/search/stops/pittsburgh`}," stops in Pittsburgh ",8,Qr)),e.createTextVNode(" or "),e.unref(s)?(e.openBlock(),e.createBlock(e.unref(O.RouterLink),{key:2,to:"/search/complaints/all"},{default:e.withCtx(()=>[e.createTextVNode(" complaints everywhere ")]),_:1})):(e.openBlock(),e.createElementBlock("a",{key:3,target:"_blank",rel:"noreferrer",href:`${n.baseUrlForRedirect}/search/complaints/all`}," complaints everywhere ",8,Rr)),e.createTextVNode(" . ")])])],64))}});const Wr=["alt","src"],Gr={name:"TileIcon"},Hr=e.defineComponent({...Gr,props:{imgAltText:{},imgSrc:{}},setup(t){return(r,n)=>(e.openBlock(),e.createElementBlock("img",{class:"pdap-tile-icon",alt:r.imgAltText,src:r.imgSrc},null,8,Wr))}});var _=(t=>(t.PRESS="press",t.HOVER="hover",t))(_||{});const ve={beforeMount(t,r){const n=t;n.clickOutsideEvent=function(o){t===o.target||n.contains(o.target)||r.value(o)},document.addEventListener("click",n.clickOutsideEvent),document.addEventListener("keyup",n.clickOutsideEvent)},unmounted(t){t.clickOutsideEvent&&(document.removeEventListener("click",t.clickOutsideEvent),document.removeEventListener("keyup",t.clickOutsideEvent))}},Zr=["onKeydown"],Jr=["aria-hidden"],Xr={name:"PdapButton"},Kr=e.defineComponent({...Xr,props:{defaultOpen:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},triggerOn:{default:_.PRESS}},emits:["update:open","press"],setup(t,{emit:r}){const n=t,a=r,o="pdap-dropdown",s=e.ref(null),c=e.ref(null),i=e.ref(n.defaultOpen),l=e.computed(()=>n.triggerOn===_.HOVER);function d(L){a("press",L),n.triggerOn===_.PRESS&&M()}const M=()=>{n.disabled||(i.value=!i.value,a("update:open",i.value))};function f(){i.value=!0,a("update:open",!0)}function m(){i.value=!1,a("update:open",!1)}function g(){var h,$;if(!s.value)return;s.value.style.display="flex",s.value.style.setProperty("max-height","max-content");const L=s.value.scrollHeight;s.value.style.display="none",s.value.style.removeProperty("max-height");const p=document==null?void 0:document.querySelector(":root"),j=(h=p==null?void 0:p.style)==null?void 0:h.getPropertyValue("--dropdown-content-max-height");Number(($=j==null?void 0:j.match(/\d+/))==null?void 0:$.join(""))>=L||s.value&&p&&p.style.setProperty("--dropdown-content-max-height",`${L+16}px`)}const u={mouseenter:l.value?f:void 0,focus:l.value?f:void 0,focusin:l.value?f:void 0,focusout:l.value?m:void 0,mouseleave:l.value?m:void 0,blur:l.value?m:void 0};return e.onMounted(()=>{g()}),(L,p)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({ref_key:"dropdownRef",ref:c,class:"pdap-dropdown",onKeydown:e.withKeys(m,["escape"])},e.toHandlers(u,!0)),[e.createVNode(e.unref(Z),{"aria-controls":o,"aria-expanded":i.value,disabled:L.disabled,"aria-haspopup":"true",intent:"tertiary",class:e.normalizeClass({"pdap-dropdown-trigger":!0,"pointer-events-none":L.disabled,"cursor-not-allowed":L.disabled}),"data-test":"dropdown-trigger",onClick:e.withModifiers(d,["prevent","stop"]),onKeydown:e.withKeys(e.withModifiers(d,["prevent","stop"]),["enter","space"])},{default:e.withCtx(()=>[e.renderSlot(L.$slots,"trigger")]),_:3},8,["aria-expanded","disabled","class","onClick","onKeydown"]),e.createVNode(e.Transition,{name:"dropdown",appear:""},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{id:o,ref_key:"contentRef",ref:s,"aria-hidden":!i.value,class:"pdap-dropdown-content","data-test":"dropdown-content",role:"menu"},[e.renderSlot(L.$slots,"content")],8,Jr),[[e.vShow,i.value]])]),_:3})],16,Zr)),[[e.unref(ve),m]])}});function qr(t){const r=[];for(const n of t.matched){const{name:a,path:o,meta:s}=n,c=s.breadcrumbText??a;c&&r.push({text:c,path:o,active:!1})}return r.length>0&&(r[r.length-1].active=!0),r}const en={"aria-label":"Breadcrumb"},tn={key:1},rn={name:"PdapBreadcrumbs"},nn=e.defineComponent({...rn,setup(t){const r=O.useRoute(),n=e.computed(()=>qr(r));return(a,o)=>{const s=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("nav",en,[e.createVNode(e.TransitionGroup,{class:"pdap-breadcrumbs",name:"pdap-breadcrumbs",tag:"ul"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,c=>(e.openBlock(),e.createElementBlock("li",{key:c.text,class:e.normalizeClass({"is-active":c.active})},[c.active?(e.openBlock(),e.createElementBlock("span",tn,e.toDisplayString(c.text),1)):(e.openBlock(),e.createBlock(s,{key:0,to:c.path},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(c.text),1)]),_:2},1032,["to"]))],2))),128))]),_:1})])}}});const an=(t,r)=>{const n=t.__vccOpts||t;for(const[a,o]of r)n[a]=o;return n},on=an(nn,[["__scopeId","data-v-ee7ae25b"]]);const sn={content:["./src/**/*.vue","./src/**/*.css"],theme:{extend:{colors:{brand:{blue:{light:"rgba(var(--color-brand-blue-light)/<alpha-value>)",medium:"rgba(var(--color-brand-blue-medium)/<alpha-value>)"},gold:"rgba(var(--color-brand-gold)/<alpha-value>)",wine:"rgba(var(--color-brand-wine)/<alpha-value>)"},neutral:{50:"rgba(var(--color-neutral-50)/<alpha-value>)",100:"rgba(var(--color-neutral-100)/<alpha-value>)",200:"rgba(var(--color-neutral-200)/<alpha-value>)",300:"rgba(var(--color-neutral-300)/<alpha-value>)",400:"rgba(var(--color-neutral-400)/<alpha-value>)",500:"rgba(var(--color-neutral-500)/<alpha-value>)",600:"rgba(var(--color-neutral-600)/<alpha-value>)",700:"rgba(var(--color-neutral-700)/<alpha-value>)",800:"rgba(var(--color-neutral-800)/<alpha-value>)",900:"rgba(var(--color-neutral-900)/<alpha-value>)",950:"rgba(var(--color-neutral-950)/<alpha-value>)"}},brightness:{85:".85"},maxWidth:{"4xl":"59rem"},screens:{xs:"500px"}},fontFamily:{sans:['"Libre Franklin"',"ui-sans-serif","system-ui","-apple-system","BlinkMacSystemFont",'"Segoe UI"',"Roboto","Oxygen","Ubuntu","Cantarell",'"Fira Sans"','"Droid Sans"','"Helvetica Neue"',"sans-serif"],serif:["ui-serif","Georgia"],mono:['"Source Code Pro"',"monospace","ui-monospace","SFMono-Regular"]},fontSize:{xs:"0.75rem",sm:"0.875rem",med:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.75rem","4xl":"2rem","5xl":"2.625rem","6xl":"3rem"}}};exports.Breadcrumbs=on;exports.Button=Z;exports.Dropdown=Kr;exports.ErrorBoundary=_e;exports.Footer=Xe;exports.Form=he;exports.Header=Pr;exports.Input=je;exports.Nav=Ne;exports.PdapDropdownTriggerType=_;exports.PdapInputTypes=v;exports.QuickSearchForm=Fr;exports.TileIcon=Hr;exports.tailwindConfig=sn;exports.vOnClickOutside=ve;
package/dist/index.d.ts CHANGED
@@ -1,13 +1,13 @@
1
1
  export * from './components';
2
2
  import './styles/styles.css';
3
3
  export * from './components/Button/types';
4
- export * from './components/FlexContainer/types';
4
+ export * from './components/Dropdown/types';
5
+ export * from './components/ErrorBoundary/types';
5
6
  export * from './components/Footer/types';
6
7
  export * from './components/Form/types';
7
- export * from './components/GridContainer/types';
8
- export * from './components/GridItem/types';
9
8
  export * from './components/Header/types';
10
9
  export * from './components/Input/types';
11
10
  export * from './components/Nav/types';
12
11
  export * from './components/TileIcon/types';
13
12
  export * from './config';
13
+ export * from './directives';