@hbuesing/ui-library 4.0.1 → 5.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/chunks/chunk-6WQJC5LW.js +2 -0
  2. package/dist/chunks/chunk-6WQJC5LW.js.map +7 -0
  3. package/dist/chunks/chunk-QJ2JCVTI.js +2 -0
  4. package/dist/chunks/chunk-QJ2JCVTI.js.map +7 -0
  5. package/dist/chunks/chunk-TWVAPPO3.js +2 -0
  6. package/dist/chunks/chunk-TWVAPPO3.js.map +7 -0
  7. package/dist/chunks/chunk-X5MLSG6J.js +2 -0
  8. package/dist/chunks/chunk-X5MLSG6J.js.map +7 -0
  9. package/dist/chunks/chunk-YI2EBQL3.js +2 -0
  10. package/dist/chunks/chunk-YI2EBQL3.js.map +7 -0
  11. package/dist/chunks/chunk-YW4Y6JNX.js +2 -0
  12. package/dist/chunks/chunk-YW4Y6JNX.js.map +7 -0
  13. package/dist/chunks/chunk-ZUB437SZ.js +388 -0
  14. package/dist/chunks/chunk-ZUB437SZ.js.map +7 -0
  15. package/dist/components/button/customButton.d.ts +14 -0
  16. package/dist/components/button/index.js +2 -0
  17. package/dist/components/button/index.js.map +7 -0
  18. package/dist/components/checkbox/customCheckbox.d.ts +12 -0
  19. package/dist/components/checkbox/index.js +2 -0
  20. package/dist/components/checkbox/index.js.map +7 -0
  21. package/dist/components/images/index.js +2 -0
  22. package/dist/components/images/index.js.map +7 -0
  23. package/dist/components/images/svgIcon.d.ts +8 -0
  24. package/dist/components/input/baseInput.d.ts +1 -1
  25. package/dist/components/input/customInput.d.ts +12 -0
  26. package/dist/components/input/index.js +2 -0
  27. package/dist/components/input/index.js.map +7 -0
  28. package/dist/components/input/passwordInput.d.ts +28 -0
  29. package/dist/components/modal/index.js +2 -0
  30. package/dist/components/modal/index.js.map +7 -0
  31. package/dist/components/modal/notifyModal.d.ts +16 -1
  32. package/dist/components/modal/questionModal.d.ts +17 -1
  33. package/dist/components/radio/customRadio.d.ts +24 -0
  34. package/dist/components/radio/index.js +2 -0
  35. package/dist/components/radio/index.js.map +7 -0
  36. package/dist/hooks/{clickOutside.d.ts → clickOutside/clickOutside.d.ts} +1 -1
  37. package/dist/hooks/{index.d.ts → clickOutside/index.d.ts} +0 -1
  38. package/dist/hooks/clickOutside/index.js +2 -0
  39. package/dist/hooks/clickOutside/index.js.map +7 -0
  40. package/dist/hooks/getColor/index.d.ts +1 -0
  41. package/dist/hooks/getColor/index.js +2 -0
  42. package/dist/hooks/getColor/index.js.map +7 -0
  43. package/package.json +11 -3
  44. package/dist/bundle.js +0 -2
  45. package/dist/bundle.js.map +0 -1
  46. package/dist/index.d.ts +0 -7
  47. /package/dist/hooks/{getColor.d.ts → getColor/getColor.d.ts} +0 -0
@@ -0,0 +1,2 @@
1
+ var i=Object.defineProperty,j=Object.defineProperties;var k=Object.getOwnPropertyDescriptors;var e=Object.getOwnPropertySymbols;var g=Object.prototype.hasOwnProperty,h=Object.prototype.propertyIsEnumerable;var f=(a,b,c)=>b in a?i(a,b,{enumerable:!0,configurable:!0,writable:!0,value:c}):a[b]=c,l=(a,b)=>{for(var c in b||(b={}))g.call(b,c)&&f(a,c,b[c]);if(e)for(var c of e(b))h.call(b,c)&&f(a,c,b[c]);return a},m=(a,b)=>j(a,k(b));var n=(a,b)=>{var c={};for(var d in a)g.call(a,d)&&b.indexOf(d)<0&&(c[d]=a[d]);if(a!=null&&e)for(var d of e(a))b.indexOf(d)<0&&h.call(a,d)&&(c[d]=a[d]);return c};export{l as a,m as b,n as c};
2
+ //# sourceMappingURL=chunk-6WQJC5LW.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,2 @@
1
+ import{a as i}from"./chunk-ZUB437SZ.js";import{a as t}from"./chunk-X5MLSG6J.js";import{a as u,c as a}from"./chunk-6WQJC5LW.js";import p,{useRef as C}from"react";function P(d){let l=d,{disabled:o=!1,label:c,small:n=!1,theme:e}=l,b=a(l,["disabled","label","small","theme"]),s=C(null);i(s);function f(){if(!(o||!e)){if(e.includes("#"))return{color:t(e),backgroundColor:e,border:"transparent"};switch(e){case"success":return{color:t("#006A4E"),backgroundColor:"#006A4E",border:"transparent"};case"warning":return{color:"#000000",backgroundColor:"#FFD700",border:"transparent"};case"error":return{color:t("#800020"),backgroundColor:"#800020",border:"transparent"};default:throw new Error("invalid theme provided")}}}function m(){let r="uil-button uil-fit";return o?n?`${r} uil-disabled uil-small`:`${r} uil-font-base uil-disabled`:n?`${r} uil-small`:`${r} uil-font-base`}return p.createElement("button",u({className:m(),style:f(),disabled:o,ref:s},b),c)}export{P as a};
2
+ //# sourceMappingURL=chunk-QJ2JCVTI.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/button/customButton.tsx"],
4
+ "sourcesContent": ["import React, {ComponentPropsWithoutRef, CSSProperties, useRef} from 'react';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\nimport {useGetColor} from 'hooks/getColor/getColor';\n\ntype HEXColor = `#${string}`\n\ninterface ICustomButton extends ComponentPropsWithoutRef<'button'> {\n label : string;\n disabled?: boolean;\n small? : boolean;\n theme? : HEXColor | 'success' | 'warning' | 'error';\n}\n\n/**\n * @example\n * ```jsx\n * <CustomButton\n * label={'Click Me!'}\n * disabled={false}\n * small={true}\n * theme={'success'}\n * onClick={() => {ClickFunction()}}\n * />\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/button)\n */\nexport function CustomButton(props: ICustomButton) {\n const {\n disabled = false,\n label,\n small = false,\n theme,\n ...buttonProps\n } = props;\n\n const nodeRef = useRef<HTMLButtonElement>(null);\n useInjectStyleSheet(nodeRef);\n\n function getStyle(): CSSProperties | undefined {\n if (disabled || !theme) return undefined;\n\n if (theme.includes('#')) {\n return {\n color: useGetColor(theme),\n backgroundColor: theme,\n border: 'transparent'\n };\n }\n\n switch (theme) {\n case 'success':\n return {\n color: useGetColor('#006A4E'),\n backgroundColor: '#006A4E',\n border: 'transparent'\n };\n case 'warning':\n return {\n color: '#000000',\n backgroundColor: '#FFD700',\n border: 'transparent'\n };\n case 'error':\n return {\n color: useGetColor('#800020'),\n backgroundColor: '#800020',\n border: 'transparent'\n };\n default:\n throw new Error('invalid theme provided')\n }\n }\n\n function getClassName(): string {\n const base = 'uil-button uil-fit'\n\n if (disabled) {\n if (small) {\n return `${base} uil-disabled uil-small`;\n }\n\n return `${base} uil-font-base uil-disabled`;\n }\n\n if (small) {\n return `${base} uil-small`;\n }\n\n return `${base} uil-font-base`;\n }\n\n return (\n <button className={getClassName()} style={getStyle()} disabled={disabled} ref={nodeRef} {...buttonProps}>\n {label}\n </button>\n );\n}"],
5
+ "mappings": "+HAAA,OAAOA,GAAiD,UAAAC,MAAa,QA2B9D,SAASC,EAAaC,EAAsB,CACjD,IAMIC,EAAAD,EALF,UAAAE,EAAW,GACX,MAAAC,EACA,MAAAC,EAAQ,GACR,MAAAC,CAhCJ,EAkCMJ,EADCK,EAAAC,EACDN,EADC,CAJH,WACA,QACA,QACA,UAIIO,EAAUC,EAA0B,IAAI,EAC9CC,EAAoBF,CAAO,EAE3B,SAASG,GAAsC,CAC7C,GAAI,EAAAT,GAAY,CAACG,GAEjB,IAAIA,EAAM,SAAS,GAAG,EACpB,MAAO,CACL,MAAOO,EAAYP,CAAK,EACxB,gBAAiBA,EACjB,OAAQ,aACV,EAGF,OAAQA,EAAO,CACb,IAAK,UACH,MAAO,CACL,MAAOO,EAAY,SAAS,EAC5B,gBAAiB,UACjB,OAAQ,aACV,EACF,IAAK,UACH,MAAO,CACL,MAAO,UACP,gBAAiB,UACjB,OAAQ,aACV,EACF,IAAK,QACH,MAAO,CACL,MAAOA,EAAY,SAAS,EAC5B,gBAAiB,UACjB,OAAQ,aACV,EACF,QACE,MAAM,IAAI,MAAM,wBAAwB,CAC5C,EACF,CAEA,SAASC,GAAuB,CAC9B,IAAMC,EAAO,qBAEb,OAAIZ,EACEE,EACK,GAAGU,CAAI,0BAGT,GAAGA,CAAI,8BAGZV,EACK,GAAGU,CAAI,aAGT,GAAGA,CAAI,gBAChB,CAEA,OACEC,EAAA,cAAC,SAAAC,EAAA,CAAO,UAAWH,EAAa,EAAG,MAAOF,EAAS,EAAG,SAAUT,EAAU,IAAKM,GAAaF,GACzFH,CACH,CAEJ",
6
+ "names": ["React", "useRef", "CustomButton", "props", "_a", "disabled", "label", "small", "theme", "buttonProps", "__objRest", "nodeRef", "useRef", "useInjectStyleSheet", "getStyle", "useGetColor", "getClassName", "base", "React", "__spreadValues"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{useEffect as u,useRef as c}from"react";function i(n){let e=c(null);return u(()=>{if(!e.current)return;function t(r){e.current&&!e.current.contains(r.target)&&n()}return document.addEventListener("click",t),document.addEventListener("touchend",t),()=>{document.removeEventListener("click",t),document.removeEventListener("touchend",t)}},[n]),e}export{i as a};
2
+ //# sourceMappingURL=chunk-TWVAPPO3.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/clickOutside/clickOutside.ts"],
4
+ "sourcesContent": ["import {useEffect, useRef} from 'react';\n\nexport function useClickOutsideRef<T extends HTMLElement>(callback: () => void) {\n const ref = useRef<T>(null);\n\n useEffect(() => {\n if (!ref.current) return;\n\n function handleClickOutside (event: MouseEvent | TouchEvent) {\n if (ref.current && !ref.current.contains(event.target as Node)) {\n callback();\n }\n }\n\n document.addEventListener('click', handleClickOutside);\n document.addEventListener('touchend', handleClickOutside);\n\n return () => {\n document.removeEventListener('click', handleClickOutside);\n document.removeEventListener('touchend', handleClickOutside);\n };\n }, [callback]);\n\n return ref;\n}"],
5
+ "mappings": "AAAA,OAAQ,aAAAA,EAAW,UAAAC,MAAa,QAEzB,SAASC,EAA0CC,EAAsB,CAC9E,IAAMC,EAAMH,EAAU,IAAI,EAE1B,OAAAD,EAAU,IAAM,CACd,GAAI,CAACI,EAAI,QAAS,OAElB,SAASC,EAAoBC,EAAgC,CACvDF,EAAI,SAAW,CAACA,EAAI,QAAQ,SAASE,EAAM,MAAc,GAC3DH,EAAS,CAEb,CAEA,gBAAS,iBAAiB,QAASE,CAAkB,EACrD,SAAS,iBAAiB,WAAYA,CAAkB,EAEjD,IAAM,CACX,SAAS,oBAAoB,QAASA,CAAkB,EACxD,SAAS,oBAAoB,WAAYA,CAAkB,CAC7D,CACF,EAAG,CAACF,CAAQ,CAAC,EAENC,CACT",
6
+ "names": ["useEffect", "useRef", "useClickOutsideRef", "callback", "ref", "handleClickOutside", "event"]
7
+ }
@@ -0,0 +1,2 @@
1
+ function i(t){if(t.length!==7)throw new Error("provided hex color must be 7 characters (including #) long");t=t.substring(1,7);let s=[parseInt(t.substring(0,2),16)/255,parseInt(t.substring(2,4),16)/255,parseInt(t.substring(4,6),16)/255].map(n=>n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4));return .2126*s[0]+.7152*s[1]+.0722*s[2]>.179?"#000000":"#ffffff"}export{i as a};
2
+ //# sourceMappingURL=chunk-X5MLSG6J.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/getColor/getColor.ts"],
4
+ "sourcesContent": ["export function useGetColor(backgroundColor: string) {\n if (backgroundColor.length !== 7) throw new Error('provided hex color must be 7 characters (including #) long');\n\n backgroundColor = backgroundColor.substring(1, 7);\n const uiColors = [\n parseInt(backgroundColor.substring(0, 2), 16) / 255,\n parseInt(backgroundColor.substring(2, 4), 16) / 255,\n parseInt(backgroundColor.substring(4, 6), 16) / 255\n ];\n const c = uiColors.map(col => {\n return col <= 0.03928? (col / 12.92) : Math.pow((col + 0.055) / 1.055, 2.4);\n });\n const contrast = (0.2126 * c[0]) + (0.7152 * c[1]) + (0.0722 * c[2]);\n\n return contrast > 0.179 ? '#000000' : '#ffffff';\n}"],
5
+ "mappings": "AAAO,SAASA,EAAYC,EAAyB,CACnD,GAAIA,EAAgB,SAAW,EAAG,MAAM,IAAI,MAAM,4DAA4D,EAE9GA,EAAkBA,EAAgB,UAAU,EAAG,CAAC,EAMhD,IAAMC,EALW,CACf,SAASD,EAAgB,UAAU,EAAG,CAAC,EAAG,EAAE,EAAI,IAChD,SAASA,EAAgB,UAAU,EAAG,CAAC,EAAG,EAAE,EAAI,IAChD,SAASA,EAAgB,UAAU,EAAG,CAAC,EAAG,EAAE,EAAI,GAClD,EACmB,IAAIE,GACdA,GAAO,OAAUA,EAAM,MAAS,KAAK,KAAKA,EAAM,MAAS,MAAO,GAAG,CAC3E,EAGD,MAFkB,OAASD,EAAE,CAAC,EAAM,MAASA,EAAE,CAAC,EAAM,MAASA,EAAE,CAAC,EAEhD,KAAQ,UAAY,SACxC",
6
+ "names": ["useGetColor", "backgroundColor", "c", "col"]
7
+ }
@@ -0,0 +1,2 @@
1
+ function e(t){let n=String(Date.now().toString(32)+Math.random().toString(16)).replace(/\./g,"");return`${t}-${n}`}export{e as a};
2
+ //# sourceMappingURL=chunk-YI2EBQL3.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/generateKey.ts"],
4
+ "sourcesContent": ["export default function generateKey(prefix: string | number) {\n const id = String(Date.now().toString(32) + Math.random().toString(16)).replace(/\\./g, '');\n\n return `${prefix}-${id}`;\n}"],
5
+ "mappings": "AAAe,SAARA,EAA6BC,EAAyB,CAC3D,IAAMC,EAAK,OAAO,KAAK,IAAI,EAAE,SAAS,EAAE,EAAI,KAAK,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,MAAO,EAAE,EAEzF,MAAO,GAAGD,CAAM,IAAIC,CAAE,EACxB",
6
+ "names": ["generateKey", "prefix", "id"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{a as s}from"./chunk-ZUB437SZ.js";import e,{useRef as l}from"react";function v(i){let{color:o,height:n,src:r,width:g}=i;if(!r.includes(".svg"))throw new Error("Provided src is not an svg image");let h={fill:o,height:n,width:g},t=l(null);return s(t),e.createElement("div",{ref:t,className:"uil-svg-wrapper"},e.createElement("svg",{"aria-hidden":!0,className:"uil-svg",style:h},e.createElement("use",{href:r})))}export{v as a};
2
+ //# sourceMappingURL=chunk-YW4Y6JNX.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/images/svgIcon.tsx"],
4
+ "sourcesContent": ["import React, {ComponentPropsWithoutRef, CSSProperties, useRef} from 'react';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\n\ninterface ISvgIcon extends ComponentPropsWithoutRef<'svg'>{\n src : string;\n color? : string | undefined;\n height?: number;\n width? : number;\n}\n\n/**\n * @example\n * ```jsx\n * <SVG src={\"foo/bar.png\"} />\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/images).\n */\nexport function SVG(props: ISvgIcon) {\n const {\n color,\n height,\n src,\n width\n } = props;\n\n if (!src.includes('.svg')) {\n throw new Error('Provided src is not an svg image');\n }\n\n const style: CSSProperties = {\n fill: color,\n height: height,\n width: width,\n }\n\n const nodeRef = useRef<HTMLDivElement>(null);\n useInjectStyleSheet(nodeRef);\n\n return (\n <div ref={nodeRef} className={'uil-svg-wrapper'}>\n <svg aria-hidden={true} className={'uil-svg'} style={style}>\n <use href={src}/>\n </svg>\n </div>\n );\n}"],
5
+ "mappings": "wCAAA,OAAOA,GAAiD,UAAAC,MAAa,QAkB9D,SAASC,EAAIC,EAAiB,CACnC,GAAM,CACJ,MAAAC,EACA,OAAAC,EACA,IAAAC,EACA,MAAAC,CACF,EAAIJ,EAEJ,GAAI,CAACG,EAAI,SAAS,MAAM,EACtB,MAAM,IAAI,MAAM,kCAAkC,EAGpD,IAAME,EAAuB,CAC3B,KAAMJ,EACN,OAAQC,EACR,MAAOE,CACT,EAEME,EAAUC,EAAuB,IAAI,EAC3C,OAAAC,EAAoBF,CAAO,EAGzBG,EAAA,cAAC,OAAI,IAAKH,EAAS,UAAW,mBAC5BG,EAAA,cAAC,OAAI,cAAa,GAAM,UAAW,UAAW,MAAOJ,GACnDI,EAAA,cAAC,OAAI,KAAMN,EAAI,CACjB,CACF,CAEJ",
6
+ "names": ["React", "useRef", "SVG", "props", "color", "height", "src", "width", "style", "nodeRef", "useRef", "useInjectStyleSheet", "React"]
7
+ }
@@ -0,0 +1,388 @@
1
+ import{useEffect as u}from"react";var g=`:root {
2
+ --uil-black: #000000;
3
+ --uil-black-alt: #222222;
4
+ --uil-white: #ffffff;
5
+ --uil-grey: #f3f3f3;
6
+ --uil-grey-alt: #cfcfcf;
7
+ --uil-grey-dark: #878787;
8
+ --uil-outline-focus: #1E90FFFF;
9
+ --uil-outline-disabled: #8B0000FF;
10
+ --uil-success: #006A4E;
11
+ --uil-error: #800020;
12
+ --uil-question: #00416A;
13
+ --uil-warning: #FFD700;
14
+ --uil-xxxs: .125rem;
15
+ --uil-xxs: .25rem;
16
+ --uil-xs: .5rem;
17
+ --uil-s: .75rem;
18
+ --uil-m: 1rem;
19
+ --uil-l: 1.25rem;
20
+ --uil-xl: 1.5rem;
21
+ --uil-xxl: 1.75rem;
22
+ --uil-xxxl: 2rem;
23
+ --uil-font-base: var(--uil-l);
24
+ --uil-font-small: var(--uil-m);
25
+ }
26
+
27
+ .uil-button {
28
+ letter-spacing: 1px;
29
+ color: var(--uil-black);
30
+ background-color: var(--uil-white);
31
+ border: 1px solid var(--uil-black);
32
+ border-radius: 2px;
33
+ cursor: pointer;
34
+ padding: 0.375rem var(--uil-xxs);
35
+ -webkit-box-shadow: 0 0 3px 0 var(--uil-black-alt);
36
+ box-shadow: 0 0 3px 0 var(--uil-black-alt);
37
+ }
38
+ @media (min-width: 760px) {
39
+ .uil-button {
40
+ padding: var(--uil-xs) var(--uil-s);
41
+ }
42
+ }
43
+ .uil-button.uil-disabled {
44
+ background-color: var(--uil-grey-dark);
45
+ color: var(--uil-grey);
46
+ border: transparent;
47
+ }
48
+ .uil-button.uil-small {
49
+ font-size: var(--uil-font-small);
50
+ line-height: var(--uil-font-small);
51
+ padding: var(--uil-xxs) var(--uil-xs);
52
+ }
53
+
54
+ .uil-check-wrapper {
55
+ display: flex;
56
+ align-items: center;
57
+ gap: var(--uil-s);
58
+ font-size: var(--uil-font-base);
59
+ line-height: var(--uil-font-base);
60
+ }
61
+ .uil-check-wrapper .uil-checkbox {
62
+ border-radius: 2px;
63
+ }
64
+ .uil-check-wrapper .uil-check-label {
65
+ cursor: pointer;
66
+ user-select: none;
67
+ }
68
+
69
+ .uil-svg-wrapper {
70
+ display: flex;
71
+ height: fit-content;
72
+ width: fit-content;
73
+ }
74
+ .uil-svg-wrapper .uil-svg {
75
+ height: var(--uil-xxxl);
76
+ width: var(--uil-xxxl);
77
+ }
78
+
79
+ .uil-input-wrapper {
80
+ position: relative;
81
+ display: block;
82
+ }
83
+ .uil-input-wrapper .uil-label {
84
+ position: absolute;
85
+ top: 25%;
86
+ left: var(--uil-xxs);
87
+ cursor: text;
88
+ font-weight: bold;
89
+ color: var(--uil-black);
90
+ background: linear-gradient(0deg, var(--uil-white) 9px, rgba(0, 0, 0, 0) 0%);
91
+ opacity: 0.6;
92
+ padding: 0 var(--uil-xxxs);
93
+ transition: top 0.25s ease-in-out;
94
+ }
95
+ .uil-input-wrapper .uil-input {
96
+ box-sizing: border-box;
97
+ width: 100%;
98
+ color: var(--uil-black);
99
+ background-color: var(--uil-white);
100
+ border: 1px solid var(--uil-black);
101
+ border-radius: 0;
102
+ padding: var(--uil-xs);
103
+ }
104
+ .uil-input-wrapper .uil-input::placeholder {
105
+ color: transparent;
106
+ width: 0;
107
+ height: 0;
108
+ }
109
+ .uil-input-wrapper .uil-input:focus {
110
+ outline: 1px solid var(--uil-outline-focus);
111
+ }
112
+ .uil-input-wrapper .uil-input:disabled {
113
+ cursor: not-allowed;
114
+ border: 2px solid var(--uil-outline-disabled);
115
+ background-color: var(--uil-grey);
116
+ color: var(--uil-grey-dark);
117
+ }
118
+ .uil-input-wrapper .uil-input:disabled ~ .uil-label {
119
+ cursor: not-allowed;
120
+ background: transparent;
121
+ color: var(--uil-grey-dark);
122
+ }
123
+ .uil-input-wrapper .uil-input:disabled ~ .uil-icon {
124
+ cursor: not-allowed;
125
+ fill: var(--uil-grey-dark);
126
+ }
127
+ .uil-input-wrapper .uil-input:disabled:not(:placeholder-shown) ~ .uil-label {
128
+ background: linear-gradient(0deg, var(--uil-grey) 8px, rgba(0, 0, 0, 0) 0%);
129
+ }
130
+ .uil-input-wrapper .uil-icon {
131
+ position: absolute;
132
+ top: 50%;
133
+ right: var(--uil-xs);
134
+ transform: translate(0%, -50%);
135
+ display: flex;
136
+ align-items: center;
137
+ justify-content: center;
138
+ fill: var(--uil-black);
139
+ opacity: 0.5;
140
+ }
141
+ .uil-input-wrapper .uil-input:focus ~ .uil-label, .uil-input-wrapper .uil-input:not(:placeholder-shown) ~ .uil-label {
142
+ top: -30%;
143
+ opacity: 1;
144
+ }
145
+ .uil-input-wrapper .uil-input:focus ~ .uil-icon, .uil-input-wrapper .uil-input:not(:placeholder-shown) ~ .uil-icon {
146
+ opacity: 1;
147
+ }
148
+
149
+ .uil-tooltip-wrapper {
150
+ position: relative;
151
+ }
152
+ .uil-tooltip-wrapper .uil-tooltip-icon {
153
+ cursor: pointer;
154
+ fill: var(--uil-black-alt);
155
+ margin-bottom: var(--uil-xxs);
156
+ }
157
+ .uil-tooltip-wrapper .uil-tooltip-icon:has(~ .uil-input-wrapper > .uil-input:not(:placeholder-shown), ~ .uil-input-wrapper:focus-within) {
158
+ opacity: 0;
159
+ visibility: hidden;
160
+ transition: opacity 0.3s, visibility 0.3s;
161
+ }
162
+ .uil-tooltip-wrapper .uil-tooltip {
163
+ position: absolute;
164
+ top: 0;
165
+ left: 0;
166
+ width: 100%;
167
+ box-sizing: border-box;
168
+ z-index: 1;
169
+ color: var(--uil-white);
170
+ background-color: rgba(34, 34, 34, 0.9);
171
+ padding: var(--uil-s);
172
+ border-radius: 3px;
173
+ font-size: var(--uil-font-small);
174
+ line-height: var(--uil-font-small);
175
+ }
176
+ .uil-tooltip-wrapper .uil-tooltip .uil-tooltip-button {
177
+ display: block;
178
+ margin-left: auto;
179
+ margin-bottom: var(--uil-m);
180
+ color: var(--uil-white);
181
+ background-color: transparent;
182
+ border: none;
183
+ padding: 0;
184
+ border-bottom: 1px solid var(--uil-white);
185
+ cursor: pointer;
186
+ }
187
+
188
+ .uil-password-rules {
189
+ margin-top: var(--uil-m);
190
+ display: flex;
191
+ flex-direction: column;
192
+ gap: var(--uil-xs);
193
+ margin-left: var(--uil-xs);
194
+ }
195
+ .uil-password-rules .uil-password-rule {
196
+ display: flex;
197
+ align-items: center;
198
+ gap: var(--uil-xxs);
199
+ font-size: var(--uil-font-small);
200
+ line-height: var(--uil-font-small);
201
+ }
202
+
203
+ .uil-modal-wrapper {
204
+ position: fixed;
205
+ left: 0;
206
+ top: 0;
207
+ width: 100%;
208
+ height: 100%;
209
+ background-color: rgba(0, 0, 0, 0.5);
210
+ z-index: 99;
211
+ }
212
+ .uil-modal-wrapper .uil-modal {
213
+ position: absolute;
214
+ top: 30%;
215
+ left: 50%;
216
+ transform: translateX(-50%);
217
+ width: 95%;
218
+ -webkit-box-shadow: 0 0 6px 0 var(--uil-black);
219
+ box-shadow: 0 0 6px 0 var(--uil-black);
220
+ border-radius: 5px;
221
+ z-index: 999;
222
+ }
223
+ @media (min-width: 1025px) {
224
+ .uil-modal-wrapper .uil-modal {
225
+ width: 75%;
226
+ }
227
+ }
228
+ @media (min-width: 1250px) {
229
+ .uil-modal-wrapper .uil-modal {
230
+ width: 55%;
231
+ }
232
+ }
233
+ @media (min-width: 1920px) {
234
+ .uil-modal-wrapper .uil-modal {
235
+ width: 35%;
236
+ }
237
+ }
238
+ .uil-modal-wrapper .uil-modal .uil-progress-wrapper {
239
+ background-color: var(--uil-grey-alt);
240
+ }
241
+ .uil-modal-wrapper .uil-modal .uil-progress-wrapper .uil-progress-bar {
242
+ border: 2px solid var(--uil-grey-dark);
243
+ animation-duration: 2s;
244
+ animation-iteration-count: initial;
245
+ animation-name: uil-progress;
246
+ }
247
+ @keyframes uil-progress {
248
+ 0% {
249
+ width: 100%;
250
+ }
251
+ 100% {
252
+ width: 0;
253
+ }
254
+ }
255
+ .uil-modal-wrapper .uil-modal .uil-header {
256
+ color: var(--uil-white);
257
+ background-color: var(--uil-question);
258
+ display: flex;
259
+ justify-content: space-between;
260
+ font-size: var(--uil-xl);
261
+ line-height: var(--uil-xl);
262
+ font-weight: bold;
263
+ margin: 0;
264
+ padding: var(--uil-s);
265
+ border-top-left-radius: 3px;
266
+ border-top-right-radius: 3px;
267
+ }
268
+ @media (min-width: 1025px) {
269
+ .uil-modal-wrapper .uil-modal .uil-header {
270
+ font-size: var(--uil-xxxl);
271
+ line-height: var(--uil-xxxl);
272
+ padding: var(--uil-m);
273
+ }
274
+ }
275
+ .uil-modal-wrapper .uil-modal .uil-header.uil-success {
276
+ background-color: var(--uil-success);
277
+ }
278
+ .uil-modal-wrapper .uil-modal .uil-header.uil-error {
279
+ background-color: var(--uil-error);
280
+ }
281
+ .uil-modal-wrapper .uil-modal .uil-header.uil-warning {
282
+ color: var(--uil-black);
283
+ background-color: var(--uil-warning);
284
+ }
285
+ .uil-modal-wrapper .uil-modal .uil-content {
286
+ background-color: var(--uil-white);
287
+ padding: var(--uil-m);
288
+ border-bottom-left-radius: 3px;
289
+ border-bottom-right-radius: 3px;
290
+ display: flex;
291
+ flex-direction: column;
292
+ gap: var(--uil-m);
293
+ }
294
+ @media (min-width: 1025px) {
295
+ .uil-modal-wrapper .uil-modal .uil-content {
296
+ padding: var(--uil-l);
297
+ gap: var(--uil-xxxl);
298
+ }
299
+ }
300
+ .uil-modal-wrapper .uil-modal .uil-content .uil-modal-text {
301
+ font-size: var(--uil-font-base);
302
+ line-height: var(--uil-font-base);
303
+ color: var(--uil-black);
304
+ margin: 0;
305
+ }
306
+ .uil-modal-wrapper .uil-modal .uil-content .uil-button-wrapper {
307
+ display: flex;
308
+ justify-content: space-between;
309
+ }
310
+ .uil-modal-wrapper .uil-modal .uil-content .uil-button-wrapper.uil-single {
311
+ justify-content: end;
312
+ }
313
+
314
+ .uil-radio-title {
315
+ display: block;
316
+ font-size: var(--uil-xl);
317
+ line-height: var(--uil-xl);
318
+ margin-bottom: var(--uil-m);
319
+ }
320
+
321
+ .uil-radio-wrapper {
322
+ display: flex;
323
+ flex-direction: column;
324
+ gap: var(--uil-m);
325
+ }
326
+ .uil-radio-wrapper .uil-radio-option {
327
+ display: flex;
328
+ align-items: center;
329
+ gap: 0.25rem;
330
+ }
331
+ .uil-radio-wrapper .uil-radio-option .uil-radio {
332
+ border-radius: 50%;
333
+ }
334
+ .uil-radio-wrapper .uil-radio-option .uil-radio .uil-radio-check {
335
+ border-radius: 50%;
336
+ }
337
+
338
+ .uil-fit {
339
+ height: fit-content;
340
+ width: fit-content;
341
+ }
342
+
343
+ .uil-font-base {
344
+ font-size: var(--uil-font-base);
345
+ line-height: var(--uil-font-base);
346
+ }
347
+
348
+ .uil-check {
349
+ position: relative;
350
+ display: block;
351
+ cursor: pointer;
352
+ font-size: var(--uil-font-small);
353
+ line-height: var(--uil-font-small);
354
+ min-height: var(--uil-l);
355
+ min-width: var(--uil-l);
356
+ user-select: none;
357
+ border: 2px solid var(--uil-black-alt);
358
+ box-sizing: border-box;
359
+ }
360
+ .uil-check:has(input:disabled) {
361
+ background-color: var(--uil-grey);
362
+ border-color: var(--uil-grey-dark);
363
+ }
364
+ .uil-check input {
365
+ position: absolute;
366
+ cursor: pointer;
367
+ height: 0;
368
+ width: 0;
369
+ opacity: 0;
370
+ }
371
+ .uil-check input:checked ~ .uil-checkmark {
372
+ transform: scale(1);
373
+ }
374
+ .uil-check input:disabled ~ .uil-checkmark {
375
+ background-color: var(--uil-grey-dark);
376
+ }
377
+ .uil-check .uil-checkmark {
378
+ position: absolute;
379
+ top: 25%;
380
+ left: 25%;
381
+ background-color: var(--uil-black-alt);
382
+ width: var(--uil-xs);
383
+ height: var(--uil-xs);
384
+ transform: scale(0);
385
+ transition: 0.1s ease;
386
+ }
387
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvdWktbGlicmFyeS91aS1saWJyYXJ5L3BhY2thZ2VzL3NyYy91dGlscyIsInNvdXJjZXMiOlsiLi4vY29tcG9uZW50cy92YXJpYWJsZXMuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5zY3NzIiwiLi4vY29tcG9uZW50cy9jaGVja2JveC9jaGVja2JveC5zY3NzIiwiLi4vY29tcG9uZW50cy9pbWFnZXMvaW1hZ2VzLnNjc3MiLCIuLi9jb21wb25lbnRzL2lucHV0L2lucHV0LnNjc3MiLCIuLi9jb21wb25lbnRzL21vZGFsL21vZGFsLnNjc3MiLCIuLi9jb21wb25lbnRzL3JhZGlvL3JhZGlvLnNjc3MiLCIuLi9jb21wb25lbnRzL2dsb2JhbC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0U7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTs7O0FDM0JGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBRDRCQTtFQ3JDRjtJQVlJOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7O0FDeEJKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7O0FDYko7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOzs7QUNQSjtFQUNFO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdBO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLTjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7O0FBSUo7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS047RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDeklKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FMeUJGO0VLbENBO0lBWUk7OztBTDRCSjtFS3hDQTtJQWdCSTs7O0FMOEJKO0VLOUNBO0lBb0JJOzs7QUFHRjtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBSUo7RUFDRTtJQUNFOztFQUdGO0lBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUxyQko7RUtVRTtJQWNJO0lBQ0E7SUFDQTs7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBTGxESjtFSzJDRTtJQVVJO0lBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUVBO0VBQ0U7OztBQ2hIVjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUVBO0VBQ0U7OztBQ3JCUjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdFO0VBQ0U7O0FBS0Y7RUFDRTs7QUFLTjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyI6cm9vdCB7XG4gIC0tdWlsLWJsYWNrOiAjMDAwMDAwO1xuICAtLXVpbC1ibGFjay1hbHQ6ICMyMjIyMjI7XG5cbiAgLS11aWwtd2hpdGU6ICNmZmZmZmY7XG5cbiAgLS11aWwtZ3JleTogI2YzZjNmMztcbiAgLS11aWwtZ3JleS1hbHQ6ICNjZmNmY2Y7XG4gIC0tdWlsLWdyZXktZGFyazogIzg3ODc4NztcblxuICAtLXVpbC1vdXRsaW5lLWZvY3VzOiAjMUU5MEZGRkY7XG4gIC0tdWlsLW91dGxpbmUtZGlzYWJsZWQ6ICM4QjAwMDBGRjtcblxuICAtLXVpbC1zdWNjZXNzOiAjMDA2QTRFO1xuICAtLXVpbC1lcnJvcjogIzgwMDAyMDtcbiAgLS11aWwtcXVlc3Rpb246ICMwMDQxNkE7XG4gIC0tdWlsLXdhcm5pbmc6ICNGRkQ3MDA7XG5cbiAgLS11aWwteHh4czogLjEyNXJlbTtcbiAgLS11aWwteHhzOiAuMjVyZW07XG4gIC0tdWlsLXhzOiAuNXJlbTtcbiAgLS11aWwtczogLjc1cmVtO1xuICAtLXVpbC1tOiAxcmVtO1xuICAtLXVpbC1sOiAxLjI1cmVtO1xuICAtLXVpbC14bDogMS41cmVtO1xuICAtLXVpbC14eGw6IDEuNzVyZW07XG4gIC0tdWlsLXh4eGw6IDJyZW07XG5cbiAgLS11aWwtZm9udC1iYXNlOiB2YXIoLS11aWwtbCk7XG4gIC0tdWlsLWZvbnQtc21hbGw6IHZhcigtLXVpbC1tKTtcbn1cblxuQG1peGluIHVpbC1tb2JpbGUge1xuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgQGNvbnRlbnRcbiAgfVxufVxuXG5AbWl4aW4gdWlsLXRhYmxldCB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjBweCkge1xuICAgIEBjb250ZW50XG4gIH1cbn1cblxuQG1peGluIHVpbC1kZXNrdG9wIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIEBjb250ZW50XG4gIH1cbn1cblxuQG1peGluIHVpbC13aWRlc2NyZWVuIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyNTBweCkge1xuICAgIEBjb250ZW50XG4gIH1cbn1cblxuQG1peGluIHVpbC1mdWxsSEQge1xuICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gICAgQGNvbnRlbnRcbiAgfVxufVxuIiwiQHVzZSAnLi4vdmFyaWFibGVzJyBhcyAqO1xuXG4udWlsLWJ1dHRvbiB7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGNvbG9yOiB2YXIoLS11aWwtYmxhY2spO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtd2hpdGUpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aWwtYmxhY2spO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogLjM3NXJlbSB2YXIoLS11aWwteHhzKTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgM3B4IDAgdmFyKC0tdWlsLWJsYWNrLWFsdCk7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMCB2YXIoLS11aWwtYmxhY2stYWx0KTtcblxuICBAaW5jbHVkZSB1aWwtdGFibGV0IHtcbiAgICBwYWRkaW5nOiB2YXIoLS11aWwteHMpIHZhcigtLXVpbC1zKTtcbiAgfVxuXG4gICYudWlsLWRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtZ3JleS1kYXJrKTtcbiAgICBjb2xvcjogdmFyKC0tdWlsLWdyZXkpO1xuICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLnVpbC1zbWFsbCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC1mb250LXNtYWxsKTtcbiAgICBwYWRkaW5nOiB2YXIoLS11aWwteHhzKSB2YXIoLS11aWwteHMpO1xuICB9XG59IiwiQHVzZSAnLi4vdmFyaWFibGVzJyBhcyAqO1xuXG4udWlsLWNoZWNrLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXVpbC1zKTtcbiAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1iYXNlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC1mb250LWJhc2UpO1xuXG4gIC51aWwtY2hlY2tib3gge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuXG4gIC51aWwtY2hlY2stbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxufSIsIkB1c2UgJy4uL3ZhcmlhYmxlcycgYXMgKjtcblxuLnVpbC1zdmctd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcblxuICAudWlsLXN2ZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS11aWwteHh4bCk7XG4gICAgd2lkdGg6IHZhcigtLXVpbC14eHhsKTtcbiAgfVxufSIsIkB1c2UgJy4uL3ZhcmlhYmxlcycgYXMgKjtcblxuLnVpbC1pbnB1dC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcblxuICAmIC51aWwtbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDI1JTtcbiAgICBsZWZ0OiB2YXIoLS11aWwteHhzKTtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6IHZhcigtLXVpbC1ibGFjayk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHZhcigtLXVpbC13aGl0ZSkgOXB4LCByZ2JhKDAsMCwwLDApIDAlKTtcbiAgICBvcGFjaXR5OiAuNjtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXVpbC14eHhzKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgLjI1cyBlYXNlLWluLW91dDtcbiAgfVxuXG4gICYgLnVpbC1pbnB1dCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjb2xvcjogdmFyKC0tdWlsLWJsYWNrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtd2hpdGUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpbC1ibGFjayk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiB2YXIoLS11aWwteHMpO1xuXG4gICAgLy9oaWRlIHBsYWNlaG9sZGVyIGFzIGl0IGlzIG9ubHkgbmVlZGVkIGZvciBzdHlsZXNoZWV0IHJ1bGVzXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tdWlsLW91dGxpbmUtZm9jdXMpO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXVpbC1vdXRsaW5lLWRpc2FibGVkKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpbC1ncmV5KTtcbiAgICAgIGNvbG9yOiB2YXIoLS11aWwtZ3JleS1kYXJrKTtcblxuICAgICAgJiB+IC51aWwtbGFiZWwge1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHZhcigtLXVpbC1ncmV5LWRhcmspO1xuICAgICAgfVxuXG4gICAgICAmIH4gLnVpbC1pY29uIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgZmlsbDogdmFyKC0tdWlsLWdyZXktZGFyayk7XG4gICAgICB9XG5cbiAgICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiAudWlsLWxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHZhcigtLXVpbC1ncmV5KSA4cHgsIHJnYmEoMCwwLDAsMCkgMCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgLnVpbC1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IHZhcigtLXVpbC14cyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmaWxsOiB2YXIoLS11aWwtYmxhY2spO1xuICAgIG9wYWNpdHk6IC41O1xuICB9XG5cbiAgJiAudWlsLWlucHV0OmZvY3VzIH4gLnVpbC1sYWJlbCwgLnVpbC1pbnB1dDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IC51aWwtbGFiZWwge1xuICAgIHRvcDogLTMwJTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJiAudWlsLWlucHV0OmZvY3VzIH4gLnVpbC1pY29uLCAudWlsLWlucHV0Om5vdCg6cGxhY2Vob2xkZXItc2hvd24pIH4gLnVpbC1pY29uIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi51aWwtdG9vbHRpcC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC51aWwtdG9vbHRpcC1pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmlsbDogdmFyKC0tdWlsLWJsYWNrLWFsdCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWlsLXh4cyk7XG4gIH1cblxuICAmIC51aWwtdG9vbHRpcC1pY29uOmhhcyh+IC51aWwtaW5wdXQtd3JhcHBlciA+IC51aWwtaW5wdXQ6bm90KDpwbGFjZWhvbGRlci1zaG93biksIH4gLnVpbC1pbnB1dC13cmFwcGVyOmZvY3VzLXdpdGhpbikge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzLCB2aXNpYmlsaXR5IC4zcztcbiAgfVxuXG4gIC51aWwtdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgei1pbmRleDogMTtcbiAgICBjb2xvcjogdmFyKC0tdWlsLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIC45KTtcbiAgICBwYWRkaW5nOiB2YXIoLS11aWwtcyk7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdWlsLWZvbnQtc21hbGwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG5cbiAgICAudWlsLXRvb2x0aXAtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aWwtbSk7XG4gICAgICBjb2xvcjogdmFyKC0tdWlsLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aWwtd2hpdGUpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4udWlsLXBhc3N3b3JkLXJ1bGVzIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tdWlsLW0pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXVpbC14cyk7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS11aWwteHMpO1xuXG4gIC51aWwtcGFzc3dvcmQtcnVsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tdWlsLXh4cyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC1mb250LXNtYWxsKTtcbiAgfVxufSIsIkB1c2UgJy4uL3ZhcmlhYmxlcycgYXMgKjtcblxuLnVpbC1tb2RhbC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgei1pbmRleDogOTk7XG5cbiAgLnVpbC1tb2RhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMzAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDk1JTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA2cHggMCB2YXIoLS11aWwtYmxhY2spO1xuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMCB2YXIoLS11aWwtYmxhY2spO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB6LWluZGV4OiA5OTk7XG5cbiAgICBAaW5jbHVkZSB1aWwtZGVza3RvcCB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHVpbC13aWRlc2NyZWVuIHtcbiAgICAgIHdpZHRoOiA1NSU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgdWlsLWZ1bGxIRCB7XG4gICAgICB3aWR0aDogMzUlO1xuICAgIH1cblxuICAgIC51aWwtcHJvZ3Jlc3Mtd3JhcHBlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtZ3JleS1hbHQpO1xuXG4gICAgICAmIC51aWwtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tdWlsLWdyZXktZGFyayk7XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluaXRpYWw7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiB1aWwtcHJvZ3Jlc3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyB1aWwtcHJvZ3Jlc3Mge1xuICAgICAgMCUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgMTAwJSB7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC51aWwtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS11aWwtd2hpdGUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLXF1ZXN0aW9uKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmb250LXNpemU6IHZhcigtLXVpbC14bCk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tdWlsLXhsKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogdmFyKC0tdWlsLXMpO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcblxuICAgICAgQGluY2x1ZGUgdWlsLWRlc2t0b3Age1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXVpbC14eHhsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC14eHhsKTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWlsLW0pO1xuICAgICAgfVxuXG4gICAgICAmLnVpbC1zdWNjZXNzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLXN1Y2Nlc3MpO1xuICAgICAgfVxuXG4gICAgICAmLnVpbC1lcnJvciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpbC1lcnJvcik7XG4gICAgICB9XG5cbiAgICAgICYudWlsLXdhcm5pbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tdWlsLWJsYWNrKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLXdhcm5pbmcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC51aWwtY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtd2hpdGUpO1xuICAgICAgcGFkZGluZzogdmFyKC0tdWlsLW0pO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDNweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiB2YXIoLS11aWwtbSk7XG5cbiAgICAgIEBpbmNsdWRlIHVpbC1kZXNrdG9wIHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWlsLWwpO1xuICAgICAgICBnYXA6IHZhcigtLXVpbC14eHhsKTtcbiAgICAgIH1cblxuICAgICAgLnVpbC1tb2RhbC10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1iYXNlKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC1mb250LWJhc2UpO1xuICAgICAgICBjb2xvcjogdmFyKC0tdWlsLWJsYWNrKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAudWlsLWJ1dHRvbi13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICYudWlsLXNpbmdsZSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAdXNlICcuLi92YXJpYWJsZXMnIGFzICo7XG5cbi51aWwtcmFkaW8tdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiB2YXIoLS11aWwteGwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdWlsLXhsKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWlsLW0pO1xufVxuXG4udWlsLXJhZGlvLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXVpbC1tKTtcblxuICAudWlsLXJhZGlvLW9wdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogLjI1cmVtO1xuXG4gICAgLnVpbC1yYWRpbyB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgIC51aWwtcmFkaW8tY2hlY2sge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQHVzZSBcInZhcmlhYmxlc1wiIGFzICo7XG5cbi51aWwtZml0IHtcbiAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4udWlsLWZvbnQtYmFzZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdWlsLWZvbnQtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS11aWwtZm9udC1iYXNlKTtcbn1cblxuLnVpbC1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLXVpbC1sKTtcbiAgbWluLXdpZHRoOiB2YXIoLS11aWwtbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS11aWwtYmxhY2stYWx0KTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAmOmhhcyhpbnB1dDpkaXNhYmxlZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpbC1ncmV5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXVpbC1ncmV5LWRhcmspO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgfiAudWlsLWNoZWNrbWFyayB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICB+IC51aWwtY2hlY2ttYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLWdyZXktZGFyayk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnVpbC1jaGVja21hcmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDI1JTtcbiAgICBsZWZ0OiAyNSU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLWJsYWNrLWFsdCk7XG4gICAgd2lkdGg6IHZhcigtLXVpbC14cyk7XG4gICAgaGVpZ2h0OiB2YXIoLS11aWwteHMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogLjFzIGVhc2U7XG4gIH1cbn0iXX0= */`;var I=[];function b(l){u(()=>{let i=l.current?l.current.ownerDocument:document;if(typeof i!="undefined"&&!I.includes(i)){let t=i.createElement("style");t.innerHTML=g,I.push(i),i.head.appendChild(t)}},[])}export{b as a};
388
+ //# sourceMappingURL=chunk-ZUB437SZ.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/useInjectStyles.ts", "../../src/utils/styles.scss"],
4
+ "sourcesContent": ["import {RefObject, useEffect} from 'react';\nimport styles from './styles.scss';\n\nconst injectedStyles: Document[] = [];\n\nexport default function useInjectStyleSheet(nodeRef: RefObject<HTMLElement>): void {\n useEffect(() => {\n const parentDocument = nodeRef.current ? nodeRef.current.ownerDocument : document;\n\n if (typeof parentDocument !== \"undefined\" && !injectedStyles.includes(parentDocument)) {\n const styleElement = parentDocument.createElement(\"style\");\n\n styleElement.innerHTML = styles;\n injectedStyles.push(parentDocument);\n\n parentDocument.head.appendChild(styleElement);\n }\n }, []);\n}", "export default `:root {\n --uil-black: #000000;\n --uil-black-alt: #222222;\n --uil-white: #ffffff;\n --uil-grey: #f3f3f3;\n --uil-grey-alt: #cfcfcf;\n --uil-grey-dark: #878787;\n --uil-outline-focus: #1E90FFFF;\n --uil-outline-disabled: #8B0000FF;\n --uil-success: #006A4E;\n --uil-error: #800020;\n --uil-question: #00416A;\n --uil-warning: #FFD700;\n --uil-xxxs: .125rem;\n --uil-xxs: .25rem;\n --uil-xs: .5rem;\n --uil-s: .75rem;\n --uil-m: 1rem;\n --uil-l: 1.25rem;\n --uil-xl: 1.5rem;\n --uil-xxl: 1.75rem;\n --uil-xxxl: 2rem;\n --uil-font-base: var(--uil-l);\n --uil-font-small: var(--uil-m);\n}\n\n.uil-button {\n letter-spacing: 1px;\n color: var(--uil-black);\n background-color: var(--uil-white);\n border: 1px solid var(--uil-black);\n border-radius: 2px;\n cursor: pointer;\n padding: 0.375rem var(--uil-xxs);\n -webkit-box-shadow: 0 0 3px 0 var(--uil-black-alt);\n box-shadow: 0 0 3px 0 var(--uil-black-alt);\n}\n@media (min-width: 760px) {\n .uil-button {\n padding: var(--uil-xs) var(--uil-s);\n }\n}\n.uil-button.uil-disabled {\n background-color: var(--uil-grey-dark);\n color: var(--uil-grey);\n border: transparent;\n}\n.uil-button.uil-small {\n font-size: var(--uil-font-small);\n line-height: var(--uil-font-small);\n padding: var(--uil-xxs) var(--uil-xs);\n}\n\n.uil-check-wrapper {\n display: flex;\n align-items: center;\n gap: var(--uil-s);\n font-size: var(--uil-font-base);\n line-height: var(--uil-font-base);\n}\n.uil-check-wrapper .uil-checkbox {\n border-radius: 2px;\n}\n.uil-check-wrapper .uil-check-label {\n cursor: pointer;\n user-select: none;\n}\n\n.uil-svg-wrapper {\n display: flex;\n height: fit-content;\n width: fit-content;\n}\n.uil-svg-wrapper .uil-svg {\n height: var(--uil-xxxl);\n width: var(--uil-xxxl);\n}\n\n.uil-input-wrapper {\n position: relative;\n display: block;\n}\n.uil-input-wrapper .uil-label {\n position: absolute;\n top: 25%;\n left: var(--uil-xxs);\n cursor: text;\n font-weight: bold;\n color: var(--uil-black);\n background: linear-gradient(0deg, var(--uil-white) 9px, rgba(0, 0, 0, 0) 0%);\n opacity: 0.6;\n padding: 0 var(--uil-xxxs);\n transition: top 0.25s ease-in-out;\n}\n.uil-input-wrapper .uil-input {\n box-sizing: border-box;\n width: 100%;\n color: var(--uil-black);\n background-color: var(--uil-white);\n border: 1px solid var(--uil-black);\n border-radius: 0;\n padding: var(--uil-xs);\n}\n.uil-input-wrapper .uil-input::placeholder {\n color: transparent;\n width: 0;\n height: 0;\n}\n.uil-input-wrapper .uil-input:focus {\n outline: 1px solid var(--uil-outline-focus);\n}\n.uil-input-wrapper .uil-input:disabled {\n cursor: not-allowed;\n border: 2px solid var(--uil-outline-disabled);\n background-color: var(--uil-grey);\n color: var(--uil-grey-dark);\n}\n.uil-input-wrapper .uil-input:disabled ~ .uil-label {\n cursor: not-allowed;\n background: transparent;\n color: var(--uil-grey-dark);\n}\n.uil-input-wrapper .uil-input:disabled ~ .uil-icon {\n cursor: not-allowed;\n fill: var(--uil-grey-dark);\n}\n.uil-input-wrapper .uil-input:disabled:not(:placeholder-shown) ~ .uil-label {\n background: linear-gradient(0deg, var(--uil-grey) 8px, rgba(0, 0, 0, 0) 0%);\n}\n.uil-input-wrapper .uil-icon {\n position: absolute;\n top: 50%;\n right: var(--uil-xs);\n transform: translate(0%, -50%);\n display: flex;\n align-items: center;\n justify-content: center;\n fill: var(--uil-black);\n opacity: 0.5;\n}\n.uil-input-wrapper .uil-input:focus ~ .uil-label, .uil-input-wrapper .uil-input:not(:placeholder-shown) ~ .uil-label {\n top: -30%;\n opacity: 1;\n}\n.uil-input-wrapper .uil-input:focus ~ .uil-icon, .uil-input-wrapper .uil-input:not(:placeholder-shown) ~ .uil-icon {\n opacity: 1;\n}\n\n.uil-tooltip-wrapper {\n position: relative;\n}\n.uil-tooltip-wrapper .uil-tooltip-icon {\n cursor: pointer;\n fill: var(--uil-black-alt);\n margin-bottom: var(--uil-xxs);\n}\n.uil-tooltip-wrapper .uil-tooltip-icon:has(~ .uil-input-wrapper > .uil-input:not(:placeholder-shown), ~ .uil-input-wrapper:focus-within) {\n opacity: 0;\n visibility: hidden;\n transition: opacity 0.3s, visibility 0.3s;\n}\n.uil-tooltip-wrapper .uil-tooltip {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n box-sizing: border-box;\n z-index: 1;\n color: var(--uil-white);\n background-color: rgba(34, 34, 34, 0.9);\n padding: var(--uil-s);\n border-radius: 3px;\n font-size: var(--uil-font-small);\n line-height: var(--uil-font-small);\n}\n.uil-tooltip-wrapper .uil-tooltip .uil-tooltip-button {\n display: block;\n margin-left: auto;\n margin-bottom: var(--uil-m);\n color: var(--uil-white);\n background-color: transparent;\n border: none;\n padding: 0;\n border-bottom: 1px solid var(--uil-white);\n cursor: pointer;\n}\n\n.uil-password-rules {\n margin-top: var(--uil-m);\n display: flex;\n flex-direction: column;\n gap: var(--uil-xs);\n margin-left: var(--uil-xs);\n}\n.uil-password-rules .uil-password-rule {\n display: flex;\n align-items: center;\n gap: var(--uil-xxs);\n font-size: var(--uil-font-small);\n line-height: var(--uil-font-small);\n}\n\n.uil-modal-wrapper {\n position: fixed;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 99;\n}\n.uil-modal-wrapper .uil-modal {\n position: absolute;\n top: 30%;\n left: 50%;\n transform: translateX(-50%);\n width: 95%;\n -webkit-box-shadow: 0 0 6px 0 var(--uil-black);\n box-shadow: 0 0 6px 0 var(--uil-black);\n border-radius: 5px;\n z-index: 999;\n}\n@media (min-width: 1025px) {\n .uil-modal-wrapper .uil-modal {\n width: 75%;\n }\n}\n@media (min-width: 1250px) {\n .uil-modal-wrapper .uil-modal {\n width: 55%;\n }\n}\n@media (min-width: 1920px) {\n .uil-modal-wrapper .uil-modal {\n width: 35%;\n }\n}\n.uil-modal-wrapper .uil-modal .uil-progress-wrapper {\n background-color: var(--uil-grey-alt);\n}\n.uil-modal-wrapper .uil-modal .uil-progress-wrapper .uil-progress-bar {\n border: 2px solid var(--uil-grey-dark);\n animation-duration: 2s;\n animation-iteration-count: initial;\n animation-name: uil-progress;\n}\n@keyframes uil-progress {\n 0% {\n width: 100%;\n }\n 100% {\n width: 0;\n }\n}\n.uil-modal-wrapper .uil-modal .uil-header {\n color: var(--uil-white);\n background-color: var(--uil-question);\n display: flex;\n justify-content: space-between;\n font-size: var(--uil-xl);\n line-height: var(--uil-xl);\n font-weight: bold;\n margin: 0;\n padding: var(--uil-s);\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n@media (min-width: 1025px) {\n .uil-modal-wrapper .uil-modal .uil-header {\n font-size: var(--uil-xxxl);\n line-height: var(--uil-xxxl);\n padding: var(--uil-m);\n }\n}\n.uil-modal-wrapper .uil-modal .uil-header.uil-success {\n background-color: var(--uil-success);\n}\n.uil-modal-wrapper .uil-modal .uil-header.uil-error {\n background-color: var(--uil-error);\n}\n.uil-modal-wrapper .uil-modal .uil-header.uil-warning {\n color: var(--uil-black);\n background-color: var(--uil-warning);\n}\n.uil-modal-wrapper .uil-modal .uil-content {\n background-color: var(--uil-white);\n padding: var(--uil-m);\n border-bottom-left-radius: 3px;\n border-bottom-right-radius: 3px;\n display: flex;\n flex-direction: column;\n gap: var(--uil-m);\n}\n@media (min-width: 1025px) {\n .uil-modal-wrapper .uil-modal .uil-content {\n padding: var(--uil-l);\n gap: var(--uil-xxxl);\n }\n}\n.uil-modal-wrapper .uil-modal .uil-content .uil-modal-text {\n font-size: var(--uil-font-base);\n line-height: var(--uil-font-base);\n color: var(--uil-black);\n margin: 0;\n}\n.uil-modal-wrapper .uil-modal .uil-content .uil-button-wrapper {\n display: flex;\n justify-content: space-between;\n}\n.uil-modal-wrapper .uil-modal .uil-content .uil-button-wrapper.uil-single {\n justify-content: end;\n}\n\n.uil-radio-title {\n display: block;\n font-size: var(--uil-xl);\n line-height: var(--uil-xl);\n margin-bottom: var(--uil-m);\n}\n\n.uil-radio-wrapper {\n display: flex;\n flex-direction: column;\n gap: var(--uil-m);\n}\n.uil-radio-wrapper .uil-radio-option {\n display: flex;\n align-items: center;\n gap: 0.25rem;\n}\n.uil-radio-wrapper .uil-radio-option .uil-radio {\n border-radius: 50%;\n}\n.uil-radio-wrapper .uil-radio-option .uil-radio .uil-radio-check {\n border-radius: 50%;\n}\n\n.uil-fit {\n height: fit-content;\n width: fit-content;\n}\n\n.uil-font-base {\n font-size: var(--uil-font-base);\n line-height: var(--uil-font-base);\n}\n\n.uil-check {\n position: relative;\n display: block;\n cursor: pointer;\n font-size: var(--uil-font-small);\n line-height: var(--uil-font-small);\n min-height: var(--uil-l);\n min-width: var(--uil-l);\n user-select: none;\n border: 2px solid var(--uil-black-alt);\n box-sizing: border-box;\n}\n.uil-check:has(input:disabled) {\n background-color: var(--uil-grey);\n border-color: var(--uil-grey-dark);\n}\n.uil-check input {\n position: absolute;\n cursor: pointer;\n height: 0;\n width: 0;\n opacity: 0;\n}\n.uil-check input:checked ~ .uil-checkmark {\n transform: scale(1);\n}\n.uil-check input:disabled ~ .uil-checkmark {\n background-color: var(--uil-grey-dark);\n}\n.uil-check .uil-checkmark {\n position: absolute;\n top: 25%;\n left: 25%;\n background-color: var(--uil-black-alt);\n width: var(--uil-xs);\n height: var(--uil-xs);\n transform: scale(0);\n transition: 0.1s ease;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvdWktbGlicmFyeS91aS1saWJyYXJ5L3BhY2thZ2VzL3NyYy91dGlscyIsInNvdXJjZXMiOlsiLi4vY29tcG9uZW50cy92YXJpYWJsZXMuc2NzcyIsIi4uL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5zY3NzIiwiLi4vY29tcG9uZW50cy9jaGVja2JveC9jaGVja2JveC5zY3NzIiwiLi4vY29tcG9uZW50cy9pbWFnZXMvaW1hZ2VzLnNjc3MiLCIuLi9jb21wb25lbnRzL2lucHV0L2lucHV0LnNjc3MiLCIuLi9jb21wb25lbnRzL21vZGFsL21vZGFsLnNjc3MiLCIuLi9jb21wb25lbnRzL3JhZGlvL3JhZGlvLnNjc3MiLCIuLi9jb21wb25lbnRzL2dsb2JhbC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0U7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTs7O0FDM0JGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBRDRCQTtFQ3JDRjtJQVlJOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7O0FDeEJKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7O0FDYko7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBOzs7QUNQSjtFQUNFO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdBO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLTjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7O0FBSUo7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS047RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDeklKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FMeUJGO0VLbENBO0lBWUk7OztBTDRCSjtFS3hDQTtJQWdCSTs7O0FMOEJKO0VLOUNBO0lBb0JJOzs7QUFHRjtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBSUo7RUFDRTtJQUNFOztFQUdGO0lBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUxyQko7RUtVRTtJQWNJO0lBQ0E7SUFDQTs7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBTGxESjtFSzJDRTtJQVVJO0lBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUVBO0VBQ0U7OztBQ2hIVjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUVBO0VBQ0U7OztBQ3JCUjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdFO0VBQ0U7O0FBS0Y7RUFDRTs7QUFLTjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyI6cm9vdCB7XG4gIC0tdWlsLWJsYWNrOiAjMDAwMDAwO1xuICAtLXVpbC1ibGFjay1hbHQ6ICMyMjIyMjI7XG5cbiAgLS11aWwtd2hpdGU6ICNmZmZmZmY7XG5cbiAgLS11aWwtZ3JleTogI2YzZjNmMztcbiAgLS11aWwtZ3JleS1hbHQ6ICNjZmNmY2Y7XG4gIC0tdWlsLWdyZXktZGFyazogIzg3ODc4NztcblxuICAtLXVpbC1vdXRsaW5lLWZvY3VzOiAjMUU5MEZGRkY7XG4gIC0tdWlsLW91dGxpbmUtZGlzYWJsZWQ6ICM4QjAwMDBGRjtcblxuICAtLXVpbC1zdWNjZXNzOiAjMDA2QTRFO1xuICAtLXVpbC1lcnJvcjogIzgwMDAyMDtcbiAgLS11aWwtcXVlc3Rpb246ICMwMDQxNkE7XG4gIC0tdWlsLXdhcm5pbmc6ICNGRkQ3MDA7XG5cbiAgLS11aWwteHh4czogLjEyNXJlbTtcbiAgLS11aWwteHhzOiAuMjVyZW07XG4gIC0tdWlsLXhzOiAuNXJlbTtcbiAgLS11aWwtczogLjc1cmVtO1xuICAtLXVpbC1tOiAxcmVtO1xuICAtLXVpbC1sOiAxLjI1cmVtO1xuICAtLXVpbC14bDogMS41cmVtO1xuICAtLXVpbC14eGw6IDEuNzVyZW07XG4gIC0tdWlsLXh4eGw6IDJyZW07XG5cbiAgLS11aWwtZm9udC1iYXNlOiB2YXIoLS11aWwtbCk7XG4gIC0tdWlsLWZvbnQtc21hbGw6IHZhcigtLXVpbC1tKTtcbn1cblxuQG1peGluIHVpbC1tb2JpbGUge1xuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgQGNvbnRlbnRcbiAgfVxufVxuXG5AbWl4aW4gdWlsLXRhYmxldCB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjBweCkge1xuICAgIEBjb250ZW50XG4gIH1cbn1cblxuQG1peGluIHVpbC1kZXNrdG9wIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIEBjb250ZW50XG4gIH1cbn1cblxuQG1peGluIHVpbC13aWRlc2NyZWVuIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyNTBweCkge1xuICAgIEBjb250ZW50XG4gIH1cbn1cblxuQG1peGluIHVpbC1mdWxsSEQge1xuICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gICAgQGNvbnRlbnRcbiAgfVxufVxuIiwiQHVzZSAnLi4vdmFyaWFibGVzJyBhcyAqO1xuXG4udWlsLWJ1dHRvbiB7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGNvbG9yOiB2YXIoLS11aWwtYmxhY2spO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtd2hpdGUpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aWwtYmxhY2spO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogLjM3NXJlbSB2YXIoLS11aWwteHhzKTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgM3B4IDAgdmFyKC0tdWlsLWJsYWNrLWFsdCk7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggMCB2YXIoLS11aWwtYmxhY2stYWx0KTtcblxuICBAaW5jbHVkZSB1aWwtdGFibGV0IHtcbiAgICBwYWRkaW5nOiB2YXIoLS11aWwteHMpIHZhcigtLXVpbC1zKTtcbiAgfVxuXG4gICYudWlsLWRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtZ3JleS1kYXJrKTtcbiAgICBjb2xvcjogdmFyKC0tdWlsLWdyZXkpO1xuICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLnVpbC1zbWFsbCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC1mb250LXNtYWxsKTtcbiAgICBwYWRkaW5nOiB2YXIoLS11aWwteHhzKSB2YXIoLS11aWwteHMpO1xuICB9XG59IiwiQHVzZSAnLi4vdmFyaWFibGVzJyBhcyAqO1xuXG4udWlsLWNoZWNrLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXVpbC1zKTtcbiAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1iYXNlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC1mb250LWJhc2UpO1xuXG4gIC51aWwtY2hlY2tib3gge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgfVxuXG4gIC51aWwtY2hlY2stbGFiZWwge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxufSIsIkB1c2UgJy4uL3ZhcmlhYmxlcycgYXMgKjtcblxuLnVpbC1zdmctd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcblxuICAudWlsLXN2ZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS11aWwteHh4bCk7XG4gICAgd2lkdGg6IHZhcigtLXVpbC14eHhsKTtcbiAgfVxufSIsIkB1c2UgJy4uL3ZhcmlhYmxlcycgYXMgKjtcblxuLnVpbC1pbnB1dC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcblxuICAmIC51aWwtbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDI1JTtcbiAgICBsZWZ0OiB2YXIoLS11aWwteHhzKTtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6IHZhcigtLXVpbC1ibGFjayk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHZhcigtLXVpbC13aGl0ZSkgOXB4LCByZ2JhKDAsMCwwLDApIDAlKTtcbiAgICBvcGFjaXR5OiAuNjtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXVpbC14eHhzKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgLjI1cyBlYXNlLWluLW91dDtcbiAgfVxuXG4gICYgLnVpbC1pbnB1dCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjb2xvcjogdmFyKC0tdWlsLWJsYWNrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtd2hpdGUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpbC1ibGFjayk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiB2YXIoLS11aWwteHMpO1xuXG4gICAgLy9oaWRlIHBsYWNlaG9sZGVyIGFzIGl0IGlzIG9ubHkgbmVlZGVkIGZvciBzdHlsZXNoZWV0IHJ1bGVzXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tdWlsLW91dGxpbmUtZm9jdXMpO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXVpbC1vdXRsaW5lLWRpc2FibGVkKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpbC1ncmV5KTtcbiAgICAgIGNvbG9yOiB2YXIoLS11aWwtZ3JleS1kYXJrKTtcblxuICAgICAgJiB+IC51aWwtbGFiZWwge1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHZhcigtLXVpbC1ncmV5LWRhcmspO1xuICAgICAgfVxuXG4gICAgICAmIH4gLnVpbC1pY29uIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgZmlsbDogdmFyKC0tdWlsLWdyZXktZGFyayk7XG4gICAgICB9XG5cbiAgICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiAudWlsLWxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsIHZhcigtLXVpbC1ncmV5KSA4cHgsIHJnYmEoMCwwLDAsMCkgMCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgLnVpbC1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IHZhcigtLXVpbC14cyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmaWxsOiB2YXIoLS11aWwtYmxhY2spO1xuICAgIG9wYWNpdHk6IC41O1xuICB9XG5cbiAgJiAudWlsLWlucHV0OmZvY3VzIH4gLnVpbC1sYWJlbCwgLnVpbC1pbnB1dDpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB+IC51aWwtbGFiZWwge1xuICAgIHRvcDogLTMwJTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJiAudWlsLWlucHV0OmZvY3VzIH4gLnVpbC1pY29uLCAudWlsLWlucHV0Om5vdCg6cGxhY2Vob2xkZXItc2hvd24pIH4gLnVpbC1pY29uIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi51aWwtdG9vbHRpcC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC51aWwtdG9vbHRpcC1pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZmlsbDogdmFyKC0tdWlsLWJsYWNrLWFsdCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWlsLXh4cyk7XG4gIH1cblxuICAmIC51aWwtdG9vbHRpcC1pY29uOmhhcyh+IC51aWwtaW5wdXQtd3JhcHBlciA+IC51aWwtaW5wdXQ6bm90KDpwbGFjZWhvbGRlci1zaG93biksIH4gLnVpbC1pbnB1dC13cmFwcGVyOmZvY3VzLXdpdGhpbikge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzLCB2aXNpYmlsaXR5IC4zcztcbiAgfVxuXG4gIC51aWwtdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgei1pbmRleDogMTtcbiAgICBjb2xvcjogdmFyKC0tdWlsLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIC45KTtcbiAgICBwYWRkaW5nOiB2YXIoLS11aWwtcyk7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdWlsLWZvbnQtc21hbGwpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG5cbiAgICAudWlsLXRvb2x0aXAtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS11aWwtbSk7XG4gICAgICBjb2xvcjogdmFyKC0tdWlsLXdoaXRlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aWwtd2hpdGUpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4udWlsLXBhc3N3b3JkLXJ1bGVzIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tdWlsLW0pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXVpbC14cyk7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS11aWwteHMpO1xuXG4gIC51aWwtcGFzc3dvcmQtcnVsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tdWlsLXh4cyk7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC1mb250LXNtYWxsKTtcbiAgfVxufSIsIkB1c2UgJy4uL3ZhcmlhYmxlcycgYXMgKjtcblxuLnVpbC1tb2RhbC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgei1pbmRleDogOTk7XG5cbiAgLnVpbC1tb2RhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMzAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDk1JTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA2cHggMCB2YXIoLS11aWwtYmxhY2spO1xuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMCB2YXIoLS11aWwtYmxhY2spO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICB6LWluZGV4OiA5OTk7XG5cbiAgICBAaW5jbHVkZSB1aWwtZGVza3RvcCB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHVpbC13aWRlc2NyZWVuIHtcbiAgICAgIHdpZHRoOiA1NSU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgdWlsLWZ1bGxIRCB7XG4gICAgICB3aWR0aDogMzUlO1xuICAgIH1cblxuICAgIC51aWwtcHJvZ3Jlc3Mtd3JhcHBlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtZ3JleS1hbHQpO1xuXG4gICAgICAmIC51aWwtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tdWlsLWdyZXktZGFyayk7XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluaXRpYWw7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiB1aWwtcHJvZ3Jlc3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyB1aWwtcHJvZ3Jlc3Mge1xuICAgICAgMCUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgMTAwJSB7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC51aWwtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS11aWwtd2hpdGUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLXF1ZXN0aW9uKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmb250LXNpemU6IHZhcigtLXVpbC14bCk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tdWlsLXhsKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogdmFyKC0tdWlsLXMpO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4O1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcblxuICAgICAgQGluY2x1ZGUgdWlsLWRlc2t0b3Age1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXVpbC14eHhsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC14eHhsKTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWlsLW0pO1xuICAgICAgfVxuXG4gICAgICAmLnVpbC1zdWNjZXNzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLXN1Y2Nlc3MpO1xuICAgICAgfVxuXG4gICAgICAmLnVpbC1lcnJvciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpbC1lcnJvcik7XG4gICAgICB9XG5cbiAgICAgICYudWlsLXdhcm5pbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tdWlsLWJsYWNrKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLXdhcm5pbmcpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC51aWwtY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aWwtd2hpdGUpO1xuICAgICAgcGFkZGluZzogdmFyKC0tdWlsLW0pO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDNweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiB2YXIoLS11aWwtbSk7XG5cbiAgICAgIEBpbmNsdWRlIHVpbC1kZXNrdG9wIHtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tdWlsLWwpO1xuICAgICAgICBnYXA6IHZhcigtLXVpbC14eHhsKTtcbiAgICAgIH1cblxuICAgICAgLnVpbC1tb2RhbC10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1iYXNlKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLXVpbC1mb250LWJhc2UpO1xuICAgICAgICBjb2xvcjogdmFyKC0tdWlsLWJsYWNrKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAudWlsLWJ1dHRvbi13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICYudWlsLXNpbmdsZSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAdXNlICcuLi92YXJpYWJsZXMnIGFzICo7XG5cbi51aWwtcmFkaW8tdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiB2YXIoLS11aWwteGwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdWlsLXhsKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tdWlsLW0pO1xufVxuXG4udWlsLXJhZGlvLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXVpbC1tKTtcblxuICAudWlsLXJhZGlvLW9wdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogLjI1cmVtO1xuXG4gICAgLnVpbC1yYWRpbyB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgIC51aWwtcmFkaW8tY2hlY2sge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQHVzZSBcInZhcmlhYmxlc1wiIGFzICo7XG5cbi51aWwtZml0IHtcbiAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4udWlsLWZvbnQtYmFzZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdWlsLWZvbnQtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS11aWwtZm9udC1iYXNlKTtcbn1cblxuLnVpbC1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS11aWwtZm9udC1zbWFsbCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLXVpbC1sKTtcbiAgbWluLXdpZHRoOiB2YXIoLS11aWwtbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS11aWwtYmxhY2stYWx0KTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAmOmhhcyhpbnB1dDpkaXNhYmxlZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpbC1ncmV5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXVpbC1ncmV5LWRhcmspO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgfiAudWlsLWNoZWNrbWFyayB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICB+IC51aWwtY2hlY2ttYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLWdyZXktZGFyayk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnVpbC1jaGVja21hcmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDI1JTtcbiAgICBsZWZ0OiAyNSU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWlsLWJsYWNrLWFsdCk7XG4gICAgd2lkdGg6IHZhcigtLXVpbC14cyk7XG4gICAgaGVpZ2h0OiB2YXIoLS11aWwteHMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogLjFzIGVhc2U7XG4gIH1cbn0iXX0= */`;\n"],
5
+ "mappings": "AAAA,OAAmB,aAAAA,MAAgB,QCAnC,IAAOC,EAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;68eDGf,IAAMC,EAA6B,CAAC,EAErB,SAARC,EAAqCC,EAAuC,CACjFC,EAAU,IAAM,CACd,IAAMC,EAAiBF,EAAQ,QAAUA,EAAQ,QAAQ,cAAgB,SAEzE,GAAI,OAAOE,GAAmB,aAAe,CAACJ,EAAe,SAASI,CAAc,EAAG,CACrF,IAAMC,EAAeD,EAAe,cAAc,OAAO,EAEzDC,EAAa,UAAYC,EACzBN,EAAe,KAAKI,CAAc,EAElCA,EAAe,KAAK,YAAYC,CAAY,CAC9C,CACF,EAAG,CAAC,CAAC,CACP",
6
+ "names": ["useEffect", "styles_default", "injectedStyles", "useInjectStyleSheet", "nodeRef", "useEffect", "parentDocument", "styleElement", "styles_default"]
7
+ }
@@ -6,5 +6,19 @@ interface ICustomButton extends ComponentPropsWithoutRef<'button'> {
6
6
  small?: boolean;
7
7
  theme?: HEXColor | 'success' | 'warning' | 'error';
8
8
  }
9
+ /**
10
+ * @example
11
+ * ```jsx
12
+ * <CustomButton
13
+ * label={'Click Me!'}
14
+ * disabled={false}
15
+ * small={true}
16
+ * theme={'success'}
17
+ * onClick={() => {ClickFunction()}}
18
+ * />
19
+ * ```
20
+ *
21
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/button)
22
+ */
9
23
  export declare function CustomButton(props: ICustomButton): React.JSX.Element;
10
24
  export {};
@@ -0,0 +1,2 @@
1
+ import{a as o}from"../../chunks/chunk-QJ2JCVTI.js";import"../../chunks/chunk-ZUB437SZ.js";import"../../chunks/chunk-X5MLSG6J.js";import"../../chunks/chunk-6WQJC5LW.js";export{o as CustomButton};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -6,5 +6,17 @@ interface ICustomCheckbox extends ComponentPropsWithoutRef<'input'> {
6
6
  children?: ReactNode;
7
7
  label?: string;
8
8
  }
9
+ /**
10
+ * @example
11
+ * ```jsx
12
+ * <CustomCheckbox
13
+ * checked={...}
14
+ * toggleCheck={...}
15
+ * label={"Check this checkbox"}
16
+ * />
17
+ * ```
18
+ *
19
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/checkbox).
20
+ */
9
21
  export declare function CustomCheckbox(props: ICustomCheckbox): React.JSX.Element;
10
22
  export {};
@@ -0,0 +1,2 @@
1
+ import{a}from"../../chunks/chunk-YI2EBQL3.js";import{a as k}from"../../chunks/chunk-ZUB437SZ.js";import{a as i,b as h,c as s}from"../../chunks/chunk-6WQJC5LW.js";import e,{useRef as C}from"react";function N(m){let r=m,{checkColor:u,checked:o,children:c,toggleCheck:l,label:d}=r,p=s(r,["checkColor","checked","children","toggleCheck","label"]),t=a("check"),n=C(null);return k(n),e.createElement("div",{className:"uil-check-wrapper",ref:n},e.createElement("div",{className:"uil-checkbox uil-check",onClick:()=>{l(!o)}},e.createElement("input",h(i({type:"checkbox",checked:o,onChange:()=>{l(!o)}},p),{id:t})),e.createElement("div",{className:"uil-checkmark",style:{backgroundColor:u}})),e.createElement("label",{htmlFor:t,className:"uil-check-label"},c||d))}export{N as CustomCheckbox};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/checkbox/customCheckbox.tsx"],
4
+ "sourcesContent": ["import React, {ComponentPropsWithoutRef, ReactNode, useRef} from 'react';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\nimport generateKey from 'utils/generateKey';\n\ninterface ICustomCheckbox extends ComponentPropsWithoutRef<'input'> {\n checked : boolean;\n toggleCheck: (value: boolean) => void;\n checkColor?: string;\n children? : ReactNode;\n label? : string;\n}\n\n/**\n * @example\n * ```jsx\n * <CustomCheckbox\n * checked={...}\n * toggleCheck={...}\n * label={\"Check this checkbox\"}\n * />\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/checkbox).\n */\nexport function CustomCheckbox(props: ICustomCheckbox) {\n const {\n checkColor,\n checked,\n children,\n toggleCheck,\n label,\n ...checkProps\n } = props;\n\n const id = generateKey('check');\n const nodeRef = useRef<HTMLDivElement>(null);\n useInjectStyleSheet(nodeRef);\n\n return (\n <div className={'uil-check-wrapper'} ref={nodeRef}>\n <div className={'uil-checkbox uil-check'} onClick={() => {toggleCheck(!checked)}}>\n <input type={'checkbox'} checked={checked} onChange={() => {toggleCheck(!checked)}} {...checkProps} id={id}/>\n <div className={'uil-checkmark'} style={{backgroundColor: checkColor}}/>\n </div>\n\n <label htmlFor={id} className={'uil-check-label'}>\n {children ? children : label}\n </label>\n </div>\n );\n}"],
5
+ "mappings": "kKAAA,OAAOA,GAA6C,UAAAC,MAAa,QAwB1D,SAASC,EAAeC,EAAwB,CACrD,IAOIC,EAAAD,EANF,YAAAE,EACA,QAAAC,EACA,SAAAC,EACA,YAAAC,EACA,MAAAC,CA9BJ,EAgCML,EADCM,EAAAC,EACDP,EADC,CALH,aACA,UACA,WACA,cACA,UAIIQ,EAAKC,EAAY,OAAO,EACxBC,EAAUC,EAAuB,IAAI,EAC3C,OAAAC,EAAoBF,CAAO,EAGzBG,EAAA,cAAC,OAAI,UAAW,oBAAqB,IAAKH,GACxCG,EAAA,cAAC,OAAI,UAAW,yBAA0B,QAAS,IAAM,CAACT,EAAY,CAACF,CAAO,CAAC,GAC7EW,EAAA,cAAC,QAAAC,EAAAC,EAAA,CAAM,KAAM,WAAY,QAASb,EAAS,SAAU,IAAM,CAACE,EAAY,CAACF,CAAO,CAAC,GAAOI,GAAvF,CAAmG,GAAIE,GAAG,EAC3GK,EAAA,cAAC,OAAI,UAAW,gBAAiB,MAAO,CAAC,gBAAiBZ,CAAU,EAAE,CACxE,EAEAY,EAAA,cAAC,SAAM,QAASL,EAAI,UAAW,mBAC5BL,GAAsBE,CACzB,CACF,CAEJ",
6
+ "names": ["React", "useRef", "CustomCheckbox", "props", "_a", "checkColor", "checked", "children", "toggleCheck", "label", "checkProps", "__objRest", "id", "generateKey", "nodeRef", "useRef", "useInjectStyleSheet", "React", "__spreadProps", "__spreadValues"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{a as o}from"../../chunks/chunk-YW4Y6JNX.js";import"../../chunks/chunk-ZUB437SZ.js";import"../../chunks/chunk-6WQJC5LW.js";export{o as SVG};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -5,5 +5,13 @@ interface ISvgIcon extends ComponentPropsWithoutRef<'svg'> {
5
5
  height?: number;
6
6
  width?: number;
7
7
  }
8
+ /**
9
+ * @example
10
+ * ```jsx
11
+ * <SVG src={"foo/bar.png"} />
12
+ * ```
13
+ *
14
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/images).
15
+ */
8
16
  export declare function SVG(props: ISvgIcon): React.JSX.Element;
9
17
  export {};
@@ -1,7 +1,7 @@
1
1
  import React, { ComponentPropsWithoutRef } from 'react';
2
2
  export interface IBaseInput extends ComponentPropsWithoutRef<'input'> {
3
3
  label: string;
4
- value: string;
4
+ value: string | number;
5
5
  valueChanged: (value: string) => void;
6
6
  iconColor?: string;
7
7
  iconSrc?: string;
@@ -5,4 +5,16 @@ export interface ICustomInput extends IBaseInput {
5
5
  tooltipIcon?: string;
6
6
  tooltipText?: string;
7
7
  }
8
+ /**
9
+ * @example
10
+ * ```jsx
11
+ * <PasswordInput
12
+ * value={...}
13
+ * valueChanged={...}
14
+ * label={"..."}
15
+ * />
16
+ * ```
17
+ *
18
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/input).
19
+ */
8
20
  export declare function CustomInput(props: ICustomInput): React.JSX.Element;
@@ -0,0 +1,2 @@
1
+ import{a as v}from"../../chunks/chunk-YW4Y6JNX.js";import{a as k}from"../../chunks/chunk-YI2EBQL3.js";import{a as C}from"../../chunks/chunk-ZUB437SZ.js";import{a as x}from"../../chunks/chunk-TWVAPPO3.js";import{a as p,c as g}from"../../chunks/chunk-6WQJC5LW.js";import o,{useState as S}from"react";import h,{useRef as P}from"react";function I(i){let u=i,{iconColor:r,iconSrc:n,inputColor:d,label:l,toggle:s,valueChanged:m}=u,f=g(u,["iconColor","iconSrc","inputColor","label","toggle","valueChanged"]),a=P(null);return C(a),h.createElement("label",{className:"uil-input-wrapper",htmlFor:f.id,ref:a},h.createElement("input",p({className:"uil-input uil-font-base",onChange:b=>{m(b.target.value)},placeholder:l,style:{color:d}},f)),n&&h.createElement("div",{className:"uil-icon",onClick:s},h.createElement(v,{src:n,width:24,height:24,color:r})),h.createElement("span",{className:"uil-label uil-font-base",style:{color:d}},l))}function y(i){let u=i,{tooltipClose:r,tooltipIcon:n,tooltipText:d}=u,l=g(u,["tooltipClose","tooltipIcon","tooltipText"]),[s,m]=S(!1),f=x(a);function a(){m(!1)}return o.createElement(o.Fragment,null,n?o.createElement("div",{className:"uil-tooltip-wrapper",ref:f},s&&o.createElement("div",{className:"uil-tooltip"},r&&o.createElement("button",{className:"uil-tooltip-button uil-fit",onClick:a},r),o.createElement("span",null,d)),o.createElement("div",{className:"uil-tooltip-icon uil-fit",onClick:()=>{m(!s)}},o.createElement(v,{src:n,height:16,width:16})),o.createElement(I,p({},l))):o.createElement(I,p({},l)))}import c,{useEffect as L,useState as E}from"react";function q(i){let w=i,{capsLockWarning:r,rules:n,ruleChecked:d,ruleUnchecked:l,setFailedRules:s}=w,m=g(w,["capsLockWarning","rules","ruleChecked","ruleUnchecked","setFailedRules"]),[f,a]=E(!1);L(()=>{u()},[i.value]),L(()=>{if(!r)return;function t(e){a(e.getModifierState("CapsLock"))}return document.addEventListener("keydown",t),()=>{document.removeEventListener("keydown",t)}},[]);function u(){let t=[];n.forEach(e=>{b(e)||t.push(e)}),s==null||s(t)}function b(t){let e;if(t.type){if(!t.count)throw new Error("count must not be empty if a type is provided");switch(t.type){case"minLength":e=`[a-zA-Z0-9\xDF\xC4\xE4\xD6\xF6\xDC\xFC._!"\`'#%&\xA7,:;<>=@{}~\\$\\(\\)\\*\\+\\/\\\\\\?\\[\\]\\^\\|\\-]{${t.count},}`;break;case"maxLength":e=`^[a-zA-Z0-9\xDF\xC4\xE4\xD6\xF6\xDC\xFC._!"\`'#%&,:;<>=@{}~\\$\\(\\)\\*\\+\\/\\\\\\?\\[\\]\\^\\|\\-]{0,${t.count}}$`;break;case"letters":e=`[a-zA-Z\xDF\xC4\xE4\xD6\xF6\xDC\xFC]{${t.count},}`;break;case"numbers":e=`[0-9]{${t.count},}`;break;case"special":e=`[._!"\`'#%&\xA7,:;<>=@{}~\\$\\(\\)\\*\\+\\/\\\\\\?\\[\\]\\^\\|\\-]{${t.count},}`;break;case"upper":e=`[A-Z\xC4\xD6\xDC]{${t.count},}`;break;default:throw new Error("unrecognized rule type provided")}}else{if(!t.pattern)throw new Error("pattern must not be an empty string");e=t.pattern}return new RegExp(e).test(i.value.toString())}return c.createElement("div",null,c.createElement(y,p({},m)),c.createElement("div",{className:"uil-password-rules"},f&&c.createElement("div",{className:"uil-password-rule"},r),n.map((t,e)=>c.createElement("div",{key:k(e),className:"uil-password-rule"},c.createElement(v,{src:b(t)?d:l,height:12,width:12}),c.createElement("span",null,t.label)))))}export{y as CustomInput,q as PasswordInput};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/input/customInput.tsx", "../../../src/components/input/baseInput.tsx", "../../../src/components/input/passwordInput.tsx"],
4
+ "sourcesContent": ["import React, {useState} from 'react';\nimport {BaseInput, IBaseInput} from './baseInput';\nimport {SVG} from 'components/images/svgIcon';\nimport {useClickOutsideRef} from 'hooks/clickOutside/clickOutside';\n\nexport interface ICustomInput extends IBaseInput {\n tooltipClose?: string;\n tooltipIcon? : string;\n tooltipText? : string;\n}\n\n/**\n * @example\n * ```jsx\n * <PasswordInput\n * value={...}\n * valueChanged={...}\n * label={\"...\"}\n * />\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/input).\n */\nexport function CustomInput(props: ICustomInput) {\n const {\n tooltipClose,\n tooltipIcon,\n tooltipText,\n ...inputProps\n } = props;\n\n const [tooltipVisible, setTooltipVisible] = useState(false);\n const ref = useClickOutsideRef<HTMLDivElement>(closeTooltip);\n\n function closeTooltip() {\n setTooltipVisible(false);\n }\n\n return (\n <>\n {tooltipIcon ?\n <div className={'uil-tooltip-wrapper'} ref={ref}>\n {tooltipVisible &&\n <div className={'uil-tooltip'}>\n {tooltipClose &&\n <button className={'uil-tooltip-button uil-fit'} onClick={closeTooltip}>\n {tooltipClose}\n </button>\n }\n\n <span>{tooltipText}</span>\n </div>\n }\n\n <div className={'uil-tooltip-icon uil-fit'} onClick={() => {setTooltipVisible(!tooltipVisible)}}>\n <SVG src={tooltipIcon} height={16} width={16}/>\n </div>\n\n <BaseInput {...inputProps}/>\n </div> :\n\n <BaseInput {...inputProps}/>\n }\n </>\n );\n}", "import React, {ComponentPropsWithoutRef, useRef} from 'react';\nimport {SVG} from 'components/images/svgIcon';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\n\nexport interface IBaseInput extends ComponentPropsWithoutRef<'input'> {\n label : string;\n value : string | number;\n valueChanged: (value: string) => void;\n iconColor? : string;\n iconSrc? : string;\n inputColor? : string;\n toggle? : () => void;\n}\n\nexport function BaseInput(props: IBaseInput) {\n const {\n iconColor,\n iconSrc,\n inputColor,\n label,\n toggle,\n valueChanged,\n ...inputProps\n } = props;\n\n const nodeRef = useRef<HTMLLabelElement>(null);\n useInjectStyleSheet(nodeRef);\n\n return (\n <label className={'uil-input-wrapper'} htmlFor={inputProps.id} ref={nodeRef}>\n <input\n className={'uil-input uil-font-base'}\n onChange={(e) => {valueChanged(e.target.value)}}\n placeholder={label}\n style={{color: inputColor}}\n {...inputProps}\n />\n\n {iconSrc &&\n <div className={'uil-icon'} onClick={toggle}>\n <SVG src={iconSrc} width={24} height={24} color={iconColor}/>\n </div>\n }\n\n <span className={'uil-label uil-font-base'} style={{color: inputColor}}>{label}</span>\n </label>\n );\n}", "import React, {useEffect, useState} from 'react';\nimport {CustomInput, ICustomInput} from './customInput';\nimport {SVG} from 'components/images/svgIcon';\nimport generateKey from 'utils/generateKey';\n\ninterface IPasswordInput extends ICustomInput {\n ruleChecked : string;\n rules : PasswordRule[];\n ruleUnchecked : string;\n capsLockWarning?: string;\n setFailedRules? : (value: PasswordRule[]) => void;\n}\n\n/**\n * Password rule\n * @example\n * ```js\n * const rule = {\n * label: \"minimum password length\",\n * count: 5\n * type: \"minLength\"\n * }\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/passwordInput).\n */\nexport interface PasswordRule {\n label : string;\n count? : number;\n type? : 'minLength' | 'maxLength' | 'letters' | 'numbers' | 'special' | 'upper';\n pattern?: string;\n}\n\n/**\n * @example\n * ```jsx\n * <PasswordInput\n * ruleChecked={\"/foo/bar.svg\"}\n * ruleUnchecked={\"/foo/bar.svg\"}\n * rules={[...]}\n * value={...}\n * valueChanged={...}\n * label={\"...\"}\n * />\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/passwordInput).\n */\nexport function PasswordInput(props: IPasswordInput) {\n const {\n capsLockWarning,\n rules,\n ruleChecked,\n ruleUnchecked,\n setFailedRules,\n ...inputProps\n } = props;\n\n const [capsLock, setCapsLock] = useState(false);\n\n useEffect(() => {\n validateInput();\n }, [props.value]);\n\n useEffect(() => {\n if (!capsLockWarning) return;\n\n function setCapsLockState(event: globalThis.KeyboardEvent) {\n setCapsLock(event.getModifierState('CapsLock'));\n }\n\n document.addEventListener('keydown', setCapsLockState);\n\n return () => {document.removeEventListener('keydown', setCapsLockState)};\n }, []);\n\n function validateInput() {\n const failedRules: PasswordRule[] = [];\n\n rules.forEach(rule => {\n if (!checkRule(rule)) {\n failedRules.push(rule);\n }\n });\n\n setFailedRules?.(failedRules);\n }\n\n function checkRule(rule: PasswordRule): boolean {\n let pattern: string;\n\n if (rule.type) {\n if (!rule.count) throw new Error('count must not be empty if a type is provided');\n\n switch (rule.type) {\n case 'minLength':\n pattern = `[a-zA-Z0-9\u00DF\u00C4\u00E4\u00D6\u00F6\u00DC\u00FC._!\"\\`'#%&\u00A7,:;<>=@{}~\\\\$\\\\(\\\\)\\\\*\\\\+\\\\/\\\\\\\\\\\\?\\\\[\\\\]\\\\^\\\\|\\\\-]{${rule.count},}`;\n break;\n case 'maxLength':\n pattern = `^[a-zA-Z0-9\u00DF\u00C4\u00E4\u00D6\u00F6\u00DC\u00FC._!\"\\`'#%&,:;<>=@{}~\\\\$\\\\(\\\\)\\\\*\\\\+\\\\/\\\\\\\\\\\\?\\\\[\\\\]\\\\^\\\\|\\\\-]{0,${rule.count}}$`;\n break;\n case 'letters':\n pattern = `[a-zA-Z\u00DF\u00C4\u00E4\u00D6\u00F6\u00DC\u00FC]{${rule.count},}`;\n break;\n case 'numbers':\n pattern = `[0-9]{${rule.count},}`;\n break;\n case 'special':\n pattern = `[._!\"\\`'#%&\u00A7,:;<>=@{}~\\\\$\\\\(\\\\)\\\\*\\\\+\\\\/\\\\\\\\\\\\?\\\\[\\\\]\\\\^\\\\|\\\\-]{${rule.count},}`;\n break;\n case 'upper':\n pattern = `[A-Z\u00C4\u00D6\u00DC]{${rule.count},}`;\n break;\n default:\n throw new Error('unrecognized rule type provided');\n }\n } else {\n if (!rule.pattern) {\n throw new Error('pattern must not be an empty string');\n }\n\n pattern = rule.pattern;\n }\n\n const reg = new RegExp(pattern);\n return reg.test(props.value.toString());\n }\n\n return (\n <div>\n <CustomInput {...inputProps}/>\n\n <div className={'uil-password-rules'}>\n {capsLock && <div className={'uil-password-rule'}>{capsLockWarning}</div>}\n\n {rules.map((rule, idx) =>\n <div key={generateKey(idx)} className={'uil-password-rule'}>\n <SVG src={checkRule(rule) ? ruleChecked : ruleUnchecked} height={12} width={12}/>\n\n <span>{rule.label}</span>\n </div>\n )}\n </div>\n </div>\n );\n}"],
5
+ "mappings": "sQAAA,OAAOA,GAAQ,YAAAC,MAAe,QCA9B,OAAOC,GAAkC,UAAAC,MAAa,QAc/C,SAASC,EAAUC,EAAmB,CAC3C,IAQIC,EAAAD,EAPF,WAAAE,EACA,QAAAC,EACA,WAAAC,EACA,MAAAC,EACA,OAAAC,EACA,aAAAC,CArBJ,EAuBMN,EADCO,EAAAC,EACDR,EADC,CANH,YACA,UACA,aACA,QACA,SACA,iBAIIS,EAAUC,EAAyB,IAAI,EAC7C,OAAAC,EAAoBF,CAAO,EAGzBG,EAAA,cAAC,SAAM,UAAW,oBAAqB,QAASL,EAAW,GAAI,IAAKE,GAClEG,EAAA,cAAC,QAAAC,EAAA,CACC,UAAW,0BACX,SAAWC,GAAM,CAACR,EAAaQ,EAAE,OAAO,KAAK,CAAC,EAC9C,YAAaV,EACb,MAAO,CAAC,MAAOD,CAAU,GACrBI,EACN,EAECL,GACCU,EAAA,cAAC,OAAI,UAAW,WAAY,QAASP,GACnCO,EAAA,cAACG,EAAA,CAAI,IAAKb,EAAS,MAAO,GAAI,OAAQ,GAAI,MAAOD,EAAU,CAC7D,EAGFW,EAAA,cAAC,QAAK,UAAW,0BAA2B,MAAO,CAAC,MAAOT,CAAU,GAAIC,CAAM,CACjF,CAEJ,CDxBO,SAASY,EAAYC,EAAqB,CAC/C,IAKIC,EAAAD,EAJF,cAAAE,EACA,YAAAC,EACA,YAAAC,CA3BJ,EA6BMH,EADCI,EAAAC,EACDL,EADC,CAHH,eACA,cACA,gBAII,CAACM,EAAgBC,CAAiB,EAAIC,EAAS,EAAK,EACpDC,EAAMC,EAAmCC,CAAY,EAE3D,SAASA,GAAe,CACtBJ,EAAkB,EAAK,CACzB,CAEA,OACEK,EAAA,cAAAA,EAAA,cACGV,EACCU,EAAA,cAAC,OAAI,UAAW,sBAAuB,IAAKH,GACzCH,GACCM,EAAA,cAAC,OAAI,UAAW,eACbX,GACCW,EAAA,cAAC,UAAO,UAAW,6BAA8B,QAASD,GACvDV,CACH,EAGFW,EAAA,cAAC,YAAMT,CAAY,CACrB,EAGFS,EAAA,cAAC,OAAI,UAAW,2BAA4B,QAAS,IAAM,CAACL,EAAkB,CAACD,CAAc,CAAC,GAC5FM,EAAA,cAACC,EAAA,CAAI,IAAKX,EAAa,OAAQ,GAAI,MAAO,GAAG,CAC/C,EAEAU,EAAA,cAACE,EAAAC,EAAA,GAAcX,EAAW,CAC5B,EAEAQ,EAAA,cAACE,EAAAC,EAAA,GAAcX,EAAW,CAE9B,CAEJ,CEjEA,OAAOY,GAAQ,aAAAC,EAAW,YAAAC,MAAe,QAgDlC,SAASC,EAAcC,EAAuB,CACnD,IAOIC,EAAAD,EANF,iBAAAE,EACA,MAAAC,EACA,YAAAC,EACA,cAAAC,EACA,eAAAC,CAtDJ,EAwDML,EADCM,EAAAC,EACDP,EADC,CALH,kBACA,QACA,cACA,gBACA,mBAII,CAACQ,EAAUC,CAAW,EAAIC,EAAS,EAAK,EAE9CC,EAAU,IAAM,CACdC,EAAc,CAChB,EAAG,CAACb,EAAM,KAAK,CAAC,EAEhBY,EAAU,IAAM,CACd,GAAI,CAACV,EAAiB,OAEtB,SAASY,EAAiBC,EAAiC,CACzDL,EAAYK,EAAM,iBAAiB,UAAU,CAAC,CAChD,CAEA,gBAAS,iBAAiB,UAAWD,CAAgB,EAE9C,IAAM,CAAC,SAAS,oBAAoB,UAAWA,CAAgB,CAAC,CACzE,EAAG,CAAC,CAAC,EAEL,SAASD,GAAgB,CACvB,IAAMG,EAA8B,CAAC,EAErCb,EAAM,QAAQc,GAAQ,CACfC,EAAUD,CAAI,GACjBD,EAAY,KAAKC,CAAI,CAEzB,CAAC,EAEDX,GAAA,MAAAA,EAAiBU,EACnB,CAEA,SAASE,EAAUD,EAA6B,CAC9C,IAAIE,EAEJ,GAAIF,EAAK,KAAM,CACb,GAAI,CAACA,EAAK,MAAO,MAAM,IAAI,MAAM,+CAA+C,EAEhF,OAAQA,EAAK,KAAM,CACjB,IAAK,YACHE,EAAU,2GAAmFF,EAAK,KAAK,KACvG,MACF,IAAK,YACHE,EAAU,0GAAqFF,EAAK,KAAK,KACzG,MACF,IAAK,UACHE,EAAU,wCAAmBF,EAAK,KAAK,KACvC,MACF,IAAK,UACHE,EAAU,SAASF,EAAK,KAAK,KAC7B,MACF,IAAK,UACHE,EAAU,sEAAmEF,EAAK,KAAK,KACvF,MACF,IAAK,QACHE,EAAU,qBAAYF,EAAK,KAAK,KAChC,MACF,QACE,MAAM,IAAI,MAAM,iCAAiC,CACrD,CACF,KAAO,CACL,GAAI,CAACA,EAAK,QACR,MAAM,IAAI,MAAM,qCAAqC,EAGvDE,EAAUF,EAAK,OACjB,CAGA,OADY,IAAI,OAAOE,CAAO,EACnB,KAAKnB,EAAM,MAAM,SAAS,CAAC,CACxC,CAEA,OACEoB,EAAA,cAAC,WACCA,EAAA,cAACC,EAAAC,EAAA,GAAgBf,EAAW,EAE5Ba,EAAA,cAAC,OAAI,UAAW,sBACbX,GAAYW,EAAA,cAAC,OAAI,UAAW,qBAAsBlB,CAAgB,EAElEC,EAAM,IAAI,CAACc,EAAMM,IAChBH,EAAA,cAAC,OAAI,IAAKI,EAAYD,CAAG,EAAG,UAAW,qBACrCH,EAAA,cAACK,EAAA,CAAI,IAAKP,EAAUD,CAAI,EAAIb,EAAcC,EAAe,OAAQ,GAAI,MAAO,GAAG,EAE/Ee,EAAA,cAAC,YAAMH,EAAK,KAAM,CACpB,CACF,CACF,CACF,CAEJ",
6
+ "names": ["React", "useState", "React", "useRef", "BaseInput", "props", "_a", "iconColor", "iconSrc", "inputColor", "label", "toggle", "valueChanged", "inputProps", "__objRest", "nodeRef", "useRef", "useInjectStyleSheet", "React", "__spreadValues", "e", "SVG", "CustomInput", "props", "_a", "tooltipClose", "tooltipIcon", "tooltipText", "inputProps", "__objRest", "tooltipVisible", "setTooltipVisible", "useState", "ref", "useClickOutsideRef", "closeTooltip", "React", "SVG", "BaseInput", "__spreadValues", "React", "useEffect", "useState", "PasswordInput", "props", "_a", "capsLockWarning", "rules", "ruleChecked", "ruleUnchecked", "setFailedRules", "inputProps", "__objRest", "capsLock", "setCapsLock", "useState", "useEffect", "validateInput", "setCapsLockState", "event", "failedRules", "rule", "checkRule", "pattern", "React", "CustomInput", "__spreadValues", "idx", "generateKey", "SVG"]
7
+ }
@@ -7,11 +7,39 @@ interface IPasswordInput extends ICustomInput {
7
7
  capsLockWarning?: string;
8
8
  setFailedRules?: (value: PasswordRule[]) => void;
9
9
  }
10
+ /**
11
+ * Password rule
12
+ * @example
13
+ * ```js
14
+ * const rule = {
15
+ * label: "minimum password length",
16
+ * count: 5
17
+ * type: "minLength"
18
+ * }
19
+ * ```
20
+ *
21
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/passwordInput).
22
+ */
10
23
  export interface PasswordRule {
11
24
  label: string;
12
25
  count?: number;
13
26
  type?: 'minLength' | 'maxLength' | 'letters' | 'numbers' | 'special' | 'upper';
14
27
  pattern?: string;
15
28
  }
29
+ /**
30
+ * @example
31
+ * ```jsx
32
+ * <PasswordInput
33
+ * ruleChecked={"/foo/bar.svg"}
34
+ * ruleUnchecked={"/foo/bar.svg"}
35
+ * rules={[...]}
36
+ * value={...}
37
+ * valueChanged={...}
38
+ * label={"..."}
39
+ * />
40
+ * ```
41
+ *
42
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/passwordInput).
43
+ */
16
44
  export declare function PasswordInput(props: IPasswordInput): React.JSX.Element;
17
45
  export {};
@@ -0,0 +1,2 @@
1
+ import{a as m}from"../../chunks/chunk-QJ2JCVTI.js";import{a as b}from"../../chunks/chunk-YI2EBQL3.js";import{a as v}from"../../chunks/chunk-ZUB437SZ.js";import"../../chunks/chunk-X5MLSG6J.js";import{a,c as u}from"../../chunks/chunk-6WQJC5LW.js";import T from"react";import e,{useEffect as x,useRef as I}from"react";function c(o){let{callback:r,cancelLabel:n="",close:i,closeLabel:d,confirm:y,confirmLabel:N="",message:f,timeout:s,title:M,type:l}=o,p,g=I(null);v(g),x(()=>{if(s)return p=setTimeout(()=>r?r():i(),s),()=>{clearTimeout(p)}},[]);function w(){let t="uil-header";switch(l){case"error":return`${t} uil-error`;case"success":return`${t} uil-success`;case"warning":return`${t} uil-warning`;default:return t}}function L(){return clearTimeout(p),s&&r?r():i()}return e.createElement("div",{className:"uil-modal-wrapper",ref:g},e.createElement("div",{className:"uil-modal"},e.createElement("div",{className:w()},M),s&&e.createElement("div",{className:"uil-progress-wrapper"},e.createElement("div",{className:"uil-progress-bar",style:{animationDuration:`${s/1e3+.5}s`}})),e.createElement("div",{className:"uil-content"},e.createElement("div",null,Array.isArray(f)?f.map((t,k)=>e.createElement("p",{key:b(k),className:"uil-modal-text"},t)):e.createElement("p",{className:"uil-modal-text"},f)),e.createElement("div",{className:`uil-button-wrapper ${l!=="question"?"uil-single":""}`},l!=="question"&&e.createElement(m,{label:d!=null?d:"",onClick:L,type:"button"}),l=="question"&&o.confirm&&e.createElement(e.Fragment,null,e.createElement(m,{label:N,theme:"#00416A",onClick:y,type:"button"}),e.createElement(m,{label:n,onClick:i,type:"button"}))))))}function D(o){let i=o,{modalType:r}=i,n=u(i,["modalType"]);return T.createElement(c,a({type:r},n))}import B from"react";function J(o){let i=o,{cancel:r}=i,n=u(i,["cancel"]);return B.createElement(c,a({type:"question",close:r},n))}export{D as NotifyModal,J as QuestionModal};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/modal/notifyModal.tsx", "../../../src/components/modal/baseModal.tsx", "../../../src/components/modal/questionModal.tsx"],
4
+ "sourcesContent": ["import React from 'react';\nimport {BaseModal} from './baseModal';\n\ninterface INotifyModal {\n close : () => void;\n closeLabel: string;\n modalType : 'success' | 'warning' | 'error';\n message : string | string[];\n title : string;\n callback? : (() => void) | undefined;\n timeout? : number;\n}\n\n/**\n * @example\n * ```jsx\n * <NotifyModal\n * close={...}\n * closeLabel={\"...\"}\n * modalType={\"success\"}\n * title={\"...\"}\n * message={\"...\"}\n * />\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/modal).\n */\nexport function NotifyModal(props: INotifyModal) {\n const {\n modalType,\n ...modalProps\n } = props;\n\n return (\n <BaseModal type={modalType} {...modalProps}/>\n );\n}", "import React, {useEffect, useRef} from 'react';\nimport {CustomButton} from 'components/button/customButton';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\nimport generateKey from 'utils/generateKey';\n\ninterface IBaseModal {\n close : () => void;\n message : string | string[];\n title : string;\n type : 'success' | 'warning' | 'error' | 'question';\n callback? : (() => void) | undefined;\n cancelLabel? : string;\n closeLabel? : string;\n confirm? : () => void;\n confirmLabel?: string;\n timeout? : number;\n}\n\nexport function BaseModal(props: IBaseModal) {\n const {\n callback,\n cancelLabel = '',\n close,\n closeLabel,\n confirm,\n confirmLabel = '',\n message,\n timeout,\n title,\n type\n } = props;\n\n let timer: NodeJS.Timeout | undefined = undefined;\n const nodeRef = useRef<HTMLDivElement>(null);\n useInjectStyleSheet(nodeRef);\n\n useEffect(() => {\n if (!timeout) return;\n\n timer = setTimeout(() => {\n return callback ? callback() : close();\n }, timeout);\n\n return () => {clearTimeout(timer)};\n },[]);\n\n function setHeaderClass() {\n const base = 'uil-header';\n\n switch (type) {\n case 'error':\n return `${base} uil-error`;\n case 'success':\n return `${base} uil-success`;\n case 'warning':\n return `${base} uil-warning`;\n default:\n return base;\n }\n }\n\n function handleClose() {\n clearTimeout(timer);\n\n //run callback if timeout and callback are set, otherwise close\n if (timeout && callback) {\n return callback();\n }\n\n return close();\n }\n\n return (\n <div className={'uil-modal-wrapper'} ref={nodeRef}>\n <div className={'uil-modal'}>\n <div className={setHeaderClass()}>{title}</div>\n\n {timeout &&\n <div className={'uil-progress-wrapper'}>\n <div className={'uil-progress-bar'} style={{animationDuration: `${(timeout / 1000) + .5}s`}}/>\n </div>\n }\n\n <div className={'uil-content'}>\n <div>\n {Array.isArray(message) ?\n message.map((m, idx) => <p key={generateKey(idx)} className={'uil-modal-text'}>{m}</p>)\n : <p className={'uil-modal-text'}>{message}</p>\n }\n </div>\n\n <div className={`uil-button-wrapper ${type !== 'question' ? 'uil-single' : ''}`}>\n {type !== 'question' &&\n <CustomButton label={closeLabel?? ''} onClick={handleClose} type={'button'}/>\n }\n\n {type == 'question' && props.confirm &&\n <>\n <CustomButton label={confirmLabel} theme={'#00416A'} onClick={confirm} type={'button'}/>\n <CustomButton label={cancelLabel} onClick={close} type={'button'}/>\n </>\n }\n </div>\n </div>\n </div>\n </div>\n );\n}", "import React from 'react';\nimport {BaseModal} from './baseModal';\n\ninterface IQuestionModal {\n cancel : () => void;\n cancelLabel : string;\n confirm : () => void;\n confirmLabel: string;\n message : string | string[];\n title : string;\n}\n\n/**\n * @example\n * ```jsx\n * <QuestionModal\n * cancel={...}\n * cancelLabel={\"...\"}\n * confirm={...}\n * confirmLabel={\"...\"}\n * title={\"...\"}\n * message={\"...\"}\n * />\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/questionModal).\n */\nexport function QuestionModal(props: IQuestionModal) {\n const {\n cancel,\n ...modalProps\n } = props;\n\n return (\n <BaseModal type={'question'} close={cancel} {...modalProps}/>\n );\n}"],
5
+ "mappings": "qPAAA,OAAOA,MAAW,QCAlB,OAAOC,GAAQ,aAAAC,EAAW,UAAAC,MAAa,QAkBhC,SAASC,EAAUC,EAAmB,CAC3C,GAAM,CACJ,SAAAC,EACA,YAAAC,EAAc,GACd,MAAAC,EACA,WAAAC,EACA,QAAAC,EACA,aAAAC,EAAe,GACf,QAAAC,EACA,QAAAC,EACA,MAAAC,EACA,KAAAC,CACF,EAAIV,EAEAW,EACEC,EAAUC,EAAuB,IAAI,EAC3CC,EAAoBF,CAAO,EAE3BG,EAAU,IAAM,CACd,GAAKP,EAEL,OAAAG,EAAQ,WAAW,IACVV,EAAWA,EAAS,EAAIE,EAAM,EACpCK,CAAO,EAEH,IAAM,CAAC,aAAaG,CAAK,CAAC,CACnC,EAAE,CAAC,CAAC,EAEJ,SAASK,GAAiB,CACxB,IAAMC,EAAO,aAEb,OAAQP,EAAM,CACZ,IAAK,QACH,MAAO,GAAGO,CAAI,aAChB,IAAK,UACH,MAAO,GAAGA,CAAI,eAChB,IAAK,UACH,MAAO,GAAGA,CAAI,eAChB,QACE,OAAOA,CACX,CACF,CAEA,SAASC,GAAc,CAIrB,OAHA,aAAaP,CAAK,EAGdH,GAAWP,EACNA,EAAS,EAGXE,EAAM,CACf,CAEA,OACEgB,EAAA,cAAC,OAAI,UAAW,oBAAqB,IAAKP,GACxCO,EAAA,cAAC,OAAI,UAAW,aACdA,EAAA,cAAC,OAAI,UAAWH,EAAe,GAAIP,CAAM,EAExCD,GACCW,EAAA,cAAC,OAAI,UAAW,wBACdA,EAAA,cAAC,OAAI,UAAW,mBAAoB,MAAO,CAAC,kBAAmB,GAAIX,EAAU,IAAQ,EAAE,GAAG,EAAE,CAC9F,EAGFW,EAAA,cAAC,OAAI,UAAW,eACdA,EAAA,cAAC,WACE,MAAM,QAAQZ,CAAO,EACpBA,EAAQ,IAAI,CAACa,EAAGC,IAAQF,EAAA,cAAC,KAAE,IAAKG,EAAYD,CAAG,EAAG,UAAW,kBAAmBD,CAAE,CAAI,EACpFD,EAAA,cAAC,KAAE,UAAW,kBAAmBZ,CAAQ,CAE/C,EAEAY,EAAA,cAAC,OAAI,UAAW,sBAAsBT,IAAS,WAAa,aAAe,EAAE,IAC1EA,IAAS,YACRS,EAAA,cAACI,EAAA,CAAa,MAAOnB,GAAA,KAAAA,EAAa,GAAI,QAASc,EAAa,KAAM,SAAS,EAG5ER,GAAQ,YAAcV,EAAM,SAC3BmB,EAAA,cAAAA,EAAA,cACEA,EAAA,cAACI,EAAA,CAAa,MAAOjB,EAAc,MAAO,UAAW,QAASD,EAAS,KAAM,SAAS,EACtFc,EAAA,cAACI,EAAA,CAAa,MAAOrB,EAAa,QAASC,EAAO,KAAM,SAAS,CACnE,CAEJ,CACF,CACF,CACF,CAEJ,CDhFO,SAASqB,EAAYC,EAAqB,CAC/C,IAGIC,EAAAD,EAFF,WAAAE,CA7BJ,EA+BMD,EADCE,EAAAC,EACDH,EADC,CADH,cAIF,OACEI,EAAA,cAACC,EAAAC,EAAA,CAAU,KAAML,GAAeC,EAAW,CAE/C,CEpCA,OAAOK,MAAW,QA2BX,SAASC,EAAcC,EAAuB,CACnD,IAGIC,EAAAD,EAFF,QAAAE,CA7BJ,EA+BMD,EADCE,EAAAC,EACDH,EADC,CADH,WAIF,OACEI,EAAA,cAACC,EAAAC,EAAA,CAAU,KAAM,WAAY,MAAOL,GAAYC,EAAW,CAE/D",
6
+ "names": ["React", "React", "useEffect", "useRef", "BaseModal", "props", "callback", "cancelLabel", "close", "closeLabel", "confirm", "confirmLabel", "message", "timeout", "title", "type", "timer", "nodeRef", "useRef", "useInjectStyleSheet", "useEffect", "setHeaderClass", "base", "handleClose", "React", "m", "idx", "generateKey", "CustomButton", "NotifyModal", "props", "_a", "modalType", "modalProps", "__objRest", "React", "BaseModal", "__spreadValues", "React", "QuestionModal", "props", "_a", "cancel", "modalProps", "__objRest", "React", "BaseModal", "__spreadValues"]
7
+ }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- export interface INotifyModal {
2
+ interface INotifyModal {
3
3
  close: () => void;
4
4
  closeLabel: string;
5
5
  modalType: 'success' | 'warning' | 'error';
@@ -8,4 +8,19 @@ export interface INotifyModal {
8
8
  callback?: (() => void) | undefined;
9
9
  timeout?: number;
10
10
  }
11
+ /**
12
+ * @example
13
+ * ```jsx
14
+ * <NotifyModal
15
+ * close={...}
16
+ * closeLabel={"..."}
17
+ * modalType={"success"}
18
+ * title={"..."}
19
+ * message={"..."}
20
+ * />
21
+ * ```
22
+ *
23
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/modal).
24
+ */
11
25
  export declare function NotifyModal(props: INotifyModal): React.JSX.Element;
26
+ export {};
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- export interface IQuestionModal {
2
+ interface IQuestionModal {
3
3
  cancel: () => void;
4
4
  cancelLabel: string;
5
5
  confirm: () => void;
@@ -7,4 +7,20 @@ export interface IQuestionModal {
7
7
  message: string | string[];
8
8
  title: string;
9
9
  }
10
+ /**
11
+ * @example
12
+ * ```jsx
13
+ * <QuestionModal
14
+ * cancel={...}
15
+ * cancelLabel={"..."}
16
+ * confirm={...}
17
+ * confirmLabel={"..."}
18
+ * title={"..."}
19
+ * message={"..."}
20
+ * />
21
+ * ```
22
+ *
23
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/questionModal).
24
+ */
10
25
  export declare function QuestionModal(props: IQuestionModal): React.JSX.Element;
26
+ export {};
@@ -7,11 +7,35 @@ interface ICustomRadio {
7
7
  disabled?: boolean;
8
8
  label?: string;
9
9
  }
10
+ /**
11
+ * @example
12
+ * ```js
13
+ * const option = {
14
+ * label: "foo",
15
+ * value: "foo",
16
+ * }
17
+ * ```
18
+ *
19
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/radio).
20
+ */
10
21
  export interface RadioOption {
11
22
  label: string;
12
23
  value: string;
13
24
  checked?: boolean;
14
25
  disabled?: boolean;
15
26
  }
27
+ /**
28
+ * @example
29
+ * ```jsx
30
+ * <CustomRadio
31
+ * value={...}
32
+ * valueChanged={...}
33
+ * label={"..."}
34
+ * options={[...]}
35
+ * />
36
+ * ```
37
+ *
38
+ * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/radio).
39
+ */
16
40
  export declare function CustomRadio(props: ICustomRadio): React.JSX.Element;
17
41
  export {};
@@ -0,0 +1,2 @@
1
+ import{a as r}from"../../chunks/chunk-YI2EBQL3.js";import{a as t}from"../../chunks/chunk-ZUB437SZ.js";import"../../chunks/chunk-6WQJC5LW.js";import a,{useEffect as f,useRef as h}from"react";function p(v){let{checkColor:m,disabled:l,label:s,options:n,value:i,valueChanged:b}=v,u=r("radio"),c=h(null);t(c),f(()=>{n.forEach(e=>{e.checked&&d(e)})},[]);function d(e){i===e.value||e.disabled||l||b(e.value)}return a.createElement("div",{ref:c},s&&a.createElement("div",{className:"uil-radio-title"},s),a.createElement("div",{className:"uil-radio-wrapper"},n.map((e,o)=>a.createElement("div",{key:r(o),className:"uil-radio-option"},a.createElement("div",{className:"uil-radio uil-check",onClick:()=>{d(e)}},a.createElement("input",{id:`${o}-${u}`,name:e.label,type:"radio",value:e.value,checked:i===e.value||i===""&&e.checked,onChange:()=>{d(e)},disabled:l||e.disabled}),a.createElement("div",{className:"uil-checkmark uil-radio-check",style:{backgroundColor:m}})),a.createElement("label",{htmlFor:`${o}-${u}`,className:"uil-font-base"},e.label)))))}export{p as CustomRadio};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/radio/customRadio.tsx"],
4
+ "sourcesContent": ["import React, {useEffect, useRef} from 'react';\nimport generateKey from 'utils/generateKey';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\n\ninterface ICustomRadio {\n options : RadioOption[];\n value : string;\n valueChanged: (value: string) => void;\n checkColor? : string;\n disabled? : boolean;\n label? : string;\n}\n\n/**\n * @example\n * ```js\n * const option = {\n * label: \"foo\",\n * value: \"foo\",\n * }\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/radio).\n */\nexport interface RadioOption {\n label : string;\n value : string;\n checked? : boolean;\n disabled?: boolean;\n}\n\n/**\n * @example\n * ```jsx\n * <CustomRadio\n * value={...}\n * valueChanged={...}\n * label={\"...\"}\n * options={[...]}\n * />\n * ```\n *\n * For more information go to the [docs](https://www.ui-library.hbsng.com/docs/components/radio).\n */\nexport function CustomRadio(props: ICustomRadio) {\n const {\n checkColor,\n disabled,\n label,\n options,\n value,\n valueChanged,\n } = props;\n\n const id = generateKey('radio');\n const nodeRef = useRef<HTMLDivElement>(null);\n useInjectStyleSheet(nodeRef);\n\n useEffect(() => {\n // prevents multiple radio options being checked at the same time\n options.forEach(option => {\n if (option.checked) handleRadioChange(option);\n });\n },[]);\n\n function handleRadioChange(option: RadioOption) {\n if (value === option.value || option.disabled || disabled) return;\n\n valueChanged(option.value);\n }\n\n return (\n <div ref={nodeRef}>\n {label && <div className={'uil-radio-title'}>{label}</div>}\n\n <div className={'uil-radio-wrapper'}>\n {options.map((option, idx) =>\n <div key={generateKey(idx)} className={'uil-radio-option'}>\n <div className={'uil-radio uil-check'} onClick={() => {handleRadioChange(option)}}>\n <input\n id={`${idx}-${id}`}\n name={option.label}\n type={'radio'}\n value={option.value}\n checked={value === option.value || value === '' && option.checked}\n onChange={() => {handleRadioChange(option)}}\n disabled={disabled? disabled : option.disabled}\n />\n <div className={'uil-checkmark uil-radio-check'} style={{backgroundColor: checkColor}}/>\n </div>\n\n <label htmlFor={`${idx}-${id}`} className={'uil-font-base'}>{option.label}</label>\n </div>\n )}\n </div>\n </div>\n );\n}"],
5
+ "mappings": "6IAAA,OAAOA,GAAQ,aAAAC,EAAW,UAAAC,MAAa,QA4ChC,SAASC,EAAYC,EAAqB,CAC/C,GAAM,CACJ,WAAAC,EACA,SAAAC,EACA,MAAAC,EACA,QAAAC,EACA,MAAAC,EACA,aAAAC,CACF,EAAIN,EAEEO,EAAKC,EAAY,OAAO,EACxBC,EAAUC,EAAuB,IAAI,EAC3CC,EAAoBF,CAAO,EAE3BG,EAAU,IAAM,CAEdR,EAAQ,QAAQS,GAAU,CACpBA,EAAO,SAASC,EAAkBD,CAAM,CAC9C,CAAC,CACH,EAAE,CAAC,CAAC,EAEJ,SAASC,EAAkBD,EAAqB,CAC1CR,IAAUQ,EAAO,OAASA,EAAO,UAAYX,GAEjDI,EAAaO,EAAO,KAAK,CAC3B,CAEA,OACEE,EAAA,cAAC,OAAI,IAAKN,GACPN,GAASY,EAAA,cAAC,OAAI,UAAW,mBAAoBZ,CAAM,EAEpDY,EAAA,cAAC,OAAI,UAAW,qBACbX,EAAQ,IAAI,CAACS,EAAQG,IACpBD,EAAA,cAAC,OAAI,IAAKP,EAAYQ,CAAG,EAAG,UAAW,oBACrCD,EAAA,cAAC,OAAI,UAAW,sBAAuB,QAAS,IAAM,CAACD,EAAkBD,CAAM,CAAC,GAC9EE,EAAA,cAAC,SACC,GAAI,GAAGC,CAAG,IAAIT,CAAE,GAChB,KAAMM,EAAO,MACb,KAAM,QACN,MAAOA,EAAO,MACd,QAASR,IAAUQ,EAAO,OAASR,IAAU,IAAMQ,EAAO,QAC1D,SAAU,IAAM,CAACC,EAAkBD,CAAM,CAAC,EAC1C,SAAUX,GAAqBW,EAAO,SACxC,EACAE,EAAA,cAAC,OAAI,UAAW,gCAAiC,MAAO,CAAC,gBAAiBd,CAAU,EAAE,CACxF,EAEAc,EAAA,cAAC,SAAM,QAAS,GAAGC,CAAG,IAAIT,CAAE,GAAI,UAAW,iBAAkBM,EAAO,KAAM,CAC5E,CACF,CACF,CACF,CAEJ",
6
+ "names": ["React", "useEffect", "useRef", "CustomRadio", "props", "checkColor", "disabled", "label", "options", "value", "valueChanged", "id", "generateKey", "nodeRef", "useRef", "useInjectStyleSheet", "useEffect", "option", "handleRadioChange", "React", "idx"]
7
+ }
@@ -1 +1 @@
1
- export declare function useClickOutsideRef<T extends HTMLElement>(callback: () => void): import("react").RefObject<T>;
1
+ export declare function useClickOutsideRef<T extends HTMLElement>(callback: () => void): import("react").MutableRefObject<T>;
@@ -1,2 +1 @@
1
1
  export * from './clickOutside';
2
- export * from './getColor';
@@ -0,0 +1,2 @@
1
+ import{a as o}from"../../chunks/chunk-TWVAPPO3.js";import"../../chunks/chunk-6WQJC5LW.js";export{o as useClickOutsideRef};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ export * from './getColor';
@@ -0,0 +1,2 @@
1
+ import{a as o}from"../../chunks/chunk-X5MLSG6J.js";import"../../chunks/chunk-6WQJC5LW.js";export{o as useGetColor};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
package/package.json CHANGED
@@ -1,12 +1,17 @@
1
1
  {
2
2
  "private": false,
3
3
  "name": "@hbuesing/ui-library",
4
- "version": "4.0.1",
4
+ "version": "5.0.0-beta.1",
5
5
  "description": "Collection of reusable ui components for react based applications",
6
6
  "source": "src/index.ts",
7
7
  "type": "module",
8
8
  "types": "./dist/index.d.ts",
9
- "exports": "./dist/bundle.js",
9
+ "exports": {
10
+ "customButton": {
11
+ "import": "./dist/components/button/index.js",
12
+ "types": "./dist/components/button/index.d.ts"
13
+ }
14
+ },
10
15
  "files": [
11
16
  "dist/*"
12
17
  ],
@@ -14,7 +19,8 @@
14
19
  "clean": "rimraf ./dist && mkdir dist",
15
20
  "lint": "eslint src",
16
21
  "lint:nw": "eslint src --max-warnings 0",
17
- "build": "microbundle build --output ./dist/bundle.js --generateTypes true --format modern --jsx react --globals react/jsx-runtime=jsxRuntime --css inline",
22
+ "build": "node ./esbuild.js",
23
+ "postbuild": "tsc --emitDeclarationOnly --project tsconfig.build.json",
18
24
  "build:uil": "microbundle build --output ../website/src/uil-bundle/bundle.js --generateTypes true --format modern --jsx react --globals react/jsx-runtime=jsxRuntime --css inline",
19
25
  "dev": "microbundle -w --output ./dist/bundle.js --generateTypes true --format modern --jsx react --globals react/jsx-runtime=jsxRuntime --css inline",
20
26
  "stats": "microbundle build --output ./dist/bundle.js --generateTypes true --format modern --jsx react --globals react/jsx-runtime=jsxRuntime --css inline --visualize --raw"
@@ -31,6 +37,8 @@
31
37
  "react": "^18.0.0"
32
38
  },
33
39
  "devDependencies": {
40
+ "esbuild": "0.24.0",
41
+ "esbuild-sass-plugin": "^3.3.1",
34
42
  "microbundle": "^0.15.1",
35
43
  "rimraf": "^6.0.1"
36
44
  }
package/dist/bundle.js DELETED
@@ -1,2 +0,0 @@
1
- import e,{useEffect as l,useRef as i,useState as r}from"react";function t(){return t=Object.assign?Object.assign.bind():function(e){for(var l=1;l<arguments.length;l++){var i=arguments[l];for(var r in i)({}).hasOwnProperty.call(i,r)&&(e[r]=i[r])}return e},t.apply(null,arguments)}function a(e,l){if(null==e)return{};var i={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(l.includes(r))continue;i[r]=e[r]}return i}var o=":root{--uil-black:#000;--uil-black-alt:#222;--uil-white:#fff;--uil-grey:#f3f3f3;--uil-grey-alt:#cfcfcf;--uil-grey-dark:#878787;--uil-outline-focus:#1e90ff;--uil-outline-disabled:#8b0000;--uil-success:#006a4e;--uil-error:#800020;--uil-question:#00416a;--uil-warning:gold;--uil-xxxs:.125rem;--uil-xxs:.25rem;--uil-xs:.5rem;--uil-s:.75rem;--uil-m:1rem;--uil-l:1.25rem;--uil-xl:1.5rem;--uil-xxl:1.75rem;--uil-xxxl:2rem;--uil-font-base:var(--uil-l);--uil-font-small:var(--uil-m)}.uil-button{background-color:var(--uil-white);border:1px solid var(--uil-black);border-radius:2px;box-shadow:0 0 3px 0 var(--uil-black-alt);color:var(--uil-black);cursor:pointer;letter-spacing:1px;padding:.375rem var(--uil-xxs)}@media (min-width:760px){.uil-button{padding:var(--uil-xs) var(--uil-s)}}.uil-button.uil-disabled{background-color:var(--uil-grey-dark);border:transparent;color:var(--uil-grey)}.uil-button.uil-small{font-size:var(--uil-font-small);line-height:var(--uil-font-small);padding:var(--uil-xxs) var(--uil-xs)}.uil-check-wrapper{align-items:center;display:flex;font-size:var(--uil-font-base);gap:var(--uil-s);line-height:var(--uil-font-base)}.uil-check-wrapper .uil-checkbox{border-radius:2px}.uil-check-wrapper .uil-check-label{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.uil-svg-wrapper{display:flex;height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content}.uil-svg-wrapper .uil-svg{height:var(--uil-xxxl);width:var(--uil-xxxl)}.uil-input-wrapper{display:block;position:relative}.uil-input-wrapper .uil-label{background:linear-gradient(0deg,var(--uil-white) 9px,transparent 0);color:var(--uil-black);cursor:text;font-weight:700;left:var(--uil-xxs);opacity:.6;padding:0 var(--uil-xxxs);position:absolute;top:25%;transition:top .25s ease-in-out}.uil-input-wrapper .uil-input{background-color:var(--uil-white);border:1px solid var(--uil-black);border-radius:0;box-sizing:border-box;color:var(--uil-black);padding:var(--uil-xs);width:100%}.uil-input-wrapper .uil-input::-moz-placeholder{color:transparent;height:0;width:0}.uil-input-wrapper .uil-input::placeholder{color:transparent;height:0;width:0}.uil-input-wrapper .uil-input:focus{outline:1px solid var(--uil-outline-focus)}.uil-input-wrapper .uil-input:disabled{background-color:var(--uil-grey);border:2px solid var(--uil-outline-disabled);color:var(--uil-grey-dark);cursor:not-allowed}.uil-input-wrapper .uil-input:disabled~.uil-label{background:transparent;color:var(--uil-grey-dark);cursor:not-allowed}.uil-input-wrapper .uil-input:disabled~.uil-icon{fill:var(--uil-grey-dark);cursor:not-allowed}.uil-input-wrapper .uil-input:disabled:not(:-moz-placeholder-shown)~.uil-label{background:linear-gradient(0deg,var(--uil-grey) 8px,transparent 0)}.uil-input-wrapper .uil-input:disabled:not(:placeholder-shown)~.uil-label{background:linear-gradient(0deg,var(--uil-grey) 8px,transparent 0)}.uil-input-wrapper .uil-icon{fill:var(--uil-black);align-items:center;display:flex;justify-content:center;opacity:.5;position:absolute;right:var(--uil-xs);top:50%;transform:translateY(-50%)}.uil-input-wrapper .uil-input:not(:-moz-placeholder-shown)~.uil-label{opacity:1;top:-30%}.uil-input-wrapper .uil-input:focus~.uil-label,.uil-input-wrapper .uil-input:not(:placeholder-shown)~.uil-label{opacity:1;top:-30%}.uil-input-wrapper .uil-input:not(:-moz-placeholder-shown)~.uil-icon{opacity:1}.uil-input-wrapper .uil-input:focus~.uil-icon,.uil-input-wrapper .uil-input:not(:placeholder-shown)~.uil-icon{opacity:1}.uil-tooltip-wrapper{position:relative}.uil-tooltip-wrapper .uil-tooltip-icon{fill:var(--uil-black-alt);cursor:pointer;margin-bottom:var(--uil-xxs)}.uil-tooltip-wrapper .uil-tooltip-icon:has(~.uil-input-wrapper>.uil-input:not(:-moz-placeholder-shown),~.uil-input-wrapper:focus-within){opacity:0;-moz-transition:opacity .3s,visibility .3s;transition:opacity .3s,visibility .3s;visibility:hidden}.uil-tooltip-wrapper .uil-tooltip-icon:has(~.uil-input-wrapper>.uil-input:not(:placeholder-shown),~.uil-input-wrapper:focus-within){opacity:0;transition:opacity .3s,visibility .3s;visibility:hidden}.uil-tooltip-wrapper .uil-tooltip{background-color:rgba(34,34,34,.9);border-radius:3px;box-sizing:border-box;color:var(--uil-white);font-size:var(--uil-font-small);left:0;line-height:var(--uil-font-small);padding:var(--uil-s);position:absolute;top:0;width:100%;z-index:1}.uil-tooltip-wrapper .uil-tooltip .uil-tooltip-button{background-color:transparent;border:none;border-bottom:1px solid var(--uil-white);color:var(--uil-white);cursor:pointer;display:block;margin-bottom:var(--uil-m);margin-left:auto;padding:0}.uil-password-rules{display:flex;flex-direction:column;gap:var(--uil-xs);margin-left:var(--uil-xs);margin-top:var(--uil-m)}.uil-password-rules .uil-password-rule{align-items:center;display:flex;font-size:var(--uil-font-small);gap:var(--uil-xxs);line-height:var(--uil-font-small)}.uil-modal-wrapper{background-color:rgba(0,0,0,.5);height:100%;left:0;position:fixed;top:0;width:100%;z-index:99}.uil-modal-wrapper .uil-modal{border-radius:5px;box-shadow:0 0 6px 0 var(--uil-black);left:50%;position:absolute;top:30%;transform:translateX(-50%);width:95%;z-index:999}@media (min-width:1025px){.uil-modal-wrapper .uil-modal{width:75%}}@media (min-width:1250px){.uil-modal-wrapper .uil-modal{width:55%}}@media (min-width:1920px){.uil-modal-wrapper .uil-modal{width:35%}}.uil-modal-wrapper .uil-modal .uil-progress-wrapper{background-color:var(--uil-grey-alt)}.uil-modal-wrapper .uil-modal .uil-progress-wrapper .uil-progress-bar{animation-duration:2s;animation-iteration-count:1;animation-name:uil-progress;border:2px solid var(--uil-grey-dark)}@keyframes uil-progress{0%{width:100%}to{width:0}}.uil-modal-wrapper .uil-modal .uil-header{background-color:var(--uil-question);border-top-left-radius:3px;border-top-right-radius:3px;color:var(--uil-white);display:flex;font-size:var(--uil-xl);font-weight:700;justify-content:space-between;line-height:var(--uil-xl);margin:0;padding:var(--uil-s)}@media (min-width:1025px){.uil-modal-wrapper .uil-modal .uil-header{font-size:var(--uil-xxxl);line-height:var(--uil-xxxl);padding:var(--uil-m)}}.uil-modal-wrapper .uil-modal .uil-header.uil-success{background-color:var(--uil-success)}.uil-modal-wrapper .uil-modal .uil-header.uil-error{background-color:var(--uil-error)}.uil-modal-wrapper .uil-modal .uil-header.uil-warning{background-color:var(--uil-warning);color:var(--uil-black)}.uil-modal-wrapper .uil-modal .uil-content{background-color:var(--uil-white);border-bottom-left-radius:3px;border-bottom-right-radius:3px;display:flex;flex-direction:column;gap:var(--uil-m);padding:var(--uil-m)}@media (min-width:1025px){.uil-modal-wrapper .uil-modal .uil-content{gap:var(--uil-xxxl);padding:var(--uil-l)}}.uil-modal-wrapper .uil-modal .uil-content .uil-modal-text{color:var(--uil-black);font-size:var(--uil-font-base);line-height:var(--uil-font-base);margin:0}.uil-modal-wrapper .uil-modal .uil-content .uil-button-wrapper{display:flex;justify-content:space-between}.uil-modal-wrapper .uil-modal .uil-content .uil-button-wrapper.uil-single{justify-content:end}.uil-radio-title{display:block;font-size:var(--uil-xl);line-height:var(--uil-xl);margin-bottom:var(--uil-m)}.uil-radio-wrapper{display:flex;flex-direction:column;gap:var(--uil-m)}.uil-radio-wrapper .uil-radio-option{align-items:center;display:flex;gap:.25rem}.uil-radio-wrapper .uil-radio-option .uil-radio,.uil-radio-wrapper .uil-radio-option .uil-radio .uil-radio-check{border-radius:50%}.uil-fit{height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content}.uil-font-base{font-size:var(--uil-font-base);line-height:var(--uil-font-base)}.uil-check{border:2px solid var(--uil-black-alt);box-sizing:border-box;cursor:pointer;display:block;font-size:var(--uil-font-small);line-height:var(--uil-font-small);min-height:var(--uil-l);min-width:var(--uil-l);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.uil-check:has(input:disabled){background-color:var(--uil-grey);border-color:var(--uil-grey-dark)}.uil-check input{cursor:pointer;height:0;opacity:0;position:absolute;width:0}.uil-check input:checked~.uil-checkmark{transform:scale(1)}.uil-check input:disabled~.uil-checkmark{background-color:var(--uil-grey-dark)}.uil-check .uil-checkmark{background-color:var(--uil-black-alt);height:var(--uil-xs);left:25%;position:absolute;top:25%;transform:scale(0);transition:.1s ease;width:var(--uil-xs)}";const n=[];function u(e){l(()=>{const l=e.current?e.current.ownerDocument:document;if(void 0!==l&&!n.includes(l)){const e=l.createElement("style");e.innerHTML=o,n.push(l),l.head.appendChild(e)}},[])}function c(l){const{color:r,height:t,src:a,width:o}=l;if(!a.includes(".svg"))throw new Error("Provided src is not an svg image");const n={fill:r,height:t,width:o},c=i(null);return u(c),e.createElement("div",{ref:c,className:"uil-svg-wrapper"},e.createElement("svg",{"aria-hidden":!0,className:"uil-svg",style:n},e.createElement("use",{href:a})))}const s=["iconColor","iconSrc","inputColor","label","toggle","valueChanged"];function p(l){const{iconColor:r,iconSrc:o,inputColor:n,label:p,toggle:d,valueChanged:m}=l,h=a(l,s),b=i(null);return u(b),e.createElement("label",{className:"uil-input-wrapper",htmlFor:h.id,ref:b},e.createElement("input",t({className:"uil-input uil-font-base",onChange:e=>{m(e.target.value)},placeholder:p,style:{color:n}},h)),o&&e.createElement("div",{className:"uil-icon",onClick:d},e.createElement(c,{src:o,width:24,height:24,color:r})),e.createElement("span",{className:"uil-label uil-font-base",style:{color:n}},p))}function d(e){const r=i(null);return l(()=>{if(r.current)return document.addEventListener("click",l),document.addEventListener("touchend",l),()=>{document.removeEventListener("click",l),document.removeEventListener("touchend",l)};function l(l){r.current&&!r.current.contains(l.target)&&e()}},[e]),r}const m=["tooltipClose","tooltipIcon","tooltipText"];function h(l){const{tooltipClose:i,tooltipIcon:o,tooltipText:n}=l,u=a(l,m),[s,h]=r(!1),b=d(g);function g(){h(!1)}return e.createElement(e.Fragment,null,o?e.createElement("div",{className:"uil-tooltip-wrapper",ref:b},s&&e.createElement("div",{className:"uil-tooltip"},i&&e.createElement("button",{className:"uil-tooltip-button uil-fit",onClick:g},i),e.createElement("span",null,n)),e.createElement("div",{className:"uil-tooltip-icon uil-fit",onClick:()=>{h(!s)}},e.createElement(c,{src:o,height:16,width:16})),e.createElement(p,t({},u))):e.createElement(p,t({},u)))}function b(e){return`${e}-${String(Date.now().toString(32)+Math.random().toString(16)).replace(/\./g,"")}`}const g=["capsLockWarning","rules","ruleChecked","ruleUnchecked","setFailedRules"];function f(i){const{capsLockWarning:o,rules:n,ruleChecked:u,ruleUnchecked:s,setFailedRules:p}=i,d=a(i,g),[m,f]=r(!1);function v(e){let l;if(e.type){if(!e.count)throw new Error("count must not be empty if a type is provided");switch(e.type){case"minLength":l=`[a-zA-Z0-9ßÄäÖöÜü._!"\`'#%&§,:;<>=@{}~\\$\\(\\)\\*\\+\\/\\\\\\?\\[\\]\\^\\|\\-]{${e.count},}`;break;case"maxLength":l=`^[a-zA-Z0-9ßÄäÖöÜü._!"\`'#%&,:;<>=@{}~\\$\\(\\)\\*\\+\\/\\\\\\?\\[\\]\\^\\|\\-]{0,${e.count}}$`;break;case"letters":l=`[a-zA-ZßÄäÖöÜü]{${e.count},}`;break;case"numbers":l=`[0-9]{${e.count},}`;break;case"special":l=`[._!"\`'#%&§,:;<>=@{}~\\$\\(\\)\\*\\+\\/\\\\\\?\\[\\]\\^\\|\\-]{${e.count},}`;break;case"upper":l=`[A-ZÄÖÜ]{${e.count},}`;break;default:throw new Error("unrecognized rule type provided")}}else{if(!e.pattern)throw new Error("pattern must not be an empty string");l=e.pattern}return new RegExp(l).test(i.value)}return l(()=>{!function(){const e=[];n.forEach(l=>{v(l)||e.push(l)}),null==p||p(e)}()},[i.value]),l(()=>{if(o)return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)};function e(e){f(e.getModifierState("CapsLock"))}},[]),e.createElement("div",null,e.createElement(h,t({},d)),e.createElement("div",{className:"uil-password-rules"},m&&e.createElement("div",{className:"uil-password-rule"},o),n.map((l,i)=>e.createElement("div",{key:b(i),className:"uil-password-rule"},e.createElement(c,{src:v(l)?u:s,height:12,width:12}),e.createElement("span",null,l.label)))))}function v(e){if(7!==e.length)throw new Error("provided hex color must be 7 characters (including #) long");e=e.substring(1,7);const l=[parseInt(e.substring(0,2),16)/255,parseInt(e.substring(2,4),16)/255,parseInt(e.substring(4,6),16)/255].map(e=>e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4));return.2126*l[0]+.7152*l[1]+.0722*l[2]>.179?"#000000":"#ffffff"}const w=["disabled","label","small","theme"];function k(l){const{disabled:r=!1,label:o,small:n=!1,theme:c}=l,s=a(l,w),p=i(null);return u(p),e.createElement("button",t({className:function(){const e="uil-button uil-fit";return r?n?`${e} uil-disabled uil-small`:`${e} uil-font-base uil-disabled`:n?`${e} uil-small`:`${e} uil-font-base`}(),style:function(){if(!r&&c){if(c.includes("#"))return{color:v(c),backgroundColor:c,border:"transparent"};switch(c){case"success":return{color:v("#006A4E"),backgroundColor:"#006A4E",border:"transparent"};case"warning":return{color:"#000000",backgroundColor:"#FFD700",border:"transparent"};case"error":return{color:v("#800020"),backgroundColor:"#800020",border:"transparent"};default:throw new Error("invalid theme provided")}}}(),disabled:r,ref:p},s),o)}function x(r){const{callback:t,cancelLabel:a="",close:o,closeLabel:n,confirm:c,confirmLabel:s="",message:p,timeout:d,title:m,type:h}=r;let g;const f=i(null);return u(f),l(()=>{if(d)return g=setTimeout(()=>t?t():o(),d),()=>{clearTimeout(g)}},[]),e.createElement("div",{className:"uil-modal-wrapper",ref:f},e.createElement("div",{className:"uil-modal"},e.createElement("div",{className:function(){const e="uil-header";switch(h){case"error":return`${e} uil-error`;case"success":return`${e} uil-success`;case"warning":return`${e} uil-warning`;default:return e}}()},m),d&&e.createElement("div",{className:"uil-progress-wrapper"},e.createElement("div",{className:"uil-progress-bar",style:{animationDuration:d/1e3+.5+"s"}})),e.createElement("div",{className:"uil-content"},e.createElement("div",null,Array.isArray(p)?p.map((l,i)=>e.createElement("p",{key:b(i),className:"uil-modal-text"},l)):e.createElement("p",{className:"uil-modal-text"},p)),e.createElement("div",{className:"uil-button-wrapper "+("question"!==h?"uil-single":"")},"question"!==h&&e.createElement(k,{label:null!=n?n:"",onClick:function(){return clearTimeout(g),d&&t?t():o()},type:"button"}),"question"==h&&r.confirm&&e.createElement(e.Fragment,null,e.createElement(k,{label:s,theme:"#00416A",onClick:c,type:"button"}),e.createElement(k,{label:a,onClick:o,type:"button"}))))))}const y=["modalType"];function E(l){const{modalType:i}=l,r=a(l,y);return e.createElement(x,t({type:i},r))}const C=["cancel"];function N(l){const{cancel:i}=l,r=a(l,C);return e.createElement(x,t({type:"question",close:i},r))}function z(r){const{checkColor:t,disabled:a,label:o,options:n,value:c,valueChanged:s}=r,p=b("radio"),d=i(null);function m(e){c===e.value||e.disabled||a||s(e.value)}return u(d),l(()=>{n.forEach(e=>{e.checked&&m(e)})},[]),e.createElement("div",{ref:d},o&&e.createElement("div",{className:"uil-radio-title"},o),e.createElement("div",{className:"uil-radio-wrapper"},n.map((l,i)=>e.createElement("div",{key:b(i),className:"uil-radio-option"},e.createElement("div",{className:"uil-radio uil-check",onClick:()=>{m(l)}},e.createElement("input",{id:`${i}-${p}`,name:l.label,type:"radio",value:l.value,checked:c===l.value||""===c&&l.checked,onChange:()=>{m(l)},disabled:a||l.disabled}),e.createElement("div",{className:"uil-checkmark uil-radio-check",style:{backgroundColor:t}})),e.createElement("label",{htmlFor:`${i}-${p}`,className:"uil-font-base"},l.label)))))}const $=["checkColor","checked","children","toggleCheck","label"];function L(l){const{checkColor:r,checked:o,children:n,toggleCheck:c,label:s}=l,p=a(l,$),d=b("check"),m=i(null);return u(m),e.createElement("div",{className:"uil-check-wrapper",ref:m},e.createElement("div",{className:"uil-checkbox uil-check",onClick:()=>{c(!o)}},e.createElement("input",t({type:"checkbox",checked:o,onChange:()=>{c(!o)}},p,{id:d})),e.createElement("div",{className:"uil-checkmark",style:{backgroundColor:r}})),e.createElement("label",{htmlFor:d,className:"uil-check-label"},n||s))}export{k as CustomButton,L as CustomCheckbox,h as CustomInput,z as CustomRadio,E as NotifyModal,f as PasswordInput,N as QuestionModal,c as SVG,d as useClickOutsideRef,v as useGetColor};
2
- //# sourceMappingURL=bundle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bundle.js","sources":["../src/utils/useInjectStyles.ts","../src/components/images/svgIcon.tsx","../src/components/input/baseInput.tsx","../src/hooks/clickOutside.ts","../src/components/input/customInput.tsx","../src/utils/generateKey.ts","../src/components/input/passwordInput.tsx","../src/hooks/getColor.ts","../src/components/button/customButton.tsx","../src/components/modal/baseModal.tsx","../src/components/modal/notifyModal.tsx","../src/components/modal/questionModal.tsx","../src/components/radio/customRadio.tsx","../src/components/checkbox/customCheckbox.tsx"],"sourcesContent":["import {RefObject, useEffect} from 'react';\nimport styles from './styles.scss';\n\nconst injectedStyles: Document[] = [];\n\nexport default function useInjectStyleSheet(nodeRef: RefObject<HTMLElement>): void {\n useEffect(() => {\n const parentDocument = nodeRef.current ? nodeRef.current.ownerDocument : document;\n\n if (typeof parentDocument !== \"undefined\" && !injectedStyles.includes(parentDocument)) {\n const styleElement = parentDocument.createElement(\"style\");\n\n styleElement.innerHTML = styles;\n injectedStyles.push(parentDocument);\n\n parentDocument.head.appendChild(styleElement);\n }\n }, []);\n}","import React, {ComponentPropsWithoutRef, CSSProperties, useRef} from 'react';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\n\ninterface ISvgIcon extends ComponentPropsWithoutRef<'svg'>{\n src : string;\n color? : string | undefined;\n height?: number;\n width? : number;\n}\n\nexport function SVG(props: ISvgIcon) {\n const {\n color,\n height,\n src,\n width\n } = props;\n\n if (!src.includes('.svg')) {\n throw new Error('Provided src is not an svg image');\n }\n\n const style: CSSProperties = {\n fill: color,\n height: height,\n width: width,\n }\n\n const nodeRef = useRef<HTMLDivElement>(null);\n useInjectStyleSheet(nodeRef);\n\n return (\n <div ref={nodeRef} className={'uil-svg-wrapper'}>\n <svg aria-hidden={true} className={'uil-svg'} style={style}>\n <use href={src}/>\n </svg>\n </div>\n );\n}","import React, {ComponentPropsWithoutRef, useRef} from 'react';\nimport {SVG} from 'components/images/svgIcon';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\n\nexport interface IBaseInput extends ComponentPropsWithoutRef<'input'> {\n label : string;\n value : string;\n valueChanged: (value: string) => void;\n iconColor? : string;\n iconSrc? : string;\n inputColor? : string;\n toggle? : () => void;\n}\n\nexport function BaseInput(props: IBaseInput) {\n const {\n iconColor,\n iconSrc,\n inputColor,\n label,\n toggle,\n valueChanged,\n ...inputProps\n } = props;\n\n const nodeRef = useRef<HTMLLabelElement>(null);\n useInjectStyleSheet(nodeRef);\n\n return (\n <label className={'uil-input-wrapper'} htmlFor={inputProps.id} ref={nodeRef}>\n <input\n className={'uil-input uil-font-base'}\n onChange={(e) => {valueChanged(e.target.value)}}\n placeholder={label}\n style={{color: inputColor}}\n {...inputProps}\n />\n\n {iconSrc &&\n <div className={'uil-icon'} onClick={toggle}>\n <SVG src={iconSrc} width={24} height={24} color={iconColor}/>\n </div>\n }\n\n <span className={'uil-label uil-font-base'} style={{color: inputColor}}>{label}</span>\n </label>\n );\n}","import {useEffect, useRef} from 'react';\n\nexport function useClickOutsideRef<T extends HTMLElement>(callback: () => void) {\n const ref = useRef<T>(null);\n\n useEffect(() => {\n if (!ref.current) return;\n\n function handleClickOutside (event: MouseEvent | TouchEvent) {\n if (ref.current && !ref.current.contains(event.target as Node)) {\n callback();\n }\n }\n\n document.addEventListener('click', handleClickOutside);\n document.addEventListener('touchend', handleClickOutside);\n\n return () => {\n document.removeEventListener('click', handleClickOutside);\n document.removeEventListener('touchend', handleClickOutside);\n };\n }, [callback]);\n\n return ref;\n}","import React, {useState} from 'react';\nimport {BaseInput, IBaseInput} from './baseInput';\nimport {SVG} from 'components/images/svgIcon';\nimport {useClickOutsideRef} from 'hooks/clickOutside';\n\nexport interface ICustomInput extends IBaseInput {\n tooltipClose?: string;\n tooltipIcon? : string;\n tooltipText? : string;\n}\n\nexport function CustomInput(props: ICustomInput) {\n const {\n tooltipClose,\n tooltipIcon,\n tooltipText,\n ...inputProps\n } = props;\n\n const [tooltipVisible, setTooltipVisible] = useState(false);\n const ref = useClickOutsideRef<HTMLDivElement>(closeTooltip);\n\n function closeTooltip() {\n setTooltipVisible(false);\n }\n\n return (\n <>\n {tooltipIcon ?\n <div className={'uil-tooltip-wrapper'} ref={ref}>\n {tooltipVisible &&\n <div className={'uil-tooltip'}>\n {tooltipClose &&\n <button className={'uil-tooltip-button uil-fit'} onClick={closeTooltip}>\n {tooltipClose}\n </button>\n }\n\n <span>{tooltipText}</span>\n </div>\n }\n\n <div className={'uil-tooltip-icon uil-fit'} onClick={() => {setTooltipVisible(!tooltipVisible)}}>\n <SVG src={tooltipIcon} height={16} width={16}/>\n </div>\n\n <BaseInput {...inputProps}/>\n </div> :\n\n <BaseInput {...inputProps}/>\n }\n </>\n );\n}","export default function generateKey(prefix: string | number) {\n const id = String(Date.now().toString(32) + Math.random().toString(16)).replace(/\\./g, '');\n\n return `${prefix}-${id}`;\n}","import React, {useEffect, useState} from 'react';\nimport {CustomInput, ICustomInput} from './customInput';\nimport {SVG} from 'components/images/svgIcon';\nimport generateKey from 'utils/generateKey';\n\ninterface IPasswordInput extends ICustomInput {\n ruleChecked : string;\n rules : PasswordRule[];\n ruleUnchecked : string;\n capsLockWarning?: string;\n setFailedRules? : (value: PasswordRule[]) => void;\n}\n\nexport interface PasswordRule {\n label : string;\n count? : number;\n type? : 'minLength' | 'maxLength' | 'letters' | 'numbers' | 'special' | 'upper';\n pattern?: string;\n}\n\nexport function PasswordInput(props: IPasswordInput) {\n const {\n capsLockWarning,\n rules,\n ruleChecked,\n ruleUnchecked,\n setFailedRules,\n ...inputProps\n } = props;\n\n const [capsLock, setCapsLock] = useState(false);\n\n useEffect(() => {\n validateInput();\n }, [props.value]);\n\n useEffect(() => {\n if (!capsLockWarning) return;\n\n function setCapsLockState(event: globalThis.KeyboardEvent) {\n setCapsLock(event.getModifierState('CapsLock'));\n }\n\n document.addEventListener('keydown', setCapsLockState);\n\n return () => {document.removeEventListener('keydown', setCapsLockState)};\n }, []);\n\n function validateInput() {\n const failedRules: PasswordRule[] = [];\n\n rules.forEach(rule => {\n if (!checkRule(rule)) {\n failedRules.push(rule);\n }\n });\n\n setFailedRules?.(failedRules);\n }\n\n function checkRule(rule: PasswordRule): boolean {\n let pattern: string;\n\n if (rule.type) {\n if (!rule.count) throw new Error('count must not be empty if a type is provided');\n\n switch (rule.type) {\n case 'minLength':\n pattern = `[a-zA-Z0-9ßÄäÖöÜü._!\"\\`'#%&§,:;<>=@{}~\\\\$\\\\(\\\\)\\\\*\\\\+\\\\/\\\\\\\\\\\\?\\\\[\\\\]\\\\^\\\\|\\\\-]{${rule.count},}`;\n break;\n case 'maxLength':\n pattern = `^[a-zA-Z0-9ßÄäÖöÜü._!\"\\`'#%&,:;<>=@{}~\\\\$\\\\(\\\\)\\\\*\\\\+\\\\/\\\\\\\\\\\\?\\\\[\\\\]\\\\^\\\\|\\\\-]{0,${rule.count}}$`;\n break;\n case 'letters':\n pattern = `[a-zA-ZßÄäÖöÜü]{${rule.count},}`;\n break;\n case 'numbers':\n pattern = `[0-9]{${rule.count},}`;\n break;\n case 'special':\n pattern = `[._!\"\\`'#%&§,:;<>=@{}~\\\\$\\\\(\\\\)\\\\*\\\\+\\\\/\\\\\\\\\\\\?\\\\[\\\\]\\\\^\\\\|\\\\-]{${rule.count},}`;\n break;\n case 'upper':\n pattern = `[A-ZÄÖÜ]{${rule.count},}`;\n break;\n default:\n throw new Error('unrecognized rule type provided');\n }\n } else {\n if (!rule.pattern) {\n throw new Error('pattern must not be an empty string');\n }\n\n pattern = rule.pattern;\n }\n\n const reg = new RegExp(pattern);\n return reg.test(props.value);\n }\n\n return (\n <div>\n <CustomInput {...inputProps}/>\n\n <div className={'uil-password-rules'}>\n {capsLock && <div className={'uil-password-rule'}>{capsLockWarning}</div>}\n\n {rules.map((rule, idx) =>\n <div key={generateKey(idx)} className={'uil-password-rule'}>\n <SVG src={checkRule(rule) ? ruleChecked : ruleUnchecked} height={12} width={12}/>\n\n <span>{rule.label}</span>\n </div>\n )}\n </div>\n </div>\n );\n}","export function useGetColor(backgroundColor: string) {\n if (backgroundColor.length !== 7) throw new Error('provided hex color must be 7 characters (including #) long');\n\n backgroundColor = backgroundColor.substring(1, 7);\n const uiColors = [\n parseInt(backgroundColor.substring(0, 2), 16) / 255,\n parseInt(backgroundColor.substring(2, 4), 16) / 255,\n parseInt(backgroundColor.substring(4, 6), 16) / 255\n ];\n const c = uiColors.map(col => {\n return col <= 0.03928? (col / 12.92) : Math.pow((col + 0.055) / 1.055, 2.4);\n });\n const contrast = (0.2126 * c[0]) + (0.7152 * c[1]) + (0.0722 * c[2]);\n\n return contrast > 0.179 ? '#000000' : '#ffffff';\n}","import React, {ComponentPropsWithoutRef, CSSProperties, useRef} from 'react';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\nimport {useGetColor} from 'hooks/getColor';\n\ntype HEXColor = `#${string}`\n\ninterface ICustomButton extends ComponentPropsWithoutRef<'button'> {\n label : string;\n disabled?: boolean;\n small? : boolean;\n theme? : HEXColor | 'success' | 'warning' | 'error';\n}\n\nexport function CustomButton(props: ICustomButton) {\n const {\n disabled = false,\n label,\n small = false,\n theme,\n ...buttonProps\n } = props;\n\n const nodeRef = useRef<HTMLButtonElement>(null);\n useInjectStyleSheet(nodeRef);\n\n function getStyle(): CSSProperties | undefined {\n if (disabled || !theme) return undefined;\n\n if (theme.includes('#')) {\n return {\n color: useGetColor(theme),\n backgroundColor: theme,\n border: 'transparent'\n };\n }\n\n switch (theme) {\n case 'success':\n return {\n color: useGetColor('#006A4E'),\n backgroundColor: '#006A4E',\n border: 'transparent'\n };\n case 'warning':\n return {\n color: '#000000',\n backgroundColor: '#FFD700',\n border: 'transparent'\n };\n case 'error':\n return {\n color: useGetColor('#800020'),\n backgroundColor: '#800020',\n border: 'transparent'\n };\n default:\n throw new Error('invalid theme provided')\n }\n }\n\n function getClassName(): string {\n const base = 'uil-button uil-fit'\n\n if (disabled) {\n if (small) {\n return `${base} uil-disabled uil-small`;\n }\n\n return `${base} uil-font-base uil-disabled`;\n }\n\n if (small) {\n return `${base} uil-small`;\n }\n\n return `${base} uil-font-base`;\n }\n\n return (\n <button className={getClassName()} style={getStyle()} disabled={disabled} ref={nodeRef} {...buttonProps}>\n {label}\n </button>\n );\n}","import React, {useEffect, useRef} from 'react';\nimport {CustomButton} from 'components/button/customButton';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\nimport generateKey from 'utils/generateKey';\n\ninterface IBaseModal {\n close : () => void;\n message : string | string[];\n title : string;\n type : 'success' | 'warning' | 'error' | 'question';\n callback? : (() => void) | undefined;\n cancelLabel? : string;\n closeLabel? : string;\n confirm? : () => void;\n confirmLabel?: string;\n timeout? : number;\n}\n\nexport function BaseModal(props: IBaseModal) {\n const {\n callback,\n cancelLabel = '',\n close,\n closeLabel,\n confirm,\n confirmLabel = '',\n message,\n timeout,\n title,\n type\n } = props;\n\n let timer: NodeJS.Timeout | undefined = undefined;\n const nodeRef = useRef<HTMLDivElement>(null);\n useInjectStyleSheet(nodeRef);\n\n useEffect(() => {\n if (!timeout) return;\n\n timer = setTimeout(() => {\n return callback ? callback() : close();\n }, timeout);\n\n return () => {clearTimeout(timer)};\n },[]);\n\n function setHeaderClass() {\n const base = 'uil-header';\n\n switch (type) {\n case 'error':\n return `${base} uil-error`;\n case 'success':\n return `${base} uil-success`;\n case 'warning':\n return `${base} uil-warning`;\n default:\n return base;\n }\n }\n\n function handleClose() {\n clearTimeout(timer);\n\n //run callback if timeout and callback are set, otherwise close\n if (timeout && callback) {\n return callback();\n }\n\n return close();\n }\n\n return (\n <div className={'uil-modal-wrapper'} ref={nodeRef}>\n <div className={'uil-modal'}>\n <div className={setHeaderClass()}>{title}</div>\n\n {timeout &&\n <div className={'uil-progress-wrapper'}>\n <div className={'uil-progress-bar'} style={{animationDuration: `${(timeout / 1000) + .5}s`}}/>\n </div>\n }\n\n <div className={'uil-content'}>\n <div>\n {Array.isArray(message) ?\n message.map((m, idx) => <p key={generateKey(idx)} className={'uil-modal-text'}>{m}</p>)\n : <p className={'uil-modal-text'}>{message}</p>\n }\n </div>\n\n <div className={`uil-button-wrapper ${type !== 'question' ? 'uil-single' : ''}`}>\n {type !== 'question' &&\n <CustomButton label={closeLabel?? ''} onClick={handleClose} type={'button'}/>\n }\n\n {type == 'question' && props.confirm &&\n <>\n <CustomButton label={confirmLabel} theme={'#00416A'} onClick={confirm} type={'button'}/>\n <CustomButton label={cancelLabel} onClick={close} type={'button'}/>\n </>\n }\n </div>\n </div>\n </div>\n </div>\n );\n}","import React from 'react';\nimport {BaseModal} from './baseModal';\n\nexport interface INotifyModal {\n close : () => void;\n closeLabel: string;\n modalType : 'success' | 'warning' | 'error';\n message : string | string[];\n title : string;\n callback? : (() => void) | undefined;\n timeout? : number;\n}\n\nexport function NotifyModal(props: INotifyModal) {\n const {\n modalType,\n ...modalProps\n } = props;\n\n return (\n <BaseModal type={modalType} {...modalProps}/>\n );\n}","import React from 'react';\nimport {BaseModal} from './baseModal';\n\nexport interface IQuestionModal {\n cancel : () => void;\n cancelLabel : string;\n confirm : () => void;\n confirmLabel: string;\n message : string | string[];\n title : string;\n}\n\nexport function QuestionModal(props: IQuestionModal) {\n const {\n cancel,\n ...modalProps\n } = props;\n\n return (\n <BaseModal type={'question'} close={cancel} {...modalProps}/>\n );\n}","import React, {useEffect, useRef} from 'react';\nimport generateKey from 'utils/generateKey';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\n\ninterface ICustomRadio {\n options : RadioOption[];\n value : string;\n valueChanged: (value: string) => void;\n checkColor? : string;\n disabled? : boolean;\n label? : string;\n}\n\nexport interface RadioOption {\n label : string;\n value : string;\n checked? : boolean;\n disabled?: boolean;\n}\n\nexport function CustomRadio(props: ICustomRadio) {\n const {\n checkColor,\n disabled,\n label,\n options,\n value,\n valueChanged,\n } = props;\n\n const id = generateKey('radio');\n const nodeRef = useRef<HTMLDivElement>(null);\n useInjectStyleSheet(nodeRef);\n\n useEffect(() => {\n // prevents multiple radio options being checked at the same time\n options.forEach(option => {\n if (option.checked) handleRadioChange(option);\n });\n },[]);\n\n function handleRadioChange(option: RadioOption) {\n if (value === option.value || option.disabled || disabled) return;\n\n valueChanged(option.value);\n }\n\n return (\n <div ref={nodeRef}>\n {label && <div className={'uil-radio-title'}>{label}</div>}\n\n <div className={'uil-radio-wrapper'}>\n {options.map((option, idx) =>\n <div key={generateKey(idx)} className={'uil-radio-option'}>\n <div className={'uil-radio uil-check'} onClick={() => {handleRadioChange(option)}}>\n <input\n id={`${idx}-${id}`}\n name={option.label}\n type={'radio'}\n value={option.value}\n checked={value === option.value || value === '' && option.checked}\n onChange={() => {handleRadioChange(option)}}\n disabled={disabled? disabled : option.disabled}\n />\n <div className={'uil-checkmark uil-radio-check'} style={{backgroundColor: checkColor}}/>\n </div>\n\n <label htmlFor={`${idx}-${id}`} className={'uil-font-base'}>{option.label}</label>\n </div>\n )}\n </div>\n </div>\n );\n}","import React, {ComponentPropsWithoutRef, ReactNode, useRef} from 'react';\nimport useInjectStyleSheet from 'utils/useInjectStyles';\nimport generateKey from 'utils/generateKey';\n\ninterface ICustomCheckbox extends ComponentPropsWithoutRef<'input'> {\n checked : boolean;\n toggleCheck: (value: boolean) => void;\n checkColor?: string;\n children? : ReactNode;\n label? : string;\n}\n\nexport function CustomCheckbox(props: ICustomCheckbox) {\n const {\n checkColor,\n checked,\n children,\n toggleCheck,\n label,\n ...checkProps\n } = props;\n\n const id = generateKey('check');\n const nodeRef = useRef<HTMLDivElement>(null);\n useInjectStyleSheet(nodeRef);\n\n return (\n <div className={'uil-check-wrapper'} ref={nodeRef}>\n <div className={'uil-checkbox uil-check'} onClick={() => {toggleCheck(!checked)}}>\n <input type={'checkbox'} checked={checked} onChange={() => {toggleCheck(!checked)}} {...checkProps} id={id}/>\n <div className={'uil-checkmark'} style={{backgroundColor: checkColor}}/>\n </div>\n\n <label htmlFor={id} className={'uil-check-label'}>\n {children ? children : label}\n </label>\n </div>\n );\n}"],"names":["injectedStyles","useInjectStyleSheet","nodeRef","useEffect","parentDocument","current","ownerDocument","document","includes","styleElement","createElement","innerHTML","styles","push","head","appendChild","SVG","props","color","height","src","width","Error","style","fill","useRef","React","ref","className","href","BaseInput","iconColor","iconSrc","inputColor","label","toggle","valueChanged","inputProps","_objectWithoutPropertiesLoose","_excluded","htmlFor","id","_extends","onChange","e","target","value","placeholder","onClick","useClickOutsideRef","callback","addEventListener","handleClickOutside","removeEventListener","event","contains","CustomInput","tooltipClose","tooltipIcon","tooltipText","tooltipVisible","setTooltipVisible","useState","closeTooltip","Fragment","generateKey","prefix","String","Date","now","toString","Math","random","replace","PasswordInput","capsLockWarning","rules","ruleChecked","ruleUnchecked","setFailedRules","capsLock","setCapsLock","checkRule","rule","pattern","type","count","RegExp","test","failedRules","forEach","validateInput","setCapsLockState","getModifierState","map","idx","key","useGetColor","backgroundColor","length","substring","c","parseInt","col","pow","CustomButton","disabled","small","theme","buttonProps","base","getClassName","border","getStyle","BaseModal","cancelLabel","close","closeLabel","confirm","confirmLabel","message","timeout","title","timer","setTimeout","clearTimeout","setHeaderClass","animationDuration","Array","isArray","m","NotifyModal","modalType","modalProps","QuestionModal","cancel","CustomRadio","checkColor","options","handleRadioChange","option","checked","name","CustomCheckbox","children","toggleCheck","checkProps"],"mappings":"+qRAGA,MAAMA,EAA6B,GAEX,SAAAC,EAAoBC,GAC1CC,EAAU,KACR,MAAMC,EAAiBF,EAAQG,QAAUH,EAAQG,QAAQC,cAAgBC,SAEzE,QAA8B,IAAnBH,IAAmCJ,EAAeQ,SAASJ,GAAiB,CACrF,MAAMK,EAAeL,EAAeM,cAAc,SAElDD,EAAaE,UAAYC,EACzBZ,EAAea,KAAKT,GAEpBA,EAAeU,KAAKC,YAAYN,EAClC,GACC,GACL,CCRM,SAAUO,EAAIC,GAClB,MAAMC,MACJA,EAAKC,OACLA,EAAMC,IACNA,EAAGC,MACHA,GACEJ,EAEJ,IAAKG,EAAIZ,SAAS,QAChB,MAAM,IAAIc,MAAM,oCAGlB,MAAMC,EAAuB,CAC3BC,KAAMN,EACNC,OAAQA,EACRE,MAAOA,GAGHnB,EAAUuB,EAAuB,MAGvC,OAFAxB,EAAoBC,GAGlBwB,uBAAKC,IAAKzB,EAAS0B,UAAW,mBAC5BF,EAAkBhB,cAAA,MAAA,CAAA,eAAA,EAAMkB,UAAW,UAAWL,MAAOA,GACnDG,EAAAhB,cAAA,MAAA,CAAKmB,KAAMT,KAInB,8ECxBgB,SAAAU,EAAUb,GACxB,MAAMc,UACJA,EAASC,QACTA,EAAOC,WACPA,EAAUC,MACVA,EAAKC,OACLA,EAAMC,aACNA,GAEEnB,EADCoB,EAAUC,EACXrB,EAAKsB,GAEHrC,EAAUuB,EAAyB,MAGzC,OAFAxB,EAAoBC,GAGlBwB,EAAAhB,cAAA,QAAA,CAAOkB,UAAW,oBAAqBY,QAASH,EAAWI,GAAId,IAAKzB,GAClEwB,EAAAhB,cAAA,QAAAgC,EAAA,CACEd,UAAW,0BACXe,SAAWC,IAAOR,EAAaQ,EAAEC,OAAOC,QACxCC,YAAab,EACbX,MAAO,CAACL,MAAOe,IACXI,IAGLL,GACCN,EAAAhB,cAAA,MAAA,CAAKkB,UAAW,WAAYoB,QAASb,GACnCT,EAAAhB,cAACM,EAAI,CAAAI,IAAKY,EAASX,MAAO,GAAIF,OAAQ,GAAID,MAAOa,KAIrDL,EAAAhB,cAAA,OAAA,CAAMkB,UAAW,0BAA2BL,MAAO,CAACL,MAAOe,IAAcC,GAG/E,CC7CM,SAAUe,EAA0CC,GACxD,MAAMvB,EAAMF,EAAU,MAoBtB,OAlBAtB,EAAU,KACR,GAAKwB,EAAItB,QAWT,OAHAE,SAAS4C,iBAAiB,QAASC,GACnC7C,SAAS4C,iBAAiB,WAAYC,GAE/B,KACL7C,SAAS8C,oBAAoB,QAASD,GACtC7C,SAAS8C,oBAAoB,WAAYD,EAC3C,EAZA,SAASA,EAAoBE,GACvB3B,EAAItB,UAAYsB,EAAItB,QAAQkD,SAASD,EAAMT,SAC7CK,GAEJ,CAQA,EACC,CAACA,IAEGvB,CACT,sDCbgB,SAAA6B,EAAYvC,GAC1B,MAAMwC,aACJA,EAAYC,YACZA,EAAWC,YACXA,GAEE1C,EADCoB,EAAUC,EACXrB,EAAKsB,IAEFqB,EAAgBC,GAAqBC,GAAS,GAC/CnC,EAAMsB,EAAmCc,GAE/C,SAASA,IACPF,GAAkB,EACpB,CAEA,OACEnC,EAAAhB,cAAAgB,EAAAsC,SAAA,KACGN,EACChC,EAAAhB,cAAA,MAAA,CAAKkB,UAAW,sBAAuBD,IAAKA,GACzCiC,GACClC,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,eACb6B,GACC/B,EAAQhB,cAAA,SAAA,CAAAkB,UAAW,6BAA8BoB,QAASe,GACvDN,GAIL/B,EAAOhB,cAAA,OAAA,KAAAiD,IAIXjC,EAAAhB,cAAA,MAAA,CAAKkB,UAAW,2BAA4BoB,QAASA,KAAOa,GAAmBD,EAAc,GAC3FlC,EAAAhB,cAACM,EAAG,CAACI,IAAKsC,EAAavC,OAAQ,GAAIE,MAAO,MAG5CK,EAAAhB,cAACoB,EAASY,EAAKL,CAAAA,EAAAA,KAGjBX,EAAAhB,cAACoB,EAASY,EAAKL,GAAAA,IAIvB,CCrDwB,SAAA4B,EAAYC,GAGlC,MAAO,GAAGA,KAFCC,OAAOC,KAAKC,MAAMC,SAAS,IAAMC,KAAKC,SAASF,SAAS,KAAKG,QAAQ,MAAO,KAGzF,oFCgBM,SAAUC,EAAczD,GAC5B,MAAM0D,gBACJA,EAAeC,MACfA,EAAKC,YACLA,EAAWC,cACXA,EAAaC,eACbA,GAEE9D,EADCoB,EAAUC,EACXrB,EAAKsB,IAEFyC,EAAUC,GAAenB,GAAS,GA8BzC,SAASoB,EAAUC,GACjB,IAAIC,EAEJ,GAAID,EAAKE,KAAM,CACb,IAAKF,EAAKG,MAAO,MAAM,IAAIhE,MAAM,iDAEjC,OAAQ6D,EAAKE,MACX,IAAK,YACHD,EAAU,mFAAmFD,EAAKG,UAClG,MACF,IAAK,YACHF,EAAU,qFAAqFD,EAAKG,UACpG,MACF,IAAK,UACHF,EAAU,mBAAmBD,EAAKG,UAClC,MACF,IAAK,UACHF,EAAU,SAASD,EAAKG,UACxB,MACF,IAAK,UACHF,EAAU,mEAAmED,EAAKG,UAClF,MACF,IAAK,QACHF,EAAU,YAAYD,EAAKG,UAC3B,MACF,QACE,UAAUhE,MAAM,mCAEtB,KAAO,CACL,IAAK6D,EAAKC,QACR,MAAM,IAAI9D,MAAM,uCAGlB8D,EAAUD,EAAKC,OACjB,CAGA,OADY,IAAIG,OAAOH,GACZI,KAAKvE,EAAM6B,MACxB,CAEA,OApEA3C,EAAU,MAgBV,WACE,MAAMsF,EAA8B,GAEpCb,EAAMc,QAAQP,IACPD,EAAUC,IACbM,EAAY5E,KAAKsE,EACnB,GAGFJ,MAAAA,GAAAA,EAAiBU,EACnB,CAzBEE,EACF,EAAG,CAAC1E,EAAM6B,QAEV3C,EAAU,KACR,GAAKwE,EAQL,OAFApE,SAAS4C,iBAAiB,UAAWyC,GAE9B,KAAOrF,SAAS8C,oBAAoB,UAAWuC,IANtD,SAASA,EAAiBtC,GACxB2B,EAAY3B,EAAMuC,iBAAiB,YACrC,CAIuE,EACtE,IAuDDnE,EAAAhB,cAAA,MAAA,KACEgB,EAAChB,cAAA8C,EAAWd,EAAA,CAAA,EAAKL,IAEjBX,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,sBACboD,GAAYtD,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,qBAAsB+C,GAElDC,EAAMkB,IAAI,CAACX,EAAMY,IAChBrE,uBAAKsE,IAAK/B,EAAY8B,GAAMnE,UAAW,qBACrCF,EAAChB,cAAAM,EAAI,CAAAI,IAAK8D,EAAUC,GAAQN,EAAcC,EAAe3D,OAAQ,GAAIE,MAAO,KAE5EK,EAAOhB,cAAA,OAAA,KAAAyE,EAAKjD,UAMxB,UCrHgB+D,EAAYC,GAC1B,GAA+B,IAA3BA,EAAgBC,OAAc,UAAU7E,MAAM,8DAElD4E,EAAkBA,EAAgBE,UAAU,EAAG,GAC/C,MAKMC,EALW,CACfC,SAASJ,EAAgBE,UAAU,EAAG,GAAI,IAAM,IAChDE,SAASJ,EAAgBE,UAAU,EAAG,GAAI,IAAM,IAChDE,SAASJ,EAAgBE,UAAU,EAAG,GAAI,IAAM,KAE/BN,IAAIS,GACdA,GAAO,OAAUA,EAAM,MAAShC,KAAKiC,KAAKD,EAAM,MAAS,MAAO,MAIzE,MAFkB,MAASF,EAAE,GAAO,MAASA,EAAE,GAAO,MAASA,EAAE,GAE/C,KAAQ,UAAY,SACxC,CCfA,MAAA9D,EAAA,CAAA,WAAA,QAAA,QAAA,SAaM,SAAUkE,EAAaxF,GAC3B,MAAMyF,SACJA,GAAW,EAAKxE,MAChBA,EAAKyE,MACLA,GAAQ,EAAKC,MACbA,GAEE3F,EADC4F,EAAWvE,EACZrB,EAAKsB,GAEHrC,EAAUuB,EAA0B,MAwD1C,OAvDAxB,EAAoBC,GAwDlBwB,EAAQhB,cAAA,SAAAgC,EAAA,CAAAd,UAnBV,WACE,MAAMkF,EAAO,qBAEb,OAAIJ,EACEC,EACK,GAAGG,2BAGL,GAAGA,+BAGRH,EACK,GAAGG,cAGL,GAAGA,iBACZ,CAGqBC,GAAgBxF,MAtDrC,WACE,IAAImF,GAAaE,EAAjB,CAEA,GAAIA,EAAMpG,SAAS,KACjB,MAAO,CACLU,MAAO+E,EAAYW,GACnBV,gBAAiBU,EACjBI,OAAQ,eAIZ,OAAQJ,GACN,IAAK,UACH,MAAO,CACL1F,MAAO+E,EAAY,WACnBC,gBAAiB,UACjBc,OAAQ,eAEZ,IAAK,UACH,MAAO,CACL9F,MAAO,UACPgF,gBAAiB,UACjBc,OAAQ,eAEZ,IAAK,QACH,MAAO,CACL9F,MAAO+E,EAAY,WACnBC,gBAAiB,UACjBc,OAAQ,eAEZ,QACE,MAAU,IAAA1F,MAAM,0BA9BoB,CAgC1C,CAqB4C2F,GAAYP,SAAUA,EAAU/E,IAAKzB,GAAa2G,GACzF3E,EAGP,CCjEM,SAAUgF,EAAUjG,GACxB,MAAMiC,SACJA,EAAQiE,YACRA,EAAc,GAAEC,MAChBA,EAAKC,WACLA,EAAUC,QACVA,EAAOC,aACPA,EAAe,GAAEC,QACjBA,EAAOC,QACPA,EAAOC,MACPA,EAAKrC,KACLA,GACEpE,EAEJ,IAAI0G,EACJ,MAAMzH,EAAUuB,EAAuB,MAuCvC,OAtCAxB,EAAoBC,GAEpBC,EAAU,KACR,GAAKsH,EAML,OAJAE,EAAQC,WAAW,IACV1E,EAAWA,IAAakE,IAC9BK,GAEI,KAAOI,aAAaF,EAAM,CAAA,EACjC,IA6BAjG,uBAAKE,UAAW,oBAAqBD,IAAKzB,GACxCwB,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,aACdF,EAAAhB,cAAA,MAAA,CAAKkB,UA7BX,WACE,MAAMkF,EAAO,aAEb,OAAQzB,GACN,IAAK,QACH,MAAO,GAAGyB,cACZ,IAAK,UACH,MAAO,GAAGA,gBACZ,IAAK,UACH,MAAO,GAAGA,gBACZ,QACE,OAAOA,EAEb,CAgBsBgB,IAAmBJ,GAElCD,GACC/F,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,wBACdF,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,mBAAoBL,MAAO,CAACwG,kBAAuBN,EAAU,IAAQ,GAAtB,QAInE/F,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,eACdF,EAAAhB,cAAA,MAAA,KACGsH,MAAMC,QAAQT,GACbA,EAAQ1B,IAAI,CAACoC,EAAGnC,IAAQrE,EAAGhB,cAAA,IAAA,CAAAsF,IAAK/B,EAAY8B,GAAMnE,UAAW,kBAAmBsG,IAC9ExG,qBAAGE,UAAW,kBAAmB4F,IAIvC9F,EAAAhB,cAAA,MAAA,CAAKkB,UAAW,uBAA+B,aAATyD,EAAsB,aAAe,KAC/D,aAATA,GACC3D,EAAAhB,cAAC+F,EAAY,CAACvE,MAAiB,MAAVmF,EAAAA,EAAa,GAAIrE,QAhClD,WAIE,OAHA6E,aAAaF,GAGTF,GAAWvE,EACNA,IAGFkE,GACT,EAuBwE/B,KAAM,WAG3D,YAARA,GAAsBpE,EAAMqG,SAC3B5F,EAAAhB,cAAAgB,EAAAsC,SAAA,KACEtC,EAAAhB,cAAC+F,EAAa,CAAAvE,MAAOqF,EAAcX,MAAO,UAAW5D,QAASsE,EAASjC,KAAM,WAC7E3D,EAAChB,cAAA+F,GAAavE,MAAOiF,EAAanE,QAASoE,EAAO/B,KAAM,eAQxE,gCC9FgB8C,EAAYlH,GAC1B,MAAMmH,UACJA,GAEEnH,EADCoH,EAAU/F,EACXrB,EAAKsB,GAET,OACEb,EAAChB,cAAAwG,EAASxE,EAAC2C,CAAAA,KAAM+C,GAAeC,GAEpC,oBCVM,SAAUC,EAAcrH,GAC5B,MAAMsH,OACJA,GAEEtH,EADCoH,EAAU/F,EACXrB,EAAKsB,GAET,OACEb,EAAAhB,cAACwG,EAASxE,EAAA,CAAC2C,KAAM,WAAY+B,MAAOmB,GAAYF,GAEpD,CCDgB,SAAAG,EAAYvH,GAC1B,MAAMwH,WACJA,EAAU/B,SACVA,EAAQxE,MACRA,EAAKwG,QACLA,EAAO5F,MACPA,EAAKV,aACLA,GACEnB,EAEEwB,EAAKwB,EAAY,SACjB/D,EAAUuB,EAAuB,MAUvC,SAASkH,EAAkBC,GACrB9F,IAAU8F,EAAO9F,OAAS8F,EAAOlC,UAAYA,GAEjDtE,EAAawG,EAAO9F,MACtB,CAEA,OAfA7C,EAAoBC,GAEpBC,EAAU,KAERuI,EAAQhD,QAAQkD,IACVA,EAAOC,SAASF,EAAkBC,EACxC,IACA,IASAlH,EAAAhB,cAAA,MAAA,CAAKiB,IAAKzB,GACPgC,GAASR,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,mBAAoBM,GAE9CR,EAAKhB,cAAA,MAAA,CAAAkB,UAAW,qBACb8G,EAAQ5C,IAAI,CAAC8C,EAAQ7C,IACpBrE,EAAKhB,cAAA,MAAA,CAAAsF,IAAK/B,EAAY8B,GAAMnE,UAAW,oBACrCF,EAAAhB,cAAA,MAAA,CAAKkB,UAAW,sBAAuBoB,QAASA,KAAO2F,EAAkBC,EAAO,GAC9ElH,EAAAhB,cAAA,QAAA,CACE+B,GAAI,GAAGsD,KAAOtD,IACdqG,KAAMF,EAAO1G,MACbmD,KAAM,QACNvC,MAAO8F,EAAO9F,MACd+F,QAAS/F,IAAU8F,EAAO9F,OAAmB,KAAVA,GAAgB8F,EAAOC,QAC1DlG,SAAUA,KAAOgG,EAAkBC,EAAO,EAC1ClC,SAAUA,GAAqBkC,EAAOlC,WAExChF,EAAAhB,cAAA,MAAA,CAAKkB,UAAW,gCAAiCL,MAAO,CAAC2E,gBAAiBuC,MAG5E/G,EAAOhB,cAAA,QAAA,CAAA8B,QAAS,GAAGuD,KAAOtD,IAAMb,UAAW,iBAAkBgH,EAAO1G,UAMhF,mEC7DgB,SAAA6G,EAAe9H,GAC7B,MAAMwH,WACJA,EAAUI,QACVA,EAAOG,SACPA,EAAQC,YACRA,EAAW/G,MACXA,GAEEjB,EADCiI,EAAU5G,EACXrB,EAAKsB,GAEHE,EAAKwB,EAAY,SACjB/D,EAAUuB,EAAuB,MAGvC,OAFAxB,EAAoBC,GAGlBwB,uBAAKE,UAAW,oBAAqBD,IAAKzB,GACxCwB,EAAAhB,cAAA,MAAA,CAAKkB,UAAW,yBAA0BoB,QAASA,KAAOiG,GAAaJ,EAAQ,GAC7EnH,EAAOhB,cAAA,QAAAgC,GAAA2C,KAAM,WAAYwD,QAASA,EAASlG,SAAUA,KAAOsG,GAAaJ,KAAeK,EAAU,CAAEzG,GAAIA,KACxGf,EAAAhB,cAAA,MAAA,CAAKkB,UAAW,gBAAiBL,MAAO,CAAC2E,gBAAiBuC,MAG5D/G,EAAOhB,cAAA,QAAA,CAAA8B,QAASC,EAAIb,UAAW,mBAC5BoH,GAAsB9G,GAI/B"}
package/dist/index.d.ts DELETED
@@ -1,7 +0,0 @@
1
- export { CustomInput, PasswordInput, PasswordRule } from './components/input/index';
2
- export { NotifyModal, QuestionModal } from './components/modal/index';
3
- export { CustomRadio, RadioOption } from './components/radio/index';
4
- export { CustomCheckbox } from './components/checkbox/index';
5
- export { CustomButton } from './components/button/index';
6
- export { SVG } from './components/images/index';
7
- export { useClickOutsideRef, useGetColor } from './hooks/index';