pdap-design-system 2.7.0-beta.1 → 2.7.0-beta.3

Sign up to get free protection for your applications and to get access to all the features.
package/README.md CHANGED
@@ -1,15 +1,11 @@
1
1
  # PDAP Design System
2
- _A `Vue` component library, styling system, and image asset repository for PDAP-branded client apps._
3
2
 
4
- [![Current npm release](https://img.shields.io/npm/v/pdap-design-system?style=for-the-badge)](https://www.npmjs.com/package/pdap-design-system)
5
- ![Build status](https://img.shields.io/github/actions/workflow/status/Police-Data-Accessibility-Project/design-system/build.yaml?branch=main&style=for-the-badge)
6
- ![Coverage Badge](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/joshuagraber/f3a173e87a763056b73438f503680993/raw/ff7d81845d17020e8a2bc01481d3cda512a15698/pdap-design-system__heads_main.json)
7
- ![License](https://img.shields.io/github/license/Police-Data-Accessibility-Project/design-system.svg?style=for-the-badge&color=green)
3
+ _A `Vue` component library, styling system, and image asset repository for PDAP-branded client apps._
8
4
 
5
+ [![Current npm release](https://img.shields.io/npm/v/pdap-design-system?style=for-the-badge)](https://www.npmjs.com/package/pdap-design-system) ![Build status](https://img.shields.io/github/actions/workflow/status/Police-Data-Accessibility-Project/design-system/build.yaml?branch=main&style=for-the-badge) ![Coverage Badge](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/joshuagraber/f3a173e87a763056b73438f503680993/raw/pdap-design-system__heads_main.json) ![License](https://img.shields.io/github/license/Police-Data-Accessibility-Project/design-system.svg?style=for-the-badge&color=green)
9
6
 
10
7
  [![Discord](https://img.shields.io/discord/828274060034965575?logo=discord&style=for-the-badge&color=blue)](https://discord.gg/vKhDv7nC8B)
11
8
 
12
-
13
9
  ## Usage
14
10
 
15
11
  1. Install the package
@@ -18,7 +14,7 @@ _A `Vue` component library, styling system, and image asset repository for PDAP-
18
14
  npm install pdap-design-system
19
15
  ```
20
16
 
21
- 2. Import the stylesheet in the app's entrypoint (usually `index.js` or `main.js`, at the root of your project)
17
+ 1. Import the stylesheet in the app's entrypoint (usually `index.js` or `main.js`, at the root of your project)
22
18
 
23
19
  ```
24
20
  // index.js | main.js
@@ -26,27 +22,25 @@ npm install pdap-design-system
26
22
  import 'pdap-design-system/styles';
27
23
  ```
28
24
 
29
- 3. Import and use the components
25
+ 1. Import and use the components
30
26
 
31
27
  ```
32
28
  import { Button, Form } from 'pdap-design-system';
33
29
  ```
34
30
 
35
- 1. Extend the `es-lint` config, for consistency in linting between client apps:
36
- First `npm install --save-dev @pdap-design-system/eslint-config`, then, in `eslintrc`:
31
+ 1. Extend the `es-lint` config, for consistency in linting between client apps: First `npm install --save-dev @pdap-design-system/eslint-config`, then, in `eslintrc`:
37
32
 
38
33
  ```
39
34
  {
40
35
  ...,
41
- extends: [
42
- "@pdap-design-system/eslint-config",
36
+ extends: [
37
+ "@pdap-design-system/eslint-config",
43
38
  ...
44
- ],
39
+ ],
45
40
  }
46
41
  ```
47
42
 
48
-
49
- 5. (Optional) Import the tailwind config if you need to use additional tailwind styles.
43
+ 1. (Optional) Import the tailwind config if you need to use additional tailwind styles.
50
44
 
51
45
  ```
52
46
  // tailwind.config.js
@@ -62,17 +56,16 @@ module.exports = {
62
56
  "./src/**/*.{vue,js,css}",
63
57
  ],
64
58
  }
65
-
66
59
  ```
67
60
 
68
- 6. If the project is using `TypeScript`, the component props definitions and other types are exposed for import as well.
69
- _n.b. This can be particularly useful for composing `Form` schemas, where `Input` schema objects are defined differently depending on the `type` of input desired._
61
+ 1. If the project is using `TypeScript`, the component props definitions and other types are exposed for import as well.<br>
62
+ _n.b. This can be particularly useful for composing `Form` schemas, where `Input` schema objects are defined differently depending on the `type` of input desired._
70
63
 
71
64
  ```
72
65
  import { PdapInputTypes } from 'pdap-design-system';
73
66
  ```
74
67
 
75
- 6. See [the component documentation](./docs/components.md) for details on each component's API.
68
+ 1. See [the component documentation](./docs/components.md) for details on each component's API.
76
69
 
77
70
  ### About images
78
71
 
@@ -96,16 +89,16 @@ import `pdap-design-system/images`;
96
89
  gh repo clone Police-Data-Accessibility-Project/design-system
97
90
  ```
98
91
 
99
- 2. CD into the project directory and install dependencies
92
+ 1. CD into the project directory and install dependencies
100
93
 
101
94
  ```
102
95
  cd design-system
103
96
  npm i
104
97
  ```
105
98
 
106
- 3. Step 2 should result in the `build` script being run after packages are installed. Check the `dist` directory for changes. You then may want to take one or both of the following steps:
99
+ 1. Step 2 should result in the `build` script being run after packages are installed. Check the `dist` directory for changes. You then may want to take one or both of the following steps:
107
100
 
108
- - If `build` wasn't called when you installed deps, build styles and images to the `dist` directory:
101
+ 2. If `build` wasn't called when you installed deps, build styles and images to the `dist` directory:
109
102
 
110
103
  ```
111
104
  npm run build
@@ -117,39 +110,37 @@ npm run build
117
110
  npm run build:watch
118
111
  ```
119
112
 
120
- 4. If you use VS Code as your editor, you may want to install the [tailwind VS Code extension](https://marketplace.visualstudio.com/items?itemName=bradlc.vscode-tailwindcss), which helps with intellisense and the custom at-rules used by TailwindCSS.
113
+ 1. If you use VS Code as your editor, you may want to install the [tailwind VS Code extension](https://marketplace.visualstudio.com/items?itemName=bradlc.vscode-tailwindcss), which helps with intellisense and the custom at-rules used by TailwindCSS.
121
114
 
122
- 5. Read the [contributing guide](./CONTRIBUTING.md) for development requirements and tips.
115
+ 2. Read the [contributing guide](./CONTRIBUTING.md) for development requirements and tips.
123
116
 
124
117
  ## Assets
125
118
 
126
- Use these [brand assets](https://docs.pdap.io/meta/about/staff/brand-assets).
127
- Use this [terminology](https://docs.pdap.io/activities/terms-and-definitions).
119
+ Use these [brand assets](https://docs.pdap.io/meta/about/staff/brand-assets). Use this [terminology](https://docs.pdap.io/activities/terms-and-definitions).
128
120
 
129
121
  ## Scripts reference
130
122
 
131
- | Script | What it does |
132
- | -------------- | -------------------------------------------------------- |
133
- | `_commit` | Create conventional commits |
134
- | `build` | Builds the library |
135
- | `build:watch` | Builds the library and watches for file changes |
136
- | `ci` | Remove all generated files and re-installs deps |
137
- | `clean` | Remove all generated files (except `package-lock.json`) |
138
- | `clean:deps` | Remove node_modules directory |
139
- | `clean:build` | Remove dist directory |
140
- | `clean:test` | Remove testing coverage reports |
141
- | `lint` | Lint everything |
142
- | `lint:es` | Lint `ts` and `vue` with `eslint` |
143
- | `lint:css` | Lint `css` and `vue` with `stylelint` |
144
- | `lint:ts` | Lint `ts` with `tsc` |
145
- | `test` | Run all test suites |
146
- | `test:changed` | Run only test suites affected by changed files |
147
- | `typecheck` | Run type check on all `ts` and `vue` files |
148
- | `dev` | Run demo app to check visual changes to components |
149
-
123
+ Script | What it does
124
+ -------------- | -------------------------------------------------------
125
+ `_commit` | Create conventional commits
126
+ `build` | Builds the library
127
+ `build:watch` | Builds the library and watches for file changes
128
+ `ci` | Remove all generated files and re-installs deps
129
+ `clean` | Remove all generated files (except `package-lock.json`)
130
+ `clean:deps` | Remove node_modules directory
131
+ `clean:build` | Remove dist directory
132
+ `clean:test` | Remove testing coverage reports
133
+ `lint` | Lint everything
134
+ `lint:es` | Lint `ts` and `vue` with `eslint`
135
+ `lint:css` | Lint `css` and `vue` with `stylelint`
136
+ `lint:ts` | Lint `ts` with `tsc`
137
+ `test` | Run all test suites
138
+ `test:changed` | Run only test suites affected by changed files
139
+ `typecheck` | Run type check on all `ts` and `vue` files
140
+ `dev` | Run demo app to check visual changes to components
150
141
 
151
142
  _n.b. There are some other scripts defined in the `package.json` `"scripts"` field, but they are mostly for CI or cleanup post-build, etc. You shouldn't need them._
152
143
 
153
144
  ## Releasing
154
- Incremental updates can be added to `main` directly via a PR.
155
- For more significant updates, the `beta` branch can be used for releasing incremental beta releases to test the bigger feature without releasing to production.
145
+
146
+ Incremental updates can be added to `main` directly via a PR. For more significant updates, the `beta` branch can be used for releasing incremental beta releases to test the bigger feature without releasing to production.
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}>;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ import PdapBreadcrumbs from './PdapBreadcrumbs.vue';
2
+ export { PdapBreadcrumbs as Breadcrumbs };
@@ -0,0 +1,46 @@
1
+ import { PdapDropdownProps, PdapDropdownTriggerType } from './types';
2
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PdapDropdownProps>, {
3
+ defaultOpen: boolean;
4
+ disabled: boolean;
5
+ triggerOn: PdapDropdownTriggerType;
6
+ }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
+ press: (...args: any[]) => void;
8
+ "update:open": (...args: any[]) => void;
9
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PdapDropdownProps>, {
10
+ defaultOpen: boolean;
11
+ disabled: boolean;
12
+ triggerOn: PdapDropdownTriggerType;
13
+ }>>> & {
14
+ onPress?: ((...args: any[]) => any) | undefined;
15
+ "onUpdate:open"?: ((...args: any[]) => any) | undefined;
16
+ }, {
17
+ defaultOpen: boolean;
18
+ disabled: boolean;
19
+ triggerOn: PdapDropdownTriggerType;
20
+ }, {}>, {
21
+ trigger?(_: {}): any;
22
+ content?(_: {}): any;
23
+ }>;
24
+ export default _default;
25
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
26
+ type __VLS_TypePropsToRuntimeProps<T> = {
27
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
28
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
29
+ } : {
30
+ type: import('vue').PropType<T[K]>;
31
+ required: true;
32
+ };
33
+ };
34
+ type __VLS_WithDefaults<P, D> = {
35
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
36
+ default: D[K];
37
+ }> : P[K];
38
+ };
39
+ type __VLS_Prettify<T> = {
40
+ [K in keyof T]: T[K];
41
+ } & {};
42
+ type __VLS_WithTemplateSlots<T, S> = T & {
43
+ new (): {
44
+ $slots: S;
45
+ };
46
+ };
@@ -0,0 +1 @@
1
+ export { default as Dropdown } from './PdapDropdown.vue';
@@ -0,0 +1,9 @@
1
+ export declare enum PdapDropdownTriggerType {
2
+ PRESS = "press",
3
+ HOVER = "hover"
4
+ }
5
+ export interface PdapDropdownProps {
6
+ defaultOpen?: boolean;
7
+ disabled?: boolean;
8
+ triggerOn?: PdapDropdownTriggerType;
9
+ }
@@ -9,3 +9,5 @@ export { Header } from './Header';
9
9
  export { Nav } from './Nav';
10
10
  export { QuickSearchForm } from './QuickSearchForm';
11
11
  export { TileIcon } from './TileIcon';
12
+ export { Dropdown } from './Dropdown';
13
+ export { Breadcrumbs } from './Breadcrumbs';
@@ -0,0 +1,16 @@
1
+ import { DirectiveBinding } from 'vue';
2
+ type ElementWithClickOutside = Element & {
3
+ clickOutsideEvent: (event: Event) => void;
4
+ };
5
+ /**
6
+ * # Click outside directive
7
+ *
8
+ * Runs a callback on a click outside of the element to which the directive is applied
9
+ * @param el Element
10
+ * @param binding DirectiveBinding
11
+ */
12
+ declare const _default: {
13
+ beforeMount(el: Element, binding: DirectiveBinding): void;
14
+ unmounted(element: ElementWithClickOutside): void;
15
+ };
16
+ export default _default;
@@ -0,0 +1 @@
1
+ export { default as vOnClickOutside } from './click-outside';
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),k=require("vue-router"),de=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),Qe={class:"pdap-footer-widget-links"},Ve=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),Be=["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 c=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),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,_e)):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",Ae,[e.createTextVNode(" © "+e.toDisplayString(new Date().getFullYear())+" Police Data Accessibility Project",1),Ye]),Pe,e.createElementVNode("div",Qe,[Ve,e.unref(a)?(e.openBlock(),e.createBlock(c,{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,Be))])])])}}});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 T(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 Q(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 ge(t){return t.$valid!==void 0?!t.$valid:!t}function Ze(t,r,n,a,s,o,c){let{$lazy:i,$rewardEarly:l}=s,L=arguments.length>7&&arguments[7]!==void 0?arguments[7]:[],M=arguments.length>8?arguments[8]:void 0,p=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 d=e.watch([r,a].concat(L,f),()=>{if(i&&!a.value||l&&!p.value&&!n.value)return;let g;try{g=me(t,r,M,c)}catch(j){g=Promise.reject(j)}u.value++,n.value=!!u.value,m.value=!1,Promise.resolve(g).then(j=>{u.value--,n.value=!!u.value,o.value=j,m.value=ge(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:d}}function He(t,r,n,a,s,o,c,i){let{$lazy:l,$rewardEarly:L}=a;const M=()=>({}),p=e.computed(()=>{if(l&&!n.value||L&&!i.value)return!1;let f=!0;try{const m=me(t,r,c,o);s.value=m,f=ge(m)}catch(m){s.value=m}return f});return{$unwatch:M,$invalid:p}}function Je(t,r,n,a,s,o,c,i,l,L,M){const p=e.ref(!1),f=t.$params||{},m=e.ref(null);let u,d;t.$async?{$invalid:u,$unwatch:d}=Ze(t.$validator,r,p,n,a,m,s,t.$watchTargets,l,L,M):{$invalid:u,$unwatch:d}=He(t.$validator,r,n,a,m,s,l,L);const g=t.$message;return{$message:Q(g)?e.computed(()=>g(ee({$pending:p,$invalid:u,$params:ee(f),$model:r,$response:m,$validator:o,$propertyPath:i,$property:c}))):g||"",$params:f,$pending:p,$invalid:u,$response:m,$unwatch:d}}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 c=null;return n.forEach(i=>{const l=r[i];switch(!0){case Q(l.$validator):a[i]=l;break;case Q(l):a[i]={$validator:l};break;case i==="$validationGroups":c=l;break;case i.startsWith("$"):o[i]=l;break;default:s[i]=l}}),{rules:a,nestedValidators:s,config:o,validationGroups:c}}const Ke="__root";function qe(t,r,n,a,s,o,c,i,l){const L=Object.keys(t),M=a.get(s,t),p=e.ref(!1),f=e.ref(!1),m=e.ref(0);if(M){if(!M.$partial)return M;M.$unwatch(),p.value=M.$dirty.value}const u={$dirty:p,$path:s,$touch:()=>{p.value||(p.value=!0)},$reset:()=>{p.value&&(p.value=!1)},$commit:()=>{}};return L.length?(L.forEach(d=>{u[d]=Je(t[d],r,u.$dirty,o,c,d,n,s,l,f,m)}),u.$externalResults=e.computed(()=>i.value?[].concat(i.value).map((d,g)=>({$propertyPath:s,$property:n,$validator:"$externalResults",$uid:`${s}-externalResult-${g}`,$message:d,$params:{},$response:null,$pending:!1})):[]),u.$invalid=e.computed(()=>{const d=L.some(g=>e.unref(u[g].$invalid));return f.value=d,!!u.$externalResults.value.length||d}),u.$pending=e.computed(()=>L.some(d=>e.unref(u[d].$pending))),u.$error=e.computed(()=>u.$dirty.value?u.$pending.value||u.$invalid.value:!1),u.$silentErrors=e.computed(()=>L.filter(d=>e.unref(u[d].$invalid)).map(d=>{const g=u[d];return e.reactive({$propertyPath:s,$property:n,$validator:d,$uid:`${s}-${d}`,$message:g.$message,$params:g.$params,$response:g.$response,$pending:g.$pending})}).concat(u.$externalResults.value)),u.$errors=e.computed(()=>u.$dirty.value?u.$silentErrors.value:[]),u.$unwatch=()=>L.forEach(d=>{u[d].$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,c){const i=Object.keys(t);return i.length?i.reduce((l,L)=>(l[L]=W({validations:t[L],state:r,key:L,parentKey:n,resultsCache:a,globalConfig:s,instance:o,externalResults:c}),l),{}):{}}function tt(t,r,n){const a=e.computed(()=>[r,n].filter(u=>u).reduce((u,d)=>u.concat(Object.values(e.unref(d))),[])),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)||[],d=a.value.filter(g=>(e.unref(g).$silentErrors||[]).length).reduce((g,j)=>g.concat(...j.$silentErrors),[]);return u.concat(d)}),c=e.computed(()=>{const u=e.unref(t.$errors)||[],d=a.value.filter(g=>(e.unref(g).$errors||[]).length).reduce((g,j)=>g.concat(...j.$errors),[]);return u.concat(d)}),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),L=e.computed(()=>a.value.some(u=>u.$dirty)||a.value.some(u=>u.$anyDirty)||s.value),M=e.computed(()=>s.value?l.value||i.value:!1),p=()=>{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)&&p(),{$dirty:s,$errors:c,$invalid:i,$anyDirty:L,$error:M,$pending:l,$touch:p,$reset:m,$silentErrors:o,$commit:f}}function W(t){let{validations:r,state:n,key:a,parentKey:s,childResults:o,resultsCache:c,globalConfig:i={},instance:l,externalResults:L}=t;const M=s?`${s}.${a}`:a,{rules:p,nestedValidators:f,config:m,validationGroups:u}=Xe(r),d=T(T({},i),m),g=a?e.computed(()=>{const y=e.unref(n);return y?e.unref(y[a]):void 0}):n,j=T({},e.unref(L)||{}),$=e.computed(()=>{const y=e.unref(L);return a?y?e.unref(y[a]):void 0:y}),b=qe(p,g,a,c,M,d,l,$,n),h=et(f,g,M,c,d,l,$),E={};u&&Object.entries(u).forEach(y=>{let[I,C]=y;E[I]={$invalid:G(C,h,"$invalid"),$error:G(C,h,"$error"),$pending:G(C,h,"$pending"),$errors:te(C,h,"$errors"),$silentErrors:te(C,h,"$silentErrors")}});const{$dirty:D,$errors:Y,$invalid:R,$anyDirty:Ne,$error:$e,$pending:U,$touch:F,$reset:De,$silentErrors:Ce,$commit:K}=tt(b,h,o),Te=a?e.computed({get:()=>e.unref(g),set:y=>{D.value=!0;const I=e.unref(n),C=e.unref(L);C&&(C[a]=j[a]),e.isRef(I[a])?I[a].value=y:I[a]=y}}):null;a&&d.$autoDirty&&e.watch(g,()=>{D.value||F();const y=e.unref(L);y&&(y[a]=j[a])},{flush:"sync"});async function ve(){return F(),d.$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(L)?L.value=j:Object.keys(j).length===0?Object.keys(L).forEach(y=>{delete L[y]}):Object.assign(L,j)}return e.reactive(T(T(T({},b),{},{$model:Te,$dirty:D,$error:$e,$errors:Y,$invalid:R,$anyDirty:Ne,$pending:U,$touch:F,$reset:De,$path:M||Ke,$silentErrors:Ce,$validate:ve,$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(i=>s.includes(i))?!1:o.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:s,result:o}=a,c=this.checkRulesValidity(r,n,s),i=o.$unwatch?o.$unwatch:()=>({});return c?o:{$dirty:o.$dirty,$partial:!0,$unwatch:i}}}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,p)=>(M[p]=e.unref(a[p]),M),{}));function c(M,p){let{$registerAs:f,$scope:m,$stopPropagation:u}=p;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||[],c);function i(M){s.value=s.value.filter(p=>p!==M),delete a[M]}n.__vuelidateRemoveInstances=[].concat(n.__vuelidateRemoveInstances||[],i);const l=e.inject(re,[]);e.provide(re,n.__vuelidateInjectInstances);const L=e.inject(ne,[]);return e.provide(ne,n.__vuelidateRemoveInstances),{childResults:o,sendValidationResultsToParent:l,removeValidationResultsFromParent:L}}function pe(t){return new Proxy(t,{get(r,n){return typeof r[n]=="object"?pe(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:c,$externalResults:i,currentVueInstance:l}=a;const L=l||((n=e.getCurrentInstance())===null||n===void 0?void 0:n.proxy),M=L?L.$options:{};s||(ae+=1,s=`_vuelidate_${ae}`);const p=e.ref({}),f=new rt,{childResults:m,sendValidationResultsToParent:u,removeValidationResultsFromParent:d}=L?nt({$scope:o,instance:L}):{childResults:e.ref({})};if(!t&&M.validations){const g=M.validations;r=e.ref({}),e.onBeforeMount(()=>{r.value=L,e.watch(()=>Q(g)?g.call(r.value,new pe(r.value)):g,j=>{p.value=W({validations:j,state:r,childResults:m,resultsCache:f,globalConfig:a,instance:L,externalResults:i||L.vuelidateExternalResults})},{immediate:!0})}),a=M.validationsConfig||a}else{const g=e.isRef(t)||We(t)?t:e.reactive(t||{});e.watch(g,j=>{p.value=W({validations:j,state:r,childResults:m,resultsCache:f,globalConfig:a,instance:L??{},externalResults:i})},{immediate:!0})}return L&&(u.forEach(g=>g(p,{$registerAs:s,$scope:o,$stopPropagation:c})),e.onBeforeUnmount(()=>d.forEach(g=>g(s)))),e.computed(()=>T(T({},e.unref(p.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,c)=>(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 z(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){Lt(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 Lt(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 V(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function B(t){return _(t.$validator)?z({},t):{$validator:t}}function dt(t){return V(t)&&_(t.then)}function v(t){return typeof t=="object"?t.$valid:t}function S(t){return t.$validator||t}function Z(t,r){if(!V(t))throw new Error(`[@vuelidate/validators]: First parameter to "withParams" should be an object, provided ${typeof t}`);if(!V(r)&&!_(r))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const n=B(r);return n.$params=z(z({},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(!V(r)&&!_(r))throw new Error("[@vuelidate/validators]: Validator must be a function or object with $validator parameter");const n=B(r);return n.$message=t,n}function Mt(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const n=B(t);return z(z({},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,c,i)=>{const l=Object.entries(c).reduce((L,M)=>{let[p,f]=M;const m=t[p]||{},u=Object.entries(m).reduce((d,g)=>{let[j,$]=g;const h=S($).call(this,f,c,i,...a),E=v(h);if(d.$data[j]=h,d.$data.$invalid=!E||!!d.$data.$invalid,d.$data.$error=d.$data.$invalid,!E){let D=$.$message||"";const Y=$.$params||{};typeof D=="function"&&(D=D({$pending:!1,$invalid:!E,$params:Y,$model:f,$response:h})),d.$errors.push({$property:p,$message:D,$params:Y,$response:h,$model:f,$pending:!1,$validator:j})}return{$valid:d.$valid&&E,$data:d.$data,$errors:d.$errors}},{$valid:!0,$data:{},$errors:[]});return L.$data[p]=u.$data,L.$errors[p]=u.$errors,{$valid:L.$valid&&u.$valid,$data:L.$data,$errors:L.$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 O=Object.freeze({__proto__:null,forEach:mt,len:H,normalizeValidatorObject:B,regex:x,req:w,unwrap:e.unref,unwrapNormalizedValidator:S,unwrapValidatorResponse:v,withAsync:Mt,withMessage:A,withParams:Z}),gt=x(/^[a-zA-Z]*$/),pt={$validator:gt,$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 Dt=x($t),J={$validator:Dt,$message:"Value is not a valid email address",$params:{type:"email"}};function Ct(t){if(!w(t))return!0;if(typeof t!="string")return!1;const r=t.split(".");return r.length===4&&r.every(Tt)}const Tt=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 vt={$validator:Ct,$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 Qt(t){return r=>e.unref(r)===e.unref(t)}function Vt(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"other";return{$validator:Qt(t),$message:n=>`The value must be equal to the ${r} value`,$params:{equalTo:t,otherName:r,type:"sameAs"}}}const Bt=/^(?:(?:(?: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(Bt),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)=>v(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 c=await s;return v(c)?c: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(c=>c.$async),s=r.reduce((c,i)=>i.$watchTargets?c.concat(i.$watchTargets):c,[]);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)=>v(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 c=await s;return v(c)?S(o).apply(this,n):c},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(c=>c.$async),s=r.reduce((c,i)=>i.$watchTargets?c.concat(i.$watchTargets):c,[]);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 dt(a)?a.then(s=>!v(s)):!v(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:c=!1,messagePath:i=n,messageParams:l=a}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};function L(M){return r(i(M),l(z({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 o=="function"?function(){return A(L,o(...arguments))}:A(L,o)}}const je=Object.freeze(Object.defineProperty({__proto__:null,alpha:pt,alphaNum:jt,and:Kt,between:Nt,createI18nMessage:cr,decimal:ir,email:J,helpers:O,integer:or,ipAddress:vt,macAddress:It,maxLength:zt,maxValue:ar,minLength:bt,minValue:rr,not:er,numeric:wt,or:Zt,required:X,requiredIf:At,requiredUnless:Pt,sameAs:Vt,url:Ut},Symbol.toStringTag,{value:"Module"})),ye=O.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 Le(t){return t==="password"}function lr(t,r){return{[t]:je[t](r)}}function Lr(t,r,n){return{[t]:O.withMessage(n,je[t](r))}}function dr(){return{required:X}}function Mr(t){return{required:O.withMessage(t,X)}}function mr(){return{email:J}}function gr(t){return{email:O.withMessage(t,J)}}function pr(){return{password:ye}}function fr(t){return{password:O.withMessage(t,ye)}}function jr(t,r){if(ie(t)&&typeof r.message=="string"&&typeof r.value=="number")return Lr(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 gr(r.message);if(le(t)&&typeof r.message>"u")return mr();if(Le(t)&&typeof r.message=="string")return fr(r.message);if(Le(t)&&typeof r.message>"u")return pr();if(ce(t)&&typeof r.message=="string")return Mr(r.message);if(ce(t)&&typeof r.message>"u")return dr();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}}},{})),c=n.schema.reduce((f,m)=>{const u=Object.entries(m.validators??{}).reduce((d,[g,j])=>({...d,...jr(g,j)}),{});return{...f,[m.name]:{...u}}},{}),i=at(c,o,{$autoDirty:!1,$lazy:!0}),l=e.ref(n.error);function L(f,m){const u=m.target,d=u.type===N.CHECKBOX&&typeof u.checked=="boolean"?u.checked.toString():u.value;o.value[f]=d,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",{...o.value})}async function p(f){if(await i.value.$validate()){a("submit",{...o.value}),i.value.$reset(),f.target.reset(),o.value=Object.entries(o).reduce((d,[g])=>({...d,[g]:""}),{});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=>p(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 d,g,j,$;return e.openBlock(),e.createBlock(fe,e.mergeProps(u,{key:u.name,error:(d=e.unref(i)[u.name])!=null&&d.$error?($=(j=(g=e.unref(i)[u.name])==null?void 0:g.$errors)==null?void 0:j[0])==null?void 0:$.$message:"",value:o.value[u.name],onChange:b=>L(u.name,b)}),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(c,i)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.component),{class:e.normalizeClass(n),style:e.normalizeStyle(o)},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3},8,["class","style"]))}}),$r={name:"GridItem"},Dr=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 Cr=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),Tr=[Cr],vr=["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 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:o},Tr),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:o},e.toDisplayString(l.text),9,xr)):e.createCommentVNode("",!0),l.path?(e.openBlock(),e.createBlock(e.unref(k.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,vr)],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(c,i)=>(e.openBlock(),e.createElementBlock("header",{ref_key:"el",ref:a,class:"pdap-header"},[e.unref(s)?(e.openBlock(),e.createBlock(e.unref(k.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,zr)]),_: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,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=k.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 c(l){s.value&&Object.values(l).some(Boolean)&&(s.value=void 0)}function i(l){if(Object.values(l).every(p=>!p)){s.value="Either a search term or a location is required.";return}let{location:L,searchTerm:M}=l;L=L&&L.length>0?L:"all",M=M&&M.length>0?M:"all",o?r.push(`/search/${M}/${L}`):window.location.assign(`${n.baseUrlForRedirect}/search/${M}/${L}`)}return(l,L)=>(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:c,onSubmit:i},{default:e.withCtx(()=>[e.createVNode(de,{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(k.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(k.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 Qr=["alt","src"],Vr=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,Qr))}});const Br={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.Button=de;exports.FlexContainer=Se;exports.Footer=Fe;exports.Form=we;exports.GridContainer=Nr;exports.GridItem=Dr;exports.Header=Or;exports.Input=fe;exports.Nav=he;exports.PdapInputTypes=N;exports.QuickSearchForm=Pr;exports.TileIcon=Vr;exports.tailwindConfig=Br;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),z=require("vue-router"),Z=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,o)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(n)},[e.renderSlot(a.$slots,"default")],2))}});const Oe={name:"FlexContainer"},ke=e.defineComponent({...Oe,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,o)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.component),{class:e.normalizeClass(n)},{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3},8,["class"]))}}),be="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxMTMuOCA4Ni4xIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxMTMuOCA4Ni4xOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxwYXRoIGQ9Ik0wLDgwLjlMMjEuNSwyLjZoNS4xTDUuMSw4MC45SDB6Ii8+Cjxwb2x5Z29uIHBvaW50cz0iNzguOCwyMC40IDYxLjgsMjAuNCA3NSw3LjIgNzEuMSwzLjIgNTguNCwxNS44IDU4LjQsMCA1Mi44LDAgNTIuOCwxNS44IDQwLjIsMy4yIDM2LjIsNy4yIDQ5LjUsMjAuNCAzMi41LDIwLjQgCgkzMi41LDI2IDQ4LjMsMjYgMzYuMiwzOCA0MC4yLDQyIDUyLjgsMjkuMyA1Mi44LDQ2LjMgNTguNCw0Ni4zIDU4LjQsMjkuMyA3MS4xLDQyIDc1LDM4IDYzLDI2IDc4LjgsMjYgIi8+CjxwYXRoIGQ9Ik00Mi4xLDcxLjFoLTIuNnY5LjFoLTVWNTcuM2g3LjZjNS4xLDAsOC40LDIuNCw4LjQsNi43UzQ3LjMsNzEuMSw0Mi4xLDcxLjF6IE00Mi4xLDYxLjVoLTIuNnY1LjNoMi42CgljMi4zLDAsMy4zLTAuOSwzLjMtMi43UzQ0LjMsNjEuNSw0Mi4xLDYxLjV6Ii8+CjxwYXRoIGQ9Ik02MC41LDgwLjFoLTYuOVY1Ny4zaDYuOWM2LjUsMCwxMS45LDQsMTEuOSwxMS40QzcyLjQsNzYuMiw2Ni42LDgwLjEsNjAuNSw4MC4xeiBNNjAuNSw2MS41aC0xLjl2MTQuNGgxLjkKCWM0LjMsMCw2LjctMy40LDYuNy03LjJTNjQuNSw2MS41LDYwLjUsNjEuNXoiLz4KPHBhdGggZD0iTTg4LjcsODAuMUw4Nyw3NC40aC03bC0xLjgsNS44aC01LjNsOC4yLTIyLjloNC44bDguMywyMi45aC01LjVWODAuMXogTTg0LDY0LjZjLTAuMi0wLjctMC41LTEuNi0wLjUtMS44CgljMCwwLjEtMC4yLDEtMC41LDEuOGwtMS43LDUuNmg0LjRMODQsNjQuNnoiLz4KPHBhdGggZD0iTTEwNC43LDcxLjFoLTIuNnY5LjFoLTVWNTcuM2g3LjZjNS4xLDAsOC40LDIuNCw4LjQsNi43UzEwOS44LDcxLjEsMTA0LjcsNzEuMXogTTEwNC43LDYxLjVoLTIuNnY1LjNoMi42CgljMi4zLDAsMy4zLTAuOSwzLjMtMi43UzEwNi45LDYxLjUsMTA0LjcsNjEuNXoiLz4KPC9zdmc+Cg==",_e={class:"pdap-footer"},Ae={class:"pdap-flex-container-center"},Pe={class:"pdap-footer-social-links"},Ye=["href"],Be={class:"pdap-footer-copyright"},Ve=e.createElementVNode("br",null,null,-1),Qe=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),Re={class:"pdap-footer-widget-links"},Ue=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),Fe=["href"],Ge=["src"],We=["src"],He=e.defineComponent({__name:"PdapFooter",props:{logoImageSrc:{default:be},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 i=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("footer",_e,[e.createElementVNode("div",Ae,[e.createElementVNode("ul",Pe,[(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,Ye)):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",Be,[e.createTextVNode(" © "+e.toDisplayString(new Date().getFullYear())+" Police Data Accessibility Project",1),Ve]),Qe,e.createElementVNode("div",Re,[Ue,e.unref(a)?(e.openBlock(),e.createBlock(i,{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,We)]),_: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,Ge)],8,Fe))])])])}}});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 D(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){Ze(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 Ze(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 V(t){return typeof t=="function"}function Je(t){return e.isReactive(t)||e.isReadonly(t)}function me(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 W(t,r,n){return e.computed(()=>t.some(a=>me(r,a,{[n]:!1})[n]))}function ne(t,r,n){return e.computed(()=>t.reduce((a,o)=>{const s=me(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 fe(t){return t.$valid!==void 0?!t.$valid:!t}function Xe(t,r,n,a,o,s,i){let{$lazy:c,$rewardEarly:l}=o,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=ge(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,s.value=j,m.value=fe(j)}).catch(j=>{u.value--,n.value=!!u.value,s.value=j,m.value=!0})},{immediate:!0,deep:typeof r=="object"});return{$invalid:m,$unwatch:L}}function Ke(t,r,n,a,o,s,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=ge(t,r,i,s);o.value=m,f=fe(m)}catch(m){o.value=m}return f});return{$unwatch:M,$invalid:g}}function qe(t,r,n,a,o,s,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}=Xe(t.$validator,r,g,n,a,m,o,t.$watchTargets,l,d,M):{$invalid:u,$unwatch:L}=Ke(t.$validator,r,n,a,m,o,l,d);const p=t.$message;return{$message:V(p)?e.computed(()=>p(re({$pending:g,$invalid:u,$params:re(f),$model:r,$response:m,$validator:s,$propertyPath:c,$property:i}))):p||"",$params:f,$pending:g,$invalid:u,$response:m,$unwatch:L}}function et(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const r=e.unref(t),n=Object.keys(r),a={},o={},s={};let i=null;return n.forEach(c=>{const l=r[c];switch(!0){case V(l.$validator):a[c]=l;break;case V(l):a[c]={$validator:l};break;case c==="$validationGroups":i=l;break;case c.startsWith("$"):s[c]=l;break;default:o[c]=l}}),{rules:a,nestedValidators:o,config:s,validationGroups:i}}const tt="__root";function rt(t,r,n,a,o,s,i,c,l){const d=Object.keys(t),M=a.get(o,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:o,$touch:()=>{g.value||(g.value=!0)},$reset:()=>{g.value&&(g.value=!1)},$commit:()=>{}};return d.length?(d.forEach(L=>{u[L]=qe(t[L],r,u.$dirty,s,i,L,n,o,l,f,m)}),u.$externalResults=e.computed(()=>c.value?[].concat(c.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 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: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=()=>{f.value=!0,m.value=Date.now()},a.set(o,t,u),u):(M&&a.set(o,t,u),u)}function nt(t,r,n,a,o,s,i){const c=Object.keys(t);return c.length?c.reduce((l,d)=>(l[d]=H({validations:t[d],state:r,key:d,parentKey:n,resultsCache:a,globalConfig:o,instance:s,externalResults:i}),l),{}):{}}function at(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)}),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)||o.value),M=e.computed(()=>o.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:o,$errors:i,$invalid:c,$anyDirty:d,$error:M,$pending:l,$touch:g,$reset:m,$silentErrors:s,$commit:f}}function H(t){let{validations:r,state:n,key:a,parentKey:o,childResults:s,resultsCache:i,globalConfig:c={},instance:l,externalResults:d}=t;const M=o?`${o}.${a}`:a,{rules:g,nestedValidators:f,config:m,validationGroups:u}=et(r),L=D(D({},c),m),p=a?e.computed(()=>{const y=e.unref(n);return y?e.unref(y[a]):void 0}):n,j=D({},e.unref(d)||{}),h=e.computed(()=>{const y=e.unref(d);return a?y?e.unref(y[a]):void 0:y}),b=rt(g,p,a,i,M,L,l,h,n),N=nt(f,p,M,i,L,l,h),E={};u&&Object.entries(u).forEach(y=>{let[S,C]=y;E[S]={$invalid:W(C,N,"$invalid"),$error:W(C,N,"$error"),$pending:W(C,N,"$pending"),$errors:ne(C,N,"$errors"),$silentErrors:ne(C,N,"$silentErrors")}});const{$dirty:$,$errors:Y,$invalid:U,$anyDirty:Ce,$error:De,$pending:F,$touch:G,$reset:Te,$silentErrors:xe,$commit:ee}=at(b,N,s),Ee=a?e.computed({get:()=>e.unref(p),set:y=>{$.value=!0;const S=e.unref(n),C=e.unref(d);C&&(C[a]=j[a]),e.isRef(S[a])?S[a].value=y:S[a]=y}}):null;a&&L.$autoDirty&&e.watch(p,()=>{$.value||G();const y=e.unref(d);y&&(y[a]=j[a])},{flush:"sync"});async function Se(){return G(),L.$rewardEarly&&(ee(),await e.nextTick()),await e.nextTick(),new Promise(y=>{if(!F.value)return y(!U.value);const S=e.watch(F,()=>{y(!U.value),S()})})}function Ie(y){return(s.value||{})[y]}function ze(){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(D(D(D({},b),{},{$model:Ee,$dirty:$,$error:De,$errors:Y,$invalid:U,$anyDirty:Ce,$pending:F,$touch:G,$reset:Te,$path:M||tt,$silentErrors:xe,$validate:Se,$commit:ee},s&&{$getResultsForChild:Ie,$clearExternalResults:ze,$validationGroups:E}),N))}class ot{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(c=>o.includes(c))?!1:s.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:o,result:s}=a,i=this.checkRulesValidity(r,n,o),c=s.$unwatch?s.$unwatch:()=>({});return i?s:{$dirty:s.$dirty,$partial:!0,$unwatch:c}}}const B={COLLECT_ALL:!0,COLLECT_NONE:!1},ae=Symbol("vuelidate#injectChildResults"),oe=Symbol("vuelidate#removeChildResults");function st(t){let{$scope:r,instance:n}=t;const a={},o=e.ref([]),s=e.computed(()=>o.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===B.COLLECT_NONE||m===B.COLLECT_NONE||r!==B.COLLECT_ALL&&r!==m||(a[f]=M,o.value.push(f))}n.__vuelidateInjectInstances=[].concat(n.__vuelidateInjectInstances||[],i);function c(M){o.value=o.value.filter(g=>g!==M),delete a[M]}n.__vuelidateRemoveInstances=[].concat(n.__vuelidateRemoveInstances||[],c);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 je(t){return new Proxy(t,{get(r,n){return typeof r[n]=="object"?je(r[n]):e.computed(()=>r[n])}})}let se=0;function ut(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=B.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:{};o||(se+=1,o=`_vuelidate_${se}`);const g=e.ref({}),f=new ot,{childResults:m,sendValidationResultsToParent:u,removeValidationResultsFromParent:L}=d?st({$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(()=>V(p)?p.call(r.value,new je(r.value)):p,j=>{g.value=H({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)||Je(t)?t:e.reactive(t||{});e.watch(p,j=>{g.value=H({validations:j,state:r,childResults:m,resultsCache:f,globalConfig:a,instance:d??{},externalResults:c})},{immediate:!0})}return d&&(u.forEach(p=>p(g,{$registerAs:o,$scope:s,$stopPropagation:i})),e.onBeforeUnmount(()=>L.forEach(p=>p(o)))),e.computed(()=>D(D({},e.unref(g.value)),m.value))}var v=(t=>(t.CHECKBOX="checkbox",t.TEXT="text",t.PASSWORD="password",t))(v||{});const it=["id","type","name","placeholder","value"],ct=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,i)=>(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,it))}}),lt=["id","name","checked","value"],dt=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,lt))}}),Lt=["id"],Mt=["for"],ye=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(dt,e.mergeProps({key:0,class:"pdap-input-checkbox"},{...a.$attrs,...r}),null,16)):(e.openBlock(),e.createBlock(ct,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,Lt)):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 O(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){pt(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 pt(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)?O({},t):{$validator:t}}function mt(t){return Q(t)&&A(t.then)}function T(t){return typeof t=="object"?t.$valid:t}function I(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=O(O({},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 gt(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const n=R(t);return O(O({},n),{},{$async:!0,$watchTargets:r})}function ft(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,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,h]=p;const N=I(h).call(this,f,i,c,...a),E=T(N);if(L.$data[j]=N,L.$data.$invalid=!E||!!L.$data.$invalid,L.$data.$error=L.$data.$invalid,!E){let $=h.$message||"";const Y=h.$params||{};typeof $=="function"&&($=$({$pending:!1,$invalid:!E,$params:Y,$model:f,$response:N})),L.$errors.push({$property:g,$message:$,$params:Y,$response:N,$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: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 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(o=>(o.lastIndex=0,o.test(a))))}var k=Object.freeze({__proto__:null,forEach:ft,len:X,normalizeValidatorObject:R,regex:x,req:w,unwrap:e.unref,unwrapNormalizedValidator:I,unwrapValidatorResponse:T,withAsync:gt,withMessage:P,withParams:J}),jt=x(/^[a-zA-Z]*$/),yt={$validator:jt,$message:"The value is not alphabetical",$params:{type:"alpha"}},wt=x(/^[a-zA-Z0-9]*$/),ht={$validator:wt,$message:"The value must be alpha-numeric",$params:{type:"alphaNum"}},Nt=x(/^\d*(\.\d+)?$/),vt={$validator:Nt,$message:"Value must be numeric",$params:{type:"numeric"}};function $t(t,r){return n=>!w(n)||(!/\s/.test(n)||n instanceof Date)&&+e.unref(t)<=+n&&+e.unref(r)>=+n}function Ct(t,r){return{$validator:$t(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 Dt=/^(?:[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 Tt=x(Dt),K={$validator:Tt,$message:"Value is not a valid email address",$params:{type:"email"}};function xt(t){if(!w(t))return!0;if(typeof t!="string")return!1;const r=t.split(".");return r.length===4&&r.every(Et)}const Et=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 St={$validator:xt,$message:"The value is not a valid IP address",$params:{type:"ipAddress"}};function It(){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(zt)}}const zt=t=>t.toLowerCase().match(/^[0-9a-f]{2}$/);function Ot(t){return{$validator:It(t),$message:"The value is not a valid MAC Address",$params:{type:"macAddress"}}}function kt(t){return r=>!w(r)||X(r)<=e.unref(t)}function bt(t){return{$validator:kt(t),$message:r=>{let{$params:n}=r;return`The maximum length allowed is ${n.max}`},$params:{max:t,type:"maxLength"}}}function _t(t){return r=>!w(r)||X(r)>=e.unref(t)}function At(t){return{$validator:_t(t),$message:r=>{let{$params:n}=r;return`This field should be at least ${n.min} characters long`},$params:{min:t,type:"minLength"}}}function Pt(t){return typeof t=="string"&&(t=t.trim()),w(t)}var q={$validator:Pt,$message:"Value is required",$params:{type:"required"}};const ie=(t,r)=>t?w(typeof r=="string"?r.trim():r):!0;function Yt(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 Bt(t){return{$validator:Yt(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 Vt(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 Qt(t){return{$validator:Vt(t),$message:"The value is required",$params:{type:"requiredUnless",prop:t}}}function Rt(t){return r=>e.unref(r)===e.unref(t)}function Ut(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"other";return{$validator:Rt(t),$message:n=>`The value must be equal to the ${r} value`,$params:{equalTo:t,otherName:r,type:"sameAs"}}}const Ft=/^(?:(?:(?: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 Gt=x(Ft),Wt={$validator:Gt,$message:"The value is not a valid URL address",$params:{type:"url"}};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((o,s)=>T(o)?o:I(s).apply(this,n),!1)}}function Zt(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 i=await o;return T(i)?i:I(s).apply(this,n)},Promise.resolve(!1))}}function Jt(){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),o=r.reduce((i,c)=>c.$watchTargets?i.concat(c.$watchTargets):i,[]);let s=()=>!1;return r.length&&(s=a?Zt(r):Ht(r)),{$async:a,$validator:s,$watchTargets:o}}function Xt(){return J({type:"or"},P("The value does not match any of the provided validators",Jt(...arguments)))}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((o,s)=>T(o)?I(s).apply(this,n):o,!0)}}function qt(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 i=await o;return T(i)?I(s).apply(this,n):i},Promise.resolve(!0))}}function er(){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),o=r.reduce((i,c)=>c.$watchTargets?i.concat(c.$watchTargets):i,[]);let s=()=>!1;return r.length&&(s=a?qt(r):Kt(r)),{$async:a,$validator:s,$watchTargets:o}}function tr(){return J({type:"and"},P("The value does not match all of the provided validators",er(...arguments)))}function rr(t){return function(r,n){if(!w(r))return!0;const a=I(t).call(this,r,n);return mt(a)?a.then(o=>!T(o)):!T(a)}}function nr(t){return{$validator:rr(t),$message:"The value does not match the provided validator",$params:{type:"not"}}}function ar(t){return r=>!w(r)||(!/\s/.test(r)||r instanceof Date)&&+r>=+e.unref(t)}function or(t){return{$validator:ar(t),$message:r=>{let{$params:n}=r;return`The minimum value allowed is ${n.min}`},$params:{min:t,type:"minValue"}}}function sr(t){return r=>!w(r)||(!/\s/.test(r)||r instanceof Date)&&+r<=+e.unref(t)}var ur=t=>({$validator:sr(t),$message:r=>{let{$params:n}=r;return`The maximum value allowed is ${n.max}`},$params:{max:t,type:"maxValue"}}),ir=x(/(^[0-9]*$)|(^-[0-9]+$)/),cr={$validator:ir,$message:"Value is not an integer",$params:{type:"integer"}},lr=x(/^[-]?\d*(\.\d+)?$/),dr={$validator:lr,$message:"Value must be decimal",$params:{type:"decimal"}};function Lr(t){let{t:r,messagePath:n=o=>{let{$validator:s}=o;return`validations.${s}`},messageParams:a=o=>o}=t;return function(s){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 s=="function"?function(){return P(d,s(...arguments))}:P(d,s)}}const we=Object.freeze(Object.defineProperty({__proto__:null,alpha:yt,alphaNum:ht,and:tr,between:Ct,createI18nMessage:Lr,decimal:dr,email:K,helpers:k,integer:cr,ipAddress:St,macAddress:Ot,maxLength:bt,maxValue:ur,minLength:At,minValue:or,not:nr,numeric:vt,or:Xt,required:q,requiredIf:Bt,requiredUnless:Qt,sameAs:Ut,url:Wt},Symbol.toStringTag,{value:"Module"})),he=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]:we[t](r)}}function pr(t,r,n){return{[t]:k.withMessage(n,we[t](r))}}function mr(){return{required:q}}function gr(t){return{required:k.withMessage(t,q)}}function fr(){return{email:K}}function jr(t){return{email:k.withMessage(t,K)}}function yr(){return{password:he}}function wr(t){return{password:k.withMessage(t,he)}}function hr(t,r){if(le(t)&&typeof r.message=="string"&&typeof r.value=="number")return pr(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 jr(r.message);if(Le(t)&&typeof r.message>"u")return fr();if(Me(t)&&typeof r.message=="string")return wr(r.message);if(Me(t)&&typeof r.message>"u")return yr();if(de(t)&&typeof r.message=="string")return gr(r.message);if(de(t)&&typeof r.message>"u")return mr();throw new Error("No valid rule detected")}const Nr=["id","name"],vr={key:0,class:"pdap-form-error-message"},Ne=e.defineComponent({__name:"PdapForm",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(f=>{const m={...f};return delete m.validators,m})),s=e.ref(o.value.reduce((f,m)=>{switch(m.type){case v.CHECKBOX:return{...f,[m.name]:String(m.defaultChecked)};case v.TEXT:case v.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,...hr(p,j)}),{});return{...f,[m.name]:{...u}}},{}),c=ut(i,s,{$autoDirty:!1,$lazy:!0}),l=e.ref(n.error);function d(f,m){const u=m.target,L=u.type===v.CHECKBOX&&typeof u.checked=="boolean"?u.checked.toString():u.value;s.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",{...s.value})}async function g(f){if(await c.value.$validate()){a("submit",{...s.value}),c.value.$reset(),f.target.reset(),s.value=Object.entries(s).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",vr,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(ye,e.mergeProps(u,{key:u.name,error:(L=e.unref(c)[u.name])!=null&&L.$error?(h=(j=(p=e.unref(c)[u.name])==null?void 0:p.$errors)==null?void 0:j[0])==null?void 0:h.$message:"",value:s.value[u.name],onChange:b=>d(u.name,b)}),null,16,["error","value","onChange"])}),128)),e.renderSlot(f.$slots,"default")],40,Nr))}});const $r={name:"GridContainer"},Cr=e.defineComponent({...$r,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",o=r.templateRows??`repeat(${r.rows}, minmax(0, 1fr))`,s=e.reactive({...a&&{gridTemplateRows:o},...r.templateColumns&&{gridTemplateColumns:r.templateColumns}});return(i,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.component),{class:e.normalizeClass(n),style:e.normalizeStyle(s)},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},8,["class","style"]))}}),Dr={name:"GridItem"},Tr=e.defineComponent({...Dr,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(o,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.component),{class:e.normalizeClass(n),style:e.normalizeStyle(a)},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"default")]),_:3},8,["class","style"]))}});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"],ve=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(()=>{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 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: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:`${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:s},e.toDisplayString(l.text),9,Ir)):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:s},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.text),1)]),_:2},1032,["to"])):e.createCommentVNode("",!0)]))),128))],14,Sr)],64))}});const zr="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA1MDkuNCAxMTEuNyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTA5LjQgMTExLjc7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBhdGggZD0iTTAsMTAwLjhMMjYuOCwzLjJoOS4zTDkuNCwxMDAuOEgweiIvPgo8cGF0aCBkPSJNMTIzLjIsMjdoLTQuN3YxNi42aC05LjFWMS45aDEzLjhjOS4zLDAsMTUuMiw0LjUsMTUuMiwxMi4zUzEzMi43LDI3LDEyMy4yLDI3eiBNMTIzLjIsOS42aC00Ljd2OS43aDQuNwoJYzQuMSwwLDYuMS0xLjYsNi4xLTVTMTI3LjMsOS42LDEyMy4yLDkuNkwxMjMuMiw5LjZ6Ii8+CjxwYXRoIGQ9Ik0xNTEuNCw0NC4zYy03LjIsMC0xMy01LjgtMTMtMTNzNS44LTEzLDEzLTEzczEzLjMsNS40LDEzLjMsMTIuOUMxNjQuNiwzOC40LDE1OC43LDQ0LjMsMTUxLjQsNDQuM3ogTTE1MS40LDI1LjMKCWMtMywwLTQuNiwzLjEtNC42LDUuOXMxLjYsNiw0LjcsNnM0LjYtMy4yLDQuNi02UzE1NC42LDI1LjMsMTUxLjQsMjUuM0wxNTEuNCwyNS4zeiIvPgo8cGF0aCBkPSJNMTY5LDQzLjZWMS45aDguOXY0MS43QzE3Ny45LDQzLjYsMTY5LDQzLjYsMTY5LDQzLjZ6Ii8+CjxwYXRoIGQ9Ik0xODMuNSwxNVY2LjhoOC45VjE1SDE4My41eiBNMTgzLjUsNDMuNlYxOWg4Ljl2MjQuNkgxODMuNXoiLz4KPHBhdGggZD0iTTIxMC4yLDQ0LjNjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNmwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMy00LjktMi4zCgljLTMuMSwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC45LTIuNUwyMjEsMzlDMjE4LDQyLjcsMjE1LDQ0LjMsMjEwLjIsNDQuM3oiLz4KPHBhdGggZD0iTTIzNi45LDQ0LjNjLTcuMiwwLTEzLjgtMy44LTEzLjgtMTMuMmMwLTguMiw1LjUtMTIuOCwxMi40LTEyLjhjNy44LDAsMTMuMSw1LjUsMTMuMSwxNC41aC0xNy4yYzAuMywyLjksMiw1LjIsNS41LDUuMgoJYzMuOCwwLDYuMS0wLjksOC4yLTIuNmwzLjgsNC44QzI0NS41LDQzLDI0MS4zLDQ0LjQsMjM2LjksNDQuM3ogTTIzNS4zLDI0Yy0yLjUsMC0zLjUsMS44LTQsNC4xaDguMUMyMzkuMywyNS42LDIzNy43LDI0LDIzNS4zLDI0egoJIi8+CjxwYXRoIGQ9Ik0yODAuMiw0My42aC0xMi42VjEuOWgxMi42YzExLjksMCwyMS43LDcuMywyMS43LDIwLjhDMzAxLjksMzYuNCwyOTEuMyw0My42LDI4MC4yLDQzLjZ6IE0yODAuMiw5LjZoLTMuNXYyNi4zaDMuNQoJYzcuOCwwLDEyLjMtNi4yLDEyLjMtMTMuMkMyOTIuNSwxNS40LDI4Ny41LDkuNiwyODAuMiw5LjZMMjgwLjIsOS42eiIvPgo8cGF0aCBkPSJNMzIyLjEsNDMuNnYtMS45Yy0yLjcsMS45LTQuMiwyLjYtOC41LDIuNmMtNC43LDAtOC45LTMtOC45LTcuN2MwLTcuNyw5LjQtOS4xLDE3LjQtOS41di0wLjljMC0xLjctMS4xLTIuMy0zLjYtMi4zCgljLTMuMSwwLTYuMSwwLjctOC44LDIuMWwtMi43LTUuM2MzLjMtMS44LDcuNC0yLjUsMTEuOC0yLjVjOC4yLDAsMTIuMiwyLjYsMTIuMiw5Ljd2MTUuN0gzMjIuMXogTTMyMi4xLDMyLjFjLTMuOCwwLTgsMC44LTgsMy42CgljMCwxLjQsMS40LDIuMywyLjksMi4zYzEuOSwwLjEsMy43LTAuNSw1LjEtMS44VjMyLjF6Ii8+CjxwYXRoIGQ9Ik0zNDUuOSw0My42Yy01LDAtOC4yLTMuOC04LjItOXYtOWgtMy4xVjE5aDMuMVY4LjdoOC45VjE5aDQuMnY2LjZoLTQuMlYzM2MwLDEuOSwxLDMuMiwyLjcsMy4yaDIuMnY3LjRMMzQ1LjksNDMuNnoiLz4KPHBhdGggZD0iTTM3Mi4yLDQzLjZ2LTEuOWMtMi43LDEuOS00LjIsMi42LTguNSwyLjZjLTQuNywwLTguOS0zLTguOS03LjdjMC03LjcsOS40LTkuMSwxNy40LTkuNXYtMC45YzAtMS43LTEuMS0yLjMtMy43LTIuMwoJYy0zLjEsMC02LjEsMC43LTguOCwyLjFsLTIuOC01LjNjMy4zLTEuOCw3LjQtMi41LDExLjgtMi41YzguMiwwLDEyLjIsMi42LDEyLjIsOS43djE1LjdIMzcyLjJ6IE0zNzIuMiwzMi4xYy0zLjgsMC04LDAuOC04LDMuNgoJYzAsMS40LDEuNCwyLjMsMi45LDIuM2MxLjksMC4xLDMuNy0wLjUsNS4xLTEuOFYzMi4xeiIvPgo8cGF0aCBkPSJNNTYuNCwxMDAuOGwtMy4yLTEwLjVINDAuNWwtMy4zLDEwLjVoLTkuN2wxNC45LTQxLjdoOC44bDE1LjEsNDEuN0g1Ni40eiBNNDcuOCw3Mi40Yy0wLjQtMS4zLTAuOS0zLTAuOS0zLjMKCWMwLDAuMi0wLjUsMS45LTAuOCwzLjNMNDMsODIuNmg4TDQ3LjgsNzIuNHoiLz4KPHBhdGggZD0iTTgxLjYsMTAxLjVjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNmwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMy00LjktMi4zCgljLTMuMiwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC44LTIuNWw1LjksNC4yQzg5LjQsOTkuOSw4Ni4zLDEwMS41LDgxLjYsMTAxLjV6Ii8+CjxwYXRoIGQ9Ik0xMDgsMTAxLjVjLTcuOCwwLTEzLjUtNS42LTEzLjUtMTIuOWMwLTcuMSw1LjctMTMuMSwxMy41LTEzLjFjMy45LTAuMiw3LjYsMS41LDEwLDQuNWwtNS4xLDQuN2MtMS4yLTEuNC0zLTIuMi00LjktMi4yCgljLTMuMSwwLTUuMywyLjYtNS4zLDYuMWMwLDMsMi4xLDUuOSw1LjMsNS45YzIuMywwLDMuNS0wLjksNC44LTIuNWw2LDQuMkMxMTUuOCw5OS45LDExMi44LDEwMS41LDEwOCwxMDEuNXoiLz4KPHBhdGggZD0iTTEzNC42LDEwMS41Yy03LjIsMC0xMy44LTMuOC0xMy44LTEzLjJjMC04LjIsNS41LTEyLjgsMTIuNC0xMi44YzcuOCwwLDEzLjEsNS41LDEzLjEsMTQuNWgtMTcuMmMwLjMsMi44LDIsNS4yLDUuNSw1LjIKCWMzLjgsMCw2LjEtMC44LDguMi0yLjZsMy44LDQuOEMxNDMuMywxMDAuMiwxMzksMTAxLjYsMTM0LjYsMTAxLjV6IE0xMzMuMSw4MS4yYy0yLjUsMC0zLjUsMS44LTMuOSw0LjFoOC4xCglDMTM3LDgyLjgsMTM1LjQsODEuMiwxMzMuMSw4MS4yeiIvPgo8cGF0aCBkPSJNMTYwLDEwMS41Yy0zLjgsMC04LTAuOS0xMC42LTIuOGwyLjktNS42YzEuOSwxLjMsNC4yLDIsNi41LDIuMWMxLjksMCwyLjktMC42LDIuOS0xLjRjMC0xLjMtMS41LTEuOS0zLjUtMi42CgljLTMuMy0xLjMtNy44LTIuOC03LjgtOC4yYzAtNC45LDQuMi03LjUsMTAuMy03LjVjMy4yLTAuMSw2LjMsMC43LDksMi4zbC0yLjUsNS41Yy0xLjktMS4xLTQuMS0xLjYtNi4zLTEuNmMtMS40LDAtMi43LDAuMi0yLjcsMS4zCgljMCwwLjksMiwxLjUsNC40LDIuNGMzLjYsMS4zLDgsMy40LDgsOC4zQzE3MC40LDk5LjMsMTY1LjQsMTAxLjUsMTYwLDEwMS41eiIvPgo8cGF0aCBkPSJNMTgzLjEsMTAxLjVjLTMuOCwwLTgtMC45LTEwLjYtMi44bDIuOS01LjZjMS45LDEuMyw0LjIsMiw2LjUsMi4xYzEuOSwwLDIuOS0wLjYsMi45LTEuNGMwLTEuMy0xLjUtMS45LTMuNS0yLjYKCWMtMy4zLTEuMy03LjgtMi44LTcuOC04LjJjMC00LjksNC4yLTcuNSwxMC4zLTcuNWMzLjItMC4xLDYuMywwLjcsOSwyLjNsLTIuNSw1LjVjLTEuOS0xLjEtNC4xLTEuNi02LjMtMS42Yy0xLjQsMC0yLjcsMC4yLTIuNywxLjMKCWMwLDAuOSwyLDEuNSw0LjQsMi40YzMuNiwxLjMsOCwzLjQsOCw4LjNDMTkzLjUsOTkuMywxODguNSwxMDEuNSwxODMuMSwxMDEuNXoiLz4KPHBhdGggZD0iTTE5Ny44LDcyLjJWNjRoOC45djguMUwxOTcuOCw3Mi4yeiBNMTk3LjgsMTAwLjhWNzYuMmg4Ljl2MjQuNkMyMDYuNywxMDAuOCwxOTcuOCwxMDAuOCwxOTcuOCwxMDAuOHoiLz4KPHBhdGggZD0iTTIyOC43LDEwMS41Yy0zLDAtNi4xLTEuMy03LjQtMy4ydjIuNWgtOC45VjU5LjFoOC45djE5LjZjMS40LTEuOSw0LjUtMy4yLDcuNC0zLjJjNi45LDAsMTEuNSw2LjMsMTEuNSwxMwoJQzI0MC4yLDk1LjQsMjM1LjYsMTAxLjUsMjI4LjcsMTAxLjV6IE0yMjYuMyw4Mi43Yy0zLDAtNS4xLDIuMy01LjEsNS43czIsNS44LDUuMSw1LjhjMi45LDAsNS0yLjQsNS01LjhTMjI5LjIsODIuNywyMjYuMyw4Mi43eiIvPgo8cGF0aCBkPSJNMjQ0LjUsNzIuMlY2NGg4Ljl2OC4xTDI0NC41LDcyLjJ6IE0yNDQuNSwxMDAuOFY3Ni4yaDguOXYyNC42QzI1My40LDEwMC44LDI0NC41LDEwMC44LDI0NC41LDEwMC44eiIvPgo8cGF0aCBkPSJNMjU5LDEwMC44VjU5LjFoOC45djQxLjdIMjU5eiIvPgo8cGF0aCBkPSJNMjczLjYsNzIuMlY2NGg4Ljl2OC4xTDI3My42LDcyLjJ6IE0yNzMuNiwxMDAuOFY3Ni4yaDguOXYyNC42QzI4Mi41LDEwMC44LDI3My42LDEwMC44LDI3My42LDEwMC44eiIvPgo8cGF0aCBkPSJNMjk3LjYsMTAwLjhjLTUsMC04LjItMy44LTguMi05di05aC0zLjF2LTYuNmgzLjFWNjUuOWg4Ljl2MTAuMmg0LjJ2Ni42aC00LjJ2Ny40YzAsMS45LDEsMy4yLDIuNywzLjJoMi4ydjcuNGgtNS42VjEwMC44egoJIi8+CjxwYXRoIGQ9Ik0zMjEuNiwxMDYuM2MtMS4xLDMuMi0zLjIsNS40LTcsNS40aC01LjF2LTcuMmgxLjljMS43LDAsMy40LTEsMy40LTIuNWMwLTEuMi0wLjItMi4zLTAuNy0zLjRsLTguNS0yMi40aDkuM2wzLjQsMTEuMgoJYzAuNSwxLjQsMC44LDMuMSwwLjgsMy4xczAuNC0xLjYsMC44LTMuMWwyLjktMTEuMmg5LjJMMzIxLjYsMTA2LjN6Ii8+CjxwYXRoIGQ9Ik0zNjIsODQuMmgtNC43djE2LjZoLTkuMVY1OS4xSDM2MmM5LjMsMCwxNS4zLDQuNSwxNS4zLDEyLjNTMzcxLjUsODQuMiwzNjIsODQuMnogTTM2Miw2Ni44aC00Ljd2OS43aDQuNwoJYzQuMSwwLDYuMS0xLjYsNi4xLTVTMzY2LjEsNjYuOCwzNjIsNjYuOHoiLz4KPHBhdGggZD0iTTM5NS44LDg1LjNjLTEuMS0xLTIuNS0xLjUtMy45LTEuNWMtMi45LDAtNC4xLDIuMy00LjEsNC45djEyLjFoLTguOVY3Ni4yaDguOXYzLjNjMS4zLTIuNCwzLjctMy44LDYuNC0zLjkKCWMyLjItMC4xLDQuNCwwLjgsNS45LDIuM0wzOTUuOCw4NS4zeiIvPgo8cGF0aCBkPSJNNDEyLjgsMTAxLjVjLTcuMiwwLTEzLTUuOC0xMy0xM3M1LjgtMTMsMTMtMTNzMTMuMyw1LjQsMTMuMywxMi45QzQyNi4xLDk1LjYsNDIwLjEsMTAxLjUsNDEyLjgsMTAxLjV6IE00MTIuOCw4Mi41CgljLTMsMC00LjYsMy4xLTQuNiw1LjlzMS42LDYsNC43LDZzNC42LTMuMiw0LjYtNi4xUzQxNiw4Mi41LDQxMi44LDgyLjVMNDEyLjgsODIuNXoiLz4KPHBhdGggZD0iTTQzMC42LDExMWgtNS40di03LjRoMi4yYzEuMiwwLDEuNS0xLjEsMS41LTIuOFY3Ni4yaDguOXYyNy4yQzQzNy44LDEwOCw0MzUuNCwxMTEsNDMwLjYsMTExeiBNNDI5LDcyLjJWNjRoOC45djguMQoJTDQyOSw3Mi4yeiIvPgo8cGF0aCBkPSJNNDU0LjUsMTAxLjVjLTcuMiwwLTEzLjgtMy44LTEzLjgtMTMuMmMwLTguMiw1LjUtMTIuOCwxMi40LTEyLjhjNy44LDAsMTMuMSw1LjUsMTMuMSwxNC41SDQ0OWMwLjMsMi44LDIuMSw1LjIsNS41LDUuMgoJYzMuOCwwLDYuMS0wLjgsOC4yLTIuNmwzLjgsNC44QzQ2My4yLDEwMC4yLDQ1OC45LDEwMS42LDQ1NC41LDEwMS41eiBNNDUzLDgxLjJjLTIuNSwwLTMuNSwxLjgtMy45LDQuMWg4LjEKCUM0NTYuOSw4Mi44LDQ1NS4zLDgxLjIsNDUzLDgxLjJ6Ii8+CjxwYXRoIGQ9Ik00ODEuNiwxMDEuNWMtNy44LDAtMTMuNS01LjYtMTMuNS0xMi45YzAtNy4xLDUuNy0xMy4xLDEzLjUtMTMuMWMzLjktMC4yLDcuNiwxLjUsMTAsNC42bC01LjEsNC43Yy0xLjItMS40LTMtMi4zLTQuOS0yLjMKCWMtMy4xLDAtNS4zLDIuNi01LjMsNi4xYzAsMywyLjEsNS45LDUuMyw1LjljMi4zLDAsMy41LTAuOSw0LjktMi41bDUuOSw0LjJDNDg5LjQsOTkuOSw0ODYuNCwxMDEuNSw0ODEuNiwxMDEuNXoiLz4KPHBhdGggZD0iTTUwMy45LDEwMC44Yy01LDAtOC4yLTMuOC04LjItOXYtOWgtMy4xdi02LjZoMy4xVjY1LjloOC45djEwLjJoNC4ydjYuNmgtNC4ydjcuNGMwLDEuOSwxLDMuMiwyLjcsMy4yaDIuMnY3LjRoLTUuNlYxMDAuOHoKCSIvPgo8cG9seWdvbiBwb2ludHM9IjkxLjcsMjAuMiA3Ni4yLDIwLjIgODguNCw4IDgzLjEsMi43IDcxLjUsMTQuMyA3MS41LDAgNjQsMCA2NCwxNC4zIDUyLjMsMi43IDQ3LDggNTkuMiwyMC4yIDQzLjcsMjAuMiA0My43LDI3LjggCgk1OC4xLDI3LjggNDcsMzguOCA1Mi4zLDQ0LjEgNjQsMzIuNSA2NCw0OCA3MS41LDQ4IDcxLjUsMzIuNSA4My4xLDQ0LjEgODguNCwzOC44IDc3LjQsMjcuOCA5MS43LDI3LjggIi8+Cjwvc3ZnPgo=",Or=["href"],kr=["src"],br=["src"],_r=e.defineComponent({__name:"PdapHeader",props:{logoImageSrc:{default:zr},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(i,c)=>(e.openBlock(),e.createElementBlock("header",{ref_key:"el",ref:a,class:"pdap-header"},[e.unref(o)?(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,br)]),_: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,kr)],8,Or)),e.createVNode(ve,{"top-position":n.value},null,8,["top-position"])],512))}});const Ar=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),Pr={class:"pdap-quick-search-form h-full max-h-[75-vh] justify-start p-0"},Yr={class:"max-w-[unset] text-med"},Br=["href"],Vr=["href"],Qr=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: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 i(l){o.value&&Object.values(l).some(Boolean)&&(o.value=void 0)}function c(l){if(Object.values(l).every(g=>!g)){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,[Ar,e.createElementVNode("div",Pr,[e.createVNode(Ne,{id:"quick-search-form",class:"flex flex-wrap gap-x-4",error:o.value,schema:a,name:"quickSearchForm",onChange:i,onSubmit:c},{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",Yr,[e.createTextVNode(" For example, you could search for "),e.unref(s)?(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,Br)),e.createTextVNode(" or "),e.unref(s)?(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,Vr)),e.createTextVNode(" . ")])])],64))}});const Rr=["alt","src"],Ur=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,Rr))}});var _=(t=>(t.PRESS="press",t.HOVER="hover",t))(_||{});const $e={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))}},Fr=["onKeydown"],Gr=["aria-hidden"],pe="pdap-dropdown",Wr=e.defineComponent({__name:"PdapDropdown",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=e.ref(null),s=e.ref(null),i=e.ref(n.defaultOpen),c=e.computed(()=>n.triggerOn===_.HOVER);function l(u){a("press",u),n.triggerOn===_.PRESS&&d()}const d=()=>{n.disabled||(i.value=!i.value,a("update:open",i.value))};function M(){i.value=!0,a("update:open",!0)}function g(){i.value=!1,a("update:open",!1)}function f(){var j,h;if(!o.value)return;o.value.style.display="flex",o.value.style.setProperty("max-height","max-content");const u=o.value.scrollHeight;o.value.style.display="none",o.value.style.removeProperty("max-height");const L=document==null?void 0:document.querySelector(":root"),p=(j=L==null?void 0:L.style)==null?void 0:j.getPropertyValue("--dropdown-content-max-height");Number((h=p==null?void 0:p.match(/\d+/))==null?void 0:h.join(""))>=u||o.value&&L&&L.style.setProperty("--dropdown-content-max-height",`${u+16}px`)}const m={mouseenter:c.value?M:void 0,focus:c.value?M:void 0,focusin:c.value?M:void 0,focusout:c.value?g:void 0,mouseleave:c.value?g:void 0,blur:c.value?g:void 0};return e.onMounted(()=>{f()}),(u,L)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({ref_key:"dropdownRef",ref:s,class:"pdap-dropdown",onKeydown:e.withKeys(g,["escape"])},e.toHandlers(m,!0)),[e.createVNode(e.unref(Z),{"aria-controls":pe,"aria-expanded":i.value,disabled:u.disabled,"aria-haspopup":"true",intent:"tertiary",class:e.normalizeClass({"pdap-dropdown-trigger":!0,"pointer-events-none":u.disabled,"cursor-not-allowed":u.disabled}),"data-test":"dropdown-trigger",onClick:e.withModifiers(l,["prevent","stop"]),onKeydown:e.withKeys(e.withModifiers(l,["prevent","stop"]),["enter","space"])},{default:e.withCtx(()=>[e.renderSlot(u.$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:pe,ref_key:"contentRef",ref:o,"aria-hidden":!i.value,class:"pdap-dropdown-content","data-test":"dropdown-content",role:"menu"},[e.renderSlot(u.$slots,"content")],8,Gr),[[e.vShow,i.value]])]),_:3})],16,Fr)),[[e.unref($e),g]])}});function Hr(t){const r=[];for(const n of t.matched){const{name:a,path:o,meta:s}=n,i=s.breadcrumbText??a;i&&r.push({text:i,path:o,active:!1})}return r.length>0&&(r[r.length-1].active=!0),r}const Zr={"aria-label":"Breadcrumb"},Jr={key:1},Xr=e.defineComponent({__name:"PdapBreadcrumbs",setup(t){const r=z.useRoute(),n=e.computed(()=>Hr(r));return(a,o)=>{const s=e.resolveComponent("router-link");return e.openBlock(),e.createElementBlock("nav",Zr,[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",Jr,e.toDisplayString(i.text),1)):(e.openBlock(),e.createBlock(s,{key:0,to:i.path},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.text),1)]),_:2},1032,["to"]))],2))),128))]),_:1})])}}});const Kr=(t,r)=>{const n=t.__vccOpts||t;for(const[a,o]of r)n[a]=o;return n},qr=Kr(Xr,[["__scopeId","data-v-91ca33c0"]]);const en={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=qr;exports.Button=Z;exports.Dropdown=Wr;exports.FlexContainer=ke;exports.Footer=He;exports.Form=Ne;exports.GridContainer=Cr;exports.GridItem=Tr;exports.Header=_r;exports.Input=ye;exports.Nav=ve;exports.PdapDropdownTriggerType=_;exports.PdapInputTypes=v;exports.QuickSearchForm=Qr;exports.TileIcon=Ur;exports.tailwindConfig=en;exports.vOnClickOutside=$e;
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './components';
2
2
  import './styles/styles.css';
3
3
  export * from './components/Button/types';
4
+ export * from './components/Dropdown/types';
4
5
  export * from './components/FlexContainer/types';
5
6
  export * from './components/Footer/types';
6
7
  export * from './components/Form/types';
@@ -11,3 +12,4 @@ export * from './components/Input/types';
11
12
  export * from './components/Nav/types';
12
13
  export * from './components/TileIcon/types';
13
14
  export * from './config';
15
+ export * from './directives';