brd-ui-kit 0.1.66 → 0.1.68

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 (61) hide show
  1. package/dist/components/input-contact/index.d.ts +2 -0
  2. package/dist/components/{contact-input/contact-input.d.ts → input-contact/input-contact.d.ts} +2 -2
  3. package/dist/components/input-contact.d.ts +2 -0
  4. package/dist/components/input-phone/index.d.ts +2 -0
  5. package/dist/components/input-phone/input-phone.d.ts +9 -0
  6. package/dist/components/input-phone.d.ts +2 -0
  7. package/dist/components-avatar-uploader-avatar-uploader.cjs +1 -1
  8. package/dist/components-avatar-uploader-avatar-uploader.cjs.map +1 -1
  9. package/dist/components-avatar-uploader-avatar-uploader.js +4 -3
  10. package/dist/components-avatar-uploader-avatar-uploader.js.map +1 -1
  11. package/dist/components-basic-avatar-basic-avatar.cjs +1 -1
  12. package/dist/components-basic-avatar-basic-avatar.cjs.map +1 -1
  13. package/dist/components-basic-avatar-basic-avatar.js +3 -2
  14. package/dist/components-basic-avatar-basic-avatar.js.map +1 -1
  15. package/dist/components-files-uploader-files-uploader.cjs +1 -1
  16. package/dist/components-files-uploader-files-uploader.js +1 -1
  17. package/dist/components-input-contact-input-contact.cjs +7 -0
  18. package/dist/{components-contact-input-contact-input.cjs.map → components-input-contact-input-contact.cjs.map} +1 -1
  19. package/dist/{components-contact-input-contact-input.js → components-input-contact-input-contact.js} +9 -8
  20. package/dist/components-input-contact-input-contact.js.map +1 -0
  21. package/dist/components-input-contact.cjs +2 -0
  22. package/dist/components-input-contact.cjs.map +1 -0
  23. package/dist/components-input-contact.js +5 -0
  24. package/dist/components-input-contact.js.map +1 -0
  25. package/dist/components-input-password-input-password.cjs +1 -1
  26. package/dist/components-input-password-input-password.cjs.map +1 -1
  27. package/dist/components-input-password-input-password.js +3 -2
  28. package/dist/components-input-password-input-password.js.map +1 -1
  29. package/dist/components-input-phone-input-phone.cjs +30 -0
  30. package/dist/components-input-phone-input-phone.cjs.map +1 -0
  31. package/dist/components-input-phone-input-phone.js +2846 -0
  32. package/dist/components-input-phone-input-phone.js.map +1 -0
  33. package/dist/components-input-phone.cjs +2 -0
  34. package/dist/components-input-phone.cjs.map +1 -0
  35. package/dist/components-input-phone.js +5 -0
  36. package/dist/components-input-phone.js.map +1 -0
  37. package/dist/constants/contact-input.d.ts +1 -1
  38. package/dist/{index-B5Id-jNC.js → index-CVlBIwtP.js} +486 -1127
  39. package/dist/index-CVlBIwtP.js.map +1 -0
  40. package/dist/index-DJD-8LQA.cjs +6 -0
  41. package/dist/index-DJD-8LQA.cjs.map +1 -0
  42. package/dist/index-DgusNo6W.cjs +3 -0
  43. package/dist/index-DgusNo6W.cjs.map +1 -0
  44. package/dist/index-Mf4QF1FW.js +647 -0
  45. package/dist/index-Mf4QF1FW.js.map +1 -0
  46. package/dist/index.cjs +1 -1
  47. package/dist/index.d.ts +4 -2
  48. package/dist/index.js +30 -28
  49. package/dist/index.js.map +1 -1
  50. package/package.json +20 -10
  51. package/dist/components/contact-input/index.d.ts +0 -2
  52. package/dist/components/contact-input.d.ts +0 -2
  53. package/dist/components-contact-input-contact-input.cjs +0 -7
  54. package/dist/components-contact-input-contact-input.js.map +0 -1
  55. package/dist/components-contact-input.cjs +0 -2
  56. package/dist/components-contact-input.cjs.map +0 -1
  57. package/dist/components-contact-input.js +0 -5
  58. package/dist/components-contact-input.js.map +0 -1
  59. package/dist/index-B5Id-jNC.js.map +0 -1
  60. package/dist/index-D8y9Cogu.cjs +0 -7
  61. package/dist/index-D8y9Cogu.cjs.map +0 -1
@@ -0,0 +1,2 @@
1
+ export { InputContact } from './input-contact';
2
+ export type { InputContactProps, TypesChange } from './input-contact';
@@ -17,5 +17,5 @@ type BaseProps = {
17
17
  onTypeChange?: (type: TypesChange) => void;
18
18
  };
19
19
  type InputFieldProps = BaseProps & React.ComponentPropsWithRef<"input">;
20
- export declare const ContactInput: (props: InputFieldProps) => import("react/jsx-runtime").JSX.Element;
21
- export type { InputFieldProps as ContactInputProps, TypesChange };
20
+ export declare const InputContact: (props: InputFieldProps) => import("react/jsx-runtime").JSX.Element;
21
+ export type { InputFieldProps as InputContactProps, TypesChange };
@@ -0,0 +1,2 @@
1
+ export * from './input-contact/index'
2
+ export {}
@@ -0,0 +1,2 @@
1
+ export { InputPhone } from './input-phone';
2
+ export type { InputPhoneProps } from './input-phone';
@@ -0,0 +1,9 @@
1
+ import { default as React } from 'react';
2
+ type InputPhoneProps = Omit<React.ComponentProps<typeof MaskedInputField>, "inputRef">;
3
+ declare const MaskedInputField: React.ForwardRefExoticComponent<Omit<{
4
+ [x: string]: unknown;
5
+ }, "ref"> & React.RefAttributes<React.ComponentType<{
6
+ [x: string]: unknown;
7
+ }>>>;
8
+ export declare const InputPhone: (props: InputPhoneProps) => import("react/jsx-runtime").JSX.Element;
9
+ export type { InputPhoneProps };
@@ -0,0 +1,2 @@
1
+ export * from './input-phone/index'
2
+ export {}
@@ -1,3 +1,3 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const i=require("react/jsx-runtime");;/* empty css */const x=require("./lib-utils.cjs");require("class-variance-authority");const f=require("react");require("./components-ui-badge-badge.styles.cjs");require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");require("./components-ui-card-card.cjs");require("./components-ui-checkbox-checkbox.cjs");require("lucide-react");require("./components-ui-icon-overrides.cjs");require("./components-ui-combobox-combobox.cjs");require("./components-ui-dialog-dialog.cjs");require("./components-ui-label-label.cjs");require("./components-ui-separator-separator.cjs");require("./components-ui-field-field.styles.cjs");require("./components-ui-input-input.styles.cjs");require("./components-ui-textarea-textarea.cjs");require("./components-ui-input-group-input-group.styles.cjs");require("./components-ui-navigation-item-navigation-item.styles.cjs");require("./components-ui-navigation-menu-navigation-menu.styles.cjs");require("./components-ui-pagination-pagination.cjs");require("./components-ui-progress-progress.cjs");require("./components-ui-radio-group-radio-group.cjs");require("./components-ui-switch-switch.cjs");require("./components-ui-table-table.cjs");require("./components-ui-tabs-tabs.cjs");require("./components-ui-tooltip-tooltip.cjs");const v=require("./components-ui-typography-typography.cjs");require("./components-ui-typography-typography.styles.cjs");require("./components-app-pagination-app-pagination.styles.cjs");require("./components-app-sidebar-app-sidebar.styles.cjs");require("./components-select-field-select-field.cjs");require("./lodash-kqhtUJfz.cjs");require("./chart-CgVfpT_X.cjs");const A=require("./components-basic-avatar-basic-avatar.cjs");require("./index-DGxwh2Ms.cjs");require("./index-fTTv8YY8.cjs");const y=require("./index-D8y9Cogu.cjs"),j=1,b=[".jpg",".png"],h=({src:u,fullName:o,maxFiles:a=j,accept:c=b,avatarProps:q,containerClassName:p,onChange:s})=>{const n=f.useMemo(()=>{const[e,r]=o?.split(" "),t=e?.charAt(0)||"",g=r?.charAt(0)||"";return(t+g).toUpperCase()||"?"},[o]),{getRootProps:l,getInputProps:d}=y.useDropzone({accept:{"image/*":c},maxFiles:a,onDrop:e=>{const r=e[0];if(r){const t=URL.createObjectURL(r);s?.(t)}}}),m=e=>{e.stopPropagation(),s?.("")};return i.jsxs("div",{...l(),className:x.cn(`bg-info-new-bg flex h-18 w-18 cursor-pointer items-center justify-center
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const i=require("react/jsx-runtime");;/* empty css */const x=require("./lib-utils.cjs");require("class-variance-authority");const f=require("react");require("./components-ui-badge-badge.styles.cjs");require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");require("./components-ui-card-card.cjs");require("./components-ui-checkbox-checkbox.cjs");require("lucide-react");require("./components-ui-icon-overrides.cjs");require("./components-ui-combobox-combobox.cjs");require("./components-ui-dialog-dialog.cjs");require("./components-ui-label-label.cjs");require("./components-ui-separator-separator.cjs");require("./components-ui-field-field.styles.cjs");require("./components-ui-input-input.styles.cjs");require("./components-ui-textarea-textarea.cjs");require("./components-ui-input-group-input-group.styles.cjs");require("./components-ui-navigation-item-navigation-item.styles.cjs");require("./components-ui-navigation-menu-navigation-menu.styles.cjs");require("./components-ui-pagination-pagination.cjs");require("./components-ui-progress-progress.cjs");require("./components-ui-radio-group-radio-group.cjs");require("./components-ui-switch-switch.cjs");require("./components-ui-table-table.cjs");require("./components-ui-tabs-tabs.cjs");require("./components-ui-tooltip-tooltip.cjs");const v=require("./components-ui-typography-typography.cjs");require("./components-ui-typography-typography.styles.cjs");require("./components-app-pagination-app-pagination.styles.cjs");require("./components-app-sidebar-app-sidebar.styles.cjs");require("./components-select-field-select-field.cjs");require("./lodash-kqhtUJfz.cjs");require("./chart-CgVfpT_X.cjs");const A=require("./components-basic-avatar-basic-avatar.cjs");require("./index-DGxwh2Ms.cjs");require("./index-fTTv8YY8.cjs");const y=require("./index-DJD-8LQA.cjs");require("./components-input-phone-input-phone.cjs");const j=1,b=[".jpg",".png"],h=({src:u,fullName:o,maxFiles:a=j,accept:c=b,avatarProps:q,containerClassName:p,onChange:s})=>{const n=f.useMemo(()=>{const[e,r]=o?.split(" "),t=e?.charAt(0)||"",g=r?.charAt(0)||"";return(t+g).toUpperCase()||"?"},[o]),{getRootProps:l,getInputProps:d}=y.useDropzone({accept:{"image/*":c},maxFiles:a,onDrop:e=>{const r=e[0];if(r){const t=URL.createObjectURL(r);s?.(t)}}}),m=e=>{e.stopPropagation(),s?.("")};return i.jsxs("div",{...l(),className:x.cn(`bg-info-new-bg flex h-18 w-18 cursor-pointer items-center justify-center
2
2
  overflow-hidden rounded-full transition-colors`,p),children:[i.jsx("input",{...d()}),u?i.jsx(A.BasicAvatar,{...q,image:{src:u},initials:{text:n},hasBadge:!0,onClick:m}):i.jsx(v.Typography,{variant:"body-xxl-medium",className:"text-info-new-text flex items-center justify-center",children:n})]})};exports.AvatarUpload=h;
3
3
  //# sourceMappingURL=components-avatar-uploader-avatar-uploader.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"components-avatar-uploader-avatar-uploader.cjs","sources":["../src/components/avatar-uploader/avatar-uploader.tsx"],"sourcesContent":["import { cn } from \"@/index\";\nimport { useMemo } from \"react\";\nimport { useDropzone } from \"react-dropzone\";\nimport { BasicAvatar, type BasicAvatarProps } from \"../basic-avatar\";\nimport { Typography } from \"../ui/typography\";\n\ntype Props = {\n maxFiles?: number;\n src?: string;\n fullName: string;\n accept?: string[];\n avatarProps?: BasicAvatarProps;\n containerClassName?: string;\n onChange?: (src: string | null) => void;\n};\n\nconst DEFAULT_MAX_FILES = 1;\nconst DEFAULT_ACCEPT = [\".jpg\", \".png\"];\n\nexport const AvatarUpload = ({\n src,\n fullName,\n maxFiles = DEFAULT_MAX_FILES,\n accept = DEFAULT_ACCEPT,\n avatarProps,\n containerClassName,\n onChange,\n}: Props) => {\n const initials = useMemo(() => {\n const [firstName, lastName] = fullName?.split(\" \");\n const first = firstName?.charAt(0) || \"\";\n const last = lastName?.charAt(0) || \"\";\n\n return (first + last).toUpperCase() || \"?\";\n }, [fullName]);\n\n const { getRootProps, getInputProps } = useDropzone({\n accept: { \"image/*\": accept },\n maxFiles,\n onDrop: (files) => {\n const file = files[0];\n if (file) {\n const previewUrl = URL.createObjectURL(file);\n onChange?.(previewUrl);\n }\n },\n });\n\n const removeAvatar = (e: React.MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n onChange?.(\"\");\n };\n\n return (\n <div\n {...getRootProps()}\n className={cn(\n `bg-info-new-bg flex h-18 w-18 cursor-pointer items-center justify-center\n overflow-hidden rounded-full transition-colors`,\n containerClassName,\n )}\n >\n <input {...getInputProps()} />\n {src ? (\n <BasicAvatar\n {...avatarProps}\n image={{\n src,\n }}\n initials={{ text: initials }}\n hasBadge\n onClick={removeAvatar}\n />\n ) : (\n <Typography\n variant=\"body-xxl-medium\"\n className=\"text-info-new-text flex items-center justify-center\"\n >\n {initials}\n </Typography>\n )}\n </div>\n );\n};\n\nexport type { Props as AvatarUploadProps };\n"],"names":["DEFAULT_MAX_FILES","DEFAULT_ACCEPT","AvatarUpload","src","fullName","maxFiles","accept","avatarProps","containerClassName","onChange","initials","useMemo","firstName","lastName","first","last","getRootProps","getInputProps","useDropzone","files","file","previewUrl","removeAvatar","jsxs","cn","jsx","BasicAvatar","Typography"],"mappings":"o6DAgBMA,EAAoB,EACpBC,EAAiB,CAAC,OAAQ,MAAM,EAEzBC,EAAe,CAAC,CAC3B,IAAAC,EACA,SAAAC,EACA,SAAAC,EAAWL,EACX,OAAAM,EAASL,EACT,YAAAM,EACA,mBAAAC,EACA,SAAAC,CACF,IAAa,CACX,MAAMC,EAAWC,EAAAA,QAAQ,IAAM,CAC7B,KAAM,CAACC,EAAWC,CAAQ,EAAIT,GAAU,MAAM,GAAG,EAC3CU,EAAQF,GAAW,OAAO,CAAC,GAAK,GAChCG,EAAOF,GAAU,OAAO,CAAC,GAAK,GAEpC,OAAQC,EAAQC,GAAM,YAAA,GAAiB,GACzC,EAAG,CAACX,CAAQ,CAAC,EAEP,CAAE,aAAAY,EAAc,cAAAC,CAAA,EAAkBC,cAAY,CAClD,OAAQ,CAAE,UAAWZ,CAAA,EACrB,SAAAD,EACA,OAASc,GAAU,CACjB,MAAMC,EAAOD,EAAM,CAAC,EACpB,GAAIC,EAAM,CACR,MAAMC,EAAa,IAAI,gBAAgBD,CAAI,EAC3CX,IAAWY,CAAU,CACvB,CACF,CAAA,CACD,EAEKC,EAAgB,GAAwC,CAC5D,EAAE,gBAAA,EACFb,IAAW,EAAE,CACf,EAEA,OACEc,EAAAA,KAAC,MAAA,CACE,GAAGP,EAAA,EACJ,UAAWQ,EAAAA,GACT;AAAA,wDAEAhB,CAAA,EAGF,SAAA,CAAAiB,EAAAA,IAAC,QAAA,CAAO,GAAGR,EAAA,CAAc,CAAG,EAC3Bd,EACCsB,EAAAA,IAACC,EAAAA,YAAA,CACE,GAAGnB,EACJ,MAAO,CACL,IAAAJ,CAAA,EAEF,SAAU,CAAE,KAAMO,CAAA,EAClB,SAAQ,GACR,QAASY,CAAA,CAAA,EAGXG,EAAAA,IAACE,EAAAA,WAAA,CACC,QAAQ,kBACR,UAAU,sDAET,SAAAjB,CAAA,CAAA,CACH,CAAA,CAAA,CAIR"}
1
+ {"version":3,"file":"components-avatar-uploader-avatar-uploader.cjs","sources":["../src/components/avatar-uploader/avatar-uploader.tsx"],"sourcesContent":["import { cn } from \"@/index\";\nimport { useMemo } from \"react\";\nimport { useDropzone } from \"react-dropzone\";\nimport { BasicAvatar, type BasicAvatarProps } from \"../basic-avatar\";\nimport { Typography } from \"../ui/typography\";\n\ntype Props = {\n maxFiles?: number;\n src?: string;\n fullName: string;\n accept?: string[];\n avatarProps?: BasicAvatarProps;\n containerClassName?: string;\n onChange?: (src: string | null) => void;\n};\n\nconst DEFAULT_MAX_FILES = 1;\nconst DEFAULT_ACCEPT = [\".jpg\", \".png\"];\n\nexport const AvatarUpload = ({\n src,\n fullName,\n maxFiles = DEFAULT_MAX_FILES,\n accept = DEFAULT_ACCEPT,\n avatarProps,\n containerClassName,\n onChange,\n}: Props) => {\n const initials = useMemo(() => {\n const [firstName, lastName] = fullName?.split(\" \");\n const first = firstName?.charAt(0) || \"\";\n const last = lastName?.charAt(0) || \"\";\n\n return (first + last).toUpperCase() || \"?\";\n }, [fullName]);\n\n const { getRootProps, getInputProps } = useDropzone({\n accept: { \"image/*\": accept },\n maxFiles,\n onDrop: (files) => {\n const file = files[0];\n if (file) {\n const previewUrl = URL.createObjectURL(file);\n onChange?.(previewUrl);\n }\n },\n });\n\n const removeAvatar = (e: React.MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n onChange?.(\"\");\n };\n\n return (\n <div\n {...getRootProps()}\n className={cn(\n `bg-info-new-bg flex h-18 w-18 cursor-pointer items-center justify-center\n overflow-hidden rounded-full transition-colors`,\n containerClassName,\n )}\n >\n <input {...getInputProps()} />\n {src ? (\n <BasicAvatar\n {...avatarProps}\n image={{\n src,\n }}\n initials={{ text: initials }}\n hasBadge\n onClick={removeAvatar}\n />\n ) : (\n <Typography\n variant=\"body-xxl-medium\"\n className=\"text-info-new-text flex items-center justify-center\"\n >\n {initials}\n </Typography>\n )}\n </div>\n );\n};\n\nexport type { Props as AvatarUploadProps };\n"],"names":["DEFAULT_MAX_FILES","DEFAULT_ACCEPT","AvatarUpload","src","fullName","maxFiles","accept","avatarProps","containerClassName","onChange","initials","useMemo","firstName","lastName","first","last","getRootProps","getInputProps","useDropzone","files","file","previewUrl","removeAvatar","jsxs","cn","jsx","BasicAvatar","Typography"],"mappings":"w9DAgBA,MAAMA,EAAoB,EACpBC,EAAiB,CAAC,OAAQ,MAAM,EAEzBC,EAAe,CAAC,CAC3B,IAAAC,EACA,SAAAC,EACA,SAAAC,EAAWL,EACX,OAAAM,EAASL,EACT,YAAAM,EACA,mBAAAC,EACA,SAAAC,CACF,IAAa,CACX,MAAMC,EAAWC,EAAAA,QAAQ,IAAM,CAC7B,KAAM,CAACC,EAAWC,CAAQ,EAAIT,GAAU,MAAM,GAAG,EAC3CU,EAAQF,GAAW,OAAO,CAAC,GAAK,GAChCG,EAAOF,GAAU,OAAO,CAAC,GAAK,GAEpC,OAAQC,EAAQC,GAAM,YAAA,GAAiB,GACzC,EAAG,CAACX,CAAQ,CAAC,EAEP,CAAE,aAAAY,EAAc,cAAAC,CAAA,EAAkBC,cAAY,CAClD,OAAQ,CAAE,UAAWZ,CAAA,EACrB,SAAAD,EACA,OAASc,GAAU,CACjB,MAAMC,EAAOD,EAAM,CAAC,EACpB,GAAIC,EAAM,CACR,MAAMC,EAAa,IAAI,gBAAgBD,CAAI,EAC3CX,IAAWY,CAAU,CACvB,CACF,CAAA,CACD,EAEKC,EAAgB,GAAwC,CAC5D,EAAE,gBAAA,EACFb,IAAW,EAAE,CACf,EAEA,OACEc,EAAAA,KAAC,MAAA,CACE,GAAGP,EAAA,EACJ,UAAWQ,EAAAA,GACT;AAAA,wDAEAhB,CAAA,EAGF,SAAA,CAAAiB,EAAAA,IAAC,QAAA,CAAO,GAAGR,EAAA,CAAc,CAAG,EAC3Bd,EACCsB,EAAAA,IAACC,EAAAA,YAAA,CACE,GAAGnB,EACJ,MAAO,CACL,IAAAJ,CAAA,EAEF,SAAU,CAAE,KAAMO,CAAA,EAClB,SAAQ,GACR,QAASY,CAAA,CAAA,EAGXG,EAAAA,IAACE,EAAAA,WAAA,CACC,QAAQ,kBACR,UAAU,sDAET,SAAAjB,CAAA,CAAA,CACH,CAAA,CAAA,CAIR"}
@@ -37,8 +37,9 @@ import "./chart-D15EtNmb.js";
37
37
  import { BasicAvatar as U } from "./components-basic-avatar-basic-avatar.js";
38
38
  import "./index-C4iHL8Gs.js";
39
39
  import "./index-C6N9aMq_.js";
40
- import { u as j } from "./index-B5Id-jNC.js";
41
- const w = 1, y = [".jpg", ".png"], ct = ({
40
+ import { u as j } from "./index-CVlBIwtP.js";
41
+ import "./components-input-phone-input-phone.js";
42
+ const w = 1, y = [".jpg", ".png"], lt = ({
42
43
  src: p,
43
44
  fullName: m,
44
45
  maxFiles: n = w,
@@ -98,6 +99,6 @@ const w = 1, y = [".jpg", ".png"], ct = ({
98
99
  );
99
100
  };
100
101
  export {
101
- ct as AvatarUpload
102
+ lt as AvatarUpload
102
103
  };
103
104
  //# sourceMappingURL=components-avatar-uploader-avatar-uploader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components-avatar-uploader-avatar-uploader.js","sources":["../src/components/avatar-uploader/avatar-uploader.tsx"],"sourcesContent":["import { cn } from \"@/index\";\nimport { useMemo } from \"react\";\nimport { useDropzone } from \"react-dropzone\";\nimport { BasicAvatar, type BasicAvatarProps } from \"../basic-avatar\";\nimport { Typography } from \"../ui/typography\";\n\ntype Props = {\n maxFiles?: number;\n src?: string;\n fullName: string;\n accept?: string[];\n avatarProps?: BasicAvatarProps;\n containerClassName?: string;\n onChange?: (src: string | null) => void;\n};\n\nconst DEFAULT_MAX_FILES = 1;\nconst DEFAULT_ACCEPT = [\".jpg\", \".png\"];\n\nexport const AvatarUpload = ({\n src,\n fullName,\n maxFiles = DEFAULT_MAX_FILES,\n accept = DEFAULT_ACCEPT,\n avatarProps,\n containerClassName,\n onChange,\n}: Props) => {\n const initials = useMemo(() => {\n const [firstName, lastName] = fullName?.split(\" \");\n const first = firstName?.charAt(0) || \"\";\n const last = lastName?.charAt(0) || \"\";\n\n return (first + last).toUpperCase() || \"?\";\n }, [fullName]);\n\n const { getRootProps, getInputProps } = useDropzone({\n accept: { \"image/*\": accept },\n maxFiles,\n onDrop: (files) => {\n const file = files[0];\n if (file) {\n const previewUrl = URL.createObjectURL(file);\n onChange?.(previewUrl);\n }\n },\n });\n\n const removeAvatar = (e: React.MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n onChange?.(\"\");\n };\n\n return (\n <div\n {...getRootProps()}\n className={cn(\n `bg-info-new-bg flex h-18 w-18 cursor-pointer items-center justify-center\n overflow-hidden rounded-full transition-colors`,\n containerClassName,\n )}\n >\n <input {...getInputProps()} />\n {src ? (\n <BasicAvatar\n {...avatarProps}\n image={{\n src,\n }}\n initials={{ text: initials }}\n hasBadge\n onClick={removeAvatar}\n />\n ) : (\n <Typography\n variant=\"body-xxl-medium\"\n className=\"text-info-new-text flex items-center justify-center\"\n >\n {initials}\n </Typography>\n )}\n </div>\n );\n};\n\nexport type { Props as AvatarUploadProps };\n"],"names":["DEFAULT_MAX_FILES","DEFAULT_ACCEPT","AvatarUpload","src","fullName","maxFiles","accept","avatarProps","containerClassName","onChange","initials","useMemo","firstName","lastName","first","last","getRootProps","getInputProps","useDropzone","files","file","previewUrl","removeAvatar","e","jsxs","cn","jsx","BasicAvatar","Typography"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAMA,IAAoB,GACpBC,IAAiB,CAAC,QAAQ,MAAM,GAEzBC,KAAe,CAAC;AAAA,EAC3B,KAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC,IAAWL;AAAA,EACX,QAAAM,IAASL;AAAA,EACT,aAAAM;AAAA,EACA,oBAAAC;AAAA,EACA,UAAAC;AACF,MAAa;AACX,QAAMC,IAAWC,EAAQ,MAAM;AAC7B,UAAM,CAACC,GAAWC,CAAQ,IAAIT,GAAU,MAAM,GAAG,GAC3CU,IAAQF,GAAW,OAAO,CAAC,KAAK,IAChCG,IAAOF,GAAU,OAAO,CAAC,KAAK;AAEpC,YAAQC,IAAQC,GAAM,YAAA,KAAiB;AAAA,EACzC,GAAG,CAACX,CAAQ,CAAC,GAEP,EAAE,cAAAY,GAAc,eAAAC,EAAA,IAAkBC,EAAY;AAAA,IAClD,QAAQ,EAAE,WAAWZ,EAAA;AAAA,IACrB,UAAAD;AAAA,IACA,QAAQ,CAACc,MAAU;AACjB,YAAMC,IAAOD,EAAM,CAAC;AACpB,UAAIC,GAAM;AACR,cAAMC,IAAa,IAAI,gBAAgBD,CAAI;AAC3C,QAAAX,IAAWY,CAAU;AAAA,MACvB;AAAA,IACF;AAAA,EAAA,CACD,GAEKC,IAAe,CAACC,MAAwC;AAC5D,IAAAA,EAAE,gBAAA,GACFd,IAAW,EAAE;AAAA,EACf;AAEA,SACE,gBAAAe;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAGR,EAAA;AAAA,MACJ,WAAWS;AAAA,QACT;AAAA;AAAA,QAEAjB;AAAA,MAAA;AAAA,MAGF,UAAA;AAAA,QAAA,gBAAAkB,EAAC,SAAA,EAAO,GAAGT,EAAA,EAAc,CAAG;AAAA,QAC3Bd,IACC,gBAAAuB;AAAA,UAACC;AAAA,UAAA;AAAA,YACE,GAAGpB;AAAA,YACJ,OAAO;AAAA,cACL,KAAAJ;AAAA,YAAA;AAAA,YAEF,UAAU,EAAE,MAAMO,EAAA;AAAA,YAClB,UAAQ;AAAA,YACR,SAASY;AAAA,UAAA;AAAA,QAAA,IAGX,gBAAAI;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,WAAU;AAAA,YAET,UAAAlB;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAAA;AAIR;"}
1
+ {"version":3,"file":"components-avatar-uploader-avatar-uploader.js","sources":["../src/components/avatar-uploader/avatar-uploader.tsx"],"sourcesContent":["import { cn } from \"@/index\";\nimport { useMemo } from \"react\";\nimport { useDropzone } from \"react-dropzone\";\nimport { BasicAvatar, type BasicAvatarProps } from \"../basic-avatar\";\nimport { Typography } from \"../ui/typography\";\n\ntype Props = {\n maxFiles?: number;\n src?: string;\n fullName: string;\n accept?: string[];\n avatarProps?: BasicAvatarProps;\n containerClassName?: string;\n onChange?: (src: string | null) => void;\n};\n\nconst DEFAULT_MAX_FILES = 1;\nconst DEFAULT_ACCEPT = [\".jpg\", \".png\"];\n\nexport const AvatarUpload = ({\n src,\n fullName,\n maxFiles = DEFAULT_MAX_FILES,\n accept = DEFAULT_ACCEPT,\n avatarProps,\n containerClassName,\n onChange,\n}: Props) => {\n const initials = useMemo(() => {\n const [firstName, lastName] = fullName?.split(\" \");\n const first = firstName?.charAt(0) || \"\";\n const last = lastName?.charAt(0) || \"\";\n\n return (first + last).toUpperCase() || \"?\";\n }, [fullName]);\n\n const { getRootProps, getInputProps } = useDropzone({\n accept: { \"image/*\": accept },\n maxFiles,\n onDrop: (files) => {\n const file = files[0];\n if (file) {\n const previewUrl = URL.createObjectURL(file);\n onChange?.(previewUrl);\n }\n },\n });\n\n const removeAvatar = (e: React.MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n onChange?.(\"\");\n };\n\n return (\n <div\n {...getRootProps()}\n className={cn(\n `bg-info-new-bg flex h-18 w-18 cursor-pointer items-center justify-center\n overflow-hidden rounded-full transition-colors`,\n containerClassName,\n )}\n >\n <input {...getInputProps()} />\n {src ? (\n <BasicAvatar\n {...avatarProps}\n image={{\n src,\n }}\n initials={{ text: initials }}\n hasBadge\n onClick={removeAvatar}\n />\n ) : (\n <Typography\n variant=\"body-xxl-medium\"\n className=\"text-info-new-text flex items-center justify-center\"\n >\n {initials}\n </Typography>\n )}\n </div>\n );\n};\n\nexport type { Props as AvatarUploadProps };\n"],"names":["DEFAULT_MAX_FILES","DEFAULT_ACCEPT","AvatarUpload","src","fullName","maxFiles","accept","avatarProps","containerClassName","onChange","initials","useMemo","firstName","lastName","first","last","getRootProps","getInputProps","useDropzone","files","file","previewUrl","removeAvatar","e","jsxs","cn","jsx","BasicAvatar","Typography"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAMA,IAAoB,GACpBC,IAAiB,CAAC,QAAQ,MAAM,GAEzBC,KAAe,CAAC;AAAA,EAC3B,KAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC,IAAWL;AAAA,EACX,QAAAM,IAASL;AAAA,EACT,aAAAM;AAAA,EACA,oBAAAC;AAAA,EACA,UAAAC;AACF,MAAa;AACX,QAAMC,IAAWC,EAAQ,MAAM;AAC7B,UAAM,CAACC,GAAWC,CAAQ,IAAIT,GAAU,MAAM,GAAG,GAC3CU,IAAQF,GAAW,OAAO,CAAC,KAAK,IAChCG,IAAOF,GAAU,OAAO,CAAC,KAAK;AAEpC,YAAQC,IAAQC,GAAM,YAAA,KAAiB;AAAA,EACzC,GAAG,CAACX,CAAQ,CAAC,GAEP,EAAE,cAAAY,GAAc,eAAAC,EAAA,IAAkBC,EAAY;AAAA,IAClD,QAAQ,EAAE,WAAWZ,EAAA;AAAA,IACrB,UAAAD;AAAA,IACA,QAAQ,CAACc,MAAU;AACjB,YAAMC,IAAOD,EAAM,CAAC;AACpB,UAAIC,GAAM;AACR,cAAMC,IAAa,IAAI,gBAAgBD,CAAI;AAC3C,QAAAX,IAAWY,CAAU;AAAA,MACvB;AAAA,IACF;AAAA,EAAA,CACD,GAEKC,IAAe,CAACC,MAAwC;AAC5D,IAAAA,EAAE,gBAAA,GACFd,IAAW,EAAE;AAAA,EACf;AAEA,SACE,gBAAAe;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAGR,EAAA;AAAA,MACJ,WAAWS;AAAA,QACT;AAAA;AAAA,QAEAjB;AAAA,MAAA;AAAA,MAGF,UAAA;AAAA,QAAA,gBAAAkB,EAAC,SAAA,EAAO,GAAGT,EAAA,EAAc,CAAG;AAAA,QAC3Bd,IACC,gBAAAuB;AAAA,UAACC;AAAA,UAAA;AAAA,YACE,GAAGpB;AAAA,YACJ,OAAO;AAAA,cACL,KAAAJ;AAAA,YAAA;AAAA,YAEF,UAAU,EAAE,MAAMO,EAAA;AAAA,YAClB,UAAQ;AAAA,YACR,SAASY;AAAA,UAAA;AAAA,QAAA,IAGX,gBAAAI;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,WAAU;AAAA,YAET,UAAAlB;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAAA;AAIR;"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const e=require("react/jsx-runtime");;/* empty css */const r=require("./lib-utils.cjs");require("class-variance-authority");require("react");require("./components-ui-badge-badge.styles.cjs");require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");require("./components-ui-card-card.cjs");require("./components-ui-checkbox-checkbox.cjs");const p=require("./components-ui-icon-icon.cjs");require("./components-ui-combobox-combobox.cjs");require("./components-ui-dialog-dialog.cjs");require("./components-ui-label-label.cjs");require("./components-ui-separator-separator.cjs");require("./components-ui-field-field.styles.cjs");require("./components-ui-input-input.styles.cjs");require("./components-ui-textarea-textarea.cjs");require("./components-ui-input-group-input-group.styles.cjs");require("./components-ui-navigation-item-navigation-item.styles.cjs");require("./components-ui-navigation-menu-navigation-menu.styles.cjs");require("./components-ui-pagination-pagination.cjs");require("./components-ui-progress-progress.cjs");require("./components-ui-radio-group-radio-group.cjs");require("./components-ui-switch-switch.cjs");require("./components-ui-table-table.cjs");require("./components-ui-tabs-tabs.cjs");require("./components-ui-tooltip-tooltip.cjs");const m=require("./components-ui-typography-typography.cjs");require("./components-ui-typography-typography.styles.cjs");const i=require("./components-ui-avatar-avatar.cjs");require("lucide-react");require("./components-app-pagination-app-pagination.styles.cjs");require("./components-app-sidebar-app-sidebar.styles.cjs");require("./components-select-field-select-field.cjs");require("./lodash-kqhtUJfz.cjs");require("./chart-CgVfpT_X.cjs");require("./index-DGxwh2Ms.cjs");require("./index-fTTv8YY8.cjs");const y=({initials:u,avatar:t,fallback:n,image:a,icon:c,showDeleteOnHover:o=!0,onClick:q=()=>{}})=>{const s=e.jsxs(i.Avatar,{...t,className:r.cn("h-18 w-18",t?.className),children:[e.jsx(i.AvatarImage,{...a,alt:"avatar",className:r.cn("h-full w-full border-0",a?.className)}),e.jsx(i.AvatarFallback,{...n,children:e.jsx(m.Typography,{variant:"body-xxl-medium",className:r.cn("text-info-new-text",u?.className),children:u?.text})})]});return o?e.jsxs("div",{className:"relative inline-block",children:[s,e.jsx("div",{className:`text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const e=require("react/jsx-runtime");;/* empty css */const r=require("./lib-utils.cjs");require("class-variance-authority");require("react");require("./components-ui-badge-badge.styles.cjs");require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");require("./components-ui-card-card.cjs");require("./components-ui-checkbox-checkbox.cjs");const p=require("./components-ui-icon-icon.cjs");require("./components-ui-combobox-combobox.cjs");require("./components-ui-dialog-dialog.cjs");require("./components-ui-label-label.cjs");require("./components-ui-separator-separator.cjs");require("./components-ui-field-field.styles.cjs");require("./components-ui-input-input.styles.cjs");require("./components-ui-textarea-textarea.cjs");require("./components-ui-input-group-input-group.styles.cjs");require("./components-ui-navigation-item-navigation-item.styles.cjs");require("./components-ui-navigation-menu-navigation-menu.styles.cjs");require("./components-ui-pagination-pagination.cjs");require("./components-ui-progress-progress.cjs");require("./components-ui-radio-group-radio-group.cjs");require("./components-ui-switch-switch.cjs");require("./components-ui-table-table.cjs");require("./components-ui-tabs-tabs.cjs");require("./components-ui-tooltip-tooltip.cjs");const m=require("./components-ui-typography-typography.cjs");require("./components-ui-typography-typography.styles.cjs");const i=require("./components-ui-avatar-avatar.cjs");require("lucide-react");require("./components-app-pagination-app-pagination.styles.cjs");require("./components-app-sidebar-app-sidebar.styles.cjs");require("./components-select-field-select-field.cjs");require("./lodash-kqhtUJfz.cjs");require("./chart-CgVfpT_X.cjs");require("./index-DGxwh2Ms.cjs");require("./index-fTTv8YY8.cjs");require("./components-input-phone-input-phone.cjs");const y=({initials:u,avatar:t,fallback:n,image:a,icon:c,showDeleteOnHover:o=!0,onClick:q=()=>{}})=>{const s=e.jsxs(i.Avatar,{...t,className:r.cn("h-18 w-18",t?.className),children:[e.jsx(i.AvatarImage,{...a,alt:"avatar",className:r.cn("h-full w-full border-0",a?.className)}),e.jsx(i.AvatarFallback,{...n,children:e.jsx(m.Typography,{variant:"body-xxl-medium",className:r.cn("text-info-new-text",u?.className),children:u?.text})})]});return o?e.jsxs("div",{className:"relative inline-block",children:[s,e.jsx("div",{className:`text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex
2
2
  cursor-pointer items-center justify-center rounded-full opacity-0
3
3
  transition-opacity hover:opacity-100`,onClick:l=>l.stopPropagation(),children:e.jsx(p.Icon,{...c,type:"close",onClick:q})})]}):s};exports.BasicAvatar=y;
4
4
  //# sourceMappingURL=components-basic-avatar-basic-avatar.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"components-basic-avatar-basic-avatar.cjs","sources":["../src/components/basic-avatar/basic-avatar.tsx"],"sourcesContent":["import { Icon, Typography, cn } from \"@/index\";\nimport { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../ui/avatar\";\nimport type { IconProps } from \"../ui/icon\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n};\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\ntype Props = {\n initials?: {\n text?: string;\n className?: string;\n };\n hasBadge?: boolean;\n avatar?: AvatarProps;\n fallback?: AvatarFallbackProps;\n image?: AvatarImageProps;\n showDeleteOnHover?: boolean;\n icon?: IconProps;\n onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nexport const BasicAvatar = ({\n initials,\n avatar,\n fallback,\n image,\n icon,\n showDeleteOnHover = true,\n onClick = () => {},\n}: Props) => {\n const content = (\n <Avatar\n {...avatar}\n className={cn(\"h-18 w-18\", avatar?.className)}\n >\n <AvatarImage\n {...image}\n alt=\"avatar\"\n className={cn(\"h-full w-full border-0\", image?.className)}\n />\n <AvatarFallback {...fallback}>\n <Typography\n variant=\"body-xxl-medium\"\n className={cn(\"text-info-new-text\", initials?.className)}\n >\n {initials?.text}\n </Typography>\n </AvatarFallback>\n </Avatar>\n );\n\n if (!showDeleteOnHover) {\n return content;\n }\n\n return (\n <div className=\"relative inline-block\">\n {content}\n <div\n className=\"text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex\n cursor-pointer items-center justify-center rounded-full opacity-0\n transition-opacity hover:opacity-100\"\n onClick={(e) => e.stopPropagation()}\n >\n <Icon\n {...icon}\n type=\"close\"\n onClick={onClick}\n />\n </div>\n </div>\n );\n};\n\nexport type {\n AvatarFallbackProps,\n AvatarImageProps,\n AvatarProps,\n Props as BasicAvatarProps,\n};\n"],"names":["BasicAvatar","initials","avatar","fallback","image","icon","showDeleteOnHover","onClick","content","jsxs","Avatar","cn","jsx","AvatarImage","AvatarFallback","Typography","e","Icon"],"mappings":"82DAyBO,MAAMA,EAAc,CAAC,CAC1B,SAAAC,EACA,OAAAC,EACA,SAAAC,EACA,MAAAC,EACA,KAAAC,EACA,kBAAAC,EAAoB,GACpB,QAAAC,EAAU,IAAM,CAAC,CACnB,IAAa,CACX,MAAMC,EACJC,EAAAA,KAACC,EAAAA,OAAA,CACE,GAAGR,EACJ,UAAWS,EAAAA,GAAG,YAAaT,GAAQ,SAAS,EAE5C,SAAA,CAAAU,EAAAA,IAACC,EAAAA,YAAA,CACE,GAAGT,EACJ,IAAI,SACJ,UAAWO,EAAAA,GAAG,yBAA0BP,GAAO,SAAS,CAAA,CAAA,EAE1DQ,EAAAA,IAACE,EAAAA,eAAA,CAAgB,GAAGX,EAClB,SAAAS,EAAAA,IAACG,EAAAA,WAAA,CACC,QAAQ,kBACR,UAAWJ,EAAAA,GAAG,qBAAsBV,GAAU,SAAS,EAEtD,SAAAA,GAAU,IAAA,CAAA,CACb,CACF,CAAA,CAAA,CAAA,EAIJ,OAAKK,EAKHG,EAAAA,KAAC,MAAA,CAAI,UAAU,wBACZ,SAAA,CAAAD,EACDI,EAAAA,IAAC,MAAA,CACC,UAAU;AAAA;AAAA,gDAGV,QAAUI,GAAMA,EAAE,gBAAA,EAElB,SAAAJ,EAAAA,IAACK,EAAAA,KAAA,CACE,GAAGZ,EACJ,KAAK,QACL,QAAAE,CAAA,CAAA,CACF,CAAA,CACF,EACF,EAlBOC,CAoBX"}
1
+ {"version":3,"file":"components-basic-avatar-basic-avatar.cjs","sources":["../src/components/basic-avatar/basic-avatar.tsx"],"sourcesContent":["import { Icon, Typography, cn } from \"@/index\";\nimport { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../ui/avatar\";\nimport type { IconProps } from \"../ui/icon\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n};\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\ntype Props = {\n initials?: {\n text?: string;\n className?: string;\n };\n hasBadge?: boolean;\n avatar?: AvatarProps;\n fallback?: AvatarFallbackProps;\n image?: AvatarImageProps;\n showDeleteOnHover?: boolean;\n icon?: IconProps;\n onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nexport const BasicAvatar = ({\n initials,\n avatar,\n fallback,\n image,\n icon,\n showDeleteOnHover = true,\n onClick = () => {},\n}: Props) => {\n const content = (\n <Avatar\n {...avatar}\n className={cn(\"h-18 w-18\", avatar?.className)}\n >\n <AvatarImage\n {...image}\n alt=\"avatar\"\n className={cn(\"h-full w-full border-0\", image?.className)}\n />\n <AvatarFallback {...fallback}>\n <Typography\n variant=\"body-xxl-medium\"\n className={cn(\"text-info-new-text\", initials?.className)}\n >\n {initials?.text}\n </Typography>\n </AvatarFallback>\n </Avatar>\n );\n\n if (!showDeleteOnHover) {\n return content;\n }\n\n return (\n <div className=\"relative inline-block\">\n {content}\n <div\n className=\"text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex\n cursor-pointer items-center justify-center rounded-full opacity-0\n transition-opacity hover:opacity-100\"\n onClick={(e) => e.stopPropagation()}\n >\n <Icon\n {...icon}\n type=\"close\"\n onClick={onClick}\n />\n </div>\n </div>\n );\n};\n\nexport type {\n AvatarFallbackProps,\n AvatarImageProps,\n AvatarProps,\n Props as BasicAvatarProps,\n};\n"],"names":["BasicAvatar","initials","avatar","fallback","image","icon","showDeleteOnHover","onClick","content","jsxs","Avatar","cn","jsx","AvatarImage","AvatarFallback","Typography","e","Icon"],"mappings":"k6DAyBO,MAAMA,EAAc,CAAC,CAC1B,SAAAC,EACA,OAAAC,EACA,SAAAC,EACA,MAAAC,EACA,KAAAC,EACA,kBAAAC,EAAoB,GACpB,QAAAC,EAAU,IAAM,CAAC,CACnB,IAAa,CACX,MAAMC,EACJC,EAAAA,KAACC,EAAAA,OAAA,CACE,GAAGR,EACJ,UAAWS,EAAAA,GAAG,YAAaT,GAAQ,SAAS,EAE5C,SAAA,CAAAU,EAAAA,IAACC,EAAAA,YAAA,CACE,GAAGT,EACJ,IAAI,SACJ,UAAWO,EAAAA,GAAG,yBAA0BP,GAAO,SAAS,CAAA,CAAA,EAE1DQ,EAAAA,IAACE,EAAAA,eAAA,CAAgB,GAAGX,EAClB,SAAAS,EAAAA,IAACG,EAAAA,WAAA,CACC,QAAQ,kBACR,UAAWJ,EAAAA,GAAG,qBAAsBV,GAAU,SAAS,EAEtD,SAAAA,GAAU,IAAA,CAAA,CACb,CACF,CAAA,CAAA,CAAA,EAIJ,OAAKK,EAKHG,EAAAA,KAAC,MAAA,CAAI,UAAU,wBACZ,SAAA,CAAAD,EACDI,EAAAA,IAAC,MAAA,CACC,UAAU;AAAA;AAAA,gDAGV,QAAUI,GAAMA,EAAE,gBAAA,EAElB,SAAAJ,EAAAA,IAACK,EAAAA,KAAA,CACE,GAAGZ,EACJ,KAAK,QACL,QAAAE,CAAA,CAAA,CACF,CAAA,CACF,EACF,EAlBOC,CAoBX"}
@@ -37,7 +37,8 @@ import "./lodash-FemA_LCk.js";
37
37
  import "./chart-D15EtNmb.js";
38
38
  import "./index-C4iHL8Gs.js";
39
39
  import "./index-C6N9aMq_.js";
40
- const or = ({
40
+ import "./components-input-phone-input-phone.js";
41
+ const ir = ({
41
42
  initials: o,
42
43
  avatar: i,
43
44
  fallback: a,
@@ -94,6 +95,6 @@ const or = ({
94
95
  ] }) : p;
95
96
  };
96
97
  export {
97
- or as BasicAvatar
98
+ ir as BasicAvatar
98
99
  };
99
100
  //# sourceMappingURL=components-basic-avatar-basic-avatar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components-basic-avatar-basic-avatar.js","sources":["../src/components/basic-avatar/basic-avatar.tsx"],"sourcesContent":["import { Icon, Typography, cn } from \"@/index\";\nimport { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../ui/avatar\";\nimport type { IconProps } from \"../ui/icon\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n};\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\ntype Props = {\n initials?: {\n text?: string;\n className?: string;\n };\n hasBadge?: boolean;\n avatar?: AvatarProps;\n fallback?: AvatarFallbackProps;\n image?: AvatarImageProps;\n showDeleteOnHover?: boolean;\n icon?: IconProps;\n onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nexport const BasicAvatar = ({\n initials,\n avatar,\n fallback,\n image,\n icon,\n showDeleteOnHover = true,\n onClick = () => {},\n}: Props) => {\n const content = (\n <Avatar\n {...avatar}\n className={cn(\"h-18 w-18\", avatar?.className)}\n >\n <AvatarImage\n {...image}\n alt=\"avatar\"\n className={cn(\"h-full w-full border-0\", image?.className)}\n />\n <AvatarFallback {...fallback}>\n <Typography\n variant=\"body-xxl-medium\"\n className={cn(\"text-info-new-text\", initials?.className)}\n >\n {initials?.text}\n </Typography>\n </AvatarFallback>\n </Avatar>\n );\n\n if (!showDeleteOnHover) {\n return content;\n }\n\n return (\n <div className=\"relative inline-block\">\n {content}\n <div\n className=\"text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex\n cursor-pointer items-center justify-center rounded-full opacity-0\n transition-opacity hover:opacity-100\"\n onClick={(e) => e.stopPropagation()}\n >\n <Icon\n {...icon}\n type=\"close\"\n onClick={onClick}\n />\n </div>\n </div>\n );\n};\n\nexport type {\n AvatarFallbackProps,\n AvatarImageProps,\n AvatarProps,\n Props as BasicAvatarProps,\n};\n"],"names":["BasicAvatar","initials","avatar","fallback","image","icon","showDeleteOnHover","onClick","content","jsxs","Avatar","cn","jsx","AvatarImage","AvatarFallback","Typography","e","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBO,MAAMA,KAAc,CAAC;AAAA,EAC1B,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,mBAAAC,IAAoB;AAAA,EACpB,SAAAC,IAAU,MAAM;AAAA,EAAC;AACnB,MAAa;AACX,QAAMC,IACJ,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGR;AAAA,MACJ,WAAWS,EAAG,aAAaT,GAAQ,SAAS;AAAA,MAE5C,UAAA;AAAA,QAAA,gBAAAU;AAAA,UAACC;AAAA,UAAA;AAAA,YACE,GAAGT;AAAA,YACJ,KAAI;AAAA,YACJ,WAAWO,EAAG,0BAA0BP,GAAO,SAAS;AAAA,UAAA;AAAA,QAAA;AAAA,QAE1D,gBAAAQ,EAACE,GAAA,EAAgB,GAAGX,GAClB,UAAA,gBAAAS;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,WAAWJ,EAAG,sBAAsBV,GAAU,SAAS;AAAA,YAEtD,UAAAA,GAAU;AAAA,UAAA;AAAA,QAAA,EACb,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIJ,SAAKK,IAKH,gBAAAG,EAAC,OAAA,EAAI,WAAU,yBACZ,UAAA;AAAA,IAAAD;AAAA,IACD,gBAAAI;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA;AAAA;AAAA,QAGV,SAAS,CAACI,MAAMA,EAAE,gBAAA;AAAA,QAElB,UAAA,gBAAAJ;AAAA,UAACK;AAAA,UAAA;AAAA,YACE,GAAGZ;AAAA,YACJ,MAAK;AAAA,YACL,SAAAE;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EACF,GACF,IAlBOC;AAoBX;"}
1
+ {"version":3,"file":"components-basic-avatar-basic-avatar.js","sources":["../src/components/basic-avatar/basic-avatar.tsx"],"sourcesContent":["import { Icon, Typography, cn } from \"@/index\";\nimport { Avatar as AvatarPrimitive } from \"radix-ui\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../ui/avatar\";\nimport type { IconProps } from \"../ui/icon\";\n\ntype AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: \"default\" | \"sm\" | \"lg\";\n};\ntype AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>;\ntype AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>;\n\ntype Props = {\n initials?: {\n text?: string;\n className?: string;\n };\n hasBadge?: boolean;\n avatar?: AvatarProps;\n fallback?: AvatarFallbackProps;\n image?: AvatarImageProps;\n showDeleteOnHover?: boolean;\n icon?: IconProps;\n onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;\n};\n\nexport const BasicAvatar = ({\n initials,\n avatar,\n fallback,\n image,\n icon,\n showDeleteOnHover = true,\n onClick = () => {},\n}: Props) => {\n const content = (\n <Avatar\n {...avatar}\n className={cn(\"h-18 w-18\", avatar?.className)}\n >\n <AvatarImage\n {...image}\n alt=\"avatar\"\n className={cn(\"h-full w-full border-0\", image?.className)}\n />\n <AvatarFallback {...fallback}>\n <Typography\n variant=\"body-xxl-medium\"\n className={cn(\"text-info-new-text\", initials?.className)}\n >\n {initials?.text}\n </Typography>\n </AvatarFallback>\n </Avatar>\n );\n\n if (!showDeleteOnHover) {\n return content;\n }\n\n return (\n <div className=\"relative inline-block\">\n {content}\n <div\n className=\"text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex\n cursor-pointer items-center justify-center rounded-full opacity-0\n transition-opacity hover:opacity-100\"\n onClick={(e) => e.stopPropagation()}\n >\n <Icon\n {...icon}\n type=\"close\"\n onClick={onClick}\n />\n </div>\n </div>\n );\n};\n\nexport type {\n AvatarFallbackProps,\n AvatarImageProps,\n AvatarProps,\n Props as BasicAvatarProps,\n};\n"],"names":["BasicAvatar","initials","avatar","fallback","image","icon","showDeleteOnHover","onClick","content","jsxs","Avatar","cn","jsx","AvatarImage","AvatarFallback","Typography","e","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyBO,MAAMA,KAAc,CAAC;AAAA,EAC1B,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,mBAAAC,IAAoB;AAAA,EACpB,SAAAC,IAAU,MAAM;AAAA,EAAC;AACnB,MAAa;AACX,QAAMC,IACJ,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGR;AAAA,MACJ,WAAWS,EAAG,aAAaT,GAAQ,SAAS;AAAA,MAE5C,UAAA;AAAA,QAAA,gBAAAU;AAAA,UAACC;AAAA,UAAA;AAAA,YACE,GAAGT;AAAA,YACJ,KAAI;AAAA,YACJ,WAAWO,EAAG,0BAA0BP,GAAO,SAAS;AAAA,UAAA;AAAA,QAAA;AAAA,QAE1D,gBAAAQ,EAACE,GAAA,EAAgB,GAAGX,GAClB,UAAA,gBAAAS;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,WAAWJ,EAAG,sBAAsBV,GAAU,SAAS;AAAA,YAEtD,UAAAA,GAAU;AAAA,UAAA;AAAA,QAAA,EACb,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAIJ,SAAKK,IAKH,gBAAAG,EAAC,OAAA,EAAI,WAAU,yBACZ,UAAA;AAAA,IAAAD;AAAA,IACD,gBAAAI;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA;AAAA;AAAA,QAGV,SAAS,CAACI,MAAMA,EAAE,gBAAA;AAAA,QAElB,UAAA,gBAAAJ;AAAA,UAACK;AAAA,UAAA;AAAA,YACE,GAAGZ;AAAA,YACJ,MAAK;AAAA,YACL,SAAAE;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EACF,GACF,IAlBOC;AAoBX;"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),d=require("./lib-utils.cjs"),b=require("react"),D=require("./index-D8y9Cogu.cjs"),h=require("./components-ui-icon-icon.cjs"),L=require("./components-ui-typography-typography.cjs");require("./components-ui-typography-typography.styles.cjs");const $=["B","KB","MB","GB","TB"],u=1024,B=5*u*u,P=5,C=["all"],F=800,k={image:{"image/*":[".jpg",".jpeg",".png",".webp"]},pdf:{"application/pdf":[".pdf"]},doc:{"application/msword":[".doc"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":[".docx"]},excel:{"application/vnd.ms-excel":[".xls"],"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":[".xlsx"]},text:{"text/plain":[".txt"]},all:{}},O=r=>{if(r===0)return"0 B";const e=Math.floor(Math.log(r)/Math.log(u));return`${(r/Math.pow(u,e)).toFixed(2)} ${$[e]}`},Z=r=>r.reduce((e,l)=>({...e,...k[l]}),{}),z=r=>{const e=r.name.split(".").pop()?.toLowerCase();return e?["jpg","jpeg","png","webp"].includes(e)?"image":e==="pdf"?"pdf":["doc","docx"].includes(e)?"doc":["xls","xlsx"].includes(e)?"excel":e==="txt"?"text":"other":"other"},K=({value:r=null,onChange:e,multiple:l=!1,maxFiles:i=P,disabled:y=!1,className:p,maxSize:g=B,variant:m="grid",accepts:T=C,icon:U,title:j,text:v,showFiles:_=!0})=>{const[f,w]=b.useState(!1),[A,x]=b.useState(null),s=Array.isArray(r)?r:r?[r]:[],E=b.useCallback((o,n)=>{if(x(null),s.length+o.length>i){x(`Максимальное количество файлов: ${i}`);return}if(n.length>0){const c=n[0].errors[0]?.code==="file-too-large"?`Файл слишком большой. Максимальный размер: ${g/1024/1024}MB`:"Неподдерживаемый формат файла";x(c);return}w(!0),setTimeout(()=>{const a=o.map(c=>({url:URL.createObjectURL(c),name:c.name,size:O(c.size),addedAt:new Date().toISOString()}));l?e?.([...s,...a]):(s[0]?.url?.startsWith("blob:")&&URL.revokeObjectURL(s[0].url),e?.(a[0]??null)),w(!1)},F)},[s,i,g,l,e]),{getRootProps:I,getInputProps:M,isDragActive:N}=D.useDropzone({onDrop:E,accept:Z(T),maxSize:g,multiple:l&&i>1,disabled:y||f,maxFiles:i-s.length}),R=o=>()=>{s[o]?.url?.startsWith("blob:")&&URL.revokeObjectURL(s[o].url);const n=s.filter((a,c)=>c!==o);e?.(l?n:n[0]||null)},S=s.length>=i,q={grid:"grid-cols-2 sm:grid-cols-3 md:grid-cols-4",list:"grid-cols-1",compact:"grid-cols-2 sm:grid-cols-3"};return t.jsxs("div",{className:d.cn("w-full space-y-4",p?.container),children:[t.jsxs("div",{className:d.cn("grid h-full w-full gap-4",m==="list"?"grid-cols-1":q[m]),children:[_&&s.map((o,n)=>{const a=z(o);return t.jsxs("div",{className:`group bg-primary-bg relative aspect-square h-full w-full
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),d=require("./lib-utils.cjs"),b=require("react"),D=require("./index-DJD-8LQA.cjs"),h=require("./components-ui-icon-icon.cjs"),L=require("./components-ui-typography-typography.cjs");require("./components-ui-typography-typography.styles.cjs");const $=["B","KB","MB","GB","TB"],u=1024,B=5*u*u,P=5,C=["all"],F=800,k={image:{"image/*":[".jpg",".jpeg",".png",".webp"]},pdf:{"application/pdf":[".pdf"]},doc:{"application/msword":[".doc"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":[".docx"]},excel:{"application/vnd.ms-excel":[".xls"],"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":[".xlsx"]},text:{"text/plain":[".txt"]},all:{}},O=r=>{if(r===0)return"0 B";const e=Math.floor(Math.log(r)/Math.log(u));return`${(r/Math.pow(u,e)).toFixed(2)} ${$[e]}`},Z=r=>r.reduce((e,l)=>({...e,...k[l]}),{}),z=r=>{const e=r.name.split(".").pop()?.toLowerCase();return e?["jpg","jpeg","png","webp"].includes(e)?"image":e==="pdf"?"pdf":["doc","docx"].includes(e)?"doc":["xls","xlsx"].includes(e)?"excel":e==="txt"?"text":"other":"other"},K=({value:r=null,onChange:e,multiple:l=!1,maxFiles:i=P,disabled:y=!1,className:p,maxSize:g=B,variant:m="grid",accepts:T=C,icon:U,title:j,text:v,showFiles:_=!0})=>{const[f,w]=b.useState(!1),[A,x]=b.useState(null),s=Array.isArray(r)?r:r?[r]:[],E=b.useCallback((o,n)=>{if(x(null),s.length+o.length>i){x(`Максимальное количество файлов: ${i}`);return}if(n.length>0){const c=n[0].errors[0]?.code==="file-too-large"?`Файл слишком большой. Максимальный размер: ${g/1024/1024}MB`:"Неподдерживаемый формат файла";x(c);return}w(!0),setTimeout(()=>{const a=o.map(c=>({url:URL.createObjectURL(c),name:c.name,size:O(c.size),addedAt:new Date().toISOString()}));l?e?.([...s,...a]):(s[0]?.url?.startsWith("blob:")&&URL.revokeObjectURL(s[0].url),e?.(a[0]??null)),w(!1)},F)},[s,i,g,l,e]),{getRootProps:I,getInputProps:M,isDragActive:N}=D.useDropzone({onDrop:E,accept:Z(T),maxSize:g,multiple:l&&i>1,disabled:y||f,maxFiles:i-s.length}),R=o=>()=>{s[o]?.url?.startsWith("blob:")&&URL.revokeObjectURL(s[o].url);const n=s.filter((a,c)=>c!==o);e?.(l?n:n[0]||null)},S=s.length>=i,q={grid:"grid-cols-2 sm:grid-cols-3 md:grid-cols-4",list:"grid-cols-1",compact:"grid-cols-2 sm:grid-cols-3"};return t.jsxs("div",{className:d.cn("w-full space-y-4",p?.container),children:[t.jsxs("div",{className:d.cn("grid h-full w-full gap-4",m==="list"?"grid-cols-1":q[m]),children:[_&&s.map((o,n)=>{const a=z(o);return t.jsxs("div",{className:`group bg-primary-bg relative aspect-square h-full w-full
2
2
  overflow-hidden rounded-lg`,children:[a==="image"?t.jsx("img",{src:o.url,alt:`Preview ${n+1}`,className:"h-full w-full object-cover"}):t.jsx("div",{className:`flex h-full w-full items-center justify-center bg-gray-100
3
3
  text-sm font-semibold`,children:o.name.split(".").pop()?.toUpperCase()}),t.jsx("div",{className:`text-primary-bg bg-primary-inverse-bg/50 absolute inset-0 flex
4
4
  cursor-pointer items-center justify-center rounded-lg opacity-0
@@ -1,7 +1,7 @@
1
1
  import { jsxs as u, jsx as s } from "react/jsx-runtime";
2
2
  import { cn as d } from "./lib-utils.js";
3
3
  import { useState as E, useCallback as C } from "react";
4
- import { u as P } from "./index-B5Id-jNC.js";
4
+ import { u as P } from "./index-CVlBIwtP.js";
5
5
  import { Icon as x } from "./components-ui-icon-icon.js";
6
6
  import { Typography as U } from "./components-ui-typography-typography.js";
7
7
  import "./components-ui-typography-typography.styles.js";
@@ -0,0 +1,7 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const r=require("react/jsx-runtime");;/* empty css */const c=require("./lib-utils.cjs");require("class-variance-authority");const l=require("react");require("./components-ui-badge-badge.styles.cjs");const v=require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");require("./components-ui-card-card.cjs");require("./components-ui-checkbox-checkbox.cjs");const p=require("./components-ui-icon-icon.cjs");require("./components-ui-combobox-combobox.cjs");require("./components-ui-dialog-dialog.cjs");require("./components-ui-label-label.cjs");require("./components-ui-separator-separator.cjs");require("./components-ui-field-field.styles.cjs");require("./components-ui-input-input.styles.cjs");require("./components-ui-textarea-textarea.cjs");require("./components-ui-input-group-input-group.styles.cjs");require("./components-ui-navigation-item-navigation-item.styles.cjs");require("./components-ui-navigation-menu-navigation-menu.styles.cjs");require("./components-ui-pagination-pagination.cjs");require("./components-ui-progress-progress.cjs");require("./components-ui-radio-group-radio-group.cjs");require("./components-ui-switch-switch.cjs");require("./components-ui-table-table.cjs");require("./components-ui-tabs-tabs.cjs");require("./components-ui-tooltip-tooltip.cjs");require("./components-ui-typography-typography.styles.cjs");const w=require("./hooks-usePopupControls.cjs");require("lucide-react");require("./components-app-pagination-app-pagination.styles.cjs");require("./components-app-sidebar-app-sidebar.styles.cjs");const C=require("./components-input-field-input-field.cjs");require("./components-select-field-select-field.cjs");require("./lodash-kqhtUJfz.cjs");require("./chart-CgVfpT_X.cjs");require("./index-DGxwh2Ms.cjs");require("./index-fTTv8YY8.cjs");require("./components-input-phone-input-phone.cjs");const f=[{label:"Мобильный",icon:"phone"},{label:"Telegram",icon:"telegram"},{label:"WhatsApp",icon:"whats-app"},{label:"Max",icon:"max"},{label:"E-mail",icon:"mail"}],s=t=>{switch(t){case"max":return{viewBox:"0 0 16 16",bgColor:"bg-[linear-gradient(135deg,#9933DD_0%,#2831B9_50%,#44CCFF_100%)]"};case"telegram":return{viewBox:"0 0 17 17",bgColor:"bg-[#289AD2]"};case"whats-app":return{viewBox:"0 0 18 18",bgColor:"bg-[#00C202]",textColor:"text-[#00C202]"};default:return{viewBox:"0 0 24 24"}}},y=t=>{const[n,m]=l.useState("phone"),{isOpened:o,openPopup:q,closePopup:u}=w.usePopupControls(),a=l.useRef(null);l.useEffect(()=>{const e=i=>{a.current&&!a.current.contains(i.target)&&u()};return o&&document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}},[o,u]);const d=e=>{switch(e){case"phone":return"+7 (999) 999-99-99";case"telegram":return"@username";case"whats-app":return"+7 (999) 999-99-99";case"max":return"ID пользователя Max";case"mail":return"example@mail.com";default:return"Введите значение"}},x=e=>()=>{m(e),t.onTypeChange?.(e),u()};return r.jsxs("div",{className:c.cn("relative",t.classes?.container),children:[r.jsx(C.InputField,{...t,date:[{id:"0",position:"inline-start",component:r.jsx(p.Icon,{type:n,classes:{wrapper:c.cn(`flex h-5.5 w-5.5 items-center justify-center rounded-sm p-[3.5px]
2
+ ${s(n).bgColor??"bg-primary-inverse-hover-bg"}
3
+ ${s(n).textColor??"text-primary-inverse-text"}`)},viewBox:s(n).viewBox})},{id:"1",position:"inline-end",component:r.jsx(p.Icon,{type:o?"chevron-up":"chevron",className:"cursor-pointer",onClick:q})}],placeholder:d(n)}),o&&r.jsx("div",{className:`border-inp-hover-border bg-primary-bg absolute my-2 flex w-full
4
+ flex-col rounded-xl border`,ref:a,children:f.map(({label:e,icon:i})=>{const{bgColor:b,textColor:g,viewBox:h}=s(i);return r.jsxs(v.Button,{variant:"ghost",className:"flex w-full justify-start",type:"button",onClick:x(i),children:[r.jsx(p.Icon,{type:i,className:"text-primary-inverse-text",classes:{wrapper:c.cn(`flex h-5.5 w-5.5 items-center justify-center rounded-sm
5
+ ${b??"bg-primary-inverse-hover-bg"}
6
+ ${g??"text-primary-inverse-text"}`)},viewBox:h}),e]},e)})})]})};exports.InputContact=y;
7
+ //# sourceMappingURL=components-input-contact-input-contact.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"components-contact-input-contact-input.cjs","sources":["../src/constants/contact-input.ts","../src/components/contact-input/contact-input.tsx"],"sourcesContent":["import type { TOption } from \"@/components/contact-input/contact-input\";\n\nexport const OPTIONS: TOption[] = [\n {\n label: \"Мобильный\",\n icon: \"phone\",\n },\n {\n label: \"Telegram\",\n icon: \"telegram\",\n },\n {\n label: \"WhatsApp\",\n icon: \"whats-app\",\n },\n {\n label: \"Max\",\n icon: \"max\",\n },\n {\n label: \"E-mail\",\n icon: \"mail\",\n },\n];\n","import { OPTIONS } from \"@/constants/contact-input\";\nimport { Button, Icon, InputField, cn, usePopupControls, type IconTypes } from \"@/index\";\nimport { useEffect, useRef, useState } from \"react\";\n\nexport type TOption = {\n label: string;\n icon: TypesChange;\n};\n\ntype TypesChange = Extract<\n IconTypes,\n \"telegram\" | \"whats-app\" | \"max\" | \"phone\" | \"mail\"\n>;\n\ntype BaseProps = {\n isValid?: boolean;\n label?: string;\n description?: string;\n classes?: {\n fieldset?: string;\n fieldgroup?: string;\n field?: string;\n container?: string;\n };\n onTypeChange?: (type: TypesChange) => void;\n};\n\ntype InputFieldProps = BaseProps & React.ComponentPropsWithRef<\"input\">;\n\n// TODO: заменить цвета\nconst iconStyles = (icon: IconTypes) => {\n switch (icon) {\n case \"max\":\n return {\n viewBox: \"0 0 16 16\",\n bgColor: \"bg-[linear-gradient(135deg,#9933DD_0%,#2831B9_50%,#44CCFF_100%)]\",\n };\n\n case \"telegram\":\n return {\n viewBox: \"0 0 17 17\",\n bgColor: \"bg-[#289AD2]\",\n };\n\n case \"whats-app\":\n return {\n viewBox: \"0 0 18 18\",\n bgColor: \"bg-[#00C202]\",\n textColor: \"text-[#00C202]\",\n };\n\n default:\n return {\n viewBox: \"0 0 24 24\",\n };\n }\n};\n\nexport const ContactInput = (props: InputFieldProps) => {\n const [type, setType] = useState<TypesChange>(\"phone\");\n const { isOpened, openPopup, closePopup } = usePopupControls();\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (wrapperRef.current && !wrapperRef.current.contains(event.target as Node)) {\n closePopup();\n }\n };\n\n if (isOpened) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [isOpened, closePopup]);\n\n const getPlaceholder = (type: TypesChange): string => {\n switch (type) {\n case \"phone\":\n return \"+7 (999) 999-99-99\";\n case \"telegram\":\n return \"@username\";\n case \"whats-app\":\n return \"+7 (999) 999-99-99\";\n case \"max\":\n return \"ID пользователя Max\";\n case \"mail\":\n return \"example@mail.com\";\n default:\n return \"Введите значение\";\n }\n };\n\n const handleTypeChange = (type: TypesChange) => {\n return () => {\n setType(type);\n props.onTypeChange?.(type);\n closePopup();\n };\n };\n\n return (\n <div className={cn(\"relative\", props.classes?.container)}>\n <InputField\n {...props}\n date={[\n {\n id: \"0\",\n position: \"inline-start\",\n component: (\n <Icon\n type={type}\n classes={{\n wrapper: cn(\n `flex h-5.5 w-5.5 items-center justify-center rounded-sm p-[3.5px]\n ${iconStyles(type).bgColor ?? \"bg-primary-inverse-hover-bg\"}\n ${iconStyles(type).textColor ?? \"text-primary-inverse-text\"}`,\n ),\n }}\n viewBox={iconStyles(type).viewBox}\n />\n ),\n },\n {\n id: \"1\",\n position: \"inline-end\",\n component: (\n <Icon\n type={isOpened ? \"chevron-up\" : \"chevron\"}\n className=\"cursor-pointer\"\n onClick={openPopup}\n />\n ),\n },\n ]}\n placeholder={getPlaceholder(type)}\n />\n\n {isOpened && (\n <div\n className=\"border-inp-hover-border absolute my-2 flex w-full flex-col rounded-xl\n border\"\n ref={wrapperRef}\n >\n {OPTIONS.map(({ label, icon }) => {\n const { bgColor, textColor, viewBox } = iconStyles(icon);\n\n return (\n <Button\n key={label}\n variant=\"ghost\"\n className=\"flex w-full justify-start\"\n type=\"button\"\n onClick={handleTypeChange(icon)}\n >\n <Icon\n type={icon}\n className=\"text-primary-inverse-text\"\n classes={{\n wrapper: cn(\n `flex h-5.5 w-5.5 items-center justify-center rounded-sm\n ${bgColor ?? \"bg-primary-inverse-hover-bg\"}\n ${textColor ?? \"text-primary-inverse-text\"}`,\n ),\n }}\n viewBox={viewBox}\n />\n\n {label}\n </Button>\n );\n })}\n </div>\n )}\n </div>\n );\n};\n\nexport type { InputFieldProps as ContactInputProps, TypesChange };\n"],"names":["OPTIONS","iconStyles","icon","ContactInput","props","type","setType","useState","isOpened","openPopup","closePopup","usePopupControls","wrapperRef","useRef","useEffect","handleClickOutside","event","getPlaceholder","handleTypeChange","jsxs","cn","jsx","InputField","Icon","label","bgColor","textColor","viewBox","Button"],"mappings":"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"}
1
+ {"version":3,"file":"components-input-contact-input-contact.cjs","sources":["../src/constants/contact-input.ts","../src/components/input-contact/input-contact.tsx"],"sourcesContent":["import type { TOption } from \"@/components/input-contact/input-contact\";\n\nexport const OPTIONS: TOption[] = [\n {\n label: \"Мобильный\",\n icon: \"phone\",\n },\n {\n label: \"Telegram\",\n icon: \"telegram\",\n },\n {\n label: \"WhatsApp\",\n icon: \"whats-app\",\n },\n {\n label: \"Max\",\n icon: \"max\",\n },\n {\n label: \"E-mail\",\n icon: \"mail\",\n },\n];\n","import { OPTIONS } from \"@/constants/contact-input\";\nimport { Button, Icon, InputField, cn, usePopupControls, type IconTypes } from \"@/index\";\nimport { useEffect, useRef, useState } from \"react\";\n\nexport type TOption = {\n label: string;\n icon: TypesChange;\n};\n\ntype TypesChange = Extract<\n IconTypes,\n \"telegram\" | \"whats-app\" | \"max\" | \"phone\" | \"mail\"\n>;\n\ntype BaseProps = {\n isValid?: boolean;\n label?: string;\n description?: string;\n classes?: {\n fieldset?: string;\n fieldgroup?: string;\n field?: string;\n container?: string;\n };\n onTypeChange?: (type: TypesChange) => void;\n};\n\ntype InputFieldProps = BaseProps & React.ComponentPropsWithRef<\"input\">;\n\n// TODO: заменить цвета\nconst iconStyles = (icon: IconTypes) => {\n switch (icon) {\n case \"max\":\n return {\n viewBox: \"0 0 16 16\",\n bgColor: \"bg-[linear-gradient(135deg,#9933DD_0%,#2831B9_50%,#44CCFF_100%)]\",\n };\n\n case \"telegram\":\n return {\n viewBox: \"0 0 17 17\",\n bgColor: \"bg-[#289AD2]\",\n };\n\n case \"whats-app\":\n return {\n viewBox: \"0 0 18 18\",\n bgColor: \"bg-[#00C202]\",\n textColor: \"text-[#00C202]\",\n };\n\n default:\n return {\n viewBox: \"0 0 24 24\",\n };\n }\n};\n\nexport const InputContact = (props: InputFieldProps) => {\n const [type, setType] = useState<TypesChange>(\"phone\");\n const { isOpened, openPopup, closePopup } = usePopupControls();\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (wrapperRef.current && !wrapperRef.current.contains(event.target as Node)) {\n closePopup();\n }\n };\n\n if (isOpened) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [isOpened, closePopup]);\n\n const getPlaceholder = (type: TypesChange): string => {\n switch (type) {\n case \"phone\":\n return \"+7 (999) 999-99-99\";\n case \"telegram\":\n return \"@username\";\n case \"whats-app\":\n return \"+7 (999) 999-99-99\";\n case \"max\":\n return \"ID пользователя Max\";\n case \"mail\":\n return \"example@mail.com\";\n default:\n return \"Введите значение\";\n }\n };\n\n const handleTypeChange = (type: TypesChange) => {\n return () => {\n setType(type);\n props.onTypeChange?.(type);\n closePopup();\n };\n };\n\n return (\n <div className={cn(\"relative\", props.classes?.container)}>\n <InputField\n {...props}\n date={[\n {\n id: \"0\",\n position: \"inline-start\",\n component: (\n <Icon\n type={type}\n classes={{\n wrapper: cn(\n `flex h-5.5 w-5.5 items-center justify-center rounded-sm p-[3.5px]\n ${iconStyles(type).bgColor ?? \"bg-primary-inverse-hover-bg\"}\n ${iconStyles(type).textColor ?? \"text-primary-inverse-text\"}`,\n ),\n }}\n viewBox={iconStyles(type).viewBox}\n />\n ),\n },\n {\n id: \"1\",\n position: \"inline-end\",\n component: (\n <Icon\n type={isOpened ? \"chevron-up\" : \"chevron\"}\n className=\"cursor-pointer\"\n onClick={openPopup}\n />\n ),\n },\n ]}\n placeholder={getPlaceholder(type)}\n />\n\n {isOpened && (\n <div\n className=\"border-inp-hover-border bg-primary-bg absolute my-2 flex w-full\n flex-col rounded-xl border\"\n ref={wrapperRef}\n >\n {OPTIONS.map(({ label, icon }) => {\n const { bgColor, textColor, viewBox } = iconStyles(icon);\n\n return (\n <Button\n key={label}\n variant=\"ghost\"\n className=\"flex w-full justify-start\"\n type=\"button\"\n onClick={handleTypeChange(icon)}\n >\n <Icon\n type={icon}\n className=\"text-primary-inverse-text\"\n classes={{\n wrapper: cn(\n `flex h-5.5 w-5.5 items-center justify-center rounded-sm\n ${bgColor ?? \"bg-primary-inverse-hover-bg\"}\n ${textColor ?? \"text-primary-inverse-text\"}`,\n ),\n }}\n viewBox={viewBox}\n />\n\n {label}\n </Button>\n );\n })}\n </div>\n )}\n </div>\n );\n};\n\nexport type { InputFieldProps as InputContactProps, TypesChange };\n"],"names":["OPTIONS","iconStyles","icon","InputContact","props","type","setType","useState","isOpened","openPopup","closePopup","usePopupControls","wrapperRef","useRef","useEffect","handleClickOutside","event","getPlaceholder","handleTypeChange","jsxs","cn","jsx","InputField","Icon","label","bgColor","textColor","viewBox","Button"],"mappings":"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"}
@@ -37,6 +37,7 @@ import "./lodash-FemA_LCk.js";
37
37
  import "./chart-D15EtNmb.js";
38
38
  import "./index-C4iHL8Gs.js";
39
39
  import "./index-C6N9aMq_.js";
40
+ import "./components-input-phone-input-phone.js";
40
41
  const j = [
41
42
  {
42
43
  label: "Мобильный",
@@ -81,7 +82,7 @@ const j = [
81
82
  viewBox: "0 0 24 24"
82
83
  };
83
84
  }
84
- }, ce = (r) => {
85
+ }, ue = (r) => {
85
86
  const [t, u] = b("phone"), { isOpened: n, openPopup: d, closePopup: m } = B(), a = w(null);
86
87
  C(() => {
87
88
  const e = (o) => {
@@ -152,11 +153,11 @@ const j = [
152
153
  n && /* @__PURE__ */ i(
153
154
  "div",
154
155
  {
155
- className: `border-inp-hover-border absolute my-2 flex w-full flex-col rounded-xl
156
- border`,
156
+ className: `border-inp-hover-border bg-primary-bg absolute my-2 flex w-full
157
+ flex-col rounded-xl border`,
157
158
  ref: a,
158
159
  children: j.map(({ label: e, icon: o }) => {
159
- const { bgColor: h, textColor: v, viewBox: g } = p(o);
160
+ const { bgColor: h, textColor: g, viewBox: v } = p(o);
160
161
  return /* @__PURE__ */ c(
161
162
  y,
162
163
  {
@@ -174,10 +175,10 @@ const j = [
174
175
  wrapper: s(
175
176
  `flex h-5.5 w-5.5 items-center justify-center rounded-sm
176
177
  ${h ?? "bg-primary-inverse-hover-bg"}
177
- ${v ?? "text-primary-inverse-text"}`
178
+ ${g ?? "text-primary-inverse-text"}`
178
179
  )
179
180
  },
180
- viewBox: g
181
+ viewBox: v
181
182
  }
182
183
  ),
183
184
  e
@@ -191,6 +192,6 @@ const j = [
191
192
  ] });
192
193
  };
193
194
  export {
194
- ce as ContactInput
195
+ ue as InputContact
195
196
  };
196
- //# sourceMappingURL=components-contact-input-contact-input.js.map
197
+ //# sourceMappingURL=components-input-contact-input-contact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components-input-contact-input-contact.js","sources":["../src/constants/contact-input.ts","../src/components/input-contact/input-contact.tsx"],"sourcesContent":["import type { TOption } from \"@/components/input-contact/input-contact\";\n\nexport const OPTIONS: TOption[] = [\n {\n label: \"Мобильный\",\n icon: \"phone\",\n },\n {\n label: \"Telegram\",\n icon: \"telegram\",\n },\n {\n label: \"WhatsApp\",\n icon: \"whats-app\",\n },\n {\n label: \"Max\",\n icon: \"max\",\n },\n {\n label: \"E-mail\",\n icon: \"mail\",\n },\n];\n","import { OPTIONS } from \"@/constants/contact-input\";\nimport { Button, Icon, InputField, cn, usePopupControls, type IconTypes } from \"@/index\";\nimport { useEffect, useRef, useState } from \"react\";\n\nexport type TOption = {\n label: string;\n icon: TypesChange;\n};\n\ntype TypesChange = Extract<\n IconTypes,\n \"telegram\" | \"whats-app\" | \"max\" | \"phone\" | \"mail\"\n>;\n\ntype BaseProps = {\n isValid?: boolean;\n label?: string;\n description?: string;\n classes?: {\n fieldset?: string;\n fieldgroup?: string;\n field?: string;\n container?: string;\n };\n onTypeChange?: (type: TypesChange) => void;\n};\n\ntype InputFieldProps = BaseProps & React.ComponentPropsWithRef<\"input\">;\n\n// TODO: заменить цвета\nconst iconStyles = (icon: IconTypes) => {\n switch (icon) {\n case \"max\":\n return {\n viewBox: \"0 0 16 16\",\n bgColor: \"bg-[linear-gradient(135deg,#9933DD_0%,#2831B9_50%,#44CCFF_100%)]\",\n };\n\n case \"telegram\":\n return {\n viewBox: \"0 0 17 17\",\n bgColor: \"bg-[#289AD2]\",\n };\n\n case \"whats-app\":\n return {\n viewBox: \"0 0 18 18\",\n bgColor: \"bg-[#00C202]\",\n textColor: \"text-[#00C202]\",\n };\n\n default:\n return {\n viewBox: \"0 0 24 24\",\n };\n }\n};\n\nexport const InputContact = (props: InputFieldProps) => {\n const [type, setType] = useState<TypesChange>(\"phone\");\n const { isOpened, openPopup, closePopup } = usePopupControls();\n const wrapperRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const handleClickOutside = (event: MouseEvent) => {\n if (wrapperRef.current && !wrapperRef.current.contains(event.target as Node)) {\n closePopup();\n }\n };\n\n if (isOpened) {\n document.addEventListener(\"mousedown\", handleClickOutside);\n }\n\n return () => {\n document.removeEventListener(\"mousedown\", handleClickOutside);\n };\n }, [isOpened, closePopup]);\n\n const getPlaceholder = (type: TypesChange): string => {\n switch (type) {\n case \"phone\":\n return \"+7 (999) 999-99-99\";\n case \"telegram\":\n return \"@username\";\n case \"whats-app\":\n return \"+7 (999) 999-99-99\";\n case \"max\":\n return \"ID пользователя Max\";\n case \"mail\":\n return \"example@mail.com\";\n default:\n return \"Введите значение\";\n }\n };\n\n const handleTypeChange = (type: TypesChange) => {\n return () => {\n setType(type);\n props.onTypeChange?.(type);\n closePopup();\n };\n };\n\n return (\n <div className={cn(\"relative\", props.classes?.container)}>\n <InputField\n {...props}\n date={[\n {\n id: \"0\",\n position: \"inline-start\",\n component: (\n <Icon\n type={type}\n classes={{\n wrapper: cn(\n `flex h-5.5 w-5.5 items-center justify-center rounded-sm p-[3.5px]\n ${iconStyles(type).bgColor ?? \"bg-primary-inverse-hover-bg\"}\n ${iconStyles(type).textColor ?? \"text-primary-inverse-text\"}`,\n ),\n }}\n viewBox={iconStyles(type).viewBox}\n />\n ),\n },\n {\n id: \"1\",\n position: \"inline-end\",\n component: (\n <Icon\n type={isOpened ? \"chevron-up\" : \"chevron\"}\n className=\"cursor-pointer\"\n onClick={openPopup}\n />\n ),\n },\n ]}\n placeholder={getPlaceholder(type)}\n />\n\n {isOpened && (\n <div\n className=\"border-inp-hover-border bg-primary-bg absolute my-2 flex w-full\n flex-col rounded-xl border\"\n ref={wrapperRef}\n >\n {OPTIONS.map(({ label, icon }) => {\n const { bgColor, textColor, viewBox } = iconStyles(icon);\n\n return (\n <Button\n key={label}\n variant=\"ghost\"\n className=\"flex w-full justify-start\"\n type=\"button\"\n onClick={handleTypeChange(icon)}\n >\n <Icon\n type={icon}\n className=\"text-primary-inverse-text\"\n classes={{\n wrapper: cn(\n `flex h-5.5 w-5.5 items-center justify-center rounded-sm\n ${bgColor ?? \"bg-primary-inverse-hover-bg\"}\n ${textColor ?? \"text-primary-inverse-text\"}`,\n ),\n }}\n viewBox={viewBox}\n />\n\n {label}\n </Button>\n );\n })}\n </div>\n )}\n </div>\n );\n};\n\nexport type { InputFieldProps as InputContactProps, TypesChange };\n"],"names":["OPTIONS","iconStyles","icon","InputContact","props","type","setType","useState","isOpened","openPopup","closePopup","usePopupControls","wrapperRef","useRef","useEffect","handleClickOutside","event","getPlaceholder","handleTypeChange","jsxs","cn","jsx","InputField","Icon","label","bgColor","textColor","viewBox","Button"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,MAAMA,IAAqB;AAAA,EAChC;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,EAAA;AAAA,EAER;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,EAAA;AAAA,EAER;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,EAAA;AAAA,EAER;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,EAAA;AAAA,EAER;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,EAAA;AAEV,GCOMC,IAAa,CAACC,MAAoB;AACtC,UAAQA,GAAA;AAAA,IACN,KAAK;AACH,aAAO;AAAA,QACL,SAAS;AAAA,QACT,SAAS;AAAA,MAAA;AAAA,IAGb,KAAK;AACH,aAAO;AAAA,QACL,SAAS;AAAA,QACT,SAAS;AAAA,MAAA;AAAA,IAGb,KAAK;AACH,aAAO;AAAA,QACL,SAAS;AAAA,QACT,SAAS;AAAA,QACT,WAAW;AAAA,MAAA;AAAA,IAGf;AACE,aAAO;AAAA,QACL,SAAS;AAAA,MAAA;AAAA,EACX;AAEN,GAEaC,KAAe,CAACC,MAA2B;AACtD,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAsB,OAAO,GAC/C,EAAE,UAAAC,GAAU,WAAAC,GAAW,YAAAC,EAAA,IAAeC,EAAA,GACtCC,IAAaC,EAAuB,IAAI;AAE9C,EAAAC,EAAU,MAAM;AACd,UAAMC,IAAqB,CAACC,MAAsB;AAChD,MAAIJ,EAAW,WAAW,CAACA,EAAW,QAAQ,SAASI,EAAM,MAAc,KACzEN,EAAA;AAAA,IAEJ;AAEA,WAAIF,KACF,SAAS,iBAAiB,aAAaO,CAAkB,GAGpD,MAAM;AACX,eAAS,oBAAoB,aAAaA,CAAkB;AAAA,IAC9D;AAAA,EACF,GAAG,CAACP,GAAUE,CAAU,CAAC;AAEzB,QAAMO,IAAiB,CAACZ,MAA8B;AACpD,YAAQA,GAAAA;AAAAA,MACN,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT;AACE,eAAO;AAAA,IAAA;AAAA,EAEb,GAEMa,IAAmB,CAACb,MACjB,MAAM;AACX,IAAAC,EAAQD,CAAI,GACZD,EAAM,eAAeC,CAAI,GACzBK,EAAA;AAAA,EACF;AAGF,SACE,gBAAAS,EAAC,SAAI,WAAWC,EAAG,YAAYhB,EAAM,SAAS,SAAS,GACrD,UAAA;AAAA,IAAA,gBAAAiB;AAAA,MAACC;AAAA,MAAA;AAAA,QACE,GAAGlB;AAAA,QACJ,MAAM;AAAA,UACJ;AAAA,YACE,IAAI;AAAA,YACJ,UAAU;AAAA,YACV,WACE,gBAAAiB;AAAA,cAACE;AAAA,cAAA;AAAA,gBACC,MAAAlB;AAAA,gBACA,SAAS;AAAA,kBACP,SAASe;AAAA,oBACP;AAAA,sBACEnB,EAAWI,CAAI,EAAE,WAAW,6BAA6B;AAAA,sBACzDJ,EAAWI,CAAI,EAAE,aAAa,2BAA2B;AAAA,kBAAA;AAAA,gBAC7D;AAAA,gBAEF,SAASJ,EAAWI,CAAI,EAAE;AAAA,cAAA;AAAA,YAAA;AAAA,UAC5B;AAAA,UAGJ;AAAA,YACE,IAAI;AAAA,YACJ,UAAU;AAAA,YACV,WACE,gBAAAgB;AAAA,cAACE;AAAA,cAAA;AAAA,gBACC,MAAMf,IAAW,eAAe;AAAA,gBAChC,WAAU;AAAA,gBACV,SAASC;AAAA,cAAA;AAAA,YAAA;AAAA,UACX;AAAA,QAEJ;AAAA,QAEF,aAAaQ,EAAeZ,CAAI;AAAA,MAAA;AAAA,IAAA;AAAA,IAGjCG,KACC,gBAAAa;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA;AAAA,QAEV,KAAKT;AAAA,QAEJ,YAAQ,IAAI,CAAC,EAAE,OAAAY,GAAO,MAAAtB,QAAW;AAChC,gBAAM,EAAE,SAAAuB,GAAS,WAAAC,GAAW,SAAAC,EAAA,IAAY1B,EAAWC,CAAI;AAEvD,iBACE,gBAAAiB;AAAA,YAACS;AAAA,YAAA;AAAA,cAEC,SAAQ;AAAA,cACR,WAAU;AAAA,cACV,MAAK;AAAA,cACL,SAASV,EAAiBhB,CAAI;AAAA,cAE9B,UAAA;AAAA,gBAAA,gBAAAmB;AAAA,kBAACE;AAAA,kBAAA;AAAA,oBACC,MAAMrB;AAAA,oBACN,WAAU;AAAA,oBACV,SAAS;AAAA,sBACP,SAASkB;AAAA,wBACP;AAAA,wBACEK,KAAW,6BAA6B;AAAA,wBACxCC,KAAa,2BAA2B;AAAA,sBAAA;AAAA,oBAC5C;AAAA,oBAEF,SAAAC;AAAA,kBAAA;AAAA,gBAAA;AAAA,gBAGDH;AAAA,cAAA;AAAA,YAAA;AAAA,YAnBIA;AAAA,UAAA;AAAA,QAsBX,CAAC;AAAA,MAAA;AAAA,IAAA;AAAA,EACH,GAEJ;AAEJ;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./components-input-contact-input-contact.cjs");exports.InputContact=t.InputContact;
2
+ //# sourceMappingURL=components-input-contact.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components-input-contact.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { InputContact as n } from "./components-input-contact-input-contact.js";
2
+ export {
3
+ n as InputContact
4
+ };
5
+ //# sourceMappingURL=components-input-contact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components-input-contact.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const r=require("react/jsx-runtime");;/* empty css */require("./lib-utils.cjs");require("class-variance-authority");require("react");require("./components-ui-badge-badge.styles.cjs");require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");require("./components-ui-card-card.cjs");require("./components-ui-checkbox-checkbox.cjs");const q=require("./components-ui-icon-icon.cjs");require("./components-ui-combobox-combobox.cjs");require("./components-ui-dialog-dialog.cjs");require("./components-ui-label-label.cjs");require("./components-ui-separator-separator.cjs");require("./components-ui-field-field.styles.cjs");require("./components-ui-input-input.styles.cjs");require("./components-ui-textarea-textarea.cjs");require("./components-ui-input-group-input-group.styles.cjs");require("./components-ui-navigation-item-navigation-item.styles.cjs");require("./components-ui-navigation-menu-navigation-menu.styles.cjs");require("./components-ui-pagination-pagination.cjs");require("./components-ui-progress-progress.cjs");require("./components-ui-radio-group-radio-group.cjs");require("./components-ui-switch-switch.cjs");require("./components-ui-table-table.cjs");require("./components-ui-tabs-tabs.cjs");require("./components-ui-tooltip-tooltip.cjs");require("./components-ui-typography-typography.styles.cjs");const o=require("./hooks-usePopupControls.cjs");require("lucide-react");require("./components-app-pagination-app-pagination.styles.cjs");require("./components-app-sidebar-app-sidebar.styles.cjs");const n=require("./components-input-field-input-field.cjs");require("./components-select-field-select-field.cjs");require("./lodash-kqhtUJfz.cjs");require("./chart-CgVfpT_X.cjs");require("./index-DGxwh2Ms.cjs");require("./index-fTTv8YY8.cjs");const t=({...i})=>{const{isOpened:e,togglePopup:u}=o.usePopupControls();return r.jsx(n.InputField,{...i,type:e?"text":"password",date:[{id:"0",position:"inline-end",component:r.jsx(q.Icon,{type:e?"eye-off":"eye",onClick:u,className:"cursor-pointer"})}]})};exports.InputPassword=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./brd-ui-kit.css');const r=require("react/jsx-runtime");;/* empty css */require("./lib-utils.cjs");require("class-variance-authority");require("react");require("./components-ui-badge-badge.styles.cjs");require("./components-ui-button-button.cjs");require("./components-ui-button-button.styles.cjs");require("./components-ui-card-card.cjs");require("./components-ui-checkbox-checkbox.cjs");const q=require("./components-ui-icon-icon.cjs");require("./components-ui-combobox-combobox.cjs");require("./components-ui-dialog-dialog.cjs");require("./components-ui-label-label.cjs");require("./components-ui-separator-separator.cjs");require("./components-ui-field-field.styles.cjs");require("./components-ui-input-input.styles.cjs");require("./components-ui-textarea-textarea.cjs");require("./components-ui-input-group-input-group.styles.cjs");require("./components-ui-navigation-item-navigation-item.styles.cjs");require("./components-ui-navigation-menu-navigation-menu.styles.cjs");require("./components-ui-pagination-pagination.cjs");require("./components-ui-progress-progress.cjs");require("./components-ui-radio-group-radio-group.cjs");require("./components-ui-switch-switch.cjs");require("./components-ui-table-table.cjs");require("./components-ui-tabs-tabs.cjs");require("./components-ui-tooltip-tooltip.cjs");require("./components-ui-typography-typography.styles.cjs");const o=require("./hooks-usePopupControls.cjs");require("lucide-react");require("./components-app-pagination-app-pagination.styles.cjs");require("./components-app-sidebar-app-sidebar.styles.cjs");const n=require("./components-input-field-input-field.cjs");require("./components-select-field-select-field.cjs");require("./lodash-kqhtUJfz.cjs");require("./chart-CgVfpT_X.cjs");require("./index-DGxwh2Ms.cjs");require("./index-fTTv8YY8.cjs");require("./components-input-phone-input-phone.cjs");const t=({...i})=>{const{isOpened:e,togglePopup:u}=o.usePopupControls();return r.jsx(n.InputField,{...i,type:e?"text":"password",date:[{id:"0",position:"inline-end",component:r.jsx(q.Icon,{type:e?"eye-off":"eye",onClick:u,className:"cursor-pointer"})}]})};exports.InputPassword=t;
2
2
  //# sourceMappingURL=components-input-password-input-password.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"components-input-password-input-password.cjs","sources":["../src/components/input-password/input-password.tsx"],"sourcesContent":["import { Icon, InputField, usePopupControls, type InputProps } from \"@/index\";\n\ntype InputPasswordProps = InputProps;\n\nexport const InputPassword: React.FC<InputPasswordProps> = ({ ...rest }) => {\n const { isOpened, togglePopup } = usePopupControls();\n\n return (\n <InputField\n {...rest}\n type={isOpened ? \"text\" : \"password\"}\n date={[\n {\n id: \"0\",\n position: \"inline-end\",\n component: (\n <Icon\n type={isOpened ? \"eye-off\" : \"eye\"}\n onClick={togglePopup}\n className=\"cursor-pointer\"\n />\n ),\n },\n ]}\n />\n );\n};\n\nexport type { InputPasswordProps };\n"],"names":["InputPassword","rest","isOpened","togglePopup","usePopupControls","jsx","InputField","Icon"],"mappings":"g2DAIO,MAAMA,EAA8C,CAAC,CAAE,GAAGC,KAAW,CAC1E,KAAM,CAAE,SAAAC,EAAU,YAAAC,CAAA,EAAgBC,mBAAA,EAElC,OACEC,EAAAA,IAACC,EAAAA,WAAA,CACE,GAAGL,EACJ,KAAMC,EAAW,OAAS,WAC1B,KAAM,CACJ,CACE,GAAI,IACJ,SAAU,aACV,UACEG,EAAAA,IAACE,EAAAA,KAAA,CACC,KAAML,EAAW,UAAY,MAC7B,QAASC,EACT,UAAU,gBAAA,CAAA,CACZ,CAEJ,CACF,CAAA,CAGN"}
1
+ {"version":3,"file":"components-input-password-input-password.cjs","sources":["../src/components/input-password/input-password.tsx"],"sourcesContent":["import { Icon, InputField, usePopupControls, type InputProps } from \"@/index\";\n\ntype InputPasswordProps = InputProps;\n\nexport const InputPassword: React.FC<InputPasswordProps> = ({ ...rest }) => {\n const { isOpened, togglePopup } = usePopupControls();\n\n return (\n <InputField\n {...rest}\n type={isOpened ? \"text\" : \"password\"}\n date={[\n {\n id: \"0\",\n position: \"inline-end\",\n component: (\n <Icon\n type={isOpened ? \"eye-off\" : \"eye\"}\n onClick={togglePopup}\n className=\"cursor-pointer\"\n />\n ),\n },\n ]}\n />\n );\n};\n\nexport type { InputPasswordProps };\n"],"names":["InputPassword","rest","isOpened","togglePopup","usePopupControls","jsx","InputField","Icon"],"mappings":"o5DAIO,MAAMA,EAA8C,CAAC,CAAE,GAAGC,KAAW,CAC1E,KAAM,CAAE,SAAAC,EAAU,YAAAC,CAAA,EAAgBC,mBAAA,EAElC,OACEC,EAAAA,IAACC,EAAAA,WAAA,CACE,GAAGL,EACJ,KAAMC,EAAW,OAAS,WAC1B,KAAM,CACJ,CACE,GAAI,IACJ,SAAU,aACV,UACEG,EAAAA,IAACE,EAAAA,KAAA,CACC,KAAML,EAAW,UAAY,MAC7B,QAASC,EACT,UAAU,gBAAA,CAAA,CACZ,CAEJ,CACF,CAAA,CAGN"}
@@ -37,7 +37,8 @@ import "./lodash-FemA_LCk.js";
37
37
  import "./chart-D15EtNmb.js";
38
38
  import "./index-C4iHL8Gs.js";
39
39
  import "./index-C6N9aMq_.js";
40
- const U = ({ ...p }) => {
40
+ import "./components-input-phone-input-phone.js";
41
+ const V = ({ ...p }) => {
41
42
  const { isOpened: o, togglePopup: r } = m();
42
43
  return /* @__PURE__ */ t(
43
44
  e,
@@ -62,6 +63,6 @@ const U = ({ ...p }) => {
62
63
  );
63
64
  };
64
65
  export {
65
- U as InputPassword
66
+ V as InputPassword
66
67
  };
67
68
  //# sourceMappingURL=components-input-password-input-password.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components-input-password-input-password.js","sources":["../src/components/input-password/input-password.tsx"],"sourcesContent":["import { Icon, InputField, usePopupControls, type InputProps } from \"@/index\";\n\ntype InputPasswordProps = InputProps;\n\nexport const InputPassword: React.FC<InputPasswordProps> = ({ ...rest }) => {\n const { isOpened, togglePopup } = usePopupControls();\n\n return (\n <InputField\n {...rest}\n type={isOpened ? \"text\" : \"password\"}\n date={[\n {\n id: \"0\",\n position: \"inline-end\",\n component: (\n <Icon\n type={isOpened ? \"eye-off\" : \"eye\"}\n onClick={togglePopup}\n className=\"cursor-pointer\"\n />\n ),\n },\n ]}\n />\n );\n};\n\nexport type { InputPasswordProps };\n"],"names":["InputPassword","rest","isOpened","togglePopup","usePopupControls","jsx","InputField","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,MAAMA,IAA8C,CAAC,EAAE,GAAGC,QAAW;AAC1E,QAAM,EAAE,UAAAC,GAAU,aAAAC,EAAA,IAAgBC,EAAA;AAElC,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGL;AAAA,MACJ,MAAMC,IAAW,SAAS;AAAA,MAC1B,MAAM;AAAA,QACJ;AAAA,UACE,IAAI;AAAA,UACJ,UAAU;AAAA,UACV,WACE,gBAAAG;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,MAAML,IAAW,YAAY;AAAA,cAC7B,SAASC;AAAA,cACT,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ;AAAA,MAEJ;AAAA,IACF;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"components-input-password-input-password.js","sources":["../src/components/input-password/input-password.tsx"],"sourcesContent":["import { Icon, InputField, usePopupControls, type InputProps } from \"@/index\";\n\ntype InputPasswordProps = InputProps;\n\nexport const InputPassword: React.FC<InputPasswordProps> = ({ ...rest }) => {\n const { isOpened, togglePopup } = usePopupControls();\n\n return (\n <InputField\n {...rest}\n type={isOpened ? \"text\" : \"password\"}\n date={[\n {\n id: \"0\",\n position: \"inline-end\",\n component: (\n <Icon\n type={isOpened ? \"eye-off\" : \"eye\"}\n onClick={togglePopup}\n className=\"cursor-pointer\"\n />\n ),\n },\n ]}\n />\n );\n};\n\nexport type { InputPasswordProps };\n"],"names":["InputPassword","rest","isOpened","togglePopup","usePopupControls","jsx","InputField","Icon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,MAAMA,IAA8C,CAAC,EAAE,GAAGC,QAAW;AAC1E,QAAM,EAAE,UAAAC,GAAU,aAAAC,EAAA,IAAgBC,EAAA;AAElC,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGL;AAAA,MACJ,MAAMC,IAAW,SAAS;AAAA,MAC1B,MAAM;AAAA,QACJ;AAAA,UACE,IAAI;AAAA,UACJ,UAAU;AAAA,UACV,WACE,gBAAAG;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,MAAML,IAAW,YAAY;AAAA,cAC7B,SAASC;AAAA,cACT,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ;AAAA,MAEJ;AAAA,IACF;AAAA,EAAA;AAGN;"}