brd-ui-kit 0.1.76 → 0.1.77
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/calendar-PqChui7l.cjs +2 -0
- package/dist/{calendar-B5QCV34E.cjs.map → calendar-PqChui7l.cjs.map} +1 -1
- package/dist/{calendar-Ba3kHG6w.js → calendar-XWqEaWHP.js} +4 -3
- package/dist/{calendar-Ba3kHG6w.js.map → calendar-XWqEaWHP.js.map} +1 -1
- package/dist/{calendar-locale-BHyNJPb2.cjs → calendar-locale-CosU_VZY.cjs} +2 -2
- package/dist/{calendar-locale-BHyNJPb2.cjs.map → calendar-locale-CosU_VZY.cjs.map} +1 -1
- package/dist/{calendar-locale-DQ9wj0zF.js → calendar-locale-DqQZymBn.js} +2 -2
- package/dist/{calendar-locale-DQ9wj0zF.js.map → calendar-locale-DqQZymBn.js.map} +1 -1
- package/dist/components/app-sidebar/app-sidebar.d.ts +2 -2
- package/dist/components/data-table/data-table-row-actions-column.d.ts +2 -2
- package/dist/components/files-uploader/files-uploader.d.ts +2 -2
- package/dist/components/icons/ArrowCounterClockwise.d.ts +1 -0
- package/dist/components/icons/BoundingBox.d.ts +1 -0
- package/dist/components/icons/Briefcase.d.ts +1 -0
- package/dist/components/icons/Building.d.ts +1 -0
- package/dist/components/icons/Buildings.d.ts +1 -0
- package/dist/components/icons/CaretDown.d.ts +1 -0
- package/dist/components/icons/CaretLeft.d.ts +1 -0
- package/dist/components/icons/CaretRight.d.ts +1 -0
- package/dist/components/icons/CaretUp.d.ts +1 -0
- package/dist/components/icons/CaretUpDown.d.ts +1 -0
- package/dist/components/icons/ChartLine.d.ts +1 -0
- package/dist/components/icons/Check.d.ts +1 -0
- package/dist/components/icons/CheckCircle.d.ts +1 -0
- package/dist/components/icons/Clock.d.ts +1 -0
- package/dist/components/icons/CreditCard.d.ts +1 -0
- package/dist/components/icons/DotsThree.d.ts +1 -0
- package/dist/components/icons/DownloadSimple.d.ts +1 -0
- package/dist/components/icons/EnvelopeSimple.d.ts +1 -0
- package/dist/components/icons/Eye.d.ts +1 -0
- package/dist/components/icons/EyeSlash.d.ts +1 -0
- package/dist/components/icons/FileText.d.ts +1 -0
- package/dist/components/icons/Folder.d.ts +1 -0
- package/dist/components/icons/Funnel.d.ts +1 -0
- package/dist/components/icons/Gear.d.ts +1 -0
- package/dist/components/icons/Info.d.ts +1 -0
- package/dist/components/icons/LockKey.d.ts +1 -0
- package/dist/components/icons/MagnifyingGlass.d.ts +1 -0
- package/dist/components/icons/MaxLogo.d.ts +1 -0
- package/dist/components/icons/Package.d.ts +1 -0
- package/dist/components/icons/Pencil.d.ts +1 -0
- package/dist/components/icons/Phone.d.ts +1 -0
- package/dist/components/icons/Plus.d.ts +1 -0
- package/dist/components/icons/PresentationChart.d.ts +1 -0
- package/dist/components/icons/SpinnerGap.d.ts +1 -0
- package/dist/components/icons/TelegramLogo.d.ts +1 -0
- package/dist/components/icons/Trash.d.ts +1 -0
- package/dist/components/icons/UserCircleGear.d.ts +1 -0
- package/dist/components/icons/Users.d.ts +1 -0
- package/dist/components/icons/UsersFour.d.ts +1 -0
- package/dist/components/icons/Warning.d.ts +1 -0
- package/dist/components/icons/WarningCircle.d.ts +1 -0
- package/dist/components/icons/WhatsAppLogoFilled.d.ts +1 -0
- package/dist/components/icons/Wrench.d.ts +1 -0
- package/dist/components/icons/X.d.ts +1 -0
- package/dist/components/icons/XCircle.d.ts +1 -0
- package/dist/components/icons/index.d.ts +50 -0
- package/dist/components/icons/stroke-icon.d.ts +19 -0
- package/dist/components/icons.d.ts +2 -0
- package/dist/components/input-password/input-password.d.ts +1 -1
- package/dist/components/ui/dropdown-menu/dropdown-menu.d.ts +2 -2
- package/dist/components/ui/icon/icon-map.d.ts +68 -0
- package/dist/components/ui/icon/icon.d.ts +6 -6
- package/dist/components/ui/icon/index.d.ts +3 -1
- package/dist/components/ui/toggle-group/toggle-group.styles.d.ts +1 -1
- package/dist/components-app-pagination-app-pagination.cjs +1 -1
- package/dist/components-app-pagination-app-pagination.cjs.map +1 -1
- package/dist/components-app-pagination-app-pagination.js +34 -32
- package/dist/components-app-pagination-app-pagination.js.map +1 -1
- package/dist/components-app-sidebar-app-sidebar.cjs +1 -1
- package/dist/components-app-sidebar-app-sidebar.cjs.map +1 -1
- package/dist/components-app-sidebar-app-sidebar.js +33 -32
- package/dist/components-app-sidebar-app-sidebar.js.map +1 -1
- package/dist/components-avatar-uploader-avatar-uploader.cjs +2 -2
- package/dist/components-avatar-uploader-avatar-uploader.cjs.map +1 -1
- package/dist/components-avatar-uploader-avatar-uploader.js +23 -4
- package/dist/components-avatar-uploader-avatar-uploader.js.map +1 -1
- package/dist/components-basic-avatar-basic-avatar.cjs +2 -2
- package/dist/components-basic-avatar-basic-avatar.cjs.map +1 -1
- package/dist/components-basic-avatar-basic-avatar.js +24 -4
- package/dist/components-basic-avatar-basic-avatar.js.map +1 -1
- package/dist/components-data-table-data-table-actions-column.cjs +1 -1
- package/dist/components-data-table-data-table-actions-column.cjs.map +1 -1
- package/dist/components-data-table-data-table-actions-column.js +6 -5
- package/dist/components-data-table-data-table-actions-column.js.map +1 -1
- package/dist/components-data-table-data-table-column-visibility.cjs +1 -1
- package/dist/components-data-table-data-table-column-visibility.cjs.map +1 -1
- package/dist/components-data-table-data-table-column-visibility.js +10 -9
- package/dist/components-data-table-data-table-column-visibility.js.map +1 -1
- package/dist/components-data-table-data-table-row-actions-column.cjs +1 -1
- package/dist/components-data-table-data-table-row-actions-column.cjs.map +1 -1
- package/dist/components-data-table-data-table-row-actions-column.js +20 -19
- package/dist/components-data-table-data-table-row-actions-column.js.map +1 -1
- package/dist/components-files-uploader-files-uploader.cjs +3 -3
- package/dist/components-files-uploader-files-uploader.cjs.map +1 -1
- package/dist/components-files-uploader-files-uploader.js +41 -38
- package/dist/components-files-uploader-files-uploader.js.map +1 -1
- package/dist/components-icons-ArrowCounterClockwise.cjs +2 -0
- package/dist/components-icons-ArrowCounterClockwise.cjs.map +1 -0
- package/dist/components-icons-ArrowCounterClockwise.js +5 -0
- package/dist/components-icons-ArrowCounterClockwise.js.map +1 -0
- package/dist/components-icons-BoundingBox.cjs +2 -0
- package/dist/components-icons-BoundingBox.cjs.map +1 -0
- package/dist/components-icons-BoundingBox.js +5 -0
- package/dist/components-icons-BoundingBox.js.map +1 -0
- package/dist/components-icons-Briefcase.cjs +2 -0
- package/dist/components-icons-Briefcase.cjs.map +1 -0
- package/dist/components-icons-Briefcase.js +5 -0
- package/dist/components-icons-Briefcase.js.map +1 -0
- package/dist/components-icons-Building.cjs +2 -0
- package/dist/components-icons-Building.cjs.map +1 -0
- package/dist/components-icons-Building.js +5 -0
- package/dist/components-icons-Building.js.map +1 -0
- package/dist/components-icons-Buildings.cjs +2 -0
- package/dist/components-icons-Buildings.cjs.map +1 -0
- package/dist/components-icons-Buildings.js +5 -0
- package/dist/components-icons-Buildings.js.map +1 -0
- package/dist/components-icons-CaretDown.cjs +2 -0
- package/dist/components-icons-CaretDown.cjs.map +1 -0
- package/dist/components-icons-CaretDown.js +5 -0
- package/dist/components-icons-CaretDown.js.map +1 -0
- package/dist/components-icons-CaretLeft.cjs +2 -0
- package/dist/components-icons-CaretLeft.cjs.map +1 -0
- package/dist/components-icons-CaretLeft.js +5 -0
- package/dist/components-icons-CaretLeft.js.map +1 -0
- package/dist/components-icons-CaretRight.cjs +2 -0
- package/dist/components-icons-CaretRight.cjs.map +1 -0
- package/dist/components-icons-CaretRight.js +5 -0
- package/dist/components-icons-CaretRight.js.map +1 -0
- package/dist/components-icons-CaretUp.cjs +2 -0
- package/dist/components-icons-CaretUp.cjs.map +1 -0
- package/dist/components-icons-CaretUp.js +5 -0
- package/dist/components-icons-CaretUp.js.map +1 -0
- package/dist/components-icons-CaretUpDown.cjs +2 -0
- package/dist/components-icons-CaretUpDown.cjs.map +1 -0
- package/dist/components-icons-CaretUpDown.js +5 -0
- package/dist/components-icons-CaretUpDown.js.map +1 -0
- package/dist/components-icons-ChartLine.cjs +2 -0
- package/dist/components-icons-ChartLine.cjs.map +1 -0
- package/dist/components-icons-ChartLine.js +5 -0
- package/dist/components-icons-ChartLine.js.map +1 -0
- package/dist/components-icons-Check.cjs +2 -0
- package/dist/components-icons-Check.cjs.map +1 -0
- package/dist/components-icons-Check.js +5 -0
- package/dist/components-icons-Check.js.map +1 -0
- package/dist/components-icons-CheckCircle.cjs +2 -0
- package/dist/components-icons-CheckCircle.cjs.map +1 -0
- package/dist/components-icons-CheckCircle.js +5 -0
- package/dist/components-icons-CheckCircle.js.map +1 -0
- package/dist/components-icons-Clock.cjs +2 -0
- package/dist/components-icons-Clock.cjs.map +1 -0
- package/dist/components-icons-Clock.js +5 -0
- package/dist/components-icons-Clock.js.map +1 -0
- package/dist/components-icons-CreditCard.cjs +2 -0
- package/dist/components-icons-CreditCard.cjs.map +1 -0
- package/dist/components-icons-CreditCard.js +5 -0
- package/dist/components-icons-CreditCard.js.map +1 -0
- package/dist/components-icons-DotsThree.cjs +2 -0
- package/dist/components-icons-DotsThree.cjs.map +1 -0
- package/dist/components-icons-DotsThree.js +5 -0
- package/dist/components-icons-DotsThree.js.map +1 -0
- package/dist/components-icons-DownloadSimple.cjs +2 -0
- package/dist/components-icons-DownloadSimple.cjs.map +1 -0
- package/dist/components-icons-DownloadSimple.js +5 -0
- package/dist/components-icons-DownloadSimple.js.map +1 -0
- package/dist/components-icons-EnvelopeSimple.cjs +2 -0
- package/dist/components-icons-EnvelopeSimple.cjs.map +1 -0
- package/dist/components-icons-EnvelopeSimple.js +5 -0
- package/dist/components-icons-EnvelopeSimple.js.map +1 -0
- package/dist/components-icons-Eye.cjs +2 -0
- package/dist/components-icons-Eye.cjs.map +1 -0
- package/dist/components-icons-Eye.js +5 -0
- package/dist/components-icons-Eye.js.map +1 -0
- package/dist/components-icons-EyeSlash.cjs +2 -0
- package/dist/components-icons-EyeSlash.cjs.map +1 -0
- package/dist/components-icons-EyeSlash.js +5 -0
- package/dist/components-icons-EyeSlash.js.map +1 -0
- package/dist/components-icons-FileText.cjs +2 -0
- package/dist/components-icons-FileText.cjs.map +1 -0
- package/dist/components-icons-FileText.js +5 -0
- package/dist/components-icons-FileText.js.map +1 -0
- package/dist/components-icons-Folder.cjs +2 -0
- package/dist/components-icons-Folder.cjs.map +1 -0
- package/dist/components-icons-Folder.js +5 -0
- package/dist/components-icons-Folder.js.map +1 -0
- package/dist/components-icons-Funnel.cjs +2 -0
- package/dist/components-icons-Funnel.cjs.map +1 -0
- package/dist/components-icons-Funnel.js +5 -0
- package/dist/components-icons-Funnel.js.map +1 -0
- package/dist/components-icons-Gear.cjs +2 -0
- package/dist/components-icons-Gear.cjs.map +1 -0
- package/dist/components-icons-Gear.js +5 -0
- package/dist/components-icons-Gear.js.map +1 -0
- package/dist/components-icons-Info.cjs +2 -0
- package/dist/components-icons-Info.cjs.map +1 -0
- package/dist/components-icons-Info.js +5 -0
- package/dist/components-icons-Info.js.map +1 -0
- package/dist/components-icons-LockKey.cjs +2 -0
- package/dist/components-icons-LockKey.cjs.map +1 -0
- package/dist/components-icons-LockKey.js +5 -0
- package/dist/components-icons-LockKey.js.map +1 -0
- package/dist/components-icons-MagnifyingGlass.cjs +2 -0
- package/dist/components-icons-MagnifyingGlass.cjs.map +1 -0
- package/dist/components-icons-MagnifyingGlass.js +5 -0
- package/dist/components-icons-MagnifyingGlass.js.map +1 -0
- package/dist/components-icons-MaxLogo.cjs +2 -0
- package/dist/components-icons-MaxLogo.cjs.map +1 -0
- package/dist/components-icons-MaxLogo.js +5 -0
- package/dist/components-icons-MaxLogo.js.map +1 -0
- package/dist/components-icons-Package.cjs +2 -0
- package/dist/components-icons-Package.cjs.map +1 -0
- package/dist/components-icons-Package.js +5 -0
- package/dist/components-icons-Package.js.map +1 -0
- package/dist/components-icons-Pencil.cjs +2 -0
- package/dist/components-icons-Pencil.cjs.map +1 -0
- package/dist/components-icons-Pencil.js +5 -0
- package/dist/components-icons-Pencil.js.map +1 -0
- package/dist/components-icons-Phone.cjs +2 -0
- package/dist/components-icons-Phone.cjs.map +1 -0
- package/dist/components-icons-Phone.js +5 -0
- package/dist/components-icons-Phone.js.map +1 -0
- package/dist/components-icons-Plus.cjs +2 -0
- package/dist/components-icons-Plus.cjs.map +1 -0
- package/dist/components-icons-Plus.js +5 -0
- package/dist/components-icons-Plus.js.map +1 -0
- package/dist/components-icons-PresentationChart.cjs +2 -0
- package/dist/components-icons-PresentationChart.cjs.map +1 -0
- package/dist/components-icons-PresentationChart.js +5 -0
- package/dist/components-icons-PresentationChart.js.map +1 -0
- package/dist/components-icons-SpinnerGap.cjs +2 -0
- package/dist/components-icons-SpinnerGap.cjs.map +1 -0
- package/dist/components-icons-SpinnerGap.js +5 -0
- package/dist/components-icons-SpinnerGap.js.map +1 -0
- package/dist/components-icons-TelegramLogo.cjs +2 -0
- package/dist/components-icons-TelegramLogo.cjs.map +1 -0
- package/dist/components-icons-TelegramLogo.js +5 -0
- package/dist/components-icons-TelegramLogo.js.map +1 -0
- package/dist/components-icons-Trash.cjs +2 -0
- package/dist/components-icons-Trash.cjs.map +1 -0
- package/dist/components-icons-Trash.js +5 -0
- package/dist/components-icons-Trash.js.map +1 -0
- package/dist/components-icons-UserCircleGear.cjs +2 -0
- package/dist/components-icons-UserCircleGear.cjs.map +1 -0
- package/dist/components-icons-UserCircleGear.js +5 -0
- package/dist/components-icons-UserCircleGear.js.map +1 -0
- package/dist/components-icons-Users.cjs +2 -0
- package/dist/components-icons-Users.cjs.map +1 -0
- package/dist/components-icons-Users.js +5 -0
- package/dist/components-icons-Users.js.map +1 -0
- package/dist/components-icons-UsersFour.cjs +2 -0
- package/dist/components-icons-UsersFour.cjs.map +1 -0
- package/dist/components-icons-UsersFour.js +5 -0
- package/dist/components-icons-UsersFour.js.map +1 -0
- package/dist/components-icons-Warning.cjs +2 -0
- package/dist/components-icons-Warning.cjs.map +1 -0
- package/dist/components-icons-Warning.js +5 -0
- package/dist/components-icons-Warning.js.map +1 -0
- package/dist/components-icons-WarningCircle.cjs +2 -0
- package/dist/components-icons-WarningCircle.cjs.map +1 -0
- package/dist/components-icons-WarningCircle.js +5 -0
- package/dist/components-icons-WarningCircle.js.map +1 -0
- package/dist/components-icons-WhatsAppLogoFilled.cjs +2 -0
- package/dist/components-icons-WhatsAppLogoFilled.cjs.map +1 -0
- package/dist/components-icons-WhatsAppLogoFilled.js +5 -0
- package/dist/components-icons-WhatsAppLogoFilled.js.map +1 -0
- package/dist/components-icons-Wrench.cjs +2 -0
- package/dist/components-icons-Wrench.cjs.map +1 -0
- package/dist/components-icons-Wrench.js +5 -0
- package/dist/components-icons-Wrench.js.map +1 -0
- package/dist/components-icons-X.cjs +2 -0
- package/dist/components-icons-X.cjs.map +1 -0
- package/dist/components-icons-X.js +5 -0
- package/dist/components-icons-X.js.map +1 -0
- package/dist/components-icons-XCircle.cjs +2 -0
- package/dist/components-icons-XCircle.cjs.map +1 -0
- package/dist/components-icons-XCircle.js +5 -0
- package/dist/components-icons-XCircle.js.map +1 -0
- package/dist/components-icons-stroke-icon.cjs +2 -0
- package/dist/components-icons-stroke-icon.cjs.map +1 -0
- package/dist/components-icons-stroke-icon.js +39 -0
- package/dist/components-icons-stroke-icon.js.map +1 -0
- package/dist/components-icons.cjs +2 -0
- package/dist/components-icons.cjs.map +1 -0
- package/dist/components-icons.js +97 -0
- package/dist/components-icons.js.map +1 -0
- package/dist/components-input-contact-input-contact.cjs +4 -4
- package/dist/components-input-contact-input-contact.cjs.map +1 -1
- package/dist/components-input-contact-input-contact.js +103 -74
- package/dist/components-input-contact-input-contact.js.map +1 -1
- package/dist/components-input-password-input-password.cjs +1 -1
- package/dist/components-input-password-input-password.cjs.map +1 -1
- package/dist/components-input-password-input-password.js +14 -52
- package/dist/components-input-password-input-password.js.map +1 -1
- package/dist/components-ui-calendar-calendar.cjs +1 -1
- package/dist/components-ui-calendar-calendar.js +4 -3
- package/dist/components-ui-calendar-calendar.js.map +1 -1
- package/dist/components-ui-calendar.cjs +1 -1
- package/dist/components-ui-calendar.js +2 -2
- package/dist/components-ui-checkbox-checkbox.cjs +1 -1
- package/dist/components-ui-checkbox-checkbox.cjs.map +1 -1
- package/dist/components-ui-checkbox-checkbox.js +15 -14
- package/dist/components-ui-checkbox-checkbox.js.map +1 -1
- package/dist/components-ui-combobox-combobox.cjs +1 -1
- package/dist/components-ui-combobox-combobox.cjs.map +1 -1
- package/dist/components-ui-combobox-combobox.js +31 -30
- package/dist/components-ui-combobox-combobox.js.map +1 -1
- package/dist/components-ui-dialog-dialog.cjs +1 -1
- package/dist/components-ui-dialog-dialog.cjs.map +1 -1
- package/dist/components-ui-dialog-dialog.js +26 -25
- package/dist/components-ui-dialog-dialog.js.map +1 -1
- package/dist/components-ui-dropdown-menu-dropdown-menu.cjs +2 -2
- package/dist/components-ui-dropdown-menu-dropdown-menu.cjs.map +1 -1
- package/dist/components-ui-dropdown-menu-dropdown-menu.js +46 -45
- package/dist/components-ui-dropdown-menu-dropdown-menu.js.map +1 -1
- package/dist/components-ui-icon-icon-map.cjs +2 -0
- package/dist/components-ui-icon-icon-map.cjs.map +1 -0
- package/dist/components-ui-icon-icon-map.js +71 -0
- package/dist/components-ui-icon-icon-map.js.map +1 -0
- package/dist/components-ui-icon-icon.cjs +1 -1
- package/dist/components-ui-icon-icon.cjs.map +1 -1
- package/dist/components-ui-icon-icon.js +27 -54
- package/dist/components-ui-icon-icon.js.map +1 -1
- package/dist/components-ui-icon.cjs +1 -1
- package/dist/components-ui-icon.js +3 -1
- package/dist/components-ui-icon.js.map +1 -1
- package/dist/components-ui-pagination-pagination.cjs +2 -2
- package/dist/components-ui-pagination-pagination.cjs.map +1 -1
- package/dist/components-ui-pagination-pagination.js +48 -45
- package/dist/components-ui-pagination-pagination.js.map +1 -1
- package/dist/components-ui-select-calendar-menu-select-calendar-menu.cjs +1 -1
- package/dist/components-ui-select-calendar-menu-select-calendar-menu.cjs.map +1 -1
- package/dist/components-ui-select-calendar-menu-select-calendar-menu.js +4 -3
- package/dist/components-ui-select-calendar-menu-select-calendar-menu.js.map +1 -1
- package/dist/components-ui-select-select.cjs +1 -1
- package/dist/components-ui-select-select.cjs.map +1 -1
- package/dist/components-ui-select-select.js +42 -41
- package/dist/components-ui-select-select.js.map +1 -1
- package/dist/components-ui-sonner-sonner.cjs +1 -1
- package/dist/components-ui-sonner-sonner.cjs.map +1 -1
- package/dist/components-ui-sonner-sonner.js +38 -32
- package/dist/components-ui-sonner-sonner.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +234 -233
- package/dist/index.js.map +1 -1
- package/package.json +10 -1
- package/dist/calendar-B5QCV34E.cjs +0 -2
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { jsxs as m, jsx as n } from "react/jsx-runtime";
|
|
2
2
|
import { cn as p } from "./lib-utils.js";
|
|
3
3
|
import { useState as U } from "react";
|
|
4
|
-
import { u as
|
|
5
|
-
import {
|
|
4
|
+
import { u as V } from "./index-CVlBIwtP.js";
|
|
5
|
+
import { Plus as H } from "phosphor-strokes-icons/icons/Plus";
|
|
6
|
+
import { SpinnerGap as J } from "phosphor-strokes-icons/icons/SpinnerGap";
|
|
7
|
+
import { StrokeIcon as w } from "./components-icons-stroke-icon.js";
|
|
8
|
+
import { X as Q } from "phosphor-strokes-icons/icons/X";
|
|
6
9
|
import { Typography as _ } from "./components-ui-typography-typography.js";
|
|
7
10
|
import "./components-ui-typography-typography.styles.js";
|
|
8
|
-
const
|
|
11
|
+
const W = ["B", "KB", "MB", "GB", "TB"], x = 1024, Y = 5 * x * x, ee = 5, te = ["all"], re = 800, oe = {
|
|
9
12
|
image: { "image/*": [".jpg", ".jpeg", ".png", ".webp"] },
|
|
10
13
|
pdf: { "application/pdf": [".pdf"] },
|
|
11
14
|
doc: {
|
|
@@ -18,70 +21,70 @@ const V = ["B", "KB", "MB", "GB", "TB"], x = 1024, H = 5 * x * x, J = 5, Q = ["a
|
|
|
18
21
|
},
|
|
19
22
|
text: { "text/plain": [".txt"] },
|
|
20
23
|
all: {}
|
|
21
|
-
},
|
|
24
|
+
}, se = (e) => {
|
|
22
25
|
if (!e) return "0 B";
|
|
23
26
|
const t = Math.floor(Math.log(e) / Math.log(x));
|
|
24
|
-
return `${(e / Math.pow(x, t)).toFixed(2)} ${
|
|
25
|
-
}, F = (e) => `${e.name}:${e.size}`,
|
|
27
|
+
return `${(e / Math.pow(x, t)).toFixed(2)} ${W[t]}`;
|
|
28
|
+
}, F = (e) => `${e.name}:${e.size}`, le = (e) => e.reduce((t, o) => ({ ...t, ...oe[o] }), {}), ne = (e, t) => {
|
|
26
29
|
const o = e.filter((s) => s.status === "uploaded"), l = e.filter((s) => s.status === "error"), a = Math.max(0, t - o.length);
|
|
27
30
|
return [...o, ...l.slice(0, a)];
|
|
28
31
|
}, E = (e, t, o) => ({
|
|
29
32
|
url: URL.createObjectURL(e),
|
|
30
33
|
name: e.name,
|
|
31
|
-
size:
|
|
34
|
+
size: se(e.size),
|
|
32
35
|
addedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
33
36
|
status: t,
|
|
34
37
|
error: o
|
|
35
|
-
}),
|
|
38
|
+
}), ce = (e) => e === "file-too-large" ? "Файл слишком большой" : "Неподдерживаемый формат", ie = (e, t, o) => {
|
|
36
39
|
const l = new Set(o.map(F)), a = new Set(t.map(F));
|
|
37
40
|
return e.filter((s) => {
|
|
38
41
|
if (s.status !== "error") return !0;
|
|
39
|
-
const
|
|
40
|
-
return !l.has(
|
|
42
|
+
const f = F(s);
|
|
43
|
+
return !l.has(f) && !a.has(f);
|
|
41
44
|
});
|
|
42
|
-
},
|
|
45
|
+
}, ae = (e) => {
|
|
43
46
|
const t = e.name.split(".").pop()?.toLowerCase();
|
|
44
47
|
return t ? ["jpg", "jpeg", "png", "webp"].includes(t) ? "image" : t === "pdf" ? "pdf" : ["doc", "docx"].includes(t) ? "doc" : ["xls", "xlsx"].includes(t) ? "excel" : t === "txt" ? "text" : "other" : "other";
|
|
45
|
-
},
|
|
48
|
+
}, ve = ({
|
|
46
49
|
value: e = [],
|
|
47
50
|
onChange: t,
|
|
48
51
|
multiple: o = !1,
|
|
49
|
-
maxFiles: l =
|
|
52
|
+
maxFiles: l = ee,
|
|
50
53
|
disabled: a = !1,
|
|
51
54
|
className: s,
|
|
52
|
-
maxSize:
|
|
55
|
+
maxSize: f = Y,
|
|
53
56
|
variant: b = "grid",
|
|
54
|
-
accepts: L =
|
|
57
|
+
accepts: L = te,
|
|
55
58
|
icon: $,
|
|
56
59
|
title: A,
|
|
57
60
|
text: I,
|
|
58
61
|
showFiles: N = !0,
|
|
59
62
|
isErrorText: D = !1
|
|
60
63
|
}) => {
|
|
61
|
-
const [y,
|
|
62
|
-
|
|
64
|
+
const [y, S] = U(!1), [M, T] = U(null), g = e, v = g.filter((r) => r.status === "uploaded").length, B = (r, c) => {
|
|
65
|
+
T(null);
|
|
63
66
|
const u = Math.max(0, l - v), h = r.slice(0, u), q = r.slice(u), d = [
|
|
64
67
|
...c.map(
|
|
65
|
-
(i) => E(i.file, "error",
|
|
68
|
+
(i) => E(i.file, "error", ce(i.errors[0]?.code))
|
|
66
69
|
),
|
|
67
70
|
...q.map(
|
|
68
71
|
(i) => E(i, "error", `Максимальное количество файлов: ${l}`)
|
|
69
72
|
)
|
|
70
73
|
];
|
|
71
|
-
d.length &&
|
|
72
|
-
const i = h.map((
|
|
73
|
-
t?.(
|
|
74
|
-
},
|
|
75
|
-
}, { getRootProps: C, getInputProps:
|
|
74
|
+
d.length && T(d[0].error || "Ошибка загрузки"), !(!h.length && !d.length) && (S(!0), setTimeout(() => {
|
|
75
|
+
const i = h.map((K) => E(K, "uploaded")), G = ie(g, i, d), j = o ? ne([...G, ...i, ...d], l) : [...i, ...d].slice(0, 1);
|
|
76
|
+
t?.(j.length ? j : []), S(!1);
|
|
77
|
+
}, re));
|
|
78
|
+
}, { getRootProps: C, getInputProps: P, isDragActive: z } = V({
|
|
76
79
|
onDrop: B,
|
|
77
|
-
accept:
|
|
78
|
-
maxSize:
|
|
80
|
+
accept: le(L),
|
|
81
|
+
maxSize: f,
|
|
79
82
|
multiple: o && l > 1,
|
|
80
83
|
disabled: a || y
|
|
81
84
|
}), R = (r) => () => {
|
|
82
|
-
const c =
|
|
85
|
+
const c = g.filter((u, h) => h !== r);
|
|
83
86
|
t?.(c.length ? c : []);
|
|
84
|
-
},
|
|
87
|
+
}, k = g.map((r, c) => ({ file: r, index: c })).filter(({ file: r }) => r.status === "uploaded"), O = v >= l, X = $ ?? H, Z = {
|
|
85
88
|
grid: "grid-cols-2 sm:grid-cols-3 md:grid-cols-4",
|
|
86
89
|
list: "grid-cols-1",
|
|
87
90
|
compact: "grid-cols-2 sm:grid-cols-3"
|
|
@@ -92,11 +95,11 @@ const V = ["B", "KB", "MB", "GB", "TB"], x = 1024, H = 5 * x * x, J = 5, Q = ["a
|
|
|
92
95
|
{
|
|
93
96
|
className: p(
|
|
94
97
|
"grid h-full w-full gap-4",
|
|
95
|
-
b === "list" ? "grid-cols-1" :
|
|
98
|
+
b === "list" ? "grid-cols-1" : Z[b]
|
|
96
99
|
),
|
|
97
100
|
children: [
|
|
98
|
-
N &&
|
|
99
|
-
const u =
|
|
101
|
+
N && k.map(({ file: r, index: c }) => {
|
|
102
|
+
const u = ae(r);
|
|
100
103
|
return /* @__PURE__ */ m(
|
|
101
104
|
"div",
|
|
102
105
|
{
|
|
@@ -127,7 +130,7 @@ const V = ["B", "KB", "MB", "GB", "TB"], x = 1024, H = 5 * x * x, J = 5, Q = ["a
|
|
|
127
130
|
w,
|
|
128
131
|
{
|
|
129
132
|
onClick: R(c),
|
|
130
|
-
|
|
133
|
+
icon: Q
|
|
131
134
|
}
|
|
132
135
|
)
|
|
133
136
|
}
|
|
@@ -137,7 +140,7 @@ const V = ["B", "KB", "MB", "GB", "TB"], x = 1024, H = 5 * x * x, J = 5, Q = ["a
|
|
|
137
140
|
`${r.url}-${r.addedAt}-${c}`
|
|
138
141
|
);
|
|
139
142
|
}),
|
|
140
|
-
!
|
|
143
|
+
!O && /* @__PURE__ */ m(
|
|
141
144
|
"div",
|
|
142
145
|
{
|
|
143
146
|
...C(),
|
|
@@ -145,24 +148,24 @@ const V = ["B", "KB", "MB", "GB", "TB"], x = 1024, H = 5 * x * x, J = 5, Q = ["a
|
|
|
145
148
|
`relative flex cursor-pointer flex-col items-center justify-center
|
|
146
149
|
rounded-lg border-2 border-dashed border-gray-300 bg-gray-50
|
|
147
150
|
transition-colors hover:bg-gray-100`,
|
|
148
|
-
|
|
151
|
+
z && "border-primary bg-primary/5",
|
|
149
152
|
(a || y) && "cursor-not-allowed opacity-50",
|
|
150
153
|
b === "list" ? "min-h-37.5" : "aspect-square",
|
|
151
154
|
s?.blockAdd
|
|
152
155
|
),
|
|
153
156
|
children: [
|
|
154
|
-
/* @__PURE__ */ n("input", { ...
|
|
157
|
+
/* @__PURE__ */ n("input", { ...P() }),
|
|
155
158
|
y ? /* @__PURE__ */ n(
|
|
156
159
|
w,
|
|
157
160
|
{
|
|
158
|
-
|
|
161
|
+
icon: J,
|
|
159
162
|
className: "text-sub-label-text h-8 w-8 animate-spin"
|
|
160
163
|
}
|
|
161
164
|
) : /* @__PURE__ */ m("div", { className: "flex flex-col items-center space-y-2 p-4 text-center", children: [
|
|
162
165
|
/* @__PURE__ */ n(
|
|
163
166
|
w,
|
|
164
167
|
{
|
|
165
|
-
|
|
168
|
+
icon: X,
|
|
166
169
|
className: p("text-sub-label-text h-8 w-8", s?.icon)
|
|
167
170
|
}
|
|
168
171
|
),
|
|
@@ -175,10 +178,10 @@ const V = ["B", "KB", "MB", "GB", "TB"], x = 1024, H = 5 * x * x, J = 5, Q = ["a
|
|
|
175
178
|
]
|
|
176
179
|
}
|
|
177
180
|
),
|
|
178
|
-
!D &&
|
|
181
|
+
!D && M && /* @__PURE__ */ n("div", { className: "rounded-lg bg-red-50 p-3 text-sm text-red-600", children: M })
|
|
179
182
|
] });
|
|
180
183
|
};
|
|
181
184
|
export {
|
|
182
|
-
|
|
185
|
+
ve as FilesUploader
|
|
183
186
|
};
|
|
184
187
|
//# sourceMappingURL=components-files-uploader-files-uploader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components-files-uploader-files-uploader.js","sources":["../src/components/files-uploader/files-uploader.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { useState } from \"react\";\nimport { type FileRejection, useDropzone } from \"react-dropzone\";\nimport { Icon, type IconProps } from \"../ui/icon\";\nimport { Typography } from \"../ui/typography\";\n\ntype Variant = \"grid\" | \"list\" | \"compact\";\ntype AcceptType = \"image\" | \"pdf\" | \"doc\" | \"excel\" | \"text\" | \"all\";\n\nexport type UploadedFileData = {\n url: string;\n name: string;\n size: string;\n addedAt: string;\n status: \"uploaded\" | \"error\";\n error?: string;\n};\n\nexport type FilesUploaderValue = UploadedFileData[] | [];\n\nexport type PropsFilesUploader = {\n value?: FilesUploaderValue;\n onChange?: (value: FilesUploaderValue) => void;\n multiple?: boolean;\n maxFiles?: number;\n disabled?: boolean;\n isErrorText?: boolean;\n className?: {\n container?: string;\n blockAdd?: string;\n title?: string;\n text?: string;\n icon?: string;\n };\n maxSize?: number;\n variant?: Variant;\n accepts?: AcceptType[];\n icon?: IconProps;\n title?: string;\n text?: string;\n showFiles?: boolean;\n};\n\nconst FILE_SIZE_UNITS = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\"];\nconst FILE_SIZE_KB = 1024;\n\nconst DEFAULT_MAX_SIZE = 5 * FILE_SIZE_KB * FILE_SIZE_KB;\nconst DEFAULT_MAX_FILES = 5;\nconst DEFAULT_ACCEPT: AcceptType[] = [\"all\"];\nconst DEFAULT_TIMEOUT = 800;\n\nconst ACCEPT_MAP: Record<AcceptType, Record<string, string[]>> = {\n image: { \"image/*\": [\".jpg\", \".jpeg\", \".png\", \".webp\"] },\n pdf: { \"application/pdf\": [\".pdf\"] },\n doc: {\n \"application/msword\": [\".doc\"],\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\": [\".docx\"],\n },\n excel: {\n \"application/vnd.ms-excel\": [\".xls\"],\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\": [\".xlsx\"],\n },\n text: { \"text/plain\": [\".txt\"] },\n all: {},\n};\n\nconst formatFileSize = (bytes: number) => {\n if (!bytes) return \"0 B\";\n const i = Math.floor(Math.log(bytes) / Math.log(FILE_SIZE_KB));\n return `${(bytes / Math.pow(FILE_SIZE_KB, i)).toFixed(2)} ${FILE_SIZE_UNITS[i]}`;\n};\n\nconst getFileIdentity = (file: Pick<UploadedFileData, \"name\" | \"size\">) =>\n `${file.name}:${file.size}`;\n\nconst fileAcceptMap = (accepts: AcceptType[]) =>\n accepts.reduce((acc, t) => ({ ...acc, ...ACCEPT_MAP[t] }), {});\n\nconst limitFilesForValue = (\n nextFiles: UploadedFileData[],\n maxFiles: number,\n): UploadedFileData[] => {\n const uploadedFiles = nextFiles.filter((file) => file.status === \"uploaded\");\n const errorFiles = nextFiles.filter((file) => file.status === \"error\");\n const availableErrorSlots = Math.max(0, maxFiles - uploadedFiles.length);\n\n return [...uploadedFiles, ...errorFiles.slice(0, availableErrorSlots)];\n};\n\nconst mapFile = (\n file: File,\n status: UploadedFileData[\"status\"],\n error?: string,\n): UploadedFileData => ({\n url: URL.createObjectURL(file),\n name: file.name,\n size: formatFileSize(file.size),\n addedAt: new Date().toISOString(),\n status,\n error,\n});\n\nconst getRejectedError = (code?: string) =>\n code === \"file-too-large\" ? \"Файл слишком большой\" : \"Неподдерживаемый формат\";\n\nconst replaceDuplicateErrors = (\n currentFiles: UploadedFileData[],\n newFiles: UploadedFileData[],\n rejectedFiles: UploadedFileData[],\n) => {\n const rejectedFileIds = new Set(rejectedFiles.map(getFileIdentity));\n const acceptedFileIds = new Set(newFiles.map(getFileIdentity));\n\n return currentFiles.filter((existingFile) => {\n if (existingFile.status !== \"error\") return true;\n const id = getFileIdentity(existingFile);\n return !rejectedFileIds.has(id) && !acceptedFileIds.has(id);\n });\n};\n\nconst getFileType = (file: UploadedFileData) => {\n const ext = file.name.split(\".\").pop()?.toLowerCase();\n\n if (!ext) return \"other\";\n if ([\"jpg\", \"jpeg\", \"png\", \"webp\"].includes(ext)) return \"image\";\n if (ext === \"pdf\") return \"pdf\";\n if ([\"doc\", \"docx\"].includes(ext)) return \"doc\";\n if ([\"xls\", \"xlsx\"].includes(ext)) return \"excel\";\n if (ext === \"txt\") return \"text\";\n\n return \"other\";\n};\n\nexport const FilesUploader = ({\n value = [],\n onChange,\n multiple = false,\n maxFiles = DEFAULT_MAX_FILES,\n disabled = false,\n className,\n maxSize = DEFAULT_MAX_SIZE,\n variant = \"grid\",\n accepts = DEFAULT_ACCEPT,\n icon,\n title,\n text,\n showFiles = true,\n isErrorText = false,\n}: PropsFilesUploader) => {\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState<string | null>(null);\n\n const files = value;\n const uploadedCount = files.filter((file) => file.status === \"uploaded\").length;\n\n const onDrop = (acceptedFiles: File[], rejectedFiles: FileRejection[]) => {\n setError(null);\n const remainingUploadSlots = Math.max(0, maxFiles - uploadedCount);\n const acceptedFilesToUpload = acceptedFiles.slice(0, remainingUploadSlots);\n const overflowAcceptedFiles = acceptedFiles.slice(remainingUploadSlots);\n\n const rejectedMapped = [\n ...rejectedFiles.map((rejection) =>\n mapFile(rejection.file, \"error\", getRejectedError(rejection.errors[0]?.code)),\n ),\n ...overflowAcceptedFiles.map((file) =>\n mapFile(file, \"error\", `Максимальное количество файлов: ${maxFiles}`),\n ),\n ];\n\n if (rejectedMapped.length) {\n setError(rejectedMapped[0].error || \"Ошибка загрузки\");\n }\n\n if (!acceptedFilesToUpload.length && !rejectedMapped.length) return;\n\n setLoading(true);\n\n setTimeout(() => {\n const newFiles = acceptedFilesToUpload.map((file) => mapFile(file, \"uploaded\"));\n const nextBaseFiles = replaceDuplicateErrors(files, newFiles, rejectedMapped);\n const nextFiles = multiple\n ? limitFilesForValue([...nextBaseFiles, ...newFiles, ...rejectedMapped], maxFiles)\n : [...newFiles, ...rejectedMapped].slice(0, 1);\n\n onChange?.(nextFiles.length ? nextFiles : []);\n setLoading(false);\n }, DEFAULT_TIMEOUT);\n };\n\n const { getRootProps, getInputProps, isDragActive } = useDropzone({\n onDrop,\n accept: fileAcceptMap(accepts),\n maxSize,\n multiple: multiple && maxFiles > 1,\n disabled: disabled || loading,\n });\n\n const removeFile = (index: number) => () => {\n const updated = files.filter((_, i) => i !== index);\n onChange?.(updated.length ? updated : []);\n };\n\n const uploadedFiles = files\n .map((file, index) => ({ file, index }))\n .filter(({ file }) => file.status === \"uploaded\");\n\n const isMaxFilesReached = uploadedCount >= maxFiles;\n\n const gridClasses = {\n grid: \"grid-cols-2 sm:grid-cols-3 md:grid-cols-4\",\n list: \"grid-cols-1\",\n compact: \"grid-cols-2 sm:grid-cols-3\",\n };\n\n return (\n <div className={cn(\"w-full space-y-4\", className?.container)}>\n <div\n className={cn(\n \"grid h-full w-full gap-4\",\n variant === \"list\" ? \"grid-cols-1\" : gridClasses[variant],\n )}\n >\n {showFiles &&\n uploadedFiles.map(({ file, index }) => {\n const type = getFileType(file);\n\n return (\n <div\n key={`${file.url}-${file.addedAt}-${index}`}\n className=\"group bg-primary-bg relative aspect-square h-full w-full\n overflow-hidden rounded-lg\"\n >\n {type === \"image\" ? (\n <img\n src={file.url}\n className=\"h-full w-full object-cover\"\n />\n ) : (\n <div\n className=\"flex h-full w-full items-center justify-center bg-gray-100\n text-sm font-semibold\"\n >\n {file.name.split(\".\").pop()?.toUpperCase()}\n </div>\n )}\n\n <div\n className=\"bg-primary-inverse-bg/50 text-primary-bg absolute inset-0\n flex items-center justify-center opacity-0 transition-opacity\n hover:opacity-100\"\n >\n <Icon\n onClick={removeFile(index)}\n type={\"x\"}\n />\n </div>\n </div>\n );\n })}\n\n {!isMaxFilesReached && (\n <div\n {...getRootProps()}\n className={cn(\n `relative flex cursor-pointer flex-col items-center justify-center\n rounded-lg border-2 border-dashed border-gray-300 bg-gray-50\n transition-colors hover:bg-gray-100`,\n isDragActive && \"border-primary bg-primary/5\",\n (disabled || loading) && \"cursor-not-allowed opacity-50\",\n variant === \"list\" ? \"min-h-37.5\" : \"aspect-square\",\n className?.blockAdd,\n )}\n >\n <input {...getInputProps()} />\n\n {loading ? (\n <Icon\n type=\"spinner-gap\"\n className=\"text-sub-label-text h-8 w-8 animate-spin\"\n />\n ) : (\n <div className=\"flex flex-col items-center space-y-2 p-4 text-center\">\n <Icon\n type={icon?.type ?? \"plus\"}\n className={cn(\"text-sub-label-text h-8 w-8\", className?.icon)}\n />\n\n <Typography className={cn(\"text-sub-label-text\", className?.title)}>\n {multiple\n ? `${title || \"Добавить\"} (${uploadedCount}/${maxFiles})`\n : title || \"Добавить\"}\n </Typography>\n\n {text && (\n <Typography className={cn(\"text-sub-label-text\", className?.text)}>\n {text}\n </Typography>\n )}\n </div>\n )}\n </div>\n )}\n </div>\n\n {!isErrorText && error && (\n <div className=\"rounded-lg bg-red-50 p-3 text-sm text-red-600\">{error}</div>\n )}\n </div>\n );\n};\n"],"names":["FILE_SIZE_UNITS","FILE_SIZE_KB","DEFAULT_MAX_SIZE","DEFAULT_MAX_FILES","DEFAULT_ACCEPT","DEFAULT_TIMEOUT","ACCEPT_MAP","formatFileSize","bytes","i","getFileIdentity","file","fileAcceptMap","accepts","acc","t","limitFilesForValue","nextFiles","maxFiles","uploadedFiles","errorFiles","availableErrorSlots","mapFile","status","error","getRejectedError","code","replaceDuplicateErrors","currentFiles","newFiles","rejectedFiles","rejectedFileIds","acceptedFileIds","existingFile","id","getFileType","ext","FilesUploader","value","onChange","multiple","disabled","className","maxSize","variant","icon","title","text","showFiles","isErrorText","loading","setLoading","useState","setError","files","uploadedCount","onDrop","acceptedFiles","remainingUploadSlots","acceptedFilesToUpload","overflowAcceptedFiles","rejectedMapped","rejection","nextBaseFiles","getRootProps","getInputProps","isDragActive","useDropzone","removeFile","index","updated","_","isMaxFilesReached","gridClasses","cn","jsxs","type","jsx","Icon","Typography"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components-files-uploader-files-uploader.js","sources":["../src/components/files-uploader/files-uploader.tsx"],"sourcesContent":["import { cn } from \"@/lib/utils\";\nimport { useState } from \"react\";\nimport { type FileRejection, useDropzone } from \"react-dropzone\";\nimport { Plus } from \"@/components/icons/Plus\";\nimport { SpinnerGap } from \"@/components/icons/SpinnerGap\";\nimport { StrokeIcon, type StrokeIconComponent } from \"@/components/icons/stroke-icon\";\nimport { X } from \"@/components/icons/X\";\nimport { Typography } from \"../ui/typography\";\n\ntype Variant = \"grid\" | \"list\" | \"compact\";\ntype AcceptType = \"image\" | \"pdf\" | \"doc\" | \"excel\" | \"text\" | \"all\";\n\nexport type UploadedFileData = {\n url: string;\n name: string;\n size: string;\n addedAt: string;\n status: \"uploaded\" | \"error\";\n error?: string;\n};\n\nexport type FilesUploaderValue = UploadedFileData[] | [];\n\nexport type PropsFilesUploader = {\n value?: FilesUploaderValue;\n onChange?: (value: FilesUploaderValue) => void;\n multiple?: boolean;\n maxFiles?: number;\n disabled?: boolean;\n isErrorText?: boolean;\n className?: {\n container?: string;\n blockAdd?: string;\n title?: string;\n text?: string;\n icon?: string;\n };\n maxSize?: number;\n variant?: Variant;\n accepts?: AcceptType[];\n icon?: StrokeIconComponent;\n title?: string;\n text?: string;\n showFiles?: boolean;\n};\n\nconst FILE_SIZE_UNITS = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\"];\nconst FILE_SIZE_KB = 1024;\n\nconst DEFAULT_MAX_SIZE = 5 * FILE_SIZE_KB * FILE_SIZE_KB;\nconst DEFAULT_MAX_FILES = 5;\nconst DEFAULT_ACCEPT: AcceptType[] = [\"all\"];\nconst DEFAULT_TIMEOUT = 800;\n\nconst ACCEPT_MAP: Record<AcceptType, Record<string, string[]>> = {\n image: { \"image/*\": [\".jpg\", \".jpeg\", \".png\", \".webp\"] },\n pdf: { \"application/pdf\": [\".pdf\"] },\n doc: {\n \"application/msword\": [\".doc\"],\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\": [\".docx\"],\n },\n excel: {\n \"application/vnd.ms-excel\": [\".xls\"],\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\": [\".xlsx\"],\n },\n text: { \"text/plain\": [\".txt\"] },\n all: {},\n};\n\nconst formatFileSize = (bytes: number) => {\n if (!bytes) return \"0 B\";\n const i = Math.floor(Math.log(bytes) / Math.log(FILE_SIZE_KB));\n return `${(bytes / Math.pow(FILE_SIZE_KB, i)).toFixed(2)} ${FILE_SIZE_UNITS[i]}`;\n};\n\nconst getFileIdentity = (file: Pick<UploadedFileData, \"name\" | \"size\">) =>\n `${file.name}:${file.size}`;\n\nconst fileAcceptMap = (accepts: AcceptType[]) =>\n accepts.reduce((acc, t) => ({ ...acc, ...ACCEPT_MAP[t] }), {});\n\nconst limitFilesForValue = (\n nextFiles: UploadedFileData[],\n maxFiles: number,\n): UploadedFileData[] => {\n const uploadedFiles = nextFiles.filter((file) => file.status === \"uploaded\");\n const errorFiles = nextFiles.filter((file) => file.status === \"error\");\n const availableErrorSlots = Math.max(0, maxFiles - uploadedFiles.length);\n\n return [...uploadedFiles, ...errorFiles.slice(0, availableErrorSlots)];\n};\n\nconst mapFile = (\n file: File,\n status: UploadedFileData[\"status\"],\n error?: string,\n): UploadedFileData => ({\n url: URL.createObjectURL(file),\n name: file.name,\n size: formatFileSize(file.size),\n addedAt: new Date().toISOString(),\n status,\n error,\n});\n\nconst getRejectedError = (code?: string) =>\n code === \"file-too-large\" ? \"Файл слишком большой\" : \"Неподдерживаемый формат\";\n\nconst replaceDuplicateErrors = (\n currentFiles: UploadedFileData[],\n newFiles: UploadedFileData[],\n rejectedFiles: UploadedFileData[],\n) => {\n const rejectedFileIds = new Set(rejectedFiles.map(getFileIdentity));\n const acceptedFileIds = new Set(newFiles.map(getFileIdentity));\n\n return currentFiles.filter((existingFile) => {\n if (existingFile.status !== \"error\") return true;\n const id = getFileIdentity(existingFile);\n return !rejectedFileIds.has(id) && !acceptedFileIds.has(id);\n });\n};\n\nconst getFileType = (file: UploadedFileData) => {\n const ext = file.name.split(\".\").pop()?.toLowerCase();\n\n if (!ext) return \"other\";\n if ([\"jpg\", \"jpeg\", \"png\", \"webp\"].includes(ext)) return \"image\";\n if (ext === \"pdf\") return \"pdf\";\n if ([\"doc\", \"docx\"].includes(ext)) return \"doc\";\n if ([\"xls\", \"xlsx\"].includes(ext)) return \"excel\";\n if (ext === \"txt\") return \"text\";\n\n return \"other\";\n};\n\nexport const FilesUploader = ({\n value = [],\n onChange,\n multiple = false,\n maxFiles = DEFAULT_MAX_FILES,\n disabled = false,\n className,\n maxSize = DEFAULT_MAX_SIZE,\n variant = \"grid\",\n accepts = DEFAULT_ACCEPT,\n icon,\n title,\n text,\n showFiles = true,\n isErrorText = false,\n}: PropsFilesUploader) => {\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState<string | null>(null);\n\n const files = value;\n const uploadedCount = files.filter((file) => file.status === \"uploaded\").length;\n\n const onDrop = (acceptedFiles: File[], rejectedFiles: FileRejection[]) => {\n setError(null);\n const remainingUploadSlots = Math.max(0, maxFiles - uploadedCount);\n const acceptedFilesToUpload = acceptedFiles.slice(0, remainingUploadSlots);\n const overflowAcceptedFiles = acceptedFiles.slice(remainingUploadSlots);\n\n const rejectedMapped = [\n ...rejectedFiles.map((rejection) =>\n mapFile(rejection.file, \"error\", getRejectedError(rejection.errors[0]?.code)),\n ),\n ...overflowAcceptedFiles.map((file) =>\n mapFile(file, \"error\", `Максимальное количество файлов: ${maxFiles}`),\n ),\n ];\n\n if (rejectedMapped.length) {\n setError(rejectedMapped[0].error || \"Ошибка загрузки\");\n }\n\n if (!acceptedFilesToUpload.length && !rejectedMapped.length) return;\n\n setLoading(true);\n\n setTimeout(() => {\n const newFiles = acceptedFilesToUpload.map((file) => mapFile(file, \"uploaded\"));\n const nextBaseFiles = replaceDuplicateErrors(files, newFiles, rejectedMapped);\n const nextFiles = multiple\n ? limitFilesForValue([...nextBaseFiles, ...newFiles, ...rejectedMapped], maxFiles)\n : [...newFiles, ...rejectedMapped].slice(0, 1);\n\n onChange?.(nextFiles.length ? nextFiles : []);\n setLoading(false);\n }, DEFAULT_TIMEOUT);\n };\n\n const { getRootProps, getInputProps, isDragActive } = useDropzone({\n onDrop,\n accept: fileAcceptMap(accepts),\n maxSize,\n multiple: multiple && maxFiles > 1,\n disabled: disabled || loading,\n });\n\n const removeFile = (index: number) => () => {\n const updated = files.filter((_, i) => i !== index);\n onChange?.(updated.length ? updated : []);\n };\n\n const uploadedFiles = files\n .map((file, index) => ({ file, index }))\n .filter(({ file }) => file.status === \"uploaded\");\n\n const isMaxFilesReached = uploadedCount >= maxFiles;\n const uploadIcon = icon ?? Plus;\n\n const gridClasses = {\n grid: \"grid-cols-2 sm:grid-cols-3 md:grid-cols-4\",\n list: \"grid-cols-1\",\n compact: \"grid-cols-2 sm:grid-cols-3\",\n };\n\n return (\n <div className={cn(\"w-full space-y-4\", className?.container)}>\n <div\n className={cn(\n \"grid h-full w-full gap-4\",\n variant === \"list\" ? \"grid-cols-1\" : gridClasses[variant],\n )}\n >\n {showFiles &&\n uploadedFiles.map(({ file, index }) => {\n const type = getFileType(file);\n\n return (\n <div\n key={`${file.url}-${file.addedAt}-${index}`}\n className=\"group bg-primary-bg relative aspect-square h-full w-full\n overflow-hidden rounded-lg\"\n >\n {type === \"image\" ? (\n <img\n src={file.url}\n className=\"h-full w-full object-cover\"\n />\n ) : (\n <div\n className=\"flex h-full w-full items-center justify-center bg-gray-100\n text-sm font-semibold\"\n >\n {file.name.split(\".\").pop()?.toUpperCase()}\n </div>\n )}\n\n <div\n className=\"bg-primary-inverse-bg/50 text-primary-bg absolute inset-0\n flex items-center justify-center opacity-0 transition-opacity\n hover:opacity-100\"\n >\n <StrokeIcon\n onClick={removeFile(index)}\n icon={X}\n />\n </div>\n </div>\n );\n })}\n\n {!isMaxFilesReached && (\n <div\n {...getRootProps()}\n className={cn(\n `relative flex cursor-pointer flex-col items-center justify-center\n rounded-lg border-2 border-dashed border-gray-300 bg-gray-50\n transition-colors hover:bg-gray-100`,\n isDragActive && \"border-primary bg-primary/5\",\n (disabled || loading) && \"cursor-not-allowed opacity-50\",\n variant === \"list\" ? \"min-h-37.5\" : \"aspect-square\",\n className?.blockAdd,\n )}\n >\n <input {...getInputProps()} />\n\n {loading ? (\n <StrokeIcon\n icon={SpinnerGap}\n className=\"text-sub-label-text h-8 w-8 animate-spin\"\n />\n ) : (\n <div className=\"flex flex-col items-center space-y-2 p-4 text-center\">\n <StrokeIcon\n icon={uploadIcon}\n className={cn(\"text-sub-label-text h-8 w-8\", className?.icon)}\n />\n\n <Typography className={cn(\"text-sub-label-text\", className?.title)}>\n {multiple\n ? `${title || \"Добавить\"} (${uploadedCount}/${maxFiles})`\n : title || \"Добавить\"}\n </Typography>\n\n {text && (\n <Typography className={cn(\"text-sub-label-text\", className?.text)}>\n {text}\n </Typography>\n )}\n </div>\n )}\n </div>\n )}\n </div>\n\n {!isErrorText && error && (\n <div className=\"rounded-lg bg-red-50 p-3 text-sm text-red-600\">{error}</div>\n )}\n </div>\n );\n};\n"],"names":["FILE_SIZE_UNITS","FILE_SIZE_KB","DEFAULT_MAX_SIZE","DEFAULT_MAX_FILES","DEFAULT_ACCEPT","DEFAULT_TIMEOUT","ACCEPT_MAP","formatFileSize","bytes","i","getFileIdentity","file","fileAcceptMap","accepts","acc","t","limitFilesForValue","nextFiles","maxFiles","uploadedFiles","errorFiles","availableErrorSlots","mapFile","status","error","getRejectedError","code","replaceDuplicateErrors","currentFiles","newFiles","rejectedFiles","rejectedFileIds","acceptedFileIds","existingFile","id","getFileType","ext","FilesUploader","value","onChange","multiple","disabled","className","maxSize","variant","icon","title","text","showFiles","isErrorText","loading","setLoading","useState","setError","files","uploadedCount","onDrop","acceptedFiles","remainingUploadSlots","acceptedFilesToUpload","overflowAcceptedFiles","rejectedMapped","rejection","nextBaseFiles","getRootProps","getInputProps","isDragActive","useDropzone","removeFile","index","updated","_","isMaxFilesReached","uploadIcon","Plus","gridClasses","cn","jsxs","type","jsx","StrokeIcon","X","SpinnerGap","Typography"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("phosphor-strokes-icons/icons/ArrowCounterClockwise");Object.defineProperty(exports,"ArrowCounterClockwise",{enumerable:!0,get:()=>e.ArrowCounterClockwise});
|
|
2
|
+
//# sourceMappingURL=components-icons-ArrowCounterClockwise.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-ArrowCounterClockwise.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-ArrowCounterClockwise.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("phosphor-strokes-icons/icons/BoundingBox");Object.defineProperty(exports,"BoundingBox",{enumerable:!0,get:()=>e.BoundingBox});
|
|
2
|
+
//# sourceMappingURL=components-icons-BoundingBox.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-BoundingBox.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-BoundingBox.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Briefcase.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Briefcase.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Building.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Building.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Buildings.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Buildings.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretDown.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretDown.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretLeft.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretLeft.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("phosphor-strokes-icons/icons/CaretRight");Object.defineProperty(exports,"CaretRight",{enumerable:!0,get:()=>e.CaretRight});
|
|
2
|
+
//# sourceMappingURL=components-icons-CaretRight.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretRight.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretRight.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretUp.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretUp.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("phosphor-strokes-icons/icons/CaretUpDown");Object.defineProperty(exports,"CaretUpDown",{enumerable:!0,get:()=>e.CaretUpDown});
|
|
2
|
+
//# sourceMappingURL=components-icons-CaretUpDown.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretUpDown.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CaretUpDown.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-ChartLine.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-ChartLine.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Check.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Check.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("phosphor-strokes-icons/icons/CheckCircle");Object.defineProperty(exports,"CheckCircle",{enumerable:!0,get:()=>e.CheckCircle});
|
|
2
|
+
//# sourceMappingURL=components-icons-CheckCircle.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CheckCircle.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CheckCircle.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Clock.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-Clock.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("phosphor-strokes-icons/icons/CreditCard");Object.defineProperty(exports,"CreditCard",{enumerable:!0,get:()=>e.CreditCard});
|
|
2
|
+
//# sourceMappingURL=components-icons-CreditCard.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CreditCard.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-CreditCard.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-DotsThree.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-DotsThree.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("phosphor-strokes-icons/icons/DownloadSimple");Object.defineProperty(exports,"DownloadSimple",{enumerable:!0,get:()=>e.DownloadSimple});
|
|
2
|
+
//# sourceMappingURL=components-icons-DownloadSimple.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-DownloadSimple.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-icons-DownloadSimple.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|