@ahrowe/ui 0.51.0 → 0.53.0
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/CHANGELOG.md +24 -0
- package/README.md +1 -0
- package/dist/cjs-types/common/actionIcon/actionIcon.types.d.ts +10 -6
- package/dist/cjs-types/common/ahroweProvider/ahroweProvider.d.ts +1 -1
- package/dist/cjs-types/common/button/button.types.d.ts +25 -8
- package/dist/cjs-types/common/configProvider/configProvider.d.ts +2 -1
- package/dist/cjs-types/common/configProvider/configProvider.types.d.ts +8 -0
- package/dist/cjs-types/common/copyButton/copyButton.types.d.ts +4 -1
- package/dist/cjs-types/common/listItem/index.d.ts +2 -0
- package/dist/cjs-types/common/listItem/listItem.d.ts +4 -0
- package/dist/cjs-types/common/listItem/listItem.types.d.ts +33 -0
- package/dist/cjs-types/common/menu/menu.types.d.ts +2 -2
- package/dist/cjs-types/common/menu/menuItem.d.ts +5 -2
- package/dist/cjs-types/common/otpInput/otpInput.types.d.ts +1 -1
- package/dist/cjs-types/common/themeProvider/theme.types.d.ts +4 -0
- package/dist/cjs-types/common/utils/navigation.d.ts +12 -0
- package/dist/cjs-types/index.d.ts +3 -1
- package/dist/cjs-types/services/formValidation/index.d.ts +1 -1
- package/dist/cjs-types/services/formValidation/useFormValidatorGroup.d.ts +1 -1
- package/dist/esm/common/ahroweProvider/ahroweProvider.mjs +1 -1
- package/dist/esm/common/ahroweProvider/ahroweProvider.mjs.map +1 -1
- package/dist/esm/common/breadcrumb/breadcrumb.mjs +1 -1
- package/dist/esm/common/breadcrumb/breadcrumb.mjs.map +1 -1
- package/dist/esm/common/button/button.mjs +1 -1
- package/dist/esm/common/button/button.mjs.map +1 -1
- package/dist/esm/common/button/button.module.mjs +1 -1
- package/dist/esm/common/button/button.module.mjs.map +1 -1
- package/dist/esm/common/button/button.types.mjs.map +1 -1
- package/dist/esm/common/commandPalette/commandPalette.mjs +1 -1
- package/dist/esm/common/commandPalette/commandPalette.mjs.map +1 -1
- package/dist/esm/common/configProvider/configProvider.mjs +1 -1
- package/dist/esm/common/configProvider/configProvider.mjs.map +1 -1
- package/dist/esm/common/datePicker/datePicker.mjs +1 -1
- package/dist/esm/common/datePicker/datePicker.mjs.map +1 -1
- package/dist/esm/common/dropdown/dropdown.mjs +1 -1
- package/dist/esm/common/dropdown/dropdown.mjs.map +1 -1
- package/dist/esm/common/iconPicker/iconPicker.mjs +1 -1
- package/dist/esm/common/iconPicker/iconPicker.mjs.map +1 -1
- package/dist/esm/common/input/input.mjs +1 -1
- package/dist/esm/common/input/input.mjs.map +1 -1
- package/dist/esm/common/inputDropdown/inputDropdown.mjs +1 -1
- package/dist/esm/common/inputDropdown/inputDropdown.mjs.map +1 -1
- package/dist/esm/common/listItem/listItem.mjs +2 -0
- package/dist/esm/common/listItem/listItem.mjs.map +1 -0
- package/dist/esm/common/listItem/listItem.module.mjs +2 -0
- package/dist/esm/common/listItem/listItem.module.mjs.map +1 -0
- package/dist/esm/common/menu/menu.mjs +1 -1
- package/dist/esm/common/menu/menu.mjs.map +1 -1
- package/dist/esm/common/menu/menu.types.mjs.map +1 -1
- package/dist/esm/common/menu/menuItem.mjs +1 -1
- package/dist/esm/common/menu/menuItem.mjs.map +1 -1
- package/dist/esm/common/multiSelect/multiSelect.mjs +1 -1
- package/dist/esm/common/multiSelect/multiSelect.mjs.map +1 -1
- package/dist/esm/common/numberInput/numberInput.mjs +1 -1
- package/dist/esm/common/numberInput/numberInput.mjs.map +1 -1
- package/dist/esm/common/otpInput/otpInput.mjs +1 -1
- package/dist/esm/common/otpInput/otpInput.mjs.map +1 -1
- package/dist/esm/common/otpInput/otpInput.types.mjs.map +1 -1
- package/dist/esm/common/radioGroup/radioGroup.mjs +1 -1
- package/dist/esm/common/radioGroup/radioGroup.mjs.map +1 -1
- package/dist/esm/common/timeInput/timeInput.mjs +1 -1
- package/dist/esm/common/timeInput/timeInput.mjs.map +1 -1
- package/dist/esm/common/utils/navigation.mjs +2 -0
- package/dist/esm/common/utils/navigation.mjs.map +1 -0
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/services/formValidation/useFormValidatorGroup.mjs +1 -1
- package/dist/esm/services/formValidation/useFormValidatorGroup.mjs.map +1 -1
- package/dist/esm/services/formValidation/validatableComponent.mjs +1 -1
- package/dist/esm/services/formValidation/validatableComponent.mjs.map +1 -1
- package/dist/index.cjs +5 -5
- package/dist/index.cjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/common/actionIcon/actionIcon.types.d.ts +10 -6
- package/dist/types/common/ahroweProvider/ahroweProvider.d.ts +1 -1
- package/dist/types/common/button/button.types.d.ts +25 -8
- package/dist/types/common/configProvider/configProvider.d.ts +2 -1
- package/dist/types/common/configProvider/configProvider.types.d.ts +8 -0
- package/dist/types/common/copyButton/copyButton.types.d.ts +4 -1
- package/dist/types/common/listItem/index.d.ts +2 -0
- package/dist/types/common/listItem/listItem.d.ts +4 -0
- package/dist/types/common/listItem/listItem.types.d.ts +33 -0
- package/dist/types/common/menu/menu.types.d.ts +2 -2
- package/dist/types/common/menu/menuItem.d.ts +5 -2
- package/dist/types/common/otpInput/otpInput.types.d.ts +1 -1
- package/dist/types/common/themeProvider/theme.types.d.ts +4 -0
- package/dist/types/common/utils/navigation.d.ts +12 -0
- package/dist/types/index.d.ts +3 -1
- package/dist/types/services/formValidation/index.d.ts +1 -1
- package/dist/types/services/formValidation/useFormValidatorGroup.d.ts +1 -1
- package/docs/ActionIcon.md +7 -3
- package/docs/AhroweProvider.md +2 -1
- package/docs/Breadcrumb.md +4 -24
- package/docs/Button.md +44 -9
- package/docs/CLAUDE.md +4 -0
- package/docs/CommandPalette.md +1 -1
- package/docs/ConfigProvider.md +34 -1
- package/docs/FormValidator.md +23 -1
- package/docs/FormValidatorGroup.md +5 -2
- package/docs/InputDropdown.md +1 -1
- package/docs/ListItem.md +97 -0
- package/docs/Menu.md +2 -2
- package/docs/MultiSelect.md +1 -1
- package/docs/OtpInput.md +1 -1
- package/docs/RadioGroup.md +1 -1
- package/docs/ScrollbarProvider.md +1 -1
- package/package.json +2 -2
package/dist/esm/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{AccordionStyleType as e}from"./common/accordion/accordion.types.mjs";import t from"./common/configProvider/configProvider.mjs";import{useComponentDefaults as n}from"./common/configProvider/useComponentDefaults.mjs";import{useLabels as r}from"./common/configProvider/useLabels.mjs";import{usePresentationDefault as i}from"./common/configProvider/usePresentationDefault.mjs";import{Presentation as a}from"./common/configProvider/presentation.types.mjs";import{ThemeColor as o}from"./common/themeProvider/color.types.mjs";import s from"./common/accordion/accordion.mjs";import{LoaderType as c}from"./common/loader/loader.types.mjs";import l from"./common/loader/loader.mjs";import{ButtonSize as u,ButtonStyleType as d,ButtonType as f}from"./common/button/button.types.mjs";import p from"./common/ripple/ripple.mjs";import m,{formatHotkey as h}from"./common/hooks/useHotkeys.mjs";import g from"./common/button/button.mjs";import _ from"./common/actionButtons/actionButtons.mjs";import v from"./common/actionIcon/actionIcon.mjs";import y from"./common/scrollbarProvider/index.mjs";import{defaultTheme as b}from"./common/themeProvider/defaultTheme.mjs";import x from"./common/themeProvider/themeProvider.mjs";import{lightTheme as S}from"./common/themeProvider/lightTheme.mjs";import C from"./common/bodyEnd/bodyEnd.mjs";import w from"./common/hooks/useMediaQuery.mjs";import T from"./common/hooks/useCoarsePointer.mjs";import{useSwipeDismiss as E}from"./common/hooks/useSwipeDismiss.mjs";import{showToast as D}from"./common/toast/toastService.mjs";import O from"./common/ahroweProvider/ahroweProvider.mjs";import k from"./common/alert/alert.mjs";import A from"./common/animatedLogo/animatedLogo.mjs";import{AnimatedTextUnit as j,AnimatedTextVariant as M}from"./common/animatedText/animatedText.types.mjs";import N from"./common/animatedText/animatedText.mjs";import{BadgePosition as P,BadgeStyleType as F}from"./common/badge/badge.types.mjs";import I from"./common/badge/badge.mjs";import L from"./common/avatar/avatar.mjs";import R from"./common/avatar/avatarGroup.mjs";import z from"./common/interactableDiv/index.mjs";import{PopoverAlign as B,PopoverPlacement as V,PopoverTrigger as H}from"./common/popover/popover.types.mjs";import{tabbablesIn as U}from"./common/hooks/useFocusBoundary.mjs";import{useVisualViewportSize as W}from"./common/hooks/useVisualViewportSize.mjs";import{useOverlay as G}from"./common/hooks/useOverlay.mjs";import K from"./common/popover/popover.mjs";import q from"./common/breadcrumb/breadcrumb.mjs";import{ButtonGroupOrientation as J}from"./common/buttonGroup/buttonGroup.types.mjs";import Y from"./common/buttonGroup/buttonGroup.mjs";import{dateToDay as X,dateToTime as Z,dayTimeToDate as Q,dayToDate as $}from"./common/utils/day.mjs";import{CalendarView as ee}from"./common/calendar/calendar.types.mjs";import te from"./common/emptyState/emptyState.mjs";import ne from"./common/optionPicker/optionPicker.mjs";import re from"./common/calendar/calendar.mjs";import{CardStyleType as ie}from"./common/card/card.types.mjs";import ae from"./common/card/Card.mjs";import oe from"./common/card/CardHeader.mjs";import se from"./common/card/CardMedia.mjs";import ce from"./common/card/CardContent.mjs";import le from"./common/card/CardActions.mjs";import ue from"./common/carousel/carousel.mjs";import de from"./common/chatComposer/chatComposer.mjs";import{ChatMessageStatus as fe,ChatMessageStyleType as pe}from"./common/chatMessage/chatMessage.types.mjs";import me from"./common/chatMessage/chatMessage.mjs";import he from"./common/chatMessageList/chatMessageList.mjs";import ge from"./common/checkbox/checkbox.mjs";import{ChipStyleType as _e}from"./common/chip/chip.types.mjs";import ve from"./common/chip/chip.mjs";import ye from"./common/chip/chipContainer.mjs";import be from"./common/tooltip/tooltip.mjs";import{InputIconPosition as xe,InputType as Se}from"./common/input/input.types.mjs";import Ce from"./common/input/input.mjs";import we from"./common/colorPicker/colorPicker.mjs";import{useScrollEdges as Te}from"./common/hooks/useScrollEdges.mjs";import Ee from"./common/modal/modal.mjs";import{isMenuAction as De,isMenuHeading as Oe,isMenuSeparator as ke}from"./common/menu/menu.types.mjs";import Ae from"./common/commandPalette/commandPalette.mjs";import je from"./common/confirmModal/confirmModal.mjs";import Me from"./common/hooks/useClipboard.mjs";import Ne from"./common/copyButton/copyButton.mjs";import{getLocale as Pe,mapLocale as Fe,setLocale as Ie}from"./services/localization.mjs";import Le from"./common/dropdown/dropdown.mjs";import Re from"./common/datePicker/datePicker.mjs";import{DividerOrientation as ze,DividerTextPosition as Be}from"./common/divider/divider.types.mjs";import Ve from"./common/divider/divider.mjs";import He from"./common/drawer/drawer.mjs";import{DropZoneReturnType as Ue,DropZoneStatus as We}from"./common/dropZone/dropZone.types.mjs";import Ge from"./common/dropZone/dropZone.mjs";import Ke from"./common/errorBoundary/errorBoundary.mjs";import qe from"./common/fab/fab.mjs";import Je from"./common/flip/flip.mjs";import{DoorSwing as Ye,OpeningKind as Xe,PlanIssueKind as Ze,PlanUnitSystem as Qe,WallType as $e}from"./common/floorPlan/floorPlan.types.mjs";import{MIN_OPENING_WIDTH as et,MIN_WALL_LENGTH as tt}from"./common/floorPlan/floorPlan.geometry.mjs";import{DEFAULT_WALL_ATTRS as nt,addOpening as rt,addRect as it,addWall as at,cleanupPlan as ot,detachWall as st,dissolveNode as ct,mergeNodes as lt,moveNode as ut,removeOpening as dt,removeWall as ft,scalePlan as pt,splitWall as mt,transformPlan as ht,updateOpening as gt,validatePlan as _t,wallLength as vt,weldShortWalls as yt}from"./common/floorPlan/floorPlan.graph.mjs";import{MIN_FLOOR_HEIGHT as bt,addFloor as xt,duplicateFloor as St,emptyFloor as Ct,emptyFloorPlan as wt,floorBelow as Tt,floorBounds as Et,floorIndex as Dt,getFloor as Ot,moveFloor as kt,removeFloor as At,renameFloor as jt,setFloor as Mt,setFloorHeight as Nt,updateFloor as Pt}from"./common/floorPlan/floorPlan.plan.mjs";import{deriveFaces as Ft,nodeDegrees as It}from"./common/floorPlan/floorPlan.faces.mjs";import{commitDerivation as Lt,derivePlan as Rt,pruneUnmatchedRooms as zt,roomAtPoint as Bt}from"./common/floorPlan/floorPlan.rooms.mjs";import{buildWallPaths as Vt,openingGeometry as Ht,wallCentrelineSpans as Ut}from"./common/floorPlan/floorPlan.path.mjs";import{HIT_PX as Wt,HIT_PX_COARSE as Gt,hitTest as Kt,selectionsEqual as qt,worldTolerances as Jt}from"./common/floorPlan/floorPlan.hit.mjs";import{DEFAULT_SNAP_OPTIONS as Yt,SnapKind as Xt,clientToWorld as Zt,resolveSnap as Qt}from"./common/floorPlan/floorPlan.snap.mjs";import{PLAN_FORMAT_VERSION as $t,planFromJson as en,planToJson as tn}from"./common/floorPlan/floorPlan.json.mjs";import{buildPlanMesh as nn}from"./common/floorPlan/floorPlan.mesh.mjs";import rn from"./common/iconPicker/iconPicker.mjs";import an from"./common/idleManager/idleManager.mjs";import on from"./common/inputDropdown/inputDropdown.mjs";import sn from"./common/kanbanBoard/KanbanColumn.mjs";import cn from"./common/kanbanBoard/KanbanBoard.mjs";import ln from"./common/searchInput/searchInput.mjs";import un from"./common/klipyPicker/klipyPicker.mjs";import dn from"./common/loadingOverlay/loadingOverlay.mjs";import fn from"./common/menu/menu.mjs";import{menuHotkeys as pn}from"./common/menu/menuHotkeys.mjs";import mn from"./common/multiSelect/multiSelect.mjs";import hn from"./common/numberInput/index.mjs";import{OtpInputCharset as gn}from"./common/otpInput/otpInput.types.mjs";import _n from"./common/otpInput/otpInput.mjs";import vn from"./common/overscroll/overscroll.mjs";import yn from"./common/pagination/pagination.mjs";import bn from"./common/progressBar/progressBar.mjs";import{RadioGroupOrientation as xn}from"./common/radioGroup/radioGroup.types.mjs";import Sn from"./common/radioGroup/radioGroup.mjs";import Cn from"./common/rating/rating.mjs";import wn from"./common/revealLens/revealLens.mjs";import Tn from"./common/roomDrawer/roomDrawer.mjs";import En from"./common/roomViewer/roomViewer.mjs";import{ScrollFadeAxis as Dn}from"./common/scrollFade/scrollFade.types.mjs";import On from"./common/scrollFade/scrollFade.mjs";import{SectionHeaderSize as kn}from"./common/sectionHeader/sectionHeader.types.mjs";import An from"./common/sectionHeader/sectionHeader.mjs";import{SkeletonAnimation as jn,SkeletonVariant as Mn}from"./common/skeleton/skeleton.types.mjs";import Nn from"./common/skeleton/skeleton.mjs";import Pn from"./common/slider/slider.mjs";import Fn from"./common/splitButton/splitButton.mjs";import{StepperCollapse as In,StepperLabelPlacement as Ln,StepperOrientation as Rn,StepperStyleType as zn}from"./common/stepper/stepper.types.mjs";import Bn from"./common/stepper/stepper.mjs";import Vn from"./common/sticky/sticky.mjs";import Hn from"./common/switch/switch.mjs";import Un from"./common/tabHeader/tabHeader.mjs";import Wn from"./common/textarea/textarea.mjs";import{useTheme as Gn}from"./common/themeProvider/useTheme.mjs";import Kn,{TiltGroupContext as qn,useTiltGroup as Jn}from"./common/tiltGroup/tiltGroup.mjs";import{defaultTiltEasing as Yn}from"./common/tilt/tiltMath.mjs";import Xn from"./common/tilt/tilt.mjs";import Zn from"./common/timeInput/timeInput.mjs";import{TimelineAlignment as Qn}from"./common/timeline/timeline.types.mjs";import $n from"./common/timeline/timeline.mjs";import er from"./common/timer/timer.mjs";import tr from"./common/virtualList/virtualList.mjs";import{flattenTree as nr}from"./common/tree/flattenTree.mjs";import rr from"./common/tree/tree.mjs";import{WeatherType as ir}from"./common/weatherIcon/weatherIcon.types.mjs";import ar from"./common/weatherIcon/weatherIcon.mjs";import or from"./common/wizard/wizard.mjs";import sr from"./services/formValidation/FormValidatorGroupWithForm.mjs";import cr from"./services/formValidation/validatableComponent.mjs";import{useFormValidatorGroup as lr}from"./services/formValidation/useFormValidatorGroup.mjs";import{FormValidator as ur,Validators as dr,useFormValidator as fr}from"./services/formValidation/index.mjs";import{hasEightPasswordChars as pr,hasOnePasswordDigit as mr,hasOnePasswordLetter as hr,isBic as gr,isDate as _r,isDay as vr,isEmail as yr,isISODate as br,isNumber as xr,isPassword as Sr,isURL as Cr}from"@ahrowe/form-validation";export{s as Accordion,e as AccordionStyleType,_ as ActionButtons,v as ActionIcon,O as AhroweProvider,k as Alert,A as AnimatedLogo,N as AnimatedText,j as AnimatedTextUnit,M as AnimatedTextVariant,L as Avatar,R as AvatarGroup,I as Badge,P as BadgePosition,F as BadgeStyleType,C as BodyEnd,q as Breadcrumb,g as Button,Y as ButtonGroup,J as ButtonGroupOrientation,u as ButtonSize,d as ButtonStyleType,f as ButtonType,re as Calendar,ee as CalendarView,ae as Card,le as CardActions,ce as CardContent,oe as CardHeader,se as CardMedia,ie as CardStyleType,ue as Carousel,de as ChatComposer,me as ChatMessage,he as ChatMessageList,fe as ChatMessageStatus,pe as ChatMessageStyleType,ge as Checkbox,ve as Chip,ye as ChipContainer,_e as ChipStyleType,we as ColorPicker,Ae as CommandPalette,t as ConfigProvider,je as ConfirmModal,Ne as CopyButton,Yt as DEFAULT_SNAP_OPTIONS,nt as DEFAULT_WALL_ATTRS,Re as DatePicker,Ve as Divider,ze as DividerOrientation,Be as DividerTextPosition,Ye as DoorSwing,He as Drawer,Ge as DropZone,Ue as DropZoneReturnType,We as DropZoneStatus,Le as Dropdown,te as EmptyState,Ke as ErrorBoundary,qe as Fab,Je as Flip,ur as FormValidator,sr as FormValidatorGroup,Wt as HIT_PX,Gt as HIT_PX_COARSE,rn as IconPicker,an as IdleManager,Ce as Input,on as InputDropdown,xe as InputIconPosition,Se as InputType,z as InteractableDiv,cn as KanbanBoard,sn as KanbanColumn,un as KlipyPicker,l as Loader,c as LoaderType,dn as LoadingOverlay,bt as MIN_FLOOR_HEIGHT,et as MIN_OPENING_WIDTH,tt as MIN_WALL_LENGTH,fn as Menu,Ee as Modal,mn as MultiSelect,hn as NumberInput,Xe as OpeningKind,ne as OptionPicker,_n as OtpInput,gn as OtpInputCharset,vn as Overscroll,$t as PLAN_FORMAT_VERSION,yn as Pagination,Ze as PlanIssueKind,Qe as PlanUnitSystem,K as Popover,B as PopoverAlign,V as PopoverPlacement,H as PopoverTrigger,a as Presentation,bn as ProgressBar,Sn as RadioGroup,xn as RadioGroupOrientation,Cn as Rating,wn as RevealLens,p as Ripple,Tn as RoomDrawer,En as RoomViewer,On as ScrollFade,Dn as ScrollFadeAxis,y as ScrollbarProvider,ln as SearchInput,An as SectionHeader,kn as SectionHeaderSize,Nn as Skeleton,jn as SkeletonAnimation,Mn as SkeletonVariant,Pn as Slider,Xt as SnapKind,Fn as SplitButton,Bn as Stepper,In as StepperCollapse,Ln as StepperLabelPlacement,Rn as StepperOrientation,zn as StepperStyleType,Vn as Sticky,Hn as Switch,Un as TabHeader,Wn as Textarea,o as ThemeColor,x as ThemeProvider,Xn as Tilt,Kn as TiltGroup,qn as TiltGroupContext,Zn as TimeInput,$n as Timeline,Qn as TimelineAlignment,er as Timer,be as Tooltip,rr as Tree,cr as ValidatableComponent,dr as Validators,tr as VirtualList,$e as WallType,ar as WeatherIcon,ir as WeatherType,or as Wizard,xt as addFloor,rt as addOpening,it as addRect,at as addWall,nn as buildPlanMesh,Vt as buildWallPaths,ot as cleanupPlan,Zt as clientToWorld,Lt as commitDerivation,X as dateToDay,Z as dateToTime,Q as dayTimeToDate,$ as dayToDate,b as defaultTheme,Yn as defaultTiltEasing,Ft as deriveFaces,Rt as derivePlan,st as detachWall,ct as dissolveNode,St as duplicateFloor,Ct as emptyFloor,wt as emptyFloorPlan,nr as flattenTree,Tt as floorBelow,Et as floorBounds,Dt as floorIndex,h as formatHotkey,Ot as getFloor,Pe as getLocale,pr as hasEightPasswordChars,mr as hasOnePasswordDigit,hr as hasOnePasswordLetter,Kt as hitTest,gr as isBic,_r as isDate,vr as isDay,yr as isEmail,br as isISODate,De as isMenuAction,Oe as isMenuHeading,ke as isMenuSeparator,xr as isNumber,Sr as isPassword,Cr as isURL,S as lightTheme,Fe as mapLocale,pn as menuHotkeys,lt as mergeNodes,kt as moveFloor,ut as moveNode,It as nodeDegrees,Ht as openingGeometry,en as planFromJson,tn as planToJson,zt as pruneUnmatchedRooms,At as removeFloor,dt as removeOpening,ft as removeWall,jt as renameFloor,Qt as resolveSnap,Bt as roomAtPoint,pt as scalePlan,qt as selectionsEqual,Mt as setFloor,Nt as setFloorHeight,Ie as setLocale,D as showToast,mt as splitWall,U as tabbablesIn,ht as transformPlan,Pt as updateFloor,gt as updateOpening,Me as useClipboard,T as useCoarsePointer,n as useComponentDefaults,fr as useFormValidator,lr as useFormValidatorGroup,m as useHotkeys,r as useLabels,w as useMediaQuery,G as useOverlay,i as usePresentationDefault,Te as useScrollEdges,E as useSwipeDismiss,Gn as useTheme,Jn as useTiltGroup,W as useVisualViewportSize,_t as validatePlan,Ut as wallCentrelineSpans,vt as wallLength,yt as weldShortWalls,Jt as worldTolerances};
|
|
1
|
+
"use client";import{AccordionStyleType as e}from"./common/accordion/accordion.types.mjs";import t from"./common/configProvider/configProvider.mjs";import{useComponentDefaults as n}from"./common/configProvider/useComponentDefaults.mjs";import{useLabels as r}from"./common/configProvider/useLabels.mjs";import{usePresentationDefault as i}from"./common/configProvider/usePresentationDefault.mjs";import{Presentation as a}from"./common/configProvider/presentation.types.mjs";import{ThemeColor as o}from"./common/themeProvider/color.types.mjs";import s from"./common/accordion/accordion.mjs";import{LoaderType as c}from"./common/loader/loader.types.mjs";import l from"./common/loader/loader.mjs";import{ButtonSize as u,ButtonStyleType as d,ButtonType as f}from"./common/button/button.types.mjs";import p from"./common/ripple/ripple.mjs";import m,{formatHotkey as h}from"./common/hooks/useHotkeys.mjs";import g from"./common/button/button.mjs";import _ from"./common/actionButtons/actionButtons.mjs";import v from"./common/actionIcon/actionIcon.mjs";import y from"./common/scrollbarProvider/index.mjs";import{defaultTheme as b}from"./common/themeProvider/defaultTheme.mjs";import x from"./common/themeProvider/themeProvider.mjs";import{lightTheme as S}from"./common/themeProvider/lightTheme.mjs";import C from"./common/bodyEnd/bodyEnd.mjs";import w from"./common/hooks/useMediaQuery.mjs";import T from"./common/hooks/useCoarsePointer.mjs";import{useSwipeDismiss as E}from"./common/hooks/useSwipeDismiss.mjs";import{showToast as D}from"./common/toast/toastService.mjs";import O from"./common/ahroweProvider/ahroweProvider.mjs";import k from"./common/alert/alert.mjs";import A from"./common/animatedLogo/animatedLogo.mjs";import{AnimatedTextUnit as j,AnimatedTextVariant as M}from"./common/animatedText/animatedText.types.mjs";import N from"./common/animatedText/animatedText.mjs";import{BadgePosition as P,BadgeStyleType as F}from"./common/badge/badge.types.mjs";import I from"./common/badge/badge.mjs";import L from"./common/avatar/avatar.mjs";import R from"./common/avatar/avatarGroup.mjs";import z from"./common/interactableDiv/index.mjs";import{PopoverAlign as B,PopoverPlacement as V,PopoverTrigger as H}from"./common/popover/popover.types.mjs";import{tabbablesIn as U}from"./common/hooks/useFocusBoundary.mjs";import{useVisualViewportSize as W}from"./common/hooks/useVisualViewportSize.mjs";import{useOverlay as G}from"./common/hooks/useOverlay.mjs";import K from"./common/popover/popover.mjs";import q from"./common/breadcrumb/breadcrumb.mjs";import{ButtonGroupOrientation as J}from"./common/buttonGroup/buttonGroup.types.mjs";import Y from"./common/buttonGroup/buttonGroup.mjs";import{dateToDay as X,dateToTime as Z,dayTimeToDate as Q,dayToDate as $}from"./common/utils/day.mjs";import{CalendarView as ee}from"./common/calendar/calendar.types.mjs";import te from"./common/emptyState/emptyState.mjs";import ne from"./common/optionPicker/optionPicker.mjs";import re from"./common/calendar/calendar.mjs";import{CardStyleType as ie}from"./common/card/card.types.mjs";import ae from"./common/card/Card.mjs";import oe from"./common/card/CardHeader.mjs";import se from"./common/card/CardMedia.mjs";import ce from"./common/card/CardContent.mjs";import le from"./common/card/CardActions.mjs";import ue from"./common/carousel/carousel.mjs";import de from"./common/chatComposer/chatComposer.mjs";import{ChatMessageStatus as fe,ChatMessageStyleType as pe}from"./common/chatMessage/chatMessage.types.mjs";import me from"./common/chatMessage/chatMessage.mjs";import he from"./common/chatMessageList/chatMessageList.mjs";import ge from"./common/checkbox/checkbox.mjs";import{ChipStyleType as _e}from"./common/chip/chip.types.mjs";import ve from"./common/chip/chip.mjs";import ye from"./common/chip/chipContainer.mjs";import be from"./common/tooltip/tooltip.mjs";import{InputIconPosition as xe,InputType as Se}from"./common/input/input.types.mjs";import Ce from"./common/input/input.mjs";import we from"./common/colorPicker/colorPicker.mjs";import{useScrollEdges as Te}from"./common/hooks/useScrollEdges.mjs";import Ee from"./common/modal/modal.mjs";import{isMenuAction as De,isMenuHeading as Oe,isMenuSeparator as ke}from"./common/menu/menu.types.mjs";import Ae from"./common/commandPalette/commandPalette.mjs";import je from"./common/confirmModal/confirmModal.mjs";import Me from"./common/hooks/useClipboard.mjs";import Ne from"./common/copyButton/copyButton.mjs";import{getLocale as Pe,mapLocale as Fe,setLocale as Ie}from"./services/localization.mjs";import Le from"./common/dropdown/dropdown.mjs";import Re from"./common/datePicker/datePicker.mjs";import{DividerOrientation as ze,DividerTextPosition as Be}from"./common/divider/divider.types.mjs";import Ve from"./common/divider/divider.mjs";import He from"./common/drawer/drawer.mjs";import{DropZoneReturnType as Ue,DropZoneStatus as We}from"./common/dropZone/dropZone.types.mjs";import Ge from"./common/dropZone/dropZone.mjs";import Ke from"./common/errorBoundary/errorBoundary.mjs";import qe from"./common/fab/fab.mjs";import Je from"./common/flip/flip.mjs";import{DoorSwing as Ye,OpeningKind as Xe,PlanIssueKind as Ze,PlanUnitSystem as Qe,WallType as $e}from"./common/floorPlan/floorPlan.types.mjs";import{MIN_OPENING_WIDTH as et,MIN_WALL_LENGTH as tt}from"./common/floorPlan/floorPlan.geometry.mjs";import{DEFAULT_WALL_ATTRS as nt,addOpening as rt,addRect as it,addWall as at,cleanupPlan as ot,detachWall as st,dissolveNode as ct,mergeNodes as lt,moveNode as ut,removeOpening as dt,removeWall as ft,scalePlan as pt,splitWall as mt,transformPlan as ht,updateOpening as gt,validatePlan as _t,wallLength as vt,weldShortWalls as yt}from"./common/floorPlan/floorPlan.graph.mjs";import{MIN_FLOOR_HEIGHT as bt,addFloor as xt,duplicateFloor as St,emptyFloor as Ct,emptyFloorPlan as wt,floorBelow as Tt,floorBounds as Et,floorIndex as Dt,getFloor as Ot,moveFloor as kt,removeFloor as At,renameFloor as jt,setFloor as Mt,setFloorHeight as Nt,updateFloor as Pt}from"./common/floorPlan/floorPlan.plan.mjs";import{deriveFaces as Ft,nodeDegrees as It}from"./common/floorPlan/floorPlan.faces.mjs";import{commitDerivation as Lt,derivePlan as Rt,pruneUnmatchedRooms as zt,roomAtPoint as Bt}from"./common/floorPlan/floorPlan.rooms.mjs";import{buildWallPaths as Vt,openingGeometry as Ht,wallCentrelineSpans as Ut}from"./common/floorPlan/floorPlan.path.mjs";import{HIT_PX as Wt,HIT_PX_COARSE as Gt,hitTest as Kt,selectionsEqual as qt,worldTolerances as Jt}from"./common/floorPlan/floorPlan.hit.mjs";import{DEFAULT_SNAP_OPTIONS as Yt,SnapKind as Xt,clientToWorld as Zt,resolveSnap as Qt}from"./common/floorPlan/floorPlan.snap.mjs";import{PLAN_FORMAT_VERSION as $t,planFromJson as en,planToJson as tn}from"./common/floorPlan/floorPlan.json.mjs";import{buildPlanMesh as nn}from"./common/floorPlan/floorPlan.mesh.mjs";import rn from"./common/iconPicker/iconPicker.mjs";import an from"./common/idleManager/idleManager.mjs";import on from"./common/inputDropdown/inputDropdown.mjs";import sn from"./common/kanbanBoard/KanbanColumn.mjs";import cn from"./common/kanbanBoard/KanbanBoard.mjs";import ln from"./common/searchInput/searchInput.mjs";import un from"./common/klipyPicker/klipyPicker.mjs";import dn from"./common/listItem/listItem.mjs";import fn from"./common/loadingOverlay/loadingOverlay.mjs";import pn from"./common/menu/menu.mjs";import{menuHotkeys as mn}from"./common/menu/menuHotkeys.mjs";import hn from"./common/multiSelect/multiSelect.mjs";import gn from"./common/numberInput/index.mjs";import{OtpInputCharset as _n}from"./common/otpInput/otpInput.types.mjs";import vn from"./common/otpInput/otpInput.mjs";import yn from"./common/overscroll/overscroll.mjs";import bn from"./common/pagination/pagination.mjs";import xn from"./common/progressBar/progressBar.mjs";import{RadioGroupOrientation as Sn}from"./common/radioGroup/radioGroup.types.mjs";import Cn from"./common/radioGroup/radioGroup.mjs";import wn from"./common/rating/rating.mjs";import Tn from"./common/revealLens/revealLens.mjs";import En from"./common/roomDrawer/roomDrawer.mjs";import Dn from"./common/roomViewer/roomViewer.mjs";import{ScrollFadeAxis as On}from"./common/scrollFade/scrollFade.types.mjs";import kn from"./common/scrollFade/scrollFade.mjs";import{SectionHeaderSize as An}from"./common/sectionHeader/sectionHeader.types.mjs";import jn from"./common/sectionHeader/sectionHeader.mjs";import{SkeletonAnimation as Mn,SkeletonVariant as Nn}from"./common/skeleton/skeleton.types.mjs";import Pn from"./common/skeleton/skeleton.mjs";import Fn from"./common/slider/slider.mjs";import In from"./common/splitButton/splitButton.mjs";import{StepperCollapse as Ln,StepperLabelPlacement as Rn,StepperOrientation as zn,StepperStyleType as Bn}from"./common/stepper/stepper.types.mjs";import Vn from"./common/stepper/stepper.mjs";import Hn from"./common/sticky/sticky.mjs";import Un from"./common/switch/switch.mjs";import Wn from"./common/tabHeader/tabHeader.mjs";import Gn from"./common/textarea/textarea.mjs";import{useTheme as Kn}from"./common/themeProvider/useTheme.mjs";import qn,{TiltGroupContext as Jn,useTiltGroup as Yn}from"./common/tiltGroup/tiltGroup.mjs";import{defaultTiltEasing as Xn}from"./common/tilt/tiltMath.mjs";import Zn from"./common/tilt/tilt.mjs";import Qn from"./common/timeInput/timeInput.mjs";import{TimelineAlignment as $n}from"./common/timeline/timeline.types.mjs";import er from"./common/timeline/timeline.mjs";import tr from"./common/timer/timer.mjs";import nr from"./common/virtualList/virtualList.mjs";import{flattenTree as rr}from"./common/tree/flattenTree.mjs";import ir from"./common/tree/tree.mjs";import{WeatherType as ar}from"./common/weatherIcon/weatherIcon.types.mjs";import or from"./common/weatherIcon/weatherIcon.mjs";import sr from"./common/wizard/wizard.mjs";import cr from"./services/formValidation/FormValidatorGroupWithForm.mjs";import lr from"./services/formValidation/validatableComponent.mjs";import{useFormValidatorGroup as ur}from"./services/formValidation/useFormValidatorGroup.mjs";import{FormValidator as dr,Validators as fr,useFormValidator as pr}from"./services/formValidation/index.mjs";import{hasEightPasswordChars as mr,hasOnePasswordDigit as hr,hasOnePasswordLetter as gr,isBic as _r,isDate as vr,isDay as yr,isEmail as br,isISODate as xr,isNumber as Sr,isPassword as Cr,isURL as wr}from"@ahrowe/form-validation";export{s as Accordion,e as AccordionStyleType,_ as ActionButtons,v as ActionIcon,O as AhroweProvider,k as Alert,A as AnimatedLogo,N as AnimatedText,j as AnimatedTextUnit,M as AnimatedTextVariant,L as Avatar,R as AvatarGroup,I as Badge,P as BadgePosition,F as BadgeStyleType,C as BodyEnd,q as Breadcrumb,g as Button,Y as ButtonGroup,J as ButtonGroupOrientation,u as ButtonSize,d as ButtonStyleType,f as ButtonType,re as Calendar,ee as CalendarView,ae as Card,le as CardActions,ce as CardContent,oe as CardHeader,se as CardMedia,ie as CardStyleType,ue as Carousel,de as ChatComposer,me as ChatMessage,he as ChatMessageList,fe as ChatMessageStatus,pe as ChatMessageStyleType,ge as Checkbox,ve as Chip,ye as ChipContainer,_e as ChipStyleType,we as ColorPicker,Ae as CommandPalette,t as ConfigProvider,je as ConfirmModal,Ne as CopyButton,Yt as DEFAULT_SNAP_OPTIONS,nt as DEFAULT_WALL_ATTRS,Re as DatePicker,Ve as Divider,ze as DividerOrientation,Be as DividerTextPosition,Ye as DoorSwing,He as Drawer,Ge as DropZone,Ue as DropZoneReturnType,We as DropZoneStatus,Le as Dropdown,te as EmptyState,Ke as ErrorBoundary,qe as Fab,Je as Flip,dr as FormValidator,cr as FormValidatorGroup,Wt as HIT_PX,Gt as HIT_PX_COARSE,rn as IconPicker,an as IdleManager,Ce as Input,on as InputDropdown,xe as InputIconPosition,Se as InputType,z as InteractableDiv,cn as KanbanBoard,sn as KanbanColumn,un as KlipyPicker,dn as ListItem,l as Loader,c as LoaderType,fn as LoadingOverlay,bt as MIN_FLOOR_HEIGHT,et as MIN_OPENING_WIDTH,tt as MIN_WALL_LENGTH,pn as Menu,Ee as Modal,hn as MultiSelect,gn as NumberInput,Xe as OpeningKind,ne as OptionPicker,vn as OtpInput,_n as OtpInputCharset,yn as Overscroll,$t as PLAN_FORMAT_VERSION,bn as Pagination,Ze as PlanIssueKind,Qe as PlanUnitSystem,K as Popover,B as PopoverAlign,V as PopoverPlacement,H as PopoverTrigger,a as Presentation,xn as ProgressBar,Cn as RadioGroup,Sn as RadioGroupOrientation,wn as Rating,Tn as RevealLens,p as Ripple,En as RoomDrawer,Dn as RoomViewer,kn as ScrollFade,On as ScrollFadeAxis,y as ScrollbarProvider,ln as SearchInput,jn as SectionHeader,An as SectionHeaderSize,Pn as Skeleton,Mn as SkeletonAnimation,Nn as SkeletonVariant,Fn as Slider,Xt as SnapKind,In as SplitButton,Vn as Stepper,Ln as StepperCollapse,Rn as StepperLabelPlacement,zn as StepperOrientation,Bn as StepperStyleType,Hn as Sticky,Un as Switch,Wn as TabHeader,Gn as Textarea,o as ThemeColor,x as ThemeProvider,Zn as Tilt,qn as TiltGroup,Jn as TiltGroupContext,Qn as TimeInput,er as Timeline,$n as TimelineAlignment,tr as Timer,be as Tooltip,ir as Tree,lr as ValidatableComponent,fr as Validators,nr as VirtualList,$e as WallType,or as WeatherIcon,ar as WeatherType,sr as Wizard,xt as addFloor,rt as addOpening,it as addRect,at as addWall,nn as buildPlanMesh,Vt as buildWallPaths,ot as cleanupPlan,Zt as clientToWorld,Lt as commitDerivation,X as dateToDay,Z as dateToTime,Q as dayTimeToDate,$ as dayToDate,b as defaultTheme,Xn as defaultTiltEasing,Ft as deriveFaces,Rt as derivePlan,st as detachWall,ct as dissolveNode,St as duplicateFloor,Ct as emptyFloor,wt as emptyFloorPlan,rr as flattenTree,Tt as floorBelow,Et as floorBounds,Dt as floorIndex,h as formatHotkey,Ot as getFloor,Pe as getLocale,mr as hasEightPasswordChars,hr as hasOnePasswordDigit,gr as hasOnePasswordLetter,Kt as hitTest,_r as isBic,vr as isDate,yr as isDay,br as isEmail,xr as isISODate,De as isMenuAction,Oe as isMenuHeading,ke as isMenuSeparator,Sr as isNumber,Cr as isPassword,wr as isURL,S as lightTheme,Fe as mapLocale,mn as menuHotkeys,lt as mergeNodes,kt as moveFloor,ut as moveNode,It as nodeDegrees,Ht as openingGeometry,en as planFromJson,tn as planToJson,zt as pruneUnmatchedRooms,At as removeFloor,dt as removeOpening,ft as removeWall,jt as renameFloor,Qt as resolveSnap,Bt as roomAtPoint,pt as scalePlan,qt as selectionsEqual,Mt as setFloor,Nt as setFloorHeight,Ie as setLocale,D as showToast,mt as splitWall,U as tabbablesIn,ht as transformPlan,Pt as updateFloor,gt as updateOpening,Me as useClipboard,T as useCoarsePointer,n as useComponentDefaults,pr as useFormValidator,ur as useFormValidatorGroup,m as useHotkeys,r as useLabels,w as useMediaQuery,G as useOverlay,i as usePresentationDefault,Te as useScrollEdges,E as useSwipeDismiss,Kn as useTheme,Yn as useTiltGroup,W as useVisualViewportSize,_t as validatePlan,Ut as wallCentrelineSpans,vt as wallLength,yt as weldShortWalls,Jt as worldTolerances};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";import e from"./FormValidatorGroupWithForm.mjs";import{useFormValidatorGroupInstance as t}from"@ahrowe/form-validation";function n(n,{
|
|
1
|
+
"use client";import e from"./FormValidatorGroupWithForm.mjs";import{useFormValidatorGroupInstance as t}from"@ahrowe/form-validation";function n(n,{onSubmit:r,onValidate:i,...a}={}){return t(()=>new e(n,null,a),r,i)}export{n as useFormValidatorGroup};
|
|
2
2
|
//# sourceMappingURL=useFormValidatorGroup.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFormValidatorGroup.mjs","names":[],"sources":["../../../../package/services/formValidation/useFormValidatorGroup.ts"],"sourcesContent":["import { useFormValidatorGroupInstance } from '@ahrowe/form-validation';\nimport type { FormGroup, FormValidatorGroupOptions, InferGroupValues } from '@ahrowe/form-validation';\nimport FormValidatorGroupWithForm from './FormValidatorGroupWithForm';\n\n/**\n * @ahrowe/ui's flavour of useFormValidatorGroup: the group it creates has\n * `.Form` attached and defaults `onSubmitError` to an error toast (see\n * FormValidatorGroupWithForm). Reuses the core package's reactive wiring\n * (useFormValidatorGroupInstance) so this and the pure hook share one\n * implementation of \"subscribe a function component to a group\".\n */\nexport function useFormValidatorGroup<TGroup extends FormGroup = FormGroup, TInitial = InferGroupValues<TGroup>>(\n groupDef: TGroup,\n {
|
|
1
|
+
{"version":3,"file":"useFormValidatorGroup.mjs","names":[],"sources":["../../../../package/services/formValidation/useFormValidatorGroup.ts"],"sourcesContent":["import { useFormValidatorGroupInstance } from '@ahrowe/form-validation';\nimport type { FormGroup, FormValidatorGroupOptions, InferGroupValues } from '@ahrowe/form-validation';\nimport FormValidatorGroupWithForm from './FormValidatorGroupWithForm';\n\n/**\n * @ahrowe/ui's flavour of useFormValidatorGroup: the group it creates has\n * `.Form` attached and defaults `onSubmitError` to an error toast (see\n * FormValidatorGroupWithForm). Reuses the core package's reactive wiring\n * (useFormValidatorGroupInstance) so this and the pure hook share one\n * implementation of \"subscribe a function component to a group\".\n */\nexport function useFormValidatorGroup<TGroup extends FormGroup = FormGroup, TInitial = InferGroupValues<TGroup>>(\n groupDef: TGroup,\n { onSubmit, onValidate, ...options }: FormValidatorGroupOptions<TGroup, TInitial> = {},\n): FormValidatorGroupWithForm<TGroup, TInitial> {\n return useFormValidatorGroupInstance(\n () => new FormValidatorGroupWithForm(groupDef, null, options),\n onSubmit,\n onValidate,\n );\n}\n"],"mappings":"qIAWA,SAAgB,EACd,EACA,CAAE,WAAU,aAAY,GAAG,GAAyD,CAAC,EACvC,CAC9C,OAAO,MACC,IAAI,EAA2B,EAAU,KAAM,CAAO,EAC5D,EACA,CACF,CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";import e from"../../common/tooltip/tooltip.mjs";import{PureComponent as t}from"react";import{jsx as n}from"react/jsx-runtime";var r=class extends t{static{this.defaultProps={formValidator:null,onMouseEnter:null,onMouseLeave:null,onFocus:null,onBlur:null,onChange:null,errorMessage:``,isValid:!1,isRequired:!1,label:``}}constructor(e){super(e);let{formValidator:t}=e;t&&(t.label=e.label??``,t.validate(),t.registerOnUpdateListener(()=>{this.forceUpdate()})),this.state={isFocused:!1,isHovered:!1},this.onMouseEnter=this.onMouseEnter.bind(this),this.onMouseLeave=this.onMouseLeave.bind(this),this.onFocus=this.onFocus.bind(this),this.onBlur=this.onBlur.bind(this),this.hasError=this.hasError.bind(this),this.renderTooltip=this.renderTooltip.bind(this),this.onChange=this.onChange.bind(this)}componentDidMount(){setTimeout(()=>this.setState({isFocused:!1,isHovered:!1}),1)}componentDidUpdate(e){let{formValidator:t}=this.props;e.formValidator&&t&&e.formValidator!==t&&t.registerOnUpdateListener(()=>{this.forceUpdate()})}onMouseEnter(e){let{onMouseEnter:t}=this.props;this.setState({isHovered:!0}),t&&t(e)}onMouseLeave(e){let{onMouseLeave:t}=this.props;this.setState({isHovered:!1}),t&&t(e)}onFocus(e){let{onFocus:t}=this.props;this.setState({isFocused:!0}),t&&t(e)}onBlur(e){let{formValidator:t,onBlur:n}=this.props;t&&(t.touched=!0),this.setState({isFocused:!1}),n&&n(e)}hasError(){let{errorMessage:e,isValid:t,formValidator:n}=this.props;return n?n.
|
|
1
|
+
"use client";import e from"../../common/tooltip/tooltip.mjs";import{PureComponent as t}from"react";import{jsx as n}from"react/jsx-runtime";var r=class extends t{static{this.defaultProps={formValidator:null,onMouseEnter:null,onMouseLeave:null,onFocus:null,onBlur:null,onChange:null,errorMessage:``,isValid:!1,isRequired:!1,label:``}}constructor(e){super(e);let{formValidator:t}=e;t&&(t.label=e.label??``,t.validate(),t.registerOnUpdateListener(()=>{this.forceUpdate()})),this.state={isFocused:!1,isHovered:!1},this.onMouseEnter=this.onMouseEnter.bind(this),this.onMouseLeave=this.onMouseLeave.bind(this),this.onFocus=this.onFocus.bind(this),this.onBlur=this.onBlur.bind(this),this.hasError=this.hasError.bind(this),this.renderTooltip=this.renderTooltip.bind(this),this.onChange=this.onChange.bind(this)}componentDidMount(){setTimeout(()=>this.setState({isFocused:!1,isHovered:!1}),1)}componentDidUpdate(e){let{formValidator:t}=this.props;e.formValidator&&t&&e.formValidator!==t&&t.registerOnUpdateListener(()=>{this.forceUpdate()})}onMouseEnter(e){let{onMouseEnter:t}=this.props;this.setState({isHovered:!0}),t&&t(e)}onMouseLeave(e){let{onMouseLeave:t}=this.props;this.setState({isHovered:!1}),t&&t(e)}onFocus(e){let{onFocus:t}=this.props;this.setState({isFocused:!0}),t&&t(e)}onBlur(e){let{formValidator:t,onBlur:n}=this.props;t&&(t.touched=!0),this.setState({isFocused:!1}),n&&n(e)}hasError(){let{errorMessage:e,isValid:t,formValidator:n}=this.props;return n?n.shouldShowError:!t||!!e}isRequired(){let{isRequired:e,formValidator:t}=this.props;return!!(e||t&&t.validators.find(e=>e.validatorId===`required`))}renderTooltip(){let{errorMessage:t,formValidator:r}=this.props,{isHovered:i,isFocused:a}=this.state;return n(e,{variant:`error`,message:r?r.getCurrentErrorMessage():t||``,isVisible:this.hasError()&&(a||i)})}onChange(e){let{onChange:t,formValidator:n}=this.props;if(n){let t=e;e&&e.target&&(t=e.target.value),n.set(t)}t&&t(e)}};export{r as default};
|
|
2
2
|
//# sourceMappingURL=validatableComponent.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validatableComponent.mjs","names":[],"sources":["../../../../package/services/formValidation/validatableComponent.tsx"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { FormValidator } from '@ahrowe/form-validation';\nimport Tooltip from 'components/common/tooltip';\n\nexport interface ValidatableComponentProps {\n formValidator?: FormValidator | null;\n onMouseEnter?: ((event: React.MouseEvent) => void) | null;\n onMouseLeave?: ((event: React.MouseEvent) => void) | null;\n onFocus?: ((event: React.FocusEvent) => void) | null;\n onBlur?: ((event: React.FocusEvent) => void) | null;\n onChange?: ((value: unknown) => void) | null;\n errorMessage?: string;\n isValid?: boolean;\n isRequired?: boolean;\n label?: string;\n}\n\nexport interface ValidatableComponentState {\n isFocused: boolean;\n isHovered: boolean;\n}\n\n/**\n * Base class that extends PureComponent with FormValidator integration.\n * Manages hover/focus state and renders error tooltips.\n */\nexport default class ValidatableComponent<\n P extends ValidatableComponentProps = ValidatableComponentProps,\n S extends ValidatableComponentState = ValidatableComponentState,\n> extends PureComponent<P, S> {\n static defaultProps: Partial<ValidatableComponentProps> = {\n formValidator: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onFocus: null,\n onBlur: null,\n onChange: null,\n errorMessage: '',\n isValid: false,\n isRequired: false,\n label: '',\n };\n\n constructor(props: P) {\n super(props);\n const { formValidator } = props;\n\n if (formValidator) {\n formValidator.label = props.label ?? '';\n formValidator.validate();\n formValidator.registerOnUpdateListener(() => {\n this.forceUpdate();\n });\n }\n\n this.state = { isFocused: false, isHovered: false } as S;\n\n this.onMouseEnter = this.onMouseEnter.bind(this);\n this.onMouseLeave = this.onMouseLeave.bind(this);\n this.onFocus = this.onFocus.bind(this);\n this.onBlur = this.onBlur.bind(this);\n this.hasError = this.hasError.bind(this);\n this.renderTooltip = this.renderTooltip.bind(this);\n this.onChange = this.onChange.bind(this);\n }\n\n componentDidMount(): void {\n setTimeout(() => this.setState({ isFocused: false, isHovered: false } as S), 1);\n }\n\n componentDidUpdate(prevProps: P): void {\n const { formValidator } = this.props;\n if (prevProps.formValidator && formValidator && prevProps.formValidator !== formValidator) {\n formValidator.registerOnUpdateListener(() => {\n this.forceUpdate();\n });\n }\n }\n\n onMouseEnter(event: React.MouseEvent): void {\n const { onMouseEnter } = this.props;\n this.setState({ isHovered: true } as unknown as S);\n if (onMouseEnter) onMouseEnter(event);\n }\n\n onMouseLeave(event: React.MouseEvent): void {\n const { onMouseLeave } = this.props;\n this.setState({ isHovered: false } as unknown as S);\n if (onMouseLeave) onMouseLeave(event);\n }\n\n onFocus(event: React.FocusEvent): void {\n const { onFocus } = this.props;\n this.setState({ isFocused: true } as unknown as S);\n if (onFocus) onFocus(event);\n }\n\n onBlur(event: React.FocusEvent): void {\n const { formValidator, onBlur } = this.props;\n if (formValidator) formValidator.touched = true;\n this.setState({ isFocused: false } as unknown as S);\n if (onBlur) onBlur(event);\n }\n\n hasError(): boolean {\n const { errorMessage, isValid, formValidator } = this.props;\n return formValidator ? formValidator.
|
|
1
|
+
{"version":3,"file":"validatableComponent.mjs","names":[],"sources":["../../../../package/services/formValidation/validatableComponent.tsx"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport { FormValidator } from '@ahrowe/form-validation';\nimport Tooltip from 'components/common/tooltip';\n\nexport interface ValidatableComponentProps {\n formValidator?: FormValidator | null;\n onMouseEnter?: ((event: React.MouseEvent) => void) | null;\n onMouseLeave?: ((event: React.MouseEvent) => void) | null;\n onFocus?: ((event: React.FocusEvent) => void) | null;\n onBlur?: ((event: React.FocusEvent) => void) | null;\n onChange?: ((value: unknown) => void) | null;\n errorMessage?: string;\n isValid?: boolean;\n isRequired?: boolean;\n label?: string;\n}\n\nexport interface ValidatableComponentState {\n isFocused: boolean;\n isHovered: boolean;\n}\n\n/**\n * Base class that extends PureComponent with FormValidator integration.\n * Manages hover/focus state and renders error tooltips.\n */\nexport default class ValidatableComponent<\n P extends ValidatableComponentProps = ValidatableComponentProps,\n S extends ValidatableComponentState = ValidatableComponentState,\n> extends PureComponent<P, S> {\n static defaultProps: Partial<ValidatableComponentProps> = {\n formValidator: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onFocus: null,\n onBlur: null,\n onChange: null,\n errorMessage: '',\n isValid: false,\n isRequired: false,\n label: '',\n };\n\n constructor(props: P) {\n super(props);\n const { formValidator } = props;\n\n if (formValidator) {\n formValidator.label = props.label ?? '';\n formValidator.validate();\n formValidator.registerOnUpdateListener(() => {\n this.forceUpdate();\n });\n }\n\n this.state = { isFocused: false, isHovered: false } as S;\n\n this.onMouseEnter = this.onMouseEnter.bind(this);\n this.onMouseLeave = this.onMouseLeave.bind(this);\n this.onFocus = this.onFocus.bind(this);\n this.onBlur = this.onBlur.bind(this);\n this.hasError = this.hasError.bind(this);\n this.renderTooltip = this.renderTooltip.bind(this);\n this.onChange = this.onChange.bind(this);\n }\n\n componentDidMount(): void {\n setTimeout(() => this.setState({ isFocused: false, isHovered: false } as S), 1);\n }\n\n componentDidUpdate(prevProps: P): void {\n const { formValidator } = this.props;\n if (prevProps.formValidator && formValidator && prevProps.formValidator !== formValidator) {\n formValidator.registerOnUpdateListener(() => {\n this.forceUpdate();\n });\n }\n }\n\n onMouseEnter(event: React.MouseEvent): void {\n const { onMouseEnter } = this.props;\n this.setState({ isHovered: true } as unknown as S);\n if (onMouseEnter) onMouseEnter(event);\n }\n\n onMouseLeave(event: React.MouseEvent): void {\n const { onMouseLeave } = this.props;\n this.setState({ isHovered: false } as unknown as S);\n if (onMouseLeave) onMouseLeave(event);\n }\n\n onFocus(event: React.FocusEvent): void {\n const { onFocus } = this.props;\n this.setState({ isFocused: true } as unknown as S);\n if (onFocus) onFocus(event);\n }\n\n onBlur(event: React.FocusEvent): void {\n const { formValidator, onBlur } = this.props;\n if (formValidator) formValidator.touched = true;\n this.setState({ isFocused: false } as unknown as S);\n if (onBlur) onBlur(event);\n }\n\n hasError(): boolean {\n const { errorMessage, isValid, formValidator } = this.props;\n return formValidator ? formValidator.shouldShowError : !isValid || !!errorMessage;\n }\n\n isRequired(): boolean {\n const { isRequired, formValidator } = this.props;\n return !!(\n isRequired ||\n (formValidator &&\n formValidator.validators.find((v) => (v as { validatorId?: string }).validatorId === 'required'))\n );\n }\n\n renderTooltip(): React.ReactNode {\n const { errorMessage, formValidator } = this.props;\n const { isHovered, isFocused } = this.state;\n return (\n <Tooltip\n variant='error'\n message={formValidator ? formValidator.getCurrentErrorMessage() : errorMessage || ''}\n isVisible={this.hasError() && (isFocused || isHovered)}\n />\n );\n }\n\n onChange(newVal: unknown): void {\n const { onChange, formValidator } = this.props;\n if (formValidator) {\n let extractedVal = newVal;\n if (newVal && (newVal as React.ChangeEvent<HTMLInputElement>).target) {\n extractedVal = (newVal as React.ChangeEvent<HTMLInputElement>).target.value;\n }\n formValidator.set(extractedVal);\n }\n if (onChange) onChange(newVal);\n }\n}\n"],"mappings":"2IA0BA,IAAqB,EAArB,cAGU,CAAoB,QAC8B,KAAA,aAAA,CACxD,cAAe,KACf,aAAc,KACd,aAAc,KACd,QAAS,KACT,OAAQ,KACR,SAAU,KACV,aAAc,GACd,QAAS,GACT,WAAY,GACZ,MAAO,EACT,EAEA,YAAY,EAAU,CACpB,MAAM,CAAK,EACX,GAAM,CAAE,iBAAkB,EAEtB,IACF,EAAc,MAAQ,EAAM,OAAS,GACrC,EAAc,SAAS,EACvB,EAAc,6BAA+B,CAC3C,KAAK,YAAY,CACnB,CAAC,GAGH,KAAK,MAAQ,CAAE,UAAW,GAAO,UAAW,EAAM,EAElD,KAAK,aAAe,KAAK,aAAa,KAAK,IAAI,EAC/C,KAAK,aAAe,KAAK,aAAa,KAAK,IAAI,EAC/C,KAAK,QAAU,KAAK,QAAQ,KAAK,IAAI,EACrC,KAAK,OAAS,KAAK,OAAO,KAAK,IAAI,EACnC,KAAK,SAAW,KAAK,SAAS,KAAK,IAAI,EACvC,KAAK,cAAgB,KAAK,cAAc,KAAK,IAAI,EACjD,KAAK,SAAW,KAAK,SAAS,KAAK,IAAI,CACzC,CAEA,mBAA0B,CACxB,eAAiB,KAAK,SAAS,CAAE,UAAW,GAAO,UAAW,EAAM,CAAM,EAAG,CAAC,CAChF,CAEA,mBAAmB,EAAoB,CACrC,GAAM,CAAE,iBAAkB,KAAK,MAC3B,EAAU,eAAiB,GAAiB,EAAU,gBAAkB,GAC1E,EAAc,6BAA+B,CAC3C,KAAK,YAAY,CACnB,CAAC,CAEL,CAEA,aAAa,EAA+B,CAC1C,GAAM,CAAE,gBAAiB,KAAK,MAC9B,KAAK,SAAS,CAAE,UAAW,EAAK,CAAiB,EAC7C,GAAc,EAAa,CAAK,CACtC,CAEA,aAAa,EAA+B,CAC1C,GAAM,CAAE,gBAAiB,KAAK,MAC9B,KAAK,SAAS,CAAE,UAAW,EAAM,CAAiB,EAC9C,GAAc,EAAa,CAAK,CACtC,CAEA,QAAQ,EAA+B,CACrC,GAAM,CAAE,WAAY,KAAK,MACzB,KAAK,SAAS,CAAE,UAAW,EAAK,CAAiB,EAC7C,GAAS,EAAQ,CAAK,CAC5B,CAEA,OAAO,EAA+B,CACpC,GAAM,CAAE,gBAAe,UAAW,KAAK,MACnC,IAAe,EAAc,QAAU,IAC3C,KAAK,SAAS,CAAE,UAAW,EAAM,CAAiB,EAC9C,GAAQ,EAAO,CAAK,CAC1B,CAEA,UAAoB,CAClB,GAAM,CAAE,eAAc,UAAS,iBAAkB,KAAK,MACtD,OAAO,EAAgB,EAAc,gBAAkB,CAAC,GAAW,CAAC,CAAC,CACvE,CAEA,YAAsB,CACpB,GAAM,CAAE,aAAY,iBAAkB,KAAK,MAC3C,MAAO,CAAC,EACN,GACC,GACC,EAAc,WAAW,KAAM,GAAO,EAA+B,cAAgB,UAAU,EAErG,CAEA,eAAiC,CAC/B,GAAM,CAAE,eAAc,iBAAkB,KAAK,MACvC,CAAE,YAAW,aAAc,KAAK,MACtC,OACE,EAAC,EAAD,CACE,QAAQ,QACR,QAAS,EAAgB,EAAc,uBAAuB,EAAI,GAAgB,GAClF,UAAW,KAAK,SAAS,IAAM,GAAa,EAC7C,CAAA,CAEL,CAEA,SAAS,EAAuB,CAC9B,GAAM,CAAE,WAAU,iBAAkB,KAAK,MACzC,GAAI,EAAe,CACjB,IAAI,EAAe,EACf,GAAW,EAA+C,SAC5D,EAAgB,EAA+C,OAAO,OAExE,EAAc,IAAI,CAAY,CAChC,CACI,GAAU,EAAS,CAAM,CAC/B,CACF"}
|